Skip to content

Commit 9952180

Browse files
sylvioalvesdkalowsk
authored andcommitted
soc: espressif: sync hal to latest updates
1) Bring latest hal_espressif updates/sync to latest v5.1 branch. 2) Update RF libraries for bug fixes and improvements 3) Add necessary BLE Kconfig entries to support latest changes. Signed-off-by: Sylvio Alves <[email protected]>
1 parent c3368f6 commit 9952180

File tree

2 files changed

+248
-6
lines changed

2 files changed

+248
-6
lines changed

drivers/bluetooth/hci/Kconfig.esp32

Lines changed: 247 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -7,23 +7,265 @@ config HEAP_MEM_POOL_ADD_SIZE_ESP_BT
77
default 25600 if ESP_BT_HEAP_SYSTEM
88
default 0
99
help
10-
Make sure there is a minimal heap available for BT driver.
10+
Additional heap size reserved for Bluetooth driver usage.
1111

1212
choice ESP_BT_HEAP
13-
prompt "Bluetooth adapter heap in use"
13+
prompt "Bluetooth heap type"
1414
default ESP_BT_HEAP_SYSTEM
1515

16-
config ESP_BT_HEAP_SYSTEM
17-
bool "Bluetooth adapter use the kernel mempool heap (k_malloc)"
16+
config ESP_BT_HEAP_SYSTEM
17+
bool "Kernel memory pool heap (k_malloc)"
1818

1919
endchoice # ESP_BT_HEAP
2020

21+
menu "ESP32 Bluetooth Controller Configuration"
22+
2123
config ESP32_BT_CONTROLLER_STACK_SIZE
2224
int "Bluetooth controller stack size"
2325
default 4096
2426

2527
config ESP32_BT_CONTROLLER_TASK_PRIO
26-
int "Bluetooth controller task priority level"
28+
int "Bluetooth controller task priority"
2729
default 2
2830

31+
if BT_CLASSIC
32+
33+
config ESP32_BT_CTLR_BR_EDR_MAX_SYNC_CONN
34+
int "BR/EDR synchronous connection limit (SCO/eSCO)"
35+
default 0
36+
range 0 3
37+
help
38+
Maximum number of synchronous connections (SCO/eSCO).
39+
Each connection uses approximately 2 KB of DRAM.
40+
41+
config ESP32_BT_CTLR_BR_EDR_MAX_ACL_CONN
42+
int "BR/EDR ACL connection limit"
43+
default 2
44+
range 1 7
45+
help
46+
Maximum number of BR/EDR ACL connections.
47+
Each connection uses about 1.2 KB of DRAM.
48+
49+
config ESP32_BT_CTLR_BR_EDR_MIN_ENC_KEY_SZ_DFT
50+
int "BR/EDR minimum encryption key size"
51+
default 7
52+
range 7 16
53+
help
54+
Default minimum encryption key size when initiating BR/EDR encryption.
55+
56+
endif # BT_CLASSIC
57+
58+
config ESP32_BT_CTLR_LE_MAX_CONN
59+
int "BLE connection limit"
60+
default 3
61+
range 1 9
62+
help
63+
Maximum number of concurrent BLE connections.
64+
Each connection consumes about 1 KB of DRAM.
65+
66+
config ESP32_BT_LE_SLEEP_CLOCK_ACCURACY_INDEX_EFF
67+
int
68+
default 1
69+
help
70+
BLE sleep clock accuracy index (1 = 151–250 ppm).
71+
72+
config ESP32_BT_CTLR_LE_MAX_ACT
73+
int "BLE activity instance limit"
74+
default 6
75+
range 1 10
76+
help
77+
Number of BLE activities (connections, scanning, advertising, synchronization).
78+
Each instance uses about 828 bytes of DRAM.
79+
80+
config ESP32_BT_CTLR_LE_STATIC_ACL_TX_BUF_NB
81+
int "BLE static ACL TX buffer numbers"
82+
range 0 12
83+
default 0
84+
help
85+
BLE ACL buffer have two methods to be allocated. One is persistent allocating
86+
(allocate when controller initialise, never free until controller de-initialise)
87+
another is dynamically allocating (allocate before TX and free after TX).
88+
89+
config ESP32_BT_CTLR_ADV_DUP_FILT_MAX
90+
int "BLE duplicate filter entry limit"
91+
range 1 500
92+
default 30
93+
help
94+
Maximum entries in the extended advertising duplicate scan filter.
95+
96+
choice ESP32_BT_LE_CCA_MODE
97+
prompt "BLE clear channel assessment mode"
98+
default ESP32_BT_LE_CCA_MODE_NONE
99+
help
100+
Select BLE CCA behavior. CCA delays packet transmission if the channel is busy,
101+
affecting scan and connection timing.
102+
103+
config ESP32_BT_LE_CCA_MODE_NONE
104+
bool "None"
105+
106+
config ESP32_BT_LE_CCA_MODE_HW
107+
bool "Hardware CCA"
108+
109+
config ESP32_BT_LE_CCA_MODE_SW
110+
bool "Software CCA (experimental)"
111+
112+
endchoice
113+
114+
config ESP32_BT_LE_CCA_MODE
115+
int
116+
default 0 if ESP32_BT_LE_CCA_MODE_NONE
117+
default 1 if ESP32_BT_LE_CCA_MODE_HW
118+
default 2 if ESP32_BT_LE_CCA_MODE_SW
119+
120+
config ESP32_BT_CTLR_HW_CCA_VAL
121+
int "Hardware CCA threshold (dBm)"
122+
range 20 100
123+
default 20
124+
help
125+
RSSI threshold for hardware CCA. Value 30 corresponds to –30 dBm.
126+
127+
config ESP32_BT_CTLR_HW_CCA
128+
int
129+
default 0
130+
help
131+
Internal effective value for hardware CCA.
132+
133+
choice ESP32_BT_CTLR_CE_LENGTH_TYPE
134+
prompt "Connection event length type"
135+
help
136+
Determine how connection event lengths are set by the controller.
137+
138+
config ESP32_BT_CTLR_CE_LENGTH_TYPE_ORIG
139+
bool "Original method"
140+
141+
config ESP32_BT_CTLR_CE_LENGTH_TYPE_CE
142+
bool "Use HCI CE parameter"
143+
144+
config ESP32_BT_CTLR_CE_LENGTH_TYPE_SD
145+
bool "Espressif custom method"
146+
147+
endchoice
148+
149+
config ESP32_BT_CTLR_CE_LENGTH_TYPE_EFF
150+
int
151+
default 0 if ESP32_BT_CTLR_CE_LENGTH_TYPE_ORIG
152+
default 1 if ESP32_BT_CTLR_CE_LENGTH_TYPE_CE
153+
default 2 if ESP32_BT_CTLR_CE_LENGTH_TYPE_SD
154+
155+
choice ESP32_BT_CTLR_TX_ANTENNA_INDEX
156+
prompt "Bluetooth default TX antenna"
157+
help
158+
Select the antenna used for Bluetooth transmission.
159+
160+
config ESP32_BT_CTLR_TX_ANTENNA_INDEX_0
161+
bool "Antenna 0"
162+
163+
config ESP32_BT_CTLR_TX_ANTENNA_INDEX_1
164+
bool "Antenna 1"
165+
166+
endchoice
167+
168+
config ESP32_BT_CTLR_TX_ANTENNA_INDEX_EFF
169+
int
170+
default 0 if ESP32_BT_CTLR_TX_ANTENNA_INDEX_0
171+
default 1 if ESP32_BT_CTLR_TX_ANTENNA_INDEX_1
172+
173+
choice ESP32_BT_CTLR_RX_ANTENNA_INDEX
174+
prompt "Bluetooth default RX antenna"
175+
help
176+
Select the antenna used for Bluetooth reception.
177+
178+
config ESP32_BT_CTLR_RX_ANTENNA_INDEX_0
179+
bool "Antenna 0"
180+
181+
config ESP32_BT_CTLR_RX_ANTENNA_INDEX_1
182+
bool "Antenna 1"
183+
184+
endchoice
185+
186+
config ESP32_BT_CTLR_RX_ANTENNA_INDEX_EFF
187+
int
188+
default 0 if ESP32_BT_CTLR_RX_ANTENNA_INDEX_0
189+
default 1 if ESP32_BT_CTLR_RX_ANTENNA_INDEX_1
190+
191+
config ESP32_BT_LE_ADV_DATA_LENGTH_ZERO_AUX
192+
bool "Include auxiliary packet for zero-length advertising"
193+
help
194+
Include AUX PDUs for non-connectable, non-scannable advertising when payload is zero.
195+
196+
config ESP32_BT_CTLR_CHAN_ASS_EN
197+
bool "Channel assessment timer"
198+
default y
199+
help
200+
Evaluate channel quality periodically and update the channel map every 4 seconds.
201+
202+
config ESP32_BT_CTLR_LE_PING_EN
203+
bool "LE authenticated payload timeout"
204+
default y
205+
help
206+
Enable LE authenticated payload timeout (ping timer) for link security.
207+
208+
menu "BLE link-layer control procedures"
209+
210+
config ESP32_BT_CTLR_LE_LLCP_CONN_UPDATE
211+
bool "Terminate on connection update timeout"
212+
213+
config ESP32_BT_CTLR_LE_LLCP_CHAN_MAP_UPDATE
214+
bool "Terminate on channel map update timeout"
215+
216+
config ESP32_BT_CTLR_LE_LLCP_PHY_UPDATE
217+
bool "Terminate on PHY update timeout"
218+
219+
endmenu
220+
221+
config ESP32_BT_CTLR_DTM_ENABLE
222+
bool "Direct test mode support"
223+
default y
224+
225+
config ESP32_BT_CTLR_LE_MASTER
226+
bool "BLE master role support"
227+
default y
228+
help
229+
When disabled, connectable advertising is not used.
230+
231+
config ESP32_BT_CTLR_LE_SCAN
232+
bool "BLE scanning support"
233+
default y
234+
235+
config ESP32_BT_CTLR_LE_SECURITY_ENABLE
236+
bool "BLE security support"
237+
default y
238+
239+
config ESP32_BT_CTLR_LE_ADV
240+
bool "BLE advertising support"
241+
default y
242+
243+
config ESP32_BT_CTLR_CHECK_CONNECT_IND_ACCESS_ADDRESS
244+
bool "CONNECT_IND access address verification"
245+
help
246+
Perform strict validation of Access Address in CONNECT_IND PDUs to improve security.
247+
248+
choice ESP32_BT_CTLR_COEX_PHY_CODED_TX_RX_TLIM
249+
prompt "Coexistence PHY coded TX/RX time limit"
250+
depends on ESP32_SW_COEXIST_ENABLE
251+
default ESP32_BT_CTLR_COEX_PHY_CODED_TX_RX_TLIM_DIS
252+
help
253+
Limit TX/RX time for coded PHY to reduce Wi-Fi interference.
254+
255+
config ESP32_BT_CTLR_COEX_PHY_CODED_TX_RX_TLIM_EN
256+
bool "Apply time limit"
257+
258+
config ESP32_BT_CTLR_COEX_PHY_CODED_TX_RX_TLIM_DIS
259+
bool "No time limit"
260+
261+
endchoice
262+
263+
config ESP32_BT_CTLR_COEX_PHY_CODED_TX_RX_TLIM_EFF
264+
int
265+
default 0 if !ESP32_SW_COEXIST_ENABLE
266+
default 1 if ESP32_BT_CTLR_COEX_PHY_CODED_TX_RX_TLIM_EN
267+
default 0 if ESP32_BT_CTLR_COEX_PHY_CODED_TX_RX_TLIM_DIS
268+
269+
endmenu # ESP32 Bluetooth Controller Configuration
270+
29271
endif # BT_ESP32

west.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -169,7 +169,7 @@ manifest:
169169
groups:
170170
- hal
171171
- name: hal_espressif
172-
revision: e13c7a1f6ffbdd988d3e2c5377cf13b25c88ca50
172+
revision: 8502aafa3856b9de1e530ccc3ce36e19978f58d2
173173
path: modules/hal/espressif
174174
west-commands: west/west-commands.yml
175175
groups:

0 commit comments

Comments
 (0)