Skip to content

Commit e6daffc

Browse files
committed
lib: stm32wba: Update Link Layer and LE integration on STM32WBA
Update Link Layer and LE porting header files to be aligned on STM32Cube_FW_WBA Release 1.6.0 Signed-off-by: Vincent Tardy <[email protected]>
1 parent d46f845 commit e6daffc

File tree

23 files changed

+3571
-67
lines changed

23 files changed

+3571
-67
lines changed

lib/stm32wba/CMakeLists.txt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,6 @@ else()
6464
set(BLE_LIB_TYPE "BLE_LIB_BASIC")
6565
endif()
6666

67-
6867
set(STM32WBA_BLE_LIB_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../../zephyr/blobs/stm32wba/lib)
6968
set(STM32WBA_BLE_LIB_INCLUDE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/STM32_WPAN/ble/stack)
7069
set(STM32WBA_LL_LIB_INCLUDE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/STM32_WPAN/link_layer/ll_cmd_lib)

lib/stm32wba/Common/WPAN/Modules/scm.h

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
/* USER CODE BEGIN Header */
21
/**
32
******************************************************************************
43
* @file scm.h
@@ -16,7 +15,6 @@
1615
*
1716
******************************************************************************
1817
*/
19-
/* USER CODE END Header */
2018

2119
/* Define to prevent recursive inclusion -------------------------------------*/
2220
#ifndef SCM_H
@@ -56,9 +54,6 @@ typedef enum {
5654
SCM_USER_APP,
5755
SCM_USER_LL_FW,
5856
SCM_USER_LL_HW_RCO_CLBR,
59-
/* USER CODE BEGIN SCM_USER */
60-
61-
/* USER CODE END SCM_USER */
6257
TOTAL_CLIENT_NUM, /* To be at the end of the enum */
6358
} scm_user_id_t;
6459

lib/stm32wba/Common/WPAN/Modules/stm_list.h

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
/* USER CODE BEGIN Header */
21
/**
32
******************************************************************************
43
* @file stm_list.h
@@ -16,7 +15,6 @@
1615
*
1716
******************************************************************************
1817
*/
19-
/* USER CODE END Header */
2018

2119
#ifndef STM_LIST_H
2220
#define STM_LIST_H

lib/stm32wba/STM32_WPAN/link_layer/ll_cmd_lib/inc/bsp.h

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
/*$Id: //dwh/bluetooth/DWC_ble154combo/firmware/rel/1.32a-lca02/firmware/public_inc/bsp.h#2 $*/
1+
/*$Id: //dwh/bluetooth/DWC_ble154combo/firmware/rel/2.00a-lca01/firmware/public_inc/bsp.h#1 $*/
22

33
/**
44
********************************************************************************
@@ -280,6 +280,7 @@ typedef enum Debug_GPIO_e{
280280
DBG_IO_ED_TMR_HNDL ,
281281
DBG_IO_OS_TMR_EVNT_CBK ,
282282
DBG_IO_PROFILE_MARKER_PHY_WAKEUP_TIME ,
283+
DBG_IO_PROFILE_MARKER_BLOCKING_PHY_WAKEUP_TIME ,
283284
DBG_IO_PROFILE_END_DRIFT_TIME ,
284285
DBG_IO_PROC_RADIO_RCV ,
285286
DBG_IO_EVNT_TIME_UPDT ,

lib/stm32wba/STM32_WPAN/link_layer/ll_cmd_lib/inc/common_types.h

Lines changed: 79 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
/*$Id: //dwh/bluetooth/DWC_ble154combo/firmware/rel/1.32a-lca02/firmware/public_inc/common_types.h#3 $*/
1+
/*$Id: //dwh/bluetooth/DWC_ble154combo/firmware/rel/2.00a-lca01/firmware/public_inc/common_types.h#1 $*/
22
/**
33
********************************************************************************
44
* @file common_types.h
@@ -101,10 +101,6 @@
101101
/****************** User configuration **********************************/
102102
#define CS_TESTING TRUE
103103

104-
#ifndef SUPPORT_GNRC_SCHDLR_IF
105-
#define SUPPORT_GNRC_SCHDLR_IF 1 /* Enable\Disable event EXTRNL_GNRC in Ble event manager. Enable:1 - Disable:0 */
106-
#endif /* SUPPORT_GNRC_SCHDLR_IF */
107-
108104
/********************* Macros **********************************/
109105

