Edimax Wireless USB Dongle Failure Karmic Kernel 2.6.31-X

Bug #396417 reported by Andy Rogers
28
This bug affects 3 people
Affects Status Importance Assigned to Milestone
Linux
Fix Released
Undecided
Unassigned
linux (Ubuntu)
Fix Released
High
Andy Whitcroft

Bug Description

I have been using successfully a Edimax EW-3118Ug USB Wireless Dongle on my laptop with Jaunty in 2.6.28 Kernel & Karmix Kernel 2.6.30 with no problems.

However when the Karmic Kernel has been updated to 2.6.31 this no longer works.

In my syslog I keep getting these messages now:-

Jul 7 06:54:10 ubuntu-advent-laptop kernel: [ 100.212036] phy1 -> rt2500usb_set_device_state: Error - Device failed to enter state 3 (-16).
Jul 7 06:54:10 ubuntu-advent-laptop kernel: [ 100.212048] phy1 -> rt2500usb_set_device_state: Error - Device failed to enter state 4 (-5).

Jul 7 06:54:01 ubuntu-advent-laptop kernel: [ 92.062450] phy0 -> rt2x00usb_vendor_request: Error - Vendor Request 0x07 failed for offset 0x0428 with error -19.
Jul 7 06:54:01 ubuntu-advent-laptop kernel: [ 92.062461] phy0 -> rt2x00usb_vendor_request: Error - Vendor Request 0x06 failed for

It seems since Karmic was rebasted to Kernel 2.6.31 support seems to have been ommitted from the latest Kernel.

Please add back.

Revision history for this message
Andy Rogers (andy-rogers) wrote :
tags: added: 2.6.31 dongle edimax karmic rt2500usb rt2x00usb wireless
Revision history for this message
Andy Rogers (andy-rogers) wrote :
Revision history for this message
Andy Rogers (andy-rogers) wrote :
Revision history for this message
Andy Rogers (andy-rogers) wrote :
Revision history for this message
Andy Rogers (andy-rogers) wrote :
Revision history for this message
Peter Cooper (pcooper-gaitor) wrote :

This bug also affects me with a D-Link usb stick

Revision history for this message
Bhoemen (bhoemen) wrote :

This bug affects me with a Belkin usb stick

Changed in linux (Ubuntu):
status: New → Confirmed
tags: added: regression-potential
Changed in linux (Ubuntu):
importance: Undecided → High
status: Confirmed → Triaged
Revision history for this message
Conn O Griofa (psyke83) wrote :

Have you tried the "backport" modules? In the past, the backported rt2x00 modules worked better for my USB dongle, thought I haven't tested it on Karmic.

$ sudo apt-get install linux-backports-modules-karmic-generic

(A restart is required for the new modules to load properly).

Revision history for this message
Andy Rogers (andy-rogers) wrote :

I had tried this originally on rc-1 kernel, but just tried this again & same results, still got exactly the same problem and same messages in syslog's.

I did a few restarts and still no difference.

Anything else that could possibly be tried?

Revision history for this message
Andy Rogers (andy-rogers) wrote : Re: [Bug 396417] Re: Edimax Wireless USB Dongle Failure Karmic Kernel 2.6.31-X

2009/7/13 Andrew Rogers <email address hidden>

