I have two Raspberry Pi 3 model B; one from element14 (made in PRC), and one from another vendor (made in UK). The other vendor's board works as expected, including WiFi. However, I cannot get WiFi working on the element14 board at all. It looks like the device isn't initialized correctly.
Here's the log from the non-working board, including manually removing and re-loading the brcmfmac driver:
[ 4.313273] usbcore: registered new interface driver brcmfmac
[ 4.322062] EXT4-fs (mmcblk0p2): re-mounted. Opts: (null)
[ 4.454453] random: nonblocking pool is initialized
[ 4.611045] cfg80211: World regulatory domain updated:
[ 4.611071] cfg80211: DFS Master region: unset
[ 4.611081] cfg80211: (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp), (dfs_cac_time)
[ 4.611096] cfg80211: (2402000 KHz - 2472000 KHz @ 40000 KHz), (N/A, 2000 mBm), (N/A)
[ 4.611109] cfg80211: (2457000 KHz - 2482000 KHz @ 40000 KHz), (N/A, 2000 mBm), (N/A)
[ 4.611125] cfg80211: (2474000 KHz - 2494000 KHz @ 20000 KHz), (N/A, 2000 mBm), (N/A)
4.611140 cfg80211(5170000 KHz 5250000 KHz 80000 KHz 160000160000 KHz AUTO(N/A 2000 mBm(N/A
4.611154 cfg80211(5250000 KHz 5330000 KHz 80000 KHz 160000160000 KHz AUTO(N/A 2000 mBm(0 s
4.611168 cfg80211(5490000 KHz 5730000 KHz 160000160000 KHz(N/A 2000 mBm(0 s
[ 4.611180] cfg80211: (5735000 KHz - 5835000 KHz @ 80000 KHz), (N/A, 2000 mBm), (N/A)
[ 4.611202] cfg80211: (57240000 KHz - 63720000 KHz @ 2160000 KHz), (N/A, 0 mBm), (N/A)
[ 4.893093] systemd-journald[136]: Received request to flush runtime journal from PID 1
[ 5.580716] uart-pl011 3f201000.uart: no DMA platform data
[ 5.807229] Adding 102396k swap on /var/swap. Priority:-1 extents:4 across:192508k SSFS
[ 6.181012] smsc95xx 1-1.1:1.0 eth0: hardware isn't capable of remote wakeup
[ 6.181146] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[ 7.719775] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
[ 7.720581] smsc95xx 1-1.1:1.0 eth0: link up, 100Mbps, full-duplex, lpa 0x45E1
[ 252.630254] usbcore: deregistering interface driver brcmfmac
[ 255.528894] usbcore: registered new interface driver brcmfmac
[ 255.529810] cfg80211: World regulatory domain updated:
[ 255.529847] cfg80211: DFS Master region: unset
[ 255.529857] cfg80211: (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp), (dfs_cac_time)
[ 255.529873] cfg80211: (2402000 KHz - 2472000 KHz @ 40000 KHz), (N/A, 2000 mBm), (N/A)
[ 255.529887] cfg80211: (2457000 KHz - 2482000 KHz @ 40000 KHz), (N/A, 2000 mBm), (N/A)
[ 255.529899] cfg80211: (2474000 KHz - 2494000 KHz @ 20000 KHz), (N/A, 2000 mBm), (N/A)
255.529916 cfg80211(5170000 KHz 5250000 KHz 80000 KHz 160000160000 KHz AUTO(N/A 2000 mBm(N/A
255.529931 cfg80211(5250000 KHz 5330000 KHz 80000 KHz 160000160000 KHz AUTO(N/A 2000 mBm(0 s
255.529945 cfg80211(5490000 KHz 5730000 KHz 160000160000 KHz(N/A 2000 mBm(0 s
[ 255.529957] cfg80211: (5735000 KHz - 5835000 KHz @ 80000 KHz), (N/A, 2000 mBm), (N/A)
[ 255.529970] cfg80211: (57240000 KHz - 63720000 KHz @ 2160000 KHz), (N/A, 0 mBm), (N/A)
[ 258.753177] brcmfmac: brcmf_sdiod_ramrw: membytes transfer failed
[ 258.757326] brcmfmac: brcmf_sdiod_regrw_helper: failed to write data F1@0x1000a, err: -5
[ 258.757340] brcmfmac: brcmf_sdiod_set_sbaddr_window: failed at addr: 0x1000a
[ 258.757350] brcmfmac: brcmf_sdiod_ramrw: FAILED to set window back to 0x18000000
[ 258.757365] brcmfmac: brcmf_sdio_download_code_file: error -110 on writing 369576 membytes at 0x00000000
[ 258.757491] brcmfmac: brcmf_sdio_download_firmware: dongle image file download failed
[ 258.761639] brcmfmac: brcmf_sdiod_regrw_helper: failed to write data F1@0x1000e, err: -5
[ 258.761653] brcmfmac: brcmf_sdio_htclk: Failed access turning clock off: -5
[ 258.765923] brcmfmac: brcmf_sdiod_regrw_helper: failed to write data F1@0x1000e, err: -5
[ 258.765935] brcmfmac: brcmf_sdio_htclk: HT Avail request error: -5
For comparison, here's the log from my working board:
[ 10.083256] usbcore: registered new interface driver brcmfmac
[ 10.292430] random: nonblocking pool is initialized
[ 10.301674] brcmfmac: brcmf_c_preinit_dcmds: Firmware version = wl0: May 27 2016 00:13:38 version 7.45.41.26 (r640327) FWID 01-df77e4a7
[ 10.322734] brcmfmac: brcmf_cfg80211_reg_notifier: not a ISO3166 code
[ 10.602790] brcmfmac: brcmf_cfg80211_reg_notifier: not a ISO3166 code
[ 10.602816] cfg80211: World regulatory domain updated:
[ 10.602826] cfg80211: DFS Master region: unset
[ 10.602835] cfg80211: (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp), (dfs_cac_time)
[ 10.602849] cfg80211: (2402000 KHz - 2472000 KHz @ 40000 KHz), (N/A, 2000 mBm), (N/A)
[ 10.602862] cfg80211: (2457000 KHz - 2482000 KHz @ 40000 KHz), (N/A, 2000 mBm), (N/A)
[ 10.602874] cfg80211: (2474000 KHz - 2494000 KHz @ 20000 KHz), (N/A, 2000 mBm), (N/A)
10.602889 cfg80211(5170000 KHz 5250000 KHz 80000 KHz 160000160000 KHz AUTO(N/A 2000 mBm(N/A
10.602904 cfg80211(5250000 KHz 5330000 KHz 80000 KHz 160000160000 KHz AUTO(N/A 2000 mBm(0 s
10.602917 cfg80211(5490000 KHz 5730000 KHz 160000160000 KHz(N/A 2000 mBm(0 s
[ 10.602929] cfg80211: (5735000 KHz - 5835000 KHz @ 80000 KHz), (N/A, 2000 mBm), (N/A)
[ 10.602942] cfg80211: (57240000 KHz - 63720000 KHz @ 2160000 KHz), (N/A, 0 mBm), (N/A)
[ 11.149652] systemd-journald[135]: Received request to flush runtime journal from PID 1
[ 11.455887] brcmfmac: brcmf_add_if: ERROR: netdev:wlan0 already exists
[ 11.455903] brcmfmac: brcmf_add_if: ignore IF event
[ 11.460425] IPv6: ADDRCONF(NETDEV_UP): wlan0: link is not ready
[ 11.460438] brcmfmac: power management disabled
[ 11.597460] uart-pl011 3f201000.uart: no DMA platform data
[ 12.022921] Adding 102396k swap on /var/swap. Priority:-1 extents:4 across:192508k SSFS
[ 12.161842] cfg80211: Regulatory domain changed to country: US
[ 12.161865] cfg80211: DFS Master region: FCC
[ 12.161874] cfg80211: (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp), (dfs_cac_time)
[ 12.161890] cfg80211: (2402000 KHz - 2472000 KHz @ 40000 KHz), (N/A, 3000 mBm), (N/A)
12.161905 cfg80211(5170000 KHz 5250000 KHz 80000 KHz 160000160000 KHz AUTO(N/A 1700 mBm(N/A
12.161920 cfg80211(5250000 KHz 5330000 KHz 80000 KHz 160000160000 KHz AUTO(N/A 2300 mBm(0 s
[ 12.161932] cfg80211: (5735000 KHz - 5835000 KHz @ 80000 KHz), (N/A, 3000 mBm), (N/A)
[ 12.161945] cfg80211: (57240000 KHz - 63720000 KHz @ 2160000 KHz), (N/A, 4000 mBm), (N/A)
[ 12.550634] smsc95xx 1-1.1:1.0 eth0: hardware isn't capable of remote wakeup
[ 12.550780] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[ 12.801412] IPv6: ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready
[ 16.309199] Bluetooth: Core ver 2.21
[ 16.309257] NET: Registered protocol family 31
[ 16.309263] Bluetooth: HCI device and connection manager initialized
[ 16.309275] Bluetooth: HCI socket layer initialized
[ 16.309286] Bluetooth: L2CAP socket layer initialized
[ 16.309304] Bluetooth: SCO socket layer initialized
[ 16.317370] Bluetooth: HCI UART driver ver 2.3
[ 16.317383] Bluetooth: HCI UART protocol H4 registered
[ 16.317388] Bluetooth: HCI UART protocol Three-wire (H5) registered
[ 16.317481] Bluetooth: HCI UART protocol BCM registered
[ 16.484556] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[ 16.484570] Bluetooth: BNEP filters: protocol multicast
[ 16.484583] Bluetooth: BNEP socket layer initialized
Notice that the Bluetooth stack also starts up on this board.
Has anyone else had problems like this? Any ideas, or do I have a hardware problem?




