TI BLE5-Stack API Documentation  3.03.01.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 
321 #ifndef HCI_H
322 #define HCI_H
323 
324 #ifdef __cplusplus
325 extern "C"
326 {
327 #endif
328 
329 /*
330  * INCLUDES
331  */
332 #include "bcomdef.h"
333 #include "osal.h"
334 #include "ll_common.h"
335 #include "ll_ae.h"
336 #include "hal_assert.h"
337 
338 /*
339  * MACROS
340  */
341 
342  // Update the connection handle (Mandatory for CC33xx with power management enabled. Optional for other devices)
343  // This is done in order to distinguished between CMD to ACL packets when received under autonomous UART mode
344  // Note this change is applied regardless of the current autonomous UART state as it changes dynamically
345  #ifndef CONN_HANDLE_HCI_MASK
346  #define CONN_HANDLE_HCI_MASK 0
347  #endif
348 
349  #define CONN_HANDLE_HOST_TO_CTRL_CONVERT(connHandle) (uint16_t)((connHandle) & ~CONN_HANDLE_HCI_MASK)
350  #define CONN_HANDLE_CTRL_TO_HOST_CONVERT(connHandle) (uint16_t)((connHandle) | CONN_HANDLE_HCI_MASK)
351 
352 /*
353  * CONSTANTS
354  */
355 
366 #define HCI_SUCCESS 0x00
367 #define HCI_ERROR_CODE_UNKNOWN_HCI_CMD 0x01
368 #define HCI_ERROR_CODE_UNKNOWN_CONN_ID 0x02
369 #define HCI_ERROR_CODE_HW_FAILURE 0x03
370 #define HCI_ERROR_CODE_PAGE_TIMEOUT 0x04
371 #define HCI_ERROR_CODE_AUTH_FAILURE 0x05
372 #define HCI_ERROR_CODE_PIN_KEY_MISSING 0x06
373 #define HCI_ERROR_CODE_MEM_CAP_EXCEEDED 0x07
374 #define HCI_ERROR_CODE_CONN_TIMEOUT 0x08
375 #define HCI_ERROR_CODE_CONN_LIMIT_EXCEEDED 0x09
376 #define HCI_ERROR_CODE_SYNCH_CONN_LIMIT_EXCEEDED 0x0A
377 #define HCI_ERROR_CODE_ACL_CONN_ALREADY_EXISTS 0x0B
378 #define HCI_ERROR_CODE_CMD_DISALLOWED 0x0C
379 #define HCI_ERROR_CODE_CONN_REJ_LIMITED_RESOURCES 0x0D
380 #define HCI_ERROR_CODE_CONN_REJECTED_SECURITY_REASONS 0x0E
381 #define HCI_ERROR_CODE_CONN_REJECTED_UNACCEPTABLE_BDADDR 0x0F
382 #define HCI_ERROR_CODE_CONN_ACCEPT_TIMEOUT_EXCEEDED 0x10
383 #define HCI_ERROR_CODE_UNSUPPORTED_FEATURE_PARAM_VALUE 0x11
384 #define HCI_ERROR_CODE_INVALID_HCI_CMD_PARAMS 0x12
385 #define HCI_ERROR_CODE_REMOTE_USER_TERM_CONN 0x13
386 #define HCI_ERROR_CODE_REMOTE_DEVICE_TERM_CONN_LOW_RESOURCES 0x14
387 #define HCI_ERROR_CODE_REMOTE_DEVICE_TERM_CONN_POWER_OFF 0x15
388 #define HCI_ERROR_CODE_CONN_TERM_BY_LOCAL_HOST 0x16
389 #define HCI_ERROR_CODE_REPEATED_ATTEMPTS 0x17
390 #define HCI_ERROR_CODE_PAIRING_NOT_ALLOWED 0x18
391 #define HCI_ERROR_CODE_UNKNOWN_LMP_PDU 0x19
392 #define HCI_ERROR_CODE_UNSUPPORTED_REMOTE_FEATURE 0x1A
393 #define HCI_ERROR_CODE_SCO_OFFSET_REJ 0x1B
394 #define HCI_ERROR_CODE_SCO_INTERVAL_REJ 0x1C
395 #define HCI_ERROR_CODE_SCO_AIR_MODE_REJ 0x1D
396 #define HCI_ERROR_CODE_INVALID_LMP_PARAMS 0x1E
397 #define HCI_ERROR_CODE_UNSPECIFIED_ERROR 0x1F
398 #define HCI_ERROR_CODE_UNSUPPORTED_LMP_PARAM_VAL 0x20
399 #define HCI_ERROR_CODE_ROLE_CHANGE_NOT_ALLOWED 0x21
400 #define HCI_ERROR_CODE_LMP_LL_RESP_TIMEOUT 0x22
401 #define HCI_ERROR_CODE_LMP_ERR_TRANSACTION_COLLISION 0x23
402 #define HCI_ERROR_CODE_LMP_PDU_NOT_ALLOWED 0x24
403 #define HCI_ERROR_CODE_ENCRYPT_MODE_NOT_ACCEPTABLE 0x25
404 #define HCI_ERROR_CODE_LINK_KEY_CAN_NOT_BE_CHANGED 0x26
405 #define HCI_ERROR_CODE_REQ_QOS_NOT_SUPPORTED 0x27
406 #define HCI_ERROR_CODE_INSTANT_PASSED 0x28
407 #define HCI_ERROR_CODE_PAIRING_WITH_UNIT_KEY_NOT_SUPPORTED 0x29
408 #define HCI_ERROR_CODE_DIFFERENT_TRANSACTION_COLLISION 0x2A
409 #define HCI_ERROR_CODE_RESERVED1 0x2B
410 #define HCI_ERROR_CODE_QOS_UNACCEPTABLE_PARAM 0x2C
411 #define HCI_ERROR_CODE_QOS_REJ 0x2D
412 #define HCI_ERROR_CODE_CHAN_ASSESSMENT_NOT_SUPPORTED 0x2E
413 #define HCI_ERROR_CODE_INSUFFICIENT_SECURITY 0x2F
414 #define HCI_ERROR_CODE_PARAM_OUT_OF_MANDATORY_RANGE 0x30
415 #define HCI_ERROR_CODE_RESERVED2 0x31
416 #define HCI_ERROR_CODE_ROLE_SWITCH_PENDING 0x32
417 #define HCI_ERROR_CODE_RESERVED3 0x33
418 #define HCI_ERROR_CODE_RESERVED_SLOT_VIOLATION 0x34
419 #define HCI_ERROR_CODE_ROLE_SWITCH_FAILED 0x35
420 #define HCI_ERROR_CODE_EXTENDED_INQUIRY_RESP_TOO_LARGE 0x36
421 #define HCI_ERROR_CODE_SIMPLE_PAIRING_NOT_SUPPORTED_BY_HOST 0x37
422 #define HCI_ERROR_CODE_HOST_BUSY_PAIRING 0x38
423 #define HCI_ERROR_CODE_CONN_REJ_NO_SUITABLE_CHAN_FOUND 0x39
424 #define HCI_ERROR_CODE_CONTROLLER_BUSY 0x3A
425 #define HCI_ERROR_CODE_UNACCEPTABLE_CONN_PARAMETERS 0x3B
426 #define HCI_ERROR_CODE_DIRECTED_ADV_TIMEOUT 0x3C
427 #define HCI_ERROR_CODE_CONN_TERM_MIC_FAILURE 0x3D
428 #define HCI_ERROR_CODE_CONN_FAILED_TO_ESTABLISH 0x3E
429 #define HCI_ERROR_CODE_MAC_CONN_FAILED 0x3F
430 #define HCI_ERROR_CODE_COARSE_CLOCK_ADJUST_REJECTED 0x40
431 #define HCI_ERROR_CODE_TYPE0_SUBMAP_NOT_DEFINED 0x41
432 #define HCI_ERROR_CODE_UNKNOWN_ADVERTISING_IDENTIFIER 0x42
433 #define HCI_ERROR_CODE_LIMIT_REACHED 0x43
434 #define HCI_ERROR_CODE_OPERATION_CANCELLED_BY_HOST 0x44
435 
441 #define HCI_MAX_NUM_CMD_BUFFERS LL_MAX_NUM_CMD_BUFFERS
442 #if defined(CC2540) || defined(CC2541) || defined(CC2541S)
443 #define HCI_MAX_NUM_DATA_BUFFERS LL_MAX_NUM_DATA_BUFFERS //<! Max Num Data Buffers
444 #endif // CC2540 | CC2541 | CC2541S
445 
449 // Send Data Packet Boundary Flags
450 #define FIRST_PKT_HOST_TO_CTRL LL_DATA_FIRST_PKT_HOST_TO_CTRL
451 #define CONTINUING_PKT LL_DATA_CONTINUATION_PKT
452 #define FIRST_PKT_CTRL_TO_HOST LL_DATA_FIRST_PKT_CTRL_TO_HOST
453 
454 
456 #define HCI_RSSI_NOT_AVAILABLE LL_RSSI_NOT_AVAILABLE
457 
462 #define HCI_DISCONNECT_AUTH_FAILURE HCI_ERROR_CODE_AUTH_FAILURE
463 #define HCI_DISCONNECT_REMOTE_USER_TERM HCI_ERROR_CODE_REMOTE_USER_TERM_CONN
464 #define HCI_DISCONNECT_REMOTE_DEV_LOW_RESOURCES HCI_ERROR_CODE_REMOTE_DEVICE_TERM_CONN_LOW_RESOURCES
465 #define HCI_DISCONNECT_REMOTE_DEV_POWER_OFF HCI_ERROR_CODE_REMOTE_DEVICE_TERM_CONN_POWER_OFF
466 #define HCI_DISCONNECT_UNSUPPORTED_REMOTE_FEATURE HCI_ERROR_CODE_UNSUPPORTED_REMOTE_FEATURE
467 #define HCI_DISCONNECT_KEY_PAIRING_NOT_SUPPORTED HCI_ERROR_CODE_PAIRING_WITH_UNIT_KEY_NOT_SUPPORTED
468 #define HCI_DISCONNECT_UNACCEPTABLE_CONN_INTERVAL HCI_ERROR_CODE_UNACCEPTABLE_CONN_INTERVAL
469 
475 // Tx Power Types
476 #define HCI_READ_CURRENT_TX_POWER_LEVEL LL_READ_CURRENT_TX_POWER_LEVEL
477 #define HCI_READ_MAX_TX_POWER_LEVEL LL_READ_MAX_TX_POWER_LEVEL
478 
484 #define HCI_CTRL_TO_HOST_FLOW_CTRL_OFF 0
485 #define HCI_CTRL_TO_HOST_FLOW_CTRL_ACL_ON_SYNCH_OFF 1
486 #define HCI_CTRL_TO_HOST_FLOW_CTRL_ACL_OFF_SYNCH_ON 2
487 #define HCI_CTRL_TO_HOST_FLOW_CTRL_ACL_ON_SYNCH_ON 3
488 
494 #define HCI_PUBLIC_DEVICE_ADDRESS LL_DEV_ADDR_TYPE_PUBLIC
495 #define HCI_RANDOM_DEVICE_ADDRESS LL_DEV_ADDR_TYPE_RANDOM
496 
502 #define HCI_CONNECTABLE_UNDIRECTED_ADV LL_ADV_CONNECTABLE_UNDIRECTED_EVT
503 #define HCI_CONNECTABLE_DIRECTED_HDC_ADV LL_ADV_CONNECTABLE_DIRECTED_HDC_EVT
504 #define HCI_SCANNABLE_UNDIRECTED LL_ADV_SCANNABLE_UNDIRECTED_EVT
505 #define HCI_NONCONNECTABLE_UNDIRECTED_ADV LL_ADV_NONCONNECTABLE_UNDIRECTED_EVT
506 #define HCI_CONNECTABLE_DIRECTED_LDC_ADV LL_ADV_CONNECTABLE_DIRECTED_LDC_EVT
507 
513 #define HCI_ADV_CHAN_37 LL_ADV_CHAN_37
514 #define HCI_ADV_CHAN_38 LL_ADV_CHAN_38
515 #define HCI_ADV_CHAN_39 LL_ADV_CHAN_39
516 #define HCI_ADV_CHAN_ALL (LL_ADV_CHAN_37 | LL_ADV_CHAN_38 | LL_ADV_CHAN_39)
517 
523 #define HCI_ADV_AL_POLICY_ANY_REQ LL_ADV_AL_POLICY_ANY_REQ
524 #define HCI_ADV_AL_POLICY_AL_SCAN_REQ LL_ADV_AL_POLICY_AL_SCAN_REQ
525 #define HCI_ADV_AL_POLICY_AL_CONNECT_IND LL_ADV_AL_POLICY_AL_CONNECT_IND
526 #define HCI_ADV_AL_POLICY_AL_ALL_REQ LL_ADV_AL_POLICY_AL_ALL_REQ
527 
533 #define HCI_ENABLE_ADV LL_ADV_MODE_ON
534 #define HCI_DISABLE_ADV LL_ADV_MODE_OFF
535 
541 #define HCI_SCAN_PASSIVE LL_SCAN_PASSIVE
542 #define HCI_SCAN_ACTIVE LL_SCAN_ACTIVE
543 
549 // Scan accept List Policy
550 #define HCI_SCAN_AL_POLICY_ANY_ADV_PKTS LL_SCAN_AL_POLICY_ANY_ADV_PKTS
551 #define HCI_SCAN_AL_POLICY_USE_ACCEPT_LIST LL_SCAN_AL_POLICY_USE_ACCEPT_LIST
552 
558 // Scan Filtering
559 #define HCI_FILTER_REPORTS_DISABLE LL_FILTER_REPORTS_DISABLE
560 #define HCI_FILTER_REPORTS_ENABLE LL_FILTER_REPORTS_ENABLE
561 
567 // Scan Commands
568 #define HCI_SCAN_STOP LL_SCAN_STOP
569 #define HCI_SCAN_START LL_SCAN_START
570 
576 #define HCI_INIT_AL_POLICY_USE_PEER_ADDR LL_INIT_AL_POLICY_USE_PEER_ADDR
577 #define HCI_INIT_AL_POLICY_USE_ACCEPT_LIST LL_INIT_AL_POLICY_USE_ACCEPT_LIST
578 
584 #define HCI_ENCRYPTION_OFF LL_ENCRYPTION_OFF
585 #define HCI_ENCRYPTION_ON LL_ENCRYPTION_ON
586 
592 #define HCI_DIRECT_TEST_PAYLOAD_PRBS9 LL_DIRECT_TEST_PAYLOAD_PRBS9
593 #define HCI_DIRECT_TEST_PAYLOAD_0x0F LL_DIRECT_TEST_PAYLOAD_0x0F
594 #define HCI_DIRECT_TEST_PAYLOAD_0x55 LL_DIRECT_TEST_PAYLOAD_0x55
595 #define HCI_DIRECT_TEST_PAYLOAD_PRBS15 LL_DIRECT_TEST_PAYLOAD_PRBS15
596 #define HCI_DIRECT_TEST_PAYLOAD_0xFF LL_DIRECT_TEST_PAYLOAD_0xFF
597 #define HCI_DIRECT_TEST_PAYLOAD_0x00 LL_DIRECT_TEST_PAYLOAD_0x00
598 #define HCI_DIRECT_TEST_PAYLOAD_0xF0 LL_DIRECT_TEST_PAYLOAD_0xF0
599 #define HCI_DIRECT_TEST_PAYLOAD_0xAA LL_DIRECT_TEST_PAYLOAD_0xAA
600 
606 #define HCI_DTM_STANDARD_MODULATION_INDEX LL_DTM_STANDARD_MODULATION_INDEX
607 #define HCI_DTM_STABLE_MODULATION_INDEX LL_DTM_STABLE_MODULATION_INDEX
608 
614 #define HCI_EXT_DTM_TX_CONTINUOUS LL_EXT_DTM_TX_CONTINUOUS
615 
621 #define HCI_DISABLE_ADDR_RESOLUTION LL_DISABLE_ADDR_RESOLUTION
622 #define HCI_ENABLE_ADDR_RESOLUTION LL_ENABLE_ADDR_RESOLUTION
623 #define HCI_NETWORK_PRIVACY_MODE LL_NETWORK_PRIVACY_MODE
624 #define HCI_DEVICE_PRIVACY_MODE LL_DEVICE_PRIVACY_MODE
625 
631 #define HCI_PHY_USE_PHY_PARAM LL_PHY_USE_PHY_PARAM
632 #define HCI_PHY_USE_ANY_PHY LL_PHY_USE_ANY_PHY
633 #define HCI_PHY_1_MBPS LL_PHY_1_MBPS
634 #define HCI_PHY_2_MBPS LL_PHY_2_MBPS
635 #define HCI_PHY_CODED LL_PHY_CODED
636 
642 #define PHY_UPDATE_COMPLETE_EVENT_1M 1
643 #define PHY_UPDATE_COMPLETE_EVENT_2M 2
644 #define PHY_UPDATE_COMPLETE_EVENT_CODED 3
645 
651 #define HCI_EXT_RX_GAIN_STD LL_EXT_RX_GAIN_STD
652 #define HCI_EXT_RX_GAIN_HIGH LL_EXT_RX_GAIN_HIGH
653 
659 #ifndef CC23X0
660 #if defined( CC26XX ) || defined( CC13XX ) || defined ( CC33xx )
661 #define HCI_EXT_TX_POWER_MINUS_20_DBM LL_EXT_TX_POWER_MINUS_20_DBM
662 #define HCI_EXT_TX_POWER_MINUS_18_DBM LL_EXT_TX_POWER_MINUS_18_DBM
663 #define HCI_EXT_TX_POWER_MINUS_15_DBM LL_EXT_TX_POWER_MINUS_15_DBM
664 #define HCI_EXT_TX_POWER_MINUS_12_DBM LL_EXT_TX_POWER_MINUS_12_DBM
665 #define HCI_EXT_TX_POWER_MINUS_10_DBM LL_EXT_TX_POWER_MINUS_10_DBM
666 #define HCI_EXT_TX_POWER_MINUS_9_DBM LL_EXT_TX_POWER_MINUS_9_DBM
667 #define HCI_EXT_TX_POWER_MINUS_6_DBM LL_EXT_TX_POWER_MINUS_6_DBM
668 #define HCI_EXT_TX_POWER_MINUS_5_DBM LL_EXT_TX_POWER_MINUS_5_DBM
669 #define HCI_EXT_TX_POWER_MINUS_3_DBM LL_EXT_TX_POWER_MINUS_3_DBM
670 #define HCI_EXT_TX_POWER_0_DBM LL_EXT_TX_POWER_0_DBM
671 #define HCI_EXT_TX_POWER_1_DBM LL_EXT_TX_POWER_1_DBM
672 #define HCI_EXT_TX_POWER_2_DBM LL_EXT_TX_POWER_2_DBM
673 #define HCI_EXT_TX_POWER_3_DBM LL_EXT_TX_POWER_3_DBM
674 #define HCI_EXT_TX_POWER_4_DBM LL_EXT_TX_POWER_4_DBM
675 #define HCI_EXT_TX_POWER_5_DBM LL_EXT_TX_POWER_5_DBM
676 #if defined( CC13X2P ) || defined( CC33xx )
677 #define HCI_EXT_TX_POWER_P2_14_DBM_P4_6_DBM LL_EXT_TX_POWER_P2_14_DBM_P4_6_DBM
678 #define HCI_EXT_TX_POWER_P2_15_DBM_P4_7_DBM LL_EXT_TX_POWER_P2_15_DBM_P4_7_DBM
679 #define HCI_EXT_TX_POWER_P2_16_DBM_P4_8_DBM LL_EXT_TX_POWER_P2_16_DBM_P4_8_DBM
680 #define HCI_EXT_TX_POWER_P2_17_DBM_P4_9_DBM LL_EXT_TX_POWER_P2_17_DBM_P4_9_DBM
681 #define HCI_EXT_TX_POWER_P2_18_DBM_P4_10_DBM LL_EXT_TX_POWER_P2_18_DBM_P4_10_DBM
682 #define HCI_EXT_TX_POWER_P2_19_DBM LL_EXT_TX_POWER_P2_19_DBM
683 #define HCI_EXT_TX_POWER_P2_20_DBM LL_EXT_TX_POWER_P2_20_DBM
684 #endif // CC13X2P || CC33xx
685 #else // CC254x
686 #define HCI_EXT_TX_POWER_MINUS_23_DBM LL_EXT_TX_POWER_MINUS_23_DBM
687 #define HCI_EXT_TX_POWER_MINUS_6_DBM LL_EXT_TX_POWER_MINUS_6_DBM
688 #define HCI_EXT_TX_POWER_0_DBM LL_EXT_TX_POWER_0_DBM
689 #define HCI_EXT_TX_POWER_4_DBM LL_EXT_TX_POWER_4_DBM
690 #endif // CC26XX/CC13XX
691 #endif //CC23X0
692 
698 #define HCI_EXT_ENABLE_ONE_PKT_PER_EVT LL_EXT_ENABLE_ONE_PKT_PER_EVT
699 #define HCI_EXT_DISABLE_ONE_PKT_PER_EVT LL_EXT_DISABLE_ONE_PKT_PER_EVT
700 
702 
704 
708 #define HCI_EXT_ENABLE_CLK_DIVIDE_ON_HALT LL_EXT_ENABLE_CLK_DIVIDE_ON_HALT
709 #define HCI_EXT_DISABLE_CLK_DIVIDE_ON_HALT LL_EXT_DISABLE_CLK_DIVIDE_ON_HALT
710 
712 
714 
718 #define HCI_EXT_NV_IN_USE LL_EXT_NV_IN_USE
719 #define HCI_EXT_NV_NOT_IN_USE LL_EXT_NV_NOT_IN_USE
720 
726 #define HCI_EXT_ENABLE_FAST_TX_RESP_TIME LL_EXT_ENABLE_FAST_TX_RESP_TIME
727 #define HCI_EXT_DISABLE_FAST_TX_RESP_TIME LL_EXT_DISABLE_FAST_TX_RESP_TIME
728 
734 #define HCI_EXT_ENABLE_PL_OVERRIDE LL_EXT_ENABLE_PL_OVERRIDE
735 #define HCI_EXT_DISABLE_PL_OVERRIDE LL_EXT_DISABLE_PL_OVERRIDE
736 
742 #define HCI_EXT_TX_MODULATED_CARRIER LL_EXT_TX_MODULATED_CARRIER
743 #define HCI_EXT_TX_UNMODULATED_CARRIER LL_EXT_TX_UNMODULATED_CARRIER
744 
750 #define HCI_PTM_SET_FREQ_TUNE_DOWN LL_EXT_SET_FREQ_TUNE_DOWN
751 #define HCI_PTM_SET_FREQ_TUNE_UP LL_EXT_SET_FREQ_TUNE_UP
752 
754 
756 
760 #define HCI_EXT_PM_IO_PORT_P0 LL_EXT_PM_IO_PORT_P0
761 #define HCI_EXT_PM_IO_PORT_P1 LL_EXT_PM_IO_PORT_P1
762 #define HCI_EXT_PM_IO_PORT_P2 LL_EXT_PM_IO_PORT_P2
763 #define HCI_EXT_PM_IO_PORT_NONE LL_EXT_PM_IO_PORT_NONE
764 
765 #define HCI_EXT_PM_IO_PORT_PIN0 LL_EXT_PM_IO_PORT_PIN0
766 #define HCI_EXT_PM_IO_PORT_PIN1 LL_EXT_PM_IO_PORT_PIN1
767 #define HCI_EXT_PM_IO_PORT_PIN2 LL_EXT_PM_IO_PORT_PIN2
768 #define HCI_EXT_PM_IO_PORT_PIN3 LL_EXT_PM_IO_PORT_PIN3
769 #define HCI_EXT_PM_IO_PORT_PIN4 LL_EXT_PM_IO_PORT_PIN4
770 #define HCI_EXT_PM_IO_PORT_PIN5 LL_EXT_PM_IO_PORT_PIN5
771 #define HCI_EXT_PM_IO_PORT_PIN6 LL_EXT_PM_IO_PORT_PIN6
772 #define HCI_EXT_PM_IO_PORT_PIN7 LL_EXT_PM_IO_PORT_PIN7
773 
775 
781 #define HCI_EXT_PER_RESET LL_EXT_PER_RESET
782 #define HCI_EXT_PER_READ LL_EXT_PER_READ
783 
785 
787 
791 #define HCI_EXT_HALT_DURING_RF_DISABLE LL_EXT_HALT_DURING_RF_DISABLE
792 #define HCI_EXT_HALT_DURING_RF_ENABLE LL_EXT_HALT_DURING_RF_ENABLE
793 
795 
797 
801 #define HCI_EXT_SET_USER_REVISION LL_EXT_SET_USER_REVISION
802 #define HCI_EXT_READ_BUILD_REVISION LL_EXT_READ_BUILD_REVISION
803 
809 #define HCI_EXT_RESET_SYSTEM_HARD LL_EXT_RESET_SYSTEM_HARD
810 #define HCI_EXT_RESET_SYSTEM_SOFT LL_EXT_RESET_SYSTEM_SOFT
811 
813 
815 
819 #define HCI_EXT_DISABLE_OVERLAPPED_PROCESSING LL_EXT_DISABLE_OVERLAPPED_PROCESSING
820 #define HCI_EXT_ENABLE_OVERLAPPED_PROCESSING LL_EXT_ENABLE_OVERLAPPED_PROCESSING
821 
823 
825 
829 #define HCI_EXT_DISABLE_NUM_COMPL_PKTS_ON_EVENT LL_EXT_DISABLE_NUM_COMPL_PKTS_ON_EVENT
830 #define HCI_EXT_ENABLE_NUM_COMPL_PKTS_ON_EVENT LL_EXT_ENABLE_NUM_COMPL_PKTS_ON_EVENT
831 
837 #define HCI_EXT_DISABLE_SCAN_REQUEST_REPORT LL_EXT_DISABLE_SCAN_REQUEST_REPORT
838 #define HCI_EXT_ENABLE_SCAN_REQUEST_REPORT LL_EXT_ENABLE_SCAN_REQUEST_REPORT
839 
849 #define HCI_LINK_TYPE_SCO_BUFFER_OVERFLOW 0
850 #define HCI_LINK_TYPE_ACL_BUFFER_OVERFLOW 1
851 
859 #define HCI_EXT_RF_SETUP_1M_PHY LL_EXT_RF_SETUP_1M_PHY
860 #define HCI_EXT_RF_SETUP_2M_PHY LL_EXT_RF_SETUP_2M_PHY
861 #define HCI_EXT_RF_SETUP_CODED_S8_PHY LL_EXT_RF_SETUP_CODED_S8_PHY
862 #define HCI_EXT_RF_SETUP_CODED_S2_PHY LL_EXT_RF_SETUP_CODED_S2_PHY
863 
869  #define HCI_EXT_STATS_RESET LL_EXT_STATS_RESET
870  #define HCI_EXT_STATS_READ LL_EXT_STATS_READ
871 
876 /*
877  * TYPEDEFS
878  */
879 
881 typedef uint8 hciStatus_t;
883 
889 typedef struct
891 {
893  uint8 BLEEventCode;
894  uint8 status;
896  uint8 role;
897  uint8 peerAddrType;
898  uint8 peerAddr[B_ADDR_LEN];
899  uint16 connInterval;
900  uint16 connLatency;
901  uint16 connTimeout;
904 
906 typedef struct
907 {
909  uint8 BLEEventCode;
910  uint8 status;
912  uint8 role;
913  uint8 peerAddrType;
914  uint8 peerAddr[B_ADDR_LEN];
915  uint16 connInterval;
916  uint16 connLatency;
917  uint16 connTimeout;
919  // Note: These fields normally follow peerAddr. Put here for Host optimization.
920  uint8 localRPA[B_ADDR_LEN];
921  uint8 peerRPA[B_ADDR_LEN];
923 
926 {
930 
932 typedef struct
933 {
934  uint8 eventType;
935  uint8 addrType;
936  uint8 addr[B_ADDR_LEN];
937  uint8 dataLen;
938  uint8 rspData[B_MAX_ADV_LEN];
939  int8 rssi;
941 
943 typedef struct
944 {
946  uint8 BLEEventCode;
947  uint8 numDevices;
950 
952 typedef struct
953 {
955  uint8 BLEEventCode;
956  uint8 eventType;
957  uint8 peerAddrType;
958  uint8 peerAddr[B_ADDR_LEN];
959  uint8 bleChan;
960  int8 rssi;
962 
964 typedef struct
965 {
967  uint8 BLEEventCode;
968  uint16 connHandle;
969  uint8 nextDataChan;
970  uint8 newChanMap[LL_NUM_BYTES_FOR_CHAN_MAP];
972 
974 typedef struct
975 {
977  uint8 BLEEventCode;
978  uint8 status;
980  uint16 connInterval;
981  uint16 connLatency;
982  uint16 connTimeout;
984 
986 typedef struct
987 {
989  uint8 BLEEventCode;
990  uint8 status;
992  uint8 features[8];
994 
996 typedef struct
997 {
999  uint8 BLEEventCode;
1000  uint16 connHandle;
1001  uint8 reason;
1002  uint8 encEnable;
1004 
1006 typedef struct
1007 {
1010  uint16 connHandle;
1011  uint8 random[B_RANDOM_NUM_SIZE];
1014 
1016 typedef struct
1017 {
1019  uint8 numHandles;
1023 
1025 typedef struct
1026 {
1029  uint16 cmdOpcode;
1030  uint8 *pReturnParam;
1032 
1034 typedef struct
1035 {
1037  uint8 length;
1038  uint16 cmdOpcode;
1039  uint8 *pEventParam;
1041 
1043 typedef struct
1044 {
1046  uint8 cmdStatus;
1048  uint16 cmdOpcode;
1050 
1052 typedef struct
1053 {
1057 
1059 typedef struct
1060 {
1062  uint8 status;
1063  uint16 connHandle;
1064  uint8 reason;
1066 
1068 typedef struct
1069 {
1071  uint8 linkType;
1073 
1075 typedef struct
1076 {
1078  uint16 connHandle;
1080 
1082 typedef struct
1083 {
1085  uint16 connHandle;
1086  uint16 cid;
1088 
1090 typedef struct
1091 {
1094  uint8 status;
1095  uint16 connHandle;
1096  uint16 Interval_Min;
1097  uint16 Interval_Max;
1098  uint16 Latency;
1099  uint16 Timeout;
1101 
1103 typedef struct
1104 {
1107  uint8 status;
1108  uint16 connHandle;
1109  uint8 txPhy;
1110  uint8 rxPhy;
1112 
1114 typedef struct
1115 {
1118  uint16 connHandle;
1119  uint16 maxTxOctets;
1120  uint16 maxTxTime;
1121  uint16 maxRxOctets;
1122  uint16 maxRxTime;
1124 
1126 typedef struct
1127 {
1130  uint8 status;
1131  uint8 p256Key[LL_SC_P256_KEY_LEN];
1133 
1135 typedef struct
1136 {
1139  uint8 status;
1140  uint8 dhKey[LL_SC_DHKEY_LEN];
1142 
1144 typedef struct
1145 {
1148  uint16 connHandle;
1149  uint8 phy;
1150  uint8 dataChIndex;
1151  uint16 rssi;
1152  uint8 rssiAntenna;
1153  uint8 cteType;
1155  uint8 status;
1156  uint16 connEvent;
1157  uint8 sampleCount;
1158  int8 *iqSamples;
1160 
1162 typedef struct
1163 {
1166  uint8 status;
1167  uint16 connHandle;
1169 
1171 typedef struct
1172 {
1175  uint16 totalDataLen;
1176  uint8 eventIndex;
1177  uint16 connHandle;
1178  uint8 phy;
1179  uint8 dataChIndex;
1180  uint16 rssi;
1181  uint8 rssiAntenna;
1182  uint8 cteType;
1184  uint8 status;
1185  uint16 connEvent;
1186  uint8 dataLen;
1187  uint8 sampleRate;
1188  uint8 sampleSize;
1189  uint8 sampleCtrl;
1190  void *iqSamples;
1192 
1194 typedef struct
1195 {
1198  uint16 syncHandle;
1200  uint16 rssi;
1201  uint8 rssiAntenna;
1202  uint8 cteType;
1204  uint8 status;
1205  uint16 eventCounter;
1206  uint8 sampleCount;
1207  int8 *iqSamples;
1209 
1211 typedef struct
1212 {
1215  uint16 totalDataLen;
1216  uint8 eventIndex;
1217  uint16 syncHandle;
1219  uint16 rssi;
1220  uint8 rssiAntenna;
1221  uint8 cteType;
1223  uint8 status;
1224  uint16 eventCounter;
1225  uint8 dataLen;
1226  uint8 sampleRate;
1227  uint8 sampleSize;
1228  uint8 sampleCtrl;
1229  void *iqSamples;
1231 
1233 typedef struct
1234 {
1237  uint8 status;
1238  uint16 syncHandle;
1239  uint8 sid;
1240  uint8 addrType;
1241  uint8 address[B_ADDR_LEN];
1242  uint8 phy;
1246 
1248 typedef struct
1249 {
1252  uint16 syncHandle;
1253  int8 txPower;
1254  int8 rssi;
1255  uint8 cteType;
1256  uint8 dataStatus;
1257  uint8 dataLen;
1258  uint8 *data;
1260 
1262 typedef struct
1263 {
1266  uint16 syncHandle;
1268 
1269 
1271 typedef struct
1272 {
1273  uint8 status;
1274  uint16 dataPktLen;
1275  uint8 numDataPkts;
1277 
1279 typedef struct
1280 {
1283  uint16 connHandle;
1284  uint8 chSelAlgo;
1286 
1288 typedef struct
1289 {
1291  uint8 *pData;
1292 } hciPacket_t;
1293 
1295 typedef struct
1296 {
1298  uint8 pktType;
1299  uint16 connHandle;
1300  uint8 pbFlag;
1301  uint16 pktLen;
1302  uint8 *pData;
1303 } hciDataPacket_t;
1304 
1306 
1307 // OSAL HCI_DATA_EVENT message format. This message is used to forward incoming
1308 // data messages up to an application
1309 typedef struct
1310 {
1311  osal_event_hdr_t hdr;
1312  uint16 connHandle;
1313  uint8 pbFlag;
1314  uint16 len;
1315  uint8 *pData;
1316 } hciDataEvent_t;
1317 
1319 
1320 #if defined( CC26XX ) || defined( CC13XX ) || defined( CC23X0 )
1321 PACKED_TYPEDEF_STRUCT
1322 #else // CC254x
1323 typedef struct
1324 #endif // CC26XX/CC13XX
1325 {
1326  uint8 connId;
1327  uint8 role;
1328  uint8 addr[LL_DEVICE_ADDR_LEN];
1329  uint8 addrType;
1330 } hciConnInfo_t;
1331 
1332 #if defined( CC26XX ) || defined( CC13XX ) || defined( CC23X0 )
1333 PACKED_TYPEDEF_STRUCT
1334 #else // CC254x
1335 typedef struct
1336 #endif // CC26XX/CC13XX
1337 {
1338  uint32_t accessAddr;
1339  uint16_t connInterval;
1340  uint8_t hopValue;
1341  uint16_t mSCA;
1342  uint8_t nextChan;
1343  uint8_t chanMap[LL_NUM_BYTES_FOR_CHAN_MAP];
1344  uint8_t crcInit[LL_PKT_CRC_LEN];
1345  uint8_t ownAddrType;
1346 }hciActiveConnInfo_t;
1347 
1348 #if defined( CC26XX ) || defined( CC13XX ) || defined( CC23X0 )
1349 PACKED_TYPEDEF_STRUCT
1350 #else // CC254x
1351 typedef struct
1352 #endif // CC26XX/CC13XX
1353 {
1354  uint16 numPkts;
1355  uint16 numCrcErr;
1356  uint16 numEvents;
1357  uint16 numMMissedEvents;
1358 } hciPER_t;
1359 
1362 /*
1363  * LOCAL VARIABLES
1364  */
1365 
1366 /*
1367  * GLOBAL VARIABLES
1368  */
1369 
1371 
1382 extern void *HCI_bm_alloc( uint16 size );
1383 
1394 extern void HCI_bm_free( uint8* pBuf );
1395 
1409 extern uint8 HCI_ValidConnTimeParams( uint16 connIntervalMin,
1410  uint16 connIntervalMax,
1411  uint16 connLatency,
1412  uint16 connTimeout );
1413 
1419 extern void HCI_TestAppTaskRegister( uint8 taskID );
1420 
1426 extern void HCI_GAPTaskRegister( uint8 taskID );
1427 
1433 extern void HCI_L2CAPTaskRegister( uint8 taskID );
1434 
1440 extern void HCI_SMPTaskRegister( uint8 taskID );
1441 
1447 extern void HCI_ExtTaskRegister( uint8 taskID );
1448 
1473 extern hciStatus_t HCI_SendDataPkt( uint16 connHandle,
1474  uint8 pbFlag,
1475  uint16 pktLen,
1476  uint8 *pData );
1477 
1493 extern hciStatus_t HCI_DisconnectCmd( uint16 connHandle,
1494  uint8 reason );
1495 
1497 
1515 extern hciStatus_t HCI_ReadRemoteVersionInfoCmd( uint16 connHandle );
1516 
1517 
1531 extern hciStatus_t HCI_SetEventMaskCmd( uint8 *pMask );
1532 
1533 
1547 extern hciStatus_t HCI_SetEventMaskPage2Cmd( uint8 *pMask );
1548 
1557 extern hciStatus_t HCI_ResetCmd( void );
1558 
1570 extern hciStatus_t HCI_ReadTransmitPowerLevelCmd( uint16 connHandle,
1571  uint8 txPwrType );
1572 
1574 
1588 extern hciStatus_t HCI_SetControllerToHostFlowCtrlCmd( uint8 flowControlEnable );
1589 
1609 extern hciStatus_t HCI_HostBufferSizeCmd( uint16 hostAclPktLen,
1610  uint8 hostSyncPktLen,
1611  uint16 hostTotalNumAclPkts,
1612  uint16 hostTotalNumSyncPkts );
1613 
1615 
1644 extern hciStatus_t HCI_HostNumCompletedPktCmd( uint8 numHandles,
1645  uint16 *connHandles,
1646  uint16 *numCompletedPkts );
1647 
1659 extern hciStatus_t HCI_ReadAuthPayloadTimeoutCmd( uint16 connHandle,
1660  uint16 *aptoValue );
1661 
1673 extern hciStatus_t HCI_WriteAuthPayloadTimeoutCmd( uint16 connHandle,
1674  uint16 aptoValue );
1675 
1684 extern hciStatus_t HCI_ReadLocalVersionInfoCmd( void );
1685 
1694 extern hciStatus_t HCI_ReadLocalSupportedCommandsCmd( void );
1695 
1704 extern hciStatus_t HCI_ReadLocalSupportedFeaturesCmd( void );
1705 
1714 extern hciStatus_t HCI_ReadBDADDRCmd( void );
1715 
1732 extern hciStatus_t HCI_ReadRssiCmd( uint16 connHandle );
1733 
1747 extern hciStatus_t HCI_LE_SetEventMaskCmd( uint8 *pEventMask );
1748 
1757 extern hciStatus_t HCI_LE_ReadBufSizeCmd( void );
1758 
1768 extern hciStatus_t HCI_LE_ReadLocalSupportedFeaturesCmd( void );
1769 
1781 extern hciStatus_t HCI_LE_SetRandomAddressCmd( uint8 *pRandAddr );
1782 
1800 extern hciStatus_t HCI_LE_SetAdvParamCmd( uint16 advIntervalMin,
1801  uint16 advIntervalMax,
1802  uint8 advType,
1803  uint8 ownAddrType,
1804  uint8 directAddrType,
1805  uint8 *directAddr,
1806  uint8 advChannelMap,
1807  uint8 advFilterPolicy );
1808 
1820 extern hciStatus_t HCI_LE_SetAdvDataCmd( uint8 dataLen,
1821  uint8 *pData );
1834 hciStatus_t HCI_LE_SetExtAdvData( aeSetDataCmd_t *pCmdParams );
1835 
1848 hciStatus_t HCI_LE_SetExtScanRspData( aeSetDataCmd_t *pCmdParams );
1849 
1863 hciStatus_t HCI_LE_SetAdvStatus( aeEnableCmd_t *pCmdParams );
1864 
1876 extern hciStatus_t HCI_LE_SetScanRspDataCmd( uint8 dataLen,
1877  uint8 *pData );
1878 
1889 extern hciStatus_t HCI_LE_SetAdvEnableCmd( uint8 advEnable );
1890 
1899 extern hciStatus_t HCI_LE_ReadAdvChanTxPowerCmd( void );
1900 
1917 extern hciStatus_t HCI_LE_SetScanParamCmd( uint8 scanType,
1918  uint16 scanInterval,
1919  uint16 scanWindow,
1920  uint8 ownAddrType,
1921  uint8 filterPolicy );
1922 
1935 extern hciStatus_t HCI_LE_SetScanEnableCmd( uint8 scanEnable,
1936  uint8 filterDuplicates );
1937 
1962 extern hciStatus_t HCI_LE_CreateConnCmd( uint16 scanInterval,
1963  uint16 scanWindow,
1964  uint8 initFilterPolicy,
1965  uint8 addrTypePeer,
1966  uint8 *peerAddr,
1967  uint8 ownAddrType,
1968  uint16 connIntervalMin,
1969  uint16 connIntervalMax,
1970  uint16 connLatency,
1971  uint16 connTimeout,
1972  uint16 minLen,
1973  uint16 maxLen );
1974 
1983 extern hciStatus_t HCI_LE_CreateConnCancelCmd( void );
1984 
1993 extern hciStatus_t HCI_LE_ReadAcceptListSizeCmd( void );
1994 
1995 
2004 extern hciStatus_t HCI_LE_ClearAcceptListCmd( void );
2005 
2006 
2018 extern hciStatus_t HCI_LE_AddAcceptListCmd( uint8 addrType,
2019  uint8 *devAddr );
2020 
2021 
2033 extern hciStatus_t HCI_LE_RemoveAcceptListCmd( uint8 addrType,
2034  uint8 *devAddr );
2035 
2053 extern hciStatus_t HCI_LE_ConnUpdateCmd( uint16 connHandle,
2054  uint16 connIntervalMin,
2055  uint16 connIntervalMax,
2056  uint16 connLatency,
2057  uint16 connTimeout,
2058  uint16 minLen,
2059  uint16 maxLen );
2060 
2072 extern hciStatus_t HCI_LE_SetHostChanClassificationCmd( uint8 *chanMap );
2073 
2084 extern hciStatus_t HCI_EXT_SetHostDefChanClassificationCmd( uint8 *chanMap );
2085 
2097 extern hciStatus_t HCI_EXT_SetHostConnChanClassificationCmd( uint8 *chanMap , uint16 connID );
2098 
2110 extern hciStatus_t HCI_LE_ReadChannelMapCmd( uint16 connHandle );
2111 
2124 extern hciStatus_t HCI_LE_ReadRemoteUsedFeaturesCmd( uint16 connHandle );
2125 
2146 extern hciStatus_t HCI_LE_EncryptCmd( uint8 *key,
2147  uint8 *plainText );
2148 
2171 extern hciStatus_t HCI_LE_RandCmd( void );
2172 
2188 extern hciStatus_t HCI_LE_StartEncyptCmd( uint16 connHandle,
2189  uint8 *random,
2190  uint8 *encDiv,
2191  uint8 *ltk );
2192 
2204 extern hciStatus_t HCI_LE_LtkReqReplyCmd( uint16 connHandle,
2205  uint8 *ltk );
2206 
2207 
2218 extern hciStatus_t HCI_LE_LtkReqNegReplyCmd( uint16 connHandle );
2219 
2228 extern hciStatus_t HCI_LE_ReadSupportedStatesCmd( void );
2229 
2242 extern hciStatus_t HCI_LE_ReceiverTestCmd( uint8 rxChan );
2243 
2260 extern hciStatus_t HCI_LE_TransmitterTestCmd( uint8 txChan,
2261  uint8 dataLen,
2262  uint8 pktPayload );
2263 
2274 extern hciStatus_t HCI_LE_TestEndCmd( void );
2275 
2276 // V4.1
2277 
2299 extern hciStatus_t HCI_LE_RemoteConnParamReqReplyCmd( uint16 connHandle,
2300  uint16 connIntervalMin,
2301  uint16 connIntervalMax,
2302  uint16 connLatency,
2303  uint16 connTimeout,
2304  uint16 minLen,
2305  uint16 maxLen );
2306 
2323 extern hciStatus_t HCI_LE_RemoteConnParamReqNegReplyCmd( uint16 connHandle,
2324  uint8 reason );
2325 
2326 // V4.2 Extended Data Length
2327 
2343 extern hciStatus_t HCI_LE_SetDataLenCmd( uint16 connHandle,
2344  uint16 txOctets,
2345  uint16 txTime );
2346 
2358 extern hciStatus_t HCI_LE_ReadSuggestedDefaultDataLenCmd( void );
2359 
2375 extern hciStatus_t HCI_LE_WriteSuggestedDefaultDataLenCmd( uint16 txOctets,
2376  uint16 txTime );
2377 
2389 extern hciStatus_t HCI_LE_ReadMaxDataLenCmd( void );
2390 
2391 // V4.2 Privacy 1.2
2392 
2409 extern hciStatus_t HCI_LE_AddDeviceToResolvingListCmd( uint8 peerIdAddrType,
2410  uint8 *peerIdAddr,
2411  uint8 *peerIRK,
2412  uint8 *localIRK );
2413 
2428 extern hciStatus_t HCI_LE_RemoveDeviceFromResolvingListCmd( uint8 peerIdAddrType,
2429  uint8 *peerIdAddr );
2430 
2442 extern hciStatus_t HCI_LE_ClearResolvingListCmd( void );
2443 
2455 extern hciStatus_t HCI_LE_ReadResolvingListSizeCmd( void );
2456 
2474 extern hciStatus_t HCI_LE_ReadPeerResolvableAddressCmd( uint8 peerIdAddrType,
2475  uint8 *peerIdAddr );
2476 
2495 extern hciStatus_t HCI_LE_ReadLocalResolvableAddressCmd( uint8 localIdAddrType,
2496  uint8 *localIdAddr );
2497 
2512 extern hciStatus_t HCI_LE_SetAddressResolutionEnableCmd( uint8 addrResolutionEnable );
2513 
2529 extern hciStatus_t HCI_LE_SetResolvablePrivateAddressTimeoutCmd( uint16 rpaTimeout );
2530 
2547 extern hciStatus_t HCI_LE_SetPrivacyModeCmd( uint8 peerIdAddrType,
2548  uint8 *peerIdAddr,
2549  uint8 privacyMode );
2550 
2551 // V4.2 Secure Connections
2552 
2568 extern hciStatus_t HCI_LE_ReadLocalP256PublicKeyCmd( void );
2569 
2588 extern hciStatus_t HCI_LE_GenerateDHKeyCmd( uint8 *publicKey );
2589 
2590 
2609 extern hciStatus_t HCI_LE_GenerateDHKeyV2Cmd( uint8 *publicKey, uint8 keyType );
2610 
2611 // V5.0 2M and Coded PHY
2612 
2628 extern hciStatus_t HCI_LE_ReadPhyCmd( uint16 connHandle );
2629 
2645 extern hciStatus_t HCI_LE_SetDefaultPhyCmd( uint8 allPhys,
2646  uint8 txPhy,
2647  uint8 rxPhy );
2648 
2649 
2664 extern hciStatus_t HCI_LE_SetPhyCmd( uint16 connHandle,
2665  uint8 allPhys,
2666  uint8 txPhy,
2667  uint8 rxPhy,
2668  uint16 phyOpts );
2669 
2670 
2686 extern hciStatus_t HCI_LE_EnhancedRxTestCmd( uint8 rxChan,
2687  uint8 rxPhy,
2688  uint8 modIndex );
2689 
2690 
2707 extern hciStatus_t HCI_LE_EnhancedTxTestCmd( uint8 txChan,
2708  uint8 payloadLen,
2709  uint8 payloadType,
2710  uint8 txPhy );
2731 extern hciStatus_t HCI_LE_EnhancedCteRxTestCmd( uint8 rxChan,
2732  uint8 rxPhy,
2733  uint8 modIndex,
2734  uint8 expectedCteLength,
2735  uint8 expectedCteType,
2736  uint8 slotDurations,
2737  uint8 length,
2738  uint8 *pAntenna);
2739 
2760 extern hciStatus_t HCI_LE_EnhancedCteTxTestCmd( uint8 txChan,
2761  uint8 payloadLen,
2762  uint8 payloadType,
2763  uint8 txPhy,
2764  uint8 cteLength,
2765  uint8 cteType,
2766  uint8 length,
2767  uint8 *pAntenna);
2776 extern hciStatus_t HCI_LE_ReadTxPowerCmd( void );
2777 
2786 extern hciStatus_t HCI_LE_ReadRfPathCompCmd( void );
2787 
2799 extern hciStatus_t HCI_LE_WriteRfPathCompCmd( int16 txPathParam,
2800  int16 rxPathParam );
2801 
2802 // @cond NODOC
2821 extern hciStatus_t HCI_LE_SetConnectionCteReceiveParamsCmd( uint16 connHandle,
2822  uint8 samplingEnable,
2823  uint8 slotDurations,
2824  uint8 length,
2825  uint8 *pAntenna);
2826 
2827 
2844 extern hciStatus_t HCI_LE_SetConnectionCteTransmitParamsCmd( uint16 connHandle,
2845  uint8 types,
2846  uint8 length,
2847  uint8 *pAntenna);
2848 
2865 extern hciStatus_t HCI_LE_SetConnectionCteRequestEnableCmd( uint16 connHandle,
2866  uint8 enable,
2867  uint16 interval,
2868  uint8 length,
2869  uint8 type);
2870 
2884 extern hciStatus_t HCI_LE_SetConnectionCteResponseEnableCmd( uint16 connHandle,
2885  uint8 enable);
2886 
2897 extern hciStatus_t HCI_LE_ReadAntennaInformationCmd( void );
2898 
2918 extern hciStatus_t HCI_LE_SetPeriodicAdvParamsCmd( uint8 advHandle,
2919  uint16 periodicAdvIntervalMin,
2920  uint16 periodicAdvIntervalMax,
2921  uint16 periodicAdvProp );
2922 
2923 
2946 extern hciStatus_t HCI_LE_SetPeriodicAdvDataCmd( uint8 advHandle,
2947  uint8 operation,
2948  uint8 dataLength,
2949  uint8 *data );
2950 
2966 extern hciStatus_t HCI_LE_SetPeriodicAdvEnableCmd( uint8 enable,
2967  uint8 advHandle );
2968 
2986 extern hciStatus_t HCI_LE_SetConnectionlessCteTransmitParamsCmd( uint8 advHandle,
2987  uint8 cteLen,
2988  uint8 cteType,
2989  uint8 cteCount,
2990  uint8 length,
2991  uint8 *pAntenna);
2992 
3007 extern hciStatus_t HCI_LE_SetConnectionlessCteTransmitEnableCmd( uint8 advHandle,
3008  uint8 enable );
3009 
3039 extern hciStatus_t HCI_LE_PeriodicAdvCreateSyncCmd( uint8 options,
3040  uint8 advSID,
3041  uint8 advAddrType,
3042  uint8 *advAddress,
3043  uint16 skip,
3044  uint16 syncTimeout,
3045  uint8 syncCteType );
3046 
3057 extern hciStatus_t HCI_LE_PeriodicAdvCreateSyncCancelCmd( void );
3058 
3074 extern hciStatus_t HCI_LE_PeriodicAdvTerminateSyncCmd( uint16 syncHandle );
3075 
3092 extern hciStatus_t HCI_LE_AddDeviceToPeriodicAdvListCmd( uint8 advAddrType,
3093  uint8 *advAddress,
3094  uint8 advSID );
3095 
3113 extern hciStatus_t HCI_LE_RemoveDeviceFromPeriodicAdvListCmd( uint8 advAddrType,
3114  uint8 *advAddress,
3115  uint8 advSID );
3116 
3127 extern hciStatus_t HCI_LE_ClearPeriodicAdvListCmd( void );
3128 
3140 extern hciStatus_t HCI_LE_ReadPeriodicAdvListSizeCmd( void );
3141 
3159 extern hciStatus_t HCI_LE_SetPeriodicAdvReceiveEnableCmd( uint16 syncHandle,
3160  uint8 enable );
3161 
3179 extern hciStatus_t HCI_LE_SetConnectionlessIqSamplingEnableCmd( uint16 syncHandle,
3180  uint8 samplingEnable,
3181  uint8 slotDurations,
3182  uint8 maxSampledCtes,
3183  uint8 length,
3184  uint8 *pAntenna);
3186 
3187 /*
3188 ** HCI Vendor Specific Commands: Link Layer Extensions
3189 */
3190 
3203 extern hciStatus_t HCI_EXT_SetRxGainCmd( uint8 rxGain );
3204 
3205 
3223 extern hciStatus_t HCI_EXT_SetTxPowerCmd( uint8 txPower );
3224 
3237 extern hciStatus_t HCI_EXT_SetTxPowerDbmCmd( int8 txPower, uint8 fraction );
3238 
3251 extern hciStatus_t HCI_EXT_OnePktPerEvtCmd( uint8 control );
3252 
3254 
3273 extern hciStatus_t HCI_EXT_ClkDivOnHaltCmd( uint8 control );
3274 
3296 extern hciStatus_t HCI_EXT_DeclareNvUsageCmd( uint8 mode );
3297 
3299 
3313 extern hciStatus_t HCI_EXT_DecryptCmd( uint8 *key,
3314  uint8 *encText );
3315 
3338 extern hciStatus_t HCI_EXT_SetLocalSupportedFeaturesCmd( uint8 *localFeatures );
3339 
3365 extern hciStatus_t HCI_EXT_SetFastTxResponseTimeCmd( uint8 control );
3366 
3367 
3386 extern hciStatus_t HCI_EXT_SetPeripheralLatencyOverrideCmd( uint8 control );
3387 
3388 
3412 extern hciStatus_t HCI_EXT_ModemTestTxCmd( uint8 cwMode,
3413  uint8 txChan );
3414 
3436 extern hciStatus_t HCI_EXT_ModemHopTestTxCmd( void );
3437 
3460 extern hciStatus_t HCI_EXT_ModemTestRxCmd( uint8 rxChan );
3461 
3486 extern hciStatus_t HCI_EXT_EnhancedModemTestTxCmd( uint8 cwMode,
3487  uint8 rfPhy,
3488  uint8 rfChan );
3489 
3517 extern hciStatus_t HCI_EXT_EnhancedModemHopTestTxCmd( uint8 payloadLen,
3518  uint8 payloadType,
3519  uint8 rfPhy );
3520 
3544 extern hciStatus_t HCI_EXT_EnhancedModemTestRxCmd( uint8 rfPhy,
3545  uint8 rfChan );
3546 
3557 extern hciStatus_t HCI_EXT_EndModemTestCmd( void );
3558 
3581 extern hciStatus_t HCI_EXT_SetBDADDRCmd( uint8 *bdAddr );
3582 
3608 extern hciStatus_t HCI_EXT_SetSCACmd( uint16 scaInPPM );
3609 
3625 extern hciStatus_t HCI_EXT_EnablePTMCmd( void );
3626 
3646 extern hciStatus_t HCI_EXT_SetFreqTuneCmd( uint8 step );
3647 
3662 extern hciStatus_t HCI_EXT_SaveFreqTuneCmd( void );
3663 
3684 extern hciStatus_t HCI_EXT_SetMaxDtmTxPowerCmd( uint8 txPower );
3685 
3705 extern hciStatus_t HCI_EXT_SetMaxDtmTxPowerDbmCmd( int8 txPowerDbm,
3706  uint8 fraction );
3708 
3748 extern hciStatus_t HCI_EXT_MapPmIoPortCmd( uint8 ioPort, uint8 ioPin );
3749 
3751 
3767 extern hciStatus_t HCI_EXT_DisconnectImmedCmd( uint16 connHandle );
3768 
3787 extern hciStatus_t HCI_EXT_PacketErrorRateCmd( uint16 connHandle, uint8 command );
3788 
3830 extern hciStatus_t HCI_EXT_PERbyChanCmd( uint16 connHandle, perByChan_t *perByChan );
3831 
3833 
3842 extern hciStatus_t HCI_EXT_ExtendRfRangeCmd( void );
3843 
3856 extern hciStatus_t HCI_EXT_HaltDuringRfCmd( uint8 mode );
3857 
3859 
3861 
3915 extern hciStatus_t HCI_EXT_AdvEventNoticeCmd( uint8 taskID, uint16 taskEvent );
3916 
3918 
3973 extern hciStatus_t HCI_EXT_ConnEventNoticeCmd( uint16 connHandle, uint8 taskID, uint16 taskEvent );
3974 
3996 extern hciStatus_t HCI_EXT_BuildRevisionCmd( uint8 mode, uint16 userRevNum );
3997 
3999 
4031 extern hciStatus_t HCI_EXT_DelaySleepCmd( uint16 delay );
4032 
4034 
4053 extern hciStatus_t HCI_EXT_ResetSystemCmd( uint8 mode );
4054 
4055 // @cond NODOC
4056 
4067 extern hciStatus_t HCI_EXT_LLTestModeCmd( uint8 testCase );
4068 
4069 
4080 extern hciStatus_t HCI_EXT_OverlappedProcessingCmd( uint8 mode );
4081 
4083 
4104 extern hciStatus_t HCI_EXT_NumComplPktsLimitCmd( uint8 limit,
4105  uint8 flushOnEvt );
4106 
4139 extern hciStatus_t HCI_EXT_GetConnInfoCmd( uint8 *numAllocConns,
4140  uint8 *numActiveConns,
4141  hciConnInfo_t *activeConnInfo );
4142 
4159 extern hciStatus_t HCI_EXT_SetMaxDataLenCmd( uint16 txOctets,
4160  uint16 txTime,
4161  uint16 rxOctets,
4162  uint16 rxTime );
4163 
4176 extern hciStatus_t HCI_EXT_SetDtmTxPktCntCmd( uint16 txPktCnt );
4177 
4178 
4187 extern hciStatus_t HCI_EXT_ReadRandAddrCmd( void );
4188 
4189 
4201 extern hciStatus_t HCI_EXT_SetPinOutputCmd( uint8 dio,
4202  uint8 value );
4203 
4226 extern hciStatus_t HCI_EXT_SetLocationingAccuracyCmd( uint16 handle,
4227  uint8 sampleRate1M,
4228  uint8 sampleSize1M,
4229  uint8 sampleRate2M,
4230  uint8 sampleSize2M,
4231  uint8 sampleCtrl);
4232 
4254 extern hciStatus_t HCI_EXT_GetActiveConnInfoCmd( uint8 connId, hciActiveConnInfo_t *activeConnInfo );
4255 
4278 extern hciStatus_t HCI_EXT_SetAdvSetRandAddrCmd( uint8 advHandle, uint8 *randAddr);
4279 
4301 extern hciStatus_t HCI_EXT_SetVirtualAdvAddrCmd( uint8 advHandle, uint8 *bdAddr );
4302 
4326 extern hciStatus_t HCI_EXT_SetExtScanChannels( uint8 extScanChannelsMap );
4327 
4378 extern hciStatus_t HCI_EXT_SetQOSParameters( uint8 taskType,
4379  uint8 paramType,
4380  uint32 ParamVal,
4381  uint16 taskHandle);
4382 
4415 extern hciStatus_t HCI_EXT_SetQOSDefaultParameters(uint32 paramDefaultVal,
4416  uint8 paramType,
4417  uint8 taskType);
4418 
4429 extern hciStatus_t HCI_EXT_CoexEnableCmd( uint8 enable );
4430 
4439 extern hciStatus_t HCI_EXT_GetRxStatisticsCmd( uint16 connHandle, uint8 command );
4440 
4449 extern hciStatus_t HCI_EXT_GetTxStatisticsCmd( uint16 connHandle, uint8 command );
4450 
4458 extern hciStatus_t HCI_EXT_GetCoexStatisticsCmd( uint8 command );
4459 
4460 #ifdef __cplusplus
4461 }
4462 #endif
4463 
4464 #endif /* HCI_H */
4465 
hciStatus_t HCI_EXT_PacketErrorRateCmd(uint16 connHandle, uint8 command)
osal_event_hdr_t hdr
osal event header
Definition: hci.h:1054
uint8 BLEEventCode
BLE Event Code.
Definition: hci.h:1165
uint8 status
packet status (success or CRC error)
Definition: hci.h:1155
uint8 BLEEventCode
BLE Event Code.
Definition: hci.h:977
uint8 sampleCount
number of samples
Definition: hci.h:1157
uint8 status
status of event
Definition: hci.h:990
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:1211
This API allows the software components in the Z-Stack to be written independently of the specifics o...
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:956
uint16 * pNumCompletedPackets
pointer to the number of completed packets array
Definition: hci.h:1021
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:1118
uint8 status
status of event
Definition: hci.h:978
uint8 BLEEventCode
BLE Event Code.
Definition: hci.h:1265
uint8 status
status of event
Definition: hci.h:1107
uint8 phy
current phy
Definition: hci.h:1149
uint8 addrType
public or random address type
Definition: hci.h:935
uint8 pktType
packet type
Definition: hci.h:1298
hciStatus_t HCI_LE_SetExtAdvData(aeSetDataCmd_t *pCmdParams)
uint8 BLEEventCode
BLE Event Code.
Definition: hci.h:999
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:918
uint16 rssi
current rssi
Definition: hci.h:1200
hciStatus_t HCI_LE_ReadAcceptListSizeCmd(void)
osal_event_hdr_t hdr
osal event header
Definition: hci.h:1281
uint16 Interval_Min
minimum connection interval
Definition: hci.h:1096
hciStatus_t HCI_LE_SetDefaultPhyCmd(uint8 allPhys, uint8 txPhy, uint8 rxPhy)
HCI Packet event.
Definition: hci.h:1288
osal_event_hdr_t hdr
osal event header
Definition: hci.h:1008
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:1082
#define B_RANDOM_NUM_SIZE
BLE Random Number Size.
Definition: bcomdef.h:127
uint8 numHandles
number of handles
Definition: hci.h:1019
uint8 * pReturnParam
pointer to the return parameter
Definition: hci.h:1030
hciStatus_t HCI_LE_ReadRemoteUsedFeaturesCmd(uint16 connHandle)
LE CTE Connectionless IQ Report Event.
Definition: hci.h:1194
hciStatus_t HCI_LE_SetAddressResolutionEnableCmd(uint8 addrResolutionEnable)
osal_event_hdr_t hdr
osal event header
Definition: hci.h:998
uint16 dataPktLen
data packet length
Definition: hci.h:1274
uint8 BLEEventCode
BLE Event Code.
Definition: hci.h:967
uint16 rssi
current rssi
Definition: hci.h:1151
Command Status Event.
Definition: hci.h:1043
void * iqSamples
list of interleaved I/Q samples (list size is dataLen*2)
Definition: hci.h:1190
uint16 connHandle
connection handle
Definition: hci.h:1108
osal_event_hdr_t hdr
osal event header
Definition: hci.h:1116
osal_event_hdr_t hdr
osal event header
Definition: hci.h:954
osal_event_hdr_t hdr
osal event header
Definition: hci.h:1213
hciStatus_t HCI_EXT_CoexEnableCmd(uint8 enable)
hciStatus_t HCI_LE_TestEndCmd(void)
hciStatus_t HCI_LE_SetResolvablePrivateAddressTimeoutCmd(uint16 rpaTimeout)
uint8 sampleRate
sample rate (1/2/3/4 MHz)
Definition: hci.h:1226
hciStatus_t HCI_EXT_SetMaxDtmTxPowerCmd(uint8 txPower)
hciStatus_t HCI_LE_LtkReqNegReplyCmd(uint16 connHandle)
Hardware Error Event.
Definition: hci.h:1052
hciStatus_t HCI_EXT_ModemTestTxCmd(uint8 cwMode, uint8 txChan)
hciStatus_t HCI_LE_TransmitterTestCmd(uint8 txChan, uint8 dataLen, uint8 pktPayload)
uint8 peerAddrType
peer address type
Definition: hci.h:913
uint16 connHandle
connection handle
Definition: hci.h:1167
uint8 BLEEventCode
BLE Event Code.
Definition: hci.h:1147
uint8 status
status of event
Definition: hci.h:1062
int8 txPower
Tx Power information.
Definition: hci.h:1253
hciStatus_t HCI_LE_RandCmd(void)
uint8 clockAccuracy
Peer Clock Accuracy.
Definition: hci.h:1244
LE Advertising Report Event.
Definition: hci.h:932
uint8 sampleCount
number of samples
Definition: hci.h:1206
uint8 dataChIndex
index of data channel
Definition: hci.h:1150
hciStatus_t HCI_EXT_ReadRandAddrCmd(void)
hciStatus_t HCI_LE_ReadRfPathCompCmd(void)
uint8 status
status of event
Definition: hci.h:1237
#define B_MAX_ADV_LEN
BLE Maximum Advertising Packet Length.
Definition: bcomdef.h:124
uint8 nextDataChan
next channel
Definition: hci.h:969
uint8 dataChIndex
index of data channel
Definition: hci.h:1179
hciStatus_t HCI_LE_ReadResolvingListSizeCmd(void)
uint8 cteType
cte type
Definition: hci.h:1182
LE CTE Connection IQ Report Event.
Definition: hci.h:1144
LE Data Length Change Event.
Definition: hci.h:1114
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)
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:947
uint8 cteType
cte type
Definition: hci.h:1221
uint8 BLEEventCode
BLE Event Code.
Definition: hci.h:1236
uint16 syncHandle
sync handle in periodic adv
Definition: hci.h:1198
uint16 connectionHandle
connection handle
Definition: hci.h:895
uint16 connHandle
connection handle
Definition: hci.h:1299
uint8 BLEEventCode
BLE Event Code.
Definition: hci.h:1117
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)
osal_event_hdr_t hdr
osal event header
Definition: hci.h:988
uint8 sampleCtrl
sample control - default filtering or RAW_RF
Definition: hci.h:1228
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:1103
uint16 connEvent
connection event
Definition: hci.h:1185
osal_event_hdr_t hdr
osal event header
Definition: hci.h:1077
osal_event_hdr_t hdr
osal event header
Definition: hci.h:1164
osal_event_hdr_t hdr
osal event header
Definition: hci.h:1018
uint8 status
packet status (success or CRC error)
Definition: hci.h:1184
uint8 BLEEventCode
BLE Event Code.
Definition: hci.h:1093
hciStatus_t HCI_LE_EnhancedRxTestCmd(uint8 rxChan, uint8 rxPhy, uint8 modIndex)
uint8 rssiAntenna
antenna ID
Definition: hci.h:1152
uint8 dataStatus
Periodic data status.
Definition: hci.h:1256
uint8 BLEEventCode
BLE Event code.
Definition: hci.h:1129
osal_event_hdr_t hdr
osal event header
Definition: hci.h:1036
hciStatus_t HCI_WriteAuthPayloadTimeoutCmd(uint16 connHandle, uint16 aptoValue)
osal_event_hdr_t hdr
osal event header
Definition: hci.h:1061
uint8 slotDuration
sampling slot 1us or 2us
Definition: hci.h:1203
hciStatus_t HCI_LE_GenerateDHKeyV2Cmd(uint8 *publicKey, uint8 keyType)
hciStatus_t HCI_LE_SetHostChanClassificationCmd(uint8 *chanMap)
uint8 BLEEventCode
BLE Event Code.
Definition: hci.h:1138
osal_event_hdr_t hdr
osal event header
Definition: hci.h:1196
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:899
hciStatus_t HCI_LE_LtkReqReplyCmd(uint16 connHandle, uint8 *ltk)
uint16 Interval_Max
maximum connection interval
Definition: hci.h:1097
uint8 length
length of parametric data, in bytes
Definition: hci.h:1037
hciStatus_t HCI_EXT_NumComplPktsLimitCmd(uint8 limit, uint8 flushOnEvt)
uint16 connectionHandle
connection handle
Definition: hci.h:991
uint8 BLEEventCode
BLE Event Code.
Definition: hci.h:1106
uint16 maxRxTime
maximum receive time
Definition: hci.h:1122
hciStatus_t HCI_ReadRssiCmd(uint16 connHandle)
hciStatus_t HCI_EXT_SetTxPowerDbmCmd(int8 txPower, uint8 fraction)
uint8 status
status
Definition: hci.h:1130
uint16 connectionHandle
connection handle
Definition: hci.h:911
uint8 sampleSize
sample size (8 or 16 bit)
Definition: hci.h:1188
osal_event_hdr_t hdr
osal event header
Definition: hci.h:1250
hciStatus_t HCI_LE_CreateConnCancelCmd(void)
uint8 rssiAntenna
antenna ID
Definition: hci.h:1220
uint16 cid
L2CAP channel ID.
Definition: hci.h:1086
uint16 connTimeout
connection supervision timeout
Definition: hci.h:982
uint8 encEnable
encryption enabled or not
Definition: hci.h:1002
uint8 eventIndex
event number
Definition: hci.h:1176
hciStatus_t HCI_EXT_SetPeripheralLatencyOverrideCmd(uint8 control)
uint16 Latency
peripheral latency
Definition: hci.h:1098
hciStatus_t HCI_LE_ReadSupportedStatesCmd(void)
uint16 connLatency
connection latency
Definition: hci.h:916
uint8 slotDuration
sampling slot 1us or 2us
Definition: hci.h:1183
uint8 eventIndex
event number
Definition: hci.h:1216
uint8 linkType
synchronous or asynchronous buffer overflow
Definition: hci.h:1071
hciStatus_t HCI_LE_ReadLocalP256PublicKeyCmd(void)
Vendor Specific Command Complete Event.
Definition: hci.h:1034
osal_event_hdr_t hdr
osal event header
Definition: hci.h:976
hciStatus_t HCI_EXT_DecryptCmd(uint8 *key, uint8 *encText)
hciStatus_t HCI_EXT_SetFreqTuneCmd(uint8 step)
hciStatus_t HCI_EXT_SetDtmTxPktCntCmd(uint16 txPktCnt)
Data structure for HCI Command Complete Event Return Parameter.
Definition: hci.h:1271
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:1154
void * iqSamples
list of interleaved I/Q samples (list size is dataLen*2)
Definition: hci.h:1229
uint16 totalDataLen
samples data length includes in all next events
Definition: hci.h:1215
hciStatus_t HCI_LE_EnhancedTxTestCmd(uint8 txChan, uint8 payloadLen, uint8 payloadType, uint8 txPhy)
hciStatus_t HCI_SetEventMaskCmd(uint8 *pMask)
uint8 clockAccuracy
connection clock accuracy
Definition: hci.h:902
Disconnection Complete Event.
Definition: hci.h:1059
hciStatus_t HCI_EXT_SaveFreqTuneCmd(void)
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)
osal_event_hdr_t hdr
OSAL Event header.
Definition: hci.h:1297
Authenticated Payload Timeout Expired Event.
Definition: hci.h:1075
hciStatus_t HCI_EXT_EnhancedModemTestTxCmd(uint8 cwMode, uint8 rfPhy, uint8 rfChan)
uint8 sid
Peer SID.
Definition: hci.h:1239
hciStatus_t HCI_LE_CreateConnCmd(uint16 scanInterval, uint16 scanWindow, uint8 initFilterPolicy, uint8 addrTypePeer, uint8 *peerAddr, uint8 ownAddrType, uint16 connIntervalMin, uint16 connIntervalMax, uint16 connLatency, uint16 connTimeout, uint16 minLen, uint16 maxLen)
uint16 periodicInterval
Periodic interval.
Definition: hci.h:1243
uint16 connHandle
connection handle
Definition: hci.h:1095
uint8 sampleSize
sample size (8 or 16 bit)
Definition: hci.h:1227
hciStatus_t HCI_LE_SetExtScanRspData(aeSetDataCmd_t *pCmdParams)
hciStatus_t HCI_LE_ClearAcceptListCmd(void)
uint16 maxTxTime
maximum transmission time
Definition: hci.h:1120
hciStatus_t HCI_LE_SetEventMaskCmd(uint8 *pEventMask)
int8 rssi
report RSSI
Definition: hci.h:939
uint16 connLatency
connection latency
Definition: hci.h:981
uint8 BLEEventCode
BLE Event Code.
Definition: hci.h:946
hciStatus_t HCI_EXT_SetQOSDefaultParameters(uint32 paramDefaultVal, uint8 paramType, uint8 taskType)
This API is used to set the Default QOS Parameters Values.
uint8 * pData
data
Definition: hci.h:1302
hciStatus_t HCI_EXT_SetRxGainCmd(uint8 rxGain)
uint8 reason
reason
Definition: hci.h:1001
int8 rssi
report RSSI
Definition: hci.h:960
Periodic Advertising Sync Lost Event.
Definition: hci.h:1262
uint8 BLEEventCode
BLE Event Code.
Definition: hci.h:1009
uint16 cmdOpcode
command opcode
Definition: hci.h:1048
uint8 chSelAlgo
channel selection algorithm
Definition: hci.h:1284
LE CTE Request Failed Event.
Definition: hci.h:1162
hciStatus_t HCI_ReadRemoteVersionInfoCmd(uint16 connHandle)
uint8 * data
Periodic data received from peer.
Definition: hci.h:1258
osal_event_hdr_t hdr
OSAL event header.
Definition: hci.h:1290
uint8 channelIndex
index of channel
Definition: hci.h:1218
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)
hciStatus_t HCI_LE_ReadLocalResolvableAddressCmd(uint8 localIdAddrType, uint8 *localIdAddr)
uint8 BLEEventCode
BLE Event Code.
Definition: hci.h:1174
osal_event_hdr_t hdr
osal event header
Definition: hci.h:1128
hciStatus_t HCI_EXT_ModemHopTestTxCmd(void)
Command Complete Event.
Definition: hci.h:1025
uint8 rxPhy
RX PHY.
Definition: hci.h:1110
uint16 syncHandle
sync handle
Definition: hci.h:1252
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:948
LE Channel Selection Algorithm Event.
Definition: hci.h:1279
uint16 connHandle
connection handle
Definition: hci.h:1000
HCI Data Packet.
Definition: hci.h:1295
uint8 status
status
Definition: hci.h:1139
uint8 status
status of event
Definition: hci.h:894
uint16 connTimeout
connection supervision timeout
Definition: hci.h:917
uint16 Timeout
supervision timeout
Definition: hci.h:1099
LE Generate DHKey Complete Event.
Definition: hci.h:1135
uint16 connHandle
connection handle
Definition: hci.h:1085
hciStatus_t HCI_EXT_EnhancedModemHopTestTxCmd(uint8 payloadLen, uint8 payloadType, uint8 rfPhy)
osal_event_hdr_t hdr
osal event header
Definition: hci.h:1173
osal_event_hdr_t hdr
osal event header
Definition: hci.h:1264
uint16 * pConnectionHandle
pointer to the connection handle array
Definition: hci.h:1020
uint16 eventCounter
periodic adv event counter
Definition: hci.h:1224
LE Remote Connection Parameter Request Event.
Definition: hci.h:1090
hciStatus_t HCI_EXT_PERbyChanCmd(uint16 connHandle, perByChan_t *perByChan)
uint8 status
packet status (success or CRC error)
Definition: hci.h:1223
uint16 connEvent
connection event
Definition: hci.h:1156
uint16 connLatency
connection latency
Definition: hci.h:900
uint8 status
status of event
Definition: hci.h:1094
hciStatus_t HCI_ReadLocalSupportedCommandsCmd(void)
uint8 BLEEventCode
BLE Event Code.
Definition: hci.h:955
hciStatus_t HCI_EXT_ModemTestRxCmd(uint8 rxChan)
uint16 connInterval
connection interval
Definition: hci.h:915
uint8 bleChan
BLE channel.
Definition: hci.h:959
uint8 eventType
advertisement or scan response event type
Definition: hci.h:934
osal_event_hdr_t hdr
osal event header
Definition: hci.h:892
hciEvt_BLEEnhConnComplete_t enhEvt
enhanced connection complete event
Definition: hci.h:928
int8 rssi
RSSI of the received packet.
Definition: hci.h:1254
int8 * iqSamples
list of interleaved I/Q samples
Definition: hci.h:1207
uint16 connHandle
connection handle
Definition: hci.h:1177
hciStatus_t HCI_LE_SetAdvEnableCmd(uint8 advEnable)
osal_event_hdr_t hdr
osal event header
Definition: hci.h:908
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:901
Type definitions and macros for BLE stack.
VS LE Scan Request Report Event.
Definition: hci.h:952
osal_event_hdr_t hdr
osal event header
Definition: hci.h:1146
hciStatus_t HCI_EXT_SetFastTxResponseTimeCmd(uint8 control)
LE Encryption Change Event.
Definition: hci.h:996
hciStatus_t HCI_EXT_BuildRevisionCmd(uint8 mode, uint16 userRevNum)
hciStatus_t HCI_LE_ReadPhyCmd(uint16 connHandle)
uint16 syncHandle
sync handle
Definition: hci.h:1238
hciStatus_t HCI_LE_SetScanRspDataCmd(uint8 dataLen, uint8 *pData)
uint16 connInterval
connection interval
Definition: hci.h:980
uint8 phy
current phy
Definition: hci.h:1178
uint8 * pEventParam
event parameters
Definition: hci.h:1039
uint8 channelIndex
index of channel
Definition: hci.h:1199
hciEvt_BLEConnComplete_t legEvt
connection complete event
Definition: hci.h:927
hciStatus_t HCI_LE_AddAcceptListCmd(uint8 addrType, uint8 *devAddr)
hciStatus_t HCI_ReadTransmitPowerLevelCmd(uint16 connHandle, uint8 txPwrType)
uint8 cmdStatus
command status
Definition: hci.h:1046
hciStatus_t HCI_EXT_SetMaxDtmTxPowerDbmCmd(int8 txPowerDbm, uint8 fraction)
osal_event_hdr_t hdr
osal event header
Definition: hci.h:1084
LE Enhanced Connection Complete Event.
Definition: hci.h:906
hciStatus_t HCI_LE_SetPhyCmd(uint16 connHandle, uint8 allPhys, uint8 txPhy, uint8 rxPhy, uint16 phyOpts)
uint16 connHandle
connection handle
Definition: hci.h:1078
uint16 cmdOpcode
command opcode
Definition: hci.h:1029
uint8 BLEEventCode
BLE Event Code.
Definition: hci.h:893
Number of Completed Packets Event.
Definition: hci.h:1016
hciStatus_t HCI_LE_ReadPeerResolvableAddressCmd(uint8 peerIdAddrType, uint8 *peerIdAddr)
OSAL Event Header.
Definition: osal.h:92
uint8 cteType
CTE type received.
Definition: hci.h:1255
hciStatus_t HCI_EXT_SetLocalSupportedFeaturesCmd(uint8 *localFeatures)
hciStatus_t HCI_LE_ReceiverTestCmd(uint8 rxChan)
uint8 BLEEventCode
BLE Event Code.
Definition: hci.h:909
uint8 txPhy
TX PHY.
Definition: hci.h:1109
hciStatus_t HCI_LE_RemoveDeviceFromResolvingListCmd(uint8 peerIdAddrType, uint8 *peerIdAddr)
uint8 numDataPkts
number of data packets
Definition: hci.h:1275
uint16 connHandle
connection handle
Definition: hci.h:968
uint16 rssi
current rssi
Definition: hci.h:1219
LE Periodic Advertising Report event.
Definition: hci.h:1248
hciStatus_t HCI_EXT_EnhancedModemTestRxCmd(uint8 rfPhy, uint8 rfChan)
uint16 pktLen
packet length
Definition: hci.h:1301
hciStatus_t HCI_EXT_SetBDADDRCmd(uint8 *bdAddr)
osal_event_hdr_t hdr
osal event header
Definition: hci.h:1137
uint8 peerAddrType
peer address type
Definition: hci.h:897
osal_event_hdr_t hdr
osal event header
Definition: hci.h:1045
uint8 BLEEventCode
BLE Event Code.
Definition: hci.h:1251
hciStatus_t HCI_LE_StartEncyptCmd(uint16 connHandle, uint8 *random, uint8 *encDiv, uint8 *ltk)
uint8 phy
Peer PHY.
Definition: hci.h:1242
hciStatus_t HCI_EXT_ConnEventNoticeCmd(uint16 connHandle, uint8 taskID, uint16 taskEvent)
uint16 cmdOpcode
command opcode
Definition: hci.h:1038
uint8 reason
reason
Definition: hci.h:1064
uint8 numHciCmdPkt
number of HCI Command Packet
Definition: hci.h:1028
osal_event_hdr_t hdr
osal event header
Definition: hci.h:1092
LE Extended CTE Connection IQ Report Event.
Definition: hci.h:1171
uint8 hardwareCode
hardware error code
Definition: hci.h:1055
#define B_ADDR_LEN
Default Public and Random Address Length.
Definition: bcomdef.h:102
Data Buffer Overflow Event.
Definition: hci.h:1068
uint8 role
role of connection
Definition: hci.h:912
LE Connection Complete Event.
Definition: hci.h:890
uint8 numHciCmdPkt
number of HCI command packets
Definition: hci.h:1047
uint8 dataLen
Periodic data length.
Definition: hci.h:1257
uint16 encryptedDiversifier
encrypted diversifier
Definition: hci.h:1012
int8 * iqSamples
list of interleaved I/Q samples
Definition: hci.h:1158
uint8 slotDuration
sampling slot 1us or 2us
Definition: hci.h:1222
hciStatus_t HCI_LE_AddDeviceToResolvingListCmd(uint8 peerIdAddrType, uint8 *peerIdAddr, uint8 *peerIRK, uint8 *localIRK)
LE Read Remote Used Features Complete Event.
Definition: hci.h:986
hciStatus_t HCI_LE_SetAdvDataCmd(uint8 dataLen, uint8 *pData)
uint16 eventCounter
periodic adv event counter
Definition: hci.h:1205
uint8 peerAddrType
peer address type
Definition: hci.h:957
uint16 syncHandle
sync handle
Definition: hci.h:1266
hciStatus_t HCI_LE_SetRandomAddressCmd(uint8 *pRandAddr)
uint16 totalDataLen
samples data length includes in all next events
Definition: hci.h:1175
hciStatus_t HCI_LE_SetScanParamCmd(uint8 scanType, uint16 scanInterval, uint16 scanWindow, uint8 ownAddrType, uint8 filterPolicy)
uint8 BLEEventCode
BLE Event Code.
Definition: hci.h:1214
VS LE Channel Map Update Event.
Definition: hci.h:964
hciStatus_t HCI_ReadLocalSupportedFeaturesCmd(void)
uint8 sampleRate
sample rate (1/2/3/4 MHz)
Definition: hci.h:1187
hciStatus_t HCI_LE_ReadChannelMapCmd(uint16 connHandle)
uint16 connHandle
connection handle
Definition: hci.h:1283
uint8 status
status of event
Definition: hci.h:1273
osal_event_hdr_t hdr
osal event header
Definition: hci.h:966
osal_event_hdr_t hdr
osal event header
Definition: hci.h:1027
LE Periodic Advertising Sync Established event.
Definition: hci.h:1233
hciStatus_t HCI_LE_ReadMaxDataLenCmd(void)
hciStatus_t HCI_EXT_SetSCACmd(uint16 scaInPPM)
uint16 connHandle
connection handle
Definition: hci.h:1148
uint8 cteType
cte type
Definition: hci.h:1153
uint16 maxTxOctets
maximum transmission bytes
Definition: hci.h:1119
uint8 addrType
Peer address type.
Definition: hci.h:1240
uint16 rssi
current rssi
Definition: hci.h:1180
hciStatus_t HCI_ReadBDADDRCmd(void)
uint8 status
packet status (success or CRC error)
Definition: hci.h:1204
uint8 rssiAntenna
antenna ID
Definition: hci.h:1181
osal_event_hdr_t hdr
osal event header
Definition: hci.h:1105
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)
LE Connection Complete Event.
Definition: hci.h:925
uint8 BLEEventCode
BLE Event Code.
Definition: hci.h:1197
LE Connection Update Complete Event.
Definition: hci.h:974
uint8 BLEEventCode
BLE Event Code.
Definition: hci.h:1282
hciStatus_t HCI_EXT_SetTxPowerCmd(uint8 txPower)
uint8 status
status of event
Definition: hci.h:910
hciStatus_t HCI_LE_WriteSuggestedDefaultDataLenCmd(uint16 txOctets, uint16 txTime)
LE Read P256 Public Key Complete Event.
Definition: hci.h:1126
hciStatus_t HCI_LE_SetScanEnableCmd(uint8 scanEnable, uint8 filterDuplicates)
uint8 dataLen
samples data length
Definition: hci.h:1225
uint8 dataLen
length of report data
Definition: hci.h:937
uint8 dataLen
samples data length
Definition: hci.h:1186
uint8 status
status
Definition: hci.h:1166
uint8 * pData
data
Definition: hci.h:1291
uint8 cteType
cte type
Definition: hci.h:1202
LE Advertising Packet Report Event.
Definition: hci.h:943
uint8 rssiAntenna
antenna ID
Definition: hci.h:1201
uint16 syncHandle
sync handle in periodic adv
Definition: hci.h:1217
hciStatus_t HCI_EXT_DisconnectImmedCmd(uint16 connHandle)
uint16 connHandle
connection handle
Definition: hci.h:1063
uint8 BLEEventCode
BLE Event Code.
Definition: hci.h:989
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:1300
uint16 maxRxOctets
maximum receive bytes
Definition: hci.h:1121
uint8 role
role of connection
Definition: hci.h:896
hciStatus_t HCI_ResetCmd(void)
osal_event_hdr_t hdr
osal event header
Definition: hci.h:1070
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:979
osal_event_hdr_t hdr
osal event header
Definition: hci.h:1235
LE Long Term Key Requested Event.
Definition: hci.h:1006
osal_event_hdr_t hdr
osal event header
Definition: hci.h:945
uint8 sampleCtrl
sample control - default filtering or RAW_RF
Definition: hci.h:1189
uint16 connHandle
connection handle
Definition: hci.h:1010
hciStatus_t HCI_EXT_GetConnInfoCmd(uint8 *numAllocConns, uint8 *numActiveConns, hciConnInfo_t *activeConnInfo)
© Copyright 1995-2024, Texas Instruments Incorporated. All rights reserved.
Trademarks | Privacy policy | Terms of use | Terms of sale