openwrt / openwrt/mt76

mt7615e - wifi wont start

Open
#904 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C
Stars
888
Forks
436
PR merge metrics
No merged PRs in 30d

Description

Name the tree/revision/version

Tried latest stable: 23.05.4
Now on: 086d28e7fc34d0bd6abf372182db8a2d201338e4e0ef8335e5cbf161b22ef82f Sun Aug 11 05:01:44 2024

Name the affected device

TOTOLINK A7000R

What does it do that it should not do / what does it not do that it should do

wifi wont start at all. Previously as described in bug [1] it had some wifi issues after soft reboot.
[1] https://github.com/openwrt/mt76/issues/316

What you have already done to workaround/fix the problem

Tried hard reboot, tried soft reboot, tried rmmod mt7615e.

Any additional info you think is important

Logs from hard reboot:

[   11.590274] pci 0000:00:00.0: enabling device (0000 -> 0003)
[   11.601646] mt7615e 0000:01:00.0: Unable to change power state from D3cold to D0, device inaccessible
[   11.620083] mt7615e 0000:01:00.0: disabling ASPM L0s L1
[   11.636753] ------------[ cut here ]------------
[   11.645962] WARNING: CPU: 0 PID: 724 at target-mipsel_24kc_musl/linux-ramips_mt7621/mt76-2024.07.13~3b47d9df/mt7615/eeprom.c:31 mt7615_eeprom_init+0x4e4/0x500 [mt7615_common]
[   11.676988] Modules linked in: mt7615e(O+) mt7615_common(O) mt76_connac_lib(O) mt76(O) mac80211(O) cfg80211(O) slhc nfnetlink nf_reject_ipv6 nf_reject_ipv4 nf_log_syslog nf_defrag_ipv6 nf_defrag_ipv4 libcrc32c hwmon crc_ccitt compat(O) sha512_generic sha256_generic libsha256 sha1_generic seqiv sha3_generic drbg md5 crypto_hw_eip93 hmac geniv rng des_generic libdes cmac authencesn authenc leds_gpio gpio_button_hotplug(O) crc32c_generic
[   11.753848] CPU: 0 PID: 724 Comm: kmodloader Tainted: G           O       6.6.44 #0
[   11.769093] Stack : 809ca440 80088a28 000000e7 00000004 00000000 00000000 83d93b6c 80b90000
[   11.785754]         80a50000 808ce648 00000000 00000000 00000000 00000001 83d93b18 81845780
[   11.802409]         00000000 00000000 808ce648 83d93a50 ffffefff 00000000 ffffffea 00000000
[   11.819066]         83d93a5c 000000e8 809d20f0 ffffffff 808ce648 00000001 00000000 83f18394
[   11.835722]         00000009 00000000 809ca440 000f0040 00000018 8048bdfc 00000000 80b90000
[   11.852377]         ...
[   11.857242] Call Trace:
[   11.862094] [<800079f4>] show_stack+0x28/0xf0
[   11.870792] [<807cb2b0>] dump_stack_lvl+0x60/0x80
[   11.880172] [<8002d930>] __warn+0xb0/0xe4
[   11.888173] [<8002da8c>] warn_slowpath_fmt+0x128/0x188
[   11.898406] [<83f18394>] mt7615_eeprom_init+0x4e4/0x500 [mt7615_common]
[   11.911600] [<83efc288>] mt7615_register_device+0xb0/0x230 [mt7615e]
[   11.924276] [<83efe100>] mt7615_mmio_probe+0x184/0x244 [mt7615e]
[   11.936250] [<80441170>] pci_device_probe+0x90/0x114
[   11.936624] urngd: v1.0.2 started.
[   11.946156] [<804a072c>] really_probe+0xd4/0x368
[   11.946192] [<804a0bf4>] driver_probe_device+0x4c/0x154
[   11.946207] [<804a0f08>] __driver_attach+0xb0/0x1c0
[   11.982210] [<8049e318>] bus_for_each_dev+0x70/0xb8
[   11.991925] [<8049f8ac>] bus_add_driver+0xf8/0x224
[   12.001461] [<804a1bf8>] driver_register+0x88/0x154
[   12.011177] [<80001644>] do_one_initcall+0x50/0x2e0
[   12.020884] [<800aba24>] do_init_module+0x5c/0x214
[   12.030433] [<800adc50>] sys_init_module+0x1b0/0x1fc
[   12.040316] [<8001356c>] syscall_common+0x34/0x58
[   12.049691]
[   12.052693] ---[ end trace 0000000000000000 ]---
[   12.065158] mt7615e 0000:01:00.0: registering led 'mt76-phy0'
[   12.078350] ieee80211 phy0: Selected rate control algorithm 'minstrel_ht'
[   12.081147] pci 0000:00:01.0: enabling device (0000 -> 0003)
[   12.084874] mt7615e 0000:01:00.0: Firmware is not ready for download
[   12.092558] mt7615e 0000:02:00.0: Unable to change power state from D3cold to D0, device inaccessible
[   12.123739] mt7615e 0000:02:00.0: disabling ASPM L0s L1
[   12.147379] mt7615e 0000:02:00.0: registering led 'mt76-phy1'

Logs after
rmmod mt7615e ; rmmod mt7615_common ; rmmod mt76_connac_lib ; rmmod mt76 ; modprobe mt7615e

