# USB devices conflict

## mmatton

I've got a USB headset & an old USB webcam which both work, but only when used separately. When one is in use the other doesn't work right.

When I'm using the webcam (in ekiga, no call in progress), the headset's mic wont work (in skype, gotta love the echo test service).

When I'm using the headset (in skype, mic & speakers working just fine), the webcam wont work (in ekiga, it can't even detect it in the devices config screen).

From the lsusb info I know that I have a second bus, but I can't seem to be able to switch either of them to it.

System Info:

kernel: 2.6.22-gentoo-r8 

usb drivers compiled in that seem relevant :

CONFIG_VIDEO_CPIA=y

CONFIG_VIDEO_CPIA_USB=y

CONFIG_V4L_USB_DRIVERS=y

CONFIG_SND_USB_AUDIO=m

CONFIG_USB_HID=y

CONFIG_USB_ARCH_HAS_HCD=y

CONFIG_USB_ARCH_HAS_OHCI=y

CONFIG_USB_ARCH_HAS_EHCI=y

CONFIG_USB=y

CONFIG_USB_DEVICEFS=y

CONFIG_USB_DEVICE_CLASS=y

CONFIG_USB_EHCI_HCD=y

CONFIG_USB_OHCI_HCD=y

CONFIG_USB_OHCI_LITTLE_ENDIAN=y

CONFIG_USB_UHCI_HCD=y

status when neither is in use:

lsusb:

Bus 002 Device 001: ID 0000:0000

Bus 002 Device 003: ID 046d:0a01 Logitech, Inc.

Bus 002 Device 002: ID 0553:0002 STMicroelectronics Imaging Division (VLSI Vision) CPiA WebCam

Bus 001 Device 001: ID 0000:0000

lsusb -v:

Bus 002 Device 001: ID 0000:0000

Device Descriptor:

  bLength                18

  bDescriptorType         1

  bcdUSB               1.10

  bDeviceClass            9 Hub

  bDeviceSubClass         0 Unused

  bDeviceProtocol         0

  bMaxPacketSize0        64

  idVendor           0x0000

  idProduct          0x0000

  bcdDevice            2.06

  iManufacturer           3 Linux 2.6.22-gentoo-r8 ohci_hcd

  iProduct                2 OHCI Host Controller

  iSerial                 1 0000:00:02.0

  bNumConfigurations      1

  Configuration Descriptor:

    bLength                 9

    bDescriptorType         2

    wTotalLength           25

    bNumInterfaces          1

    bConfigurationValue     1

    iConfiguration          0

    bmAttributes         0xe0

      Self Powered

      Remote Wakeup

    MaxPower                0mA

    Interface Descriptor:

      bLength                 9

      bDescriptorType         4

      bInterfaceNumber        0

      bAlternateSetting       0

      bNumEndpoints           1

      bInterfaceClass         9 Hub

      bInterfaceSubClass      0 Unused

      bInterfaceProtocol      0

      iInterface              0

      Endpoint Descriptor:

        bLength                 7

        bDescriptorType         5

        bEndpointAddress     0x81  EP 1 IN

        bmAttributes            3

          Transfer Type            Interrupt

          Synch Type               None

          Usage Type               Data

        wMaxPacketSize     0x0002  1x 2 bytes

        bInterval             255

Hub Descriptor:

  bLength              11

  bDescriptorType      41

  nNbrPorts            10

  wHubCharacteristic 0x0002

    No power switching (usb 1.0)

    Ganged overcurrent protection

  bPwrOn2PwrGood        1 * 2 milli seconds

  bHubContrCurrent      0 milli Ampere

  DeviceRemovable    0x00 0x00

  PortPwrCtrlMask    0xff 0xff

 Hub Port Status:

   Port 1: 0000.0103 power enable connect

   Port 2: 0000.0100 power

   Port 3: 0000.0100 power

   Port 4: 0000.0100 power

   Port 5: 0000.0100 power

   Port 6: 0000.0100 power

   Port 7: 0000.0100 power

   Port 8: 0000.0100 power

   Port 9: 0000.0100 power

   Port 10: 0000.0103 power enable connect