> I had tried this originally on rc-1 kernel, but just tried this again &
> same results, still got exactly the same problem and same messages in
> syslog's.
>
> I did a few restarts and still no difference.
>
> Anything else that could possibly be tried?
>
> 2009/7/13 Conn <email address hidden>
>
> Have you tried the "backport" modules? In the past, the backported
>> rt2x00 modules worked better for my USB dongle, thought I haven't tested
>> it on Karmic.
>>
>> $ sudo apt-get install linux-backports-modules-karmic-generic
>>
>> (A restart is required for the new modules to load properly).
>>
>> --
>> Edimax Wireless USB Dongle Failure Karmic Kernel 2.6.31-X
>> https://bugs.launchpad.net/bugs/396417
>> You received this bug notification because you are a direct subscriber
>> of the bug.
>>
>> Status in The Linux Kernel: New
>> Status in “linux” package in Ubuntu: Triaged
>>
>> Bug description:
>> I have been using successfully a Edimax EW-3118Ug USB Wireless Dongle on
>> my laptop with Jaunty in 2.6.28 Kernel & Karmix Kernel 2.6.30 with no
>> problems.
>>
>> However when the Karmic Kernel has been updated to 2.6.31 this no longer
>> works.
>>
>> In my syslog I keep getting these messages now:-
>>
>> Jul 7 06:54:10 ubuntu-advent-laptop kernel: [ 100.212036] phy1 ->
>> rt2500usb_set_device_state: Error - Device failed to enter state 3 (-16).
>> Jul 7 06:54:10 ubuntu-advent-laptop kernel: [ 100.212048] phy1 ->
>> rt2500usb_set_device_state: Error - Device failed to enter state 4 (-5).
>>
>> Jul 7 06:54:01 ubuntu-advent-laptop kernel: [ 92.062450] phy0 ->
>> rt2x00usb_vendor_request: Error - Vendor Request 0x07 failed for offset
>> 0x0428 with error -19.
>> Jul 7 06:54:01 ubuntu-advent-laptop kernel: [ 92.062461] phy0 ->
>> rt2x00usb_vendor_request: Error - Vendor Request 0x06 failed for
>>
>> It seems since Karmic was rebasted to Kernel 2.6.31 support seems to have
>> been ommitted from the latest Kernel.
>>
>> Please add back.
>>
>
>

Revision history for this message
Andy Whitcroft (apw) wrote :

It seems that there are two drivers being applied, note the rt2500 and rt73 below:

    Jul 7 00:05:47 ubuntu-advent-laptop kernel: [ 71.586063] Registered led device: rt2500usb-phy0::radio
    Jul 7 00:05:47 ubuntu-advent-laptop kernel: [ 71.586084] Registered led device: rt2500usb-phy0::quality
    Jul 7 00:05:47 ubuntu-advent-laptop kernel: [ 71.586660] usbcore: registered new interface driver rt2500usb
    Jul 7 00:05:47 ubuntu-advent-laptop kernel: [ 71.798346] usbcore: registered new interface driver rt73usb

Do you have two RT based wireless cards in this machine? I am suspicious that two drivers have matched this one device. Later the errors below appear which translate to 'wake up the device, fail EBUSY':

    Jul 7 00:05:53 ubuntu-advent-laptop kernel: [ 77.000059] phy0 -> rt2500usb_set_device_state: Error - Device failed to enter state 3 (-16).

Can you:

1) confirm that you only have one RT wireless device in the machine,
2) get us a dmesg output from a boot with the 2.6.30 based kernel, and
3) get us lsusb -vvv from the 2.6.30 based kernel

Thanks!

Andy Whitcroft (apw)
Changed in linux:
status: New → Incomplete
Revision history for this message
Andy Rogers (andy-rogers) wrote :

Andy thanks for the comments.

I can confirm point 1 straight away, there is only 1 RT attached to my machine which is my USB Wireless device. There are no other wireless devices intergrated or attached to my laptop.

Point 2 & 3 I shall have to do toinght and report back then.

Thanks

Revision history for this message
Andy Rogers (andy-rogers) wrote :
Revision history for this message
Andy Rogers (andy-rogers) wrote :
Revision history for this message
Andy Rogers (andy-rogers) wrote :
Revision history for this message
Andy Rogers (andy-rogers) wrote :

Andy

I have now attached a further 3 files all relating to my laptop booting on 2.6.30 Kernel where my wireless dongle works fine with no issues.

Revision history for this message
Andy Rogers (andy-rogers) wrote :
Revision history for this message
Andy Rogers (andy-rogers) wrote :
Revision history for this message
Andy Rogers (andy-rogers) wrote :
Revision history for this message
Andy Rogers (andy-rogers) wrote :

Just uploaded new log files based on boot from kernel 2.6.31-2 as a direct comparison after latest patches etc.

Changed in linux:
status: Incomplete → New
Revision history for this message
Andy Rogers (andy-rogers) wrote :
Revision history for this message
Andy Rogers (andy-rogers) wrote :
Revision history for this message
Andy Rogers (andy-rogers) wrote :
Revision history for this message
Andy Rogers (andy-rogers) wrote :

