rt2800pci problem with rt3090 chipset

Live forum: http://rt2x00.serialmonkey.com/viewtopic.php?t=6255

bobbyprani

21-10-2013 17:18:14

Hi,

I am facing problems using my rt3090 chipset with the rt2800pci drivers. I tested this on both Ubuntu 13.04, 13.10. (kernels 3.5, 3.8, 3.11 and 3.12 rc5).

This is the error

Oct 16 202140 evgadesktop kernel [ 9.419018] phy0 -> rt2800_wait_wpdma_ready Error - WPDMA TX/RX busy [0x00000068].
Oct 16 202141 evgadesktop kernel [ 11.017745] phy0 -> rt2800_wait_wpdma_ready Error - WPDMA TX/RX busy [0x00000068].
Oct 16 202141 evgadesktop kernel [ 11.017752] phy0 -> rt2800pci_set_device_state Error - Device failed to enter state 4 (-5).
Oct 16 202141 evgadesktop kernel [ 11.017854] IPv6 ADDRCONF(NETDEV_UP) wlan1 link is not ready
Oct 16 202143 evgadesktop kernel [ 12.640437] phy0 -> rt2800_wait_wpdma_ready Error - WPDMA TX/RX busy [0x00000068].
Oct 16 202145 evgadesktop kernel [ 14.239131] phy0 -> rt2800_wait_wpdma_ready Error - WPDMA TX/RX busy [0x00000068].
Oct 16 202145 evgadesktop kernel [ 14.239135] phy0 -> rt2800pci_set_device_state Error - Device failed to enter state 4 (-5).
Oct 16 202146 evgadesktop kernel [ 15.853847] phy0 -> rt2800_wait_wpdma_ready Error - WPDMA TX/RX busy [0x00000068].
Oct 16 202148 evgadesktop kernel [ 17.452546] phy0 -> rt2800_wait_wpdma_ready Error - WPDMA TX/RX busy [0x00000068].

The way I am currently working around this is using kernel 3.2 and resetting the device using an rt3090sta driver. When I load the rt3090sta driver, I get this in the log

[ 97.025024] rt3090 00000600.0 PCI INT A -> GSI 18 (level, low) -> IRQ 18
[ 97.025088] rt3090 00000600.0 setting latency timer to 64
[ 97.033927] ralink test for reset MCU before write
[ 97.033937] FileLength 8192
[ 97.155396] ADDRCONF(NETDEV_UP) wlan0 link is not ready
[ 97.156406] ralink test for reset MCU before write
[ 97.156416] FileLength 8192
[ 106.744775] cfg80211 Calling CRDA to update world regulatory domain
[ 106.749867] cfg80211 World regulatory domain updated
[ 106.749869] cfg80211 (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp)
[ 106.749870] cfg80211 (2402000 KHz - 2472000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)
[ 106.749871] cfg80211 (2457000 KHz - 2482000 KHz @ 20000 KHz), (300 mBi, 2000 mBm)
[ 106.749872] cfg80211 (2474000 KHz - 2494000 KHz @ 20000 KHz), (300 mBi, 2000 mBm)
[ 106.749873] cfg80211 (5170000 KHz - 5250000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)
[ 106.749874] cfg80211 (5735000 KHz - 5835000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)
[ 123.558004] RtmpOSNetDevDetach() RtmpOSNetDeviceDetach(), dev->name=wlan0!


The wireless does not work with this driver but just properly resets the device. After this I remove the rt3090sta driver and then reload the rt2800pci driver and the chipset starts working properly!

Please let me know if you need more information to triage this issue.

Device Info

*-network
description Wireless interface
product RT3090 Wireless 802.11n 1T/1R PCIe
vendor Ralink corp.
physical id 0
bus info pci@00000600.0
logical name wlan0
version 00
serial 48022afb238a
width 32 bits
clock 33MHz
capabilities pm msi pciexpress bus_master cap_list ethernet physical wireless
configuration broadcast=yes driver=rt2800pci driverversion=3.2.0-54-generic firmware=0.34 ip=192.168.1.225 latency=0 link=yes multicast=yes wireless=IEEE 802.11bgn
resources irq18 memoryef300000-ef30ffff


Thanks!