OpenWrt/LEDE Project

  • Status Unconfirmed
  • Percent Complete
    0%
  • Task Type Bug Report
  • Category Kernel
  • Assigned To No-one
  • Operating System All
  • Severity Medium
  • Priority Very Low
  • Reported Version openwrt-21.02
  • Due in Version Undecided
  • Due Date Undecided
  • Private
Attached to Project: OpenWrt/LEDE Project
Opened by anonymous - 27.06.2021

FS#3906 - No wifi on ZyXEL P2812HNU-F1

 
On the ZyXEL P2812HNU-F1, running 21.02-rc3 wifi does not work. The module (rt2800pci) is available and loaded, but ‘iw list’ doesn’t show the interface, and there is no trace in kernel log.

On 19.07.7 the kernel log shows:

[   10.744853] NET: Registered protocol family 24
[   10.775006] xt_time: kernel timezone is -0000
[   10.914762] PCI: Enabling device 0000:00:0e.0 (0000 -> 0002)
[   10.919306] ieee80211 phy0: rt2x00lib_request_eeprom_file: Info - Loading EEPROM data from 'RT3062.eeprom'.
[   10.919338] urngd: v1.0.2 started.
[   10.930582] ieee80211 phy0: rt2x00_set_rt: Info - RT chipset 3572, rev 0223 detected
[   10.940005] ieee80211 phy0: rt2x00_set_rf: Info - RF chipset 0008 detected
[   10.947986] ieee80211 phy0: Selected rate control algorithm 'minstrel_ht'
[   11.071002] kmodloader: done loading kernel modules from /etc/modules.d/*

but on 21.02-rc3 this is gone:

[   11.386298] NET: Registered protocol family 24
[   11.408149] xt_time: kernel timezone is -0000
[   11.717990] kmodloader: done loading kernel modules from /etc/modules.d/*

The module needs an eeprom file ‘RT3062,eeprom’, which I provided. When I omit that file in 19.07.7 dmesg shows:

[   10.791631] NET: Registered protocol family 24
[   10.824391] xt_time: kernel timezone is -0000
[   10.966880] PCI: Enabling device 0000:00:0e.0 (0000 -> 0002)
[   10.971522] ieee80211 phy0: rt2x00lib_request_eeprom_file: Info - Loading EEPROM data from 'RT3062.eeprom'.
[   10.981089] rt2800pci 0000:00:0e.0: Direct firmware load for RT3062.eeprom failed with error -2
[   10.989591] rt2800pci 0000:00:0e.0: Falling back to user helper
[   11.020675] urngd: v1.0.2 started.
[   11.398015] random: crng init done
[   11.400112] random: 6 urandom warning(s) missed due to ratelimiting
[   11.603684] firmware RT3062.eeprom: firmware_loading_store: map pages failed
[   11.609669] ieee80211 phy0: rt2x00lib_request_eeprom_file: Error - Failed to request EEPROM.
[   11.617946] rt2800pci: probe of 0000:00:0e.0 failed with error -11
[   11.639789] kmodloader: done loading kernel modules from /etc/modules.d/*


Walter Sonius commented on 05.07.2021 21:39

Did you flash/install 21.01-rc3 (from which 18.x 19.x version) or did you tftp/serial boot it from the bootloader?

Since I wasn't able to get past 19.07.7 (used mafketel 19.0.7x image which allows greater kernel size 2MB>3MB) than upgraded to stock 19.07.7.

## Booting kernel from Legacy Image at 80800000 ...

 Image Name:   MIPS OpenWrt Linux-5.4.105 
 Created:      2021-03-19  23:37:51 UTC 
 Image Type:   MIPS Linux Kernel Image (lzma compressed) 
 Data Size:    2611134 Bytes = 2.5 MiB 
 Load Address: 80002000 
 Entry Point:  80002000 
 Verifying Checksum ... Bad Data CRC 

ERROR: can't get kernel image!

Serial booted, since flashing early 21.x bricked the boot:
bootm 0x81000000
## Booting kernel from Legacy Image at 81000000 ...

 Image Name:   MIPS OpenWrt Linux-5.4.124
 Created:      2021-06-13  22:02:19 UTC
 Image Type:   MIPS Linux Kernel Image (lzma compressed)
 Data Size:    5608365 Bytes = 5.3 MiB
 Load Address: 80002000
 Entry Point:  80002000
 Verifying Checksum ... OK
 Uncompressing Kernel Image ... LZMA: uncompress or overwrite error 7 - must RESET b
Walter Sonius commented on 05.07.2021 21:59

Nevermind, 21.01-rc3 is booting now from nand flash upgraded from 19.07.7 by altering kernel size with "setenv" in bootloader.

#changed 0x200000 to 0x300000
setenv nboot 'nand read 0x80800000 0x60000 0x300000; bootm 0x80800000'

About the wifi, in my case there is no wifi or eeprom messages at all eventhough RTxxxx.bin is in /lib/firmware

EDIT: found this issue after fixing the kernel size
https://bugs.openwrt.org/index.php?do=details&task_id=3890

anonymous commented on 06.07.2021 12:09

I tried snapshot, which had the same problem. Yet I found a work-around to get wifi up:
echo 1 > /sys/bus/pci/rescan

root@OpenWrt:/# echo 1 > /sys/bus/pci/rescan 
[   81.537813] pci 0000:00:0e.0: [1814:3062] type 00 class 0x028000
[   81.542528] pci 0000:00:0e.0: reg 0x10: [mem 0xffff0000-0xffffffff]
[   81.551932] pci 0000:00:0e.0: BAR 0: assigned [mem 0x18000000-0x1800ffff]
[   81.557627] rt2800pci 0000:00:0e.0: enabling device (0000 -> 0002)
[   81.563800] ieee80211 phy0: rt2x00lib_request_eeprom_file: Info - Loading EEPROM data from 'RT3062.eeprom'.
[   81.574132] ieee80211 phy0: rt2x00_set_rt: Info - RT chipset 3572, rev 0223 detected
[   81.581156] ieee80211 phy0: rt2x00_set_rf: Info - RF chipset 0008 detected
root@OpenWrt:/# 

Adding it to /etc/rc.local seems to be early enough to get wifi configured on boot.

Walter Sonius commented on 07.07.2021 11:33

Thanks for the pci rescan tip. Wifi interface is indeed available after that, however only from cli...

EDIT:
Nevermind, doing a restart with rc.local pci rescan it does show up in the webinterface...

BTW offtopic

Do you have any badblocks on your nand? Mine does have 3 and this router always crashes within a day as in switch keeps working but system locks up.

anonymous commented on 07.07.2021 20:24

Not that I'm aware of. Any idea why it crashes? The only partition which is active after boot is overlay, and UBI should take care of bad blocks, AFAIK.

Walter Sonius commented on 10.07.2021 15:16

For now it has been on for 3 days using wpa3 wifi but without DSL connected and dsl_service disabled, we'll see in a week. The history of this device is also unknown second hand, but if its still working at the end of next week I will flash another Zyxel device from a trusted used source with your modified uboot from OEM to openwrt!

No idea what might cause instability but a similar lantiq device "KPN Experia Box v8(arcadyan vgv7519)" was also instable before somwhere in 2017 and since than rock solid including openvpn and tvheadend.

I took the tip from the Arcadyan page to disable the "dsl_service" when line is disconnected maybe that solved instability...

anonymous commented on 08.08.2021 15:40

This problem still occurs in 21.02.0-rc4

Doruk Cetinkaya commented on 09.09.2021 18:00

I confirm the issue is exist. I searched for it in the internet and found here.
So I confirm that your command echo 1 > /sys/bus/pci/rescan is fixing the issue.
I added this line into the system>startup>local startup I didn't restarted the modem yet but I think it must be solved now.
Anyway there is for sure a bug.
My tested firmware version is
Firmware Version OpenWrt 21.02.0 r16279-5cc0535800 / LuCI openwrt-21.02 branch git-21.231.26241-422c175

OK with reboot it loads again but wireless is not working, I can scan and see the interferance APs but I can't create a configuration and getting read error.

anonymous commented on 14.09.2021 10:46

Just upgraded to 21.02.0, and the problem is still there.

@Doruk Cetinkaya: A read error? Read from what?

Doruk Cetinkaya commented on 25.09.2021 16:36

read error was related to the configuration that I made earlier for version 19. After I updgraded to version21 the config was there so there I had the issue.
But it's not releated to that. Wireless is not working and I couldn't make it work.

I am trying to restart the radio0 but I couldn't.

Generic 802.11bg
Device is not active

This does not change. So it must be something related to the RTxxxx.bin is in /lib/firmware

anonymous commented on 26.09.2021 11:35

You are aware you also need the RT3062.eeprom file? It's not included in the factory upgrade.

anonymous commented on 27.11.2021 17:51

The issue is still on 21.02.1

Loading...

Available keyboard shortcuts

Tasklist

Task Details

Task Editing