mirror of
https://github.com/0xFEEDC0DE64/arduino-esp32.git
synced 2025-07-02 21:41:01 +02:00
Update IDF
This commit is contained in:
@ -310,30 +310,41 @@ typedef void (tBTM_RAND_ENC_CB) (tBTM_RAND_ENC *p1);
|
||||
|
||||
typedef UINT32 tBTM_BLE_AD_MASK;
|
||||
|
||||
#define BTM_BLE_AD_TYPE_FLAG HCI_EIR_FLAGS_TYPE /* 0x01 */
|
||||
#define BTM_BLE_AD_TYPE_16SRV_PART HCI_EIR_MORE_16BITS_UUID_TYPE /* 0x02 */
|
||||
#define BTM_BLE_AD_TYPE_16SRV_CMPL HCI_EIR_COMPLETE_16BITS_UUID_TYPE /* 0x03 */
|
||||
#define BTM_BLE_AD_TYPE_32SRV_PART HCI_EIR_MORE_32BITS_UUID_TYPE /* 0x04 */
|
||||
#define BTM_BLE_AD_TYPE_32SRV_CMPL HCI_EIR_COMPLETE_32BITS_UUID_TYPE /* 0x05 */
|
||||
#define BTM_BLE_AD_TYPE_128SRV_PART HCI_EIR_MORE_128BITS_UUID_TYPE /* 0x06 */
|
||||
#define BTM_BLE_AD_TYPE_128SRV_CMPL HCI_EIR_COMPLETE_128BITS_UUID_TYPE /* 0x07 */
|
||||
#define BTM_BLE_AD_TYPE_NAME_SHORT HCI_EIR_SHORTENED_LOCAL_NAME_TYPE /* 0x08 */
|
||||
#define BTM_BLE_AD_TYPE_NAME_CMPL HCI_EIR_COMPLETE_LOCAL_NAME_TYPE /* 0x09 */
|
||||
#define BTM_BLE_AD_TYPE_TX_PWR HCI_EIR_TX_POWER_LEVEL_TYPE /* 0x0A */
|
||||
#define BTM_BLE_AD_TYPE_DEV_CLASS 0x0D
|
||||
#define BTM_BLE_AD_TYPE_SM_TK 0x10
|
||||
#define BTM_BLE_AD_TYPE_SM_OOB_FLAG 0x11
|
||||
#define BTM_BLE_AD_TYPE_INT_RANGE 0x12
|
||||
#define BTM_BLE_AD_TYPE_SOL_SRV_UUID 0x14
|
||||
#define BTM_BLE_AD_TYPE_128SOL_SRV_UUID 0x15
|
||||
#define BTM_BLE_AD_TYPE_SERVICE_DATA 0x16
|
||||
#define BTM_BLE_AD_TYPE_PUBLIC_TARGET 0x17
|
||||
#define BTM_BLE_AD_TYPE_RANDOM_TARGET 0x18
|
||||
#define BTM_BLE_AD_TYPE_APPEARANCE 0x19
|
||||
#define BTM_BLE_AD_TYPE_ADV_INT 0x1a
|
||||
#define BTM_BLE_AD_TYPE_32SOL_SRV_UUID 0x1b
|
||||
#define BTM_BLE_AD_TYPE_32SERVICE_DATA 0x1c
|
||||
#define BTM_BLE_AD_TYPE_128SERVICE_DATA 0x1d
|
||||
#define BTM_BLE_AD_TYPE_FLAG HCI_EIR_FLAGS_TYPE /* 0x01 */
|
||||
#define BTM_BLE_AD_TYPE_16SRV_PART HCI_EIR_MORE_16BITS_UUID_TYPE /* 0x02 */
|
||||
#define BTM_BLE_AD_TYPE_16SRV_CMPL HCI_EIR_COMPLETE_16BITS_UUID_TYPE /* 0x03 */
|
||||
#define BTM_BLE_AD_TYPE_32SRV_PART HCI_EIR_MORE_32BITS_UUID_TYPE /* 0x04 */
|
||||
#define BTM_BLE_AD_TYPE_32SRV_CMPL HCI_EIR_COMPLETE_32BITS_UUID_TYPE /* 0x05 */
|
||||
#define BTM_BLE_AD_TYPE_128SRV_PART HCI_EIR_MORE_128BITS_UUID_TYPE /* 0x06 */
|
||||
#define BTM_BLE_AD_TYPE_128SRV_CMPL HCI_EIR_COMPLETE_128BITS_UUID_TYPE /* 0x07 */
|
||||
#define BTM_BLE_AD_TYPE_NAME_SHORT HCI_EIR_SHORTENED_LOCAL_NAME_TYPE /* 0x08 */
|
||||
#define BTM_BLE_AD_TYPE_NAME_CMPL HCI_EIR_COMPLETE_LOCAL_NAME_TYPE /* 0x09 */
|
||||
#define BTM_BLE_AD_TYPE_TX_PWR HCI_EIR_TX_POWER_LEVEL_TYPE /* 0x0A */
|
||||
#define BTM_BLE_AD_TYPE_DEV_CLASS 0x0D
|
||||
#define BTM_BLE_AD_TYPE_SM_TK 0x10
|
||||
#define BTM_BLE_AD_TYPE_SM_OOB_FLAG 0x11
|
||||
#define BTM_BLE_AD_TYPE_INT_RANGE 0x12
|
||||
#define BTM_BLE_AD_TYPE_SOL_SRV_UUID 0x14
|
||||
#define BTM_BLE_AD_TYPE_128SOL_SRV_UUID 0x15
|
||||
#define BTM_BLE_AD_TYPE_SERVICE_DATA 0x16
|
||||
#define BTM_BLE_AD_TYPE_PUBLIC_TARGET 0x17
|
||||
#define BTM_BLE_AD_TYPE_RANDOM_TARGET 0x18
|
||||
#define BTM_BLE_AD_TYPE_APPEARANCE 0x19
|
||||
#define BTM_BLE_AD_TYPE_ADV_INT 0x1a
|
||||
#define BTM_BLE_AD_TYPE_LE_DEV_ADDR 0x1b
|
||||
#define BTM_BLE_AD_TYPE_LE_ROLE 0x1c
|
||||
#define BTM_BLE_AD_TYPE_SPAIR_C256 0x1d
|
||||
#define BTM_BLE_AD_TYPE_SPAIR_R256 0x1e
|
||||
#define BTM_BLE_AD_TYPE_32SOL_SRV_UUID 0x1f
|
||||
#define BTM_BLE_AD_TYPE_32SERVICE_DATA 0x20
|
||||
#define BTM_BLE_AD_TYPE_128SERVICE_DATA 0x21
|
||||
#define BTM_BLE_AD_TYPE_LE_SECURE_CONFIRM 0x22
|
||||
#define BTM_BLE_AD_TYPE_LE_SECURE_RANDOM 0x23
|
||||
#define BTM_BLE_AD_TYPE_URI 0x24
|
||||
#define BTM_BLE_AD_TYPE_INDOOR_POSITION 0x25
|
||||
#define BTM_BLE_AD_TYPE_TRANS_DISC_DATA 0x26
|
||||
#define BTM_BLE_AD_TYPE_LE_SUPPORT_FEATURE 0x27
|
||||
#define BTM_BLE_AD_TYPE_CHAN_MAP_UPDATE 0x28
|
||||
|
||||
#define BTM_BLE_AD_TYPE_MANU HCI_EIR_MANUFACTURER_SPECIFIC_TYPE /* 0xff */
|
||||
typedef UINT8 tBTM_BLE_AD_TYPE;
|
||||
|
@ -65,6 +65,8 @@
|
||||
#define GATT_CONGESTED 0x8f
|
||||
#define GATT_STACK_RSP 0x90
|
||||
#define GATT_APP_RSP 0x91
|
||||
//Error caused by customer application or stack bug
|
||||
#define GATT_ESP_ERROR 0X9f
|
||||
|
||||
/* 0xE0 ~ 0xFC reserved for future use */
|
||||
#define GATT_CCC_CFG_ERR 0xFD /* Client Characteristic Configuration Descriptor Improperly Configured */
|
||||
|
@ -133,6 +133,16 @@ typedef struct {
|
||||
UINT8 reason;
|
||||
} tGATT_ERROR;
|
||||
|
||||
/* Execute write response structure */
|
||||
typedef struct {
|
||||
UINT8 op_code;
|
||||
}__attribute__((packed)) tGATT_EXEC_WRITE_RSP;
|
||||
|
||||
/* Write request response structure */
|
||||
typedef struct {
|
||||
UINT8 op_code;
|
||||
}__attribute__((packed)) tGATT_WRITE_REQ_RSP;
|
||||
|
||||
/* server response message to ATT protocol
|
||||
*/
|
||||
typedef union {
|
||||
@ -329,6 +339,32 @@ typedef struct {
|
||||
UINT16 count;
|
||||
} tGATT_SRV_LIST_INFO;
|
||||
|
||||
/* prepare write queue data */
|
||||
typedef struct{
|
||||
//len: length of value
|
||||
tGATT_ATTR16 *p_attr;
|
||||
UINT16 len;
|
||||
UINT8 op_code;
|
||||
UINT16 handle;
|
||||
UINT16 offset;
|
||||
UINT8 value[2];
|
||||
}__attribute__((packed)) tGATT_PREPARE_WRITE_QUEUE_DATA;
|
||||
|
||||
/* structure to store prepare write packts information */
|
||||
typedef struct{
|
||||
//only store prepare write packets which need
|
||||
//to be responded by stack (not by application)
|
||||
BUFFER_Q queue;
|
||||
|
||||
//store the total number of prepare write packets
|
||||
//including that should be responded by stack or by application
|
||||
UINT16 total_num;
|
||||
|
||||
//store application error code for prepare write,
|
||||
//invalid offset && invalid length
|
||||
UINT8 error_code_app;
|
||||
}tGATT_PREPARE_WRITE_RECORD;
|
||||
|
||||
typedef struct {
|
||||
BUFFER_Q pending_enc_clcb; /* pending encryption channel q */
|
||||
tGATT_SEC_ACTION sec_act;
|
||||
@ -362,6 +398,7 @@ typedef struct {
|
||||
|
||||
BOOLEAN in_use;
|
||||
UINT8 tcb_idx;
|
||||
tGATT_PREPARE_WRITE_RECORD prepare_write_record; /* prepare write packets record */
|
||||
} tGATT_TCB;
|
||||
|
||||
|
||||
|
Reference in New Issue
Block a user