Rt2x00usb issue with Fedora 34

With Fedora 34 I am unable to use an external usb wifi card.
In specific from dmesg I see:

[   14.472917] Generic FE-GE Realtek PHY r8169-0-300:00: attached PHY driver (mii_bus:phy_addr=r8169-0-300:00, irq=MAC)
[   14.645995] r8169 0000:03:00.0 enp3s0: Link is Down
[   14.649764] ieee80211 phy1: rt2x00lib_request_firmware: Info - Loading firmware file 'rt2870.bin'
[   14.651158] ieee80211 phy1: rt2x00lib_request_firmware: Info - Firmware detected - version: 0.36
[   14.673242] ieee80211 phy1: rt2x00usb_vendor_request: Error - Vendor Request 0x06 failed for offset 0x0404 with error -71
[   14.993892] ieee80211 phy1: rt2800_wait_csr_ready: Error - Unstable hardware
[   14.993896] ieee80211 phy1: rt2800usb_set_device_state: Error - Device failed to enter state 4 (-5)
[   15.010621] iwlwifi 0000:02:00.0: Applying debug destination EXTERNAL_DRAM
[   15.088525] iwlwifi 0000:02:00.0: Applying debug destination EXTERNAL_DRAM
[   15.090003] iwlwifi 0000:02:00.0: FW already configured (0) - re-configuring
[   15.131382] iwlwifi 0000:02:00.0: Applying debug destination EXTERNAL_DRAM
[   15.209408] iwlwifi 0000:02:00.0: Applying debug destination EXTERNAL_DRAM
[   15.210713] iwlwifi 0000:02:00.0: FW already configured (0) - re-configuring
[   19.767339] wlp2s0: authenticate with e8:d1:1b:2c:33:cb
[   19.774090] wlp2s0: send auth to e8:d1:1b:2c:33:cb (try 1/3)

lsusb

Bus 002 Device 002: ID 17e9:4301 DisplayLink USB3.0 UHD HDMI Adapter
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 007: ID 8087:0a2a Intel Corp. Bluetooth wireless interface
Bus 001 Device 005: ID 174f:14e6 Syntek Lenovo EasyCamera
Bus 001 Device 003: ID 7392:7711 Edimax Technology Co., Ltd EW-7711UTn nLite Wireless Adapter [Ralink RT3070]
Bus 001 Device 006: ID 046d:c077 Logitech, Inc. M105 Optical Mouse
Bus 001 Device 004: ID 046d:c31c Logitech, Inc. Keyboard K120
Bus 001 Device 002: ID 05e3:0610 Genesys Logic, Inc. Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

I also tried to download and build the Ralink RT3070 driver provided by the maker from https://www.mediatek.com/products/broadbandWifi/rt3070 but I was unable to get it working. Here the output after unzipping the download file.

$ cd DPO_RT5572_LinuxSTA_2.6.1.3_20121022
$ sudo make
make -C tools
make[1]: Entering directory '/home/Downloads/DPO_RT5572_LinuxSTA_2.6.1.3_20121022/tools'
gcc -g bin2h.c -o bin2h
make[1]: Leaving directory '/home/Downloads/DPO_RT5572_LinuxSTA_2.6.1.3_20121022/tools'
/home/Downloads/DPO_RT5572_LinuxSTA_2.6.1.3_20121022/tools/bin2h
cp -f os/linux/Makefile.6 /home/Downloads/DPO_RT5572_LinuxSTA_2.6.1.3_20121022/os/linux/Makefile
make -C /lib/modules/5.13.9-200.fc34.x86_64/build SUBDIRS=/home/Downloads/DPO_RT5572_LinuxSTA_2.6.1.3_20121022/os/linux modules
make[1]: Entering directory '/usr/src/kernels/5.13.9-200.fc34.x86_64'
  SYNC    include/config/auto.conf.cmd
  HOSTCC  scripts/basic/fixdep
  HOSTCC  scripts/kconfig/conf.o
  HOSTCC  scripts/kconfig/confdata.o
  HOSTCC  scripts/kconfig/expr.o
  LEX     scripts/kconfig/lexer.lex.c
  YACC    scripts/kconfig/parser.tab.[ch]
  HOSTCC  scripts/kconfig/lexer.lex.o
  HOSTCC  scripts/kconfig/menu.o
  HOSTCC  scripts/kconfig/parser.tab.o
  HOSTCC  scripts/kconfig/preprocess.o
  HOSTCC  scripts/kconfig/symbol.o
  HOSTCC  scripts/kconfig/util.o
  HOSTLD  scripts/kconfig/conf
  SYSHDR  arch/x86/include/generated/uapi/asm/unistd_32.h
  SYSHDR  arch/x86/include/generated/uapi/asm/unistd_64.h
  SYSHDR  arch/x86/include/generated/uapi/asm/unistd_x32.h
  SYSTBL  arch/x86/include/generated/asm/syscalls_32.h
  SYSHDR  arch/x86/include/generated/asm/unistd_32_ia32.h
  SYSHDR  arch/x86/include/generated/asm/unistd_64_x32.h
  SYSTBL  arch/x86/include/generated/asm/syscalls_64.h
  HYPERCALLS arch/x86/include/generated/asm/xen-hypercalls.h
  HOSTCC  arch/x86/tools/relocs_32.o
  HOSTCC  arch/x86/tools/relocs_64.o
  HOSTCC  arch/x86/tools/relocs_common.o
  HOSTLD  arch/x86/tools/relocs
  HOSTCC  scripts/selinux/genheaders/genheaders
  HOSTCC  scripts/selinux/mdp/mdp
  HOSTCC  scripts/bin2c
  HOSTCC  scripts/kallsyms
  HOSTCC  scripts/sorttable
  HOSTCC  scripts/asn1_compiler
  HOSTCC  scripts/sign-file
  HOSTCC  scripts/extract-cert
  HOSTCC  scripts/insert-sys-cert
  HOSTCC  scripts/mod/mk_elfconfig
  CC      scripts/mod/empty.o
  MKELF   scripts/mod/elfconfig.h
  HOSTCC  scripts/mod/modpost.o
  CC      scripts/mod/devicetable-offsets.s
  HOSTCC  scripts/mod/file2alias.o
  HOSTCC  scripts/mod/sumversion.o
  HOSTLD  scripts/mod/modpost
