Wl12xx driver
From ArmadeusWiki
The wl12xx driver is used by the Wi-Fi/Bluetooth chip present on the APF6 module. Before using the Wi-Fi, you have to calibrate the chip. This page details how to do it.
Contents
Installation
- On APF6, all needed tools/drivers are installed by default. You can directly switch to calibration.
Linux
- Be sure to have CONFIG_NL80211_TESTMODE enabled.
Networking support ---> Wireless ---> <*> cfg80211 - wireless configuration API [*] nl80211 testmode command
Buildroot
- You need the calibrator tool from the ti-utils package.
Target package ---> Hardware handling ---> [*] ti-utils
Calibration
To calibrate the chip use the S30wifi script with a MAC address
# /etc/init.d/S30wifi calibrate 00:1E:AC:00:51:22 Calibrating wlcore: down mmc0: card 0001 removed sdhci-esdhc-imx 2190000.usdhc: card claims to support voltages below defined range mmc0: queuing unknown CIS tuple 0x91 (3 bytes) mmc0: new SDIO card at address 0001 wl1271_sdio mmc0:0001:2: legacy platform data not found, trying device tree wlcore: loaded mmc0: card 0001 removed sdhci-esdhc-imx 2190000.usdhc: card claims to support voltages below defined range mmc0: queuing unknown CIS tuple 0x91 (3 bytes) mmc0: new SDIO card at address 0001 wl1271_sdio mmc0:0001:2: legacy platform data not found, trying device tree wlcore: loaded wlcore: power up wlcore: firmware booted in PLT mode PLT_ON (PLT 6.3.10.0.133) wlcore: testmode cmd: radio status=0 The path to NVS file not provided, use default (/lib/firmware/ti-connectivity/wl1271-nvs.bin) wlcore: power down mmc0: card 0001 removed
Daily use
- The WiFi is started automatically at boot thanks to the /etc/init.d/S30wifi script.
- To stop the WiFi
# /etc/init.d/S30wifi stop wlcore: down mmc0: card 0001 removed
- To start the Wifi
# /etc/init.d/S30wifi start sdhci-esdhc-imx 2190000.usdhc: card claims to support voltages below defined range mmc0: queuing unknown CIS tuple 0x91 (3 bytes) mmc0: new SDIO card at address 0001 wl1271_sdio mmc0:0001:2: legacy platform data not found, trying device tree wlcore: loaded mmc0: card 0001 removed sdhci-esdhc-imx 2190000.usdhc: card claims to support voltages below defined range mmc0: queuing unknown CIS tuple 0x91 (3 bytes) mmc0: new SDIO card at address 0001 wl1271_sdio mmc0:0001:2: legacy platform data not found, trying device tree wlcore: loaded wlcore: firmware booted (Rev 6.3.10.0.133) IPv6: ADDRCONF(NETDEV_UP): wlan0: link is not ready
Going further
- Now you can use the general instructions here to setup your Wi-Fi network (as client/station (STA)).
- If you want to use your APF board as an access point then take a look at APF as Wi-Fi Access Point (AP).
- It should be possible to use this chip in Multi-Role (STA+AP), but currently we have a firmware reboot problem when following [1]. If anyone knows how to proceed, please send us an email or join us on IRC ;-).
Tips
- To have more debug messages of firmware loading/boot process, one may load drivers this way:
# modprobe wlcore debug_level=4; modprobe wl12xx; modprobe wlcore_sdio