Wi-Fi Bluetooth for Linux Forum Discussions
The BT assets of AIROC Bluetooth Stack (Linux) Release are all on GitHub now.
Description:
AIROC Bluetooth Stack is Infineon's Bluetooth Host Protocol Stack implementation. The stack is optimized to work with Infineon Bluetooth controllers. The BTSTACK supports Bluetooth BR/EDR and BLE core protocols. This page provides the Github links to get started with application developments in Linux platform using AIROC Bluetooth Stack.
Please find the code examples :
Code Examples:
https://github.com/Infineon/linux-example-btstack-wifi-onboarding
https://github.com/Infineon/linux-example-btstack-wakeonle
https://github.com/Infineon/linux-example-btstack-bas
https://github.com/Infineon/linux-example-btstack-hello-sensor
https://github.com/Infineon/linux-example-btstack-alert-client
https://github.com/Infineon/linux-example-btstack-alert-server
https://github.com/Infineon/linux-example-btstack-headset
https://github.com/Infineon/linux-example-btstack-a2dp-source
https://github.com/Infineon/linux-example-btstack-a2dp-sink
https://github.com/Infineon/linux-example-btstack-spp
https://github.com/Infineon/linux-example-btstack-handsfree-unit
https://github.com/Infineon/linux-example-btstack-handsfree-ag
Show Less
v5.15.58-2023_0901
Release Date
2023-09-01
Description
This is Cypress's Linux brcmfmac driver and firmware support package.
Brcmfmac is an open-source driver project.
Files in this release:
* Backports package (cypress-backports-v5.15.58-2023_0901-module-src.tar.gz)
* Firmware/clm_blob files (cypress-firmware-v5.15.58-2023_0901.tar.gz)
* Cypress fmac patch files (cypress-patch-v5.15.58-2023_0901.tar.gz)
* Device tree files (cypress-devicetree-2023-09-01.tar.gz)
* hostapd/wpa_supplicant patch (cypress-hostap_2_10-2023_0901.tar.gz)
* Cypress customer patch (cypress-custom-patch-5.4.21.tar.gz)
* Cirrent Agent (cypress-cirrent-1.60.tar.gz)
* Documents (docs/)
* README
Checksum
sha256sum:
98d7527606017f851fccb91ef557efaf778c5b2b48264942ed0ea9d7c0a1516a cypress-fmac-v5.15.58-2023_0901.zip
7f88760a74174713d4ffd7aec3479f592c5fa9f876c92941662897454a5feb53 cypress-backports-v5.15.58-2023_0901-module-src.tar.gz
ce3bb31020e5ffe24fe549802440c137d14a05ad77af3e8e1fb9e184db96ed55 cypress-cirrent-1.60.tar.gz
1a792aa55d847917a7a741418493427ff30dfff10eacf9218b58f192c570942c cypress-custom-patch-5.4.21.tar.gz
1fe05a168cb6e3697e1a7610760f8e86393f53f8fc22b47645b6d00f59365e6d cypress-devicetree-2023-09-01.tar.gz
f0b9d3b25a71b4de69593f511d7e99b49dae8528eb9797983f89f584294963c1 cypress-firmware-v5.15.58-2023_0901.tar.gz
ad057de3baa941ddf59af8b784fe3c3ff1173fe5e04146f07db85362e2d8bb7b cypress-hostap_2_10-2023_0901.tar.gz
96911757cd613afb743db1c504fc3db2184456f3af0d79a814e6463ce384689a cypress-patch-v5.15.58-2023_0901.tar.gz
2023-09-11 Initial Post
- Add 43455 FW
The latest linux driver and software can be accessed here:
Wi-Fi Driver source package: https://community.infineon.com/t5/Wi-Fi-Bluetooth-for-Linux/Cypress-Linux-WiFi-Driver-Release-FMAC-2023-09-01/td-p/492862
Github link: https://github.com/Infineon/ifx-wireless-drivers/tree/RTM/v5.15.58-godzilla
The older/archived Wi-Fi driver releases can be accessed here:
Show LessPackage Version
ahd-2023_0525
Release Date
2023-05-25
Description
Infineon Android release for the broad market.
This release has been qualified on IMX8 SDIO platform running Android 13.
Customers wishing to leverage the Android Open Source Platform now have an out of the box Android solution for Infineon's connectivity parts.
The release package includes:
* ahd
* AHDBinaries
* confs
* device
*imx8
* firmware
* hostapd_supplicant_src
* nvram
* 55572_AndroidBringup.pdf
* Android13_Godzilla_55572_SDIO_Release_Notes.pdf
* Infineon_55572_Wi-Fi_6_6E_User_Guide.pdf
Test Environment:
* IMX8 SDIO setup
* 55572 Sanity, 6G and 11ax features
Show LessPackage Version
ahd-2022_1223
Release Date
2023-01-03
Description
Cypress Android release for the broad market.
This release has been qualified on Hikey 960 platform.
Customers wishing to leverage the Android Open Source Platform now have an out of the box Android solution for Cypress's connectivity parts.
The release package includes:
* ahd
* device
*hikey960
* firmware
* nvram
* 55572_AndroidBringup.pdf
Test Environment:
* Hikey 960
* 55572 Sanity and VTS
Change Log
[2022-12-23]
* Initial post
Show LessHi there,
We are trying to fcc wifi certify our project which uses a custom buildroot toolchain and arm processor.
We need help to compile the wl_tool so we can proceed with certification, but we need it to be cross compiled for our architecture (arm 32bit).
Can I ask a representative to help us to compile it with our custom toolchain?
CPU Info:
- armv7l
- little-endian
- hard-float ABI
- neon/vfpv4
Custom Toolchain Instructions:
- download toolchain
- extract toolchain:
tar jxf arm-co6-linux-uclibcgnueabihf_sdk-buildroot_2021.02.1.tar.xz - cd to arm-co6-linux-uclibcgnueabihf_sdk-buildroot
- ./relocate_sdk.sh
- add toolchain into path e.g.
export PATH="$PATH:$PWD/usr/bin" - Set cross compile variables:
export ARCH=arm
export CROSS_COMPILE=arm-co6-linux-uclibcgnueabihf-
Tagging @VinayakS_26 / @raks_99 / @DoubleLo as I found they have helped another customer to do this.
Show Less
We would like to support WPA3 Enterprise and AES-192 modes by CYW4373 using murata Type 2BC.
Using bindings for Linux driver is as below for Infenion CYW4373.
https://github.com/STMicroelectronics/linux/blob/v6.1-stm32mp/Documentation/devicetree/bindings/net/wireless/brcm,bcm4329-fmac.yaml
Are all Enterprise security modes supported that are listed by wpa_supplicant here?
https://w1.fi/wpa_supplicant/
The BT assets of AIROC Bluetooth Stack (Linux) Release are all on GitHub now.
Description:
AIROC Bluetooth Stack is Infineon's Bluetooth Host Protocol Stack implementation. The stack is optimized to work with Infineon Bluetooth controllers. The BTSTACK supports Bluetooth BR/EDR and BLE core protocols. This page provides the Github links to get started with application developments in Linux platform using AIROC Bluetooth Stack.
Please find the code examples :
Code Examples:
https://github.com/Infineon/linux-example-btstack-wifi-onboarding
https://github.com/Infineon/linux-example-btstack-wakeonle
https://github.com/Infineon/linux-example-btstack-bas
https://github.com/Infineon/linux-example-btstack-hello-sensor
https://github.com/Infineon/linux-example-btstack-alert-client
https://github.com/Infineon/linux-example-btstack-alert-server
https://github.com/Infineon/linux-example-btstack-headset
https://github.com/Infineon/linux-example-btstack-a2dp-source
https://github.com/Infineon/linux-example-btstack-a2dp-sink
https://github.com/Infineon/linux-example-btstack-spp
https://github.com/Infineon/linux-example-btstack-handsfree-unit
https://github.com/Infineon/linux-example-btstack-handsfree-ag
Show Less
Infineon strives to enhance user experience by providing *ease-of-use* Software for swift activation of the AIROC Wi-Fi/Bluetooth combo.
This guide outlines the steps for Debian package installation on the NVIDIA Jetson Orin AGX + CYW55573 board to enable the WLAN module in just a couple of minutes.
NVIDIA Jetson Orin AGX + CYW55573 Debian Package Bring-Up Steps
- Introduction
The steps outlined in the document describe how to install the Debian package in order to enable the WLAN module on the Jetson Orin AGX platform.
- Pre-requisite
Ensure that the default kernel image from NVIDIA Jetpack 5.1.2 with kernel version 5.10.120 is installed.
Jetpack SDK 5.1.2: https://developer.nvidia.com/embedded/jetpack-sdk-512
Once this requirement is met, proceed with the following instructions.
- Hardware
- Jetson Orin AGX board
- CYW55573 M.2 module
- Debian package bring-up
- Install the package cyw55573-jetson-orin-agx-1.0-1-arm64.deb using the command:
-
% sudo dpkg -i cyw55573-jetson-orin-agx-1.0-1-arm64.deb
-
- Use the following command to check if the wlan0 interface is available:
% ifconfig
c. To assign a static IP address to the wlan0 interface, use the command provided below:
% sudo ifconfig wlan0 192.168.147.25 up
d. The IP address subnet should match that of IP address of AP. Once you have assigned an IP address, check the output of the ifconfig command.
We have spotted a path correction to the script that was used for Debian package (Firmware/FMAC) creation and so we updated/fixed that script.
Using this updated script we created the deb pkg, there are no any firmware/FMAC files changes in this deb package.
There're 2 *.deb packages been attached:
- cyw55573-jetson-orin-agx-1.0-1-arm64.deb --> Fmac driver, firmware pkg Debian file.
- ifx-hostap-jetson-2.10-arm64.deb --> hostapd, supplicant pkg Debian file.
Feel free to leave your comments here if you run into any problem.
Show LessPackage Version
v5.10.9-2022_0511
Release Date
2022-05-11
Description
This is Cypress's Linux brcmfmac driver and firmware support package.
Brcmfmac is an open-source driver project.
Files in this release:
* Backports package (cypress-backports-v5.10.9-2022_0511-module-src.tar.gz)
* Firmware/clm_blob files (cypress-firmware-v5.10.9-2022_0511.tar.gz)
* Cypress fmac patch files (cypress-patch-v5.10.9-2022_0511.tar.gz)
* Device tree files (cypress-devicetree-2022-05-13.tar.gz)
* hostapd/wpa_supplicant patch (cypress-hostap_2_9-1-2022_0511.tar.gz)
* Cirrent Agent (cypress-cirrent-1.60.tar.gz)
* Documents (docs/)
* README
Checksum
sha256sum:
7cf529c371f0bc8c47908c42359879aee308970b34e7c5e971bd9a79124f215b cypress-backports-v5.10.9-2022_0511-module-src.tar.gz
ce3bb31020e5ffe24fe549802440c137d14a05ad77af3e8e1fb9e184db96ed55 cypress-cirrent-1.60.tar.gz
4bce8d957b451f7d9a23bd77121eea920bde372f6097424c6e87d6a61aa34d9e cypress-devicetree-2022-05-13.tar.gz
8b301a0828f4eecfc261039bff01a875edc0f93c58887814941b7cdfbe8bacb8 cypress-firmware-v5.10.9-2022_0511.tar.gz
ca748efbef2b6197a50152e3d51fb028949be5bbcb2474b67e2e35dd5aa1804f cypress-hostap_2_9-1-2022_0511.tar.gz
8201ad2e8720279f5baf870be57fe15be49d714bcaa0653c0faa8de80b8a2c51 cypress-patch-v5.10.9-2022_0511.tar.gz
ec1311ceddd80e3a24dbf2976cbbfbb043d7909d8cd91c4254da563d3dedf9e8 README.txt
[Change Log]
2022-06-07 Initial Post
Show LessHello,
We have a custom hardware board based on STM32MP1 mpu along with cypress43455 and some other peripherals too.
For our use case, we are using yocto linux and uses openstlinux (arm-openstlinux_weston-linux-gnueabi-gcc), Kernel version 4.19.9 . We used to get the kernel oops message and the network crashes when I copy files bigger than 1MB from the target to host (https://community.infineon.com/t5/AIROC-Wi-Fi-MCUs/The-Network-Crashes-while-transferring-files-over-WiFi-Need-Backports-for-kernel/td-p/462819 ).
So we decided to use the latest backport drivers, and downloaded the latest cypress linux WiFi driver release [ cypress-fmac-v5.15.58-2023_0801 ] ( https://community.infineon.com/t5/Wi-Fi-Bluetooth-for-Linux/Cypress-Linux-WiFi-Driver-Release-FMAC-2023-08-01/td-p/459849 ).
We successfully compiled the drivers from the backport as per the software user guide.
And for the firmware, since those were missing in the recent releases, used the cyfmac43455-sdio.bin and cyfmac43455-sdio.clm_blob files from 2022_0511 Release from https://github.com/Infineon/ifx-linux-firmware/tree/dc38e700612b334080e0b6df69070a88c4c2a12b/firmware .
For the nvram file cyfmac43455-sdio.txt, we got it from murata ( https://github.com/murata-wireless/cyw-fmac-nvram/blob/master/cyfmac43455-sdio.1MW.txt )
We copied the new driver files and all the above mentioned files and booted the target board, but, the WiFi interface (wlan0) itself is missing. There is no network.
ST OpenSTLinux - Weston - (A Yocto Project Based Distro) 2.6-snapshot stm32mp1-disco ttySTM0
stm32mp1-disco login: root (automatic login)
[ 36.655457] compat: loading out-of-tree module taints kernel.
[ 36.666561] Loading modules backported from Linux version v5.15.58-2023_0801-0-ge25eb9efc1df
[ 36.680880] Backport generated by backports.git v5.15.58-1-0-g42a95ce7
[ 37.067684] cfg80211: Loading compiled-in X.509 certificates for regulatory database
[ 37.094404] cfg80211: Loaded X.509 cert 'sforshee: 00b28ddf47aef9cea7'
[ 37.100977] platform regulatory.0: Direct firmware load for regulatory.db failed with error -2
[ 37.114617] cfg80211: failed to load regulatory.db
[ 37.400063] brcmfmac: brcmf_fw_alloc_request: using cypress/cyfmac43455-sdio for chip BCM4345/6
[ 37.411666] brcmfmac mmc0:0001:1: Direct firmware load for cypress/cyfmac43455-sdio.st,stm32mp157c-dk2-m4-examples.bin failed with error -2
[ 37.427945] usbcore: registered new interface driver brcmfmac
[ 37.470025] brcmfmac: brcmf_fw_request_firmware: no board-specific nvram available (ret=-2), device will use cypress/cyfmac43455-sdio.txt
[ 38.458260] brcmfmac: brcmf_fw_alloc_request: using cypress/cyfmac43455-sdio for chip BCM4345/6
[ 38.528267] brcmfmac: brcmf_c_preinit_dcmds: Firmware: BCM4345/6 wl0: Apr 1 2022 00:35:06 version 7.45.249 (d826021 CY) FWID 01-b52c64b
root@stm32mp1-disco:~# [ 44.710596] brcmfmac: brcmf_sdio_bus_sleep: error while changing bus sleep state -110
[ 44.717266] brcmfmac: brcmf_sdio_txfail: sdio error, abort command and terminate frame
[ 44.728166] brcmfmac: brcmf_sdio_txfail: sdio error, abort command and terminate frame
[ 44.735201] brcmfmac: brcmf_sdio_txfail: sdio error, abort command and terminate frame
[ 44.743274] brcmfmac: brcmf_sdio_dpc: sdio ctrlframe tx failed err=-110
[ 44.749484] brcmfmac: brcmf_sdio_dpc: failed backplane access over SDIO, halting operation
[ 44.754113] ieee80211 phy0: brcmf_proto_bcdc_query_dcmd: brcmf_proto_bcdc_msg failed w/status -110
[ 44.767719] ieee80211 phy0: brcmf_cfg80211_get_channel: chanspec failed (-110)
[ 44.782741] brcmfmac: brcmf_sdio_bus_sleep: error while changing bus sleep state -110
[ 44.789495] brcmfmac: brcmf_sdio_txfail: sdio error, abort command and terminate frame
[ 52.193968] net_ratelimit: 84 callbacks suppressed
[ 52.193994] brcmfmac: brcmf_sdio_bus_sleep: error while changing bus sleep state -110
[ 52.205640] brcmfmac: brcmf_sdio_txfail: sdio error, abort command and terminate frame
[ 52.214098] brcmfmac: brcmf_sdio_txfail: sdio error, abort command and terminate frame
[ 52.221924] brcmfmac: brcmf_sdio_txfail: sdio error, abort command and terminate frame
[ 52.229885] brcmfmac: brcmf_sdio_dpc: sdio ctrlframe tx failed err=-110
[ 52.235925] brcmfmac: brcmf_sdio_dpc: failed backplane access over SDIO, halting operation
[ 52.237634] ieee80211 phy0: brcmf_proto_bcdc_query_dcmd: brcmf_proto_bcdc_msg failed w/status -110
We couldn't find what is wrong. We are stuck at this problem. Could you please help us
solve this problem ?
Show Less
Hi:
I'm using CYW55573-SDIO/AW-XB583MA-SUR with brcmfmac 5.15.58-20230901 on Rock 5B. I cannot reload driver, showing brcmf_blhs_is_bootloader_ready: Timeout waiting for bootloader ready.
The only way to solve this is de-asserting WL_REG_ON and re-asserting it.
Full log & dts & nvram is on attachment.
Fw version: wl0: Jul 31 2023 23:59:17 version 18.53.212.15 (2203c7e) FWID 01-ca141bb2
These commands can reproduce this bug.
insmod brcmfmac.ko debug=0x00100007 ; sleep 1 ; rmmod brcmfmac ; sleep 1 ; insmod brcmfmac.ko debug=0x00100007 ; dmesg > log
Is there any solution to fix this, keeping WL_REG_ON always active?
I tried CYW43455-SDIO and this problem does not happen.
Show Lessv5.15.58-2023_0901
Release Date
2023-09-01
Description
This is Cypress's Linux brcmfmac driver and firmware support package.
Brcmfmac is an open-source driver project.
Files in this release:
* Backports package (cypress-backports-v5.15.58-2023_0901-module-src.tar.gz)
* Firmware/clm_blob files (cypress-firmware-v5.15.58-2023_0901.tar.gz)
* Cypress fmac patch files (cypress-patch-v5.15.58-2023_0901.tar.gz)
* Device tree files (cypress-devicetree-2023-09-01.tar.gz)
* hostapd/wpa_supplicant patch (cypress-hostap_2_10-2023_0901.tar.gz)
* Cypress customer patch (cypress-custom-patch-5.4.21.tar.gz)
* Cirrent Agent (cypress-cirrent-1.60.tar.gz)
* Documents (docs/)
* README
Checksum
sha256sum:
98d7527606017f851fccb91ef557efaf778c5b2b48264942ed0ea9d7c0a1516a cypress-fmac-v5.15.58-2023_0901.zip
7f88760a74174713d4ffd7aec3479f592c5fa9f876c92941662897454a5feb53 cypress-backports-v5.15.58-2023_0901-module-src.tar.gz
ce3bb31020e5ffe24fe549802440c137d14a05ad77af3e8e1fb9e184db96ed55 cypress-cirrent-1.60.tar.gz
1a792aa55d847917a7a741418493427ff30dfff10eacf9218b58f192c570942c cypress-custom-patch-5.4.21.tar.gz
1fe05a168cb6e3697e1a7610760f8e86393f53f8fc22b47645b6d00f59365e6d cypress-devicetree-2023-09-01.tar.gz
f0b9d3b25a71b4de69593f511d7e99b49dae8528eb9797983f89f584294963c1 cypress-firmware-v5.15.58-2023_0901.tar.gz
ad057de3baa941ddf59af8b784fe3c3ff1173fe5e04146f07db85362e2d8bb7b cypress-hostap_2_10-2023_0901.tar.gz
96911757cd613afb743db1c504fc3db2184456f3af0d79a814e6463ce384689a cypress-patch-v5.15.58-2023_0901.tar.gz
2023-09-11 Initial Post
- Add 43455 FW
For Jetson Xavier NX running Linux Kernel 5.10 (able to build clean), need to backport Cypress 5.15.58 brcmfmac driver.
Using https://community.infineon.com/t5/Wi-Fi-Bluetooth-for-Linux/Cypress-Linux-WiFi-Driver-Release-FMAC-2023-08-01/m-p/459849#M2838%3Fprofile.language=en, following the instructions from the README, I'm running into the following build errors, and need help to fix them. I'm trying to backport the Cypress 5.15.58 driver, to work with Linux 5.10.104-Tegra:
Snapshot of the build error:
hxxxxxx@lyyyyyy:~/proj/l4t-kernel-master/5.1.1/kernel/v5.15.58-backports$ make KLIB=$MY_KERNEL KLIB_BUILD=$MY_KERNEL modules
CC [M] /home/hxxxxxx/proj/l4t-kernel-master/5.1.1/kernel/v5.15.58-backports/compat/main.o
In file included from <command-line>:
././include/linux/compiler_types.h:88:10: fatal error: asm/compiler.h: No such file or directory
88 | #include <asm/compiler.h>
| ^~~~~~~~~~~~~~~~
compilation terminated.
make[5]: *** [scripts/Makefile.build:281: /home/hxxxxxx/proj/l4t-kernel-master/5.1.1/kernel/v5.15.58-backports/compat/main.o] Error 1
make[4]: *** [scripts/Makefile.build:498: /home/hxxxxxx/proj/l4t-kernel-master/5.1.1/kernel/v5.15.58-backports/compat] Error 2
make[3]: *** [Makefile:1854: /home/hxxxxxx/proj/l4t-kernel-master/5.1.1/kernel/v5.15.58-backports] Error 2
make[2]: *** [Makefile.build:13: modules] Error 2
make[1]: *** [Makefile.real:88: modules] Error 2
make: *** [Makefile:43: modules] Error 2
I can provide additional data points to help debug., towards finding a resolution.
I bought some amount of CYW20719B1 (CYW20719B1KUMLG in specific) for some project I'm working on. I set them on a small board with a UART connection. I got them working with BtAttach and was able to communicate using standard Linux bluez. However, all of them have the same BT-Mac address of AA:AA:AA:AA:AA:AA. My question is what's the simplest way to flush a new address to the chip, as I have many boards to process. I read in this very forum something about .btp files, but either I don't understand something, or I don't have the .btp file for this chip. Where do I get the right .btp file if I really need one?
Thanks ahead,
Assaf
Show LessI have asked about CYW43353 bt host wake here:
The thread was then locked and the accepted answer points to tutorial for CY20xxx parts.
Forgive me asking, but will this actually work with CYW43353 series as well ?
Is it true then that the commands for BT host wake are the same across the whole range of your BT ICs ?
Kind regards.
Show Less