| | 1199 | [=#mwifiex] |
| | 1200 | === Marvell !WiFi-Ex (mwifiex) driver for NXP chips === |
| | 1201 | The in-kernel mwifiex driver has limited support for Marvell based !WiFi and Bluetooth radios. |
| | 1202 | |
| | 1203 | The NXP chips using this driver typically need to use the NXP out-of-tree mwifiex driver which supports additional features and chips. |
| | 1204 | |
| | 1205 | Here is an example building this driver on a target: |
| | 1206 | {{{#!bash |
| | 1207 | # get build packages |
| | 1208 | apt update && apt install -y build-essential bc git |
| | 1209 | # get firmware |
| | 1210 | git clone https://github.com/nxp-imx/imx-firmware.git |
| | 1211 | cp imx-firmware/wifi_mod_para.conf imx-firmware/FwImage_IW612_SD/* /lib/firmware/nxp/ |
| | 1212 | # build driver |
| | 1213 | git clone https://github.com/nxp-imx/mwifiex.git -b lf-6.12.49_2.2.0 # for 6.18 |
| | 1214 | make -C /lib/modules/$(uname -r)/build M=$PWD/mwifiex |
| | 1215 | }}} |
| | 1216 | - The above shows using the NXP lf-6.12.49_2.2.0 branch which works on 6.12 through 6.18. For older kernels use a more appropriate branch |
| | 1217 | |
| | 1218 | Notes: |
| | 1219 | - If using bluetooth via the nxpbtuart driver, you must ensure this driver does not load before the mwifiex driver (ie blacklist the kernel module and load it manually). Note the nxpbtuart driver binds to bluetooth device nodes declared in the device tree with a specific compatible string. |
| | 1220 | - The out of tree driver supports providing it a conf file via 'mod_para' which supports varying configurations such as firmware files per devices |
| | 1221 | |
| | 1222 | |
| | 1223 | |