Wi-Fi Bluetooth for Linux Forum Discussions
Package Version
ahd-2023_1221
Release Date
2023-12-21
Description
Infineon Android release for the broad market.
This release has been qualified on IMX8 SDIO platform and Hikey960 PCIE 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
* 4373-Android13-SDIO
*43012-Android13-SDIO
*43022-Android13-SDIO
*54591-Android13-PCIE
*55572-Android13-SDIO
*AHDBinaries
*device
*firmware
*nvram
* Android13_55572_SDIO_Release_Notes.pdf
* Infineon_55572_Wi-Fi_6_6E_User_Guide.pdf
* confs
* hostapd_supplicant_src
* Android13_PCIE_Bringup.pdf
* Android13_SDIO_Bringup.pdf
* Android13_Feature_Bringup.pdf
Test Environment:
* IMX8 SDIO setup
* Hikey960 PCIE setup
* 55572, 43012, 43022, 54591 and 4373 Sanity, 6G and 11ax features (55572), WOWL via OOB(55572)
and PNO scan offload(55572, 43022)
Show LessDescription
The package contains all the required files (including AIROC™ Bluetooth® stack for ARMv8 Linux, Bluetooth® porting layer, and sample code examples of Bluetooth® profiles) to evaluate and test Bluetooth® Classic and Low Energy on AIROC™ combo chip (CYW4373, CYW43439, CYW55573/2/1).
What's new?
Package comes with codes examples to demonstrate Bluetooth LE Audio capability of CYW55573/2/1 in hosted mode. The code example demonstrates Bluetooth® LE Audio unicast and broadcast functionality.
Functions include:
- Broadcast audio stream scanning
- Receiving broadcast audio stream
- Unicast audio stream establishment
- Unicast audio stream release
- Unicast sink connect to source (1 CIG, 1 CIS)
Bluetooth® Linux Code Examples & Supported Chip
Code example |
Feature demonstration |
Supported chip |
LE Audio CIS Source |
Implements the Unicast Source application using BTSTACK and LE-Audio profile library |
CYW55573/CYW55572/CYW55571 |
LE Audio CIS Sink |
Implements the Unicast Sink application using BTSTACK and LE-Audio profile library |
CYW55573/CYW55572/CYW55571 |
LE Audio BIS Source |
Demonstrates the ability of LE Audio broadcast |
CYW55573/CYW55572/CYW55571 |
LE Audio BIS Sink |
Demonstrates the ability to receive LE Audio broadcast |
CYW55573/CYW55572/CYW55571 |
Linux Bluetooth® Find me |
Demonstrates the Find Me profile which defines the behavior when a button is pressed on one device to cause an alerting signal on a peer device |
CYW55573/CYW55572/CYW55571 |
Linux Bluetooth® hello sensor |
Demonstrates GATT database and device configuration initialization, sending data to the client and processing write requests from the client |
CYW55573/CYW55572/CYW55571 CYW43439,CYW4373 |
Linux Bluetooth® Wi-Fi onboarding |
Demonstrates the feature that enables devices to connect to a Wi-Fi access point without requiring a physical interface |
CYW55573/CYW55572/CYW55571 CYW43439,CYW4373 |
Linux Bluetooth® Headset |
Multiple profile code example that demonstrates the use cases and ability of audio-related functions such as A2DP, AVRCP CT, and HFP |
CYW55573/CYW55572/CYW55571 |
Linux Bluetooth® SPP |
Demonstrates how two devices can establish a wireless communication link that emulates a traditional serial port connection |
CYW43439,CYW4373 |
Package GitHub link: https://github.com/Infineon/ifx-linux-bluetooth
Release notes
Please go through the attached released notes for more details on the package.
Show Lessv5.15.58-2024_0118
Release Date
2024-01-18
Github Link
V5.15.58 backport package: Link
V6.1.19 patch: link
Description
This is Cypress's Linux brcmfmac driver and firmware support package.
Brcmfmac is an open-source driver project.
Files in this release:
Part 1: cypress-fmac-v5.15.58-2023_1128.zip
* Backports package (cypress-backports-v5.15.58-2023_1128-module-src.tar.gz)
* Firmware/clm_blob files (cypress-firmware-v5.15.58-2023_1128.tar.gz)
* Cypress fmac patch files (cypress-patch-v5.15.58-2023_1128.tar.gz)
* Device tree files (cypress-devicetree-2023-11-28.tar.gz)
* hostapd/wpa_supplicant patch (cypress-hostap_2_10-2023_1128.tar.gz)
* Cypress customer patch (cypress-custom-patch-5.4.21.tar.gz)
* Cirrent Agent (cypress-cirrent-1.60.tar.gz)
* Documents (docs/)
* README
Part 2: cypress-patch-v6.1.19-2023_1128.zip
* Cypress fmac patch files for Vanilla v6.1.19(cypress-patch-v6.1.19-2023_1128.tar.gz)
* Infineon-Vanilla-Kernel-v6.1.19-Bring-up-Reference_20201221.pdf
Checksum
cypress-fmac-v5.15.58-2023_1128 sha256sum:
990b5f6beeb9530525f254977569fd25936e09f9ef1bf36ca52118e73dff3e68 cypress-backports-v5.15.58-2023_1128-module-src.tar.gz
ce3bb31020e5ffe24fe549802440c137d14a05ad77af3e8e1fb9e184db96ed55 cypress-cirrent-1.60.tar.gz
0c8da2efe289115f2242aa3f69de5bc616cb893ecd411e11194c4c008418bb2e cypress-custom-patch-5.4.21.tar.gz
c38cca05bb05db6198af7809c7a2e519cb33a06b02ebd4d626588c9038f7259b cypress-devicetree-2023-11-28.tar.gz
92608ceb4509cc02730833ce2119662b3c116a3956ca303245e97378186dc2a3 cypress-firmware-v5.15.58-2023_1128.tar.gz
771099830bd106307e77ebdd4d27a3e18de27bb60889c4db4bca81f44ade495d cypress-hostap_2_10-2023_1128.tar.gz
8fe7d8b677032fb04374615aae27c5a3131499956dc22ddb420847a3876974c6 cypress-patch-v5.15.58-2023_1128.tar.gz
cypress-patch-v6.1.19-2023_1128 sha256sum:
933ac3a50f0146b4078beb5e398c75a93ab0a1979a93d120a1c0ba2a06ab0ff7 Infineon-Kernel-v6.1.19-Bring-up-Reference.pdf
ac23fabed00e5c5ab0c3720fa0eb6fa135a589e009714f783701fe557abe3fe7 v6.1.19-2023_1128.tar.gz
Part 3: cypress-fmac-v5.15.58-2024_0118.zip
8ccbebf31bf69c85dc7d05fb7e3597fa282c3ba5373d76b2a65364191abb14d0 cypress-backports-v5.15.58-2024_0118-module-src.tar.gz
ce3bb31020e5ffe24fe549802440c137d14a05ad77af3e8e1fb9e184db96ed55 cypress-cirrent-1.60.tar.gz
92e7196a896fa65138c8297d4202a1811564605360f807faa2c8af310eddeb2e cypress-custom-patch-5.4.21.tar.gz
40dd314cee28149028a2d524ccd5d25f20336c7314e1e26654daecf4c9a796d2 cypress-devicetree-2024-01-18.tar.gz
739d1fae54d885e136847af2957821324c18c68622f204992e268b991172da53 cypress-firmware-2024_0118.tar.gz
2a411fb64818b054498645f64e3ef3b29e4db9a36b65987d9a3af76c2d60f765 cypress-hostap_2_10-2024_0118.tar.gz
8e43bc4487c5d4e77880e2fc9d3152a011063c5b0f3871e277561f0108a88304 cypress-patch-v5.15.58-2024_0118.tar.gz
[Change Log]
2023-12-18 Initial Post
2023-12-22 Add cypress-patch-v6.1.19 to support build brcmfmac on 6.1.19
2024-01-18 Fix for system crash post suspend and resume with CYW55572/55573 [PCIe]
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
The latest Infineon Linux Wi-Fi driver (FMAC) release can be accessed here:
Sr. No. | Driver release name | Release link |
1 | Backports v5.15.58-2023_1128 |
Public forum link: https://community.infineon.com/t5/Wi-Fi-Bluetooth-for-Linux/Cypress-Linux-WiFi-Driver-Release-FMAC-2023-11-28/td-p/662238 |
2 | 6.1 Latest kernel for RPI : RPI-6.1.21 IFXFMAC |
Github: https://github.com/Infineon/rpi-linux-kernel/releases/tag/6.1.21-hedorah-IFXFMAC-20231128 |
3 | 6.1 Kernel on BRCMFMAC |
Github: https://github.com/Infineon/ifx-wireless-drivers/tree/RTM/v6.1.19-hedorah |
Documentation is available in docs folder of cypress-fmac-v5.15.58-2023_1128.zip available at this link https://community.infineon.com/t5/Wi-Fi-Bluetooth-for-Linux/Cypress-Linux-WiFi-Driver-Release-FMAC-2023-11-28/td-p/662238
The older/archived Wi-Fi driver releases can be accessed here:
Show Less
Package 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
Hi,
We are manufacturing a product using raspberry pi 4 as host MCU board. The product is undergoing FCC and CE ESTI certification process. We need a MFG firmware and the correct WL tools to perform a "Fixed Frequency Radio Test". Please help us to obtain such firmware and software tool at your earliest convenience.
Thank you and with best regards
Cooper
Show LessI'm currently running version 7.45.206 of the brcmfmac43455-sdio firmware (release v5.4.18-2020_0402 reporting a date of Mar 23, 2020) on a Raspberry Pi 4B as part of the latest release of OpenWrt (21.02.1) configured as a dumb AP, and they don't seem to have plans in the near future to update to the latest released firmware for the CYW43455, which seems to be 7.45.234 (2021_0520 release). Were any security vulnerabilities patched in the brcmfmac43455-sdio firmware versions released after 7.45.206? My main concern is for the security of my network running the older firmware so any comments or suggestions to help me decide would be appreciated.
And would it make sense to try upgrading the firmware myself, or might there be incompatibilities with OpenWrt between the latest version and the one I'm running? I'm not sure how compatible the two versions are (7.45.206 vs. 7.45.234) from the perspective of the driver/OS. Is the upgrade process just a matter of replacing the firmware files in /lib/firmware/brcm with newer ones?
Thanks in advance for your time!
Show LessHi all,
We are working on integrating the Wi-Fi & Bluetooth driver for Linux in our platform. For that we are using the reference software package "Infineon-cypress-fmac-v5.4.18-2021_0527.zip-Software-v01_00-EN.zip" , however we are having several issues on that process. This software package is based on a kernel version v5.4.18, however the patch series doesn't apply cleanly on a more recent kernel version from the base branch v5.4.X (In our case we are working with v5.4.84 ). Some patches were uploaded to upstream with a different content than the original patch provided in this software package and then now we are having many conflicts applying the patches from this software package in a most recent Linux kernel v5.4.X
Is there any software package based on a most recent Linux kernel version v5.4?
Thanks in advance,
Arturo
Show LessIs there a possibility to use roaming feature with wpa_supplicant?
In our test environment we are using two APs configured with same ssid,password. Both ssids are in the same band, only thing which is different is that the APs are set to use different channels (e.g 1 and 5).
We've tried roaming with wpa_supplicant, with set roam_off = 1 and also roam_off=0. In those cases roaming is not working , device is switched from one AP to another using 4-way handshake.
If roaming parameters are set using wl tool (band,delta,scan_period,roam_trigger) and roam_off = 0 we can see that device is switching without 4-way handshake. As I understand in that case internal roaming is performed.
I've followed this topic which is similar to this question :https://community.infineon.com/t5/Wi-Fi-Combo/11R-Fast-Roaming-support-on-CYW43455/m-p/121621 but with there's no progress so far.
Is there anything that should be enabled/disabled in fw, or some patch that should be added to wpa_supplicant to be able to do roaming? If so could you provide us with it?
wl version is 1.26 RC0.0
wpa_supplicant version is 2.9.
Show Less
I'm trying to test cypress-fmac-v5.10.9-2021_1020.zip in my environment (imx6sx-sdb/SDIO Adapter CYW9SDIOAD/WiFi module CYW43455).
When linux v5.10.9, usdhc3 (mmc2) of imx6sx-sdb does not recognize SDIO.
If SD card, it is recognized .
If linux v5.4.x, the below boot message is displayed at the boot time without any problem, and it connects to WiFi module normally.
mmc2: new high speed SDIO card at address 0001
Somebody help me?
Show LessHello,
with reference to thread
we have changed the code as per the explanation provided,
we have tried the same with CYW43455, it worked well then we changed the chip to CYW43364, and facing the issue, we have done the HW changes to the board, attaching here the dmeg for reference, any quick help or guidance will be helpful.
PS: created new thread as previous not allowing to reply.
Thanks,
Mohammed
Show LessHi,experts
we use wifi driver cypress-fmac-v5.4.18-2021_0527.zip for AW-NM372SM(chipset is CYW43438) . This wifi driver downloaded form https://www.cypress.com/documentation/software-and-drivers-archive/wifi-bt-linux-archive.
Our linux version is v3.10.108.
we encountered an uncommon WiFi driver oops,as below:
[ 09:20:23][224389.020000] ios->clock=400000
[ 09:20:23]#######ping failure,time is 2021-11-08 09:20:56,The total_count is 174936,failure_count is 19528########
[ 09:20:23][224389.370000] ios->clock=400000
[ 09:20:23][224389.370000] ios->clock=400000
[ 09:20:23][224389.540000] ios->clock=400000
[ 09:20:23][224389.560000] mmc0: queuing unknown CIS tuple 0x80 (2 bytes)
[ 09:20:23][224389.560000] mmc0: queuing unknown CIS tuple 0x80 (3 bytes)
[ 09:20:23][224389.570000] mmc0: queuing unknown CIS tuple 0x80 (3 bytes)
[ 09:20:23][224389.580000] mmc0: queuing unknown CIS tuple 0x80 (7 bytes)
[ 09:20:23][224389.590000] mmc0: queuing unknown CIS tuple 0x81 (1 bytes)
[ 09:20:24][224389.780000] ios->clock=400000
[ 09:20:24][224389.780000] ios->clock=50000000
[ 09:20:24][224389.780000] ios->clock=50000000
[ 09:20:24][224389.790000] mmc0: new high speed SDIO card at address 0001
[ 09:20:24][224389.800000] brcmf_chip_recognition found AXI chip: BCM43430/1
[ 09:20:24][224389.840000] brcmf_chip_cores_check [1 ] core 0x800:49 base 0x18000000 wrap 0x18100000
[ 09:20:24][224389.880000] brcmf_chip_cores_check [2 ] core 0x812:39 base 0x18001000 wrap 0x18101000
[ 09:20:24][224389.920000] brcmf_chip_cores_check [3 ] core 0x829:21 base 0x18002000 wrap 0x18102000
[ 09:20:24][224389.920000] brcmf_chip_cores_check [4 ] core 0x82a:9 base 0x18003000 wrap 0x18103000
[ 09:20:24][224389.950000] brcmf_chip_cores_check [5 ] core 0x80e:22 base 0x18004000 wrap 0x18104000
[ 09:20:24][224389.950000] brcmf_chip_cores_check [6 ] core 0x135:0 base 0x00000000 wrap 0x18105000
[ 09:20:24][224389.970000] brcmf_chip_cores_check [7 ] core 0x240:0 base 0x00000000 wrap 0x18106000
[ 09:20:24][224390.000000] brcmf_chip_get_raminfo RAM: base=0x0 size=524288 (0x80000) sr=65536 (0x10000)
[ 09:20:24][224390.010000] brcmf_chip_setup ccrev=49, pmurev=24, pmucaps=0x39d25f18
[ 09:20:24][224390.010000] brcmf_get_module_param Enter, bus=0, chip=43430, rev=1
[ 09:20:24][224390.020000] brcmf_sdio_drivestrengthinit No SDIO driver strength init needed for chip BCM43430/1 rev 1 pmurev 24
[ 09:20:24][224390.030000] brcmf_sdio_probe completed!!
[ 09:20:24][224390.030000] brcmfmac: brcmf_fw_alloc_request: using cypress/cyfmac43430-sdio for chip BCM43430/1
[ 09:20:24][224390.090000] brcmf_sdio_verifymemory Compare RAM dl & ul at 0x00000000; size=419798
[ 09:20:24][224390.180000] brcmf_sdio_verifymemory Compare RAM dl & ul at 0x0007fda0; size=608
[ 09:20:24][224390.310000] brcmf_sdio_firmware_callback enable F2: err=0
[ 09:20:24][224390.310000] brcmf_sdio_sr_init SR enabled
[ 09:20:24][224390.330000] brcmf_bus_change_state ignoring transition, bus not attached yet
[ 09:20:24][224390.340000] brcmf_sdio_readshared sdpcm_shared address 0x000469C0
[ 09:20:24][224390.360000] brcmf_sdio_readshared sdpcm_shared address 0x000469C0
[ 09:20:24][224390.360000] ------------[ cut here ]------------
[ 09:20:24][224390.360000] Kernel BUG at c0028590 [verbose debug info unavailable]
[ 09:20:24][224390.360000] Internal error: Oops - BUG: 0 [#1] PREEMPT ARM
[ 09:20:24][224390.360000] Modules linked in: qmi_wwan option brcmfmac(O) brcmutil(O) cfg80211(O) compat(O) usb_f_rndis u_ether usb_f_fs libcomposite usb_wwan watchdogd(O)
[ 09:20:24][224390.360000] CPU: 0 PID: 4308 Comm: kworker/0:1 Tainted: G O 3.10.108 #2
[ 09:20:24][224390.360000] Workqueue: events request_firmware_work_func
[ 09:20:24][224390.360000] task: c3898b00 ti: c19d6000 task.ti: c19d6000
[ 09:20:24][224390.360000] PC is at add_timer+0x18/0x28
[ 09:20:24][224390.360000] LR is at brcmf_sdio_wd_timer+0x80/0x418 [brcmfmac]
[ 09:20:24][224390.360000] pc : [<c0028590>] lr : [<bf09ad60>] psr: a0000013
[ 09:20:24][224390.360000] sp : c19d7e10 ip : c19d7e20 fp : c19d7e1c
[ 09:20:24][224390.360000] r10: 00000001 r9 : 00000000 r8 : 00000000
[ 09:20:24][224390.360000] r7 : 00000000 r6 : c15fcb48 r5 : c1a819e4 r4 : c1a81800
[ 09:20:24][224390.360000] r3 : 0155ef4c r2 : c1635178 r1 : 00000014 r0 : c1a819e4
[ 09:20:24][224390.360000] Flags: NzCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment kernel
[ 09:20:24][224390.360000] Control: 0005317f Table: 01004000 DAC: 00000017
[ 09:20:24][224390.360000] Process kworker/0:1 (pid: 4308, stack limit = 0xc19d61b8)
[ 09:20:24][224390.360000] Stack: (0xc19d7e10 to 0xc19d8000)
[ 09:20:24][224390.360000] 7e00: c19d7e3c c19d7e20 bf09ad60 c0028588
[ 09:20:24][224390.360000] 7e20: c1a80400 c1a81800 bf0a3b3c 00000000 c19d7e94 c19d7e40 bf09e46c bf09acf0
[ 09:20:24][224390.360000] 7e40: 00000260 00000000 00000000 00000002 c227b980 00000006 c102f108 00000000
[ 09:20:24][224390.360000] 7e60: 00000379 00000000 c01bdb54 c1ae61e0 c19d7e9c c227b1c0 00000000 00000000
[ 09:20:24][224390.360000] 7e80: c19d6000 00000000 c19d7ec4 c19d7e98 bf092380 bf09dcd4 c19d7ecc c1ae61c0
[ 09:20:24][224390.360000] 7ea0: c227b240 c227b240 c227b240 c15fd068 00000000 c16d0c00 c19d7eec c19d7ec8
[ 09:20:24][224390.360000] 7ec0: c01bdc70 bf092334 00000001 c15fd850 c1a46840 c1ae61a0 c15fd068 c1a46840
[ 09:20:24][224390.360000] 7ee0: c19d7f2c c19d7ef0 c0032c60 c01bdc40 c15fd068 c1a46840 c15fd068 c19d6000
[ 09:20:24][224390.360000] 7f00: c15fd068 c1a46840 c15fd068 c19d6000 c1a46858 c15fd078 00000000 00000000
[ 09:20:24][224390.360000] 7f20: c19d7f64 c19d7f30 c0033b88 c0032a70 00000000 c1a46840 c003398c c18c5e7c
[ 09:20:24][224390.360000] 7f40: 00000000 c1a46840 c003398c 00000000 00000000 00000000 c19d7fac c19d7f68
[ 09:20:24][224390.360000] 7f60: c0038fcc c003399c c19d7f94 00000000 c0040a90 c1a46840 00000000 c19d7f7c
[ 09:20:24][224390.360000] 7f80: c19d7f7c 00000000 c19d7f88 c19d7f88 c18c5e7c c0038f18 00000000 00000000
[ 09:20:24][224390.360000] 7fa0: 00000000 c19d7fb0 c000e1f8 c0038f28 00000000 00000000 00000000 00000000
[ 09:20:24][224390.360000] 7fc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[ 09:20:24][224390.360000] 7fe0: 00000000 00000000 00000000 00000000 00000013 00000000 e282200c eaffffd8
[ 09:20:24][224390.360000] Backtrace:
[ 09:20:24][224390.360000] [<c0028578>] (add_timer+0x0/0x28) from [<bf09ad60>] (brcmf_sdio_wd_timer+0x80/0x418 [brcmfmac])
[ 09:20:24][224390.360000] [<bf09ace0>] (brcmf_sdio_wd_timer+0x0/0x418 [brcmfmac]) from [<bf09e46c>] (brcmf_sdio_firmware_callback+0x7a8/0x94c [brcmfmac])
[ 09:20:24][224390.360000] r7:00000000 r6:bf0a3b3c r5:c1a81800 r4:c1a80400
[ 09:20:24][224390.360000] [<bf09dcc4>] (brcmf_sdio_firmware_callback+0x0/0x94c [brcmfmac]) from [<bf092380>] (brcmf_fw_request_done+0x5c/0xe0 [brcmfmac])
[ 09:20:24][224390.360000] [<bf092324>] (brcmf_fw_request_done+0x0/0xe0 [brcmfmac]) from [<c01bdc70>] (request_firmware_work_func+0x40/0x60)
[ 09:20:24][224390.360000] r8:c16d0c00 r7:00000000 r6:c15fd068 r5:c227b240 r4:c227b240
[ 09:20:24][224390.360000] [<c01bdc30>] (request_firmware_work_func+0x0/0x60) from [<c0032c60>] (process_one_work+0x200/0x350)
[ 09:20:24][224390.360000] r4:c1a46840
[ 09:20:24][224390.360000] [<c0032a60>] (process_one_work+0x0/0x350) from [<c0033b88>] (worker_thread+0x1fc/0x3a0)
[ 09:20:24][224390.360000] [<c003398c>] (worker_thread+0x0/0x3a0) from [<c0038fcc>] (kthread+0xb4/0xc0)
[ 09:20:24][224390.360000] [<c0038f18>] (kthread+0x0/0xc0) from [<c000e1f8>] (ret_from_fork+0x14/0x3c)
[ 09:20:24][224390.360000] r7:00000000 r6:00000000 r5:c0038f18 r4:c18c5e7c
[ 09:20:24][224390.360000] Code: e24cb004 e5902000 e3520000 0a000000 (e7f001f2)
[ 09:20:25][224390.360000] ---[ end trace d888266c12f52e94 ]---
[ 09:20:25][224390.360000] Kernel panic - not syncing: Fatal exception
[ 09:20:26][224390.360000] Rebooting in 5 seconds..
[ 09:20:26]NUC970 IBR 20151008.1735
[ 09:20:26]No Key
[ 09:20:26]Boot from SPI
[ 09:20:26]
[ 09:20:26]
[ 09:20:26]U-Boot 3.0.0 (Sep 24 2020 - 16:25:28)
[ 09:20:26]
[ 09:20:26]CPU: NUC976
[ 09:20:26]DRAM: 64 MiB
。。。
Any help would be appreciated.
Show LessHi,
Problem Statement:
Transmit and Receive are blocked after a certain time in Broadcom devices whenever Quiet IE Element (40) is enabled and broadcasted in the beacon. The issue exists even when we disable RRM and Spectrum Management features.
We tried to ping from Broadcom device to a server and we can see that the ping fails and nothing is seen on-air after a certain time.
Device Details:
Model | CYW43455 |
SW Version | Linux Version: Linux SAMA5D2C3 4.9.87-linux4sam_5.8+ #1 Tue Feb 4 13:01:34 UTC 2020 armv7l GNU/Linux wl ver: 1.21 RC0.0 wl0: May 2 2019 02:46:17 version 7.45.189 (r714228 CY) FWID 01-e1db26e2 tws:GENR.1.1.2 |
WiFi Config | wl -i wlan0 down wl vht_features 0 wl band b; wl nmode 0; wl spect 0 wl rrm 0 wl wme 1 wl -i wlan0 lrl 7 wl -i wlan0 srl 7 wl -i wlan0 PM 2 wl -i wlan0 rateset 6b 9 12b 18 24b 36 wl -i wlan0 up |
AP Details:
AP Type | Aruba 505/ Aruba 205 |
Build Time | 2017-03-02 04:25:52 PST |
Version | 6.5.1.0-4.3.1.2_58595 |
AP WLAN Profile Details:
wlan ssid-profile aruba5 |
enable |
index 6 |
type employee |
essid aruba5 |
opmode opensystem |
max-authentication-failures 0 |
rf-band 2.4 |
captive-portal disable |
dtim-period 1 |
broadcast-filter none |
dmo-channel-utilization-threshold 90 |
local-probe-req-thresh 0 |
max-clients-threshold 64 |
dot11r |
dot11k |
dot11v |
rrm-quiet-ie |
Quite IE in AP Beacon:
Event Logs:
From the logs, we can observe that the ping stops at the point(can be found in the Wireshark capture) when we received only QUIET_START(event:13) and didn't receive QUIET_END(event:14).
Below is the event in the log file where only the QUIET_START event was received and no QUIET_END event was received thereafter and at the same time we observed Ping stopped in the packet capture.
2021-07-28T17:52:00.175481+00:00 SAMA5D2C3 kernel: [ 1484.040000] brcmfmac: brcmf_fweh_process_event: event nodebug (13)
Packet Capture Details:
1. In the Wireshark capture, you can use the following filter to extract the packets to look after:
(wlan.ssid == aruba5 && wlan.fc.type_subtype == 8 && wlan.bssid == 34:fc:b9:4c:d9:c6) || wlan.addr==e8:e8:b7:09:52:17
2. Ping stops from packet 340421 and transmission stop from packet 340566
I'm trying to use band 13 in Australia. We can't see a network set to that band, we see this setting if we run "iw list", so we should be able to see them.
Frequencies:
* 2412 MHz [1] (20.0 dBm)
* 2417 MHz [2] (20.0 dBm)
* 2422 MHz [3] (20.0 dBm)
* 2427 MHz [4] (20.0 dBm)
* 2432 MHz [5] (20.0 dBm)
* 2437 MHz [6] (20.0 dBm)
* 2442 MHz [7] (20.0 dBm)
* 2447 MHz [8] (20.0 dBm)
* 2452 MHz [9] (20.0 dBm)
* 2457 MHz [10] (20.0 dBm)
* 2462 MHz [11] (20.0 dBm)
* 2467 MHz [12] (20.0 dBm)
* 2472 MHz [13] (20.0 dBm)
* 2484 MHz [14] (disabled)
What settings do we need to change to ensure that it works correctly?
I have attached the files I'm using for this. Are they correct?
Hello Everyone,
I am running android on imx7d from NXP running Bluetooth+Wifi 1MW module.
I want to run a Bluetooth SPP server on the device. I have implemented the software in C++, Basically an RFCOMM socket. I read Android used Bluedroid instead of Bluez like Linux. But I understand the RFCOMM socket creation method is the same(not 100% sure).
I run the C++ based server software on the imx7d device, it doesn't give any issue creating the RFCOMM SPP port. It creates the port and goes into listening mode. However, when the Android Bluetooth client app running on my phone tries to connect it, It gives the following error in the android bt stack of my imx7d based device.
> [INFO:port_utils.cc(329)] port_find_mcb_dlci_port: Cannot find
> allocated RFCOMM app port for DLCI 40 on 3c:28:6d:2a:b0:28,
> p_mcb=0x90367c24 PORT_ParNegInd dlci:40 mtu:990 2021-11-26
> 09:04:36.046 583-827/com.android.bluetooth E/bt_stack:
> [ERROR:port_rfc.cc(285)] PORT_ParNegInd: Disconnect RFCOMM, port not
> found, dlci=40, p_mcb=0x90367c24, bd_addr=3c:28:6d:2a:b0:28
I have created the server port on channel 20, but it's not able to find it. I am not sure what exactly is going wrong, I am stuck and not able to find the way to move ahead. Here is the code snippet.
#define BTPROTO_RFCOMM 3
/* BD Address */ typedef struct {
uint8_t b[6]; } __attribute__((packed)) bdaddr_t;
/* ---- RFCOMM sockets ---- */ struct sockaddr_rc {
sa_family_t rc_family;
bdaddr_t rc_bdaddr;
uint8_t rc_channel; };
#define BDADDR_ANY (&(bdaddr_t){{0, 0, 0, 0, 0, 0}})
/* server channel */
#define RFCOMM_SERVER_PORT_NUM 20
void BluetoothSerialPort::openConnection()
{
struct sockaddr_rc loc_addr;
bdaddr_t bdaddr_any = {0, 0, 0, 0, 0, 0};
ALOGE("Start Bluetooth SPP server...\n");
/* allocate socket */
sockFd_ = socket(AF_BLUETOOTH, SOCK_STREAM, BTPROTO_RFCOMM);
if (sockFd_ < 0)
{
ALOGE("Cannot start Bluetooth SPP server\n");
}
memset(&loc_addr, 0, sizeof(loc_addr));
loc_addr.rc_family = AF_BLUETOOTH;
loc_addr.rc_bdaddr = bdaddr_any;
loc_addr.rc_channel = RFCOMM_SERVER_PORT_NUM;
if (bind(sockFd_, (struct sockaddr *)&loc_addr, sizeof(loc_addr)) < 0)
{
ALOGE("socket bind error %s", strerror(errno));
exit(EXIT_FAILURE);
}
ALOGE("Listen Bluetooth SPP server on %d...\n", sockFd_);
if (listen(sockFd_, 2) < 0)
{
ALOGE("socket listen error %s", strerror(errno));
exit(EXIT_FAILURE);
}
}
// Runs the server.
void BluetoothSerialPort::run()
{
struct sockaddr_rc client_addr;
socklen_t opt = sizeof(client_addr);
openConnection();
ALOGE("Listening on Bluetooth SPP server = %d...\n", sockFd_);
/* return new socket for connection with a client */
clientFd_ = accept(sockFd_, reinterpret_cast<struct sockaddr *>(&client_addr), &opt);
ALOGE("connected from %s\n", (char *)&client_addr.rc_bdaddr);
if (clientFd_ == -1)
{
ALOGE("error accepting incoming connection: %s", strerror(errno));
}
else
{
ALOGI("got new connection");
}
// Create a thread and transfer the new stream to it.
std::thread thr(std::bind(&BluetoothSerialPort::readHandler, this));
thr.detach();
}
Can somebody please help? Is there any mistake in the code, it prints the following line "Listening on Bluetooth SPP server" and goes into listening mode.
Thanks much,
Asma