blisp/include/blisp_chip.h

31 lines
752 B
C
Raw Normal View History

2022-11-30 12:17:30 +00:00
// SPDX-License-Identifier: MIT
2022-09-25 08:58:59 +00:00
#ifndef _BLISP_CHIP_H
#define _BLISP_CHIP_H
#include <stdbool.h>
2023-01-07 10:50:51 +00:00
#include <stdint.h>
2022-09-25 08:58:59 +00:00
enum blisp_chip_type {
BLISP_CHIP_BL60X,
BLISP_CHIP_BL70X,
BLISP_CHIP_BL606P,
BLISP_CHIP_BL808,
BLISP_CHIP_BL61X,
};
2022-09-25 08:58:59 +00:00
2023-01-07 10:50:51 +00:00
struct blisp_chip { // TODO: Move elsewhere?
enum blisp_chip_type type;
const char* type_str;
bool usb_isp_available;
float handshake_byte_multiplier;
const char* default_xtal; // TODO: Make this selectable
2023-01-09 20:23:46 +00:00
int64_t (*load_eflash_loader)(uint8_t clk_type, uint8_t** firmware_buf_ptr);
uint32_t tcm_address;
2022-09-25 08:58:59 +00:00
};
2022-11-08 21:06:14 +00:00
extern struct blisp_chip blisp_chip_bl60x;
2022-09-25 08:58:59 +00:00
extern struct blisp_chip blisp_chip_bl70x;
extern struct blisp_chip blisp_chip_bl808;
extern struct blisp_chip blisp_chip_bl61x;
2022-09-25 08:58:59 +00:00
#endif