raspberrypi / linux

Kernel source tree for Raspberry Pi-provided kernel builds. Issues unrelated to the linux kernel should be posted on the community forum at https://forums.raspberrypi.com/
Other
11.07k stars 4.97k forks source link

RPi4: WiFi client crashes often (brcmf_fw_crashed: Firmware has halted or crashed) #3849

Open jgilles opened 4 years ago

jgilles commented 4 years ago

Describe the bug WiFi client stops working and does not recover (Cypress firmware crashes). This happens to my RPi4 almost every day and I must reboot to recover it. After reboot, it always works but will fail again sometime later that day (duration seems random). Raspbian is up to date with all upgrades as of 9/11/2020.

To reproduce Use WiFi client mode on RPi4.

Expected behaviour WiFi keeps working reliably.

Actual behaviour WiFi client stops functioning entirely.

System

Logs [ 0.000000] Booting Linux on physical CPU 0x0 [ 0.000000] Linux version 5.4.51-v7l+ (dom@buildbot) (gcc version 4.9.3 (crosstool-NG crosstool-ng-1.22.0-88-g8460611)) #1333 SMP Mon Aug 10 16:51:40 BST 2020 [ 0.000000] CPU: ARMv7 Processor [410fd083] revision 3 (ARMv7), cr=30c5383d [ 0.000000] CPU: div instructions available: patching division code [ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, PIPT instruction cache [ 0.000000] OF: fdt: Machine model: Raspberry Pi 4 Model B Rev 1.2 [ 0.000000] Memory policy: Data cache writealloc [ 0.000000] Reserved memory: created CMA memory pool at 0x000000001ec00000, size 256 MiB [ 0.000000] OF: reserved mem: initialized node linux,cma, compatible id shared-dma-pool [ 0.000000] On node 0 totalpages: 1012736 [ 0.000000] DMA zone: 2304 pages used for memmap [ 0.000000] DMA zone: 0 pages reserved [ 0.000000] DMA zone: 196608 pages, LIFO batch:63 [ 0.000000] HighMem zone: 816128 pages, LIFO batch:63 [ 0.000000] percpu: Embedded 20 pages/cpu s49856 r8192 d23872 u81920 [ 0.000000] pcpu-alloc: s49856 r8192 d23872 u81920 alloc=20*4096 [ 0.000000] pcpu-alloc: [0] 0 [0] 1 [0] 2 [0] 3 [ 0.000000] Built 1 zonelists, mobility grouping on. Total pages: 1010432 [ 0.000000] Kernel command line: coherent_pool=1M 8250.nr_uarts=0 snd_bcm2835.enable_compat_alsa=0 snd_bcm2835.enable_hdmi=1 snd_bcm2835.enable_headphones=1 video=HDMI-A-1:1920x1080M@60 smsc95xx.macaddr=DC:A6:32:84:15:CD vc_mem.mem_base=0x3ec00000 vc_mem.mem_size=0x40000000 console=ttyS0,115200 console=tty1 root=/dev/mmcblk0p7 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait quiet splash plymouth.ignore-serial-consoles [ 0.000000] Dentry cache hash table entries: 131072 (order: 7, 524288 bytes, linear) [ 0.000000] Inode-cache hash table entries: 65536 (order: 6, 262144 bytes, linear) [ 0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off [ 0.000000] software IO TLB: mapped [mem 0x17cc0000-0x1bcc0000] (64MB) [ 0.000000] Memory: 3655620K/4050944K available (10240K kernel code, 725K rwdata, 2740K rodata, 2048K init, 853K bss, 133180K reserved, 262144K cma-reserved, 3264512K highmem) [ 0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1 [ 0.000000] ftrace: allocating 30051 entries in 59 pages [ 0.000000] rcu: Hierarchical RCU implementation. [ 0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 10 jiffies. [ 0.000000] NR_IRQS: 16, nr_irqs: 16, preallocated irqs: 16 [ 0.000000] GIC: Using split EOI/Deactivate mode [ 0.000000] random: get_random_bytes called from start_kernel+0x340/0x518 with crng_init=0 [ 0.000008] sched_clock: 32 bits at 1000kHz, resolution 1000ns, wraps every 2147483647500ns [ 0.000024] clocksource: timer: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 1911260446275 ns [ 0.000103] bcm2835: system timer (irq = 17) [ 0.000777] arch_timer: cp15 timer(s) running at 54.00MHz (phys). [ 0.000793] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0xc743ce346, max_idle_ns: 440795203123 ns [ 0.000810] sched_clock: 56 bits at 54MHz, resolution 18ns, wraps every 4398046511102ns [ 0.000823] Switching to timer-based delay loop, resolution 18ns [ 0.001072] Console: colour dummy device 80x30 [ 0.001105] printk: console [tty1] enabled [ 0.001157] Calibrating delay loop (skipped), value calculated using timer frequency.. 108.00 BogoMIPS (lpj=540000) [ 0.001179] pid_max: default: 32768 minimum: 301 [ 0.001498] Mount-cache hash table entries: 2048 (order: 1, 8192 bytes, linear) [ 0.001522] Mountpoint-cache hash table entries: 2048 (order: 1, 8192 bytes, linear) [ 0.002730] Disabling memory control group subsystem [ 0.002835] CPU: Testing write buffer coherency: ok [ 0.003334] CPU0: thread -1, cpu 0, socket 0, mpidr 80000000 [ 0.004179] Setting up static identity map for 0x200000 - 0x20003c [ 0.004371] rcu: Hierarchical SRCU implementation. [ 0.005015] smp: Bringing up secondary CPUs ... [ 0.006217] CPU1: thread -1, cpu 1, socket 0, mpidr 80000001 [ 0.007537] CPU2: thread -1, cpu 2, socket 0, mpidr 80000002 [ 0.008793] CPU3: thread -1, cpu 3, socket 0, mpidr 80000003 [ 0.008937] smp: Brought up 1 node, 4 CPUs [ 0.008953] SMP: Total of 4 processors activated (432.00 BogoMIPS). [ 0.008965] CPU: All CPU(s) started in HYP mode. [ 0.008976] CPU: Virtualization extensions available. [ 0.009745] devtmpfs: initialized [ 0.023116] VFP support v0.3: implementor 41 architecture 3 part 40 variant 8 rev 0 [ 0.023366] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns [ 0.023393] futex hash table entries: 1024 (order: 4, 65536 bytes, linear) [ 0.031390] pinctrl core: initialized pinctrl subsystem [ 0.032474] NET: Registered protocol family 16 [ 0.036266] DMA: preallocated 1024 KiB pool for atomic coherent allocations [ 0.038006] hw-breakpoint: found 5 (+1 reserved) breakpoint and 4 watchpoint registers. [ 0.038020] hw-breakpoint: maximum watchpoint size is 8 bytes. [ 0.038377] Serial: AMBA PL011 UART driver [ 0.041818] bcm2835-mbox fe00b880.mailbox: mailbox enabled [ 0.060902] raspberrypi-firmware soc:firmware: Attached to firmware from 2020-08-19 17:38, variant start [ 0.070883] raspberrypi-firmware soc:firmware: Firmware hash is e90cba19a98a0d1f2ef086b9cafcbca00778f094 [ 0.124053] bcm2835-dma fe007000.dma: DMA legacy API manager, dmachans=0x1 [ 0.128539] vgaarb: loaded [ 0.129015] SCSI subsystem initialized [ 0.129244] usbcore: registered new interface driver usbfs [ 0.129328] usbcore: registered new interface driver hub [ 0.129452] usbcore: registered new device driver usb [ 0.131117] clocksource: Switched to clocksource arch_sys_counter [ 0.883225] VFS: Disk quotas dquot_6.6.0 [ 0.883328] VFS: Dquot-cache hash table entries: 1024 (order 0, 4096 bytes) [ 0.883510] FS-Cache: Loaded [ 0.883716] CacheFiles: Loaded [ 0.884638] simple-framebuffer 3e3cf000.framebuffer: framebuffer at 0x3e3cf000, 0x7f8000 bytes, mapped to 0x(ptrval) [ 0.884656] simple-framebuffer 3e3cf000.framebuffer: format=a8r8g8b8, mode=1920x1080x32, linelength=7680 [ 0.885163] Console: switching to colour frame buffer device 240x67 [ 0.895860] simple-framebuffer 3e3cf000.framebuffer: fb0: simplefb registered! [ 0.905794] thermal_sys: Registered thermal governor 'step_wise' [ 0.906181] NET: Registered protocol family 2 [ 0.906918] tcp_listen_portaddr_hash hash table entries: 512 (order: 0, 6144 bytes, linear) [ 0.906948] TCP established hash table entries: 8192 (order: 3, 32768 bytes, linear) [ 0.907023] TCP bind hash table entries: 8192 (order: 4, 65536 bytes, linear) [ 0.907100] TCP: Hash tables configured (established 8192 bind 8192) [ 0.907248] UDP hash table entries: 512 (order: 2, 16384 bytes, linear) [ 0.907281] UDP-Lite hash table entries: 512 (order: 2, 16384 bytes, linear) [ 0.907534] NET: Registered protocol family 1 [ 0.908261] RPC: Registered named UNIX socket transport module. [ 0.908274] RPC: Registered udp transport module. [ 0.908286] RPC: Registered tcp transport module. [ 0.908298] RPC: Registered tcp NFSv4.1 backchannel transport module. [ 0.908320] PCI: CLS 0 bytes, default 64 [ 0.910182] hw perfevents: enabled with armv7_cortex_a15 PMU driver, 7 counters available [ 0.912404] Initialise system trusted keyrings [ 0.912632] workingset: timestamp_bits=14 max_order=20 bucket_order=6 [ 0.923453] FS-Cache: Netfs 'nfs' registered for caching [ 0.924175] NFS: Registering the id_resolver key type [ 0.924211] Key type id_resolver registered [ 0.924224] Key type id_legacy registered [ 0.924246] nfs4filelayout_init: NFSv4 File Layout Driver Registering... [ 0.925355] Key type asymmetric registered [ 0.925369] Asymmetric key parser 'x509' registered [ 0.925535] bounce: pool size: 64 pages [ 0.925582] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 249) [ 0.925796] io scheduler mq-deadline registered [ 0.925809] io scheduler kyber registered [ 0.929608] brcm-pcie fd500000.pcie: host bridge /scb/pcie@7d500000 ranges: [ 0.929632] brcm-pcie fd500000.pcie: No bus range found for /scb/pcie@7d500000, using [bus 00-ff] [ 0.929697] brcm-pcie fd500000.pcie: MEM 0x0600000000..0x0603ffffff -> 0x00f8000000 [ 0.929761] brcm-pcie fd500000.pcie: IB MEM 0x0000000000..0x00bfffffff -> 0x0000000000 [ 0.983246] brcm-pcie fd500000.pcie: link up, 5 GT/s x1 (SSC) [ 0.983561] brcm-pcie fd500000.pcie: PCI host bridge to bus 0000:00 [ 0.983578] pci_bus 0000:00: root bus resource [bus 00-ff] [ 0.983598] pci_bus 0000:00: root bus resource [mem 0x600000000-0x603ffffff] (bus address [0xf8000000-0xfbffffff]) [ 0.983656] pci 0000:00:00.0: [14e4:2711] type 01 class 0x060400 [ 0.983895] pci 0000:00:00.0: PME# supported from D0 D3hot [ 0.987233] PCI: bus0: Fast back to back transfers disabled [ 0.987254] pci 0000:00:00.0: bridge configuration invalid ([bus 00-00]), reconfiguring [ 0.987508] pci 0000:01:00.0: [1106:3483] type 00 class 0x0c0330 [ 0.987653] pci 0000:01:00.0: reg 0x10: [mem 0x00000000-0x00000fff 64bit] [ 0.988071] pci 0000:01:00.0: PME# supported from D0 D3cold [ 0.991455] PCI: bus1: Fast back to back transfers disabled [ 0.991474] pci_bus 0000:01: busn_res: [bus 01-ff] end is updated to 01 [ 0.991516] pci 0000:00:00.0: BAR 8: assigned [mem 0x600000000-0x6000fffff] [ 0.991538] pci 0000:01:00.0: BAR 0: assigned [mem 0x600000000-0x600000fff 64bit] [ 0.991619] pci 0000:00:00.0: PCI bridge to [bus 01] [ 0.991642] pci 0000:00:00.0: bridge window [mem 0x600000000-0x6000fffff] [ 0.991945] pcieport 0000:00:00.0: enabling device (0140 -> 0142) [ 0.992182] pcieport 0000:00:00.0: PME: Signaling with IRQ 55 [ 0.992562] pcieport 0000:00:00.0: AER: enabled with IRQ 55 [ 0.992880] pci 0000:01:00.0: enabling device (0140 -> 0142) [ 0.999596] iproc-rng200 fe104000.rng: hwrng registered [ 0.999908] vc-mem: phys_addr:0x00000000 mem_base=0x3ec00000 mem_size:0x40000000(1024 MiB) [ 1.000538] vc-sm: Videocore shared memory driver [ 1.001074] gpiomem-bcm2835 fe200000.gpiomem: Initialised: Registers at 0xfe200000 [ 1.013017] brd: module loaded [ 1.025264] loop: module loaded [ 1.026622] Loading iSCSI transport class v2.0-870. [ 1.028598] libphy: Fixed MDIO Bus: probed [ 1.029171] bcmgenet fd580000.ethernet: failed to get enet clock [ 1.029190] bcmgenet fd580000.ethernet: GENET 5.0 EPHY: 0x0000 [ 1.029211] bcmgenet fd580000.ethernet: failed to get enet-wol clock [ 1.029230] bcmgenet fd580000.ethernet: failed to get enet-eee clock [ 1.029257] bcmgenet: Skipping UMAC reset [ 1.041166] libphy: bcmgenet MII bus: probed [ 1.121234] unimac-mdio unimac-mdio.-19: Broadcom UniMAC MDIO bus [ 1.122276] usbcore: registered new interface driver r8152 [ 1.122357] usbcore: registered new interface driver lan78xx [ 1.122427] usbcore: registered new interface driver smsc95xx [ 1.122846] xhci_hcd 0000:01:00.0: xHCI Host Controller [ 1.122881] xhci_hcd 0000:01:00.0: new USB bus registered, assigned bus number 1 [ 1.125155] xhci_hcd 0000:01:00.0: hcc params 0x002841eb hci version 0x100 quirks 0x0000001000000890 [ 1.126411] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 5.04 [ 1.126428] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1 [ 1.126442] usb usb1: Product: xHCI Host Controller [ 1.126457] usb usb1: Manufacturer: Linux 5.4.51-v7l+ xhci-hcd [ 1.126471] usb usb1: SerialNumber: 0000:01:00.0 [ 1.127071] hub 1-0:1.0: USB hub found [ 1.127162] hub 1-0:1.0: 1 port detected [ 1.127709] xhci_hcd 0000:01:00.0: xHCI Host Controller [ 1.127734] xhci_hcd 0000:01:00.0: new USB bus registered, assigned bus number 2 [ 1.127756] xhci_hcd 0000:01:00.0: Host supports USB 3.0 SuperSpeed [ 1.128265] usb usb2: New USB device found, idVendor=1d6b, idProduct=0003, bcdDevice= 5.04 [ 1.128282] usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1 [ 1.128297] usb usb2: Product: xHCI Host Controller [ 1.128311] usb usb2: Manufacturer: Linux 5.4.51-v7l+ xhci-hcd [ 1.128325] usb usb2: SerialNumber: 0000:01:00.0 [ 1.128870] hub 2-0:1.0: USB hub found [ 1.128948] hub 2-0:1.0: 4 ports detected [ 1.130374] dwc_otg: version 3.00a 10-AUG-2012 (platform bus) [ 1.130640] dwc_otg: FIQ enabled [ 1.130651] dwc_otg: NAK holdoff enabled [ 1.130663] dwc_otg: FIQ split-transaction FSM enabled [ 1.130677] Module dwc_common_port init [ 1.131167] usbcore: registered new interface driver uas [ 1.131274] usbcore: registered new interface driver usb-storage [ 1.131482] mousedev: PS/2 mouse device common for all mice [ 1.133538] bcm2835-wdt bcm2835-wdt: Broadcom BCM2835 watchdog timer [ 1.136049] sdhci: Secure Digital Host Controller Interface driver [ 1.136061] sdhci: Copyright(c) Pierre Ossman [ 1.136632] mmc-bcm2835 fe300000.mmcnr: could not get clk, deferring probe [ 1.137150] sdhci-pltfm: SDHCI platform and OF driver helper [ 1.140915] ledtrig-cpu: registered to indicate activity on CPUs [ 1.141280] hidraw: raw HID events driver (C) Jiri Kosina [ 1.141458] usbcore: registered new interface driver usbhid [ 1.141471] usbhid: USB HID core driver [ 1.142503] vchiq: vchiq_init_state: slot_zero = (ptrval)