Device Status:     0x0003

  Self Powered

  Remote Wakeup Enabled

Bus 002 Device 003: ID 046d:0a01 Logitech, Inc.

Device Descriptor:

  bLength                18

  bDescriptorType         1

  bcdUSB               1.10

  bDeviceClass            0 (Defined at Interface level)

  bDeviceSubClass         0

  bDeviceProtocol         0

  bMaxPacketSize0         8

  idVendor           0x046d Logitech, Inc.

  idProduct          0x0a01

  bcdDevice           10.13

  iManufacturer           1 Logitech

  iProduct                2 Logitech USB Headset

  iSerial                 0

  bNumConfigurations      1

  Configuration Descriptor:

    bLength                 9

    bDescriptorType         2

    wTotalLength          318

    bNumInterfaces          3

    bConfigurationValue     1

    iConfiguration          0

    bmAttributes         0x80

      (Bus Powered)

    MaxPower              100mA

    Interface Descriptor:

      bLength                 9

      bDescriptorType         4

      bInterfaceNumber        0

      bAlternateSetting       0

      bNumEndpoints           0

      bInterfaceClass         1 Audio

      bInterfaceSubClass      1 Control Device

      bInterfaceProtocol      0

      iInterface              0

      AudioControl Interface Descriptor:

        bLength                10

        bDescriptorType        36

        bDescriptorSubtype      1 (HEADER)

        bcdADC               1.00

        wTotalLength          117

        bInCollection           2

        baInterfaceNr( 0)       1

        baInterfaceNr( 1)       2

      AudioControl Interface Descriptor:

        bLength                12

        bDescriptorType        36

        bDescriptorSubtype      2 (INPUT_TERMINAL)

        bTerminalID            13

        wTerminalType      0x0201 Microphone

        bAssocTerminal          0

        bNrChannels             1

        wChannelConfig     0x0001

          Left Front (L)

        iChannelNames           0

        iTerminal               0

      AudioControl Interface Descriptor:

        bLength                 9

        bDescriptorType        36

        bDescriptorSubtype      6 (FEATURE_UNIT)

        bUnitID                 6

        bSourceID              13

        bControlSize            1

        bmaControls( 0)      0x03

          Mute

          Volume

        bmaControls( 1)      0x00

        iFeature                0

      AudioControl Interface Descriptor:

        bLength                12

        bDescriptorType        36

        bDescriptorSubtype      2 (INPUT_TERMINAL)

        bTerminalID            12

        wTerminalType      0x0101 USB Streaming

        bAssocTerminal          0

        bNrChannels             2

        wChannelConfig     0x0003

          Left Front (L)

          Right Front (R)

        iChannelNames           0

        iTerminal               0

      AudioControl Interface Descriptor:

        bLength                13

        bDescriptorType        36

        bDescriptorSubtype      4 (MIXER_UNIT)

        bUnitID                 9

        bNrInPins               2

        baSourceID( 0)         12

        baSourceID( 1)          6

        bNrChannels             2

        wChannelConfig     0x0003

          Left Front (L)

          Right Front (R)

        iChannelNames           0

        bmControls         0x00

        iMixer                  0

      AudioControl Interface Descriptor:

        bLength                10

        bDescriptorType        36

        bDescriptorSubtype      6 (FEATURE_UNIT)

        bUnitID                 1

        bSourceID               9

        bControlSize            1

        bmaControls( 0)      0x01

          Mute

        bmaControls( 1)      0x02

          Volume

        bmaControls( 2)      0x02

          Volume

        iFeature                0

      AudioControl Interface Descriptor:

        bLength                 9

        bDescriptorType        36

        bDescriptorSubtype      3 (OUTPUT_TERMINAL)

        bTerminalID            14

        wTerminalType      0x0301 Speaker

        bAssocTerminal          0

        bSourceID               1

        iTerminal               0

      AudioControl Interface Descriptor:

        bLength                12

        bDescriptorType        36

        bDescriptorSubtype      2 (INPUT_TERMINAL)

        bTerminalID            11

        wTerminalType      0x0201 Microphone

        bAssocTerminal          0

        bNrChannels             1

        wChannelConfig     0x0001

          Left Front (L)

        iChannelNames           0

        iTerminal               0

      AudioControl Interface Descriptor:

        bLength                 9

        bDescriptorType        36

        bDescriptorSubtype      6 (FEATURE_UNIT)

        bUnitID                 2

        bSourceID              11

        bControlSize            1

        bmaControls( 0)      0x03

          Mute

          Volume

        bmaControls( 1)      0x00

        iFeature                0

      AudioControl Interface Descriptor:

        bLength                12

        bDescriptorType        36

        bDescriptorSubtype      4 (MIXER_UNIT)

        bUnitID                 7

        bNrInPins               1

        baSourceID( 0)          2

        bNrChannels             1

        wChannelConfig     0x0001

          Left Front (L)

        iChannelNames           0

        bmControls         0x00

        iMixer                  0

      AudioControl Interface Descriptor:

        bLength                 9

        bDescriptorType        36

        bDescriptorSubtype      3 (OUTPUT_TERMINAL)

        bTerminalID            10

        wTerminalType      0x0101 USB Streaming

        bAssocTerminal          0

        bSourceID               7

        iTerminal               0

    Interface Descriptor:

      bLength                 9

      bDescriptorType         4

      bInterfaceNumber        1

      bAlternateSetting       0

      bNumEndpoints           0

      bInterfaceClass         1 Audio

      bInterfaceSubClass      2 Streaming

      bInterfaceProtocol      0

      iInterface              0

    Interface Descriptor:

      bLength                 9

      bDescriptorType         4

      bInterfaceNumber        1

      bAlternateSetting       1

      bNumEndpoints           1

      bInterfaceClass         1 Audio

      bInterfaceSubClass      2 Streaming

      bInterfaceProtocol      0

      iInterface              0

      AudioStreaming Interface Descriptor:

        bLength                 7

        bDescriptorType        36

        bDescriptorSubtype      1 (AS_GENERAL)

        bTerminalLink          12

        bDelay                  1 frames

        wFormatTag              1 PCM

      AudioStreaming Interface Descriptor:

        bLength                23

        bDescriptorType        36

        bDescriptorSubtype      2 (FORMAT_TYPE)

        bFormatType             1 (FORMAT_TYPE_I)

        bNrChannels             2

        bSubframeSize           2

        bBitResolution         16

        bSamFreqType            5 Discrete

        tSamFreq[ 0]         8000

        tSamFreq[ 1]        11025

        tSamFreq[ 2]        22050

        tSamFreq[ 3]        44100

        tSamFreq[ 4]        48000

      Endpoint Descriptor:

        bLength                 9

        bDescriptorType         5

        bEndpointAddress     0x01  EP 1 OUT

        bmAttributes            9

          Transfer Type            Isochronous

          Synch Type               Adaptive

          Usage Type               Data

        wMaxPacketSize     0x00c0  1x 192 bytes

        bInterval               1

        bRefresh                0

        bSynchAddress           0

        AudioControl Endpoint Descriptor:

          bLength                 7

          bDescriptorType        37

          bDescriptorSubtype      1 (EP_GENERAL)

          bmAttributes         0x01

            Sampling Frequency

          bLockDelayUnits         0 Undefined

          wLockDelay              0 Undefined

    Interface Descriptor:

      bLength                 9

      bDescriptorType         4

      bInterfaceNumber        1

      bAlternateSetting       2

      bNumEndpoints           1

      bInterfaceClass         1 Audio

      bInterfaceSubClass      2 Streaming

      bInterfaceProtocol      0

      iInterface              0

      AudioStreaming Interface Descriptor:

        bLength                 7

        bDescriptorType        36

        bDescriptorSubtype      1 (AS_GENERAL)

        bTerminalLink          12

        bDelay                  1 frames

        wFormatTag              1 PCM

      AudioStreaming Interface Descriptor:

        bLength                23

        bDescriptorType        36

        bDescriptorSubtype      2 (FORMAT_TYPE)

        bFormatType             1 (FORMAT_TYPE_I)

        bNrChannels             1

        bSubframeSize           2

        bBitResolution         16

        bSamFreqType            5 Discrete

        tSamFreq[ 0]         8000

        tSamFreq[ 1]        11025

        tSamFreq[ 2]        22050

        tSamFreq[ 3]        44100

        tSamFreq[ 4]        48000

      Endpoint Descriptor:

        bLength                 9

        bDescriptorType         5

        bEndpointAddress     0x01  EP 1 OUT

        bmAttributes            9

          Transfer Type            Isochronous

          Synch Type               Adaptive

          Usage Type               Data

        wMaxPacketSize     0x0060  1x 96 bytes

        bInterval               1

        bRefresh                0

        bSynchAddress           0

        AudioControl Endpoint Descriptor:

          bLength                 7

          bDescriptorType        37

          bDescriptorSubtype      1 (EP_GENERAL)

          bmAttributes         0x01

            Sampling Frequency

          bLockDelayUnits         0 Undefined

          wLockDelay              0 Undefined

    Interface Descriptor:

      bLength                 9

      bDescriptorType         4

      bInterfaceNumber        2

      bAlternateSetting       0

      bNumEndpoints           0

      bInterfaceClass         1 Audio

      bInterfaceSubClass      2 Streaming

      bInterfaceProtocol      0

      iInterface              0

    Interface Descriptor:

      bLength                 9

      bDescriptorType         4

      bInterfaceNumber        2

      bAlternateSetting       1

      bNumEndpoints           1

      bInterfaceClass         1 Audio

      bInterfaceSubClass      2 Streaming

      bInterfaceProtocol      0

      iInterface              0

      AudioStreaming Interface Descriptor:

        bLength                 7

        bDescriptorType        36

        bDescriptorSubtype      1 (AS_GENERAL)

        bTerminalLink          10

        bDelay                  0 frames

        wFormatTag              1 PCM

      AudioStreaming Interface Descriptor:

        bLength                23

        bDescriptorType        36

        bDescriptorSubtype      2 (FORMAT_TYPE)

        bFormatType             1 (FORMAT_TYPE_I)

        bNrChannels             1

        bSubframeSize           2

        bBitResolution         16

        bSamFreqType            5 Discrete

        tSamFreq[ 0]         8000

        tSamFreq[ 1]        11025

        tSamFreq[ 2]        22050

        tSamFreq[ 3]        44100

        tSamFreq[ 4]        48000

      Endpoint Descriptor:

        bLength                 9

        bDescriptorType         5

        bEndpointAddress     0x84  EP 4 IN

        bmAttributes            9

          Transfer Type            Isochronous

          Synch Type               Adaptive

          Usage Type               Data

        wMaxPacketSize     0x0060  1x 96 bytes

        bInterval               1

        bRefresh                0

        bSynchAddress           0

        AudioControl Endpoint Descriptor:

          bLength                 7

          bDescriptorType        37

          bDescriptorSubtype      1 (EP_GENERAL)

          bmAttributes         0x01

            Sampling Frequency

          bLockDelayUnits         2 Decoded PCM samples

          wLockDelay              1 Decoded PCM samples