scripts/Makefile.build:423: warning: overriding recipe for target 'modules.order'
Makefile:1461: warning: ignoring old recipe for target 'modules.order'
  DESCEND objtool
  HOSTCC  /usr/src/kernels/5.13.9-200.fc34.x86_64/tools/objtool/fixdep.o
  HOSTLD  /usr/src/kernels/5.13.9-200.fc34.x86_64/tools/objtool/fixdep-in.o
  LINK    /usr/src/kernels/5.13.9-200.fc34.x86_64/tools/objtool/fixdep
  CC      /usr/src/kernels/5.13.9-200.fc34.x86_64/tools/objtool/exec-cmd.o
  CC      /usr/src/kernels/5.13.9-200.fc34.x86_64/tools/objtool/help.o
  CC      /usr/src/kernels/5.13.9-200.fc34.x86_64/tools/objtool/pager.o
  CC      /usr/src/kernels/5.13.9-200.fc34.x86_64/tools/objtool/parse-options.o
  CC      /usr/src/kernels/5.13.9-200.fc34.x86_64/tools/objtool/run-command.o
  CC      /usr/src/kernels/5.13.9-200.fc34.x86_64/tools/objtool/sigchain.o
  CC      /usr/src/kernels/5.13.9-200.fc34.x86_64/tools/objtool/subcmd-config.o
  LD      /usr/src/kernels/5.13.9-200.fc34.x86_64/tools/objtool/libsubcmd-in.o
  AR      /usr/src/kernels/5.13.9-200.fc34.x86_64/tools/objtool/libsubcmd.a
make[3]: *** [Makefile:55: /usr/src/kernels/5.13.9-200.fc34.x86_64/tools/objtool/objtool-in.o] Error 1
make[2]: *** [Makefile:69: objtool] Error 2
make[1]: *** [Makefile:1981: tools/objtool] Error 2
make[1]: Leaving directory '/usr/src/kernels/5.13.9-200.fc34.x86_64'
make: *** [Makefile:389: LINUX] Error 2
1 Like

Hi I am having the same problem with fedora 34, here the dmesg.
Do you have any suggestions?

[   14.472917] Generic FE-GE Realtek PHY r8169-0-300:00: attached PHY driver (mii_bus:phy_addr=r8169-0-300:00, irq=MAC)
[   14.645995] r8169 0000:03:00.0 enp3s0: Link is Down
[   14.649764] ieee80211 phy1: rt2x00lib_request_firmware: Info - Loading firmware file 'rt2870.bin'
[   14.651158] ieee80211 phy1: rt2x00lib_request_firmware: Info - Firmware detected - version: 0.36
[   14.673242] ieee80211 phy1: rt2x00usb_vendor_request: Error - Vendor Request 0x06 failed for offset 0x0404 with error -71
[   14.993892] ieee80211 phy1: rt2800_wait_csr_ready: Error - Unstable hardware
[   14.993896] ieee80211 phy1: rt2800usb_set_device_state: Error - Device failed to enter state 4 (-5)
1 Like

Welcome to the forum @brego . I’ve split your question into its own topic. Please edit the topic to improve it.

If you’ve not had a chance yet, please do take a quick look at the introductory posts in the #start-here category which document how to use this forum well to get most out of it :slight_smile:

Hi brego,
I had the exact same problem a while ago. It seems to be a timing problem with kernel versions above 4.20 & systemd. I successfully used Fedora 32 with an old kernel for a while, but then switched to debian because there it is simpler to use the 4.19 LTS kernel with testing. MX Linux works flawlessly as well.

I guess you already tried that, but if not: You can try as well to deactivate the privacy settings, sometimes that seems to work (not with my configuration though): Deactivate “wifi.scan-rand-mac-address” and “wifi.cloned-mac-address” in the NetworkManager configuration file.

Btw:

[   14.993896] ieee80211 phy1: rt2800usb_set_device_state: Error - Device failed to enter state 4 (-5)

seems to be the relevant error, since

[   14.673242] ieee80211 phy1: rt2x00usb_vendor_request: Error - Vendor Request 0x06 failed for offset 0x0404 with error -71
[   14.993892] ieee80211 phy1: rt2800_wait_csr_ready: Error - Unstable hardware

are shown with older kernels as well, and the card is working flawlessly.

Hi, @jana100 and thanks for the reply.
Yes I tried without success. Interestingly with the latest Ubuntu the same Ralink RT3070 wifi card work perfectly.

Hi @brego,
yes, that’s why I guessed a timing problem between kernel driver and systemd: Everything works fine with older kernels (including mac-randomization). And it works on distributions that don’t use systemd, like MX Linux. If I remember right Ubuntu does use some other init system as well. Why didn’t you stick with Ubuntu?

Ubuntu uses systemd as well. They have for quite a long time now.

Ha, didn’t know that! So it has to be something else. Strange!

1 Like

Hi all and thanks for the answers. As far as I understood there are no workaround for my problem, correct?

@brego,
not that I am aware of. Deactivating mac-randomisation seems to be the only solution that works for some people.