[ 1.154597] [vc_sm_connected_init]: end - returning 0 [ 1.156653] Initializing XFRM netlink socket [ 1.156691] NET: Registered protocol family 17 [ 1.156814] Key type dns_resolver registered [ 1.157279] Registering SWP/SWPB emulation handler [ 1.157632] registered taskstats version 1 [ 1.157650] Loading compiled-in X.509 certificates [ 1.158158] Key type ._fscrypt registered [ 1.158171] Key type .fscrypt registered [ 1.168325] uart-pl011 fe201000.serial: cts_event_workaround enabled [ 1.168396] fe201000.serial: ttyAMA0 at MMIO 0xfe201000 (irq = 29, base_baud = 0) is a PL011 rev2 [ 1.174408] bcm2835-power bcm2835-power: Broadcom BCM2835 power domains driver [ 1.175333] mmc-bcm2835 fe300000.mmcnr: mmc_debug:0 mmc_debug2:0 [ 1.175347] mmc-bcm2835 fe300000.mmcnr: DMA channel allocated [ 1.226763] mmc1: queuing unknown CIS tuple 0x80 (2 bytes) [ 1.228400] mmc1: queuing unknown CIS tuple 0x80 (3 bytes) [ 1.230097] mmc1: queuing unknown CIS tuple 0x80 (3 bytes) [ 1.233071] mmc1: queuing unknown CIS tuple 0x80 (7 bytes) [ 1.234725] mmc1: queuing unknown CIS tuple 0x80 (3 bytes) [ 1.242326] mmc0: SDHCI controller on fe340000.emmc2 [fe340000.emmc2] using ADMA [ 1.245126] of_cfs_init [ 1.245243] of_cfs_init: OK [ 1.246379] Waiting for root device /dev/mmcblk0p7... [ 1.284069] random: fast init done [ 1.315619] mmc1: new high speed SDIO card at address 0001 [ 1.349467] mmc0: new ultra high speed DDR50 SDHC card at address 0001 [ 1.350415] mmcblk0: mmc0:0001 EB1QT 29.8 GiB [ 1.353683] mmcblk0: p1 p2 < p5 p6 p7 > [ 1.373628] EXT4-fs (mmcblk0p7): mounted filesystem with ordered data mode. Opts: (null) [ 1.373703] VFS: Mounted root (ext4 filesystem) readonly on device 179:7. [ 1.378987] devtmpfs: mounted [ 1.387094] Freeing unused kernel memory: 2048K [ 1.411421] Run /sbin/init as init process [ 1.491197] usb 1-1: new high-speed USB device number 2 using xhci_hcd [ 1.673771] usb 1-1: New USB device found, idVendor=2109, idProduct=3431, bcdDevice= 4.21 [ 1.673788] usb 1-1: New USB device strings: Mfr=0, Product=1, SerialNumber=0 [ 1.673803] usb 1-1: Product: USB2.0 Hub [ 1.675839] hub 1-1:1.0: USB hub found [ 1.676156] hub 1-1:1.0: 4 ports detected [ 1.873316] systemd[1]: System time before build time, advancing clock. [ 1.965408] NET: Registered protocol family 10 [ 1.966767] Segment Routing with IPv6 [ 1.999602] systemd[1]: systemd 241 running in system mode. (+PAM +AUDIT +SELINUX +IMA +APPARMOR +SMACK +SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT +GNUTLS +ACL +XZ +LZ4 +SECCOMP +BLKID +ELFUTILS +KMOD -IDN2 +IDN -PCRE2 default-hierarchy=hybrid) [ 2.000346] systemd[1]: Detected architecture arm. [ 2.001353] usb 1-1.3: new full-speed USB device number 3 using xhci_hcd [ 2.062313] systemd[1]: Set hostname to . [ 2.140673] usb 1-1.3: New USB device found, idVendor=17ef, idProduct=60a9, bcdDevice= 1.08 [ 2.140703] usb 1-1.3: New USB device strings: Mfr=0, Product=2, SerialNumber=0 [ 2.140720] usb 1-1.3: Product: Lenovo Essential Wireless Keyboard and Mouse Combo [ 2.154680] input: Lenovo Essential Wireless Keyboard and Mouse Combo as /devices/platform/scb/fd500000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/usb1/1-1/1-1.3/1-1.3:1.0/0003:17EF:60A9.0001/input/input0 [ 2.221850] hid-generic 0003:17EF:60A9.0001: input,hidraw0: USB HID v1.11 Keyboard [Lenovo Essential Wireless Keyboard and Mouse Combo] on usb-0000:01:00.0-1.3/input0 [ 2.231065] input: Lenovo Essential Wireless Keyboard and Mouse Combo as /devices/platform/scb/fd500000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/usb1/1-1/1-1.3/1-1.3:1.1/0003:17EF:60A9.0002/input/input1 [ 2.231561] hid-generic 0003:17EF:60A9.0002: input,hidraw1: USB HID v1.11 Mouse [Lenovo Essential Wireless Keyboard and Mouse Combo] on usb-0000:01:00.0-1.3/input1 [ 2.236043] input: Lenovo Essential Wireless Keyboard and Mouse Combo as /devices/platform/scb/fd500000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/usb1/1-1/1-1.3/1-1.3:1.2/0003:17EF:60A9.0003/input/input2 [ 2.301729] hid-generic 0003:17EF:60A9.0003: input,hidraw2: USB HID v1.11 Device [Lenovo Essential Wireless Keyboard and Mouse Combo] on usb-0000:01:00.0-1.3/input2 [ 2.307072] hid-generic 0003:17EF:60A9.0004: hiddev96,hidraw3: USB HID v1.11 Device [Lenovo Essential Wireless Keyboard and Mouse Combo] on usb-0000:01:00.0-1.3/input3 [ 2.764139] random: systemd: uninitialized urandom read (16 bytes read) [ 2.774793] random: systemd: uninitialized urandom read (16 bytes read) [ 2.778030] systemd[1]: Created slice system-systemd\x2dfsck.slice. [ 2.778289] random: systemd: uninitialized urandom read (16 bytes read) [ 2.779409] systemd[1]: Created slice system-getty.slice. [ 2.780214] systemd[1]: Listening on Journal Socket (/dev/log). [ 2.780623] systemd[1]: Started Forward Password Requests to Wall Directory Watch. [ 2.785883] systemd[1]: Listening on Syslog Socket. [ 2.786601] systemd[1]: Listening on udev Control Socket. [ 2.787298] systemd[1]: Listening on Journal Socket. [ 2.943264] i2c /dev entries driver [ 3.323875] EXT4-fs (mmcblk0p7): re-mounted. Opts: (null) [ 3.426915] systemd-journald[123]: Received request to flush runtime journal from PID 1 [ 4.122765] rpivid-mem feb00000.hevc-decoder: rpivid-hevcmem initialised: Registers at 0xfeb00000 length 0x00010000 [ 4.124059] rpivid-mem feb10000.rpivid-local-intc: rpivid-intcmem initialised: Registers at 0xfeb10000 length 0x00001000 [ 4.125195] rpivid-mem feb20000.h264-decoder: rpivid-h264mem initialised: Registers at 0xfeb20000 length 0x00010000 [ 4.126218] rpivid-mem feb30000.vp9-decoder: rpivid-vp9mem initialised: Registers at 0xfeb30000 length 0x00010000 [ 4.272297] vc_sm_cma: module is from the staging directory, the quality is unknown, you have been warned. [ 4.275093] bcm2835_vc_sm_cma_probe: Videocore shared memory driver