Sorry, added more log files but this time based on 2.6.31-3 Kernel.

Still exactly the sameproblems on the 2.6.31 kernel as before.

Andy Whitcroft (apw)
Changed in linux (Ubuntu):
assignee: nobody → Andy Whitcroft (apw)
status: Triaged → In Progress
Revision history for this message
Andy Whitcroft (apw) wrote :

@Andy Rogers -- thanks for your very comprehensive replies.

From the 2.6.30 dmesg output we see that the kernel attempts to use both the rt25000 driver and the rt73 driver, but the former fails to bind:

    [ 18.626748] phy0 -> rt2500usb_init_eeprom: Error - Invalid RT chipset detected.
    [ 18.626760] phy0 -> rt2x00lib_probe_dev: Error - Failed to allocate device.
    [ 18.626839] usbcore: registered new interface driver rt2500usb
    [ 18.835405] Intel ICH 0000:00:02.7: PCI INT C -> GSI 18 (level, low) -> IRQ 18
    [ 18.992141] phy1: Selected rate control algorithm 'minstrel'
    [ 18.993466] Registered led device: rt73usb-phy1::radio
    [ 18.993512] Registered led device: rt73usb-phy1::assoc
    [ 18.993548] Registered led device: rt73usb-phy1::quality
    [ 18.994395] usbcore: registered new interface driver rt73usb

Whereas with 2.6.31-rc3 we see the rt2500 driver bind and fail:

    [ 16.496142] phy0: Selected rate control algorithm 'minstrel'
    [ 16.496940] Registered led device: rt2500usb-phy0::radio
    [ 16.496978] Registered led device: rt2500usb-phy0::quality
    [...]
    [ 16.504190] usbcore: registered new interface driver rt2500usb
    [ 16.554735] usbcore: registered new interface driver rt73usb
    [...]
    [ 27.632025] phy0 -> rt2500usb_set_device_state: Error - Device failed to enter state 3 (-16).
    [ 27.632033] phy0 -> rt2500usb_set_device_state: Error - Device failed to enter state 4 (-5).

This specific code chipset matching code has been fixed recently to simplify it in these two commits:

    commit 358623c22c9fd837b3b1b444377037f72553dc9f
    Author: Ivo van Doorn <email address hidden>
    Date: Tue May 5 19:46:08 2009 +0200

 rt2x00: Simplify rt2x00_check_rev

    commit 5a9940118a616266183c53a9ee4352feadb9c2e8
    Author: Ivo van Doorn <email address hidden>
    Date: Fri May 8 18:30:43 2009 +0200

 rt2x00: Fix chipset detection for rt73usb

These two in combination switch over to a mask based chipset version matcher. However also remove the code from rt2x00_check_rev() which checked the bottom four bits as non-zero passing that responsibility to the caller. This appears to change the semantics of the rt2500usb matcher.

Will spin a test patch to undo this semantic change and post test kernels shortly.

Revision history for this message
Andy Rogers (andy-rogers) wrote :

Andy

Thankyou for for looking at this so promptly and identifying the underlying cause of the problem it seems.

Just one question, are these 2 commits on the rt2x00 likley to be causing the problems with other brands which use this chipset like D-Link & Belkin USB Sticks as a couple of people have reported mentioned similar issues?

Thanks

Revision history for this message
Andy Whitcroft (apw) wrote :

@Andy Rogers -- ok I have put together a patch for the semantic issue, and build a test kernel with it applied. If you could test this kernel and report back here that would be very helpful. The kernel is at the URL below:

    http://people.ubuntu.com/~apw/lp396417-karmic/

Changed in linux (Ubuntu):
status: In Progress → Incomplete
Revision history for this message
Andy Rogers (andy-rogers) wrote :

@Andy Whitcroft--

Thanks for the test kernel and I can confirm I can now use my wireless dongle no problems with this Kernel build

Iam still getting similar error message in dmesg, I have attached logs again if they are any use.

