esp_nano_hosted/include/nh_helper_event.h

47 lines
1.3 KiB
C

#ifndef NH_EVENT_H
#define NH_EVENT_H
#include "nh_common.h"
typedef enum {
NH_EVENT_TYPE_INIT,
} nh_event_type_t;
typedef enum {
NH_EVENT_INIT_TAG_CAP = 0U,
NH_EVENT_INIT_TAG_FREQ = 1U,
NH_EVENT_INIT_TAG_CHIP_ID = 2U,
NH_EVENT_INIT_TAG_RAW_TP = 3U,
} nh_event_init_tag_t;
typedef enum {
NH_EVENT_INIT_CAP_WLAN_SDIO = (1U << 0U),
NH_EVENT_INIT_CAP_BT_UART = (1U << 1U),
NH_EVENT_INIT_CAP_BT_SDIO = (1U << 2U),
NH_EVENT_INIT_CAP_BLE_ONLY = (1U << 3U),
NH_EVENT_INIT_CAP_BR_EDR_ONLY = (1U << 4U),
NH_EVENT_INIT_CAP_WLAN_SPI = (1U << 5U),
NH_EVENT_INIT_CAP_BT_SPI = (1U << 6U),
NH_EVENT_INIT_CAP_CHECKSUM = (1U << 7U),
} nh_event_init_capability_t;
typedef enum {
NH_ESP_INIT_CHIP_UNRECOGNIZED = 0xFFU,
NH_ESP_INIT_CHIP_ESP32 = 0x00U,
NH_ESP_INIT_CHIP_ESP32S2 = 0x02U,
NH_ESP_INIT_CHIP_ESP32C3 = 0x05U,
NH_ESP_INIT_CHIP_ESP32S3 = 0x09U,
NH_ESP_INIT_CHIP_ESP32C2 = 0x0CU,
} nh_event_init_chip_id_t;
typedef struct {
nh_event_init_capability_t capabilities;
nh_event_init_chip_id_t chip_id;
uint8_t spi_freq;
} nh_event_init_t;
nh_ret_t nh_event_get_type(nh_event_type_t *type, uint8_t *event);
nh_ret_t nh_event_parse_init(nh_event_init_t *init, uint8_t *event);
#endif // NH_EVENT_H