[ 4.281562] [vc_sm_connected_init]: installed successfully [ 4.282158] snd_bcm2835: module is from the staging directory, the quality is unknown, you have been warned. [ 4.304176] mc: Linux media interface: v0.10 [ 4.396171] bcm2835_audio bcm2835_audio: card created with 4 channels [ 4.457598] bcm2835_audio bcm2835_audio: card created with 4 channels [ 4.458231] videodev: Linux video capture interface: v2.00 [ 4.488662] bcm2835_mmal_vchiq: module is from the staging directory, the quality is unknown, you have been warned. [ 4.494558] bcm2835_mmal_vchiq: module is from the staging directory, the quality is unknown, you have been warned. [ 4.507656] bcm2835_v4l2: module is from the staging directory, the quality is unknown, you have been warned. [ 4.516464] bcm2835_isp: module is from the staging directory, the quality is unknown, you have been warned. [ 4.597537] bcm2835-isp bcm2835-isp: Device node output[0] registered as /dev/video13 [ 4.598068] bcm2835-isp bcm2835-isp: Device node capture[0] registered as /dev/video14 [ 4.598513] bcm2835-isp bcm2835-isp: Device node capture[1] registered as /dev/video15 [ 4.598837] bcm2835-isp bcm2835-isp: Device node stats[2] registered as /dev/video16 [ 4.598867] bcm2835-isp bcm2835-isp: Register output node 0 with media controller [ 4.598904] bcm2835-isp bcm2835-isp: Register capture node 1 with media controller [ 4.598923] bcm2835-isp bcm2835-isp: Register capture node 2 with media controller [ 4.598942] bcm2835-isp bcm2835-isp: Register capture node 3 with media controller [ 4.599928] bcm2835-isp bcm2835-isp: Loaded V4L2 bcm2835-isp [ 4.612936] bcm2835_codec: module is from the staging directory, the quality is unknown, you have been warned. [ 4.635240] vc4-drm gpu: bound fe600000.firmwarekms (ops vc4_fkms_ops [vc4]) [ 4.635266] checking generic (3e3cf000 7f8000) vs hw (0 ffffffffffffffff) [ 4.635280] fb0: switching to vc4drmfb from simple [ 4.635907] Console: switching to colour dummy device 80x30 [ 4.636142] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013). [ 4.636156] [drm] No driver support for vblank timestamp query. [ 4.636168] [drm] Setting vblank_disable_immediate to false because get_vblank_timestamp == NULL [ 4.638974] [drm] Initialized vc4 0.0.0 20140616 for gpu on minor 0 [ 4.712134] bcm2835-codec bcm2835-codec: Device registered as /dev/video10 [ 4.712192] bcm2835-codec bcm2835-codec: Loaded V4L2 decode [ 4.807886] bcm2835-codec bcm2835-codec: Device registered as /dev/video11 [ 4.807923] bcm2835-codec bcm2835-codec: Loaded V4L2 encode [ 4.814720] bcm2835-codec bcm2835-codec: Device registered as /dev/video12 [ 4.814760] bcm2835-codec bcm2835-codec: Loaded V4L2 isp [ 4.854773] Console: switching to colour frame buffer device 240x67 [ 4.879087] vc4-drm gpu: fb0: vc4drmfb frame buffer device [ 4.908389] [drm] Initialized v3d 1.0.0 20180419 for fec00000.v3d on minor 1 [ 4.917241] cfg80211: Loading compiled-in X.509 certificates for regulatory database [ 5.038031] cfg80211: Loaded X.509 cert 'sforshee: 00b28ddf47aef9cea7' [ 5.121984] brcmfmac: F1 signature read @0x18000000=0x15264345 [ 5.138805] brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac43455-sdio for chip BCM4345/6 [ 5.139839] usbcore: registered new interface driver brcmfmac [ 5.161242] brcmfmac mmc1:0001:1: Direct firmware load for brcm/brcmfmac43455-sdio.raspberrypi,4-model-b.txt failed with error -2 [ 5.406902] brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac43455-sdio for chip BCM4345/6 [ 5.424273] brcmfmac: brcmf_c_preinit_dcmds: Firmware: BCM4345/6 wl0: Mar 23 2020 02:19:54 version 7.45.206 (r725000 CY) FWID 01-88ee44ea [ 7.197873] uart-pl011 fe201000.serial: no DMA platform data [ 7.338826] random: crng init done [ 7.338846] random: 7 urandom warning(s) missed due to ratelimiting [ 7.422565] 8021q: 802.1Q VLAN Support v1.8 [ 7.722414] Adding 102396k swap on /var/swap. Priority:-2 extents:1 across:102396k SSFS [ 7.941764] brcmfmac: brcmf_cfg80211_set_power_mgmt: power save enabled [ 8.345950] bcmgenet: Skipping UMAC reset [ 8.348443] bcmgenet fd580000.ethernet: configuring instance for external RGMII [ 8.348755] bcmgenet fd580000.ethernet eth0: Link is Down [ 10.195310] broken atomic modeset userspace detected, disabling atomic [ 13.007092] fuse: init (API version 7.31) [ 13.511217] bcmgenet fd580000.ethernet eth0: Link is Up - 1Gbps/Full - flow control rx/tx [ 13.511250] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready [ 13.945619] IPv6: ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready [ 13.971249] Bluetooth: Core ver 2.22 [ 13.971320] NET: Registered protocol family 31 [ 13.971327] Bluetooth: HCI device and connection manager initialized [ 13.971342] Bluetooth: HCI socket layer initialized [ 13.971353] Bluetooth: L2CAP socket layer initialized [ 13.971368] Bluetooth: SCO socket layer initialized [ 13.984675] Bluetooth: HCI UART driver ver 2.3 [ 13.984683] Bluetooth: HCI UART protocol H4 registered [ 13.984726] Bluetooth: HCI UART protocol Three-wire (H5) registered [ 13.987381] Bluetooth: HCI UART protocol Broadcom registered [ 14.194041] Bluetooth: BNEP (Ethernet Emulation) ver 1.3 [ 14.194049] Bluetooth: BNEP filters: protocol multicast [ 14.194063] Bluetooth: BNEP socket layer initialized [ 14.248557] Bluetooth: RFCOMM TTY layer initialized [ 14.248581] Bluetooth: RFCOMM socket layer initialized [ 14.248597] Bluetooth: RFCOMM ver 1.11 [ 914.769938] ieee80211 phy0: brcmf_fw_crashed: Firmware has halted or crashed [ 917.202610] brcmfmac: brcmf_sdio_bus_rxctl: resumed on timeout [ 917.203156] brcmfmac: brcmf_sdio_checkdied: firmware trap in dongle [ 917.203446] brcmfmac: dongle trap info: type 0x4 @ epc 0x0007a094 cpsr 0x6000019f spsr 0x600001bf sp 0x0025f888 lr 0x0007a093 pc 0x0007a094 offset 0x25f830 r0 0x00000036 r1 0x00000005 r2 0x00000000 r3 0x00000001 r4 0x002494d0 r5 0x00000000 r6 0x00249460 r7 0x00000004 [ 917.203469] ieee80211 phy0: brcmf_run_escan: error (-110) [ 917.203488] ieee80211 phy0: brcmf_cfg80211_scan: scan error (-110) [ 977.203539] brcmfmac: brcmf_sdio_bus_rxctl: resumed on timeout [ 977.204092] brcmfmac: brcmf_sdio_checkdied: firmware trap in dongle [ 977.204382] brcmfmac: dongle trap info: type 0x4 @ epc 0x0007a094 cpsr 0x6000019f spsr 0x600001bf sp 0x0025f888 lr 0x0007a093 pc 0x0007a094 offset 0x25f830 r0 0x00000036 r1 0x00000005 r2 0x00000000 r3 0x00000001 r4 0x002494d0 r5 0x00000000 r6 0x00249460 r7 0x00000004 [ 977.204405] ieee80211 phy0: brcmf_run_escan: error (-110) [ 977.204424] ieee80211 phy0: brcmf_cfg80211_scan: scan error (-110) [ 1037.204522] brcmfmac: brcmf_sdio_bus_rxctl: resumed on timeout [ 1037.205081] brcmfmac: brcmf_sdio_checkdied: firmware trap in dongle [ 1037.205369] brcmfmac: dongle trap info: type 0x4 @ epc 0x0007a094 cpsr 0x6000019f spsr 0x600001bf sp 0x0025f888 lr 0x0007a093 pc 0x0007a094 offset 0x25f830 r0 0x00000036 r1 0x00000005 r2 0x00000000 r3 0x00000001 r4 0x002494d0 r5 0x00000000 r6 0x00249460 r7 0x00000004 [ 1037.205392] ieee80211 phy0: brcmf_run_escan: error (-110) [ 1037.205411] ieee80211 phy0: brcmf_cfg80211_scan: scan error (-110) [ 1097.205517] brcmfmac: brcmf_sdio_bus_rxctl: resumed on timeout [ 1097.206068] brcmfmac: brcmf_sdio_checkdied: firmware trap in dongle [ 1097.206358] brcmfmac: dongle trap info: type 0x4 @ epc 0x0007a094 cpsr 0x6000019f spsr 0x600001bf sp 0x0025f888 lr 0x0007a093 pc 0x0007a094 offset 0x25f830 r0 0x00000036 r1 0x00000005 r2 0x00000000 r3 0x00000001 r4 0x002494d0 r5 0x00000000 r6 0x00249460 r7 0x00000004 [ 1097.206381] ieee80211 phy0: brcmf_run_escan: error (-110) [ 1097.206399] ieee80211 phy0: brcmf_cfg80211_scan: scan error (-110) [ 1157.206541] brcmfmac: brcmf_sdio_bus_rxctl: resumed on timeout [ 1157.207088] brcmfmac: brcmf_sdio_checkdied: firmware trap in dongle [ 1157.207376] brcmfmac: dongle trap info: type 0x4 @ epc 0x0007a094 cpsr 0x6000019f spsr 0x600001bf sp 0x0025f888 lr 0x0007a093 pc 0x0007a094 offset 0x25f830 r0 0x00000036 r1 0x00000005 r2 0x00000000 r3 0x00000001 r4 0x002494d0 r5 0x00000000 r6 0x00249460 r7 0x00000004 [ 1157.207399] ieee80211 phy0: brcmf_run_escan: error (-110) [ 1157.207417] ieee80211 phy0: brcmf_cfg80211_scan: scan error (-110) [ 1217.207539] brcmfmac: brcmf_sdio_bus_rxctl: resumed on timeout [ 1217.208000] brcmfmac: brcmf_sdio_checkdied: firmware trap in dongle [ 1217.208246] brcmfmac: dongle trap info: type 0x4 @ epc 0x0007a094 cpsr 0x6000019f spsr 0x600001bf sp 0x0025f888 lr 0x0007a093 pc 0x0007a094 offset 0x25f830 r0 0x00000036 r1 0x00000005 r2 0x00000000 r3 0x00000001 r4 0x002494d0 r5 0x00000000 r6 0x00249460 r7 0x00000004 [ 1217.208265] ieee80211 phy0: brcmf_run_escan: error (-110) [ 1217.208281] ieee80211 phy0: brcmf_cfg80211_scan: scan error (-110) [ 1277.208520] brcmfmac: brcmf_sdio_bus_rxctl: resumed on timeout [ 1277.208982] brcmfmac: brcmf_sdio_checkdied: firmware trap in dongle [ 1277.209239] brcmfmac: dongle trap info: type 0x4 @ epc 0x0007a094 cpsr 0x6000019f spsr 0x600001bf sp 0x0025f888 lr 0x0007a093 pc 0x0007a094 offset 0x25f830 r0 0x00000036 r1 0x00000005 r2 0x00000000 r3 0x00000001 r4 0x002494d0 r5 0x00000000 r6 0x00249460 r7 0x00000004 [ 1277.209258] ieee80211 phy0: brcmf_run_escan: error (-110) [ 1277.209274] ieee80211 phy0: brcmf_cfg80211_scan: scan error (-110) [ 1337.209536] brcmfmac: brcmf_sdio_bus_rxctl: resumed on timeout [ 1337.210003] brcmfmac: brcmf_sdio_checkdied: firmware trap in dongle [ 1337.210243] brcmfmac: dongle trap info: type 0x4 @ epc 0x0007a094 cpsr 0x6000019f spsr 0x600001bf sp 0x0025f888 lr 0x0007a093 pc 0x0007a094 offset 0x25f830 r0 0x00000036 r1 0x00000005 r2 0x00000000 r3 0x00000001 r4 0x002494d0 r5 0x00000000 r6 0x00249460 r7 0x00000004 [ 1337.210262] ieee80211 phy0: brcmf_run_escan: error (-110) [ 1337.210277] ieee80211 phy0: brcmf_cfg80211_scan: scan error (-110) [ 1397.210554] brcmfmac: brcmf_sdio_bus_rxctl: resumed on timeout [ 1397.211011] brcmfmac: brcmf_sdio_checkdied: firmware trap in dongle [ 1397.211267] brcmfmac: dongle trap info: type 0x4 @ epc 0x0007a094 cpsr 0x6000019f spsr 0x600001bf sp 0x0025f888 lr 0x0007a093 pc 0x0007a094 offset 0x25f830 r0 0x00000036 r1 0x00000005 r2 0x00000000 r3 0x00000001 r4 0x002494d0 r5 0x00000000 r6 0x00249460 r7 0x00000004 [ 1397.211287] ieee80211 phy0: brcmf_run_escan: error (-110) [ 1397.211303] ieee80211 phy0: brcmf_cfg80211_scan: scan error (-110) [ 1457.211559] brcmfmac: brcmf_sdio_bus_rxctl: resumed on timeout [ 1457.212025] brcmfmac: brcmf_sdio_checkdied: firmware trap in dongle [ 1457.212265] brcmfmac: dongle trap info: type 0x4 @ epc 0x0007a094 cpsr 0x6000019f spsr 0x600001bf sp 0x0025f888 lr 0x0007a093 pc 0x0007a094 offset 0x25f830 r0 0x00000036 r1 0x00000005 r2 0x00000000 r3 0x00000001 r4 0x002494d0 r5 0x00000000 r6 0x00249460 r7 0x00000004 [ 1457.212285] ieee80211 phy0: brcmf_run_escan: error (-110) [ 1457.212300] ieee80211 phy0: brcmf_cfg80211_scan: scan error (-110) [ 1517.212582] brcmfmac: brcmf_sdio_bus_rxctl: resumed on timeout [ 1517.213038] brcmfmac: brcmf_sdio_checkdied: firmware trap in dongle [ 1517.213284] brcmfmac: dongle trap info: type 0x4 @ epc 0x0007a094 cpsr 0x6000019f spsr 0x600001bf sp 0x0025f888 lr 0x0007a093 pc 0x0007a094 offset 0x25f830 r0 0x00000036 r1 0x00000005 r2 0x00000000 r3 0x00000001 r4 0x002494d0 r5 0x00000000 r6 0x00249460 r7 0x00000004 [ 1517.213304] ieee80211 phy0: brcmf_run_escan: error (-110) [ 1517.213319] ieee80211 phy0: brcmf_cfg80211_scan: scan error (-110) [ 1577.213591] brcmfmac: brcmf_sdio_bus_rxctl: resumed on timeout [ 1577.214047] brcmfmac: brcmf_sdio_checkdied: firmware trap in dongle [ 1577.214288] brcmfmac: dongle trap info: type 0x4 @ epc 0x0007a094 cpsr 0x6000019f spsr 0x600001bf sp 0x0025f888 lr 0x0007a093 pc 0x0007a094 offset 0x25f830 r0 0x00000036 r1 0x00000005 r2 0x00000000 r3 0x00000001 r4 0x002494d0 r5 0x00000000 r6 0x00249460 r7 0x00000004 [ 1577.214307] ieee80211 phy0: brcmf_run_escan: error (-110) [ 1577.214322] ieee80211 phy0: brcmf_cfg80211_scan: scan error (-110) [ 1637.214569] brcmfmac: brcmf_sdio_bus_rxctl: resumed on timeout [ 1637.214838] brcmfmac: brcmf_sdio_checkdied: firmware trap in dongle [ 1637.214978] brcmfmac: dongle trap info: type 0x4 @ epc 0x0007a094 cpsr 0x6000019f spsr 0x600001bf sp 0x0025f888 lr 0x0007a093 pc 0x0007a094 offset 0x25f830 r0 0x00000036 r1 0x00000005 r2 0x00000000 r3 0x00000001 r4 0x002494d0 r5 0x00000000 r6 0x00249460 r7 0x00000004 [ 1637.214989] ieee80211 phy0: brcmf_run_escan: error (-110) [ 1637.214998] ieee80211 phy0: brcmf_cfg80211_scan: scan error (-110) [ 1697.215598] ieee80211 phy0: brcmf_run_escan: error (-110) [ 1697.215609] ieee80211 phy0: brcmf_cfg80211_scan: scan error (-110) [ 1757.216630] ieee80211 phy0: brcmf_run_escan: error (-110) [ 1757.216640] ieee80211 phy0: brcmf_cfg80211_scan: scan error (-110) [ 1817.217636] ieee80211 phy0: brcmf_run_escan: error (-110) [ 1817.217646] ieee80211 phy0: brcmf_cfg80211_scan: scan error (-110) [ 1877.218660] ieee80211 phy0: brcmf_run_escan: error (-110) [ 1877.218671] ieee80211 phy0: brcmf_cfg80211_scan: scan error (-110) [ 1937.219692] ieee80211 phy0: brcmf_run_escan: error (-110) [ 1937.219711] ieee80211 phy0: brcmf_cfg80211_scan: scan error (-110) [ 1997.220728] ieee80211 phy0: brcmf_run_escan: error (-110) [ 1997.220747] ieee80211 phy0: brcmf_cfg80211_scan: scan error (-110) [ 2057.221724] ieee80211 phy0: brcmf_run_escan: error (-110) [ 2057.221742] ieee80211 phy0: brcmf_cfg80211_scan: scan error (-110) --- This will continue indefinitely ---

