user is not informed if there is not enough power for usb devices

Bug #67848 reported by Jussi Kukkonen
20
Affects Status Importance Assigned to Milestone
linux (Ubuntu)
Won't Fix
Undecided
Unassigned
linux-source-2.6.17 (Debian)
Fix Released
Unknown
linux-source-2.6.17 (Ubuntu)
Invalid
Undecided
Unassigned

Bug Description

EDIT: Original title was: "pegasus usb-ethernet driver does not work in Edgy" -- edited when the real reason was found out (see last post and linked debian bug report)...

Binary package hint: linux-image-2.6.17-10-generic

In Dapper my usb ethernet adapter worked out-of-the-box. After upgrading to Edgy RC it didn't. Booting into the last Dapper kernel (2.6.15-27-686) fixes the issue.

The device uses the pegasus driver. In 2.6.15-27-686 connecting the device makes this appear in syslog (and everything Just Works):
---
Oct 21 13:52:07 localhost kernel: [ 616.861394] usb 1-1.3: new full speed USB device using uhci_hcd and address 5
Oct 21 13:52:07 localhost kernel: [ 616.994323] pegasus 1-1.3:1.0: setup Pegasus II specific registers
Oct 21 13:52:08 localhost kernel: [ 617.113437] pegasus 1-1.3:1.0: eth0, ADMtek ADM8511 "Pegasus II" USB Ethernet, 00:50:fc:8e:6c:bb
Oct 21 13:52:08 localhost kernel: [ 617.113595] usb 1-1.3: 60mA over 100mA budget!
Oct 21 13:52:08 localhost kernel: [ 617.839799] eth1: set allmulti
Oct 21 13:52:08 localhost kernel: [ 617.841949] ADDRCONF(NETDEV_UP): eth1: link is not ready
Oct 21 13:52:08 localhost kernel: [ 617.842450] eth1: set allmulti
Oct 21 13:52:08 localhost kernel: [ 617.844163] eth1: set allmulti
Oct 21 13:52:09 localhost kernel: [ 618.841600] ADDRCONF(NETDEV_CHANGE): eth1: link becomes ready
Oct 21 13:52:09 localhost kernel: [ 618.841771] eth1: set allmulti
Oct 21 13:52:09 localhost kernel: [ 618.841942] eth1: set allmulti
---

In 2.6.17-10-generic (the edgy default kernel), connecting the device only achieves this:
---
Oct 21 13:34:37 localhost kernel: [ 368.740682] usb 1-1.3: new full speed USB device using uhci_hcd and address 5
Oct 21 13:34:37 localhost kernel: [ 368.888772] usb 1-1.3: no configuration chosen from 1 choice
---

Revision history for this message
Eric Boesch (ericboesch) wrote :

Jussi drew my attention to this bug report when I posted about a similar network problem, also with a Pegasus driven adapter, to

http://www.ubuntuforums.org/showthread.php?t=283634

So to the best of my knowledge, I have encountered the same bug that Jussi did. Additional details are at the linked-to thread.

Revision history for this message
Eric Boesch (ericboesch) wrote :

I'm assuming that two people suffering from apparently the same problem is sufficient basis to call a bug confirmed...

Changed in linux-source-2.6.17:
status: Unconfirmed → Confirmed
Revision history for this message
Eric Boesch (ericboesch) wrote :

My problem was solved by adding irqpoll to the grub bootup options -- an easy fix that I should have found much sooner. But it's still a failure to work out-of-the-box... I haven't determined whether the same issue exists in the newly-released official version of 6.10.

http://ubuntuforums.org/showthread.php?p=1667545

Revision history for this message
Jussi Kukkonen (jku) wrote : irqpoll doesn't help here...

Possibly our problems were different after all -- "irqpoll" option has no effect here. The confirmation of the bug may have been premature...

I'm quite willing to help, but I have no idea what information a developer would want.

Revision history for this message
Jussi Kukkonen (jku) wrote : additional information
Download full text (3.3 KiB)

