SWRU561A September 2020 – October 2020 WL1801MOD , WL1805MOD , WL1807MOD , WL1831 , WL1831MOD , WL1835MOD , WL1837MOD
The following section is intended to provide generic issues faced while integrating and running the WiLink8 drivers on Linux platform. For more comprehensive FAQ list and for additional help, you can reach E2E forum.
Q: How do I know if the Wi-Fi is functional?
A. Bring up the WLAN interface and perform a scan using the “iw” utility:
ifconfig wlan0 up
The following message should be displayed below:
wlcore: PHY firmware version: Rev 8.2.0.0.244
wlcore: firmware booted (Rev 8.9.0.0.84)
Next, perform a scan and look for scan results:
iw wlan0 scan | grep <SSID>
SSID: IOP_035
SSID: Demo_24
SSID: externalhotspot84
If any errors were encountered, follow the steps below:
Did you remember to use the configure-device.sh script upon initialization?
Make sure you are using the proper .ini file to match your needs.
For more information, see WL18xx .ini File.
To disable ELP:
iw wlan0 set power_save off
echo 0 > /sys/kernel/debug/ieee80211/phy0/wlcore/sleep_auth
For STATION/CLIENT mode - try with a different Access Point vendor.
For Access Point (AP) mode - try with a different Station vendor.
For Peer to Peer (P2P) mode - try with a different P2P vendor.
If still not resolved, find your specific case below.
Q: I am able to bring the interface up using ifconfig but when performing a scan I see a driver crash log.
A. Ensure that you are receiving interrupts from the wl18xx device. This can be done using the following command:
cat /proc/interrupts | grep wl18xx
Following output, or something similar should be seen:
54: 15 44e07000.gpio 27 Edge wl18xx
If the WL_IRQ pin is configured correctly, you should see a number higher than "0" as shown above. If the value is zero, re-visit your board device tree file and make sure the WL_IRQ GPIO is muxed correctly and no errors are seen when loading the “wlcore_sdio” module.
Q: I’ve checked that I have the right pins are connected and MUXed, but still the WLAN interface does not work.
A: Make sure the power-on and reset sequences are followed based on the design guidelines in the data sheet. For more information, see the Power-Up and Shut-Down States section in the WL18x7MOD WiLink™ 8 Dual-Band Industrial Module – Wi-Fi®, Bluetooth®, and Bluetooth® Low Energy (LE) Data Sheet. In other words, VBAT/VIO voltages and the slow clock (32 kHz) must be stable prior to WLAN_EN being engaged. Once WL_IRQ is reading as logic ‘0’, the module is awake. When the IRQ is triggered for the first time, the host can start communication over the SDIO interface.
Q: I’ve confirmed the power-up and reset sequences are being followed, but the WLAN interface is still not working.
A: Make sure a WLAN card is detected during device enumeration. If the platform integration was done according to the hardware spec guide/platform integration guide, an SDIO device should be detected during kernel boot. Please review your kernel boot log and look for the following message:
[ 18.538564] mmc1: new high speed SDIO card at address 0001
Q: I’ve confirmed that the WLAN device is being detected on the SDIO interface, but WLAN is still not working.
A: Make sure that the WLAN drivers are loaded, using the WL8 software build process in the WL18xx processor wiki, or built inside the kernel (in case using a kernel version >= 4.1)
You should see the following modules loaded when using the “lsmod”: command:
Module Size Used by
…
wl18xx 83954 0
wlcore 186624 1 wl18xx
mac80211 479316 2 wl18xx,wlcore
cfg80211 397999 3 mac80211,wl18xx,wlcore
wlcore_sdio 7829 0
Q: Yes, I do have the modules built but I still do not see the interface up when using ifconfig, instead I am seeing the following error message?
SIOCGIFFLAGS: No such device
A: This error indicates that the modules are not loaded properly. Try to insert the modules manually and look for errors during the modules loading.
Q: How do I check which versions of WiLink drivers and firmware I have? A: To find out the version of WiLink™ firmware (usually named wl18xx-fw-x.bin), type the following command into the Sitara serial terminal once booted and logged in as root:
grep Rev /lib/firmware/ti-connectivity/wl18xx-fw-4.bin