Revision history for this message
Andy Rogers (andy-rogers) wrote :
Revision history for this message
Andy Rogers (andy-rogers) wrote :
Changed in linux (Ubuntu):
status: Incomplete → In Progress
Revision history for this message
Andy Whitcroft (apw) wrote :

Ok much better we now get the expected behaviour. rt2500 fails to bind to the device as it makes no sense, and then rt73 is able to attach and the card is reported usable.

  Jul 15 17:32:18 ubuntu-advent-laptop kernel: [ 20.425221] phy0 -> rt2500usb_init_eeprom: Error - Invalid RT chipset detected.
  Jul 15 17:32:18 ubuntu-advent-laptop kernel: [ 20.425230] phy0 -> rt2x00lib_probe_dev: Error - Failed to allocate device.
  Jul 15 17:32:18 ubuntu-advent-laptop kernel: [ 20.425295] usbcore: registered new interface driver rt2500usb
  Jul 15 17:32:18 ubuntu-advent-laptop kernel: [ 20.541370] Intel ICH 0000:00:02.7: PCI INT C -> GSI 18 (level, low) -> IRQ 18
  Jul 15 17:32:18 ubuntu-advent-laptop kernel: [ 20.707236] Synaptics Touchpad, model: 1, fw: 5.9, id: 0x254ab1, caps: 0x804713/0x0
  Jul 15 17:32:18 ubuntu-advent-laptop kernel: [ 20.747649] input: SynPS/2 Synaptics TouchPad as /devices/platform/i8042/serio4/input/input6
  Jul 15 17:32:18 ubuntu-advent-laptop kernel: [ 20.825777] phy1: Selected rate control algorithm 'minstrel'
  Jul 15 17:32:18 ubuntu-advent-laptop kernel: [ 20.826585] Registered led device: rt73usb-phy1::radio
  Jul 15 17:32:18 ubuntu-advent-laptop kernel: [ 20.826605] Registered led device: rt73usb-phy1::assoc
  Jul 15 17:32:18 ubuntu-advent-laptop kernel: [ 20.826626] Registered led device: rt73usb-phy1::quality
  Jul 15 17:32:18 ubuntu-advent-laptop kernel: [ 20.827270] usbcore: registered new interface driver rt73usb

Will push this upstream.

Revision history for this message
Vincenzo Ciancia (vincenzo-ml) wrote : Re: [Bug 396417] Re: Edimax Wireless USB Dongle Failure Karmic Kernel 2.6.31-X

Thank you all for fixing this.

Vincenzo

Revision history for this message
Andy Rogers (andy-rogers) wrote :

@Andy Whitcroft

Has this been pushed upstream yet for inclusion in time for Alpha 3 release?

I have not seen any mention of this patch included in bug fixes in the mailing lists.

Cheers
Andy Rogers

Revision history for this message
Andy Rogers (andy-rogers) wrote :

This patch has not made it upstream into RC4 of 2.6.31, hopefully RC5 maybe.

Revision history for this message
Kevin Fries (kevin-kevinfries) wrote :

OK, for those of you that followed this thread all the way down to here looking for how to fix the problem...

Here is how I fixed it.

I created a new file called /etc/modprobe.d/blacklist-rt2500usb.conf with the following content
------------------------------------------------
# For whatever reason, the rt2500usb and rt73usb drivers are both
# getting loaded. To stop this situation, stop the rt2500usb driver
# from loading (Ubuntu: #396417)
blacklist rt2500usb
------------------------------------------------

All is well on reboot

Thanks for the help guys

Revision history for this message
Andy Rogers (andy-rogers) wrote :

Bug now fixed in 2.6.31-rc5 Kernel

Changed in linux (Ubuntu):
status: In Progress → Fix Released
Changed in linux:
status: New → Fix Released
Revision history for this message
Andy Rogers (andy-rogers) wrote :

@Andy Whitcroft--

I have raised a new bug report relating to my USB Wireless dongle again, but problems have occured immediatley since upgrading from Network Manager 0.7x to 0.8x in Karmic.

https://bugs.launchpad.net/ubuntu/+source/linux/+bug/421617

Thanks

Andy

papukaija (papukaija)
tags: removed: 2.6.31 dongle edimax rt2x00usb
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.