Device Status:     0x0000

  (Bus Powered)

Bus 002 Device 002: ID 0553:0002 STMicroelectronics Imaging Division (VLSI Vision) CPiA WebCam

Device Descriptor:

  bLength                18

  bDescriptorType         1

  bcdUSB               1.00

  bDeviceClass            0 (Defined at Interface level)

  bDeviceSubClass         0

  bDeviceProtocol         0

  bMaxPacketSize0         8

  idVendor           0x0553 STMicroelectronics Imaging Division (VLSI Vision)

  idProduct          0x0002 CPiA WebCam

  bcdDevice            1.00

  iManufacturer           0

  iProduct                1 USB Camera

  iSerial                 0

  bNumConfigurations      1

  Configuration Descriptor:

    bLength                 9

    bDescriptorType         2

    wTotalLength           73

    bNumInterfaces          1

    bConfigurationValue     1

    iConfiguration          0

    bmAttributes         0x80

      (Bus Powered)

    MaxPower              250mA

    Interface Descriptor:

      bLength                 9

      bDescriptorType         4

      bInterfaceNumber        0

      bAlternateSetting       0

      bNumEndpoints           1

      bInterfaceClass       255 Vendor Specific Class

      bInterfaceSubClass      0

      bInterfaceProtocol    255

      iInterface              0

      Endpoint Descriptor:

        bLength                 7

        bDescriptorType         5

        bEndpointAddress     0x81  EP 1 IN

        bmAttributes            1

          Transfer Type            Isochronous

          Synch Type               None

          Usage Type               Data

        wMaxPacketSize     0x0000  1x 0 bytes

        bInterval               1

    Interface Descriptor:

      bLength                 9

      bDescriptorType         4

      bInterfaceNumber        0

      bAlternateSetting       1

      bNumEndpoints           1

      bInterfaceClass       255 Vendor Specific Class

      bInterfaceSubClass      0

      bInterfaceProtocol    255

      iInterface              0

      Endpoint Descriptor:

        bLength                 7

        bDescriptorType         5

        bEndpointAddress     0x81  EP 1 IN

        bmAttributes            1

          Transfer Type            Isochronous

          Synch Type               None

          Usage Type               Data

        wMaxPacketSize     0x01c0  1x 448 bytes

        bInterval               1

    Interface Descriptor:

      bLength                 9

      bDescriptorType         4

      bInterfaceNumber        0

      bAlternateSetting       2

      bNumEndpoints           1

      bInterfaceClass       255 Vendor Specific Class

      bInterfaceSubClass      0

      bInterfaceProtocol    255

      iInterface              0

      Endpoint Descriptor:

        bLength                 7

        bDescriptorType         5

        bEndpointAddress     0x81  EP 1 IN

        bmAttributes            1

          Transfer Type            Isochronous

          Synch Type               None

          Usage Type               Data

        wMaxPacketSize     0x02c0  1x 704 bytes

        bInterval               1

    Interface Descriptor:

      bLength                 9

      bDescriptorType         4

      bInterfaceNumber        0

      bAlternateSetting       3

      bNumEndpoints           1

      bInterfaceClass       255 Vendor Specific Class

      bInterfaceSubClass      0

      bInterfaceProtocol    255

      iInterface              0

      Endpoint Descriptor:

        bLength                 7

        bDescriptorType         5

        bEndpointAddress     0x81  EP 1 IN

        bmAttributes            1

          Transfer Type            Isochronous

          Synch Type               None

          Usage Type               Data

        wMaxPacketSize     0x03c0  1x 960 bytes

        bInterval               1

