PINE64
Sporadic Wifi initialization issue - Printable Version

+- PINE64 (https://forum.pine64.org)
+-- Forum: Pinebook Pro (https://forum.pine64.org/forumdisplay.php?fid=111)
+--- Forum: Linux on Pinebook Pro (https://forum.pine64.org/forumdisplay.php?fid=114)
+--- Thread: Sporadic Wifi initialization issue (/showthread.php?tid=12238)



Sporadic Wifi initialization issue - xyzzy - 11-20-2020

I've noticed the Wifi sometimes doesn't working right.  I first noticed this with the Manjaro ARM 5.9.8 kernel.

When the wifi is "bad", it still works, can connect to a network, send and receive packets, etc.  But the packetloss is about 7% or more, which is really bad.  Very noticeable with ssh as there are constant hangs.  Web browsing one might just think it's slower than normal.  When the wifi isn't in this bad state, packetloss is effectively 0%.

There appears to be something that happens when the wifi chip is initialized that causes this.  When this happens the Wifi MAC address is different.  Good state, I get one address.  Bad state, it's another address.

Here's some the kernel log messages when it's GOOD.
Code:
pine kernel: mmc_host mmc0: card is non-removable.
pine kernel: usb 2-1: new high-speed USB device number 2 using ehci-platform
pine kernel: mmc_host mmc0: Bus speed (slot 0) = 400000Hz (slot req 400000Hz, actual 400000HZ div = 0)
pine kernel: dwmmc_rockchip fe320000.mmc: IDMAC supports 32-bit address mode.
pine kernel: dwmmc_rockchip fe320000.mmc: Using internal DMA controller.
pine kernel: dwmmc_rockchip fe320000.mmc: Version ID is 270a
pine kernel: dwmmc_rockchip fe320000.mmc: DW MMC controller at irq 28,32 bit host data width,256 deep fifo
pine kernel: dwmmc_rockchip fe320000.mmc: Got CD GPIO
pine kernel: mmc_host mmc1: Bus speed (slot 0) = 400000Hz (slot req 400000Hz, actual 400000HZ div = 0)
pine kernel: sdhci-pltfm: SDHCI platform and OF driver helper
pine kernel: mmc2: CQHCI version 5.10
pine kernel: mmc0: queuing unknown CIS tuple 0x80 (2 bytes)
pine kernel: mmc0: queuing unknown CIS tuple 0x80 (3 bytes)
pine kernel: mmc0: queuing unknown CIS tuple 0x80 (3 bytes)
pine kernel: mmc0: queuing unknown CIS tuple 0x80 (7 bytes)
pine kernel: mmc0: queuing unknown CIS tuple 0x81 (9 bytes)
pine kernel: mmc_host mmc0: Bus speed (slot 0) = 148500000Hz (slot req 150000000Hz, actual 148500000HZ div = 0)
pine kernel: mmc0: new ultra high speed SDR104 SDIO card at address 0001
pine kernel: brcmfmac: brcmf_c_preinit_dcmds: Firmware: BCM4345/9 wl0: Feb 11 2020 11:54:51 version 7.45.96.61 (be7af2d@shgit) (r745790) FWID 01-a41d86bd es7.c5.n4.a3

And this is what it looks like when it's bad
Code:
pine kernel: mmc_host mmc0: card is non-removable.
pine kernel: usb 2-1: new high-speed USB device number 2 using ehci-platform
pine kernel: mmc_host mmc0: Bus speed (slot 0) = 400000Hz (slot req 400000Hz, actual 400000HZ div = 0)
pine kernel: dwmmc_rockchip fe320000.mmc: IDMAC supports 32-bit address mode.
pine kernel: dwmmc_rockchip fe320000.mmc: Using internal DMA controller.
pine kernel: dwmmc_rockchip fe320000.mmc: Version ID is 270a
pine kernel: dwmmc_rockchip fe320000.mmc: DW MMC controller at irq 28,32 bit host data width,256 deep fifo
pine kernel: dwmmc_rockchip fe320000.mmc: Got CD GPIO
pine kernel: mmc_host mmc1: Bus speed (slot 0) = 400000Hz (slot req 400000Hz, actual 400000HZ div = 0)
pine kernel: sdhci-pltfm: SDHCI platform and OF driver helper
pine kernel: mmc2: CQHCI version 5.10
pine kernel: mmc_host mmc0: Bus speed (slot 0) = 148500000Hz (slot req 150000000Hz, actual 148500000HZ div = 0)
pine kernel: mmc0: new ultra high speed SDR104 SDIO card at address 0001
pine kernel: brcmfmac: brcmf_c_preinit_dcmds: Firmware: BCM4345/9 wl0: Feb 11 2020 11:54:51 version 7.45.96.61 (be7af2d@shgit) (r745790) FWID 01-a41d86bd es7.c5.n4.a3

Only difference seems to be the message about queuing an unknown CIS tuple are skipped.