110106
#ifndef SUCCESS
@@ -192,6 +188,10 @@ typedef enum {
192188
LE_2M = 0x02,
193189
LE_CODED_S8 = 0x03,
194190
LE_CODED = 0x04,
191+
/*=============== Channel Sounding ===============*/
192+
#if (SUPPORT_CHANNEL_SOUNDING &&( SUPPORT_MASTER_CONNECTION || SUPPORT_SLAVE_CONNECTION))
193+
LE_2M_2BT = 0x08,
194+
#endif /*SUPPORT_CHANNEL_SOUNDING &&( SUPPORT_MASTER_CONNECTION || SUPPORT_SLAVE_CONNECTION)*/
195195
#if (SUPPORT_LE_POWER_CONTROL)
196196
LE_PHY_UNDEFINED = 0xFC,
197197
NEW_PHY_CODED_S2 = 0xFD,
@@ -216,6 +216,7 @@ typedef struct time_st {
216216
uint16_t time_stamp_fine;
217217
uint8_t overflow_flag;
218218
} ble_time_t, *ble_time_p;
219+
219220
typedef enum dpslp_state {
220221
DEEP_SLEEP_ENABLE = 0x01,
221222
DEEP_SLEEP_DISABLE = 0x00
@@ -445,7 +446,9 @@ typedef enum {
445446
/**
446447
* The default PHY periodic calibration period in second. this Macro can be set to any value , Zero means that phy periodic calibration is disabled
447448
*/
449+
#ifndef DEFAULT_PHY_CALIBRATION_PERIOD
448450
#define DEFAULT_PHY_CALIBRATION_PERIOD 10 /* Time period for PHY calibration = 10s */
451+
#endif /* DEFAULT_PHY_CALIBRATION_PERIOD */
449452

450453
#if defined(PHY_40nm_3_00_a) || defined(PHY_40nm_3_40_a)
451454
#define SUPPORT_MAC_PHY_CONT_TESTING_CMDS 1
@@ -459,8 +462,9 @@ typedef enum {
459462
#ifndef EXTERNAL_CUSTOM_CMDS
460463
#define EXTERNAL_CUSTOM_CMDS 0 /* Indicates that an external custom HCI commands module exists */
461464
#endif /* EXTERNAL_CUSTOM_CMDS */
465+
#ifndef SUPPORT_ZIGBEE_PHY_CERTIFICATION
462466
#define SUPPORT_ZIGBEE_PHY_CERTIFICATION 0 /* 0 disable , 1 enable .. used to enable support of hci command required to implement zigbee phy Test cases*/
463-
467+
#endif /* SUPPORT_ZIGBEE_PHY_CERTIFICATION */
464468

465469
#if (!USE_HCI_TRANSPORT) && (SUPPORT_BLE) /* SUPPORT_HCI_EVENT_ONLY cannot be supported with default HCI_transport */
466470
/* if this marco is enabled it will enable the below features
@@ -476,7 +480,9 @@ typedef enum {
476480
#define SUPPORT_HCI_EVENT_ONLY_TESTING 0
477481
#endif /* SUPPORT_HCI_EVENT_ONLY_TESTING */
478482

483+
#ifndef SUPPORT_HW_AUDIO_SYNC_SIGNAL
479484
#define SUPPORT_HW_AUDIO_SYNC_SIGNAL 0
485+
#endif /* SUPPORT_HW_AUDIO_SYNC_SIGNAL */
480486

481487
#if SUPPORT_LE_PAWR_SYNC_ROLE
482488
#define SUPPORT_PAWR_CUSTOM_SYNC 1
@@ -491,9 +497,13 @@ typedef enum {
491497

492498

493499

500+
#ifndef SUPPORT_TIM_UPDT
494501
#define SUPPORT_TIM_UPDT 1
502+
#endif /* SUPPORT_TIM_UPDT */
495503

504+
#ifndef SUPPORT_RX_DTP_CONTROL
496505
#define SUPPORT_RX_DTP_CONTROL 1 /* Enable\Disable ACL Rx data throughput feature */
506+
#endif /* SUPPORT_RX_DTP_CONTROL */
497507

498508
#ifndef SUPPORT_CUSTOM_ADV_SCAN_TESTING
499509
#define SUPPORT_CUSTOM_ADV_SCAN_TESTING 0
@@ -508,4 +518,67 @@ typedef enum {
508518
#endif /* SUPPORT_EXT_FEATURE_SET */
509519

510520

521+
#ifndef SUPPORT_CONFIGURABLE_GAIN_FIX
522+
#define SUPPORT_CONFIGURABLE_GAIN_FIX 0 /* Enable\Disable configurable gain fix support */
523+
#endif /* SUPPORT_CONFIGURABLE_GAIN_FIX */
524+
525+
#if SUPPORT_CONFIGURABLE_GAIN_FIX
526+
#define PREEMPH_GAIN_COEFF_STEP_SIZE 10 /* percentage margin of single step */
527+
#define GAIN_FIX_WAKEUP_TIME_OVERHEAD 4 /* in sleep timer units, the added time overhead from patching all pre-emphasis coefficients */
528+
#else
529+
#define GAIN_FIX_WAKEUP_TIME_OVERHEAD 0
530+
#endif /* SUPPORT_CONFIGURABLE_GAIN_FIX */
531+
532+
#ifndef SUPPORT_PHY_SHUTDOWN_MODE
533+
#if defined(PHY_40nm_3_60_a_tc) || defined(PHY_40nm_3_00_a) || defined(PHY_40nm_3_40_a)
534+
#define SUPPORT_PHY_SHUTDOWN_MODE 1 /* Enable\Disable phpy shutdown mode support */
535+
#else
536+
#define SUPPORT_PHY_SHUTDOWN_MODE 0
537+
#endif /* defined(PHY_40nm_3_60_a_tc) || defined(PHY_40nm_3_00_a) || defined(PHY_40nm_3_40_a) */
538+
#endif /* SUPPORT_PHY_SHUTDOWN_MODE */
539+
540+
#if SUPPORT_PHY_SHUTDOWN_MODE
541+
#define PHY_SHUTDOWN_WAKEUP_TIME_OVERHEAD 2 /* in sleep timer units, the added time overhead from executing override seqeuences needed in phy shutdown mode */
542+
#else
543+
#define PHY_SHUTDOWN_WAKEUP_TIME_OVERHEAD 0
544+
#endif /* SUPPORT_PHY_SHUTDOWN_MODE */
545+
546+
#ifndef SUPPORT_GNRC_SCHDLR_IF
547+
#define SUPPORT_GNRC_SCHDLR_IF 1
548+
#endif
549+
#ifndef NEAR_AUX_AFTER_EXT_SLEEP_TIMER_SCHEDULING
550+
#define NEAR_AUX_AFTER_EXT_SLEEP_TIMER_SCHEDULING 0
551+
#endif /* NEAR_AUX_AFTER_EXT_SLEEP_TIMER_SCHEDULING */
552+
553+
#if (SUPPORT_CHANNEL_SOUNDING &&( SUPPORT_MASTER_CONNECTION || SUPPORT_SLAVE_CONNECTION))
554+
/**
555+
* @brief holds the possible values for cs roles
556+
*/
557+
typedef enum _cs_role_e
558+
{
559+
CS_ROLE_INITIATOR,
560+
CS_ROLE_REFLECTOR
561+
} cs_role_e;
562+
563+
/**
564+
* @brief holds the possible values for cs step mode types
565+
*/
566+
typedef enum _cs_step_mode_type_e
567+
{
568+
CS_STEP_MODE_0,
569+
CS_STEP_MODE_1,
570+
CS_STEP_MODE_2,
571+
CS_STEP_MODE_3,
572+
CS_STEP_MODE_NONE = 0xFF
573+
} cs_step_mode_type_e;
574+
575+
/**
576+
* @brief cs host buffer structure
577+
*/
578+
typedef struct _cs_host_buffer {
579+
uint8_t buffer[257]; /*CS_HOST_BUFFER_DATA_MAX (255) + HCI_EVENT_HEADER_LEN(2)*/
580+
}cs_host_buffer;
581+
582+
#endif /*SUPPORT_CHANNEL_SOUNDING &&( SUPPORT_MASTER_CONNECTION || SUPPORT_SLAVE_CONNECTION)*/
583+
511584
#endif /*COMMON_TYPES_H_*/

0 commit comments

Comments
 (0)