Device Status:     0x0000

  (Bus Powered)

Bus 001 Device 001: ID 0000:0000

Device Descriptor:

  bLength                18

  bDescriptorType         1

  bcdUSB               2.00

  bDeviceClass            9 Hub

  bDeviceSubClass         0 Unused

  bDeviceProtocol         1 Single TT

  bMaxPacketSize0        64

  idVendor           0x0000

  idProduct          0x0000

  bcdDevice            2.06

  iManufacturer           3 Linux 2.6.22-gentoo-r8 ehci_hcd

  iProduct                2 EHCI Host Controller

  iSerial                 1 0000:00:02.1

  bNumConfigurations      1

  Configuration Descriptor:

    bLength                 9

    bDescriptorType         2

    wTotalLength           25

    bNumInterfaces          1

    bConfigurationValue     1

    iConfiguration          0

    bmAttributes         0xe0

      Self Powered

      Remote Wakeup

    MaxPower                0mA

    Interface Descriptor:

      bLength                 9

      bDescriptorType         4

      bInterfaceNumber        0

      bAlternateSetting       0

      bNumEndpoints           1

      bInterfaceClass         9 Hub

      bInterfaceSubClass      0 Unused

      bInterfaceProtocol      0

      iInterface              0

      Endpoint Descriptor:

        bLength                 7

        bDescriptorType         5

        bEndpointAddress     0x81  EP 1 IN

        bmAttributes            3

          Transfer Type            Interrupt

          Synch Type               None

          Usage Type               Data

        wMaxPacketSize     0x0004  1x 4 bytes

        bInterval              12

