On Mon, Apr 08, Greg KH wrote:
>
> # This is a BitKeeper generated patch for the following project:
> # Project Name: Linux kernel tree
> # This patch format is intended for GNU patch command version 2.5 or higher.
> # This patch includes the following deltas:
> # ChangeSet 1.389 -> 1.390
> # drivers/usb/uhci.h 1.8 -> 1.9
> # drivers/usb/uhci.c 1.25 -> 1.26
> #
> # The following is the BitKeeper ChangeSet Log
> # --------------------------------------------
> # 02/04/08 [EMAIL PROTECTED] 1.390
> # [PATCH] uhci.c 2.4.19-pre6 cleanup
> #
> # This patch merely cleans up the code a little and doesn't fix any bugs.
> # It makes a couple of code paths a bit easier to understand, removes an
> # unused variable (uhci_list) and some procfs variables when not using
> # procfs.
> # --------------------------------------------
> #
> diff -Nru a/drivers/usb/uhci.c b/drivers/usb/uhci.c
> --- a/drivers/usb/uhci.c Mon Apr 8 09:45:40 2002
> +++ b/drivers/usb/uhci.c Mon Apr 8 09:45:40 2002
> @@ -1622,8 +1622,7 @@
>
> if (urb->status != -EINPROGRESS) {
> info("uhci_transfer_result: called for URB %p not in flight?", urb);
> - spin_unlock_irqrestore(&urb->lock, flags);
> - return;
> + goto out;
> }
>
> switch (usb_pipetype(urb->pipe)) {
I have two questions about this hunk:
- is this a safe code path?
....
/* Remove it from uhci->urb_list */
list_del_init(&urb->urb_list);
out_complete:
uhci_add_complete(urb);
out:
spin_unlock_irqrestore(&urb->lock, flags);
}
The last two lines appear in this patch.
- I get errors when I make this a #if 0:
if (urb->status != -EINPROGRESS) {
info("uhci_transfer_result: called for URB %p not in flight?", urb);
#if 1
spin_unlock_irqrestore(&urb->lock, flags);
return;
#endif
goto out;
}
pre6 gives me this dmesg output and a halfworking bluetooth
kbd/trackpad. (trackpad does not work, some garbage in /dev/input/mice)
usb.c: registered new driver usbdevfs
usb.c: registered new driver hub
uhci.c: USB Universal Host Controller Interface driver v1.1
PCI: Found IRQ 10 for device 00:1d.0
PCI: Setting latency timer of device 00:1d.0 to 64
uhci.c: USB UHCI at I/O 0x1840, IRQ 10
usb.c: new USB bus registered, assigned bus number 1
uhci.c: detected 2 ports
usb.c: kmalloc IF cf7ded60, numif 1
usb.c: new device strings: Mfr=0, Product=2, SerialNumber=1
usb.c: USB device number 1 default language ID 0x0
Product: USB UHCI-alt Root Hub
SerialNumber: 1840
hub.c: USB hub found
hub.c: 2 ports detected
hub.c: standalone hub
hub.c: ganged power switching
hub.c: global over-current protection
hub.c: Port indicators are not supported
hub.c: power on to power good time: 2ms
hub.c: hub controller current requirement: 0mA
hub.c: port removable status: RR
hub.c: local power source is good
hub.c: no over-current condition exists
hub.c: enabling power on all ports
usb.c: hub driver claimed interface cf7ded60
usb.c: kusbd: /sbin/hotplug add 1
PCI: Found IRQ 10 for device 00:1d.1
PCI: Setting latency timer of device 00:1d.1 to 64
uhci.c: USB UHCI at I/O 0x1860, IRQ 10
usb.c: new USB bus registered, assigned bus number 2
uhci.c: detected 2 ports
usb.c: kmalloc IF cf7def00, numif 1
usb.c: new device strings: Mfr=0, Product=2, SerialNumber=1
usb.c: USB device number 1 default language ID 0x0
Product: USB UHCI-alt Root Hub
SerialNumber: 1860
hub.c: USB hub found
hub.c: 2 ports detected
hub.c: standalone hub
hub.c: ganged power switching
hub.c: global over-current protection
hub.c: Port indicators are not supported
hub.c: power on to power good time: 2ms
hub.c: hub controller current requirement: 0mA
hub.c: port removable status: RR
hub.c: local power source is good
hub.c: no over-current condition exists
hub.c: enabling power on all ports
usb.c: hub driver claimed interface cf7def00
usb.c: kusbd: /sbin/hotplug add 1
PCI: Found IRQ 5 for device 00:1d.2
PCI: Sharing IRQ 5 with 00:1f.1
PCI: Sharing IRQ 5 with 02:03.0
PCI: Sharing IRQ 5 with 02:04.1
PCI: Sharing IRQ 5 with 02:05.0
PCI: Setting latency timer of device 00:1d.2 to 64
uhci.c: USB UHCI at I/O 0x1880, IRQ 5
usb.c: new USB bus registered, assigned bus number 3
uhci.c: detected 2 ports
usb.c: kmalloc IF cef851e0, numif 1
usb.c: new device strings: Mfr=0, Product=2, SerialNumber=1
usb.c: USB device number 1 default language ID 0x0
Product: USB UHCI-alt Root Hub
SerialNumber: 1880
hub.c: USB hub found
hub.c: 2 ports detected
hub.c: standalone hub
hub.c: ganged power switching
hub.c: global over-current protection
hub.c: Port indicators are not supported
hub.c: power on to power good time: 2ms
hub.c: hub controller current requirement: 0mA
hub.c: port removable status: RR
hub.c: local power source is good
hub.c: no over-current condition exists
hub.c: enabling power on all ports
usb.c: hub driver claimed interface cef851e0
usb.c: kusbd: /sbin/hotplug add 1
uhci.c: root-hub INT complete: port1: 93 port2: 80 data: 2
hub.c: port 1, portstatus 101, change 1, 12 Mb/s
hub.c: port 1 connection change
hub.c: port 1, portstatus 101, change 1, 12 Mb/s
hub.c: port 1, portstatus 101, change 0, 12 Mb/s
hub.c: port 1, portstatus 101, change 0, 12 Mb/s
hub.c: port 1, portstatus 101, change 0, 12 Mb/s
hub.c: port 1, portstatus 101, change 0, 12 Mb/s
hub.c: port 1, portstatus 103, change 0, 12 Mb/s
hub.c: USB new device connect on bus3/1, assigned device number 2
usb.c: kmalloc IF cefd9160, numif 2
usb.c: skipped 1 class/vendor specific interface descriptors
usb.c: skipped 1 class/vendor specific interface descriptors
usb.c: new device strings: Mfr=1, Product=2, SerialNumber=5
usb.c: USB device number 2 default language ID 0x409
Manufacturer: CST
Product: Blue Tooth Keyboard/Mouse
SerialNumber: CST0001
usb.c: unhandled interfaces on device
usb.c: USB device 2 (vend/prod 0x47b/0x101) is not claimed by any active driver.
Length = 18
DescriptorType = 01
USB version = 1.10
Vendor:Product = 047b:0101
MaxPacketSize0 = 8
NumConfigurations = 1
Device version = 1.02
Device Class:SubClass:Protocol = 00:00:00
Per-interface classes
Configuration:
bLength = 9
bDescriptorType = 02
wTotalLength = 003b
bNumInterfaces = 02
bConfigurationValue = 01
iConfiguration = 00
bmAttributes = a0
MaxPower = 100mA
Interface: 0
Alternate Setting: 0
bLength = 9
bDescriptorType = 04
bInterfaceNumber = 00
bAlternateSetting = 00
bNumEndpoints = 01
bInterface Class:SubClass:Protocol = 03:01:01
iInterface = 03
Endpoint:
bLength = 7
bDescriptorType = 05
bEndpointAddress = 81 (in)
bmAttributes = 03 (Interrupt)
wMaxPacketSize = 0008
bInterval = 05
Interface: 1
Alternate Setting: 0
bLength = 9
bDescriptorType = 04
bInterfaceNumber = 01
bAlternateSetting = 00
bNumEndpoints = 01
bInterface Class:SubClass:Protocol = 03:01:02
iInterface = 04
Endpoint:
bLength = 7
bDescriptorType = 05
bEndpointAddress = 82 (in)
bmAttributes = 03 (Interrupt)
wMaxPacketSize = 0008
bInterval = 05
usb.c: kusbd: /sbin/hotplug add 2
hub.c: port 2, portstatus 100, change 0, 12 Mb/s
T: Bus=03 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2
B: Alloc= 0/900 us ( 0%), #Int= 0, #Iso= 0
D: Ver= 1.00 Cls=09(hub ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
P: Vendor=0000 ProdID=0000 Rev= 0.00
S: Product=USB UHCI-alt Root Hub
S: SerialNumber=1880
C:* #Ifs= 1 Cfg#= 1 Atr=40 MxPwr= 0mA
I: If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub
E: Ad=81(I) Atr=03(Int.) MxPS= 8 Ivl=255ms
T: Bus=03 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 2 Spd=12 MxCh= 0
D: Ver= 1.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
P: Vendor=047b ProdID=0101 Rev= 1.02
S: Manufacturer=CST
S: Product=Blue Tooth Keyboard/Mouse
S: SerialNumber=CST0001
C:* #Ifs= 2 Cfg#= 1 Atr=a0 MxPwr=100mA
I: If#= 0 Alt= 0 #EPs= 1 Cls=03(HID ) Sub=01 Prot=01 Driver=(none)
E: Ad=81(I) Atr=03(Int.) MxPS= 8 Ivl=5ms
I: If#= 1 Alt= 0 #EPs= 1 Cls=03(HID ) Sub=01 Prot=02 Driver=(none)
E: Ad=82(I) Atr=03(Int.) MxPS= 8 Ivl=5ms
T: Bus=02 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2
B: Alloc= 0/900 us ( 0%), #Int= 0, #Iso= 0
D: Ver= 1.00 Cls=09(hub ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
P: Vendor=0000 ProdID=0000 Rev= 0.00
S: Product=USB UHCI-alt Root Hub
S: SerialNumber=1860
C:* #Ifs= 1 Cfg#= 1 Atr=40 MxPwr= 0mA
I: If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub
E: Ad=81(I) Atr=03(Int.) MxPS= 8 Ivl=255ms
T: Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2
B: Alloc= 0/900 us ( 0%), #Int= 0, #Iso= 0
D: Ver= 1.00 Cls=09(hub ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
P: Vendor=0000 ProdID=0000 Rev= 0.00
S: Product=USB UHCI-alt Root Hub
S: SerialNumber=1840
C:* #Ifs= 1 Cfg#= 1 Atr=40 MxPwr= 0mA
I: If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub
E: Ad=81(I) Atr=03(Int.) MxPS= 8 Ivl=255ms
with pre7 I get stall/crc errors:
Same happens with the usb-uhci-2-2.4.19-pre6-patch applied, I tracked it
down to the hunk mentioned above.
usb.c: registered new driver usbdevfs
usb.c: registered new driver hub
uhci.c: USB Universal Host Controller Interface driver v1.1
IRQ for 00:1d.0:0 -> PIRQ 60, mask 0400, excl 0000 -> newirq=10 -> got IRQ 10
PCI: Found IRQ 10 for device 00:1d.0
PCI: Setting latency timer of device 00:1d.0 to 64
uhci.c: USB UHCI at I/O 0x1840, IRQ 10
usb.c: new USB bus registered, assigned bus number 1
uhci.c: detected 2 ports
usb.c: kmalloc IF cf74ae40, numif 1
usb.c: new device strings: Mfr=0, Product=2, SerialNumber=1
usb.c: USB device number 1 default language ID 0x0
Product: USB UHCI-alt Root Hub
SerialNumber: 1840
hub.c: USB hub found
hub.c: 2 ports detected
hub.c: standalone hub
hub.c: ganged power switching
hub.c: global over-current protection
hub.c: Port indicators are not supported
hub.c: power on to power good time: 2ms
hub.c: hub controller current requirement: 0mA
hub.c: port removable status: RR
hub.c: local power source is good
hub.c: no over-current condition exists
hub.c: enabling power on all ports
usb.c: hub driver claimed interface cf74ae40
usb.c: kusbd: /sbin/hotplug add 1
IRQ for 00:1d.1:1 -> PIRQ 63, mask 0400, excl 0000 -> newirq=10 -> got IRQ 10
PCI: Found IRQ 10 for device 00:1d.1
PCI: Setting latency timer of device 00:1d.1 to 64
uhci.c: USB UHCI at I/O 0x1860, IRQ 10
usb.c: new USB bus registered, assigned bus number 2
uhci.c: detected 2 ports
usb.c: kmalloc IF cf74af40, numif 1
usb.c: new device strings: Mfr=0, Product=2, SerialNumber=1
usb.c: USB device number 1 default language ID 0x0
Product: USB UHCI-alt Root Hub
SerialNumber: 1860
hub.c: USB hub found
hub.c: 2 ports detected
hub.c: standalone hub
hub.c: ganged power switching
hub.c: global over-current protection
hub.c: Port indicators are not supported
hub.c: power on to power good time: 2ms
hub.c: hub controller current requirement: 0mA
hub.c: port removable status: RR
hub.c: local power source is good
hub.c: no over-current condition exists
hub.c: enabling power on all ports
usb.c: hub driver claimed interface cf74af40
usb.c: kusbd: /sbin/hotplug add 1
IRQ for 00:1d.2:2 -> PIRQ 62, mask 0060, excl 0000 -> newirq=5 -> got IRQ 5
PCI: Found IRQ 5 for device 00:1d.2
PCI: Sharing IRQ 5 with 00:1f.1
PCI: Sharing IRQ 5 with 02:03.0
PCI: Sharing IRQ 5 with 02:04.1
PCI: Sharing IRQ 5 with 02:05.0
PCI: Setting latency timer of device 00:1d.2 to 64
uhci.c: USB UHCI at I/O 0x1880, IRQ 5
usb.c: new USB bus registered, assigned bus number 3
uhci.c: detected 2 ports
usb.c: kmalloc IF cef73220, numif 1
usb.c: new device strings: Mfr=0, Product=2, SerialNumber=1
usb.c: USB device number 1 default language ID 0x0
Product: USB UHCI-alt Root Hub
SerialNumber: 1880
hub.c: USB hub found
hub.c: 2 ports detected
hub.c: standalone hub
hub.c: ganged power switching
hub.c: global over-current protection
hub.c: Port indicators are not supported
hub.c: power on to power good time: 2ms
hub.c: hub controller current requirement: 0mA
hub.c: port removable status: RR
hub.c: local power source is good
hub.c: no over-current condition exists
hub.c: enabling power on all ports
usb.c: hub driver claimed interface cef73220
usb.c: kusbd: /sbin/hotplug add 1
uhci.c: 1840: suspend_hc
uhci.c: 1860: suspend_hc
uhci.c: root-hub INT complete: port1: 93 port2: 80 data: 2
hub.c: port 1, portstatus 101, change 1, 12 Mb/s
hub.c: port 1 connection change
hub.c: port 1, portstatus 101, change 1, 12 Mb/s
hub.c: port 1, portstatus 101, change 0, 12 Mb/s
hub.c: port 1, portstatus 101, change 0, 12 Mb/s
hub.c: port 1, portstatus 101, change 0, 12 Mb/s
hub.c: port 1, portstatus 101, change 0, 12 Mb/s
hub.c: port 1, portstatus 103, change 0, 12 Mb/s
hub.c: USB new device connect on bus3/1, assigned device number 2
uhci.c: uhci_result_control() failed with status 440000
[cef870c0] link (0ef87062) element (0ef8a1e0)
0: [cef8a1e0] link (0ef8a210) e0 Stalled CRC/Timeo Length=7 MaxLen=7 DT0 EndPt=0
Dev=2, PID=2d(SETUP) (buf=0f74ad20)
1: [cef8a210] link (0ef8a240) e3 SPD Active Length=0 MaxLen=7 DT1 EndPt=0 Dev=2,
PID=69(IN) (buf=0f08a0c0)
2: [cef8a240] link (00000001) e3 IOC Active Length=0 MaxLen=7ff DT1 EndPt=0 Dev=2,
PID=e1(OUT) (buf=00000000)
uhci.c: uhci_result_control() failed with status 440000
[cef870f0] link (0ef87062) element (0ef8a1e0)
0: [cef8a1e0] link (0ef8a210) e0 Stalled CRC/Timeo Length=7 MaxLen=7 DT0 EndPt=0
Dev=2, PID=2d(SETUP) (buf=0f74ad20)
1: [cef8a210] link (0ef8a240) e3 SPD Active Length=0 MaxLen=7 DT1 EndPt=0 Dev=2,
PID=69(IN) (buf=0f08a0c0)
2: [cef8a240] link (00000001) e3 IOC Active Length=0 MaxLen=7ff DT1 EndPt=0 Dev=2,
PID=e1(OUT) (buf=00000000)
uhci.c: uhci_result_control() failed with status 440000
[cef870c0] link (0ef87062) element (0ef8a1e0)
0: [cef8a1e0] link (0ef8a210) e0 Stalled CRC/Timeo Length=7 MaxLen=7 DT0 EndPt=0
Dev=2, PID=2d(SETUP) (buf=0f74ad20)
1: [cef8a210] link (0ef8a240) e3 SPD Active Length=0 MaxLen=7 DT1 EndPt=0 Dev=2,
PID=69(IN) (buf=0f08a0c0)
2: [cef8a240] link (00000001) e3 IOC Active Length=0 MaxLen=7ff DT1 EndPt=0 Dev=2,
PID=e1(OUT) (buf=00000000)
uhci.c: uhci_result_control() failed with status 440000
[cef870f0] link (0ef87062) element (0ef8a1e0)
0: [cef8a1e0] link (0ef8a210) e0 Stalled CRC/Timeo Length=7 MaxLen=7 DT0 EndPt=0
Dev=2, PID=2d(SETUP) (buf=0f74ad20)
1: [cef8a210] link (0ef8a240) e3 SPD Active Length=0 MaxLen=7 DT1 EndPt=0 Dev=2,
PID=69(IN) (buf=0f08a0c0)
2: [cef8a240] link (00000001) e3 IOC Active Length=0 MaxLen=7ff DT1 EndPt=0 Dev=2,
PID=e1(OUT) (buf=00000000)
uhci.c: uhci_result_control() failed with status 440000
[cef870c0] link (0ef87062) element (0ef8a1e0)
0: [cef8a1e0] link (0ef8a210) e0 Stalled CRC/Timeo Length=7 MaxLen=7 DT0 EndPt=0
Dev=2, PID=2d(SETUP) (buf=0f74ad20)
1: [cef8a210] link (0ef8a240) e3 SPD Active Length=0 MaxLen=7 DT1 EndPt=0 Dev=2,
PID=69(IN) (buf=0f08a0c0)
2: [cef8a240] link (00000001) e3 IOC Active Length=0 MaxLen=7ff DT1 EndPt=0 Dev=2,
PID=e1(OUT) (buf=00000000)
usb.c: USB device not responding, giving up (error=-110)
hub.c: port 1, portstatus 103, change 0, 12 Mb/s
hub.c: USB new device connect on bus3/1, assigned device number 3
uhci.c: uhci_result_control() failed with status 440000
[cef870c0] link (0ef87062) element (0ef8a1e0)
0: [cef8a1e0] link (0ef8a210) e0 Stalled CRC/Timeo Length=7 MaxLen=7 DT0 EndPt=0
Dev=3, PID=2d(SETUP) (buf=0f74ad20)
1: [cef8a210] link (0ef8a240) e3 SPD Active Length=0 MaxLen=7 DT1 EndPt=0 Dev=3,
PID=69(IN) (buf=0f08a2c0)
2: [cef8a240] link (00000001) e3 IOC Active Length=0 MaxLen=7ff DT1 EndPt=0 Dev=3,
PID=e1(OUT) (buf=00000000)
uhci.c: uhci_result_control() failed with status 440000
[cef870f0] link (0ef87062) element (0ef8a1e0)
0: [cef8a1e0] link (0ef8a210) e0 Stalled CRC/Timeo Length=7 MaxLen=7 DT0 EndPt=0
Dev=3, PID=2d(SETUP) (buf=0f74ad20)
1: [cef8a210] link (0ef8a240) e3 SPD Active Length=0 MaxLen=7 DT1 EndPt=0 Dev=3,
PID=69(IN) (buf=0f08a2c0)
2: [cef8a240] link (00000001) e3 IOC Active Length=0 MaxLen=7ff DT1 EndPt=0 Dev=3,
PID=e1(OUT) (buf=00000000)
uhci.c: uhci_result_control() failed with status 440000
[cef870c0] link (0ef87062) element (0ef8a1e0)
0: [cef8a1e0] link (0ef8a210) e0 Stalled CRC/Timeo Length=7 MaxLen=7 DT0 EndPt=0
Dev=3, PID=2d(SETUP) (buf=0f74ad20)
1: [cef8a210] link (0ef8a240) e3 SPD Active Length=0 MaxLen=7 DT1 EndPt=0 Dev=3,
PID=69(IN) (buf=0f08a2c0)
2: [cef8a240] link (00000001) e3 IOC Active Length=0 MaxLen=7ff DT1 EndPt=0 Dev=3,
PID=e1(OUT) (buf=00000000)
uhci.c: uhci_result_control() failed with status 440000
[cef870f0] link (0ef87062) element (0ef8a1e0)
0: [cef8a1e0] link (0ef8a210) e0 Stalled CRC/Timeo Length=7 MaxLen=7 DT0 EndPt=0
Dev=3, PID=2d(SETUP) (buf=0f74ad20)
1: [cef8a210] link (0ef8a240) e3 SPD Active Length=0 MaxLen=7 DT1 EndPt=0 Dev=3,
PID=69(IN) (buf=0f08a2c0)
2: [cef8a240] link (00000001) e3 IOC Active Length=0 MaxLen=7ff DT1 EndPt=0 Dev=3,
PID=e1(OUT) (buf=00000000)
uhci.c: uhci_result_control() failed with status 440000
[cef870c0] link (0ef87062) element (0ef8a1e0)
0: [cef8a1e0] link (0ef8a210) e0 Stalled CRC/Timeo Length=7 MaxLen=7 DT0 EndPt=0
Dev=3, PID=2d(SETUP) (buf=0f74ad20)
1: [cef8a210] link (0ef8a240) e3 SPD Active Length=0 MaxLen=7 DT1 EndPt=0 Dev=3,
PID=69(IN) (buf=0f08a2c0)
2: [cef8a240] link (00000001) e3 IOC Active Length=0 MaxLen=7ff DT1 EndPt=0 Dev=3,
PID=e1(OUT) (buf=00000000)
usb.c: USB device not responding, giving up (error=-110)
hub.c: port 2, portstatus 100, change 0, 12 Mb/s
T: Bus=03 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2
B: Alloc= 0/900 us ( 0%), #Int= 0, #Iso= 0
D: Ver= 1.00 Cls=09(hub ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
P: Vendor=0000 ProdID=0000 Rev= 0.00
S: Product=USB UHCI-alt Root Hub
S: SerialNumber=1880
C:* #Ifs= 1 Cfg#= 1 Atr=40 MxPwr= 0mA
I: If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub
E: Ad=81(I) Atr=03(Int.) MxPS= 8 Ivl=255ms
T: Bus=02 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2
B: Alloc= 0/900 us ( 0%), #Int= 0, #Iso= 0
D: Ver= 1.00 Cls=09(hub ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
P: Vendor=0000 ProdID=0000 Rev= 0.00
S: Product=USB UHCI-alt Root Hub
S: SerialNumber=1860
C:* #Ifs= 1 Cfg#= 1 Atr=40 MxPwr= 0mA
I: If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub
E: Ad=81(I) Atr=03(Int.) MxPS= 8 Ivl=255ms
T: Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2
B: Alloc= 0/900 us ( 0%), #Int= 0, #Iso= 0
D: Ver= 1.00 Cls=09(hub ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
P: Vendor=0000 ProdID=0000 Rev= 0.00
S: Product=USB UHCI-alt Root Hub
S: SerialNumber=1840
C:* #Ifs= 1 Cfg#= 1 Atr=40 MxPwr= 0mA
I: If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub
E: Ad=81(I) Atr=03(Int.) MxPS= 8 Ivl=255ms
It is a Siemens Celsius mobile H notebook, is the usb controller really
supported? The bluetooth kbd/trackpad is on hub3 and it does only work
with uhci, usb-uhci gives me error -84. I wonder if something is really
wrong because the trackpad does not work. This is the hexdump output
from an external usb mouse, pressing the mouse button:
siemens:~ # hexdump /dev/input/mice
0000000 0009 0800 0000 0009 0800 0000 0009 0800
0000010 0000 0009 0800 0000 0009 0800 0000 0009
0000020 0800 0000 0009 0800 0000 0009 0800 0000
0000030 0009 0800 0000 0009 0800 0000 0009 0800
0000040 0000 0009 0800 0000 0009 0800 0000 0009
And this from the trackpad:
siemens:~ # hexdump /dev/input/mice
0000000 0008 0809 0800 0008 0809 0800 0008 0809
0000010 0800 0008 0809 0800 0008 0809 0800 0008
0000020 0809 0800 0008 0809 0800 0008 0809 0800
0000030 0008 0809 0800 0008 0809 0800 0008 0809
0000040 0800 0008 0809 0800 0008 0809 0800 0008
0000050 0809 0800 0008 0809 0800 0008 0809 0800
As you can see, it has some more bits set...
00:00.0 Host bridge: Intel Corp. 82830 830 Chipset Host Bridge (rev 02)
Subsystem: Siemens Nixdorf AG: Unknown device 0082
Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping-
SERR- FastB2B-
Status: Cap+ 66Mhz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort-
<MAbort+ >SERR- <PERR-
Latency: 0
Region 0: Memory at e0000000 (32-bit, prefetchable) [size=256M]
Capabilities: [40] #09 [0105]
Capabilities: [a0] AGP version 2.0
Status: RQ=31 SBA+ 64bit- FW+ Rate=x1,x2
Command: RQ=0 SBA- AGP- 64bit- FW+ Rate=x1
00:01.0 PCI bridge: Intel Corp. 82830 830 Chipset AGP Bridge (rev 02) (prog-if 00
[Normal decode])
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping-
SERR+ FastB2B-
Status: Cap- 66Mhz+ UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort-
<MAbort- >SERR- <PERR-
Latency: 96
Bus: primary=00, secondary=01, subordinate=01, sec-latency=64
I/O behind bridge: 0000f000-00000fff
Memory behind bridge: d1000000-d1ffffff
Prefetchable memory behind bridge: f0000000-f7ffffff
BridgeCtl: Parity- SERR- NoISA+ VGA+ MAbort- >Reset- FastB2B-
00:1d.0 USB Controller: Intel Corp. 82801CA/CAM USB (Hub (rev 01) (prog-if 00 [UHCI])
Subsystem: Siemens Nixdorf AG: Unknown device 0082
Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping-
SERR- FastB2B-
Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort-
<MAbort- >SERR- <PERR-
Latency: 0
Interrupt: pin A routed to IRQ 10
Region 4: I/O ports at 1840 [size=32]
00:1d.1 USB Controller: Intel Corp. 82801CA/CAM USB (Hub (rev 01) (prog-if 00 [UHCI])
Subsystem: Siemens Nixdorf AG: Unknown device 0082
Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping-
SERR- FastB2B-
Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort-
<MAbort- >SERR- <PERR-
Latency: 0
Interrupt: pin B routed to IRQ 10
Region 4: I/O ports at 1860 [size=32]
00:1d.2 USB Controller: Intel Corp. 82801CA/CAM USB (Hub (rev 01) (prog-if 00 [UHCI])
Subsystem: Siemens Nixdorf AG: Unknown device 0082
Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping-
SERR- FastB2B-
Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort-
<MAbort- >SERR- <PERR-
Latency: 0
Interrupt: pin C routed to IRQ 5
Region 4: I/O ports at 1880 [size=32]
00:1e.0 PCI bridge: Intel Corp. 82801BAM/CAM PCI Bridge (rev 41) (prog-if 00 [Normal
decode])
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping-
SERR+ FastB2B-
Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- <TAbort-
<MAbort- >SERR- <PERR-
Latency: 0
Bus: primary=00, secondary=02, subordinate=02, sec-latency=64
I/O behind bridge: 00003000-00004fff
Memory behind bridge: d2000000-d27fffff
Prefetchable memory behind bridge: fff00000-000fffff
BridgeCtl: Parity- SERR- NoISA+ VGA- MAbort- >Reset- FastB2B-
00:1f.0 ISA bridge: Intel Corp. 82801CAM ISA Bridge (LPC) (rev 01)
Control: I/O+ Mem+ BusMaster+ SpecCycle+ MemWINV- VGASnoop- ParErr- Stepping-
SERR- FastB2B-
Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort-
<MAbort- >SERR- <PERR-
Latency: 0
00:1f.1 IDE interface: Intel Corp. 82801CAM IDE U100 (rev 01) (prog-if 8a [Master SecP
PriP])
Subsystem: Siemens Nixdorf AG: Unknown device 0082
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping-
SERR- FastB2B-
Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort-
<MAbort- >SERR- <PERR-
Latency: 0
Interrupt: pin A routed to IRQ 5
Region 0: I/O ports at 01f0 [size=8]
Region 1: I/O ports at 03f4
Region 2: I/O ports at 0170 [size=8]
Region 3: I/O ports at 0374
Region 4: I/O ports at 1800 [size=16]
Region 5: Memory at d0000000 (32-bit, non-prefetchable) [size=1K]
00:1f.3 SMBus: Intel Corp. 82801CA/CAM SMBus (rev 01)
Subsystem: Siemens Nixdorf AG: Unknown device 0082
Control: I/O+ Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping-
SERR- FastB2B-
Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort-
<MAbort- >SERR- <PERR-
Interrupt: pin B routed to IRQ 5
Region 4: I/O ports at 1820 [size=32]
00:1f.6 Modem: Intel Corp. 82801CA/CAM AC'97 Modem (rev 01) (prog-if 00 [Generic])
Subsystem: Unknown device 5349:4c21
Control: I/O+ Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping-
SERR- FastB2B-
Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort-
<MAbort- >SERR- <PERR-
Interrupt: pin B routed to IRQ 5
Region 0: I/O ports at 2000 [size=256]
Region 1: I/O ports at 1c00 [size=128]
01:00.0 VGA compatible controller: nVidia Corporation NV11 (GeForce2 MXR) (rev b2)
(prog-if 00 [VGA])
Subsystem: Siemens Nixdorf AG: Unknown device 0082
Control: I/O+ Mem+ BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping-
SERR- FastB2B-
Status: Cap+ 66Mhz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort-
<MAbort- >SERR- <PERR-
Interrupt: pin A routed to IRQ 5
Region 0: Memory at d1000000 (32-bit, non-prefetchable) [size=16M]
Region 1: Memory at f0000000 (32-bit, prefetchable) [size=128M]
Expansion ROM at <unassigned> [disabled] [size=64K]
Capabilities: [60] Power Management version 2
Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA
PME(D0-,D1-,D2-,D3hot-,D3cold-)
Status: D0 PME-Enable- DSel=0 DScale=0 PME-
Capabilities: [44] AGP version 2.0
Status: RQ=31 SBA- 64bit- FW- Rate=x1,x2
Command: RQ=0 SBA- AGP- 64bit- FW- Rate=<none>
02:03.0 Multimedia audio controller: ESS Technology ES1988 Allegro-1 (rev 12)
Subsystem: Siemens Nixdorf AG: Unknown device 0082
Control: I/O- Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping-
SERR- FastB2B-
Status: Cap+ 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort-
<MAbort- >SERR- <PERR-
Interrupt: pin A routed to IRQ 5
Region 0: I/O ports at 3000 [disabled] [size=256]
Capabilities: [c0] Power Management version 2
Flags: PMEClk- DSI+ D1+ D2+ AuxCurrent=0mA
PME(D0-,D1+,D2+,D3hot+,D3cold-)
Status: D0 PME-Enable- DSel=0 DScale=0 PME-
02:04.0 CardBus bridge: O2 Micro, Inc. OZ6933 Cardbus Controller (rev 02)
Subsystem: Siemens Nixdorf AG: Unknown device 0082
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping-
SERR+ FastB2B-
Status: Cap+ 66Mhz- UDF- FastB2B- ParErr- DEVSEL=slow >TAbort- <TAbort-
<MAbort- >SERR- <PERR-
Latency: 64
Interrupt: pin A routed to IRQ 5
Region 0: Memory at d2000000 (32-bit, non-prefetchable) [size=4K]
Bus: primary=02, secondary=04, subordinate=07, sec-latency=0
Memory window 0: 00000000-00000000
Memory window 1: 00000000-00000000
I/O window 0: 00000000-00000003
I/O window 1: 00000000-00000003
BridgeCtl: Parity- SERR- ISA- VGA- MAbort- >Reset- 16bInt- PostWrite-
16-bit legacy interface ports at 0001
02:04.1 CardBus bridge: O2 Micro, Inc. OZ6933 Cardbus Controller (rev 02)
Subsystem: Siemens Nixdorf AG: Unknown device 0082
Control: I/O- Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping-
SERR+ FastB2B-
Status: Cap+ 66Mhz- UDF- FastB2B- ParErr- DEVSEL=slow >TAbort- <TAbort-
<MAbort- >SERR- <PERR-
Interrupt: pin B routed to IRQ 5
Region 0: Memory at d2201000 (32-bit, non-prefetchable) [disabled] [size=4K]
Bus: primary=02, secondary=03, subordinate=03, sec-latency=0
Memory window 0: d2400000-d24ff000 [disabled]
Memory window 1: d2300000-d23ff000 [disabled]
I/O window 0: 00004000-000040ff [disabled]
I/O window 1: 00003c00-00003cff [disabled]
BridgeCtl: Parity- SERR- ISA- VGA- MAbort- >Reset- 16bInt+ PostWrite-
16-bit legacy interface ports at 0001
02:05.0 CardBus bridge: O2 Micro, Inc.: Unknown device 6972
Subsystem: Siemens Nixdorf AG: Unknown device 0082
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping-
SERR+ FastB2B-
Status: Cap+ 66Mhz- UDF- FastB2B- ParErr- DEVSEL=slow >TAbort- <TAbort-
<MAbort- >SERR- <PERR-
Latency: 64
Interrupt: pin A routed to IRQ 5
Region 0: Memory at d2001000 (32-bit, non-prefetchable) [size=4K]
Bus: primary=02, secondary=08, subordinate=0b, sec-latency=0
Memory window 0: 00000000-00000000
Memory window 1: 00000000-00000000
I/O window 0: 00000000-00000003
I/O window 1: 00000000-00000003
BridgeCtl: Parity- SERR- ISA- VGA- MAbort- >Reset- 16bInt- PostWrite-
16-bit legacy interface ports at 0001
02:06.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139 (rev 10)
Subsystem: Action Tec Electronics Inc: Unknown device 6025
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping-
SERR+ FastB2B-
Status: Cap+ 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort-
<MAbort- >SERR- <PERR-
Latency: 64 (8000ns min, 16000ns max)
Interrupt: pin A routed to IRQ 5
Region 0: I/O ports at 4c00 [size=256]
Region 1: Memory at d2203000 (32-bit, non-prefetchable) [size=256]
Expansion ROM at <unassigned> [disabled] [size=128K]
Capabilities: [50] Power Management version 2
Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=375mA
PME(D0-,D1+,D2+,D3hot+,D3cold+)
Status: D0 PME-Enable- DSel=0 DScale=0 PME-
Gruss Olaf
--
$ man clone
BUGS
Main feature not yet implemented...
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel