Skip to content

Commit f91e35d

Browse files
npal-cycarlescufi
authored andcommitted
driver: bluetooth: Added Infineon cyw43xxx BT driver
Added initial version of Infineon cyw43xxx BT ( H4 HCI extension drivers/bluetooth/hci/CMakeLists.txt) Add initial version of binding file for Infineon CYW43xx BT HCI extension driver. Signed-off-by: Nazar Palamar <[email protected]>
1 parent a89b86a commit f91e35d

File tree

5 files changed

+520
-0
lines changed

5 files changed

+520
-0
lines changed

drivers/bluetooth/hci/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
# SPDX-License-Identifier: Apache-2.0
22

33
zephyr_library_sources_ifdef(CONFIG_BT_B91 hci_b91.c)
4+
zephyr_library_sources_ifdef(CONFIG_BT_CYW43XXX cyw43xxx.c)
45
zephyr_library_sources_ifdef(CONFIG_BT_ESP32 hci_esp32.c)
56
zephyr_library_sources_ifdef(CONFIG_BT_H4 h4.c)
67
zephyr_library_sources_ifdef(CONFIG_BT_H5 h5.c)

drivers/bluetooth/hci/Kconfig

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -109,6 +109,19 @@ config BT_STM32_IPM_RX_STACK_SIZE
109109
depends on BT_STM32_IPM
110110
default 512
111111