Just in case this is useful:
* lsusb gives the same output in both kernels (see below)
* lshw does not output anything in 2.6.17-10. In the Dapper kernel (2.6.15-27) the output is this:
> jussi@halo:~$ sudo lshw -C network
> *-network
> description: Ethernet interface
> physical id: 2
> logical name: eth1
> serial: 00:50:fc:8e:6c:bb
> size: 100MB/s
> capacity: 100MB/s
> capabilities: ethernet physical tp mii 10bt 10bt-fd 100bt 100bt-fd autonegociation
> configuration: autonegociation=on broadcast=yes driver=pegasus driverversion=v0.6.12 (2005/01/13) duplex=full ip=192.168.0.101 link=yes multicast=yes port=MII speed=100MB/s
>

For completeness, here is the lsusb output
> jussi@halo:~$ sudo lsusb -vv -d 07a6:8511
>
> Bus 001 Device 004: ID 07a6:8511 ADMtek, Inc. ADM8511 > Pegasus II Ethernet
> Device Descriptor:
> bLength 18
> bDescriptorType 1
> bcdUSB 1.10
> bDeviceClass 0 (Defined at Interface level)
> bDeviceSubClass 0
> bDeviceProtocol 0
> bMaxPacketSize0 8
> idVendor 0x07a6 ADMtek, Inc.
> idProduct 0x8511 ADM8511 Pegasus II Ethernet
> bcdDevice 1.01
> iManufacturer 1 USB
> iProduct 2 USB 10/100 FastEthernet
> iSerial 3 0001
> bNumConfigurations 1
> Configuration Descriptor:
> bLength 9
> bDescriptorType 2
> wTotalLength 39
> bNumInterfaces 1
> bConfigurationValue 1
> iConfiguration 0
> bmAttributes 0xa0
> (Bus Powered)
> Remote Wakeup
> MaxPower 160mA
> Interface Descriptor:
> bLength 9
> bDescriptorType 4
> bInterfaceNumber 0
> bAlternateSetting 0
> bNumEndpoints 3
> bInterfaceClass 0 (Defined at Interface level)
> bInterfaceSubClass 0
> bInterfaceProtocol 0
> iInterface 0
> Endpoint Descriptor:
> bLength 7
> bDescriptorType 5
> bEndpointAddress 0x81 EP 1 IN
> bmAttributes 2
> Transfer Type Bulk
> Synch Type None
> Usage Type Data
> wMaxPacketSize 0x0040 1x 64 bytes
> bInterval 0
> Endpoint Descriptor:
> bLength 7
> bDescriptorType 5
> bEndpointAddress 0x02 EP 2 OUT
> bmAttributes 2
> Transfer Type Bulk
> Synch Type None
> Usage Type Data
> wMaxPacketSize 0x0040 1x 64 bytes
> bInterval 0
> Endpoint Descriptor:
> bLength 7
> bDescriptorType 5
> bEndpointAddress 0x83 EP 3 IN
> bmAttributes 3
> Transfer Type Interrupt
> Synch Type None
> Usage Ty...

Read more...

Revision history for this message
Jussi Kukkonen (jku) wrote : Re: pegasus usb-ethernet driver does not work in Edgy

Ok, found the real reason:

Kernels => 2.6.16 have a feature that checks whether devices can be given as much power as they claim to need. If there's not enough juice (like in my case), the device is not activated. So a feature, not a bug.

The Debian bug I linked to is about notifying the user about this.

description: updated
Changed in linux-source-2.6.17:
status: Unknown → Unconfirmed
Revision history for this message
ssmerche (ssmerche) wrote :

This bug also effects Linksys WUSB54GS devices. Forcing the device to run using a workaround detailed in this thread: http://www.ubuntuforums.org/showthread.php?p=1313658#post1313658
(bottom of first post) does not seem to have any negative effects on the system. The user needs to be given the option to turn this off in addition to being notified.

Revision history for this message
ssmerche (ssmerche) wrote :