Additional context I am reproducing this daily with a TP-Link Archer A7 router (5GHz)

pelwell commented 3 years ago

Thanks for the feedback, and that's a good question. It seems that WiFi networks are far more varied than Ethernet, and some people see problems while others never do (and I was one of the latter until I investigated an issue with Pi 400 and a particular AP that I happen to have at home).

djohnanderson commented 3 years ago

That makes sense. For what it's worth I'm using a recent Netgear ORBI wifi 6 mesh network. Although the firmware no longer crashes on the Pi and seems to work ok I still get a bunch of these errors:

[21797.439240] ieee80211 phy0: brcmf_run_escan: error (-52) [21797.439256] ieee80211 phy0: brcmf_cfg80211_scan: scan error (-52)

Taomyn commented 3 years ago

I tried the the new firmware on my 4GB Pi4 (official PSU, headless and running OctoPrint, so no video connected) and it has made no difference, well I say no difference, the big difference seems to me that nothing is being logged by the firmware now in any of the files in /var/log. So either I'm looking in the wrong places, dmesg says nothing as well, or it's cached somewhere else. I'm fully updated as far as I can tell after running "apt update/upgrade" today.

I'm connecting to a UBNT access point at 5GHz there are a couple of other devices on the same and they don't have any problems, it's just the Pi that randomly stops getting connectivity. Luckily I simple "reconnect" on the Ubiquity console and the Pi after a few seconds reconnects until it fails again some random time later.

