Other Parts Discussed in Thread: AM3352,
Tool/software: Linux
We're having some issues with Wifi communication between our embedded device (device A) and a different device (device B), made by another company. Neither device has exhibited any issues when communicating with other devices. As a result of testing with a USB Wifi adapter on device A, we've concluded that the only components on device A that could be at fault are the wl18xx kernel module, the wl18xx firmware, the TI-modified, wl18xx-specific hostapd and wpa_supplicant, and the phy itself (a WiLink8 in a Jorjin WG7831-B0 package). We've updated all of the aforementioned wl18xx software to R8.6 , with no observed changes in functionality (or lack thereof), but given the following error message in the system log, it appears that the new(-ish) firmware isn't being loaded onto the device correctly:
Apr 5 15:00:0 4 icg user.warn kernel: [ 6.629320] wl18xx_driver
wl18xx.0.auto: Direct firmware load failed with error -2
Apr 5 15:00:04 icg user.warn kernel: [ 6.637232] wl18xx_driver
wl18xx.0.auto: Falling back to user helper
Subsequently, we get these log entries:
Apr 5 15:01:09 icg user.info kernel: [ 78.952945] wlcore: PHY firmware version: Rev 8.2.0.0.232
Apr 5 15:01:09 icg user.info kernel: [ 79.052409] wlcore: firmware booted (Rev 8.9.0.0.48)
The version numbers reported in these two entries did not change after our upgrade from R8.5 to R8.6 , or after subsequent reboots. I'd be interested to know what these two different kinds of firmware are, what their relationships to the firmware blob from git://git.ti.com/wilink8-wlan/wl18xx_fw.git are, and if/how their revision numbers relate to the wl18xx revision numbers I'm familiar with.
To the best of my knowledge, the files in /lib/firmware/ti-connectivity are the correct versions, correctly named:
$ ls -l /lib/firmware/ti-connectivity/
total 728
-rw-r--r-- 1 root root 1226 Jan 16 17:47 wl18xx-conf.bin
-rw-r--r-- 1 root root 739244 Apr 5 10:50 wl18xx-fw-4.bin
$ sha256sum /lib/firmware/ti-connectivity/*
9d27c5627c0353227aee08c96ee0b52256d8e9466b5d1d6a0fe257bb570f2eee
/lib/firmware/ti-connectivity/wl18xx-conf.bin
f0f787f2f87074cae9fa30929c5908a00820512c5afde3b6c657e1e82de21220
/lib/firmware/ti-connectivity/wl18xx-fw-4.bin
Ultimately what we need is assistance in making sure the correct (R8.6) wl18xx firmware is loaded, either by fixing any problems in our configuration that are preventing it from being loaded, or by verifying that it is already loaded. Once we have that, if the problems we are experiencing with device B continue, at least we can be reasonably sure that the problems are due to some flaw on device B.
Hardware/System Info:
Host Platform - Sitara AM3352, SDK v7
Operating System - Linux
Wilink flavor - WL1831MOD
Module - Jorjin WG7831-B0