Hub Descriptor:

  bLength              11

  bDescriptorType      41

  nNbrPorts            10

  wHubCharacteristic 0x000a

    No power switching (usb 1.0)

    Per-port overcurrent protection

    TT think time 8 FS bits

  bPwrOn2PwrGood       10 * 2 milli seconds

  bHubContrCurrent      0 milli Ampere

  DeviceRemovable    0x00 0x00

  PortPwrCtrlMask    0xff 0xff

 Hub Port Status:

   Port 1: 0000.0100 power

   Port 2: 0000.0100 power

   Port 3: 0000.0100 power

   Port 4: 0000.0100 power

   Port 5: 0000.0100 power

   Port 6: 0000.0100 power

   Port 7: 0000.0100 power

   Port 8: 0000.0100 power

   Port 9: 0000.0100 power

   Port 10: 0000.0100 power

Device Status:     0x0003

  Self Powered

  Remote Wakeup Enabled

dmesg | grep usb -i

usbcore: registered new interface driver usbfs

usbcore: registered new interface driver hub

usbcore: registered new device driver usb

USB driver for Vision CPiA based cameras v1.2.3

usbcore: registered new interface driver cpia

usbmon: debugfs is not available

ehci_hcd 0000:00:02.1: new USB bus registered, assigned bus number 1