djohnanderson commented 3 years ago

All my failures were logged with dmesg, so if you don't see errors there, e.g. firmware crashed, you probably have a different problem.

Taomyn commented 3 years ago

All my failures were logged with dmesg, so if you don't see errors there, e.g. firmware crashed, you probably have a different problem.

I was getting the messages before, that's why I came here to try the new firmware

djohnanderson commented 3 years ago

Sounds to like you have two problems and one of them was fixed by the firmware

lyallaward commented 3 years ago

I've been having this issue with a RPi4 (8GB) also.

I've updated the clm_blob via sudo apt update && sudo apt install firmware-brcm80211 and followed the instructions from @pelwell in this post https://github.com/raspberrypi/linux/issues/3849#issuecomment-756399407

Will update when I've had it running for a while.

TamariusX commented 3 years ago

RPi 4 with 2 GB and with 4 GB - 9 days in, no wifi crash and no issues yet with the release candidate. RPi 3 - I can confirm that the same issue with Mesh does exist with the RPi 3b+

Provoking Mesh Handovers to a repeater can trigger more of the relevant packages and provoke the crashes - having the wifi setup done poorly help's massive in testing (not so much for the stability of course)

AlexanderNaehring commented 3 years ago

I guess that I had the same issue. I have installed the test FW on one of my Pi 4 and will report if I still get connection drops. Found this GH issue here in this thread. I also have a Mesh Wifi (wired backbone, multiple AP spread in my house, but Pi is close to one of them and not moved). Unfortunately, I have not recorded dmesg output from when the issue did occur but will observe all my Pi closely in the next days. FYI, I had the issues on all of my Pi, 3 and 4, all running latest buster. Since the connection drop occurs at random times, from within minutes up to several days (longest uninterrupted time was 8 days), it is hard to point a finger.

