Announcements
IMPORTANT: Cypress Developer Community is transitioning on October 20th. To learn more and be prepared for this change, check out our latest announcement.
cancel
Showing results for 
Search instead for 
Did you mean: 

Wi-Fi Bluetooth for Linux

Dvergatal
New Contributor II

Hi all,

I have sucessfully booted rk3399 5.10.60 linux kernel and loaded the brcmfmac module with and old firmware delivered from firefly team to their sdk: Firmware: /2 wl0: Apr 18 2017 13:54:43 version 7.35.184.1.r5 (A2 Station/P2P) FWID 01-efd4ca0d

This firmware is not supporting SAE. From what i have read, i need a newer one and the question is, is there any, which supports SAE? And if there is where could i find it? If not the my question is, if you plan to add support for this new feature?

 

BR

Piotr

0 Likes
1 Solution
Vivek_gunapati
Moderator
Moderator

Hi @Dvergatal Glad that you were able to fix the issue. The .txt file contains all the board related information which is specific to the board/module manufacturer. The txt file can be obtained by the module manufacturer. 

Regard's, Vivek.

View solution in original post

0 Likes
6 Replies
Vivek_gunapati
Moderator
Moderator

Hi @Dvergatal , The latest firmware including WPA3 support  is available in the following link https://community.cypress.com/t5/Wi-Fi-Bluetooth-for-Linux/Cypress-Linux-WiFi-Driver-Release-FMAC-20... 

The Latest package also contain a document "Infineon_Wi-Fi_Software_UserGuide.pdf" that explains the host driver compilation and instructions to load the same,  However the latest driver is built on kernel version v5.4.18 the host should run kernel version v5.4.18 or lower to compile the host driver and loaded on the host. 

Hope this helps, Regards, Vivek.

0 Likes
Dvergatal
New Contributor II

Hi @Vivek_gunapati ,
unfortunately the kernel does not compile with the patches from the package with this error:

In file included from drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c:31:0:
drivers/net/wireless/broadcom/brcm80211/brcmfmac/bus.h:161:6: warning: "LINUX_VERSION_CODE" is not defined, evaluates to 0 [-Wundef]
#if (LINUX_VERSION_CODE < KERNEL_VERSION(4, 16, 0))
^~~~~~~~~~~~~~~~~~
drivers/net/wireless/broadcom/brcm80211/brcmfmac/bus.h:161:27: warning: "KERNEL_VERSION" is not defined, evaluates to 0 [-Wundef]
#if (LINUX_VERSION_CODE < KERNEL_VERSION(4, 16, 0))
^~~~~~~~~~~~~~
drivers/net/wireless/broadcom/brcm80211/brcmfmac/bus.h:161:41: error: missing binary operator before token "("
#if (LINUX_VERSION_CODE < KERNEL_VERSION(4, 16, 0))
^
AR drivers/pnp/pnpacpi/built-in.a
CC drivers/pnp/driver.o
CC drivers/pinctrl/qcom/pinctrl-ipq8074.o
drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c: In function 'brcmf_inform_single_bss':
drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c:3171:10: warning: passing argument 1 of 'memcpy' discards 'const' qualifier from pointer target type [-Wdiscarded-array-qualifiers]
memcpy(&ssid->data, bi->SSID, bi->SSID_len);
^
In file included from ./include/linux/string.h:20:0,
from ./arch/arm64/include/asm/processor.h:28,
from ./include/asm-generic/qrwlock.h:14,
from ./arch/arm64/include/generated/asm/qrwlock.h:1,
from ./arch/arm64/include/asm/spinlock.h:8,
from ./include/linux/spinlock.h:89,
from ./include/linux/seqlock.h:36,
from ./include/linux/time.h:6,
from ./include/linux/skbuff.h:15,
from ./include/linux/if_ether.h:19,
from ./include/linux/etherdevice.h:20,
from drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c:9:
./arch/arm64/include/asm/string.h:35:14: note: expected 'void *' but argument is of type 'const u8 (*)[1] {aka const unsigned char (*)[1]}'
extern void *memcpy(void *, const void *, __kernel_size_t);


BR
Piotr

0 Likes
Dvergatal
New Contributor II

Ok, solved it by adding missing include <linux/version.h> to drivers/net/wireless/broadcom/brcm80211/brcmfmac/bus.h

0 Likes
Dvergatal
New Contributor II

Ok, i have succeded with the kernel. The problem now is that i need file cypress/cyfmac4356-sdio.txt and this file is not included with firmware tarball. My dmesg calls error which looks like that:

[ 66.528775] brcmfmac: brcmf_fw_request_firmware: no board-specific nvram available (err=-11), device will use cypress/cyfmac4356-sdio.txt
[ 66.529892] brcmfmac mmc0:0001:1: Direct firmware load for cypress/cyfmac4356-sdio.txt failed with error -2
[ 66.530739] brcmfmac mmc0:0001:1: Falling back to sysfs fallback for: cypress/cyfmac4356-sdio.txt

0 Likes
Vivek_gunapati
Moderator
Moderator

Hi @Dvergatal Glad that you were able to fix the issue. The .txt file contains all the board related information which is specific to the board/module manufacturer. The txt file can be obtained by the module manufacturer. 

Regard's, Vivek.

View solution in original post

0 Likes
Dvergatal
New Contributor II

Hi @Vivek_gunapati Thx to your advice (i have copied the old board file) I have been able to successfully start my wlan0 interface and i see, that it is able to run with SAE :

...
Device supports SAE with AUTHENTICATE command
...

I've also used wpa_supplicant and configured my connection with SAE and i've been able to actually establish it with WPA3 support :]