ehci_hcd 0000:00:02.1: USB 2.0 started, EHCI 1.00, driver 10 Dec 2004

usb usb1: configuration #1 chosen from 1 choice

hub 1-0:1.0: USB hub found

ohci_hcd: 2006 August 04 USB 1.1 'Open' Host Controller (OHCI) Driver

ohci_hcd 0000:00:02.0: new USB bus registered, assigned bus number 2

usb usb2: configuration #1 chosen from 1 choice

hub 2-0:1.0: USB hub found

USB Universal Host Controller Interface driver v3.0

usb 2-1: new full speed USB device using ohci_hcd and address 2

usb 2-1: configuration #1 chosen from 1 choice

USB CPiA camera found

usb 2-10: new full speed USB device using ohci_hcd and address 3

usb 2-10: configuration #1 chosen from 1 choice

usbcore: registered new interface driver usblp

drivers/usb/class/usblp.c: v0.13: USB Printer Device Class driver

Initializing USB Mass Storage driver...

usbcore: registered new interface driver usb-storage

USB Mass Storage support registered.

usbcore: registered new interface driver usbhid

drivers/hid/usbhid/hid-core.c: v2.6:USB HID core driver

usbcore: registered new interface driver snd-usb-audio

lspci -v | grep usb -i

00:02.0 USB Controller: nVidia Corporation CK804 USB Controller (rev a2) (prog-if 10 [OHCI])

