mirror of
https://github.com/bluekitchen/btstack.git
synced 2025-04-01 22:20:58 +00:00
enumerate hci initialization substates
This commit is contained in:
parent
c004c8c5bd
commit
556d11b334
@ -69,8 +69,6 @@
|
|||||||
|
|
||||||
#define HCI_CONNECTION_TIMEOUT_MS 10000
|
#define HCI_CONNECTION_TIMEOUT_MS 10000
|
||||||
|
|
||||||
#define HCI_INTIALIZING_SUBSTATE_AFTER_SLEEP 11
|
|
||||||
|
|
||||||
#ifdef USE_BLUETOOL
|
#ifdef USE_BLUETOOL
|
||||||
#include "../platforms/ios/src/bt_control_iphone.h"
|
#include "../platforms/ios/src/bt_control_iphone.h"
|
||||||
#endif
|
#endif
|
||||||
@ -1806,7 +1804,7 @@ int hci_power_control(HCI_POWER_MODE power_mode){
|
|||||||
// nothing to do, if H4 supports power management
|
// nothing to do, if H4 supports power management
|
||||||
if (bt_control_iphone_power_management_enabled()){
|
if (bt_control_iphone_power_management_enabled()){
|
||||||
hci_stack->state = HCI_STATE_INITIALIZING;
|
hci_stack->state = HCI_STATE_INITIALIZING;
|
||||||
hci_stack->substate = HCI_INTIALIZING_SUBSTATE_AFTER_SLEEP;
|
hci_stack->substate = HCI_INTI_AFTER_SLEEP;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
@ -1830,7 +1828,7 @@ int hci_power_control(HCI_POWER_MODE power_mode){
|
|||||||
// nothing to do, if H4 supports power management
|
// nothing to do, if H4 supports power management
|
||||||
if (bt_control_iphone_power_management_enabled()){
|
if (bt_control_iphone_power_management_enabled()){
|
||||||
hci_stack->state = HCI_STATE_INITIALIZING;
|
hci_stack->state = HCI_STATE_INITIALIZING;
|
||||||
hci_stack->substate = HCI_INTIALIZING_SUBSTATE_AFTER_SLEEP;
|
hci_stack->substate = HCI_INTI_AFTER_SLEEP;
|
||||||
hci_update_scan_enable();
|
hci_update_scan_enable();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
49
src/hci.h
49
src/hci.h
@ -523,6 +523,53 @@ typedef struct {
|
|||||||
|
|
||||||
} hci_connection_t;
|
} hci_connection_t;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* HCI Inititizlization State Machine
|
||||||
|
*/
|
||||||
|
typedef enum hci_init_state{
|
||||||
|
HCI_INIT_SEND_RESET = 0,
|
||||||
|
HCI_INIT_W4_SEND_RESET,
|
||||||
|
HCI_INIT_SEND_BAUD_CHANGE,
|
||||||
|
HCI_INIT_W4_SEND_BAUD_CHANGE,
|
||||||
|
HCI_INIT_LOCAL_BAUD_CHANGE,
|
||||||
|
HCI_INIT_W4_LOCAL_BAUD_CHANGE,
|
||||||
|
HCI_INIT_SET_BD_ADDR,
|
||||||
|
HCI_INIT_W4_SET_BD_ADDR,
|
||||||
|
HCI_INIT_CUSTOM_INIT,
|
||||||
|
HCI_INIT_W4_CUSTOM_INIT,
|
||||||
|
|
||||||
|
HCI_INIT_READ_BUFFER_SIZE,
|
||||||
|
HCI_INIT_W4_READ_BUFFER_SIZE,
|
||||||
|
HCI_INIT_READ_LOCAL_SUPPORTED_FEATUES,
|
||||||
|
HCI_INIT_W4_READ_LOCAL_SUPPORTED_FEATUES,
|
||||||
|
HCI_INIT_SET_EVENT_MASK,
|
||||||
|
HCI_INIT_W4_SET_EVENT_MASK,
|
||||||
|
HCI_INIT_WRITE_SIMPLE_PAIRING_MODE,
|
||||||
|
HCI_INIT_W4_WRITE_SIMPLE_PAIRING_MODE,
|
||||||
|
HCI_INIT_WRITE_PAGE_TIMEOUT,
|
||||||
|
HCI_INIT_W4_WRITE_PAGE_TIMEOUT,
|
||||||
|
|
||||||
|
HCI_INIT_WRITE_CLASS_OF_DEVICE,
|
||||||
|
HCI_INIT_W4_WRITE_CLASS_OF_DEVICE,
|
||||||
|
HCI_INIT_WRITE_LOCAL_NAME,
|
||||||
|
HCI_INIT_W4_WRITE_LOCAL_NAME,
|
||||||
|
HCI_INIT_WRITE_SCAN_ENABLE,
|
||||||
|
HCI_INIT_W4_WRITE_SCAN_ENABLE,
|
||||||
|
HCI_INIT_LE_READ_BUFFER_SIZE,
|
||||||
|
HCI_INIT_W4_LE_READ_BUFFER_SIZE,
|
||||||
|
HCI_INIT_WRITE_LE_HOST_SUPPORTED,
|
||||||
|
HCI_INIT_W4_WRITE_LE_HOST_SUPPORTED,
|
||||||
|
|
||||||
|
HCI_INIT_LE_SET_SCAN_PARAMETERS,
|
||||||
|
HCI_INIT_W4_LE_SET_SCAN_PARAMETERS,
|
||||||
|
|
||||||
|
HCI_INIT_DONE,
|
||||||
|
HCI_INTI_AFTER_SLEEP
|
||||||
|
|
||||||
|
} hci_init_state_t;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* main data structure
|
* main data structure
|
||||||
*/
|
*/
|
||||||
@ -576,7 +623,7 @@ typedef struct {
|
|||||||
|
|
||||||
/* hci state machine */
|
/* hci state machine */
|
||||||
HCI_STATE state;
|
HCI_STATE state;
|
||||||
uint8_t substate;
|
hci_init_state_t substate;
|
||||||
uint8_t cmds_ready;
|
uint8_t cmds_ready;
|
||||||
|
|
||||||
uint16_t last_cmd_opcode;
|
uint16_t last_cmd_opcode;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user