lyallaward commented 3 years ago

I've been having this issue with a RPi4 (8GB) also.

I've updated the clm_blob via sudo apt update && sudo apt install firmware-brcm80211 and followed the instructions from @pelwell in this post #3849 (comment)

Will update when I've had it running for a while.

I've had the Pi running for 11 days since I installed the test firmware. I've been able to access it every time I've tried via the wifi so I'm thinking I might have found the issue. Previously I had a single run of about 10 days without issue so while I'm hopeful Another few days would be good to be sure. I'll also point out I don't have a multiple access point wifi network. Though my access point does offer both 2.4 and 5 GHz on the same SSID which might end up with the same mesh handoff events if a device switches frequencies.

akamming commented 3 years ago

i seem to have the same issue: My wifi connection crashes every few days at this journalctl entry: ieee80211 phy0: brcmf_fw_crashed: Firmware has halted or crashed

just installed the workaround mentioned here, hope it will keep running now. just curious: When can we expect this new firmware to be installed as part of the normal apt update procedure?

pelwell commented 3 years ago

It will be pushed today and appear in the next day or two.

akamming commented 3 years ago

It will be pushed today and appear in the next day or two.

Perfect!! Keep up the good work!

pelwell commented 3 years ago

The updated firmware-brcm80211 package should now be live in at least some mirrors.

vtolstov commented 3 years ago

does anybody knows when this fix goes to libreelec distro?

akamming commented 3 years ago

just checked.

solskogen commented 3 years ago

What about 64bit version?

murphy55555 commented 3 years ago

I've been fighting this exact issue for months. I've come accross this thread and tried to run sudo apt update && sudo apt install firmware-brcm80211

I get -> Unable to locate package firmware-brcm80211

I'm running --> Ubuntu 20.04.1 LTS (GNU/Linux 5.4.0-1028-raspi aarch64)

Thoughts?

pelwell commented 3 years ago

That's a packaging/distribution (so not this repo) for a third party OS (so definitely not this repo).

GuillaumeRossolini commented 3 years ago

Thoughts?

I'd expect the commands to be along these lines, because you presumably already have the required package: apt update && apt upgrade

juergh commented 3 years ago

I'm running --> Ubuntu 20.04.1 LTS (GNU/Linux 5.4.0-1028-raspi aarch64)

For Ubuntu raspi firmware issues, please report your problem here: https://bugs.launchpad.net/ubuntu/+source/linux-raspi2/+filebug Or run: $ apport-bug linux-firmware-raspi2 on the machine that exhibits the problem.

DjDiabolik commented 3 years ago

mmmmmmm.... following this thread.... I have read about 30/40 reply... about some minutes ago i have tryed to update my Pi4 whit Retropie. From retropie-setup i have successfully update retropie to latest commit... after some minutes it's be back on retropie-setup and i obtain some error and retropie say somethings like "No Internet connection". I have check this and apparently from ssh i can ping google.it or other similar and apparenly my Pi4 it's correctly connected to my home wifi 5Ghz. I have re-run retropie-setup and i have retry to update all components.... for someone i have ever obtain this errors and i need to retry to update about two or three times in a row for now obtain errors.

It's normal ? could this be a solution? If yes i can apply this also on currently commit of retropie ?

attiliogelosa commented 3 years ago

Hi all,