00:02.1 USB Controller: nVidia Corporation CK804 USB Controller (rev a3) (prog-if 20 [EHCI])

----------

## NeddySeagoon

mmatton,

Your webcam and USB headset are on the same USB root hub.  That provides 12Mbit/Sec for all connected devices.

Webcams will use it all ands your USB headset will want about 1.5Mb/sec.

Thats raw data rates, there is packet overhead and time for data to be sent in the other direction to add to that as USB is half duplex.

Connect both devices so they are not in the same Bus number. Thats Bus 002 just now from your lsusb output

----------

## mmatton

How do I get one of them onto the other bus? I've tried both the front ports & the back and they just stay on bus 2.

----------

## NeddySeagoon

mmatton,

Thats surprising.  Post your /proc/bus/usb/devices please so I can see your USB layout.

You can view that directly with usbview.  emerge usbview if you want to try.

As you have a bus 2, you also have a bus 1. 

Normally, each pair of USB connectors are on the same USB bus, so swapping like you have should be enough.

----------

## gentoo_ram

I'm wondering if you're having issues with multiple sound devices.  Let's say the webcam is plugged in first.  The sound might show up as /dev/sound/dsp1.  Then you plug in the mic and it's /dev/sound/dsp2.  But if you plug them in the other way, the sound devices would be switched.  And if your program is set to use /dev/sound/dsp1 then you may have trouble.

So are you having a sound device naming issue or are you really having a USB issue?

----------

## star882

There's 2 USB controllers, but one's for USB 1.1 and the other for USB 2.0. One controller simply can't handle both USB1.1 devices at the same time.

The workaround is to buy a cheap USB 2.0 hub, plug it into a port, and plug the webcam into the hub. That will add another TT to form another 1.1 bus on the 2.0 bus.

----------

## NeddySeagoon

star882,

Close but no cigar.  USB 2 controllers can fall back to cope with USB 1,1 devices.

We are dealing with two USB 1 devices here.

----------

## star882

 *NeddySeagoon wrote:*   

> star882,
> 
> Close but no cigar.  USB 2 controllers can fall back to cope with USB 1,1 devices.
> 
> We are dealing with two USB 1 devices here.

 

It's more complicated. USB 2.0 controllers (except those with integrated TT hardware) can only work with USB 2.0 devices. However, USB 2.0 controller chips also have a USB 1.1 controller built in for backwards compatibility.

From the kernel config menu option "EHCI HCD":

 *Quote:*   

> EHCI controllers are packaged with "companion" host controllers (OHCI
> 
> or UHCI) to handle USB 1.1 devices connected to root hub ports. Ports
> 
> will connect to EHCI if the device is high speed, otherwise they
> ...

 

Option "Root Hub Transaction Translators":

 *Quote:*   

> Some EHCI chips have vendor-specific extensions to integrate
> 
> transaction translators, so that no OHCI or UHCI companion
> 
> controller is needed.

 

Look here:

 *Quote:*   

> lspci -v | grep usb -i
> 
> 00:02.0 USB Controller: nVidia Corporation CK804 USB Controller (rev a2) (prog-if 10 [OHCI])
> 
> 00:02.1 USB Controller: nVidia Corporation CK804 USB Controller (rev a3) (prog-if 20 [EHCI])

 

There are two USB controllers, but one's for USB 2.0 (EHCI) and the other for USB 1.1 (OHCI). There's only one USB 1.1 controller to handle the USB 1.1 devices.

So a cheap USB 2.0 hub (which has a TT) would likely solve the problem by adding another USB 1.1 bus.

----------

## NeddySeagoon

star882,

The method for achieving backwards compatibility in the hardware can be ignored. Its only important for someone writing device drivers.

The nVidia Corporation CK804 USB Controller provides three OHCI (USB 1.1) root hubs (6 USB sockets in pairs) and a single EHCI (USB 2.0) controller that can control any combination of the USB 1.1 root hubs in USB 2 mode.