[ 1613.776315] mt7615e 0000:01:00.0: Unable to change power state from D3cold to D0, device inaccessible
[ 1613.794871] mt7615e 0000:01:00.0: disabling ASPM L0s L1
[ 1613.812094] ------------[ cut here ]------------
[ 1613.821382] WARNING: CPU: 3 PID: 3198 at target-mipsel_24kc_musl/linux-ramips_mt7621/mt76-2024.07.13~3b47d9df/mt7615/eeprom.c:31 mt7615_eeprom_init+0x4e4/0x500 [mt7615_common]
[ 1613.852629] Modules linked in: mt7615e(O+) mt7615_common(O) mt76_connac_lib(O) mt76(O) jitterentropy_rng pppoe ppp_async nft_fib_inet nf_flow_table_inet pppox ppp_generic nft_reject_ipv6 nft_reject_ipv4 nft_reject_inet nft_reject nft_redir nft_quota nft_numgen nft_nat nft_masq nft_log nft_limit nft_hash nft_flow_offload nft_fib_ipv6 nft_fib_ipv4 nft_fib nft_ct nft_chain_nat nf_tables nf_nat nf_flow_table nf_conntrack mac80211(O) cfg80211(O) slhc nfnetlink nf_reject_ipv6 nf_reject_ipv4 nf_log_syslog nf_defrag_ipv6 nf_defrag_ipv4 libcrc32c hwmon crc_ccitt compat(O) sha512_generic sha256_generic libsha256 sha1_generic seqiv sha3_generic drbg md5 crypto_hw_eip93 hmac geniv rng des_generic libdes cmac authencesn authenc leds_gpio gpio_button_hotplug(O) crc32c_generic [last unloaded: mt76(O)]
[ 1613.991961] CPU: 3 PID: 3198 Comm: modprobe Tainted: G        W  O       6.6.44 #0
[ 1614.007050] Stack : 809ca440 80088a40 00000148 00000004 00000000 00000000 8472fb6c 80b90000
[ 1614.023711]         80a50000 808ce648 00000000 00000000 00000000 00000001 8472fb18 81888640
[ 1614.040364]         00000000 00000000 808ce648 8472fa50 ffffefff 00000000 ffffffea 00000000
[ 1614.057019]         8472fa5c 00000149 809d20f0 ffffffff 808ce648 00000001 00000000 843b8394
[ 1614.073679]         00000009 00000000 809ca440 000f0040 00000018 8048bdfc 0000000c 80b9000c
[ 1614.090330]         ...
[ 1614.095192] Call Trace:
[ 1614.100045] [<800079f4>] show_stack+0x28/0xf0
[ 1614.108741] [<807cb2b0>] dump_stack_lvl+0x60/0x80
[ 1614.118118] [<8002d930>] __warn+0xb0/0xe4
[ 1614.126113] [<8002da8c>] warn_slowpath_fmt+0x128/0x188
[ 1614.136342] [<843b8394>] mt7615_eeprom_init+0x4e4/0x500 [mt7615_common]
[ 1614.149554] [<83e48288>] mt7615_register_device+0xb0/0x230 [mt7615e]
[ 1614.162248] [<83e4a100>] mt7615_mmio_probe+0x184/0x244 [mt7615e]
[ 1614.174221] [<80441170>] pci_device_probe+0x90/0x114
[ 1614.184122] [<804a072c>] really_probe+0xd4/0x368
[ 1614.193323] [<804a0bf4>] driver_probe_device+0x4c/0x154
[ 1614.203722] [<804a0f08>] __driver_attach+0xb0/0x1c0
[ 1614.213431] [<8049e318>] bus_for_each_dev+0x70/0xb8
[ 1614.223134] [<8049f8ac>] bus_add_driver+0xf8/0x224
[ 1614.232667] [<804a1bf8>] driver_register+0x88/0x154
[ 1614.242375] [<80001644>] do_one_initcall+0x50/0x2e0
[ 1614.252080] [<800aba24>] do_init_module+0x5c/0x214
[ 1614.261628] [<800adc50>] sys_init_module+0x1b0/0x1fc
[ 1614.271506] [<8001356c>] syscall_common+0x34/0x58
[ 1614.280872]
[ 1614.283963] ---[ end trace 0000000000000000 ]---
[ 1614.297494] mt7615e 0000:01:00.0: registering led 'mt76-phy4'
[ 1614.310708] ieee80211 phy4: Selected rate control algorithm 'minstrel_ht'
[ 1614.326813] mt7615e 0000:01:00.0: Firmware is not ready for download
[ 1614.327089] mt7615e 0000:02:00.0: Unable to change power state from D3cold to D0, device inaccessible
[ 1614.358250] mt7615e 0000:02:00.0: disabling ASPM L0s L1
[ 1614.379658] mt7615e 0000:02:00.0: registering led 'mt76-phy5'
[ 1614.392912] ieee80211 phy5: Selected rate control algorithm 'minstrel_ht'
[ 1614.406667] ieee80211 phy5: copying sband (band 1) due to VHT EXT NSS BW flag
[ 1614.423537] mt7615e 0000:02:00.0: Firmware is not ready for download
opkg install kmod-mt76-core
Package kmod-mt76-core (6.6.44.2024.07.13~3b47d9df-r1) installed in root is up to date.

I think this may be related to mentioned bug, but now it's a different issue.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the reported mt7615/eeprom.c warning at line 31 and the mt7615_eeprom_init, mt7615_register_device, and mt7615_mmio_probe call path. Reproduce on the TOTOLINK A7000R using the listed 23.05.4 revision and compare the hard-reboot and module-reload logs. Done means the mt7615e devices initialize without the reported power-state, EEPROM, or firmware-download failures and Wi-Fi starts.

Written by the indexing model from the issue text.

Assessment

Tech stack
c
Domain
embedded-iot, operating-systems
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.