Other bug reports related to this issue claim that the problem is only with unpowered usb hubs. I've plugged my Linksys WUSB54GS into my computer and the kernel still deactivates it. Other people have run into the same problem as noted in the thread I linked to in my previous post.

Revision history for this message
Jacob Godserv (fun2program8) wrote :

As mentioned above, there's a HOWTO specifically for the WUSB54GS device (Linksys Wireless-G USB Adapter) that mentions a workaround for the WUSB54GS, but it will work for all devices.

Essentially, you add a rule into the udev system, which directly tells Linux to use configuration #1 for the device just plugged in.

Here's a summary of what you do:

1. Add this line to /etc/udev/rules.d/99-custom.rules (a new file):
BUS=="usb", SYSFS{idProduct}=="<product>", SYSFS{idVendor}=="<vendor>", RUN+="/bin/sh -c 'echo 1 > /sys/$devpath/device/bConfigurationValue'"

2. Be absolutely certain that you replace "<vendor>" and "<product>" with the correct vendor and product HEX ID. You'll find this in lshal -l or (in Ubuntu) System -> Administration -> Device Manager.

3. Save the file, and plug in the device. (Unplug and plug in again if you've already had it plugged in.)

If you watch in your /var/log/syslog file, you'll notice that Linux says its usual "no configuration chosen", but then it says "device reset", and then finally loads the appropriate driver for the USB device.

If you did anything wrong, udev will not tell you about it. It just won't work, and everything'll act like you never added the udev rule.

Revision history for this message
Jacob Godserv (fun2program8) wrote :

Oh, I got the workaround from this page (which I found through good ol' Google):
http://marc.theaimsgroup.com/?l=linux-usb-devel&m=114781479530376&w=2

Revision history for this message
Srivatsa Kanchi R (srivatsak) wrote :
Download full text (3.4 KiB)

This is still the case with Ubuntu Feisty
Linux satyabodha 2.6.20-15-generic #2 SMP Sun Apr 15 07:36:31 UTC 2007 i686 GNU/Linux

the dmesg output says:
[ 18.627140] usb 1-2: new full speed USB device using uhci_hcd and address 3
[ 18.826842] usb 1-2: no configuration chosen from 1 choice
...

my device is an ADSL self-powered USB modem (From Huawei WA1003A). Below is its details

Bus 001 Device 003: ID 1110:9022 Analog Devices Canada, Ltd (Allied Telesyn)
Device Descriptor:
  bLength 18
  bDescriptorType 1
  bcdUSB 1.10
  bDeviceClass 2 Communications
  bDeviceSubClass 0
  bDeviceProtocol 0
  bMaxPacketSize0 8
  idVendor 0x1110 Analog Devices Canada, Ltd (Allied Telesyn)
  idProduct 0x9022
  bcdDevice 0.00
  iManufacturer 1 HUAWEI
  iProduct 2 Quidway WA1003A Series DSL Modem
  iSerial 3 00:0f:a3:8a:86:3d
  bNumConfigurations 1
  Configuration Descriptor:
    bLength 9
    bDescriptorType 2
    wTotalLength 67
    bNumInterfaces 2
    bConfigurationValue 1
    iConfiguration 0
    bmAttributes 0xc0
      Self Powered
    MaxPower 0mA
    Interface Descriptor:
      bLength 9
      bDescriptorType 4
      bInterfaceNumber 0
      bAlternateSetting 0
      bNumEndpoints 1
      bInterfaceClass 2 Communications
      bInterfaceSubClass 2 Abstract (modem)
      bInterfaceProtocol 255 Vendor Specific (MSFT RNDIS?)
      iInterface 4 RNDIS Communication Interface
      CDC Header:
        bcdCDC 1.10
      CDC Call Management:
        bmCapabilities 0x00
        bDataInterface 1
      CDC ACM:
        bmCapabilities 0x00
      CDC Union:
        bMasterInterface 0
        bSlaveInterface 1
      Endpoint Descriptor:
        bLength 7
        bDescriptorType 5
        bEndpointAddress 0x82 EP 2 IN
        bmAttributes 3
          Transfer Type Interrupt
          Synch Type None
          Usage Type Data
        wMaxPacketSize 0x0008 1x 8 bytes
        bInterval 1
    Interface Descriptor:
      bLength 9
      bDescriptorType 4
      bInterfaceNumber 1
      bAlternateSetting 0
      bNumEndpoints 2
      bInterfaceClass 10 CDC Data
      bInterfaceSubClass 0 Unused
      bInterfaceProtocol 0
      iInterface 5 RNDIS Data Interface
      Endpoint Descriptor:
        bLength 7
        bDescriptorType 5
        bEndpointAddress 0x81 EP 1 IN
        bmAttributes 2
          Transfer Type Bulk
          Synch Type None
          Usage Type Data
        wMaxPacketSize 0x0040 1x 64 bytes
        bInterval 0
      Endpoint Descriptor:
        bLength 7
        bDescriptorType 5
        bEndpointAddress ...

Read more...

Revision history for this message
Brian Murray (brian-murray) wrote :

I am assigning this bug to the 'ubuntu-kernel-team' per their bug policy. For future reference you can learn more about their bug policy at https://wiki.ubuntu.com/KernelTeamBugPolicies .

Changed in linux-source-2.6.17:
assignee: nobody → ubuntu-kernel-team
Changed in linux-source-2.6.17:
status: New → Fix Released
Revision history for this message
Sergio Zanchetta (primes2h) wrote :

The 18 month support period for Edgy Eft 6.10 has reached it's end of life. As a result, we are closing the linux-source-2.6.17 Edgy Eft kernel task.

Changed in linux-source-2.6.17:
status: Confirmed → Invalid
Revision history for this message
Sergio Zanchetta (primes2h) wrote :

Hardy Heron 8.04 was recently released. It would be helpful if you could test the new release and verify if this is still an issue - http://www.ubuntu.com/getubuntu/download . You should be able to test your bug using the LiveCD. Please let us know your results. Thanks.

Changed in linux:
status: New → Incomplete
Revision history for this message
Leann Ogasawara (leannogasawara) wrote :

The Ubuntu Kernel Team is planning to move to the 2.6.27 kernel for the upcoming Intrepid Ibex 8.10 release. As a result, the kernel team would appreciate it if you could please test this newer 2.6.27 Ubuntu kernel. There are one of two ways you should be able to test:

1) If you are comfortable installing packages on your own, the linux-image-2.6.27-* package is currently available for you to install and test.

--or--

2) The upcoming Alpha5 for Intrepid Ibex 8.10 will contain this newer 2.6.27 Ubuntu kernel. Alpha5 is set to be released Thursday Sept 4. Please watch http://www.ubuntu.com/testing for Alpha5 to be announced. You should then be able to test via a LiveCD.

Please let us know immediately if this newer 2.6.27 kernel resolves the bug reported here or if the issue remains. More importantly, please open a new bug report for each new bug/regression introduced by the 2.6.27 kernel and tag the bug report with 'linux-2.6.27'. Also, please specifically note if the issue does or does not appear in the 2.6.26 kernel. Thanks again, we really appreicate your help and feedback.

Revision history for this message
Ralph Janke (txwikinger) wrote :

Unfortunately this bug report is being closed because we received no response to the last inquiry for information. However, the Intrepid Ibex 8.10 Beta release was most recently announced - http://www.ubuntu.com/testing/intrepid/beta . If you are able to confirm this is still an issue with this most recent release please feel free to reopen this report. To reopen the bug report you can click on the current status, under the Status column, and change the Status back to "New". Thanks.

Changed in linux:
status: Incomplete → Won't Fix
Revision history for this message
Launchpad Janitor (janitor) wrote : Kernel team bugs

Per a decision made by the Ubuntu Kernel Team, bugs will longer be assigned to the ubuntu-kernel-team in Launchpad as part of the bug triage process. The ubuntu-kernel-team is being unassigned from this bug report. Refer to https://wiki.ubuntu.com/KernelTeamBugPolicies for more information. Thanks.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

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