Its interesting to note that this user can only find bus 2 on the outside of the PC. There are normally 2 root hubs on the motherboard and another pair left as headers to connect to the USB on the front of the case, so there is something odd here.

Also  gentoo_rams' sound card ordering cannot yet be ruled out.

----------

## mmatton

I'm pretty sure it's not a sound card/device ordering issue. It doesn't matter which order things get plugged in, only which ones are currently in use.

The front USB ports are going to a motherboard header & the back ones are the ones integrated onto the mb.

----------

## NeddySeagoon

mmatton,

And they both show as bus 2 ?

Thats very odd.  Did you give udev time to drop the old device and create the new one before you checked ?

----------

## mmatton

I'd had them hooked up for a while, hours if not a day or two, before I got all that info I posted at the top.

----------

## star882

 *NeddySeagoon wrote:*   

> star882,
> 
> The method for achieving backwards compatibility in the hardware can be ignored. Its only important for someone writing device drivers.
> 
> The nVidia Corporation CK804 USB Controller provides three OHCI (USB 1.1) root hubs (6 USB sockets in pairs) and a single EHCI (USB 2.0) controller that can control any combination of the USB 1.1 root hubs in USB 2 mode.
> ...

 

Each USB 1.1 controller shows up as a separate PCI device.

For example, the system I'm working on has a SiS USB chipset with 1 USB 2.0 controller and 3 USB 1.1 controllers. lspci shows that as:

```
00:03.0 USB Controller: Silicon Integrated Systems [SiS] USB 1.0 Controller (rev 0f)

00:03.1 USB Controller: Silicon Integrated Systems [SiS] USB 1.0 Controller (rev 0f)

00:03.2 USB Controller: Silicon Integrated Systems [SiS] USB 1.0 Controller (rev 0f)

00:03.3 USB Controller: Silicon Integrated Systems [SiS] USB 2.0 Controller
```

Therefore, I think that motherboard has an older or cheaper version of the chip that only has 1 usb 1.1 controller.

----------

## mmatton

The motherboard is a Gigabyte GA-K8NXP-SLI. According to the block diagram, in the manual, the USB ports are handled by the nVIDIA nForce4 SLI chipset. Link to mb manual: http://www.gigabyte.com.tw/Support/Motherboard/Manual_Model.aspx?ProductID=1859

----------

## star882

Don't know if it would help but maybe try a BIOS update?

----------

## NeddySeagoon

mmatton,

You chipset provides 10 USB ports, I expect thats marketing speak for 5 root hubs. or 5 USB 1.1 capable USB busses.

You must be aboe to get your two USB devices on seperate busses.

== edit ==

Your back panel picture shows two lots of Ethernet on top of a pair of USB cconnectors.

Each of these pairs of USB connectors will belong to a root hub. Connect your devices one per 'stack' and check the bus numbers in lsusb.

----------

## mmatton

I just tried all four of the back ports, running lsusb on each and nothing changed but the device number.

----------

## Monkeh

NF4 boards provide only a single, ten port root hub. They're cheap designs. You won't get enough bandwidth on the onboard controller for both a headset and a webcam (or say, a headset and a Logitech G15 keyboard.. been here before). The only way you'll get both working is by buying another USB controller.

----------

## mmatton

That's rather unpleasant, but it's good to know what's going on.

----------

## star882

 *Monkeh wrote:*   

> NF4 boards provide only a single, ten port root hub. They're cheap designs. You won't get enough bandwidth on the onboard controller for both a headset and a webcam (or say, a headset and a Logitech G15 keyboard.. been here before). The only way you'll get both working is by buying another USB controller.

 

Or use a USB 2.0 hub as a TT.

----------

## NeddySeagoon

star882,

Well, I've learned a lot from this thread. Thank you for pointing out this possibility so early in the investigation.

----------