112+
menuconfig BT_CYW43XXX
113+
bool "CYW43XXX BT connectivity"
114+
default y
115+
select BT_HCI_SETUP
116+
depends on GPIO
117+
depends on DT_HAS_INFINEON_CYW43XXX_BT_HCI_ENABLED
118+
depends on BT_H4
119+
help
120+
Infineon's AIROC™ Wi-Fi & combos portfolio integrates
121+
IEEE 802.11a/b/g/n/ac/ax Wi-Fi and Bluetooth® 5.2 in a single-chip
122+
solution to enable small-form-factor IoT designs.
123+
source "drivers/bluetooth/hci/Kconfig.infineon"
124+
112125
config BT_DRIVER_QUIRK_NO_AUTO_DLE
113126
bool "Host auto-initiated Data Length Update quirk"
114127
depends on BT_AUTO_DATA_LEN_UPDATE
Lines changed: 137 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,137 @@
1+
# Copyright (c) 2023 Cypress Semiconductor Corporation (an Infineon company) or
2+
# an affiliate of Cypress Semiconductor Corporation
3+
# SPDX-License-Identifier: Apache-2.0
4+
5+
if BT_CYW43XXX
6+
7+
choice CYW43XXX_PART
8+
prompt "Select CYW43XXX part"
9+
10+
config CYW4343W
11+
bool "CYW4343W"
12+
help
13+
Enable Infineon CYW4343W BLE connectivity,
14+
More information about CYW4343W device you can find on
15+
https://www.infineon.com/cms/en/product/wireless-connectivity/airoc-wi-fi-plus-bluetooth-combos/cyw4343w/
16+
17+
config CYW4373
18+
bool "CYW4373"
19+
help
20+
Enable Infineon CYW4373 BLE connectivity,
21+
More information about CYW4373 device you can find on
22+
https://www.infineon.com/cms/en/product/wireless-connectivity/airoc-wi-fi-plus-bluetooth-combos/cyw4373/
23+
24+
config CYW43012
25+
bool "CYW43012"
26+
help
27+
Enable Infineon CYW43012 BLE connectivity,
28+
More information about CYW43012 device you can find on
29+
https://www.infineon.com/cms/en/product/wireless-connectivity/airoc-wi-fi-plus-bluetooth-combos/cyw43012/
30+
31+
config CYW43438
32+
bool "CYW43438"
33+
help
34+
Enable Infineon CYW43438 BLE connectivity,
35+
More information about CYW43438 device you can find on
36+
https://www.infineon.com/cms/en/product/wireless-connectivity/airoc-wi-fi-plus-bluetooth-combos/cyw43438/
37+
38+
config CYW43439
39+
bool "CYW43439"
40+
help
41+
Enable Infineon CYW43439 BLE connectivity,
42+
More information about CYW43439 device you can find on
43+
https://www.infineon.com/cms/en/product/wireless-connectivity/airoc-wi-fi-plus-bluetooth-combos/cyw43439/
44+
45+
config BT_CYW43XXX_CUSTOM
46+
bool "Custom CYW43xx device/module"
47+
help
48+
Select Custom CYW43xx device/module. For this option,
49+
user must to provide path to BT firmware HCD file for
50+
custom or vendor CYW43xx modules in CYW43XX_CUSTOM_FIRMWARE_HCD_BLOB.
51+
52+
endchoice
53+
54+
choice CYW43012_MODULE
55+
prompt "Select CYW43012 module"
56+
depends on CYW43012
57+
58+
config CYW43012_MURATA_1LV
59+
bool "MURATA-1LV"
60+
help
61+
Murata Type 1LV module based on Infineon CYW43012 combo chipset
62+
which supports Wi-Fi® 802.11a/b/g/n + Bluetooth® 5.0 BR/EDR/LE
63+
up to 72.2Mbps PHY data rate on Wi-fi® and 3Mbps PHY data rate
64+
on Bluetooth®. 2Mbps LE PHY is also supported.
65+
66+
Detailed information about Murata Type 1LV module you can find on
67+
https://www.murata.com/en-us/products/connectivitymodule/wi-fi-bluetooth/overview/lineup/type1lv
68+
69+
endchoice
70+
71+
choice CYW4343W_MODULE
72+
prompt "Select CYW4343W module"
73+
depends on CYW4343W
74+
75+
config CYW4343W_MURATA_1DX
76+
bool "MURATA-1DX"
77+
help
78+
Murata Type 1DX modules based on Infineon CYW4343W combo chipset
79+
which supports Wi-Fi® 802.11b/g/n + Bluetooth® 5.1 BR/EDR/LE
80+
up to 65Mbps PHY data rate on Wi-fi® and 3Mbps PHY data rate
81+
on Bluetooth®.
82+
83+
Detailed information about Type 1DX module you can find on
84+
https://www.murata.com/en-us/products/connectivitymodule/wi-fi-bluetooth/overview/lineup/type1dx
85+
86+
endchoice
87+
88+
choice CYW4373_MODULE
89+
prompt "Select CYW4373 module"
90+
depends on CYW4373
91+
92+
config CYW4373_STERLING_LWB5PLUS
93+
bool "STERLING-LWB5plus"
94+
help
95+
Laird Sterling LWB5+ 802.11ac / Bluetooth 5.0 M.2 Carrier Board
96+
(E-Type Key w/ SDIO/UART)
97+
98+
Detailed information about Type Sterling LWB5+ module you can find on
99+
https://www.lairdconnect.com/wireless-modules/wifi-modules-bluetooth/sterling-lwb5-plus-wifi-5-bluetooth-5-module
100+
101+
endchoice
102+
103+
choice CYW43439_MODULE
104+
prompt "Select CYW43439 module"
105+
depends on CYW43439
106+
107+
config CYW43439_MURATA_1YN
108+
bool "MURATA_1YN"
109+
help
110+
Murata Type 1YN module based on Infineon CYW43439 combo chipset
111+
which supports Wi-Fi® 802.11b/g/n + Bluetooth® 5.2 BR/EDR/LE
112+
up to 65Mbps PHY data rate on Wi-fi® and 3Mbps PHY data rate on
113+
Bluetooth®.
114+
115+
Detailed information about Murata Type 1YN module you can find on
116+
https://www.murata.com/en-us/products/connectivitymodule/wi-fi-bluetooth/overview/lineup/type1yn
117+
118+
endchoice
119+
120+
config CYW43XX_CUSTOM_FIRMWARE_HCD_BLOB
121+
depends on BT_CYW43XXX_CUSTOM
122+
string "Path to user BT firmware HCD file"
123+
help
124+
Path to BT firmware HCD file for custom or vendor CYW43xx modules.
125+
It can be absolute path, or relative from project folder.
126+
127+
# Change size of command lengths. It for vendor commands related to
128+
# firmware downloading.
129+
config BT_BUF_CMD_TX_SIZE
130+
default 255
131+
132+
# Disable ATT_ENFORCE_FLOW feature, CYW43XX informs about frees buffer
133+
# (HCL Number Of Completed Packets event) after second packet.
134+
config BT_ATT_ENFORCE_FLOW
135+
default n
136+
137+
endif # BT_CYW43XXX

0 commit comments

Comments
 (0)