TI BLE5-Stack API Documentation  9.14.02
hci.h
Go to the documentation of this file.
1 /******************************************************************************
2 
3  Group: WCS, BTS
4  $Target Device: DEVICES $
5 
6  ******************************************************************************
7  $License: TI_TEXT 2009 $
8  ******************************************************************************
9  $Release Name: PACKAGE NAME $
10  $Release Date: PACKAGE RELEASE DATE $
11  *****************************************************************************/
12 
305 #ifndef HCI_H
306 #define HCI_H
307 
308 #ifdef __cplusplus
309 extern "C"
310 {
311 #endif
312 
313 /*
314  * INCLUDES
315  */
317 #include "ti/ble/controller/ll/ll_common.h"
318 #include "ti/ble/controller/ll/ll_ae.h"
319 #include "ti/ble/stack_util/health_toolkit/assert.h"
320 #include "ti/ble/controller/ll/ll_tx_power.h"
321 #include "ti/ble/controller/hci/hci_supported_cmd.h"
322 #include "ti/ble/controller/ll/ll_pawr_scan.h"
323 
324 /*
325  * MACROS
326  */
327 
328 /*
329  * CONSTANTS
330  */
331 
342 #define HCI_SUCCESS 0x00
343 #define HCI_ERROR_CODE_UNKNOWN_HCI_CMD 0x01
344 #define HCI_ERROR_CODE_UNKNOWN_CONN_ID 0x02
345 #define HCI_ERROR_CODE_HW_FAILURE 0x03
346 #define HCI_ERROR_CODE_PAGE_TIMEOUT 0x04
347 #define HCI_ERROR_CODE_AUTH_FAILURE 0x05
348 #define HCI_ERROR_CODE_PIN_KEY_MISSING 0x06
349 #define HCI_ERROR_CODE_MEM_CAP_EXCEEDED 0x07
350 #define HCI_ERROR_CODE_CONN_TIMEOUT 0x08
351 #define HCI_ERROR_CODE_CONN_LIMIT_EXCEEDED 0x09
352 #define HCI_ERROR_CODE_SYNCH_CONN_LIMIT_EXCEEDED 0x0A
353 #define HCI_ERROR_CODE_ACL_CONN_ALREADY_EXISTS 0x0B
354 #define HCI_ERROR_CODE_CMD_DISALLOWED 0x0C
355 #define HCI_ERROR_CODE_CONN_REJ_LIMITED_RESOURCES 0x0D
356 #define HCI_ERROR_CODE_CONN_REJECTED_SECURITY_REASONS 0x0E
357 #define HCI_ERROR_CODE_CONN_REJECTED_UNACCEPTABLE_BDADDR 0x0F
358 #define HCI_ERROR_CODE_CONN_ACCEPT_TIMEOUT_EXCEEDED 0x10
359 #define HCI_ERROR_CODE_UNSUPPORTED_FEATURE_PARAM_VALUE 0x11
360 #define HCI_ERROR_CODE_INVALID_HCI_CMD_PARAMS 0x12
361 #define HCI_ERROR_CODE_REMOTE_USER_TERM_CONN 0x13
362 #define HCI_ERROR_CODE_REMOTE_DEVICE_TERM_CONN_LOW_RESOURCES 0x14
363 #define HCI_ERROR_CODE_REMOTE_DEVICE_TERM_CONN_POWER_OFF 0x15
364 #define HCI_ERROR_CODE_CONN_TERM_BY_LOCAL_HOST 0x16
365 #define HCI_ERROR_CODE_REPEATED_ATTEMPTS 0x17
366 #define HCI_ERROR_CODE_PAIRING_NOT_ALLOWED 0x18
367 #define HCI_ERROR_CODE_UNKNOWN_LMP_PDU 0x19
368 #define HCI_ERROR_CODE_UNSUPPORTED_REMOTE_FEATURE 0x1A
369 #define HCI_ERROR_CODE_SCO_OFFSET_REJ 0x1B
370 #define HCI_ERROR_CODE_SCO_INTERVAL_REJ 0x1C
371 #define HCI_ERROR_CODE_SCO_AIR_MODE_REJ 0x1D
372 #define HCI_ERROR_CODE_INVALID_LMP_PARAMS 0x1E
373 #define HCI_ERROR_CODE_UNSPECIFIED_ERROR 0x1F
374 #define HCI_ERROR_CODE_UNSUPPORTED_LMP_PARAM_VAL 0x20
375 #define HCI_ERROR_CODE_ROLE_CHANGE_NOT_ALLOWED 0x21
376 #define HCI_ERROR_CODE_LMP_LL_RESP_TIMEOUT 0x22
377 #define HCI_ERROR_CODE_LMP_ERR_TRANSACTION_COLLISION 0x23
378 #define HCI_ERROR_CODE_LMP_PDU_NOT_ALLOWED 0x24
379 #define HCI_ERROR_CODE_ENCRYPT_MODE_NOT_ACCEPTABLE 0x25
380 #define HCI_ERROR_CODE_LINK_KEY_CAN_NOT_BE_CHANGED 0x26
381 #define HCI_ERROR_CODE_REQ_QOS_NOT_SUPPORTED 0x27
382 #define HCI_ERROR_CODE_INSTANT_PASSED 0x28
383 #define HCI_ERROR_CODE_PAIRING_WITH_UNIT_KEY_NOT_SUPPORTED 0x29
384 #define HCI_ERROR_CODE_DIFFERENT_TRANSACTION_COLLISION 0x2A
385 #define HCI_ERROR_CODE_RESERVED1 0x2B
386 #define HCI_ERROR_CODE_QOS_UNACCEPTABLE_PARAM 0x2C
387 #define HCI_ERROR_CODE_QOS_REJ 0x2D
388 #define HCI_ERROR_CODE_CHAN_ASSESSMENT_NOT_SUPPORTED 0x2E
389 #define HCI_ERROR_CODE_INSUFFICIENT_SECURITY 0x2F
390 #define HCI_ERROR_CODE_PARAM_OUT_OF_MANDATORY_RANGE 0x30
391 #define HCI_ERROR_CODE_RESERVED2 0x31
392 #define HCI_ERROR_CODE_ROLE_SWITCH_PENDING 0x32
393 #define HCI_ERROR_CODE_RESERVED3 0x33
394 #define HCI_ERROR_CODE_RESERVED_SLOT_VIOLATION 0x34
395 #define HCI_ERROR_CODE_ROLE_SWITCH_FAILED 0x35
396 #define HCI_ERROR_CODE_EXTENDED_INQUIRY_RESP_TOO_LARGE 0x36
397 #define HCI_ERROR_CODE_SIMPLE_PAIRING_NOT_SUPPORTED_BY_HOST 0x37
398 #define HCI_ERROR_CODE_HOST_BUSY_PAIRING 0x38
399 #define HCI_ERROR_CODE_CONN_REJ_NO_SUITABLE_CHAN_FOUND 0x39
400 #define HCI_ERROR_CODE_CONTROLLER_BUSY 0x3A
401 #define HCI_ERROR_CODE_UNACCEPTABLE_CONN_PARAMETERS 0x3B
402 #define HCI_ERROR_CODE_DIRECTED_ADV_TIMEOUT 0x3C
403 #define HCI_ERROR_CODE_CONN_TERM_MIC_FAILURE 0x3D
404 #define HCI_ERROR_CODE_CONN_FAILED_TO_ESTABLISH 0x3E
405 #define HCI_ERROR_CODE_MAC_CONN_FAILED 0x3F
406 #define HCI_ERROR_CODE_COARSE_CLOCK_ADJUST_REJECTED 0x40
407 #define HCI_ERROR_CODE_TYPE0_SUBMAP_NOT_DEFINED 0x41
408 #define HCI_ERROR_CODE_UNKNOWN_ADVERTISING_IDENTIFIER 0x42
409 #define HCI_ERROR_CODE_LIMIT_REACHED 0x43
410 #define HCI_ERROR_CODE_OPERATION_CANCELLED_BY_HOST 0x44
411 
417 #define HCI_STATUS_ESTABLISH_WITH_HANDOVER LL_STATUS_ESTABLISH_WITH_HANDOVER
418 
423 #define HCI_MAX_NUM_CMD_BUFFERS LL_MAX_NUM_CMD_BUFFERS
424 #if defined(CC2540) || defined(CC2541) || defined(CC2541S)
425 #define HCI_MAX_NUM_DATA_BUFFERS LL_MAX_NUM_DATA_BUFFERS //<! Max Num Data Buffers
426 #endif // CC2540 | CC2541 | CC2541S
427 
431 // Send Data Packet Boundary Flags
432 #define FIRST_PKT_HOST_TO_CTRL LL_DATA_FIRST_PKT_HOST_TO_CTRL
433 #define CONTINUING_PKT LL_DATA_CONTINUATION_PKT
434 #define FIRST_PKT_CTRL_TO_HOST LL_DATA_FIRST_PKT_CTRL_TO_HOST
435 
436 
438 #define HCI_RSSI_NOT_AVAILABLE LL_RSSI_NOT_AVAILABLE
439 
444 #define HCI_DISCONNECT_AUTH_FAILURE HCI_ERROR_CODE_AUTH_FAILURE
445 #define HCI_DISCONNECT_REMOTE_USER_TERM HCI_ERROR_CODE_REMOTE_USER_TERM_CONN
446 #define HCI_DISCONNECT_REMOTE_DEV_LOW_RESOURCES HCI_ERROR_CODE_REMOTE_DEVICE_TERM_CONN_LOW_RESOURCES
447 #define HCI_DISCONNECT_REMOTE_DEV_POWER_OFF HCI_ERROR_CODE_REMOTE_DEVICE_TERM_CONN_POWER_OFF
448 #define HCI_DISCONNECT_UNSUPPORTED_REMOTE_FEATURE HCI_ERROR_CODE_UNSUPPORTED_REMOTE_FEATURE
449 #define HCI_DISCONNECT_KEY_PAIRING_NOT_SUPPORTED HCI_ERROR_CODE_PAIRING_WITH_UNIT_KEY_NOT_SUPPORTED
450 #define HCI_DISCONNECT_UNACCEPTABLE_CONN_INTERVAL HCI_ERROR_CODE_UNACCEPTABLE_CONN_INTERVAL
451 
457 // Tx Power Types
458 #define HCI_READ_CURRENT_TX_POWER_LEVEL LL_READ_CURRENT_TX_POWER_LEVEL
459 #define HCI_READ_MAX_TX_POWER_LEVEL LL_READ_MAX_TX_POWER_LEVEL
460 
466 #define HCI_CTRL_TO_HOST_FLOW_CTRL_OFF 0
467 #define HCI_CTRL_TO_HOST_FLOW_CTRL_ACL_ON_SYNCH_OFF 1
468 #define HCI_CTRL_TO_HOST_FLOW_CTRL_ACL_OFF_SYNCH_ON 2
469 #define HCI_CTRL_TO_HOST_FLOW_CTRL_ACL_ON_SYNCH_ON 3
470 
476 #define HCI_PUBLIC_DEVICE_ADDRESS LL_DEV_ADDR_TYPE_PUBLIC
477 #define HCI_RANDOM_DEVICE_ADDRESS LL_DEV_ADDR_TYPE_RANDOM
478 
484 #define HCI_CONNECTABLE_UNDIRECTED_ADV LL_ADV_CONNECTABLE_UNDIRECTED_EVT
485 #define HCI_CONNECTABLE_DIRECTED_HDC_ADV LL_ADV_CONNECTABLE_DIRECTED_HDC_EVT
486 #define HCI_SCANNABLE_UNDIRECTED LL_ADV_SCANNABLE_UNDIRECTED_EVT
487 #define HCI_NONCONNECTABLE_UNDIRECTED_ADV LL_ADV_NONCONNECTABLE_UNDIRECTED_EVT
488 #define HCI_CONNECTABLE_DIRECTED_LDC_ADV LL_ADV_CONNECTABLE_DIRECTED_LDC_EVT
489 
495 #define HCI_ADV_CHAN_37 LL_ADV_CHAN_37
496 #define HCI_ADV_CHAN_38 LL_ADV_CHAN_38
497 #define HCI_ADV_CHAN_39 LL_ADV_CHAN_39
498 #define HCI_ADV_CHAN_ALL (LL_ADV_CHAN_37 | LL_ADV_CHAN_38 | LL_ADV_CHAN_39)
499 
505 #define HCI_ADV_AL_POLICY_ANY_REQ LL_ADV_AL_POLICY_ANY_REQ
506 #define HCI_ADV_AL_POLICY_AL_SCAN_REQ LL_ADV_AL_POLICY_AL_SCAN_REQ
507 #define HCI_ADV_AL_POLICY_AL_CONNECT_IND LL_ADV_AL_POLICY_AL_CONNECT_IND
508 #define HCI_ADV_AL_POLICY_AL_ALL_REQ LL_ADV_AL_POLICY_AL_ALL_REQ
509 
515 #define HCI_ENABLE_ADV LL_ADV_MODE_ON
516 #define HCI_DISABLE_ADV LL_ADV_MODE_OFF
517 
523 #define HCI_SCAN_PASSIVE LL_SCAN_PASSIVE
524 #define HCI_SCAN_ACTIVE LL_SCAN_ACTIVE
525 
531 // Scan accept List Policy
532 #define HCI_SCAN_AL_POLICY_ANY_ADV_PKTS LL_SCAN_AL_POLICY_ANY_ADV_PKTS
533 #define HCI_SCAN_AL_POLICY_USE_ACCEPT_LIST LL_SCAN_AL_POLICY_USE_ACCEPT_LIST
534 
540 // Scan Filtering
541 #define HCI_FILTER_REPORTS_DISABLE LL_FILTER_REPORTS_DISABLE
542 #define HCI_FILTER_REPORTS_ENABLE LL_FILTER_REPORTS_ENABLE
543 
549 // Scan Commands
550 #define HCI_SCAN_STOP LL_SCAN_STOP
551 #define HCI_SCAN_START LL_SCAN_START
552 
558 #define HCI_INIT_AL_POLICY_USE_PEER_ADDR LL_INIT_AL_POLICY_USE_PEER_ADDR
559 #define HCI_INIT_AL_POLICY_USE_ACCEPT_LIST LL_INIT_AL_POLICY_USE_ACCEPT_LIST
560 
566 #define HCI_ENCRYPTION_OFF LL_ENCRYPTION_OFF
567 #define HCI_ENCRYPTION_ON LL_ENCRYPTION_ON
568 
574 #define HCI_DIRECT_TEST_PAYLOAD_PRBS9 LL_DIRECT_TEST_PAYLOAD_PRBS9
575 #define HCI_DIRECT_TEST_PAYLOAD_0x0F LL_DIRECT_TEST_PAYLOAD_0x0F
576 #define HCI_DIRECT_TEST_PAYLOAD_0x55 LL_DIRECT_TEST_PAYLOAD_0x55
577 #define HCI_DIRECT_TEST_PAYLOAD_PRBS15 LL_DIRECT_TEST_PAYLOAD_PRBS15
578 #define HCI_DIRECT_TEST_PAYLOAD_0xFF LL_DIRECT_TEST_PAYLOAD_0xFF
579 #define HCI_DIRECT_TEST_PAYLOAD_0x00 LL_DIRECT_TEST_PAYLOAD_0x00
580 #define HCI_DIRECT_TEST_PAYLOAD_0xF0 LL_DIRECT_TEST_PAYLOAD_0xF0
581 #define HCI_DIRECT_TEST_PAYLOAD_0xAA LL_DIRECT_TEST_PAYLOAD_0xAA
582 
588 #define HCI_DTM_STANDARD_MODULATION_INDEX LL_DTM_STANDARD_MODULATION_INDEX
589 #define HCI_DTM_STABLE_MODULATION_INDEX LL_DTM_STABLE_MODULATION_INDEX
590 
596 #define HCI_EXT_DTM_TX_CONTINUOUS LL_EXT_DTM_TX_CONTINUOUS
597 
603 #define HCI_DISABLE_ADDR_RESOLUTION LL_DISABLE_ADDR_RESOLUTION
604 #define HCI_ENABLE_ADDR_RESOLUTION LL_ENABLE_ADDR_RESOLUTION
605 #define HCI_NETWORK_PRIVACY_MODE LL_NETWORK_PRIVACY_MODE
606 #define HCI_DEVICE_PRIVACY_MODE LL_DEVICE_PRIVACY_MODE
607 
613 #define HCI_PHY_USE_PHY_PARAM LL_PHY_USE_PHY_PARAM
614 #define HCI_PHY_USE_ANY_PHY LL_PHY_USE_ANY_PHY
615 #define HCI_PHY_1_MBPS LL_PHY_1_MBPS
616 #define HCI_PHY_2_MBPS LL_PHY_2_MBPS
617 #define HCI_PHY_CODED LL_PHY_CODED
618 
624 #define PHY_UPDATE_COMPLETE_EVENT_1M 1
625 #define PHY_UPDATE_COMPLETE_EVENT_2M 2
626 #define PHY_UPDATE_COMPLETE_EVENT_CODED 3
627 
633 #define HCI_EXT_RX_GAIN_STD LL_EXT_RX_GAIN_STD
634 #define HCI_EXT_RX_GAIN_HIGH LL_EXT_RX_GAIN_HIGH
635 
641 #define HCI_EXT_ENABLE_ONE_PKT_PER_EVT LL_EXT_ENABLE_ONE_PKT_PER_EVT
642 #define HCI_EXT_DISABLE_ONE_PKT_PER_EVT LL_EXT_DISABLE_ONE_PKT_PER_EVT
643 
645 
647 
651 #define HCI_EXT_ENABLE_CLK_DIVIDE_ON_HALT LL_EXT_ENABLE_CLK_DIVIDE_ON_HALT
652 #define HCI_EXT_DISABLE_CLK_DIVIDE_ON_HALT LL_EXT_DISABLE_CLK_DIVIDE_ON_HALT
653 
655 
657 
661 #define HCI_EXT_NV_IN_USE LL_EXT_NV_IN_USE
662 #define HCI_EXT_NV_NOT_IN_USE LL_EXT_NV_NOT_IN_USE
663 
669 #define HCI_EXT_ENABLE_FAST_TX_RESP_TIME LL_EXT_ENABLE_FAST_TX_RESP_TIME
670 #define HCI_EXT_DISABLE_FAST_TX_RESP_TIME LL_EXT_DISABLE_FAST_TX_RESP_TIME
671 
677 #define HCI_EXT_ENABLE_PL_OVERRIDE LL_EXT_ENABLE_PL_OVERRIDE
678 #define HCI_EXT_DISABLE_PL_OVERRIDE LL_EXT_DISABLE_PL_OVERRIDE
679 
685 #define HCI_EXT_TX_MODULATED_CARRIER LL_EXT_TX_MODULATED_CARRIER
686 #define HCI_EXT_TX_UNMODULATED_CARRIER LL_EXT_TX_UNMODULATED_CARRIER
687 
693 #define HCI_PTM_SET_FREQ_TUNE_DOWN LL_EXT_SET_FREQ_TUNE_DOWN
694 #define HCI_PTM_SET_FREQ_TUNE_UP LL_EXT_SET_FREQ_TUNE_UP
695 
697 
699 
703 #define HCI_EXT_PM_IO_PORT_P0 LL_EXT_PM_IO_PORT_P0
704 #define HCI_EXT_PM_IO_PORT_P1 LL_EXT_PM_IO_PORT_P1
705 #define HCI_EXT_PM_IO_PORT_P2 LL_EXT_PM_IO_PORT_P2
706 #define HCI_EXT_PM_IO_PORT_NONE LL_EXT_PM_IO_PORT_NONE
707 
708 #define HCI_EXT_PM_IO_PORT_PIN0 LL_EXT_PM_IO_PORT_PIN0
709 #define HCI_EXT_PM_IO_PORT_PIN1 LL_EXT_PM_IO_PORT_PIN1
710 #define HCI_EXT_PM_IO_PORT_PIN2 LL_EXT_PM_IO_PORT_PIN2
711 #define HCI_EXT_PM_IO_PORT_PIN3 LL_EXT_PM_IO_PORT_PIN3
712 #define HCI_EXT_PM_IO_PORT_PIN4 LL_EXT_PM_IO_PORT_PIN4
713 #define HCI_EXT_PM_IO_PORT_PIN5 LL_EXT_PM_IO_PORT_PIN5
714 #define HCI_EXT_PM_IO_PORT_PIN6 LL_EXT_PM_IO_PORT_PIN6
715 #define HCI_EXT_PM_IO_PORT_PIN7 LL_EXT_PM_IO_PORT_PIN7
716 
718 
724 #define HCI_EXT_PER_RESET LL_EXT_PER_RESET
725 #define HCI_EXT_PER_READ LL_EXT_PER_READ
726 
728 
730 
734 #define HCI_EXT_HALT_DURING_RF_DISABLE LL_EXT_HALT_DURING_RF_DISABLE
735 #define HCI_EXT_HALT_DURING_RF_ENABLE LL_EXT_HALT_DURING_RF_ENABLE
736 
738 
740 
744 #define HCI_EXT_SET_USER_REVISION LL_EXT_SET_USER_REVISION
745 #define HCI_EXT_READ_BUILD_REVISION LL_EXT_READ_BUILD_REVISION
746 
752 #define HCI_EXT_RESET_SYSTEM_HARD LL_EXT_RESET_SYSTEM_HARD
753 #define HCI_EXT_RESET_SYSTEM_SOFT LL_EXT_RESET_SYSTEM_SOFT
754 
756 
758 
762 #define HCI_EXT_DISABLE_OVERLAPPED_PROCESSING LL_EXT_DISABLE_OVERLAPPED_PROCESSING
763 #define HCI_EXT_ENABLE_OVERLAPPED_PROCESSING LL_EXT_ENABLE_OVERLAPPED_PROCESSING
764 
766 
768 
772 #define HCI_EXT_DISABLE_NUM_COMPL_PKTS_ON_EVENT LL_EXT_DISABLE_NUM_COMPL_PKTS_ON_EVENT
773 #define HCI_EXT_ENABLE_NUM_COMPL_PKTS_ON_EVENT LL_EXT_ENABLE_NUM_COMPL_PKTS_ON_EVENT
774 
780 #define HCI_EXT_DISABLE_SCAN_REQUEST_REPORT LL_EXT_DISABLE_SCAN_REQUEST_REPORT
781 #define HCI_EXT_ENABLE_SCAN_REQUEST_REPORT LL_EXT_ENABLE_SCAN_REQUEST_REPORT
782 
792 #define HCI_LINK_TYPE_SCO_BUFFER_OVERFLOW 0
793 #define HCI_LINK_TYPE_ACL_BUFFER_OVERFLOW 1
794 
802 #define HCI_EXT_RF_SETUP_1M_PHY LL_EXT_RF_SETUP_1M_PHY
803 #define HCI_EXT_RF_SETUP_2M_PHY LL_EXT_RF_SETUP_2M_PHY
804 #define HCI_EXT_RF_SETUP_CODED_S8_PHY LL_EXT_RF_SETUP_CODED_S8_PHY
805 #define HCI_EXT_RF_SETUP_CODED_S2_PHY LL_EXT_RF_SETUP_CODED_S2_PHY
806 
812  #define HCI_EXT_STATS_RESET LL_EXT_STATS_RESET
813  #define HCI_EXT_STATS_READ LL_EXT_STATS_READ
814 
819 /*
820  * TYPEDEFS
821  */
822 
824 typedef uint8 hciStatus_t;
826 
832 typedef struct
834 {
836  uint8 BLEEventCode;
837  uint8 status;
839  uint8 role;
840  uint8 peerAddrType;
841  uint8 peerAddr[B_ADDR_LEN];
842  uint16 connInterval;
843  uint16 connLatency;
844  uint16 connTimeout;
847 
849 typedef struct
850 {
852  uint8 BLEEventCode;
853  uint8 status;
855  uint8 role;
856  uint8 peerAddrType;
857  uint8 peerAddr[B_ADDR_LEN];
858  uint16 connInterval;
859  uint16 connLatency;
860  uint16 connTimeout;
862  // Note: These fields normally follow peerAddr. Put here for Host optimization.
863  uint8 localRPA[B_ADDR_LEN];
864  uint8 peerRPA[B_ADDR_LEN];
866 
869 {
873 
875 typedef struct
876 {
877  uint8 eventType;
878  uint8 addrType;
879  uint8 addr[B_ADDR_LEN];
880  uint8 dataLen;
881  uint8 rspData[B_MAX_ADV_LEN];
882  int8 rssi;
884 
886 typedef struct
887 {
889  uint8 BLEEventCode;
890  uint8 numDevices;
893 
895 typedef struct
896 {
898  uint8 BLEEventCode;
899  uint8 eventType;
900  uint8 peerAddrType;
901  uint8 peerAddr[B_ADDR_LEN];
902  uint8 bleChan;
903  int8 rssi;
905 
907 typedef struct
908 {
910  uint8 BLEEventCode;
911  uint16 connHandle;
912  uint8 nextDataChan;
913  uint8 newChanMap[LL_NUM_BYTES_FOR_CHAN_MAP];
915 
916 typedef struct
917 {
919  uint8 BLEEventCode;
920  uint8 status;
921  uint16 connHandle;
922  uint8 reason;
923  uint8 txPhy;
924  uint8 txPowerLevel;
925  uint8 txPowerFlag;
926  uint8 delta;
928 
930 typedef struct
931 {
933  uint8 BLEEventCode;
934  uint8 status;
936  uint16 connInterval;
937  uint16 connLatency;
938  uint16 connTimeout;
940 
942 typedef struct
943 {
945  uint8 BLEEventCode;
946  uint8 status;
948  uint8 features[8];
950 
952 typedef struct
953 {
955  uint8 BLEEventCode;
956  uint16 connHandle;
957  uint8 reason;
958  uint8 encEnable;
960 
962 typedef struct
963 {
965  uint8 BLEEventCode;
966  uint16 connHandle;
967  uint8 random[B_RANDOM_NUM_SIZE];
970 
972 typedef struct
973 {
975  uint8 numHandles;
979 
981 typedef struct
982 {
984  uint8 numHciCmdPkt;
985  uint16 cmdOpcode;
986  uint8 *pReturnParam;
988 
990 typedef struct
991 {
993  uint8 length;
994  uint16 cmdOpcode;
995  uint8 *pEventParam;
997 
999 typedef struct
1000 {
1002  uint8 cmdStatus;
1004  uint16 cmdOpcode;
1006 
1008 typedef struct
1009 {
1013 
1015 typedef struct
1016 {
1018  uint8 status;
1019  uint16 connHandle;
1020  uint8 reason;
1022 
1024 typedef struct
1025 {
1027  uint8 linkType;
1029 
1031 typedef struct
1032 {
1034  uint16 connHandle;
1036 
1038 typedef struct
1039 {
1041  uint16 connHandle;
1042  uint16 cid;
1044 
1046 typedef struct
1047 {
1050  uint8 status;
1051  uint16 connHandle;
1052  uint16 Interval_Min;
1053  uint16 Interval_Max;
1054  uint16 Latency;
1055  uint16 Timeout;
1057 
1059 typedef struct
1060 {
1063  uint8 status;
1064  uint16 connHandle;
1065  uint8 txPhy;
1066  uint8 rxPhy;
1068 
1070 typedef struct
1071 {
1074  uint16 connHandle;
1075  uint16 maxTxOctets;
1076  uint16 maxTxTime;
1077  uint16 maxRxOctets;
1078  uint16 maxRxTime;
1080 
1082 typedef struct
1083 {
1086  uint16 connHandle;
1088  uint16 newChannelMap[LL_NUM_BYTES_FOR_CHAN_MAP];
1090 
1092 typedef struct
1093 {
1096  uint8 status;
1097  uint8 p256Key[LL_SC_P256_KEY_LEN];
1099 
1101 typedef struct
1102 {
1105  uint8 status;
1106  uint8 dhKey[LL_SC_DHKEY_LEN];
1108 
1110 typedef struct
1111 {
1114  uint16 connHandle;
1115  uint8 phy;
1116  uint8 dataChIndex;
1117  uint16 rssi;
1118  uint8 rssiAntenna;
1119  uint8 cteType;
1121  uint8 status;
1122  uint16 connEvent;
1123  uint8 sampleCount;
1124  int8 *iqSamples;
1126 
1128 typedef struct
1129 {
1132  uint8 status;
1133  uint16 connHandle;
1135 
1137 typedef struct
1138 {
1141  uint16 totalDataLen;
1142  uint8 eventIndex;
1143  uint16 connHandle;
1144  uint8 phy;
1145  uint8 dataChIndex;
1146  uint16 rssi;
1147  uint8 rssiAntenna;
1148  uint8 cteType;
1150  uint8 status;
1151  uint16 connEvent;
1152  uint8 dataLen;
1153  uint8 sampleRate;
1154  uint8 sampleSize;
1155  uint8 sampleCtrl;
1156  void *iqSamples;
1158 
1160 typedef struct
1161 {
1164  uint16 syncHandle;
1166  uint16 rssi;
1167  uint8 rssiAntenna;
1168  uint8 cteType;
1170  uint8 status;
1171  uint16 eventCounter;
1172  uint8 sampleCount;
1173  int8 *iqSamples;
1175 
1177 typedef struct
1178 {
1181  uint16 totalDataLen;
1182  uint8 eventIndex;
1183  uint16 syncHandle;
1185  uint16 rssi;
1186  uint8 rssiAntenna;
1187  uint8 cteType;
1189  uint8 status;
1190  uint16 eventCounter;
1191  uint8 dataLen;
1192  uint8 sampleRate;
1193  uint8 sampleSize;
1194  uint8 sampleCtrl;
1195  void *iqSamples;
1197 
1199 typedef struct
1200 {
1203  uint8 status;
1204  uint16 syncHandle;
1205  uint8 sid;
1206  uint8 addrType;
1207  uint8 address[B_ADDR_LEN];
1208  uint8 phy;
1212 
1214 typedef struct
1215 {
1218  uint16 syncHandle;
1219  int8 txPower;
1220  int8 rssi;
1221  uint8 cteType;
1222  uint8 dataStatus;
1223  uint8 dataLen;
1224  uint8 *data;
1226 
1228 typedef struct
1229 {
1232  uint16 syncHandle;
1234 
1235 
1237 typedef struct
1238 {
1239  uint8 status;
1240  uint16 dataPktLen;
1241  uint8 numDataPkts;
1243 
1245 typedef struct
1246 {
1249  uint16 connHandle;
1250  uint8 chSelAlgo;
1252 
1254 typedef struct
1255 {
1257  uint8_t BLEEventCode;
1258 } hciEvtHdr_t;
1259 
1261 typedef struct
1262 {
1264  uint8 *pData;
1265 } hciPacket_t;
1266 
1268 typedef struct
1269 {
1271  uint8 pktType;
1272  uint16 connHandle;
1273  uint8 pbFlag;
1274  uint16 pktLen;
1275  uint8 *pData;
1276 } hciDataPacket_t;
1277 
1279 
1280 // OSAL HCI_DATA_EVENT message format. This message is used to forward incoming
1281 // data messages up to an application
1282 typedef struct
1283 {
1284  event_hdr_t hdr;
1285  uint16 connHandle;
1286  uint8 pbFlag;
1287  uint16 len;
1288  uint8 *pData;
1289 } hciDataEvent_t;
1290 
1292 
1293 PACKED_TYPEDEF_STRUCT
1294 {
1295  uint8 connId;
1296  uint8 role;
1297  uint8 addr[LL_DEVICE_ADDR_LEN];
1298  uint8 addrType;
1299 } hciConnInfo_t;
1300 
1301 PACKED_TYPEDEF_STRUCT
1302 {
1303  uint32_t accessAddr;
1304  uint16_t connInterval;
1305  uint8_t hopValue;
1306  uint16_t mSCA;
1307  uint8_t nextChan;
1308  uint8_t chanMap[LL_NUM_BYTES_FOR_CHAN_MAP];
1309  uint8_t crcInit[LL_PKT_CRC_LEN];
1310  uint8_t ownAddrType;
1312 
1313 PACKED_TYPEDEF_STRUCT
1314 {
1315  uint16 numPkts;
1316  uint16 numCrcErr;
1317  uint16 numEvents;
1319 } hciPER_t;
1320 
1323 
1335 extern void *HCI_bm_alloc( uint16 size );
1336 
1347 extern void HCI_bm_free( uint8* pBuf );
1348 
1362 extern uint8 HCI_ValidConnTimeParams( uint16 connIntervalMin,
1363  uint16 connIntervalMax,
1364  uint16 connLatency,
1365  uint16 connTimeout );
1366 
1372 extern void HCI_GAPTaskRegister( uint8 taskID );
1373 
1379 extern void HCI_L2CAPTaskRegister( uint8 taskID );
1380 
1386 extern void HCI_SMPTaskRegister( uint8 taskID );
1387 
1393 extern void HCI_ExtTaskRegister( uint8 taskID );
1394 
1419 extern hciStatus_t HCI_SendDataPkt( uint16 connHandle,
1420  uint8 pbFlag,
1421  uint16 pktLen,
1422  uint8 *pData );
1423 
1439 extern hciStatus_t HCI_DisconnectCmd( uint16 connHandle,
1440  uint8 reason );
1441 
1443 
1461 extern hciStatus_t HCI_ReadRemoteVersionInfoCmd( uint16 connHandle );
1462 
1463 
1477 extern hciStatus_t HCI_SetEventMaskCmd( uint8 *pMask );
1478 
1479 
1493 extern hciStatus_t HCI_SetEventMaskPage2Cmd( uint8 *pMask );
1494 
1503 extern hciStatus_t HCI_ResetCmd( void );
1504 
1516 extern hciStatus_t HCI_ReadTransmitPowerLevelCmd( uint16 connHandle,
1517  uint8 txPwrType );
1518 
1520 
1534 extern hciStatus_t HCI_SetControllerToHostFlowCtrlCmd( uint8 flowControlEnable );
1535 
1555 extern hciStatus_t HCI_HostBufferSizeCmd( uint16 hostAclPktLen,
1556  uint8 hostSyncPktLen,
1557  uint16 hostTotalNumAclPkts,
1558  uint16 hostTotalNumSyncPkts );
1559 
1561 
1590 extern hciStatus_t HCI_HostNumCompletedPktCmd( uint8 numHandles,
1591  uint16 *connHandles,
1592  uint16 *numCompletedPkts );
1593 
1605 extern hciStatus_t HCI_ReadAuthPayloadTimeoutCmd( uint16 connHandle,
1606  uint16 *aptoValue );
1607 
1619 extern hciStatus_t HCI_WriteAuthPayloadTimeoutCmd( uint16 connHandle,
1620  uint16 aptoValue );
1621 
1630 extern hciStatus_t HCI_ReadLocalVersionInfoCmd( void );
1631 
1640 extern hciStatus_t HCI_ReadLocalSupportedCommandsCmd( void );
1641 
1650 extern hciStatus_t HCI_ReadLocalSupportedFeaturesCmd( void );
1651 
1663 void HCI_GetLocalSupportedCommands(uint8_t* pSupportedCmdBuf);
1664 
1673 extern hciStatus_t HCI_ReadBDADDRCmd( void );
1674 
1691 extern hciStatus_t HCI_ReadRssiCmd( uint16 connHandle );
1692 
1706 extern hciStatus_t HCI_LE_SetEventMaskCmd( uint8 *pEventMask );
1707 
1716 extern hciStatus_t HCI_LE_ReadBufSizeCmd( void );
1717 
1727 extern hciStatus_t HCI_LE_ReadLocalSupportedFeaturesCmd( void );
1728 
1740 extern hciStatus_t HCI_LE_SetRandomAddressCmd( uint8 *pRandAddr );
1741 
1759 extern hciStatus_t HCI_LE_SetAdvParamCmd( uint16 advIntervalMin,
1760  uint16 advIntervalMax,
1761  uint8 advType,
1762  uint8 ownAddrType,
1763  uint8 directAddrType,
1764  uint8 *directAddr,
1765  uint8 advChannelMap,
1766  uint8 advFilterPolicy );
1767 
1779 extern hciStatus_t HCI_LE_SetAdvDataCmd( uint8 dataLen,
1780  uint8 *pData );
1793 hciStatus_t HCI_LE_SetExtAdvData( aeSetDataCmd_t *pCmdParams );
1794 
1807 hciStatus_t HCI_LE_SetExtScanRspData( aeSetDataCmd_t *pCmdParams );
1808 
1822 hciStatus_t HCI_LE_SetAdvStatus( aeEnableCmd_t *pCmdParams );
1823 
1835 extern hciStatus_t HCI_LE_SetScanRspDataCmd( uint8 dataLen,
1836  uint8 *pData );
1837 
1848 extern hciStatus_t HCI_LE_SetAdvEnableCmd( uint8 advEnable );
1849 
1858 extern hciStatus_t HCI_LE_ReadAdvChanTxPowerCmd( void );
1859 
1876 extern hciStatus_t HCI_LE_SetScanParamCmd( uint8 scanType,
1877  uint16 scanInterval,
1878  uint16 scanWindow,
1879  uint8 ownAddrType,
1880  uint8 filterPolicy );
1881 
1894 extern hciStatus_t HCI_LE_SetScanEnableCmd( uint8 scanEnable,
1895  uint8 filterDuplicates );
1896 
1905 extern hciStatus_t HCI_LE_CreateConnCancelCmd( void );
1906 
1915 extern hciStatus_t HCI_LE_ReadAcceptListSizeCmd( void );
1916 
1917 
1926 extern hciStatus_t HCI_LE_ClearAcceptListCmd( void );
1927 
1928 
1940 extern hciStatus_t HCI_LE_AddAcceptListCmd( uint8 addrType,
1941  uint8 *devAddr );
1942 
1943 
1955 extern hciStatus_t HCI_LE_RemoveAcceptListCmd( uint8 addrType,
1956  uint8 *devAddr );
1957 
1975 extern hciStatus_t HCI_LE_ConnUpdateCmd( uint16 connHandle,
1976  uint16 connIntervalMin,
1977  uint16 connIntervalMax,
1978  uint16 connLatency,
1979  uint16 connTimeout,
1980  uint16 minLen,
1981  uint16 maxLen );
1982 
1994 extern hciStatus_t HCI_LE_SetHostChanClassificationCmd( uint8 *chanMap );
1995 
2006 extern hciStatus_t HCI_EXT_SetHostDefChanClassificationCmd( uint8 *chanMap );
2007 
2019 extern hciStatus_t HCI_EXT_SetHostConnChanClassificationCmd( uint8 *chanMap , uint16 connID );
2020 
2032 extern hciStatus_t HCI_LE_ReadChannelMapCmd( uint16 connHandle );
2033 
2046 extern hciStatus_t HCI_LE_ReadRemoteUsedFeaturesCmd( uint16 connHandle );
2047 
2068 extern hciStatus_t HCI_LE_EncryptCmd( uint8 *key,
2069  uint8 *plainText );
2070 
2093 extern hciStatus_t HCI_LE_RandCmd( void );
2094 
2110 extern hciStatus_t HCI_LE_StartEncyptCmd( uint16 connHandle,
2111  uint8 *random,
2112  uint8 *encDiv,
2113  uint8 *ltk );
2114 
2126 extern hciStatus_t HCI_LE_LtkReqReplyCmd( uint16 connHandle,
2127  uint8 *ltk );
2128 
2129 
2140 extern hciStatus_t HCI_LE_LtkReqNegReplyCmd( uint16 connHandle );
2141 
2150 extern hciStatus_t HCI_LE_ReadSupportedStatesCmd( void );
2151 
2164 extern hciStatus_t HCI_LE_ReceiverTestCmd( uint8 rxChan );
2165 
2182 extern hciStatus_t HCI_LE_TransmitterTestCmd( uint8 txChan,
2183  uint8 dataLen,
2184  uint8 pktPayload );
2185 
2196 extern hciStatus_t HCI_LE_TestEndCmd( void );
2197 
2198 // V4.1
2199 
2221 extern hciStatus_t HCI_LE_RemoteConnParamReqReplyCmd( uint16 connHandle,
2222  uint16 connIntervalMin,
2223  uint16 connIntervalMax,
2224  uint16 connLatency,
2225  uint16 connTimeout,
2226  uint16 minLen,
2227  uint16 maxLen );
2228 
2245 extern hciStatus_t HCI_LE_RemoteConnParamReqNegReplyCmd( uint16 connHandle,
2246  uint8 reason );
2247 
2248 // V4.2 Extended Data Length
2249 
2265 extern hciStatus_t HCI_LE_SetDataLenCmd( uint16 connHandle,
2266  uint16 txOctets,
2267  uint16 txTime );
2268 
2280 extern hciStatus_t HCI_LE_ReadSuggestedDefaultDataLenCmd( void );
2281 
2297 extern hciStatus_t HCI_LE_WriteSuggestedDefaultDataLenCmd( uint16 txOctets,
2298  uint16 txTime );
2299 
2311 extern hciStatus_t HCI_LE_ReadMaxDataLenCmd( void );
2312 
2313 // V4.2 Privacy 1.2
2314 
2331 extern hciStatus_t HCI_LE_AddDeviceToResolvingListCmd( uint8 peerIdAddrType,
2332  uint8 *peerIdAddr,
2333  uint8 *peerIRK,
2334  uint8 *localIRK );
2335 
2350 extern hciStatus_t HCI_LE_RemoveDeviceFromResolvingListCmd( uint8 peerIdAddrType,
2351  uint8 *peerIdAddr );
2352 
2364 extern hciStatus_t HCI_LE_ClearResolvingListCmd( void );
2365 
2377 extern hciStatus_t HCI_LE_ReadResolvingListSizeCmd( void );
2378 
2396 extern hciStatus_t HCI_LE_ReadPeerResolvableAddressCmd( uint8 peerIdAddrType,
2397  uint8 *peerIdAddr );
2398 
2417 extern hciStatus_t HCI_LE_ReadLocalResolvableAddressCmd( uint8 localIdAddrType,
2418  uint8 *localIdAddr );
2419 
2434 extern hciStatus_t HCI_LE_SetAddressResolutionEnableCmd( uint8 addrResolutionEnable );
2435 
2451 extern hciStatus_t HCI_LE_SetResolvablePrivateAddressTimeoutCmd( uint16 rpaTimeout );
2452 
2469 extern hciStatus_t HCI_LE_SetPrivacyModeCmd( uint8 peerIdAddrType,
2470  uint8 *peerIdAddr,
2471  uint8 privacyMode );
2472 
2473 // V4.2 Secure Connections
2474 
2490 extern hciStatus_t HCI_LE_ReadLocalP256PublicKeyCmd( void );
2491 
2510 extern hciStatus_t HCI_LE_GenerateDHKeyCmd( uint8 *publicKey );
2511 
2512 
2531 extern hciStatus_t HCI_LE_GenerateDHKeyV2Cmd( uint8 *publicKey, uint8 keyType );
2532 
2533 // V5.0 2M and Coded PHY
2534 
2550 extern hciStatus_t HCI_LE_ReadPhyCmd( uint16 connHandle );
2551 
2567 extern hciStatus_t HCI_LE_SetDefaultPhyCmd( uint8 allPhys,
2568  uint8 txPhy,
2569  uint8 rxPhy );
2570 
2571 
2586 extern hciStatus_t HCI_LE_SetPhyCmd( uint16 connHandle,
2587  uint8 allPhys,
2588  uint8 txPhy,
2589  uint8 rxPhy,
2590  uint16 phyOpts );
2591 
2592 
2608 extern hciStatus_t HCI_LE_EnhancedRxTestCmd( uint8 rxChan,
2609  uint8 rxPhy,
2610  uint8 modIndex );
2611 
2612 
2629 extern hciStatus_t HCI_LE_EnhancedTxTestCmd( uint8 txChan,
2630  uint8 payloadLen,
2631  uint8 payloadType,
2632  uint8 txPhy );
2653 extern hciStatus_t HCI_LE_EnhancedCteRxTestCmd( uint8 rxChan,
2654  uint8 rxPhy,
2655  uint8 modIndex,
2656  uint8 expectedCteLength,
2657  uint8 expectedCteType,
2658  uint8 slotDurations,
2659  uint8 length,
2660  uint8 *pAntenna);
2661 
2682 extern hciStatus_t HCI_LE_EnhancedCteTxTestCmd( uint8 txChan,
2683  uint8 payloadLen,
2684  uint8 payloadType,
2685  uint8 txPhy,
2686  uint8 cteLength,
2687  uint8 cteType,
2688  uint8 length,
2689  uint8 *pAntenna);
2698 extern hciStatus_t HCI_LE_ReadTxPowerCmd( void );
2699 
2708 extern hciStatus_t HCI_LE_ReadRfPathCompCmd( void );
2709 
2721 extern hciStatus_t HCI_LE_WriteRfPathCompCmd( int16 txPathParam,
2722  int16 rxPathParam );
2723 
2724 // @cond NODOC
2743 extern hciStatus_t HCI_LE_SetConnectionCteReceiveParamsCmd( uint16 connHandle,
2744  uint8 samplingEnable,
2745  uint8 slotDurations,
2746  uint8 length,
2747  uint8 *pAntenna);
2748 
2749 
2766 extern hciStatus_t HCI_LE_SetConnectionCteTransmitParamsCmd( uint16 connHandle,
2767  uint8 types,
2768  uint8 length,
2769  uint8 *pAntenna);
2770 
2787 extern hciStatus_t HCI_LE_SetConnectionCteRequestEnableCmd( uint16 connHandle,
2788  uint8 enable,
2789  uint16 interval,
2790  uint8 length,
2791  uint8 type);
2792 
2806 extern hciStatus_t HCI_LE_SetConnectionCteResponseEnableCmd( uint16 connHandle,
2807  uint8 enable);
2808 
2819 extern hciStatus_t HCI_LE_ReadAntennaInformationCmd( void );
2820 
2840 extern hciStatus_t HCI_LE_SetPeriodicAdvParamsCmd( uint8 advHandle,
2841  uint16 periodicAdvIntervalMin,
2842  uint16 periodicAdvIntervalMax,
2843  uint16 periodicAdvProp );
2844 
2845 
2868 extern hciStatus_t HCI_LE_SetPeriodicAdvDataCmd( uint8 advHandle,
2869  uint8 operation,
2870  uint8 dataLength,
2871  uint8 *data );
2872 
2888 extern hciStatus_t HCI_LE_SetPeriodicAdvEnableCmd( uint8 enable,
2889  uint8 advHandle );
2890 
2908 extern hciStatus_t HCI_LE_SetConnectionlessCteTransmitParamsCmd( uint8 advHandle,
2909  uint8 cteLen,
2910  uint8 cteType,
2911  uint8 cteCount,
2912  uint8 length,
2913  uint8 *pAntenna);
2914 
2929 extern hciStatus_t HCI_LE_SetConnectionlessCteTransmitEnableCmd( uint8 advHandle,
2930  uint8 enable );
2931 
2961 extern hciStatus_t HCI_LE_PeriodicAdvCreateSyncCmd( uint8 options,
2962  uint8 advSID,
2963  uint8 advAddrType,
2964  uint8 *advAddress,
2965  uint16 skip,
2966  uint16 syncTimeout,
2967  uint8 syncCteType );
2968 
2969 /*******************************************************************************
2970  * @fn HCI_LE_SetPeriodicSyncSubeventCmd
2971  *
2972  * @brief This function used by the Host to set the subevents it want to
2973  * sync with.
2974  *
2975  * input parameters
2976  *
2977  * @param syncHandle - Handle identifying the periodic advertising train
2978  * @param perAdvProps - Properties for the Response data header
2979  * @param numSubevents - Number of subevents to be set
2980  * @param subEvents - Pointer to the array of subevents to be set
2981  *
2982  * output parameters
2983  *
2984  * @param None.
2985  *
2986  * @return status of the command
2987  * HCI_SUCCESS - Command was successful
2988  * LL_STATUS_ERROR_COMMAND_DISALLOWED - Command disallowed
2989  * LL_STATUS_ERROR_BAD_PARAMETER - Invalid parameters were passed
2990  * LL_STATUS_ERROR_FEATURE_NOT_SUPPORTED - Invalid parameters were passed
2991  * HCI_ERROR_CODE_MEM_CAP_EXCEEDED - Memory capacity exceeded
2992  */
2993 extern hciStatus_t HCI_LE_SetPeriodicSyncSubeventCmd(uint16_t syncHandle,
2994  uint16_t perAdvProps,
2995  uint8_t numSubevents,
2996  uint8_t* subEvents);
2997 
2998 /*******************************************************************************
2999  * @fn HCI_LE_SetPeriodicAdvResponseDataCmd
3000  *
3001  * @brief Used by the Host to set the periodic advertising response parameters
3002  * and data.
3003  *
3004  * input parameters
3005  *
3006  * @param syncHandle - Handle identifying the periodic advertising train
3007  * @param pRspParams - Pointer to the periodic advertising response parameters
3008  * and data.
3009  *
3010  * output parameters
3011  *
3012  * @param None.
3013  *
3014  * @return status of the command
3015  * HCI_SUCCESS - Command was successful
3016  * LL_STATUS_ERROR_COMMAND_DISALLOWED - Command disallowed
3017  * LL_STATUS_ERROR_UNKNOWN_ADVERTISING_IDENTIFIER - Unknown advertising identifier
3018  * LL_STATUS_ERROR_BAD_PARAMETER - Invalid parameters were passed
3019  * HCI_ERROR_CODE_MEM_CAP_EXCEEDED - Memory capacity exceeded
3020 */
3021 extern hciStatus_t HCI_LE_SetPeriodicAdvResponseDataCmd(uint16 syncHandle,
3022  uint8_t* pRspParams);
3033 extern hciStatus_t HCI_LE_PeriodicAdvCreateSyncCancelCmd( void );
3034 
3050 extern hciStatus_t HCI_LE_PeriodicAdvTerminateSyncCmd( uint16 syncHandle );
3051 
3068 extern hciStatus_t HCI_LE_AddDeviceToPeriodicAdvListCmd( uint8 advAddrType,
3069  uint8 *advAddress,
3070  uint8 advSID );
3071 
3089 extern hciStatus_t HCI_LE_RemoveDeviceFromPeriodicAdvListCmd( uint8 advAddrType,
3090  uint8 *advAddress,
3091  uint8 advSID );
3092 
3103 extern hciStatus_t HCI_LE_ClearPeriodicAdvListCmd( void );
3104 
3116 extern hciStatus_t HCI_LE_ReadPeriodicAdvListSizeCmd( void );
3117 
3129 extern hciStatus_t HCI_LE_SetHostFeature( uint8, uint8 );
3130 
3148 extern hciStatus_t HCI_LE_SetPeriodicAdvReceiveEnableCmd( uint16 syncHandle,
3149  uint8 enable );
3150 
3152 
3153 /*
3154 ** HCI Vendor Specific Commands: Link Layer Extensions
3155 */
3156 
3169 extern hciStatus_t HCI_EXT_SetRxGainCmd( uint8 rxGain );
3170 
3191 extern hciStatus_t HCI_EXT_SetTxPowerDbmCmd( int8 txPower, uint8 fraction );
3192 
3205 extern hciStatus_t HCI_EXT_OnePktPerEvtCmd( uint8 control );
3206 
3208 
3227 extern hciStatus_t HCI_EXT_ClkDivOnHaltCmd( uint8 control );
3228 
3250 extern hciStatus_t HCI_EXT_DeclareNvUsageCmd( uint8 mode );
3251 
3253 
3267 extern hciStatus_t HCI_EXT_DecryptCmd( uint8 *key,
3268  uint8 *encText );
3269 
3292 extern hciStatus_t HCI_EXT_SetLocalSupportedFeaturesCmd( uint8 *localFeatures );
3293 
3319 extern hciStatus_t HCI_EXT_SetFastTxResponseTimeCmd( uint8 control );
3320 
3321 
3340 extern hciStatus_t HCI_EXT_SetPeripheralLatencyOverrideCmd( uint8 control );
3341 
3342 
3367 extern hciStatus_t HCI_EXT_ModemTestTxCmd( uint8 cwMode,
3368  uint8 txChan );
3369 
3392 extern hciStatus_t HCI_EXT_ModemHopTestTxCmd( void );
3393 
3416 extern hciStatus_t HCI_EXT_ModemTestRxCmd( uint8 rxChan );
3417 
3443 extern hciStatus_t HCI_EXT_EnhancedModemTestTxCmd( uint8 cwMode,
3444  uint8 rfPhy,
3445  uint8 rfChan );
3446 
3475 extern hciStatus_t HCI_EXT_EnhancedModemHopTestTxCmd( uint8 payloadLen,
3476  uint8 payloadType,
3477  uint8 rfPhy );
3478 
3502 extern hciStatus_t HCI_EXT_EnhancedModemTestRxCmd( uint8 rfPhy,
3503  uint8 rfChan );
3504 
3515 extern hciStatus_t HCI_EXT_EndModemTestCmd( void );
3516 
3539 extern hciStatus_t HCI_EXT_SetBDADDRCmd( uint8 *bdAddr );
3540 
3566 extern hciStatus_t HCI_EXT_SetSCACmd( uint16 scaInPPM );
3567 
3583 extern hciStatus_t HCI_EXT_EnablePTMCmd( void );
3584 
3611 extern hciStatus_t HCI_EXT_SetMaxDtmTxPowerDbmCmd( int8 txPowerDbm,
3612  uint8 fraction );
3614 
3654 extern hciStatus_t HCI_EXT_MapPmIoPortCmd( uint8 ioPort, uint8 ioPin );
3655 
3657 
3673 extern hciStatus_t HCI_EXT_DisconnectImmedCmd( uint16 connHandle );
3674 
3693 extern hciStatus_t HCI_EXT_PacketErrorRateCmd( uint16 connHandle, uint8 command );
3694 
3736 extern hciStatus_t HCI_EXT_PERbyChanCmd( uint16 connHandle, perByChan_t *perByChan );
3737 
3759 extern hciStatus_t HCI_EXT_BuildRevisionCmd( uint8 mode, uint16 userRevNum );
3760 
3762 
3794 extern hciStatus_t HCI_EXT_DelaySleepCmd( uint16 delay );
3795 
3797 
3816 extern hciStatus_t HCI_EXT_ResetSystemCmd( uint8 mode );
3817 
3818 // @cond NODOC
3819 
3830 extern hciStatus_t HCI_EXT_LLTestModeCmd( uint8 testCase );
3831 
3832 
3843 extern hciStatus_t HCI_EXT_OverlappedProcessingCmd( uint8 mode );
3844 
3846 
3867 extern hciStatus_t HCI_EXT_NumComplPktsLimitCmd( uint8 limit,
3868  uint8 flushOnEvt );
3869 
3902 extern hciStatus_t HCI_EXT_GetConnInfoCmd( uint8 *numAllocConns,
3903  uint8 *numActiveConns,
3904  hciConnInfo_t *activeConnInfo );
3905 
3922 extern hciStatus_t HCI_EXT_SetMaxDataLenCmd( uint16 txOctets,
3923  uint16 txTime,
3924  uint16 rxOctets,
3925  uint16 rxTime );
3926 
3939 extern hciStatus_t HCI_EXT_SetDtmTxPktCntCmd( uint16 txPktCnt );
3940 
3941 
3950 extern hciStatus_t HCI_EXT_ReadRandAddrCmd( void );
3951 
3952 
3964 extern hciStatus_t HCI_EXT_SetPinOutputCmd( uint8 dio,
3965  uint8 value );
3966 
3989 extern hciStatus_t HCI_EXT_SetLocationingAccuracyCmd( uint16 handle,
3990  uint8 sampleRate1M,
3991  uint8 sampleSize1M,
3992  uint8 sampleRate2M,
3993  uint8 sampleSize2M,
3994  uint8 sampleCtrl);
3995 
4017 extern hciStatus_t HCI_EXT_GetActiveConnInfoCmd( uint8 connId, hciActiveConnInfo_t *activeConnInfo );
4018 
4041 extern hciStatus_t HCI_EXT_SetAdvSetRandAddrCmd( uint8 advHandle, uint8 *randAddr);
4042 
4064 extern hciStatus_t HCI_EXT_SetVirtualAdvAddrCmd( uint8 advHandle, uint8 *bdAddr );
4065 
4089 extern hciStatus_t HCI_EXT_SetExtScanChannels( uint8 extScanChannelsMap );
4090 
4141 extern hciStatus_t HCI_EXT_SetQOSParameters( uint8 taskType,
4142  uint8 paramType,
4143  uint32 ParamVal,
4144  uint16 taskHandle);
4145 
4178 extern hciStatus_t HCI_EXT_SetQOSDefaultParameters(uint32 paramDefaultVal,
4179  uint8 paramType,
4180  uint8 taskType);
4181 
4192 extern hciStatus_t HCI_EXT_CoexEnableCmd( uint8 enable );
4193 
4202 extern hciStatus_t HCI_EXT_GetRxStatisticsCmd( uint16 connHandle, uint8 command );
4203 
4212 extern hciStatus_t HCI_EXT_GetTxStatisticsCmd( uint16 connHandle, uint8 command );
4213 
4221 extern hciStatus_t HCI_EXT_GetCoexStatisticsCmd( uint8 command );
4222 
4223 /*******************************************************************************
4224  * @fn HCI_CMD_Parser
4225  *
4226  * @brief This API is called by an external or internal host to send
4227  * a raw HCI packet command to the controller. The API runs on all
4228  * parser functions and looks for opcode matches. Inside the parser
4229  * function, a call is made to the HCI function, which returns the
4230  * HCI status or HCI_ERROR_CODE_UNKNOWN_HCI_CMD if the opcode
4231  * is not found.
4232  *
4233  * input parameters
4234  *
4235  * @param pData - Pointer to packet's data.
4236  *
4237  * output parameters
4238  *
4239  * @param None.
4240  *
4241  * @return HCI/LL status
4242  * HCI_ERROR_CODE_UNKNOWN_HCI_CMD.
4243  *
4244  */
4245 hciStatus_t HCI_CMD_Parser(uint8 *pData);
4246 
4247 /*******************************************************************************
4248  * @fn HCI_LE_ReadRemoteTransmitPowerLevelCmd
4249  *
4250  * @brief Read the transmit power level used by the remote
4251  * controller on a specific connection and specific PHY.
4252  *
4253  * @Design BLE_LOKI-1969
4254  *
4255  * input parameters
4256  *
4257  * @param connHandle - Connection handle.
4258  * @param txPhy - Tx PHY of the remote controller to read the power value from.
4259  *
4260  * output parameters
4261  *
4262  * @param None
4263  *
4264  * @return @ref HCI_SUCCESS
4265  */
4266 hciStatus_t HCI_LE_ReadRemoteTransmitPowerLevelCmd( uint16_t connHandle,
4267  uint8_t txPhy );
4268 
4269 /*******************************************************************************
4270  * @fn HCI_LE_EnhancedReadTransmitPowerLevelCmd
4271  *
4272  * @brief Read the current and maximum transmit power level used by the local
4273  * controller on a specific connection and a specific PHY.
4274  *
4275  * @design BLE_LOKI-1969
4276  *
4277  * input parameters
4278  *
4279  * @param connHandle - Connection handle.
4280  * @param txPhy - Tx PHY to read the power value from.
4281  *
4282  * output parameters
4283  *
4284  * @param None
4285  *
4286  * @return @ref HCI_SUCCESS
4287  */
4288 hciStatus_t HCI_LE_EnhancedReadTransmitPowerLevelCmd( uint16_t connHandle,
4289  uint8_t txPhy );
4290 
4291 /*******************************************************************************
4292  * @fn HCI_LE_SetTransmitPowerReportingEnableCmd
4293  *
4294  * @brief Enable or disable the reporting to the local Host of transmit
4295  * power level changes in the local and remote Controllers of a
4296  * specific connection.
4297  *
4298  * @design BLE_LOKI-1969
4299  *
4300  * input parameters
4301  *
4302  * @param connHandle - Connection handle.
4303  * @param localEnable - Enable or disable the local reporting events
4304  * @param remoteEnable - Enable or disable the remote reporting events
4305  *
4306  * output parameters
4307  *
4308  * @param None
4309  *
4310  * @return @ref HCI_SUCCESS
4311  */
4312 hciStatus_t HCI_LE_SetTransmitPowerReportingEnableCmd( uint16_t connHandle,
4313  uint8_t localEnable,
4314  uint8_t remoteEnable);
4315 
4316 /*******************************************************************************
4317  * @fn HCI_EXT_SendPowerControlRequestCmd
4318  *
4319  * @brief Enables the App/Host to sent the power control request packet
4320  * with any delta value.
4321  *
4322  * @Design BLE_LOKI-1969
4323  *
4324  * input parameters
4325  *
4326  * @param connHandle - Connection handle.
4327  * @param txPhy - Tx PHY of the remote controller to query.
4328  * @param deltaPowerDb - Amount of Tx power (dB) to ask the peer device to change
4329  * @param enableApr - Enable or disable the usage of the APR value from the power control response packet
4330  *
4331  * output parameters
4332  *
4333  * @param None
4334  *
4335  * @return @ref HCI_SUCCESS
4336  */
4337 hciStatus_t HCI_EXT_SendPowerControlRequestCmd( uint16_t connHandle,
4338  uint8_t txPhy,
4339  int8_t deltaPowerDb,
4340  uint8_t aprEnalbe );
4341 
4342 /*******************************************************************************
4343  * @fn HCI_EXT_SetDefaultAntenna
4344  *
4345  * @brief This API is to be called by the host to set a default antenna
4346  * for common BLE communications.
4347  *
4348  * input parameters
4349  *
4350  * @param index - Index of the antenna to set as default.
4351  * Should match an antenna index defined by the controller.
4352  * Range: 0x00 to 0x03.
4353  *
4354  * output parameters
4355  *
4356  * @param None.
4357  *
4358  * @return HCI status
4359  *
4360  */
4361 extern hciStatus_t HCI_EXT_SetDefaultAntenna( uint8 index );
4362 
4363 /*******************************************************************************
4364  * @fn HCI_EXT_RssiMon_RegCmd
4365  *
4366  * @brief Enables the App/Host to register an RSSI monitoring command for
4367  * a specific connection.
4368  *
4369  * @design BLE_LOKI-2764
4370  *
4371  * input parameters
4372  *
4373  * @param connHandle - Connection handle.
4374  * @param lowRssiThresh - Low RSSI threshold value.
4375  * @param highRssiThresh - High RSSI threshold value.
4376  *
4377  * output parameters
4378  *
4379  * @param None
4380  *
4381  * @return @ref Register handle when success. Otherwise RSSI_MON_INVALID_REG_HANDLE
4382  */
4383 hciStatus_t HCI_EXT_RssiMon_RegCmd( uint16_t connHandle,
4384  int8_t lowRssiThresh,
4385  int8_t highRssiThresh );
4386 
4387 /*******************************************************************************
4388  * @fn HCI_EXT_RssiMon_UnregCmd
4389  *
4390  * @brief Enables the App/Host to unregister from an RSSI monitoring command for
4391  * a specific register handle.
4392  *
4393  * @design BLE_LOKI-2764
4394  *
4395  * input parameters
4396  *
4397  * @param regHandle - Register handle.
4398  *
4399  * output parameters
4400  *
4401  * @param None
4402  *
4403  * @return @ref HCI_SUCCESS when success. Otherswise RSSI_MON_INVALID_REG_HANDLE
4404  */
4405 hciStatus_t HCI_EXT_RssiMon_UnregCmd(uint8_t regHandle);
4406 
4407 /*******************************************************************************
4408  * @fn HCI_EXT_RssiMon_SetConfigCmd
4409  *
4410  * @brief Enables the App/Host to set the RSSI monitoring configuration.
4411  *
4412  * @design BLE_LOKI-2764
4413  *
4414  * input parameters
4415  *
4416  * @param incomeRssiWeight - Weight of the new RSSI value.
4417  * @param minRssiSamples - Minimum number of RSSI samples.
4418  *
4419  * output parameters
4420  *
4421  * @param None
4422  *
4423  * @return @ref HCI_SUCCESS when success. Otherwise RSSI_MON_INVALID_CONFIG
4424  */
4425 hciStatus_t HCI_EXT_RssiMon_SetConfigCmd( int8_t incomeRssiWeight,
4426  uint8_t minRssiSamples );
4427 
4428 /*******************************************************************************
4429  * @fn HCI_EXT_RssiMon_GetConfigCmd
4430  *
4431  * @brief Enables the App/Host to get the RSSI monitoring configuration.
4432  *
4433  * @design BLE_LOKI-2764
4434  *
4435  * input parameters
4436  *
4437  * @param None
4438  *
4439  * output parameters
4440  *
4441  * @param None
4442  *
4443  * @return @ref HCI_SUCCESS when success. Otherwise RSSI_MON_INVALID_CONFIG
4444  * The config data is raised through the command complete event
4445  */
4446 hciStatus_t HCI_EXT_RssiMon_GetConfigCmd(void);
4447 
4448 /*******************************************************************************
4449  * @fn HCI_EXT_RssiMon_GetRssiStatCmd
4450  *
4451  * @brief Enables the App/Host to get the RSSI monitoring statistics.
4452  *
4453  * @design BLE_LOKI-2764
4454  *
4455  * input parameters
4456  *
4457  * @param connHandle - Connection handle
4458  *
4459  * output parameters
4460  *
4461  * @param None
4462  *
4463  * @return @ref Rssi statistic value when success. otherwise RSSI_MON_INVALID_VALUE
4464  * The statistic data is raised through the command complete event
4465  */
4466 hciStatus_t HCI_EXT_RssiMon_GetRssiStatCmd(uint16_t connHandle);
4467 
4468 /*******************************************************************************
4469  * @fn HCI_LE_PAdvSetInfoTransferCmd
4470  *
4471  * @brief Periodic advertising sync transfer command is used to instruct
4472  * the controller to send synchronization information about the
4473  * periodic advertising in an advertising set to a connected
4474  * device
4475  *
4476  * @Design BLE_LOKI-2753
4477  *
4478  * input parameters
4479  *
4480  * @param connHandle - Connection handle.
4481  * @param serviceData - Value provided by the host for use by the Host
4482  * of the peer device.
4483  * @param advHandle - Advertising set of the periodic advertising.
4484  *
4485  * output parameters
4486  *
4487  * @param None
4488  *
4489  * @return HCI_SUCCESS when success.
4490  * Otherwise:
4491  * HCI_ERROR_CODE_UNKNOWN_ADVERTISING_IDENTIFIER
4492  * HCI_ERROR_CODE_UNKNOWN_CONN_ID
4493  * HCI_ERROR_CODE_UNSUPPORTED_FEATURE_PARAM_VALUE
4494  */
4495 hciStatus_t HCI_LE_PAdvSetInfoTransferCmd( uint16_t connHandle,
4496  uint16_t serviceData,
4497  uint8_t advHandle);
4498 
4499 /*******************************************************************************
4500  * @fn HCI_LE_PAdvSyncTransferCmd
4501  *
4502  * @brief Periodic advertising sync transfer command is used to instruct
4503  * the controller to send synchronization information about the
4504  * periodic advertising train identified by the Sync_Handle parameter
4505  * to a connected device
4506  *
4507  * @Design BLE_LOKI-2753
4508  *
4509  * input parameters
4510  *
4511  * @param connHandle - Connection handle.
4512  * @param serviceData - Value provided by the host for use by the Host
4513  * of the peer device.
4514  * @param syncHandle - Sync handle of the periodic advertising train.
4515  *
4516  * output parameters
4517  *
4518  * @param None
4519  *
4520  * @return HCI_SUCCESS when success.
4521  * Otherwise:
4522  * HCI_ERROR_CODE_UNKNOWN_ADVERTISING_IDENTIFIER
4523  * HCI_ERROR_CODE_UNKNOWN_CONN_ID
4524  * HCI_ERROR_CODE_UNSUPPORTED_FEATURE_PARAM_VALUE
4525  */
4526 hciStatus_t HCI_LE_PAdvSyncTransferCmd( uint16_t connHandle,
4527  uint16_t serviceData,
4528  uint16_t syncHandle );
4529 
4530 /*******************************************************************************
4531  * @fn HCI_LE_SetPASTParamCmd
4532  *
4533  * @brief Periodic advertising sync transfer parameters command is used to
4534  * specify how the controller will process periodic advertising
4535  * synchronization information (syncInfo) received from the device
4536  * identified by the Connection_Handle parameter.
4537  *
4538  * @Design BLE_LOKI-2753
4539  *
4540  * input parameters
4541  *
4542  * @param connHandle - Connection handle.
4543  * @param mode - Action to be taken when periodic advertising
4544  * synchronization information is received:
4545  * 0x00 - No attempt is made to synchronize to the periodic
4546  * advertising and no event is sent to host
4547  * 0x01 - Attempt to synchronize to periodic advertising,
4548  * Event is raised if we succeed to sync or not to the host
4549  * Periodic advertisements reports will not raised to the host
4550  * 0x02 - Attempt to synchronize to periodic advertising,
4551  * Event is raised to if we succeed to sync or not
4552  * Periodic advertisements reports will be raised to the host
4553  * with duplicate filtering is disabled
4554  * 0x03 - Attempt to synchronize to periodic advertising,
4555  * Event is raised to if we succeed to sync or not
4556  * Periodic advertisements reports will be raised to the host
4557  * with duplicate filtering is enabled
4558  * @param skip - Number of consecutive periodic advertising packets
4559  * the device may skip after successfully receiving
4560  * a periodic advertising packet
4561  * @param syncTimeout - Maximum permitted time between successful receives
4562  * @param cteType - Whether to only synchronize to periodic advertising
4563  * with certain types of Constant Tone Extension
4564  *
4565  * output parameters
4566  *
4567  * @param None
4568  *
4569  * @return HCI_SUCCESS when success.
4570  * Otherwise:
4571  * HCI_ERROR_CODE_UNSUPPORTED_FEATURE_PARAM_VALUE
4572  * HCI_ERROR_CODE_UNKNOWN_CONN_ID
4573  * HCI_ERROR_CODE_CMD_DISALLOWED
4574  */
4575 hciStatus_t HCI_LE_SetPASTParamCmd( uint16_t connHandle,
4576  uint8_t mode,
4577  uint16_t skip,
4578  uint16_t syncTimeout,
4579  uint8_t cteType );
4580 
4581 /*******************************************************************************
4582  * @fn HCI_LE_SetDefaultPASTParamCmd
4583  *
4584  * @brief Periodic advertising sync transfer set default parameters command
4585  * is used to specify the initial value for the periodic advertising
4586  * sync transfer parameters
4587  *
4588  * @Design BLE_LOKI-2753
4589  *
4590  * input parameters
4591  *
4592  * @param mode - Action to be taken when periodic advertising
4593  * synchronization information is received:
4594  * 0x00 - No attempt is made to synchronize to the periodic
4595  * advertising and no event is sent to host
4596  * 0x01 - Attempt to synchronize to periodic advertising,
4597  * Event is raised if we succeed to sync or not to the host
4598  * Periodic advertisements reports will not raised to the host
4599  * 0x02 - Attempt to synchronize to periodic advertising,
4600  * Event is raised to if we succeed to sync or not
4601  * Periodic advertisements reports will be raised to the host
4602  * with duplicate filtering is disabled
4603  * 0x03 - Attempt to synchronize to periodic advertising,
4604  * Event is raised to if we succeed to sync or not
4605  * Periodic advertisements reports will be raised to the host
4606  * @param skip - Number of consecutive periodic advertising packets
4607  * the device may skip after successfully receiving
4608  * a periodic advertising packet
4609  * @param syncTimeout - Maximum permitted time between successful receives
4610  * @param cteType - Whether to only synchronize to periodic advertising
4611  * with certain types of Constant Tone Extension
4612  *
4613  * output parameters
4614  *
4615  * @param None
4616  *
4617  * @return @ref HCI_SUCCESS when success.
4618  * Otherwise:
4619  * HCI_ERROR_CODE_UNSUPPORTED_FEATURE_PARAM_VALUE
4620  * HCI_ERROR_CODE_CMD_DISALLOWED
4621  */
4622 hciStatus_t HCI_LE_SetDefaultPASTParamCmd( uint8_t mode,
4623  uint16_t skip,
4624  uint16_t syncTimeout,
4625  uint8_t cteType );
4626 #ifdef __cplusplus
4627 }
4628 #endif
4629 
4630 #endif /* HCI_H */
4631 
event_hdr_t hdr
OSAL Event header.
Definition: hci.h:1270
hciStatus_t HCI_EXT_PacketErrorRateCmd(uint16 connHandle, uint8 command)
uint8 BLEEventCode
BLE Event Code.
Definition: hci.h:1131
uint8 status
packet status (success or CRC error)
Definition: hci.h:1121
uint8 BLEEventCode
BLE Event Code.
Definition: hci.h:933
uint8 sampleCount
number of samples
Definition: hci.h:1123
event_hdr_t hdr
osal event header
Definition: hci.h:1112
uint8 status
status of event
Definition: hci.h:946
hciStatus_t HCI_LE_EnhancedCteTxTestCmd(uint8 txChan, uint8 payloadLen, uint8 payloadType, uint8 txPhy, uint8 cteLength, uint8 cteType, uint8 length, uint8 *pAntenna)
LE Extended CTE Connectionless IQ Report Event.
Definition: hci.h:1177
hciStatus_t HCI_EXT_SetQOSParameters(uint8 taskType, uint8 paramType, uint32 ParamVal, uint16 taskHandle)
This API is used to set the QOS Parameters according to the entered parameter type.
uint8 eventType
scan request event type
Definition: hci.h:899
event_hdr_t hdr
osal event header
Definition: hci.h:1001
event_hdr_t hdr
osal event header
Definition: hci.h:1216
uint16 * pNumCompletedPackets
pointer to the number of completed packets array
Definition: hci.h:977
hciStatus_t HCI_EXT_SetMaxDataLenCmd(uint16 txOctets, uint16 txTime, uint16 rxOctets, uint16 rxTime)
hciStatus_t HCI_EXT_SetPinOutputCmd(uint8 dio, uint8 value)
uint16 connHandle
connection handle
Definition: hci.h:1074
uint8 status
status of event
Definition: hci.h:934
hciStatus_t HCI_EXT_RssiMon_UnregCmd(uint8_t regHandle)
uint8 BLEEventCode
BLE Event Code.
Definition: hci.h:1231
uint8 status
status of event
Definition: hci.h:1063
uint8 phy
current phy
Definition: hci.h:1115
uint8 addrType
public or random address type
Definition: hci.h:878
uint8 pktType
packet type
Definition: hci.h:1271
hciStatus_t HCI_LE_SetExtAdvData(aeSetDataCmd_t *pCmdParams)
uint8 BLEEventCode
BLE Event Code.
Definition: hci.h:955
hciStatus_t HCI_EXT_SetVirtualAdvAddrCmd(uint8 advHandle, uint8 *bdAddr)
This API is used to set the advertiser&#39;s virtual public address.
uint8 clockAccuracy
connection clock accuracy
Definition: hci.h:861
uint16 rssi
current rssi
Definition: hci.h:1166
hciStatus_t HCI_LE_ReadAcceptListSizeCmd(void)
uint16 Interval_Min
minimum connection interval
Definition: hci.h:1052
hciStatus_t HCI_LE_SetDefaultPhyCmd(uint8 allPhys, uint8 txPhy, uint8 rxPhy)
HCI Packet event.
Definition: hci.h:1261
hciStatus_t HCI_EXT_SetExtScanChannels(uint8 extScanChannelsMap)
This API is used to set the scan channels mapping.
L2CAP data length exceed Event.
Definition: hci.h:1038
#define B_RANDOM_NUM_SIZE
BLE Random Number Size.
Definition: bcomdef.h:98
uint8 numHandles
number of handles
Definition: hci.h:975
uint8 * pReturnParam
pointer to the return parameter
Definition: hci.h:986
hciStatus_t HCI_LE_ReadRemoteUsedFeaturesCmd(uint16 connHandle)
LE CTE Connectionless IQ Report Event.
Definition: hci.h:1160
hciStatus_t HCI_LE_SetAddressResolutionEnableCmd(uint8 addrResolutionEnable)
event_hdr_t hdr
OSAL event header.
Definition: hci.h:1256
uint16 dataPktLen
data packet length
Definition: hci.h:1240
uint8 BLEEventCode
BLE Event Code.
Definition: hci.h:910
uint16 rssi
current rssi
Definition: hci.h:1117
Command Status Event.
Definition: hci.h:999
void * iqSamples
list of interleaved I/Q samples (list size is dataLen*2)
Definition: hci.h:1156
uint16 connHandle
connection handle
Definition: hci.h:1064
hciStatus_t HCI_EXT_CoexEnableCmd(uint8 enable)
hciStatus_t HCI_LE_TestEndCmd(void)
hciStatus_t HCI_LE_SetResolvablePrivateAddressTimeoutCmd(uint16 rpaTimeout)
event_hdr_t hdr
osal event header
Definition: hci.h:1230
uint8 sampleRate
sample rate (1/2/3/4 MHz)
Definition: hci.h:1192
hciStatus_t HCI_LE_LtkReqNegReplyCmd(uint16 connHandle)
Hardware Error Event.
Definition: hci.h:1008
hciStatus_t HCI_EXT_ModemTestTxCmd(uint8 cwMode, uint8 txChan)
hciStatus_t HCI_LE_TransmitterTestCmd(uint8 txChan, uint8 dataLen, uint8 pktPayload)
HCI Generic event hdr.
Definition: hci.h:1254
uint8 peerAddrType
peer address type
Definition: hci.h:856
uint16 connHandle
connection handle
Definition: hci.h:1133
uint8 BLEEventCode
BLE Event Code.
Definition: hci.h:1113
uint8 status
status of event
Definition: hci.h:1018
int8 txPower
Tx Power information.
Definition: hci.h:1219
event_hdr_t hdr
osal event header
Definition: hci.h:1094
hciStatus_t HCI_LE_RandCmd(void)
event_hdr_t hdr
osal event header
Definition: hci.h:1017
uint8 clockAccuracy
Peer Clock Accuracy.
Definition: hci.h:1210
LE Advertising Report Event.
Definition: hci.h:875
uint8 sampleCount
number of samples
Definition: hci.h:1172
uint8 dataChIndex
index of data channel
Definition: hci.h:1116
hciStatus_t HCI_EXT_ReadRandAddrCmd(void)
hciStatus_t HCI_LE_ReadRfPathCompCmd(void)
uint8 status
status of event
Definition: hci.h:1203
#define B_MAX_ADV_LEN
BLE Maximum Advertising Packet Length.
Definition: bcomdef.h:95
uint8 nextDataChan
next channel
Definition: hci.h:912
uint8 dataChIndex
index of data channel
Definition: hci.h:1145
event_hdr_t hdr
osal event header
Definition: hci.h:932
event_hdr_t hdr
osal event header
Definition: hci.h:1139
hciStatus_t HCI_LE_ReadResolvingListSizeCmd(void)
uint8 reason
Who trigger the event - local or remote.
Definition: hci.h:922
uint8 cteType
cte type
Definition: hci.h:1148
LE CTE Connection IQ Report Event.
Definition: hci.h:1110
LE Data Length Change Event.
Definition: hci.h:1070
event_hdr_t hdr
osal event header
Definition: hci.h:983
event_hdr_t hdr
OSAL event header.
Definition: hci.h:1263
hciStatus_t HCI_EXT_SetAdvSetRandAddrCmd(uint8 advHandle, uint8 *randAddr)
This API is used to set the random device address for the advertiser&#39;s address contained in the adver...
hciStatus_t HCI_SetEventMaskPage2Cmd(uint8 *pMask)
hciStatus_t HCI_LE_ReadLocalSupportedFeaturesCmd(void)
event_hdr_t hdr
osal event header
Definition: hci.h:835
hciStatus_t HCI_LE_RemoteConnParamReqReplyCmd(uint16 connHandle, uint16 connIntervalMin, uint16 connIntervalMax, uint16 connLatency, uint16 connTimeout, uint16 minLen, uint16 maxLen)
hciStatus_t HCI_LE_ReadAdvChanTxPowerCmd(void)
uint8 numDevices
number of discovered devices
Definition: hci.h:890
uint8 cteType
cte type
Definition: hci.h:1187
uint8 BLEEventCode
BLE Event Code.
Definition: hci.h:1202
uint16 syncHandle
sync handle in periodic adv
Definition: hci.h:1164
uint16 connectionHandle
connection handle
Definition: hci.h:838
uint16 connHandle
connection handle
Definition: hci.h:1272
hciStatus_t HCI_LE_ReadRemoteTransmitPowerLevelCmd(uint16_t connHandle, uint8_t txPhy)
uint8 BLEEventCode
BLE Event Code.
Definition: hci.h:1073
Definition: hci.h:1293
hciStatus_t HCI_CMD_Parser(uint8 *pData)
hciStatus_t HCI_EXT_EnablePTMCmd(void)
hciStatus_t HCI_LE_RemoveAcceptListCmd(uint8 addrType, uint8 *devAddr)
hciStatus_t HCI_LE_SetDataLenCmd(uint16 connHandle, uint16 txOctets, uint16 txTime)
uint8 sampleCtrl
sample control - default filtering or RAW_RF
Definition: hci.h:1194
hciStatus_t HCI_LE_EnhancedCteRxTestCmd(uint8 rxChan, uint8 rxPhy, uint8 modIndex, uint8 expectedCteLength, uint8 expectedCteType, uint8 slotDurations, uint8 length, uint8 *pAntenna)
LE Phy Update Complete Event.
Definition: hci.h:1059
uint16 connEvent
connection event
Definition: hci.h:1151
uint8 status
packet status (success or CRC error)
Definition: hci.h:1150
uint8 BLEEventCode
BLE Event Code.
Definition: hci.h:1049
hciStatus_t HCI_LE_EnhancedRxTestCmd(uint8 rxChan, uint8 rxPhy, uint8 modIndex)
uint8 rssiAntenna
antenna ID
Definition: hci.h:1118
uint8 dataStatus
Periodic data status.
Definition: hci.h:1222
uint8 BLEEventCode
BLE Event code.
Definition: hci.h:1095
hciStatus_t HCI_WriteAuthPayloadTimeoutCmd(uint16 connHandle, uint16 aptoValue)
event_hdr_t hdr
osal event header
Definition: hci.h:1130
uint16_t mSCA
Hop value for conn alg 1, integer range (5,16), can also be used to tell if using alg 2 by sending sp...
Definition: hci.h:1306
uint8 slotDuration
sampling slot 1us or 2us
Definition: hci.h:1169
hciStatus_t HCI_LE_GenerateDHKeyV2Cmd(uint8 *publicKey, uint8 keyType)
hciStatus_t HCI_LE_SetHostChanClassificationCmd(uint8 *chanMap)
uint8 BLEEventCode
BLE Event Code.
Definition: hci.h:1104
hciStatus_t HCI_LE_PAdvSyncTransferCmd(uint16_t connHandle, uint16_t serviceData, uint16_t syncHandle)
hciStatus_t HCI_EXT_SetHostConnChanClassificationCmd(uint8 *chanMap, uint16 connID)
union _hciEvt_BLEConnComplete_u_ hciEvt_BLEConnComplete_u
LE Connection Complete Event.
uint16 connInterval
connection interval
Definition: hci.h:842
hciStatus_t HCI_LE_LtkReqReplyCmd(uint16 connHandle, uint8 *ltk)
uint8_t BLEEventCode
BLE Event Code.
Definition: hci.h:1257
hciStatus_t HCI_EXT_RssiMon_GetConfigCmd(void)
hciStatus_t HCI_LE_PAdvSetInfoTransferCmd(uint16_t connHandle, uint16_t serviceData, uint8_t advHandle)
hciStatus_t HCI_EXT_RssiMon_RegCmd(uint16_t connHandle, int8_t lowRssiThresh, int8_t highRssiThresh)
hciStatus_t HCI_LE_SetTransmitPowerReportingEnableCmd(uint16_t connHandle, uint8_t localEnable, uint8_t remoteEnable)
uint16 Interval_Max
maximum connection interval
Definition: hci.h:1053
event_hdr_t hdr
osal event header
Definition: hci.h:954
uint8 length
length of parametric data, in bytes
Definition: hci.h:993
hciStatus_t HCI_EXT_NumComplPktsLimitCmd(uint8 limit, uint8 flushOnEvt)
hciStatus_t HCI_EXT_SendPowerControlRequestCmd(uint16_t connHandle, uint8_t txPhy, int8_t deltaPowerDb, uint8_t aprEnalbe)
uint16 connectionHandle
connection handle
Definition: hci.h:947
uint8 BLEEventCode
BLE Event Code.
Definition: hci.h:1062
uint16 maxRxTime
maximum receive time
Definition: hci.h:1078
event_hdr_t hdr
osal event header
Definition: hci.h:851
uint8 txPowerFlag
Tx Power at minimum or maximum level.
Definition: hci.h:925
hciStatus_t HCI_ReadRssiCmd(uint16 connHandle)
hciStatus_t HCI_EXT_SetTxPowerDbmCmd(int8 txPower, uint8 fraction)
uint8 status
status
Definition: hci.h:1096
uint16 connectionHandle
connection handle
Definition: hci.h:854
uint8 sampleSize
sample size (8 or 16 bit)
Definition: hci.h:1154
hciStatus_t HCI_LE_CreateConnCancelCmd(void)
uint8 rssiAntenna
antenna ID
Definition: hci.h:1186
event_hdr_t hdr
osal event header
Definition: hci.h:1033
uint16 cid
L2CAP channel ID.
Definition: hci.h:1042
uint16 connTimeout
connection supervision timeout
Definition: hci.h:938
event_hdr_t hdr
osal event header
Definition: hci.h:1162
uint8 encEnable
encryption enabled or not
Definition: hci.h:958
uint8 eventIndex
event number
Definition: hci.h:1142
hciStatus_t HCI_EXT_SetPeripheralLatencyOverrideCmd(uint8 control)
uint16 Latency
peripheral latency
Definition: hci.h:1054
uint8 txPhy
On which phy the report is trigger.
Definition: hci.h:923
hciStatus_t HCI_LE_ReadSupportedStatesCmd(void)
uint16 connLatency
connection latency
Definition: hci.h:859
uint8 slotDuration
sampling slot 1us or 2us
Definition: hci.h:1149
uint8 eventIndex
event number
Definition: hci.h:1182
uint8 linkType
synchronous or asynchronous buffer overflow
Definition: hci.h:1027
hciStatus_t HCI_LE_ReadLocalP256PublicKeyCmd(void)
Vendor Specific Command Complete Event.
Definition: hci.h:990
hciStatus_t HCI_EXT_DecryptCmd(uint8 *key, uint8 *encText)
hciStatus_t HCI_EXT_SetDtmTxPktCntCmd(uint16 txPktCnt)
Data structure for HCI Command Complete Event Return Parameter.
Definition: hci.h:1237
uint16 numMMissedEvents
number missed connection events
Definition: hci.h:1318
hciStatus_t HCI_EXT_GetRxStatisticsCmd(uint16 connHandle, uint8 command)
This API is used to get RX statistics.
hciStatus_t HCI_LE_SetAdvParamCmd(uint16 advIntervalMin, uint16 advIntervalMax, uint8 advType, uint8 ownAddrType, uint8 directAddrType, uint8 *directAddr, uint8 advChannelMap, uint8 advFilterPolicy)
uint8 slotDuration
sampling slot 1us or 2us
Definition: hci.h:1120
void * iqSamples
list of interleaved I/Q samples (list size is dataLen*2)
Definition: hci.h:1195
uint16 totalDataLen
samples data length includes in all next events
Definition: hci.h:1181
hciStatus_t HCI_LE_EnhancedTxTestCmd(uint8 txChan, uint8 payloadLen, uint8 payloadType, uint8 txPhy)
uint8_t nextChan
central sleep clock accuracy code mapped based on BLE spec
Definition: hci.h:1307
hciStatus_t HCI_SetEventMaskCmd(uint8 *pMask)
uint8 clockAccuracy
connection clock accuracy
Definition: hci.h:845
Disconnection Complete Event.
Definition: hci.h:1015
hciStatus_t HCI_EXT_GetActiveConnInfoCmd(uint8 connId, hciActiveConnInfo_t *activeConnInfo)
This API is used to get connection related information required to follow the target connection with ...
hciStatus_t HCI_LE_ReadSuggestedDefaultDataLenCmd(void)
hciStatus_t HCI_EXT_ResetSystemCmd(uint8 mode)
Authenticated Payload Timeout Expired Event.
Definition: hci.h:1031
hciStatus_t HCI_EXT_EnhancedModemTestTxCmd(uint8 cwMode, uint8 rfPhy, uint8 rfChan)
uint8 sid
Peer SID.
Definition: hci.h:1205
uint16 periodicInterval
Periodic interval.
Definition: hci.h:1209
event_hdr_t hdr
osal event header
Definition: hci.h:1247
uint16 connHandle
connection handle
Definition: hci.h:1051
uint8 sampleSize
sample size (8 or 16 bit)
Definition: hci.h:1193
hciStatus_t HCI_LE_SetExtScanRspData(aeSetDataCmd_t *pCmdParams)
hciStatus_t HCI_LE_ClearAcceptListCmd(void)
uint16 maxTxTime
maximum transmission time
Definition: hci.h:1076
event_hdr_t hdr
osal event header
Definition: hci.h:1061
hciStatus_t HCI_LE_SetEventMaskCmd(uint8 *pEventMask)
int8 rssi
report RSSI
Definition: hci.h:882
uint16 connLatency
connection latency
Definition: hci.h:937
event_hdr_t hdr
osal event header
Definition: hci.h:1103
uint8 BLEEventCode
BLE Event Code.
Definition: hci.h:889
hciStatus_t HCI_EXT_SetQOSDefaultParameters(uint32 paramDefaultVal, uint8 paramType, uint8 taskType)
This API is used to set the Default QOS Parameters Values.
hciStatus_t HCI_LE_EnhancedReadTransmitPowerLevelCmd(uint16_t connHandle, uint8_t txPhy)
uint8 * pData
data
Definition: hci.h:1275
hciStatus_t HCI_EXT_SetRxGainCmd(uint8 rxGain)
uint8 reason
reason
Definition: hci.h:957
int8 rssi
report RSSI
Definition: hci.h:903
Periodic Advertising Sync Lost Event.
Definition: hci.h:1228
uint8 BLEEventCode
BLE Event Code.
Definition: hci.h:965
event_hdr_t hdr
osal event header
Definition: hci.h:1048
uint16 cmdOpcode
command opcode
Definition: hci.h:1004
uint8 chSelAlgo
channel selection algorithm
Definition: hci.h:1250
Definition: hci.h:916
LE CTE Request Failed Event.
Definition: hci.h:1128
hciStatus_t HCI_ReadRemoteVersionInfoCmd(uint16 connHandle)
uint8 * data
Periodic data received from peer.
Definition: hci.h:1224
uint8 channelIndex
index of channel
Definition: hci.h:1184
hciStatus_t HCI_EXT_EndModemTestCmd(void)
hciStatus_t HCI_LE_ReadTxPowerCmd(void)
hciStatus_t HCI_LE_EncryptCmd(uint8 *key, uint8 *plainText)
hciStatus_t HCI_ReadLocalVersionInfoCmd(void)
hciStatus_t HCI_LE_ReadBufSizeCmd(void)
event_hdr_t hdr
osal event header
Definition: hci.h:1201
hciStatus_t HCI_LE_ReadLocalResolvableAddressCmd(uint8 localIdAddrType, uint8 *localIdAddr)
uint8 BLEEventCode
BLE Event Code.
Definition: hci.h:1140
LE Channel Map Update Event.
Definition: hci.h:1082
hciStatus_t HCI_EXT_ModemHopTestTxCmd(void)
Command Complete Event.
Definition: hci.h:981
uint8 rxPhy
RX PHY.
Definition: hci.h:1066
uint16 syncHandle
sync handle
Definition: hci.h:1218
hciStatus_t HCI_EXT_GetCoexStatisticsCmd(uint8 command)
This API is used to get COEX statistics.
hciEvt_DevInfo_t * devInfo
pointer to the array of devInfo
Definition: hci.h:891
LE Channel Selection Algorithm Event.
Definition: hci.h:1245
uint16 connHandle
connection handle
Definition: hci.h:956
HCI Data Packet.
Definition: hci.h:1268
uint8 status
status
Definition: hci.h:1105
uint8 status
status of event
Definition: hci.h:837
uint16 connTimeout
connection supervision timeout
Definition: hci.h:860
uint16 Timeout
supervision timeout
Definition: hci.h:1055
LE Generate DHKey Complete Event.
Definition: hci.h:1101
uint16 connHandle
connection handle
Definition: hci.h:1041
hciStatus_t HCI_EXT_EnhancedModemHopTestTxCmd(uint8 payloadLen, uint8 payloadType, uint8 rfPhy)
hciStatus_t HCI_LE_SetDefaultPASTParamCmd(uint8_t mode, uint16_t skip, uint16_t syncTimeout, uint8_t cteType)
uint16 * pConnectionHandle
pointer to the connection handle array
Definition: hci.h:976
uint16 eventCounter
periodic adv event counter
Definition: hci.h:1190
LE Remote Connection Parameter Request Event.
Definition: hci.h:1046
uint8 addrType
peer device address type
Definition: hci.h:1298
hciStatus_t HCI_EXT_PERbyChanCmd(uint16 connHandle, perByChan_t *perByChan)
uint8 status
packet status (success or CRC error)
Definition: hci.h:1189
uint16 connEvent
connection event
Definition: hci.h:1122
uint16 connLatency
connection latency
Definition: hci.h:843
uint8 status
status of event
Definition: hci.h:1050
hciStatus_t HCI_ReadLocalSupportedCommandsCmd(void)
uint8 BLEEventCode
BLE Event Code.
Definition: hci.h:898
event_hdr_t hdr
osal event header
Definition: hci.h:1072
hciStatus_t HCI_EXT_ModemTestRxCmd(uint8 rxChan)
event_hdr_t hdr
osal event header
Definition: hci.h:1010
uint8 BLEEventCode
BLE Event Code.
Definition: hci.h:919
hciStatus_t HCI_EXT_SetDefaultAntenna(uint8 index)
uint16 connInterval
connection interval
Definition: hci.h:858
uint8 bleChan
BLE channel.
Definition: hci.h:902
uint8 eventType
advertisement or scan response event type
Definition: hci.h:877
hciEvt_BLEEnhConnComplete_t enhEvt
enhanced connection complete event
Definition: hci.h:871
event_hdr_t hdr
osal event header
Definition: hci.h:1084
int8 rssi
RSSI of the received packet.
Definition: hci.h:1220
int8 * iqSamples
list of interleaved I/Q samples
Definition: hci.h:1173
uint16 connHandle
connection handle
Definition: hci.h:1143
hciStatus_t HCI_LE_SetAdvEnableCmd(uint8 advEnable)
event_hdr_t hdr
osal event header
Definition: hci.h:888
hciStatus_t HCI_LE_ClearResolvingListCmd(void)
hciStatus_t HCI_EXT_OnePktPerEvtCmd(uint8 control)
hciStatus_t HCI_EXT_SetLocationingAccuracyCmd(uint16 handle, uint8 sampleRate1M, uint8 sampleSize1M, uint8 sampleRate2M, uint8 sampleSize2M, uint8 sampleCtrl)
uint16 connTimeout
connection supervision timeout
Definition: hci.h:844
Type definitions and macros for BLE stack.
VS LE Scan Request Report Event.
Definition: hci.h:895
hciStatus_t HCI_EXT_SetFastTxResponseTimeCmd(uint8 control)
LE Encryption Change Event.
Definition: hci.h:952
hciStatus_t HCI_EXT_BuildRevisionCmd(uint8 mode, uint16 userRevNum)
hciStatus_t HCI_LE_ReadPhyCmd(uint16 connHandle)
uint16 syncHandle
sync handle
Definition: hci.h:1204
hciStatus_t HCI_LE_SetScanRspDataCmd(uint8 dataLen, uint8 *pData)
uint16 connInterval
connection interval
Definition: hci.h:936
uint8 txPowerLevel
Amount of power transmitting.
Definition: hci.h:924
uint16 numCrcErr
number rx packets with CRC error
Definition: hci.h:1316
uint8 phy
current phy
Definition: hci.h:1144
uint8 * pEventParam
event parameters
Definition: hci.h:995
uint8 channelIndex
index of channel
Definition: hci.h:1165
hciEvt_BLEConnComplete_t legEvt
connection complete event
Definition: hci.h:870
hciStatus_t HCI_LE_AddAcceptListCmd(uint8 addrType, uint8 *devAddr)
hciStatus_t HCI_ReadTransmitPowerLevelCmd(uint16 connHandle, uint8 txPwrType)
uint32_t accessAddr
Definition: hci.h:1303
uint8 cmdStatus
command status
Definition: hci.h:1002
event_hdr_t hdr
osal event header
Definition: hci.h:1026
uint8 connId
device connection handle
Definition: hci.h:1295
hciStatus_t HCI_EXT_SetMaxDtmTxPowerDbmCmd(int8 txPowerDbm, uint8 fraction)
event_hdr_t hdr
osal event header
Definition: hci.h:897
LE Enhanced Connection Complete Event.
Definition: hci.h:849
hciStatus_t HCI_LE_SetPhyCmd(uint16 connHandle, uint8 allPhys, uint8 txPhy, uint8 rxPhy, uint16 phyOpts)
uint16 connHandle
connection handle
Definition: hci.h:1034
uint16 cmdOpcode
command opcode
Definition: hci.h:985
uint8 BLEEventCode
BLE Event Code.
Definition: hci.h:836
Number of Completed Packets Event.
Definition: hci.h:972
hciStatus_t HCI_LE_ReadPeerResolvableAddressCmd(uint8 peerIdAddrType, uint8 *peerIdAddr)
Generic Event Header.
Definition: bcomdef.h:223
hciStatus_t HCI_EXT_RssiMon_GetRssiStatCmd(uint16_t connHandle)
hciStatus_t HCI_LE_SetPASTParamCmd(uint16_t connHandle, uint8_t mode, uint16_t skip, uint16_t syncTimeout, uint8_t cteType)
uint8 cteType
CTE type received.
Definition: hci.h:1221
hciStatus_t HCI_EXT_SetLocalSupportedFeaturesCmd(uint8 *localFeatures)
hciStatus_t HCI_LE_ReceiverTestCmd(uint8 rxChan)
uint8 BLEEventCode
BLE Event Code.
Definition: hci.h:852
event_hdr_t hdr
osal event header
Definition: hci.h:964
uint8 txPhy
TX PHY.
Definition: hci.h:1065
hciStatus_t HCI_LE_RemoveDeviceFromResolvingListCmd(uint8 peerIdAddrType, uint8 *peerIdAddr)
uint8 numDataPkts
number of data packets
Definition: hci.h:1241
uint16 connHandle
Connection handle.
Definition: hci.h:921
uint16 connHandle
connection handle
Definition: hci.h:911
uint16 rssi
current rssi
Definition: hci.h:1185
LE Periodic Advertising Report event.
Definition: hci.h:1214
hciStatus_t HCI_EXT_EnhancedModemTestRxCmd(uint8 rfPhy, uint8 rfChan)
event_hdr_t hdr
osal event header
Definition: hci.h:909
uint16 pktLen
packet length
Definition: hci.h:1274
hciStatus_t HCI_EXT_SetBDADDRCmd(uint8 *bdAddr)
uint8 peerAddrType
peer address type
Definition: hci.h:840
uint16_t connInterval
return error code if failed to get conn info
Definition: hci.h:1304
uint16 connHandle
connection handle
Definition: hci.h:1086
uint8 BLEEventCode
BLE Event Code.
Definition: hci.h:1217
hciStatus_t HCI_LE_StartEncyptCmd(uint16 connHandle, uint8 *random, uint8 *encDiv, uint8 *ltk)
Definition: hci.h:1313
uint8 phy
Peer PHY.
Definition: hci.h:1208
uint16 cmdOpcode
command opcode
Definition: hci.h:994
uint8 reason
reason
Definition: hci.h:1020
uint8 role
device connection role
Definition: hci.h:1296
uint8 numHciCmdPkt
number of HCI Command Packet
Definition: hci.h:984
LE Extended CTE Connection IQ Report Event.
Definition: hci.h:1137
uint8 hardwareCode
hardware error code
Definition: hci.h:1011
#define B_ADDR_LEN
Default Public and Random Address Length.
Definition: bcomdef.h:73
Data Buffer Overflow Event.
Definition: hci.h:1024
uint8 role
role of connection
Definition: hci.h:855
LE Connection Complete Event.
Definition: hci.h:833
uint8 numHciCmdPkt
number of HCI command packets
Definition: hci.h:1003
uint8 dataLen
Periodic data length.
Definition: hci.h:1223
uint16 encryptedDiversifier
encrypted diversifier
Definition: hci.h:968
int8 * iqSamples
list of interleaved I/Q samples
Definition: hci.h:1124
uint8 slotDuration
sampling slot 1us or 2us
Definition: hci.h:1188
hciStatus_t HCI_LE_AddDeviceToResolvingListCmd(uint8 peerIdAddrType, uint8 *peerIdAddr, uint8 *peerIRK, uint8 *localIRK)
LE Read Remote Used Features Complete Event.
Definition: hci.h:942
hciStatus_t HCI_LE_SetAdvDataCmd(uint8 dataLen, uint8 *pData)
uint16 eventCounter
periodic adv event counter
Definition: hci.h:1171
uint8 peerAddrType
peer address type
Definition: hci.h:900
uint16 syncHandle
sync handle
Definition: hci.h:1232
uint16 numPkts
total number of rx packets
Definition: hci.h:1315
hciStatus_t HCI_LE_SetRandomAddressCmd(uint8 *pRandAddr)
uint16 totalDataLen
samples data length includes in all next events
Definition: hci.h:1141
event_hdr_t hdr
Osal event header.
Definition: hci.h:918
event_hdr_t hdr
osal event header
Definition: hci.h:1179
Definition: hci.h:1301
hciStatus_t HCI_LE_SetScanParamCmd(uint8 scanType, uint16 scanInterval, uint16 scanWindow, uint8 ownAddrType, uint8 filterPolicy)
uint8 BLEEventCode
BLE Event Code.
Definition: hci.h:1180
VS LE Channel Map Update Event.
Definition: hci.h:907
hciStatus_t HCI_ReadLocalSupportedFeaturesCmd(void)
uint8 sampleRate
sample rate (1/2/3/4 MHz)
Definition: hci.h:1153
hciStatus_t HCI_LE_ReadChannelMapCmd(uint16 connHandle)
uint16 connHandle
connection handle
Definition: hci.h:1249
uint8 status
status of event
Definition: hci.h:1239
hciStatus_t HCI_EXT_RssiMon_SetConfigCmd(int8_t incomeRssiWeight, uint8_t minRssiSamples)
LE Periodic Advertising Sync Established event.
Definition: hci.h:1199
hciStatus_t HCI_LE_ReadMaxDataLenCmd(void)
hciStatus_t HCI_EXT_SetSCACmd(uint16 scaInPPM)
uint16 connHandle
connection handle
Definition: hci.h:1114
uint8 cteType
cte type
Definition: hci.h:1119
uint16 maxTxOctets
maximum transmission bytes
Definition: hci.h:1075
uint8 addrType
Peer address type.
Definition: hci.h:1206
event_hdr_t hdr
osal event header
Definition: hci.h:944
uint8 BLEEventCode
BLE Event Code.
Definition: hci.h:1085
uint16 rssi
current rssi
Definition: hci.h:1146
hciStatus_t HCI_ReadBDADDRCmd(void)
uint8 status
packet status (success or CRC error)
Definition: hci.h:1170
uint8 nextDataChan
the next channel we will be using
Definition: hci.h:1087
uint8 rssiAntenna
antenna ID
Definition: hci.h:1147
hciStatus_t HCI_HostNumCompletedPktCmd(uint8 numHandles, uint16 *connHandles, uint16 *numCompletedPkts)
hciStatus_t HCI_LE_GenerateDHKeyCmd(uint8 *publicKey)
hciStatus_t HCI_EXT_GetTxStatisticsCmd(uint16 connHandle, uint8 command)
This API is used to get TX statistics.
hciStatus_t HCI_ReadAuthPayloadTimeoutCmd(uint16 connHandle, uint16 *aptoValue)
event_hdr_t hdr
osal event header
Definition: hci.h:974
LE Connection Complete Event.
Definition: hci.h:868
uint8_t hopValue
connection interval time, range (7.5ms, 4s), 625us increments
Definition: hci.h:1305
uint8 BLEEventCode
BLE Event Code.
Definition: hci.h:1163
LE Connection Update Complete Event.
Definition: hci.h:930
uint8 BLEEventCode
BLE Event Code.
Definition: hci.h:1248
uint8 delta
The change of the Tx Power from previous power level.
Definition: hci.h:926
uint8 status
status of event
Definition: hci.h:853
hciStatus_t HCI_LE_WriteSuggestedDefaultDataLenCmd(uint16 txOctets, uint16 txTime)
LE Read P256 Public Key Complete Event.
Definition: hci.h:1092
uint8_t ownAddrType
connection CRC initialization value (24 bits)
Definition: hci.h:1310
hciStatus_t HCI_LE_SetScanEnableCmd(uint8 scanEnable, uint8 filterDuplicates)
uint8 dataLen
samples data length
Definition: hci.h:1191
uint8 dataLen
length of report data
Definition: hci.h:880
uint8 dataLen
samples data length
Definition: hci.h:1152
uint8 status
status
Definition: hci.h:1132
uint8 * pData
data
Definition: hci.h:1264
uint8 cteType
cte type
Definition: hci.h:1168
LE Advertising Packet Report Event.
Definition: hci.h:886
uint8 rssiAntenna
antenna ID
Definition: hci.h:1167
event_hdr_t hdr
osal event header
Definition: hci.h:1040
uint16 syncHandle
sync handle in periodic adv
Definition: hci.h:1183
hciStatus_t HCI_EXT_DisconnectImmedCmd(uint16 connHandle)
uint16 connHandle
connection handle
Definition: hci.h:1019
uint16 numEvents
number of connection events
Definition: hci.h:1317
uint8 BLEEventCode
BLE Event Code.
Definition: hci.h:945
hciStatus_t HCI_LE_RemoteConnParamReqNegReplyCmd(uint16 connHandle, uint8 reason)
hciStatus_t HCI_LE_WriteRfPathCompCmd(int16 txPathParam, int16 rxPathParam)
hciStatus_t HCI_LE_ConnUpdateCmd(uint16 connHandle, uint16 connIntervalMin, uint16 connIntervalMax, uint16 connLatency, uint16 connTimeout, uint16 minLen, uint16 maxLen)
hciStatus_t HCI_LE_SetAdvStatus(aeEnableCmd_t *pCmdParams)
uint8 pbFlag
flag
Definition: hci.h:1273
uint16 maxRxOctets
maximum receive bytes
Definition: hci.h:1077
uint8 role
role of connection
Definition: hci.h:839
hciStatus_t HCI_ResetCmd(void)
event_hdr_t hdr
osal event header
Definition: hci.h:992
hciStatus_t HCI_EXT_SetHostDefChanClassificationCmd(uint8 *chanMap)
hciStatus_t HCI_LE_SetPrivacyModeCmd(uint8 peerIdAddrType, uint8 *peerIdAddr, uint8 privacyMode)
uint16 connectionHandle
connection handle
Definition: hci.h:935
uint8 status
status of event
Definition: hci.h:920
LE Long Term Key Requested Event.
Definition: hci.h:962
uint8 sampleCtrl
sample control - default filtering or RAW_RF
Definition: hci.h:1155
void HCI_GetLocalSupportedCommands(uint8_t *pSupportedCmdBuf)
This function populates the provided buffer with the supported HCI commands.
uint16 connHandle
connection handle
Definition: hci.h:966
hciStatus_t HCI_EXT_GetConnInfoCmd(uint8 *numAllocConns, uint8 *numActiveConns, hciConnInfo_t *activeConnInfo)
© Copyright 1995-2026, Texas Instruments Incorporated. All rights reserved.
Trademarks | Privacy policy | Terms of use | Terms of sale