88w8987 / PAN9028 connected to Raspberry PI CM4 Module

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

88w8987 / PAN9028 connected to Raspberry PI CM4 Module

3,234件の閲覧回数
christianschmit
Contributor I

Hi!

I have connected a Panasonic PAN9028 to a Raspberry PI CM4 module via the SDIO interface. The Raspberry runs the normal Raspian image with desktop. Can someone please give me a tip on how to get the module to work now? Where do I find drivers and how do I install them?

Regards and Thanks!

Christian

ラベル(2)
0 件の賞賛
返信
1 返信

3,211件の閲覧回数
ocourson
NXP TechSupport
NXP TechSupport

Dear Christian,

 

Here is the procedure to follow:

 

PAN9028 module includes NXP 88W8987 chipset.

 

Some NXP (ex-Marvell) Wifi/BT chipsets are supported by the Linux kernel mainline, but NXP unfortunately does not officially support that.

Moreover, the Linux kernel mainline firmwares (see https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git repository, mrvl directory) do not include the 88W8987 SDIO firmware.

So you should get the 88W8987 driver and firmware from NXP.

 

1/ Getting NXP Wifi/BT driver and firmware

You can get NXP Wfi/BT driver from:

git clone https://source.codeaurora.org/external/nxpwifi/mwifiex

git checkout lf-5.10.72-2.2.0

 

And NXP Wifi/BT firmware:

git clone https://github.com/NXP/imx-firmware

git checkout lf-5.10.72-2.2.0

88W8987 chipset (used in PAN9028) SDIO firmware is imx-firmware/nxp/FwImage_8987/sdiouart8987_combo_v0.bin

 

2/ Cross compiling the driver

You will need to setup the cross compiler for your raspberry pi processor, then

cd mwifiex/mxm_wifiex/wlan_src && make KERNELDIR=~/git/codeaurora.org/linux-imx build

The driver is composed in two kernel modules moal.ko and mlan.ko, located in mwifiex/mxm_wifiex/bin_wlan

 

3/ Copy driver and firmware to the target

Driver: copy mwifiex/mxm_wifiex/bin_wlan content to your raspberry pi (.ko file in usual location, the other files in /lib/firmware/nxp/ directory

Firmware: copy imx-firmware/nxp/FwImage_8987/sdiouart8987_combo_v0.bin to your raspberry pi, usually /lib/firmware/nxp/ directory

 

4/ Starting Wifi driver

Refer to README_MLAN for explanations

Driver is started by insmod'ing moal.ko (has dependancy to mlan.ko)

There are two ways to specify the drivers parameters:

  • Using wifi_mod_para.conf file content to provide driver options: "modprobe moal mod_para=nxp/wifi_mod_para.conf"

moal.ko driver will get its parameters from the wifi_mod_para.conf file, automatically load mlan.ko dependency and start downloading the firmware

  • Manually specifying driver options

In that case,  you can use this kind of command: "modprobe moal fw_name=nxp/sdiouart8987_combo_v0.bin cfg80211_wext=0xf cal_data_cfg=none"

 

Once firmware is loaded, ifconfig -a should show new network interfaces (by default mlan0 for STA mode and uap0 for AP mode)

 

You can use wpa_supplicant to use 88W8987 in STA mode and connect to an access point:

ifconfig mlan0 up

wpa_passphrase SSID SSID_PASSWD >> /etc/wpa_supplicant.conf

wpa_supplicant -B -i mlan0 -c /etc/wpa_supplicant.conf (-Dnl80211)

 

Or hostapd to use 88W8987 as an access point:

ifconfig uap0 192.168.1.2 netmask 255.255.255.0 up

hostapd /etc/hostapd.conf -B

 

Regards,

 

Olivier

0 件の賞賛
返信