TI BLE5-Stack API Documentation  9.14.00
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  uint8 status;
1087  uint8 p256Key[LL_SC_P256_KEY_LEN];
1089 
1091 typedef struct
1092 {
1095  uint8 status;
1096  uint8 dhKey[LL_SC_DHKEY_LEN];
1098 
1100 typedef struct
1101 {
1104  uint16 connHandle;
1105  uint8 phy;
1106  uint8 dataChIndex;
1107  uint16 rssi;
1108  uint8 rssiAntenna;
1109  uint8 cteType;
1111  uint8 status;
1112  uint16 connEvent;
1113  uint8 sampleCount;
1114  int8 *iqSamples;
1116 
1118 typedef struct
1119 {
1122  uint8 status;
1123  uint16 connHandle;
1125 
1127 typedef struct
1128 {
1131  uint16 totalDataLen;
1132  uint8 eventIndex;
1133  uint16 connHandle;
1134  uint8 phy;
1135  uint8 dataChIndex;
1136  uint16 rssi;
1137  uint8 rssiAntenna;
1138  uint8 cteType;
1140  uint8 status;
1141  uint16 connEvent;
1142  uint8 dataLen;
1143  uint8 sampleRate;
1144  uint8 sampleSize;
1145  uint8 sampleCtrl;
1146  void *iqSamples;
1148 
1150 typedef struct
1151 {
1154  uint16 syncHandle;
1156  uint16 rssi;
1157  uint8 rssiAntenna;
1158  uint8 cteType;
1160  uint8 status;
1161  uint16 eventCounter;
1162  uint8 sampleCount;
1163  int8 *iqSamples;
1165 
1167 typedef struct
1168 {
1171  uint16 totalDataLen;
1172  uint8 eventIndex;
1173  uint16 syncHandle;
1175  uint16 rssi;
1176  uint8 rssiAntenna;
1177  uint8 cteType;
1179  uint8 status;
1180  uint16 eventCounter;
1181  uint8 dataLen;
1182  uint8 sampleRate;
1183  uint8 sampleSize;
1184  uint8 sampleCtrl;
1185  void *iqSamples;
1187 
1189 typedef struct
1190 {
1193  uint8 status;
1194  uint16 syncHandle;
1195  uint8 sid;
1196  uint8 addrType;
1197  uint8 address[B_ADDR_LEN];
1198  uint8 phy;
1202 
1204 typedef struct
1205 {
1208  uint16 syncHandle;
1209  int8 txPower;
1210  int8 rssi;
1211  uint8 cteType;
1212  uint8 dataStatus;
1213  uint8 dataLen;
1214  uint8 *data;
1216 
1218 typedef struct
1219 {
1222  uint16 syncHandle;
1224 
1225 
1227 typedef struct
1228 {
1229  uint8 status;
1230  uint16 dataPktLen;
1231  uint8 numDataPkts;
1233 
1235 typedef struct
1236 {
1239  uint16 connHandle;
1240  uint8 chSelAlgo;
1242 
1244 typedef struct
1245 {
1247  uint8_t BLEEventCode;
1248 } hciEvtHdr_t;
1249 
1251 typedef struct
1252 {
1254  uint8 *pData;
1255 } hciPacket_t;
1256 
1258 typedef struct
1259 {
1261  uint8 pktType;
1262  uint16 connHandle;
1263  uint8 pbFlag;
1264  uint16 pktLen;
1265  uint8 *pData;
1266 } hciDataPacket_t;
1267 
1269 
1270 // OSAL HCI_DATA_EVENT message format. This message is used to forward incoming
1271 // data messages up to an application
1272 typedef struct
1273 {
1274  event_hdr_t hdr;
1275  uint16 connHandle;
1276  uint8 pbFlag;
1277  uint16 len;
1278  uint8 *pData;
1279 } hciDataEvent_t;
1280 
1282 
1283 PACKED_TYPEDEF_STRUCT
1284 {
1285  uint8 connId;
1286  uint8 role;
1287  uint8 addr[LL_DEVICE_ADDR_LEN];
1288  uint8 addrType;
1289 } hciConnInfo_t;
1290 
1291 PACKED_TYPEDEF_STRUCT
1292 {
1293  uint32_t accessAddr;
1294  uint16_t connInterval;
1295  uint8_t hopValue;
1296  uint16_t mSCA;
1297  uint8_t nextChan;
1298  uint8_t chanMap[LL_NUM_BYTES_FOR_CHAN_MAP];
1299  uint8_t crcInit[LL_PKT_CRC_LEN];
1300  uint8_t ownAddrType;
1302 
1303 PACKED_TYPEDEF_STRUCT
1304 {
1305  uint16 numPkts;
1306  uint16 numCrcErr;
1307  uint16 numEvents;
1309 } hciPER_t;
1310 
1313 
1325 extern void *HCI_bm_alloc( uint16 size );
1326 
1337 extern void HCI_bm_free( uint8* pBuf );
1338 
1352 extern uint8 HCI_ValidConnTimeParams( uint16 connIntervalMin,
1353  uint16 connIntervalMax,
1354  uint16 connLatency,
1355  uint16 connTimeout );
1356 
1362 extern void HCI_GAPTaskRegister( uint8 taskID );
1363 
1369 extern void HCI_L2CAPTaskRegister( uint8 taskID );
1370 
1376 extern void HCI_SMPTaskRegister( uint8 taskID );
1377 
1383 extern void HCI_ExtTaskRegister( uint8 taskID );
1384 
1409 extern hciStatus_t HCI_SendDataPkt( uint16 connHandle,
1410  uint8 pbFlag,
1411  uint16 pktLen,
1412  uint8 *pData );
1413 
1429 extern hciStatus_t HCI_DisconnectCmd( uint16 connHandle,
1430  uint8 reason );
1431 
1433 
1451 extern hciStatus_t HCI_ReadRemoteVersionInfoCmd( uint16 connHandle );
1452 
1453 
1467 extern hciStatus_t HCI_SetEventMaskCmd( uint8 *pMask );
1468 
1469 
1483 extern hciStatus_t HCI_SetEventMaskPage2Cmd( uint8 *pMask );
1484 
1493 extern hciStatus_t HCI_ResetCmd( void );
1494 
1506 extern hciStatus_t HCI_ReadTransmitPowerLevelCmd( uint16 connHandle,
1507  uint8 txPwrType );
1508 
1510 
1524 extern hciStatus_t HCI_SetControllerToHostFlowCtrlCmd( uint8 flowControlEnable );
1525 
1545 extern hciStatus_t HCI_HostBufferSizeCmd( uint16 hostAclPktLen,
1546  uint8 hostSyncPktLen,
1547  uint16 hostTotalNumAclPkts,
1548  uint16 hostTotalNumSyncPkts );
1549 
1551 
1580 extern hciStatus_t HCI_HostNumCompletedPktCmd( uint8 numHandles,
1581  uint16 *connHandles,
1582  uint16 *numCompletedPkts );
1583 
1595 extern hciStatus_t HCI_ReadAuthPayloadTimeoutCmd( uint16 connHandle,
1596  uint16 *aptoValue );
1597 
1609 extern hciStatus_t HCI_WriteAuthPayloadTimeoutCmd( uint16 connHandle,
1610  uint16 aptoValue );
1611 
1620 extern hciStatus_t HCI_ReadLocalVersionInfoCmd( void );
1621 
1630 extern hciStatus_t HCI_ReadLocalSupportedCommandsCmd( void );
1631 
1640 extern hciStatus_t HCI_ReadLocalSupportedFeaturesCmd( void );
1641 
1653 void HCI_GetLocalSupportedCommands(uint8_t* pSupportedCmdBuf);
1654 
1663 extern hciStatus_t HCI_ReadBDADDRCmd( void );
1664 
1681 extern hciStatus_t HCI_ReadRssiCmd( uint16 connHandle );
1682 
1696 extern hciStatus_t HCI_LE_SetEventMaskCmd( uint8 *pEventMask );
1697 
1706 extern hciStatus_t HCI_LE_ReadBufSizeCmd( void );
1707 
1717 extern hciStatus_t HCI_LE_ReadLocalSupportedFeaturesCmd( void );
1718 
1730 extern hciStatus_t HCI_LE_SetRandomAddressCmd( uint8 *pRandAddr );
1731 
1749 extern hciStatus_t HCI_LE_SetAdvParamCmd( uint16 advIntervalMin,
1750  uint16 advIntervalMax,
1751  uint8 advType,
1752  uint8 ownAddrType,
1753  uint8 directAddrType,
1754  uint8 *directAddr,
1755  uint8 advChannelMap,
1756  uint8 advFilterPolicy );
1757 
1769 extern hciStatus_t HCI_LE_SetAdvDataCmd( uint8 dataLen,
1770  uint8 *pData );
1783 hciStatus_t HCI_LE_SetExtAdvData( aeSetDataCmd_t *pCmdParams );
1784 
1797 hciStatus_t HCI_LE_SetExtScanRspData( aeSetDataCmd_t *pCmdParams );
1798 
1812 hciStatus_t HCI_LE_SetAdvStatus( aeEnableCmd_t *pCmdParams );
1813 
1825 extern hciStatus_t HCI_LE_SetScanRspDataCmd( uint8 dataLen,
1826  uint8 *pData );
1827 
1838 extern hciStatus_t HCI_LE_SetAdvEnableCmd( uint8 advEnable );
1839 
1848 extern hciStatus_t HCI_LE_ReadAdvChanTxPowerCmd( void );
1849 
1866 extern hciStatus_t HCI_LE_SetScanParamCmd( uint8 scanType,
1867  uint16 scanInterval,
1868  uint16 scanWindow,
1869  uint8 ownAddrType,
1870  uint8 filterPolicy );
1871 
1884 extern hciStatus_t HCI_LE_SetScanEnableCmd( uint8 scanEnable,
1885  uint8 filterDuplicates );
1886 
1895 extern hciStatus_t HCI_LE_CreateConnCancelCmd( void );
1896 
1905 extern hciStatus_t HCI_LE_ReadAcceptListSizeCmd( void );
1906 
1907 
1916 extern hciStatus_t HCI_LE_ClearAcceptListCmd( void );
1917 
1918 
1930 extern hciStatus_t HCI_LE_AddAcceptListCmd( uint8 addrType,
1931  uint8 *devAddr );
1932 
1933 
1945 extern hciStatus_t HCI_LE_RemoveAcceptListCmd( uint8 addrType,
1946  uint8 *devAddr );
1947 
1965 extern hciStatus_t HCI_LE_ConnUpdateCmd( uint16 connHandle,
1966  uint16 connIntervalMin,
1967  uint16 connIntervalMax,
1968  uint16 connLatency,
1969  uint16 connTimeout,
1970  uint16 minLen,
1971  uint16 maxLen );
1972 
1984 extern hciStatus_t HCI_LE_SetHostChanClassificationCmd( uint8 *chanMap );
1985 
1996 extern hciStatus_t HCI_EXT_SetHostDefChanClassificationCmd( uint8 *chanMap );
1997 
2009 extern hciStatus_t HCI_EXT_SetHostConnChanClassificationCmd( uint8 *chanMap , uint16 connID );
2010 
2022 extern hciStatus_t HCI_LE_ReadChannelMapCmd( uint16 connHandle );
2023 
2036 extern hciStatus_t HCI_LE_ReadRemoteUsedFeaturesCmd( uint16 connHandle );
2037 
2058 extern hciStatus_t HCI_LE_EncryptCmd( uint8 *key,
2059  uint8 *plainText );
2060 
2083 extern hciStatus_t HCI_LE_RandCmd( void );
2084 
2100 extern hciStatus_t HCI_LE_StartEncyptCmd( uint16 connHandle,
2101  uint8 *random,
2102  uint8 *encDiv,
2103  uint8 *ltk );
2104 
2116 extern hciStatus_t HCI_LE_LtkReqReplyCmd( uint16 connHandle,
2117  uint8 *ltk );
2118 
2119 
2130 extern hciStatus_t HCI_LE_LtkReqNegReplyCmd( uint16 connHandle );
2131 
2140 extern hciStatus_t HCI_LE_ReadSupportedStatesCmd( void );
2141 
2154 extern hciStatus_t HCI_LE_ReceiverTestCmd( uint8 rxChan );
2155 
2172 extern hciStatus_t HCI_LE_TransmitterTestCmd( uint8 txChan,
2173  uint8 dataLen,
2174  uint8 pktPayload );
2175 
2186 extern hciStatus_t HCI_LE_TestEndCmd( void );
2187 
2188 // V4.1
2189 
2211 extern hciStatus_t HCI_LE_RemoteConnParamReqReplyCmd( uint16 connHandle,
2212  uint16 connIntervalMin,
2213  uint16 connIntervalMax,
2214  uint16 connLatency,
2215  uint16 connTimeout,
2216  uint16 minLen,
2217  uint16 maxLen );
2218 
2235 extern hciStatus_t HCI_LE_RemoteConnParamReqNegReplyCmd( uint16 connHandle,
2236  uint8 reason );
2237 
2238 // V4.2 Extended Data Length
2239 
2255 extern hciStatus_t HCI_LE_SetDataLenCmd( uint16 connHandle,
2256  uint16 txOctets,
2257  uint16 txTime );
2258 
2270 extern hciStatus_t HCI_LE_ReadSuggestedDefaultDataLenCmd( void );
2271 
2287 extern hciStatus_t HCI_LE_WriteSuggestedDefaultDataLenCmd( uint16 txOctets,
2288  uint16 txTime );
2289 
2301 extern hciStatus_t HCI_LE_ReadMaxDataLenCmd( void );
2302 
2303 // V4.2 Privacy 1.2
2304 
2321 extern hciStatus_t HCI_LE_AddDeviceToResolvingListCmd( uint8 peerIdAddrType,
2322  uint8 *peerIdAddr,
2323  uint8 *peerIRK,
2324  uint8 *localIRK );
2325 
2340 extern hciStatus_t HCI_LE_RemoveDeviceFromResolvingListCmd( uint8 peerIdAddrType,
2341  uint8 *peerIdAddr );
2342 
2354 extern hciStatus_t HCI_LE_ClearResolvingListCmd( void );
2355 
2367 extern hciStatus_t HCI_LE_ReadResolvingListSizeCmd( void );
2368 
2386 extern hciStatus_t HCI_LE_ReadPeerResolvableAddressCmd( uint8 peerIdAddrType,
2387  uint8 *peerIdAddr );
2388 
2407 extern hciStatus_t HCI_LE_ReadLocalResolvableAddressCmd( uint8 localIdAddrType,
2408  uint8 *localIdAddr );
2409 
2424 extern hciStatus_t HCI_LE_SetAddressResolutionEnableCmd( uint8 addrResolutionEnable );
2425 
2441 extern hciStatus_t HCI_LE_SetResolvablePrivateAddressTimeoutCmd( uint16 rpaTimeout );
2442 
2459 extern hciStatus_t HCI_LE_SetPrivacyModeCmd( uint8 peerIdAddrType,
2460  uint8 *peerIdAddr,
2461  uint8 privacyMode );
2462 
2463 // V4.2 Secure Connections
2464 
2480 extern hciStatus_t HCI_LE_ReadLocalP256PublicKeyCmd( void );
2481 
2500 extern hciStatus_t HCI_LE_GenerateDHKeyCmd( uint8 *publicKey );
2501 
2502 
2521 extern hciStatus_t HCI_LE_GenerateDHKeyV2Cmd( uint8 *publicKey, uint8 keyType );
2522 
2523 // V5.0 2M and Coded PHY
2524 
2540 extern hciStatus_t HCI_LE_ReadPhyCmd( uint16 connHandle );
2541 
2557 extern hciStatus_t HCI_LE_SetDefaultPhyCmd( uint8 allPhys,
2558  uint8 txPhy,
2559  uint8 rxPhy );
2560 
2561 
2576 extern hciStatus_t HCI_LE_SetPhyCmd( uint16 connHandle,
2577  uint8 allPhys,
2578  uint8 txPhy,
2579  uint8 rxPhy,
2580  uint16 phyOpts );
2581 
2582 
2598 extern hciStatus_t HCI_LE_EnhancedRxTestCmd( uint8 rxChan,
2599  uint8 rxPhy,
2600  uint8 modIndex );
2601 
2602 
2619 extern hciStatus_t HCI_LE_EnhancedTxTestCmd( uint8 txChan,
2620  uint8 payloadLen,
2621  uint8 payloadType,
2622  uint8 txPhy );
2643 extern hciStatus_t HCI_LE_EnhancedCteRxTestCmd( uint8 rxChan,
2644  uint8 rxPhy,
2645  uint8 modIndex,
2646  uint8 expectedCteLength,
2647  uint8 expectedCteType,
2648  uint8 slotDurations,
2649  uint8 length,
2650  uint8 *pAntenna);
2651 
2672 extern hciStatus_t HCI_LE_EnhancedCteTxTestCmd( uint8 txChan,
2673  uint8 payloadLen,
2674  uint8 payloadType,
2675  uint8 txPhy,
2676  uint8 cteLength,
2677  uint8 cteType,
2678  uint8 length,
2679  uint8 *pAntenna);
2688 extern hciStatus_t HCI_LE_ReadTxPowerCmd( void );
2689 
2698 extern hciStatus_t HCI_LE_ReadRfPathCompCmd( void );
2699 
2711 extern hciStatus_t HCI_LE_WriteRfPathCompCmd( int16 txPathParam,
2712  int16 rxPathParam );
2713 
2714 // @cond NODOC
2733 extern hciStatus_t HCI_LE_SetConnectionCteReceiveParamsCmd( uint16 connHandle,
2734  uint8 samplingEnable,
2735  uint8 slotDurations,
2736  uint8 length,
2737  uint8 *pAntenna);
2738 
2739 
2756 extern hciStatus_t HCI_LE_SetConnectionCteTransmitParamsCmd( uint16 connHandle,
2757  uint8 types,
2758  uint8 length,
2759  uint8 *pAntenna);
2760 
2777 extern hciStatus_t HCI_LE_SetConnectionCteRequestEnableCmd( uint16 connHandle,
2778  uint8 enable,
2779  uint16 interval,
2780  uint8 length,
2781  uint8 type);
2782 
2796 extern hciStatus_t HCI_LE_SetConnectionCteResponseEnableCmd( uint16 connHandle,
2797  uint8 enable);
2798 
2809 extern hciStatus_t HCI_LE_ReadAntennaInformationCmd( void );
2810 
2830 extern hciStatus_t HCI_LE_SetPeriodicAdvParamsCmd( uint8 advHandle,
2831  uint16 periodicAdvIntervalMin,
2832  uint16 periodicAdvIntervalMax,
2833  uint16 periodicAdvProp );
2834 
2835 
2858 extern hciStatus_t HCI_LE_SetPeriodicAdvDataCmd( uint8 advHandle,
2859  uint8 operation,
2860  uint8 dataLength,
2861  uint8 *data );
2862 
2878 extern hciStatus_t HCI_LE_SetPeriodicAdvEnableCmd( uint8 enable,
2879  uint8 advHandle );
2880 
2898 extern hciStatus_t HCI_LE_SetConnectionlessCteTransmitParamsCmd( uint8 advHandle,
2899  uint8 cteLen,
2900  uint8 cteType,
2901  uint8 cteCount,
2902  uint8 length,
2903  uint8 *pAntenna);
2904 
2919 extern hciStatus_t HCI_LE_SetConnectionlessCteTransmitEnableCmd( uint8 advHandle,
2920  uint8 enable );
2921 
2951 extern hciStatus_t HCI_LE_PeriodicAdvCreateSyncCmd( uint8 options,
2952  uint8 advSID,
2953  uint8 advAddrType,
2954  uint8 *advAddress,
2955  uint16 skip,
2956  uint16 syncTimeout,
2957  uint8 syncCteType );
2958 
2959 /*******************************************************************************
2960  * @fn HCI_LE_SetPeriodicSyncSubeventCmd
2961  *
2962  * @brief This function used by the Host to set the subevents it want to
2963  * sync with.
2964  *
2965  * input parameters
2966  *
2967  * @param syncHandle - Handle identifying the periodic advertising train
2968  * @param perAdvProps - Properties for the Response data header
2969  * @param numSubevents - Number of subevents to be set
2970  * @param subEvents - Pointer to the array of subevents to be set
2971  *
2972  * output parameters
2973  *
2974  * @param None.
2975  *
2976  * @return status of the command
2977  * HCI_SUCCESS - Command was successful
2978  * LL_STATUS_ERROR_COMMAND_DISALLOWED - Command disallowed
2979  * LL_STATUS_ERROR_BAD_PARAMETER - Invalid parameters were passed
2980  * LL_STATUS_ERROR_FEATURE_NOT_SUPPORTED - Invalid parameters were passed
2981  * HCI_ERROR_CODE_MEM_CAP_EXCEEDED - Memory capacity exceeded
2982  */
2983 extern hciStatus_t HCI_LE_SetPeriodicSyncSubeventCmd(uint16_t syncHandle,
2984  uint16_t perAdvProps,
2985  uint8_t numSubevents,
2986  uint8_t* subEvents);
2987 
2988 /*******************************************************************************
2989  * @fn HCI_LE_SetPeriodicAdvResponseDataCmd
2990  *
2991  * @brief Used by the Host to set the periodic advertising response parameters
2992  * and data.
2993  *
2994  * input parameters
2995  *
2996  * @param syncHandle - Handle identifying the periodic advertising train
2997  * @param pRspParams - Pointer to the periodic advertising response parameters
2998  * and data.
2999  *
3000  * output parameters
3001  *
3002  * @param None.
3003  *
3004  * @return status of the command
3005  * HCI_SUCCESS - Command was successful
3006  * LL_STATUS_ERROR_COMMAND_DISALLOWED - Command disallowed
3007  * LL_STATUS_ERROR_UNKNOWN_ADVERTISING_IDENTIFIER - Unknown advertising identifier
3008  * LL_STATUS_ERROR_BAD_PARAMETER - Invalid parameters were passed
3009  * HCI_ERROR_CODE_MEM_CAP_EXCEEDED - Memory capacity exceeded
3010 */
3011 extern hciStatus_t HCI_LE_SetPeriodicAdvResponseDataCmd(uint16 syncHandle,
3012  uint8_t* pRspParams);
3023 extern hciStatus_t HCI_LE_PeriodicAdvCreateSyncCancelCmd( void );
3024 
3040 extern hciStatus_t HCI_LE_PeriodicAdvTerminateSyncCmd( uint16 syncHandle );
3041 
3058 extern hciStatus_t HCI_LE_AddDeviceToPeriodicAdvListCmd( uint8 advAddrType,
3059  uint8 *advAddress,
3060  uint8 advSID );
3061 
3079 extern hciStatus_t HCI_LE_RemoveDeviceFromPeriodicAdvListCmd( uint8 advAddrType,
3080  uint8 *advAddress,
3081  uint8 advSID );
3082 
3093 extern hciStatus_t HCI_LE_ClearPeriodicAdvListCmd( void );
3094 
3106 extern hciStatus_t HCI_LE_ReadPeriodicAdvListSizeCmd( void );
3107 
3119 extern hciStatus_t HCI_LE_SetHostFeature( uint8, uint8 );
3120 
3138 extern hciStatus_t HCI_LE_SetPeriodicAdvReceiveEnableCmd( uint16 syncHandle,
3139  uint8 enable );
3140 
3142 
3143 /*
3144 ** HCI Vendor Specific Commands: Link Layer Extensions
3145 */
3146 
3159 extern hciStatus_t HCI_EXT_SetRxGainCmd( uint8 rxGain );
3160 
3181 extern hciStatus_t HCI_EXT_SetTxPowerDbmCmd( int8 txPower, uint8 fraction );
3182 
3195 extern hciStatus_t HCI_EXT_OnePktPerEvtCmd( uint8 control );
3196 
3198 
3217 extern hciStatus_t HCI_EXT_ClkDivOnHaltCmd( uint8 control );
3218 
3240 extern hciStatus_t HCI_EXT_DeclareNvUsageCmd( uint8 mode );
3241 
3243 
3257 extern hciStatus_t HCI_EXT_DecryptCmd( uint8 *key,
3258  uint8 *encText );
3259 
3282 extern hciStatus_t HCI_EXT_SetLocalSupportedFeaturesCmd( uint8 *localFeatures );
3283 
3309 extern hciStatus_t HCI_EXT_SetFastTxResponseTimeCmd( uint8 control );
3310 
3311 
3330 extern hciStatus_t HCI_EXT_SetPeripheralLatencyOverrideCmd( uint8 control );
3331 
3332 
3357 extern hciStatus_t HCI_EXT_ModemTestTxCmd( uint8 cwMode,
3358  uint8 txChan );
3359 
3382 extern hciStatus_t HCI_EXT_ModemHopTestTxCmd( void );
3383 
3406 extern hciStatus_t HCI_EXT_ModemTestRxCmd( uint8 rxChan );
3407 
3433 extern hciStatus_t HCI_EXT_EnhancedModemTestTxCmd( uint8 cwMode,
3434  uint8 rfPhy,
3435  uint8 rfChan );
3436 
3465 extern hciStatus_t HCI_EXT_EnhancedModemHopTestTxCmd( uint8 payloadLen,
3466  uint8 payloadType,
3467  uint8 rfPhy );
3468 
3492 extern hciStatus_t HCI_EXT_EnhancedModemTestRxCmd( uint8 rfPhy,
3493  uint8 rfChan );
3494 
3505 extern hciStatus_t HCI_EXT_EndModemTestCmd( void );
3506 
3529 extern hciStatus_t HCI_EXT_SetBDADDRCmd( uint8 *bdAddr );
3530 
3556 extern hciStatus_t HCI_EXT_SetSCACmd( uint16 scaInPPM );
3557 
3573 extern hciStatus_t HCI_EXT_EnablePTMCmd( void );
3574 
3601 extern hciStatus_t HCI_EXT_SetMaxDtmTxPowerDbmCmd( int8 txPowerDbm,
3602  uint8 fraction );
3604 
3644 extern hciStatus_t HCI_EXT_MapPmIoPortCmd( uint8 ioPort, uint8 ioPin );
3645 
3647 
3663 extern hciStatus_t HCI_EXT_DisconnectImmedCmd( uint16 connHandle );
3664 
3683 extern hciStatus_t HCI_EXT_PacketErrorRateCmd( uint16 connHandle, uint8 command );
3684 
3726 extern hciStatus_t HCI_EXT_PERbyChanCmd( uint16 connHandle, perByChan_t *perByChan );
3727 
3749 extern hciStatus_t HCI_EXT_BuildRevisionCmd( uint8 mode, uint16 userRevNum );
3750 
3752 
3784 extern hciStatus_t HCI_EXT_DelaySleepCmd( uint16 delay );
3785 
3787 
3806 extern hciStatus_t HCI_EXT_ResetSystemCmd( uint8 mode );
3807 
3808 // @cond NODOC
3809 
3820 extern hciStatus_t HCI_EXT_LLTestModeCmd( uint8 testCase );
3821 
3822 
3833 extern hciStatus_t HCI_EXT_OverlappedProcessingCmd( uint8 mode );
3834 
3836 
3857 extern hciStatus_t HCI_EXT_NumComplPktsLimitCmd( uint8 limit,
3858  uint8 flushOnEvt );
3859 
3892 extern hciStatus_t HCI_EXT_GetConnInfoCmd( uint8 *numAllocConns,
3893  uint8 *numActiveConns,
3894  hciConnInfo_t *activeConnInfo );
3895 
3912 extern hciStatus_t HCI_EXT_SetMaxDataLenCmd( uint16 txOctets,
3913  uint16 txTime,
3914  uint16 rxOctets,
3915  uint16 rxTime );
3916 
3929 extern hciStatus_t HCI_EXT_SetDtmTxPktCntCmd( uint16 txPktCnt );
3930 
3931 
3940 extern hciStatus_t HCI_EXT_ReadRandAddrCmd( void );
3941 
3942 
3954 extern hciStatus_t HCI_EXT_SetPinOutputCmd( uint8 dio,
3955  uint8 value );
3956 
3979 extern hciStatus_t HCI_EXT_SetLocationingAccuracyCmd( uint16 handle,
3980  uint8 sampleRate1M,
3981  uint8 sampleSize1M,
3982  uint8 sampleRate2M,
3983  uint8 sampleSize2M,
3984  uint8 sampleCtrl);
3985 
4007 extern hciStatus_t HCI_EXT_GetActiveConnInfoCmd( uint8 connId, hciActiveConnInfo_t *activeConnInfo );
4008 
4031 extern hciStatus_t HCI_EXT_SetAdvSetRandAddrCmd( uint8 advHandle, uint8 *randAddr);
4032 
4054 extern hciStatus_t HCI_EXT_SetVirtualAdvAddrCmd( uint8 advHandle, uint8 *bdAddr );
4055 
4079 extern hciStatus_t HCI_EXT_SetExtScanChannels( uint8 extScanChannelsMap );
4080 
4131 extern hciStatus_t HCI_EXT_SetQOSParameters( uint8 taskType,
4132  uint8 paramType,
4133  uint32 ParamVal,
4134  uint16 taskHandle);
4135 
4168 extern hciStatus_t HCI_EXT_SetQOSDefaultParameters(uint32 paramDefaultVal,
4169  uint8 paramType,
4170  uint8 taskType);
4171 
4182 extern hciStatus_t HCI_EXT_CoexEnableCmd( uint8 enable );
4183 
4192 extern hciStatus_t HCI_EXT_GetRxStatisticsCmd( uint16 connHandle, uint8 command );
4193 
4202 extern hciStatus_t HCI_EXT_GetTxStatisticsCmd( uint16 connHandle, uint8 command );
4203 
4211 extern hciStatus_t HCI_EXT_GetCoexStatisticsCmd( uint8 command );
4212 
4213 /*******************************************************************************
4214  * @fn HCI_CMD_Parser
4215  *
4216  * @brief This API is called by an external or internal host to send
4217  * a raw HCI packet command to the controller. The API runs on all
4218  * parser functions and looks for opcode matches. Inside the parser
4219  * function, a call is made to the HCI function, which returns the
4220  * HCI status or HCI_ERROR_CODE_UNKNOWN_HCI_CMD if the opcode
4221  * is not found.
4222  *
4223  * input parameters
4224  *
4225  * @param pData - Pointer to packet's data.
4226  *
4227  * output parameters
4228  *
4229  * @param None.
4230  *
4231  * @return HCI/LL status
4232  * HCI_ERROR_CODE_UNKNOWN_HCI_CMD.
4233  *
4234  */
4235 hciStatus_t HCI_CMD_Parser(uint8 *pData);
4236 
4237 /*******************************************************************************
4238  * @fn HCI_LE_ReadRemoteTransmitPowerLevelCmd
4239  *
4240  * @brief Read the transmit power level used by the remote
4241  * controller on a specific connection and specific PHY.
4242  *
4243  * @Design BLE_LOKI-1969
4244  *
4245  * input parameters
4246  *
4247  * @param connHandle - Connection handle.
4248  * @param txPhy - Tx PHY of the remote controller to read the power value from.
4249  *
4250  * output parameters
4251  *
4252  * @param None
4253  *
4254  * @return @ref HCI_SUCCESS
4255  */
4256 hciStatus_t HCI_LE_ReadRemoteTransmitPowerLevelCmd( uint16_t connHandle,
4257  uint8_t txPhy );
4258 
4259 /*******************************************************************************
4260  * @fn HCI_LE_EnhancedReadTransmitPowerLevelCmd
4261  *
4262  * @brief Read the current and maximum transmit power level used by the local
4263  * controller on a specific connection and a specific PHY.
4264  *
4265  * @design BLE_LOKI-1969
4266  *
4267  * input parameters
4268  *
4269  * @param connHandle - Connection handle.
4270  * @param txPhy - Tx PHY to read the power value from.
4271  *
4272  * output parameters
4273  *
4274  * @param None
4275  *
4276  * @return @ref HCI_SUCCESS
4277  */
4278 hciStatus_t HCI_LE_EnhancedReadTransmitPowerLevelCmd( uint16_t connHandle,
4279  uint8_t txPhy );
4280 
4281 /*******************************************************************************
4282  * @fn HCI_LE_SetTransmitPowerReportingEnableCmd
4283  *
4284  * @brief Enable or disable the reporting to the local Host of transmit
4285  * power level changes in the local and remote Controllers of a
4286  * specific connection.
4287  *
4288  * @design BLE_LOKI-1969
4289  *
4290  * input parameters
4291  *
4292  * @param connHandle - Connection handle.
4293  * @param localEnable - Enable or disable the local reporting events
4294  * @param remoteEnable - Enable or disable the remote reporting events
4295  *
4296  * output parameters
4297  *
4298  * @param None
4299  *
4300  * @return @ref HCI_SUCCESS
4301  */
4302 hciStatus_t HCI_LE_SetTransmitPowerReportingEnableCmd( uint16_t connHandle,
4303  uint8_t localEnable,
4304  uint8_t remoteEnable);
4305 
4306 /*******************************************************************************
4307  * @fn HCI_EXT_SendPowerControlRequestCmd
4308  *
4309  * @brief Enables the App/Host to sent the power control request packet
4310  * with any delta value.
4311  *
4312  * @Design BLE_LOKI-1969
4313  *
4314  * input parameters
4315  *
4316  * @param connHandle - Connection handle.
4317  * @param txPhy - Tx PHY of the remote controller to query.
4318  * @param deltaPowerDb - Amount of Tx power (dB) to ask the peer device to change
4319  * @param enableApr - Enable or disable the usage of the APR value from the power control response packet
4320  *
4321  * output parameters
4322  *
4323  * @param None
4324  *
4325  * @return @ref HCI_SUCCESS
4326  */
4327 hciStatus_t HCI_EXT_SendPowerControlRequestCmd( uint16_t connHandle,
4328  uint8_t txPhy,
4329  int8_t deltaPowerDb,
4330  uint8_t aprEnalbe );
4331 
4332 /*******************************************************************************
4333  * @fn HCI_EXT_SetDefaultAntenna
4334  *
4335  * @brief This API is to be called by the host to set a default antenna
4336  * for common BLE communications.
4337  *
4338  * input parameters
4339  *
4340  * @param index - Index of the antenna to set as default.
4341  * Should match an antenna index defined by the controller.
4342  * Range: 0x00 to 0x03.
4343  *
4344  * output parameters
4345  *
4346  * @param None.
4347  *
4348  * @return HCI status
4349  *
4350  */
4351 extern hciStatus_t HCI_EXT_SetDefaultAntenna( uint8 index );
4352 
4353 /*******************************************************************************
4354  * @fn HCI_EXT_RssiMon_RegCmd
4355  *
4356  * @brief Enables the App/Host to register an RSSI monitoring command for
4357  * a specific connection.
4358  *
4359  * @design BLE_LOKI-2764
4360  *
4361  * input parameters
4362  *
4363  * @param connHandle - Connection handle.
4364  * @param lowRssiThresh - Low RSSI threshold value.
4365  * @param highRssiThresh - High RSSI threshold value.
4366  *
4367  * output parameters
4368  *
4369  * @param None
4370  *
4371  * @return @ref Register handle when success. Otherwise RSSI_MON_INVALID_REG_HANDLE
4372  */
4373 hciStatus_t HCI_EXT_RssiMon_RegCmd( uint16_t connHandle,
4374  int8_t lowRssiThresh,
4375  int8_t highRssiThresh );
4376 
4377 /*******************************************************************************
4378  * @fn HCI_EXT_RssiMon_UnregCmd
4379  *
4380  * @brief Enables the App/Host to unregister from an RSSI monitoring command for
4381  * a specific register handle.
4382  *
4383  * @design BLE_LOKI-2764
4384  *
4385  * input parameters
4386  *
4387  * @param regHandle - Register handle.
4388  *
4389  * output parameters
4390  *
4391  * @param None
4392  *
4393  * @return @ref HCI_SUCCESS when success. Otherswise RSSI_MON_INVALID_REG_HANDLE
4394  */
4395 hciStatus_t HCI_EXT_RssiMon_UnregCmd(uint8_t regHandle);
4396 
4397 /*******************************************************************************
4398  * @fn HCI_EXT_RssiMon_SetConfigCmd
4399  *
4400  * @brief Enables the App/Host to set the RSSI monitoring configuration.
4401  *
4402  * @design BLE_LOKI-2764
4403  *
4404  * input parameters
4405  *
4406  * @param incomeRssiWeight - Weight of the new RSSI value.
4407  * @param minRssiSamples - Minimum number of RSSI samples.
4408  *
4409  * output parameters
4410  *
4411  * @param None
4412  *
4413  * @return @ref HCI_SUCCESS when success. Otherwise RSSI_MON_INVALID_CONFIG
4414  */
4415 hciStatus_t HCI_EXT_RssiMon_SetConfigCmd( int8_t incomeRssiWeight,
4416  uint8_t minRssiSamples );
4417 
4418 /*******************************************************************************
4419  * @fn HCI_EXT_RssiMon_GetConfigCmd
4420  *
4421  * @brief Enables the App/Host to get the RSSI monitoring configuration.
4422  *
4423  * @design BLE_LOKI-2764
4424  *
4425  * input parameters
4426  *
4427  * @param None
4428  *
4429  * output parameters
4430  *
4431  * @param None
4432  *
4433  * @return @ref HCI_SUCCESS when success. Otherwise RSSI_MON_INVALID_CONFIG
4434  * The config data is raised through the command complete event
4435  */
4436 hciStatus_t HCI_EXT_RssiMon_GetConfigCmd(void);
4437 
4438 /*******************************************************************************
4439  * @fn HCI_EXT_RssiMon_GetRssiStatCmd
4440  *
4441  * @brief Enables the App/Host to get the RSSI monitoring statistics.
4442  *
4443  * @design BLE_LOKI-2764
4444  *
4445  * input parameters
4446  *
4447  * @param connHandle - Connection handle
4448  *
4449  * output parameters
4450  *
4451  * @param None
4452  *
4453  * @return @ref Rssi statistic value when success. otherwise RSSI_MON_INVALID_VALUE
4454  * The statistic data is raised through the command complete event
4455  */
4456 hciStatus_t HCI_EXT_RssiMon_GetRssiStatCmd(uint16_t connHandle);
4457 
4458 /*******************************************************************************
4459  * @fn HCI_LE_PAdvSetInfoTransferCmd
4460  *
4461  * @brief Periodic advertising sync transfer command is used to instruct
4462  * the controller to send synchronization information about the
4463  * periodic advertising in an advertising set to a connected
4464  * device
4465  *
4466  * @Design BLE_LOKI-2753
4467  *
4468  * input parameters
4469  *
4470  * @param connHandle - Connection handle.
4471  * @param serviceData - Value provided by the host for use by the Host
4472  * of the peer device.
4473  * @param advHandle - Advertising set of the periodic advertising.
4474  *
4475  * output parameters
4476  *
4477  * @param None
4478  *
4479  * @return HCI_SUCCESS when success.
4480  * Otherwise:
4481  * HCI_ERROR_CODE_UNKNOWN_ADVERTISING_IDENTIFIER
4482  * HCI_ERROR_CODE_UNKNOWN_CONN_ID
4483  * HCI_ERROR_CODE_UNSUPPORTED_FEATURE_PARAM_VALUE
4484  */
4485 hciStatus_t HCI_LE_PAdvSetInfoTransferCmd( uint16_t connHandle,
4486  uint16_t serviceData,
4487  uint8_t advHandle);
4488 
4489 /*******************************************************************************
4490  * @fn HCI_LE_PAdvSyncTransferCmd
4491  *
4492  * @brief Periodic advertising sync transfer command is used to instruct
4493  * the controller to send synchronization information about the
4494  * periodic advertising train identified by the Sync_Handle parameter
4495  * to a connected device
4496  *
4497  * @Design BLE_LOKI-2753
4498  *
4499  * input parameters
4500  *
4501  * @param connHandle - Connection handle.
4502  * @param serviceData - Value provided by the host for use by the Host
4503  * of the peer device.
4504  * @param syncHandle - Sync handle of the periodic advertising train.
4505  *
4506  * output parameters
4507  *
4508  * @param None
4509  *
4510  * @return HCI_SUCCESS when success.
4511  * Otherwise:
4512  * HCI_ERROR_CODE_UNKNOWN_ADVERTISING_IDENTIFIER
4513  * HCI_ERROR_CODE_UNKNOWN_CONN_ID
4514  * HCI_ERROR_CODE_UNSUPPORTED_FEATURE_PARAM_VALUE
4515  */
4516 hciStatus_t HCI_LE_PAdvSyncTransferCmd( uint16_t connHandle,
4517  uint16_t serviceData,
4518  uint16_t syncHandle );
4519 
4520 /*******************************************************************************
4521  * @fn HCI_LE_SetPASTParamCmd
4522  *
4523  * @brief Periodic advertising sync transfer parameters command is used to
4524  * specify how the controller will process periodic advertising
4525  * synchronization information (syncInfo) received from the device
4526  * identified by the Connection_Handle parameter.
4527  *
4528  * @Design BLE_LOKI-2753
4529  *
4530  * input parameters
4531  *
4532  * @param connHandle - Connection handle.
4533  * @param mode - Action to be taken when periodic advertising
4534  * synchronization information is received:
4535  * 0x00 - No attempt is made to synchronize to the periodic
4536  * advertising and no event is sent to host
4537  * 0x01 - Attempt to synchronize to periodic advertising,
4538  * Event is raised if we succeed to sync or not to the host
4539  * Periodic advertisements reports will not raised to the host
4540  * 0x02 - Attempt to synchronize to periodic advertising,
4541  * Event is raised to if we succeed to sync or not
4542  * Periodic advertisements reports will be raised to the host
4543  * with duplicate filtering is disabled
4544  * 0x03 - Attempt to synchronize to periodic advertising,
4545  * Event is raised to if we succeed to sync or not
4546  * Periodic advertisements reports will be raised to the host
4547  * with duplicate filtering is enabled
4548  * @param skip - Number of consecutive periodic advertising packets
4549  * the device may skip after successfully receiving
4550  * a periodic advertising packet
4551  * @param syncTimeout - Maximum permitted time between successful receives
4552  * @param cteType - Whether to only synchronize to periodic advertising
4553  * with certain types of Constant Tone Extension
4554  *
4555  * output parameters
4556  *
4557  * @param None
4558  *
4559  * @return HCI_SUCCESS when success.
4560  * Otherwise:
4561  * HCI_ERROR_CODE_UNSUPPORTED_FEATURE_PARAM_VALUE
4562  * HCI_ERROR_CODE_UNKNOWN_CONN_ID
4563  * HCI_ERROR_CODE_CMD_DISALLOWED
4564  */
4565 hciStatus_t HCI_LE_SetPASTParamCmd( uint16_t connHandle,
4566  uint8_t mode,
4567  uint16_t skip,
4568  uint16_t syncTimeout,
4569  uint8_t cteType );
4570 
4571 /*******************************************************************************
4572  * @fn HCI_LE_SetDefaultPASTParamCmd
4573  *
4574  * @brief Periodic advertising sync transfer set default parameters command
4575  * is used to specify the initial value for the periodic advertising
4576  * sync transfer parameters
4577  *
4578  * @Design BLE_LOKI-2753
4579  *
4580  * input parameters
4581  *
4582  * @param mode - Action to be taken when periodic advertising
4583  * synchronization information is received:
4584  * 0x00 - No attempt is made to synchronize to the periodic
4585  * advertising and no event is sent to host
4586  * 0x01 - Attempt to synchronize to periodic advertising,
4587  * Event is raised if we succeed to sync or not to the host
4588  * Periodic advertisements reports will not raised to the host
4589  * 0x02 - Attempt to synchronize to periodic advertising,
4590  * Event is raised to if we succeed to sync or not
4591  * Periodic advertisements reports will be raised to the host
4592  * with duplicate filtering is disabled
4593  * 0x03 - Attempt to synchronize to periodic advertising,
4594  * Event is raised to if we succeed to sync or not
4595  * Periodic advertisements reports will be raised to the host
4596  * @param skip - Number of consecutive periodic advertising packets
4597  * the device may skip after successfully receiving
4598  * a periodic advertising packet
4599  * @param syncTimeout - Maximum permitted time between successful receives
4600  * @param cteType - Whether to only synchronize to periodic advertising
4601  * with certain types of Constant Tone Extension
4602  *
4603  * output parameters
4604  *
4605  * @param None
4606  *
4607  * @return @ref HCI_SUCCESS when success.
4608  * Otherwise:
4609  * HCI_ERROR_CODE_UNSUPPORTED_FEATURE_PARAM_VALUE
4610  * HCI_ERROR_CODE_CMD_DISALLOWED
4611  */
4612 hciStatus_t HCI_LE_SetDefaultPASTParamCmd( uint8_t mode,
4613  uint16_t skip,
4614  uint16_t syncTimeout,
4615  uint8_t cteType );
4616 #ifdef __cplusplus
4617 }
4618 #endif
4619 
4620 #endif /* HCI_H */
4621 
event_hdr_t hdr
OSAL Event header.
Definition: hci.h:1260
hciStatus_t HCI_EXT_PacketErrorRateCmd(uint16 connHandle, uint8 command)
uint8 BLEEventCode
BLE Event Code.
Definition: hci.h:1121
uint8 status
packet status (success or CRC error)
Definition: hci.h:1111
uint8 BLEEventCode
BLE Event Code.
Definition: hci.h:933
uint8 sampleCount
number of samples
Definition: hci.h:1113
event_hdr_t hdr
osal event header
Definition: hci.h:1102
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:1167
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:1206
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:1221
uint8 status
status of event
Definition: hci.h:1063
uint8 phy
current phy
Definition: hci.h:1105
uint8 addrType
public or random address type
Definition: hci.h:878
uint8 pktType
packet type
Definition: hci.h:1261
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:1156
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:1251
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:1150
hciStatus_t HCI_LE_SetAddressResolutionEnableCmd(uint8 addrResolutionEnable)
event_hdr_t hdr
OSAL event header.
Definition: hci.h:1246
uint16 dataPktLen
data packet length
Definition: hci.h:1230
uint8 BLEEventCode
BLE Event Code.
Definition: hci.h:910
uint16 rssi
current rssi
Definition: hci.h:1107
Command Status Event.
Definition: hci.h:999
void * iqSamples
list of interleaved I/Q samples (list size is dataLen*2)
Definition: hci.h:1146
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:1220
uint8 sampleRate
sample rate (1/2/3/4 MHz)
Definition: hci.h:1182
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:1244
uint8 peerAddrType
peer address type
Definition: hci.h:856
uint16 connHandle
connection handle
Definition: hci.h:1123
uint8 BLEEventCode
BLE Event Code.
Definition: hci.h:1103
uint8 status
status of event
Definition: hci.h:1018
int8 txPower
Tx Power information.
Definition: hci.h:1209
event_hdr_t hdr
osal event header
Definition: hci.h:1084
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:1200
LE Advertising Report Event.
Definition: hci.h:875
uint8 sampleCount
number of samples
Definition: hci.h:1162
uint8 dataChIndex
index of data channel
Definition: hci.h:1106
hciStatus_t HCI_EXT_ReadRandAddrCmd(void)
hciStatus_t HCI_LE_ReadRfPathCompCmd(void)
uint8 status
status of event
Definition: hci.h:1193
#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:1135
event_hdr_t hdr
osal event header
Definition: hci.h:932
event_hdr_t hdr
osal event header
Definition: hci.h:1129
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:1138
LE CTE Connection IQ Report Event.
Definition: hci.h:1100
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:1253
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:1177
uint8 BLEEventCode
BLE Event Code.
Definition: hci.h:1192
uint16 syncHandle
sync handle in periodic adv
Definition: hci.h:1154
uint16 connectionHandle
connection handle
Definition: hci.h:838
uint16 connHandle
connection handle
Definition: hci.h:1262
hciStatus_t HCI_LE_ReadRemoteTransmitPowerLevelCmd(uint16_t connHandle, uint8_t txPhy)
uint8 BLEEventCode
BLE Event Code.
Definition: hci.h:1073
Definition: hci.h:1283
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:1184
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:1141
uint8 status
packet status (success or CRC error)
Definition: hci.h:1140
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:1108
uint8 dataStatus
Periodic data status.
Definition: hci.h:1212
uint8 BLEEventCode
BLE Event code.
Definition: hci.h:1085
hciStatus_t HCI_WriteAuthPayloadTimeoutCmd(uint16 connHandle, uint16 aptoValue)
event_hdr_t hdr
osal event header
Definition: hci.h:1120
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:1296
uint8 slotDuration
sampling slot 1us or 2us
Definition: hci.h:1159
hciStatus_t HCI_LE_GenerateDHKeyV2Cmd(uint8 *publicKey, uint8 keyType)
hciStatus_t HCI_LE_SetHostChanClassificationCmd(uint8 *chanMap)
uint8 BLEEventCode
BLE Event Code.
Definition: hci.h:1094
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:1247
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:1086
uint16 connectionHandle
connection handle
Definition: hci.h:854
uint8 sampleSize
sample size (8 or 16 bit)
Definition: hci.h:1144
hciStatus_t HCI_LE_CreateConnCancelCmd(void)
uint8 rssiAntenna
antenna ID
Definition: hci.h:1176
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:1152
uint8 encEnable
encryption enabled or not
Definition: hci.h:958
uint8 eventIndex
event number
Definition: hci.h:1132
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:1139
uint8 eventIndex
event number
Definition: hci.h:1172
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:1227
uint16 numMMissedEvents
number missed connection events
Definition: hci.h:1308
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:1110
void * iqSamples
list of interleaved I/Q samples (list size is dataLen*2)
Definition: hci.h:1185
uint16 totalDataLen
samples data length includes in all next events
Definition: hci.h:1171
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:1297
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:1195
uint16 periodicInterval
Periodic interval.
Definition: hci.h:1199
event_hdr_t hdr
osal event header
Definition: hci.h:1237
uint16 connHandle
connection handle
Definition: hci.h:1051
uint8 sampleSize
sample size (8 or 16 bit)
Definition: hci.h:1183
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:1093
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:1265
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:1218
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:1240
Definition: hci.h:916
LE CTE Request Failed Event.
Definition: hci.h:1118
hciStatus_t HCI_ReadRemoteVersionInfoCmd(uint16 connHandle)
uint8 * data
Periodic data received from peer.
Definition: hci.h:1214
uint8 channelIndex
index of channel
Definition: hci.h:1174
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:1191
hciStatus_t HCI_LE_ReadLocalResolvableAddressCmd(uint8 localIdAddrType, uint8 *localIdAddr)
uint8 BLEEventCode
BLE Event Code.
Definition: hci.h:1130
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:1208
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:1235
uint16 connHandle
connection handle
Definition: hci.h:956
HCI Data Packet.
Definition: hci.h:1258
uint8 status
status
Definition: hci.h:1095
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:1091
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:1180
LE Remote Connection Parameter Request Event.
Definition: hci.h:1046
uint8 addrType
peer device address type
Definition: hci.h:1288
hciStatus_t HCI_EXT_PERbyChanCmd(uint16 connHandle, perByChan_t *perByChan)
uint8 status
packet status (success or CRC error)
Definition: hci.h:1179
uint16 connEvent
connection event
Definition: hci.h:1112
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
int8 rssi
RSSI of the received packet.
Definition: hci.h:1210
int8 * iqSamples
list of interleaved I/Q samples
Definition: hci.h:1163
uint16 connHandle
connection handle
Definition: hci.h:1133
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:1194
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:1306
uint8 phy
current phy
Definition: hci.h:1134
uint8 * pEventParam
event parameters
Definition: hci.h:995
uint8 channelIndex
index of channel
Definition: hci.h:1155
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:1293
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:1285
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:1211
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:1231
uint16 connHandle
Connection handle.
Definition: hci.h:921
uint16 connHandle
connection handle
Definition: hci.h:911
uint16 rssi
current rssi
Definition: hci.h:1175
LE Periodic Advertising Report event.
Definition: hci.h:1204
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:1264
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:1294
uint8 BLEEventCode
BLE Event Code.
Definition: hci.h:1207
hciStatus_t HCI_LE_StartEncyptCmd(uint16 connHandle, uint8 *random, uint8 *encDiv, uint8 *ltk)
Definition: hci.h:1303
uint8 phy
Peer PHY.
Definition: hci.h:1198
uint16 cmdOpcode
command opcode
Definition: hci.h:994
uint8 reason
reason
Definition: hci.h:1020
uint8 role
device connection role
Definition: hci.h:1286
uint8 numHciCmdPkt
number of HCI Command Packet
Definition: hci.h:984
LE Extended CTE Connection IQ Report Event.
Definition: hci.h:1127
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:1213
uint16 encryptedDiversifier
encrypted diversifier
Definition: hci.h:968
int8 * iqSamples
list of interleaved I/Q samples
Definition: hci.h:1114
uint8 slotDuration
sampling slot 1us or 2us
Definition: hci.h:1178
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:1161
uint8 peerAddrType
peer address type
Definition: hci.h:900
uint16 syncHandle
sync handle
Definition: hci.h:1222
uint16 numPkts
total number of rx packets
Definition: hci.h:1305
hciStatus_t HCI_LE_SetRandomAddressCmd(uint8 *pRandAddr)
uint16 totalDataLen
samples data length includes in all next events
Definition: hci.h:1131
event_hdr_t hdr
Osal event header.
Definition: hci.h:918
event_hdr_t hdr
osal event header
Definition: hci.h:1169
Definition: hci.h:1291
hciStatus_t HCI_LE_SetScanParamCmd(uint8 scanType, uint16 scanInterval, uint16 scanWindow, uint8 ownAddrType, uint8 filterPolicy)
uint8 BLEEventCode
BLE Event Code.
Definition: hci.h:1170
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:1143
hciStatus_t HCI_LE_ReadChannelMapCmd(uint16 connHandle)
uint16 connHandle
connection handle
Definition: hci.h:1239
uint8 status
status of event
Definition: hci.h:1229
hciStatus_t HCI_EXT_RssiMon_SetConfigCmd(int8_t incomeRssiWeight, uint8_t minRssiSamples)
LE Periodic Advertising Sync Established event.
Definition: hci.h:1189
hciStatus_t HCI_LE_ReadMaxDataLenCmd(void)
hciStatus_t HCI_EXT_SetSCACmd(uint16 scaInPPM)
uint16 connHandle
connection handle
Definition: hci.h:1104
uint8 cteType
cte type
Definition: hci.h:1109
uint16 maxTxOctets
maximum transmission bytes
Definition: hci.h:1075
uint8 addrType
Peer address type.
Definition: hci.h:1196
event_hdr_t hdr
osal event header
Definition: hci.h:944
uint16 rssi
current rssi
Definition: hci.h:1136
hciStatus_t HCI_ReadBDADDRCmd(void)
uint8 status
packet status (success or CRC error)
Definition: hci.h:1160
uint8 rssiAntenna
antenna ID
Definition: hci.h:1137
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:1295
uint8 BLEEventCode
BLE Event Code.
Definition: hci.h:1153
LE Connection Update Complete Event.
Definition: hci.h:930
uint8 BLEEventCode
BLE Event Code.
Definition: hci.h:1238
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:1082
uint8_t ownAddrType
connection CRC initialization value (24 bits)
Definition: hci.h:1300
hciStatus_t HCI_LE_SetScanEnableCmd(uint8 scanEnable, uint8 filterDuplicates)
uint8 dataLen
samples data length
Definition: hci.h:1181
uint8 dataLen
length of report data
Definition: hci.h:880
uint8 dataLen
samples data length
Definition: hci.h:1142
uint8 status
status
Definition: hci.h:1122
uint8 * pData
data
Definition: hci.h:1254
uint8 cteType
cte type
Definition: hci.h:1158
LE Advertising Packet Report Event.
Definition: hci.h:886
uint8 rssiAntenna
antenna ID
Definition: hci.h:1157
event_hdr_t hdr
osal event header
Definition: hci.h:1040
uint16 syncHandle
sync handle in periodic adv
Definition: hci.h:1173
hciStatus_t HCI_EXT_DisconnectImmedCmd(uint16 connHandle)
uint16 connHandle
connection handle
Definition: hci.h:1019
uint16 numEvents
number of connection events
Definition: hci.h:1307
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:1263
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:1145
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-2025, Texas Instruments Incorporated. All rights reserved.
Trademarks | Privacy policy | Terms of use | Terms of sale