I have the same issue... :-( I read all the thread, but let me say I'm a bit confused...

Has a firmware version been released that solves the problem?

If not, is there anyone who has more experience than me who can summarize the best solution?

BR, Attilio

GuillaumeRossolini commented 3 years ago

@attiliogelosa as I've said above, and assuming you are on the official distro (or your distro also has the updated driver), run these commands: sudo apt update && sudo apt upgrade

That's it. You'll see the new driver name mentioned in the console.

attiliogelosa commented 3 years ago

Hi @GuillaumeRossolini ,

thank you for your answer.

I'm running Ubuntu 20.10 (groovy) and I run the commands:

sudo apt update && sudo apt upgrade

but: "0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded." still sometimes I have the issue...

Regards, Attilio

morchaos commented 3 years ago

same issue on my both RPI3 and RPI4, the kernel version is: Linux RPi3-3 5.4.0-1032-raspi #35-Ubuntu SMP PREEMPT Fri Mar 19 20:56:57 UTC 2021 armv7l armv7l armv7l GNU/Linux had up-to-date, there is not further firmware or software from Ubuntu to solve the issue at this moment.

Best, Jones

ezaton commented 3 years ago

I am having the same issue, but with RPI Zero W (which is RPI 2, in fact). Same chip, and same firmware (latest, MD5SUM c4f0aa9d18c0f9dea70b0d75a708638c . You can run 'strings' on the file. I got this: "Version: 7.45.229 (617f1f5 CY) CRC: 253bd863 Date: Mon 2021-01-04 19:58:58 PST Ucode Ver: 1043.2160 FWID 01-2dbd9d2e DVID 01-d3295c18" at the bottom line)

I have a very simple script to work around it. My router is 192.168.230.1, so cron wakes up the script once every minute to check connectivity. If it fails, it will unload and then reload the wlan module. This is the script: #!/bin/bash DST=192.168.230.1 if ! ping -c 5 -t 5 $DST > /dev/null then /usr/bin/logger "Restarting wlan0 network driver" /usr/sbin/rmmod brcmfmac && /usr/sbin/modprobe brcmfmac roamoff=1 fi

I have placed it under /usr/local/sbin/check_connection.sh (and gave it execution permissions), and edited root's cron (sudo bash ; crontab -e) to have this line: */1 * * * * /usr/local/sbin/check_connection.sh

So far, I can hardly feel the disconnections there, although I have log entries. I hope it helps someone. In the meanwhile, I am waiting for a newer firmware. Thanks

MartinNPN commented 3 years ago

Hello,

is there any fix for this bug ?

I think the Unify APs are triggering this bug.

@ezaton for the Zero it should be good enough, but for the PI4 or other models with wired ethernet it would be good to add -I wlan0. For me it was with the PI4 even important to restart wpasupplicant.

gusman80 commented 3 years ago

I think the Unify APs are triggering this bug.

Same problem here since moving to multiple unifis too :(

... but for the PI4 or other models with wired ethernet it would be good to add -I wlan0. For me it was with the PI4 even important to restart wpasupplicant.

where would you add : "-I wlan0"?

ezaton commented 3 years ago

I have Aruba, and this still happens. Can be protocol-related but not wireless hardware specific.

Etzion

On Thu, May 6, 2021, 10:29 AM gusman80 @.***> wrote:

I think the Unify APs are triggering this bug.

Same problem here since moving to multiple unifis too :(

... but for the PI4 or other models with wired ethernet it would be good to add -I wlan0. For me it was with the PI4 even important to restart wpasupplicant.

where would you add : "-I wlan0"?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/raspberrypi/linux/issues/3849#issuecomment-833297818, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABUMMVSH4WLCXHMOW7E2IMLTMJANZANCNFSM4RIKBSZQ .

MartinNPN commented 3 years ago

@gusman80 you would add it like this: if ! ping -c 5 -t 5 $DST -I wlan0 > /dev/null

manuelkasiske commented 3 years ago

I also have this problem with rpi3 and rpi4. To workaround this, I am using the hardware watchdog to start the script sent by @ezaton, in case that the rpi cannot access my router anymore. This happens usually up to four times per day.

pinkforest commented 2 years ago

My power mgmt related issue https://github.com/RPi-Distro/firmware-nonfree/issues/18 I've bumped non-free fw CYW43455 sdio from Cypress for BCM4345/6 and some here have it as well I've PRed https://github.com/RPi-Distro/firmware-nonfree/pull/19

@manuelkasiske @gusman80 @ezaton

I see @randomMesh issue #4495 has BCM2835 as well and has had crashes - potentially a duplicate along with #4497

Please update and upgrade to latest driver as the above issue seems to have closed for crashing.

P.s. Your distro - Ubuntu - whatever it is (?) might not be following the latest ... or you might have pinned old kernel pkg (see uname -av)

chip support & firmware can be a bit complicated topic - your distro could pick anything for both drivers/firmware for drivers the mainline brcm80211 tracks here https://wireless.wiki.kernel.org/en/users/drivers/brcm80211

It would help a lot that people who comment on this issue add their dmesg at least showing something like the two below lines:

brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac43455-sdio for chip BCM4345/6 brcmfmac: brcmf_c_preinit_dcmds: Firmware: BCM4345/6 wl0: Apr 15 2021 03:03:20 version 7.45.234 (4ca95bb CY) FWID 01-996384e2

manuelkasiske commented 2 years ago

@pinkforest Thanks for your hints. I will try to update the driver. Currently I am using the version: 7.45.229 with kernel:

linux k3s 5.10.63-v7l+ #1459 SMP Wed Oct 6 16:41:57 BST 2021 armv7l GNU/Linux

on Raspbian GNU/Linux 10 (buster)

[So Nov 14 09:53:54 2021] ieee80211 phy16: brcmf_fil_cmd_data: bus is down. we have nothing to do.
[So Nov 14 09:53:54 2021] ieee80211 phy16: brcmf_cfg80211_get_tx_power: error (-5)
[So Nov 14 09:53:54 2021] ieee80211 phy16: brcmf_netdev_start_xmit: xmit rejected state=0
[So Nov 14 09:53:55 2021] brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac43455-sdio for chip BCM4345/6
[So Nov 14 09:53:55 2021] brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac43455-sdio for chip BCM4345/6
[So Nov 14 09:53:55 2021] brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac43455-sdio for chip BCM4345/6
[So Nov 14 09:53:55 2021] brcmfmac: brcmf_c_preinit_dcmds: Firmware: BCM4345/6 wl0: Jan  4 2021 19:56:29 version 7.45.229 (617f1f5 CY) FWID 01-2dbd9d2e
[So Nov 14 09:53:55 2021] brcmfmac: brcmf_cfg80211_set_power_mgmt: power save enabled
manuelkasiske commented 2 years ago

I updated the os to the latest bullseye and also updated the driver to the sid version 7.45.234, but it does not help. The driver still crashes.

[Wed Nov 17 22:20:55 2021] ieee80211 phy1: brcmf_fil_cmd_data: bus is down. we have nothing to do.
[Wed Nov 17 22:20:55 2021] ieee80211 phy1: brcmf_cfg80211_get_tx_power: error (-5)
[Wed Nov 17 22:20:56 2021] ieee80211 phy1: brcmf_netdev_start_xmit: xmit rejected state=0
[Wed Nov 17 22:20:56 2021] brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac43455-sdio for chip BCM4345/6
[Wed Nov 17 22:20:57 2021] brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac43455-sdio for chip BCM4345/6
[Wed Nov 17 22:20:57 2021] brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac43455-sdio for chip BCM4345/6
[Wed Nov 17 22:20:57 2021] brcmfmac: brcmf_c_preinit_dcmds: Firmware: BCM4345/6 wl0: Apr 15 2021 03:03:20 version 7.45.234 (4ca95bb CY) FWID 01-996384e2
[Wed Nov 17 22:20:57 2021] brcmfmac: brcmf_cfg80211_set_power_mgmt: power save enabled
pelwell commented 2 years ago

To me, "bus is down" indicates a problem with the SDIO bus, i.e. a hardware issue. It could be a general power supply problem, but that is more likely to appear while booting or under heavy load. The other possibility is that there is a marginal hardware fault that only manifests when the board gets warm.

@manuelkasiske Have you tried putting brcmfmac.debug=0x100000 in cmdline.txt to copy messages from the WLAN firmware into the kernel log?

manuelkasiske commented 2 years ago

Thank you @pelwell. I didn't have this debug flag set. Let's see what it shows. I am also looking for a new power supply.

ezaton commented 2 years ago

Hi. Although my workaround kept the system functional (see here: https://run.tournament.org.il/raspberrypi-zero-loses-connectivity/ ) since the most recent firmware/kernel update, I have had no log entries describing any reconnection process.

Thanks! Ez

On Mon, 22 Nov 2021 at 10:24, Manuel Kasiske @.***> wrote:

Thank you @pelwell https://github.com/pelwell. I didn't have this debug flag set. Let's see what it shows. I am also looking for a new power supply.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/raspberrypi/linux/issues/3849#issuecomment-975249497, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABUMMVTULXNZM54FFUBTWZLUNH45FANCNFSM4RIKBSZQ . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

--

Etzion Bar-Noy Infrastructure Architect

Tel: 054-6511123

Your systems can do better.

manuelkasiske commented 2 years ago

I can also agree, that it's now working with the latest driver and (in my case) with a new power supply. Thanks to all contributers - especially @pinkforest, @pelwell and @ezaton

pelwell commented 2 years ago

This is another chance to mention that 7.45.241 is available in the firmware-nonfree repo - the cypress directory contains the real files, and the brcm directory has symlinks to them.

ibash commented 2 years ago

For noobs like me!

Ref: https://forums.raspberrypi.com/viewtopic.php?t=314208

# check your current firmware version
dmesg | grep -i firmware

# update to the latest version
cd ~
git clone https://github.com/RPi-Distro/firmware-nonfree.git
sudo cp -R ~/firmware-nonfree/debian/config/brcm80211/cypress /lib/firmware/
sudo mv /lib/firmware/brcm  /lib/firmware/brcm-backup
sudo cp -R ~/firmware-nonfree/debian/config/brcm80211/brcm /lib/firmware/

# confirm that symlinks look good...
ls -alt /lib/firmware/brcm/

# reboot
sudo shutdown -r now

# after reboot, check the firmware version to confirm it's updated
dmesg | grep -i firmware
manuelkasiske commented 2 years ago

@ibash if you go this way, you should also mark the package installed by apt as "on hold"

sudo apt-mark hold firmware-brcm80211

Otherwise a minor upgrade could overwrite the driver being installed manually.

matthewlloyd commented 2 years ago

I have followed the instructions above (thank you!) to install the latest version of the firmware, but am still experiencing random disconnects on my Raspberry Pi 4B. Here are the relevant snippets from dmesg and syslog. I am not running a mesh network, and my router is an Archer C8.

[    7.090671] brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac43455-sdio for chip BCM4345/6
[    7.355364] usbcore: registered new interface driver brcmfmac
[    7.358293] brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac43455-sdio for chip BCM4345/6
[    7.358419] brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac43455-sdio for chip BCM4345/6
[    7.363859] brcmfmac: brcmf_c_preinit_dcmds: Firmware: BCM4345/6 wl0: Nov  1 2021 00:37:25 version 7.45.241 (1a2f2fa CY) FWID 01-703fd60
[   15.239591] 8021q: 802.1Q VLAN Support v1.8
[   15.863442] brcmfmac: brcmf_cfg80211_set_power_mgmt: power save disabled
Dec 11 22:01:43 octopi kernel: [116454.785224] mmc1: Timeout waiting for hardware interrupt.
Dec 11 22:01:43 octopi kernel: [116454.785281] brcmfmac: mmc_submit_one: CMD53 sg block write failed -110
Dec 11 22:01:43 octopi kernel: [116454.785296] brcmfmac: brcmf_sdio_txfail: sdio error, abort command and terminate frame
Dec 11 22:01:46 octopi kernel: [116457.345312] brcmfmac: brcmf_sdio_bus_rxctl: resumed on timeout
Dec 11 22:01:53 octopi kernel: [116465.025361] mmc1: Timeout waiting for hardware interrupt.
Dec 11 22:01:53 octopi kernel: [116465.025483] brcmfmac: mmc_submit_one: CMD53 sg block write failed -110
Dec 11 22:01:53 octopi kernel: [116465.025499] brcmfmac: brcmf_sdio_txfail: sdio error, abort command and terminate frame
Dec 11 22:01:53 octopi kernel: [116465.025891] brcmfmac: brcmf_sdio_readshared: invalid sdpcm_shared address 0xFFB70048
Dec 11 22:01:53 octopi kernel: [116465.025906] brcmfmac: brcmf_sdio_readshared: unable to obtain sdpcm_shared info: rv=-22 (addr=0xffb70048)
Dec 11 22:02:04 octopi kernel: [116475.265487] mmc1: Timeout waiting for hardware interrupt.
Dec 11 22:02:04 octopi kernel: [116475.265605] brcmfmac: mmc_submit_one: CMD53 sg block write failed -110
Dec 11 22:02:04 octopi kernel: [116475.265623] brcmfmac: brcmf_sdio_txfail: sdio error, abort command and terminate frame
Dec 11 22:02:04 octopi kernel: [116475.265885] ieee80211 phy0: brcmf_proto_bcdc_query_dcmd: brcmf_proto_bcdc_msg failed w/status -110
Dec 11 22:02:04 octopi kernel: [116475.265905] ieee80211 phy0: brcmf_cfg80211_get_station: GET STA INFO failed, -110
Dec 11 22:02:06 octopi kernel: [116477.985572] ieee80211 phy0: brcmf_proto_bcdc_query_dcmd: brcmf_proto_bcdc_msg failed w/status -110
Dec 11 22:02:09 octopi kernel: [116480.545622] ieee80211 phy0: brcmf_proto_bcdc_query_dcmd: brcmf_proto_bcdc_msg failed w/status -110
Dec 11 22:02:09 octopi kernel: [116480.545643] ieee80211 phy0: brcmf_cfg80211_get_station: GET STA INFO failed, -110
ibash commented 2 years ago

@matthewlloyd

Anecdotal evidence, but I think the following helped...

I've made three changes since updating firmware

  1. Added a checkwifi script as per this guide Gotcha instead of /sbin/ifdown 'wlan0' and /sbin/ifup --force 'wlan0' use ip link set wlan0 down/ip link set wlan0 up as per this post.
  2. Disabled "smart connect" on my router
  3. Removed DHCP address reservation

Before implementing the above, I found that my pi would still lose connection periodically, and when it did, if I rebooted my router I could regain access.

Since implementing the above I haven't had to do that. I have a TPLink Archer C4000, so I wonder if this is a TPLink problem...

ezaton commented 2 years ago

Try this before: https://run.tournament.org.il/raspberrypi-zero-loses-connectivity/

It will not reboot your RPI, and save you lots of time and frustration.

Ez

On Sun, 12 Dec 2021 at 08:41, Islam Sharabash @.***> wrote:

@matthewlloyd https://github.com/matthewlloyd

Anecdotal evidence, but I think the following helped...

I've made three changes since updating firmware

  1. Added a checkwifi script as per this guide https://weworkweplay.com/play/rebooting-the-raspberry-pi-when-it-loses-wireless-connection-wifi/ Gotcha instead of /sbin/ifdown 'wlan0' and /sbin/ifup --force 'wlan0' use ip link set wlan0 down/ip link set wlan0 up as per this post https://forums.raspberrypi.com/viewtopic.php?p=1315366#p1315366.
  2. Disabled "smart connect" on my router
  3. Removed DHCP address reservation

Before implementing the above, I found that my pi would still lose connection periodically, and when it did, if I rebooted my router I could regain access.

Since implementing the above I haven't had to do that. I have a TPLink Archer C4000, so I wonder if this is a TPLink problem...

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/raspberrypi/linux/issues/3849#issuecomment-991843689, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABUMMVQXYEDFVPFVC5TSMK3UQQ7X3ANCNFSM4RIKBSZQ . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

--

Etzion Bar-Noy Infrastructure Architect

Tel: 054-6511123

Your systems can do better.

djohnanderson commented 2 years ago

I have several Raspberry Pi 4s that used to have the random crashes and now never fail.

Here’s the firmware I have:

pi@raspberrypi4:~ $ dmesg | grep -i firmware [ 0.090866] raspberrypi-firmware soc:firmware: Attached to firmware from 2021-10-29T10:47:33, variant start [ 0.100875] raspberrypi-firmware soc:firmware: Firmware hash is b8a114e5a9877e91ca8f26d1a5ce904b2ad3cf13 [ 5.314845] vc4-drm gpu: bound fe600000.firmwarekms (ops vc4_fkms_ops [vc4]) [ 5.938694] brcmfmac: brcmf_c_preinit_dcmds: Firmware: BCM4345/6 wl0: Jan 4 2021 19:56:29 version 7.45.229 (617f1f5 CY) FWID 01-2dbd9d2e

wauwau0977 commented 2 years ago

Hi I use the Raspberry Pi Zero 2 W and came across the same issue: WIFI drops, system actually still works normally, even on the wired ethernet connection via USB dongle the connection is fine, yet, WIFI connection completely out of order. No connection in- nor out.

Tried the several solutions most also proposed here:

  1. power management.. did not work... yet, was easy to try...
  2. Switch off Bluetooth, and HDMI (was not mentioned here but in other threads...). As I don't need that, I tried.
  3. the checker-script, also as proposed by @ezaton . To note, on my installation the modprobe is located in /sbin/modprobe (not /usr/sbin/modprobe). Yet, it still did not help. The script was invoked, yet, did not recover the wifi.
  4. the git repo with the new firmware. Followed the nice instructions by @ibash . Zero 2 seems to use that driver BCM43430/2 in version "2021-12-01T15:07:06". I have little clue about these firmware files in the git repo, yet, when I do a text pattern search, I find my version String in the file "brcmfmac43436-sdio.bin". Hence I guess these files have not been updated.

So, for me after some frustration nothing really worked. It's sad, as my other Raspberry Pi Zero (v1) works stable for 700 days now.

Thanks still for all the tips here in the that thread. Very nice of you guys. I keep reading and hope for some other solutions :smile:

Happy new year, Patrick

foorschtbar commented 2 years ago

I'am not sure if it works on RPi4/ZW2, but on my RPi3B+ i had the same problems and fixed it with:

Full article and FW download here: https://blog.spaps.de/sporadic-freezing-loss-of-wifi-connection-on-a-raspberry-pi-3b/

matthewlloyd commented 2 years ago

I'am not sure if it works on RPi4/ZW2, but on my RPi3B+ i had the same problems and fixed it with:

Thanks for the information and the article. I tried this on my Pi 4B and it didn't work - the firmware didn't seem to load:

pi@octopi:~ $ dmesg | grep brcmfmac
[    6.626530] brcmfmac: F1 signature read @0x18000000=0x15264345
[    6.670549] brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac43455-sdio for chip BCM4345/6
[    6.672073] usbcore: registered new interface driver brcmfmac
[    7.854845] brcmfmac: brcmf_sdio_htclk: HT Avail timeout (1000000): clkctl 0x50
[    8.870010] brcmfmac: brcmf_sdio_htclk: HT Avail timeout (1000000): clkctl 0x50

I'm not sure whether this is due to an incompatibility between the old driver version and the Pi 4B, or due to symlinks needed in /lib/firmware/brcm which weren't captured in the tar.

renaldofreire commented 2 years ago

Try this before: https://run.tournament.org.il/raspberrypi-zero-loses-connectivity/ It will not reboot your RPI, and save you lots of time and frustration. Ez On Sun, 12 Dec 2021 at 08:41, Islam Sharabash @.***> wrote: @matthewlloyd https://github.com/matthewlloyd Anecdotal evidence, but I think the following helped... I've made three changes since updating firmware 1. Added a checkwifi script as per this guide https://weworkweplay.com/play/rebooting-the-raspberry-pi-when-it-loses-wireless-connection-wifi/ Gotcha instead of /sbin/ifdown 'wlan0' and /sbin/ifup --force 'wlan0' use ip link set wlan0 down/ip link set wlan0 up as per this post https://forums.raspberrypi.com/viewtopic.php?p=1315366#p1315366. 2. Disabled "smart connect" on my router 3. Removed DHCP address reservation Before implementing the above, I found that my pi would still lose connection periodically, and when it did, if I rebooted my router I could regain access. Since implementing the above I haven't had to do that. I have a TPLink Archer C4000, so I wonder if this is a TPLink problem... — You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub <#3849 (comment)>, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABUMMVQXYEDFVPFVC5TSMK3UQQ7X3ANCNFSM4RIKBSZQ . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub. -- Etzion Bar-Noy Infrastructure Architect Tel: 054-6511123 Your systems can do better.

Hey @ezaton, thank you for sharing this solution.

I have a pi zero w with the same problem. After enabling your script, do you think it will be possible to enable DHCP mode? Or the disconnections might get in the way?