Subject: kern/32199: GENERIC kernel uhci ports unreliable, Dell Precision 380
To: None <kern-bug-people@netbsd.org, gnats-admin@netbsd.org,>
From: None <srp@tworoads.net>
List: netbsd-bugs
Date: 11/30/2005 17:00:00
>Number:         32199
>Category:       kern
>Synopsis:       GENERIC kernel uhci USB ports unreliable, Dell Precision 380
>Confidential:   no
>Severity:       serious
>Priority:       high
>Responsible:    kern-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Wed Nov 30 17:00:00 +0000 2005
>Originator:     Scott Presnell
>Release:        NetBSD 3.0_RC4
>Organization:
	Self
>Environment:
NetBSD 3.0_RC4 (ARAGON) #0: Tue Nov 29 10:01:55 PST 2005 root@low.tworoads.net:/usr/src/sys/arch/i386/compile/ARAGON
Architecture: i386
Machine: i386
>Description:

In a GENERIC kernel With ehci disabled, only some uhci ports of a multi USB
system are active. Those that are active will attach and detatch devices
once or twice, then become unresponsive.

The only BIOS controls are whether the USB ports are on or off.
There are no BIOS contols for setting/unsetting PnP OS.


=== dmesg == 


NetBSD 3.0_RC4 (ARAGON) #0: Tue Nov 29 10:01:55 PST 2005
root@low.tworoads.net:/usr/src/sys/arch/i386/compile/ARAGON
total memory = 2046 MB
avail memory = 1994 MB
BIOS32 rev. 0 found at 0xffe90
mainbus0 (root)
cpu0 at mainbus0: (uniprocessor)
cpu0: Intel (686-class), 2992.64 MHz, id 0xf41
cpu0: features bfebfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR>
cpu0: features bfebfbff<PGE,MCA,CMOV,PAT,PSE36,CFLUSH,DS,ACPI,MMX>
cpu0: features bfebfbff<FXSR,SSE,SSE2,SS,HTT,TM,SBF>
cpu0: features2 641d<SSE3,MONITOR,DS-CPL,CID,xTPR>
cpu0: features3 20100000<EM64T>
cpu0: "Intel(R) Pentium(R) 4 CPU 3.00GHz"
cpu0: I-cache 12K uOp cache 8-way
cpu0: L2 cache 1 MB 64B/line 8-way
cpu0: ITLB 4K/4M: 64 entries
cpu0: DTLB 4K/4M: 64 entries
cpu0: using thermal monitor 1
cpu0: 32 page colors
pci0 at mainbus0 bus 0: configuration mode 1
pci0: i/o space, memory space enabled, rd/line, rd/mult, wr/inv ok
pchb0 at pci0 dev 0 function 0
pchb0: Intel product 0x2774 (rev. 0x00)
ppb0 at pci0 dev 1 function 0: Intel product 0x2775 (rev. 0x00)
pci1 at ppb0 bus 1
pci1: i/o space, memory space enabled, rd/line, wr/inv ok
vga1 at pci1 dev 0 function 0: Nvidia product 0x0165 (rev. 0xa1)
vga1: WARNING: ignoring 64-bit BAR @ 0x14
vga1: WARNING: ignoring 64-bit BAR @ 0x1c
wsdisplay0 at vga1 kbdmux 1: console (80x25, vt100 emulation)
wsmux1: connecting to wsdisplay0
ppb1 at pci0 dev 28 function 0: Intel 82801GB/GR PCI Express Port #1 (rev. 0x01)
pci2 at ppb1 bus 2
pci2: i/o space, memory space enabled, rd/line, wr/inv ok
ppb2 at pci0 dev 28 function 4: Intel 82801GB/GR PCI Express Port #5 (rev. 0x01)
pci3 at ppb2 bus 3
pci3: i/o space, memory space enabled, rd/line, wr/inv ok
ppb3 at pci0 dev 28 function 5: Intel 82801GB/GR PCI Express Port #6 (rev. 0x01)
pci4 at ppb3 bus 4
pci4: i/o space, memory space enabled, rd/line, wr/inv ok
bge0 at pci4 dev 0 function 0: Broadcom BCM5751 Gigabit Ethernet
bge0: interrupting at irq 10
bge0: ASIC BCM5750 A1 (0x4001), Ethernet address 00:12:3f:72:25:5d
brgphy0 at bge0 phy 1: BCM5750 1000BASE-T media interface, rev. 0
brgphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseT, 1000baseT-FDX, auto
uhci0 at pci0 dev 29 function 0: Intel 82801GB/GR USB UHCI Controller (rev. 0x01)
uhci0: interrupting at irq 9
usb0 at uhci0: USB revision 1.0
uhub0 at usb0
uhub0: Intel UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub0: 2 ports with 2 removable, self powered
uhci1 at pci0 dev 29 function 1: Intel 82801GB/GR USB UHCI Controller (rev. 0x01)
uhci1: interrupting at irq 5
usb1 at uhci1: USB revision 1.0
uhub1 at usb1
uhub1: Intel UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub1: 2 ports with 2 removable, self powered
uhci2 at pci0 dev 29 function 2: Intel 82801GB/GR USB UHCI Controller (rev. 0x01)
uhci2: interrupting at irq 3
usb2 at uhci2: USB revision 1.0
uhub2 at usb2
uhub2: Intel UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub2: 2 ports with 2 removable, self powered
uhci3 at pci0 dev 29 function 3: Intel 82801GB/GR USB UHCI Controller (rev. 0x01)
uhci3: interrupting at irq 10
usb3 at uhci3: USB revision 1.0
uhub3 at usb3
uhub3: Intel UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub3: 2 ports with 2 removable, self powered
Intel 82801GB/GR USB EHCI Controller (USB serial bus, interface 0x20, revision 0x01) at pci0 dev 29 function 7 not configured
ppb4 at pci0 dev 30 function 0: Intel 82801BA Hub-PCI Bridge (rev. 0xe1)
pci5 at ppb4 bus 5
pci5: i/o space, memory space enabled
eap0 at pci5 dev 2 function 0: Ensoniq CT5880 CT5880-C (rev. 0x02)
eap0: interrupting at irq 3
eap0: ac97: SigmaTel STAC9708 codec; 18 bit DAC, 18 bit ADC, SigmaTel 3D
eap0: ac97: ext id 80<SDAC>
audio0 at eap0: full duplex, mmap, independent
midi0 at eap0: AudioPCI MIDI UART
bktr0 at pci5 dev 4 function 0
bktr0: interrupting at irq 11
bktr0: Hauppauge Model 44371 B123
bktr0: Detected a MSP3435G-B6 at 0x80
bktr0: Hauppauge WinCast/TV, Philips FR1236 NTSC FM tuner, msp3400c stereo, remote control.
radio0 at bktr0
Brooktree Bt878 Video Capture (Audio Section) (miscellaneous multimedia, revision 0x11) at pci5 dev 4 function 1 not configured
fwohci0 at pci5 dev 5 function 0: Texas Instruments TSB12LV23 IEEE 1394 Host Controller (rev. 0x00)
fwohci0: interrupting at irq 10
fwohci0: OHCI version 1.0 (ROM=1)
fwohci0: No. of Isochronous channels is 4.
fwohci0: EUI64 00:50:42:d1:12:02:fa:44
fwohci0: Phy 1394a available S400, 3 ports.
fwohci0: Link S400, max_rec 2048 bytes.
ieee1394if0 at fwohci0: IEEE1394 bus
fwip0 at ieee1394if0: IP over IEEE1394
fwohci0: Initiate bus reset
pcib0 at pci0 dev 31 function 0
pcib0: Intel 82801GB/GR LPC Interface Bridge (rev. 0x01)
piixide0 at pci0 dev 31 function 1
piixide0: Intel 82801GB/GR IDE Controller (ICH7) (rev. 0x01)
piixide0: bus-master DMA support present
piixide0: primary channel configured to compatibility mode
piixide0: primary channel interrupting at irq 14
atabus0 at piixide0 channel 0
piixide0: secondary channel configured to compatibility mode
piixide0: secondary channel ignored (disabled)
piixide1 at pci0 dev 31 function 2
piixide1: Intel 82801GB/GR Serial ATA/Raid Controller (ICH7) (rev. 0x01)
piixide1: bus-master DMA support present
piixide1: primary channel configured to native-PCI mode
piixide1: using irq 5 for native-PCI interrupt
atabus1 at piixide1 channel 0
piixide1: secondary channel configured to native-PCI mode
atabus2 at piixide1 channel 1
Intel 82801GB/GR SMBus Controller (SMBus serial bus, revision 0x01) at pci0 dev 31 function 3 not configured
isa0 at pcib0
lpt0 at isa0 port 0x378-0x37b irq 7
com0 at isa0 port 0x3f8-0x3ff irq 4: ns16550a, working fifo
pckbc0 at isa0 port 0x60-0x64
pckbd0 at pckbc0 (kbd slot)
pckbc0: using irq 1 for kbd slot
wskbd0 at pckbd0: console keyboard, using wsdisplay0
pcppi0 at isa0 port 0x61
midi1 at pcppi0: PC speaker
sysbeep0 at pcppi0
isapnp0 at isa0 port 0x279: ISA Plug 'n Play device support
npx0 at isa0 port 0xf0-0xff: using exception 16
fdc0 at isa0 port 0x3f0-0x3f7 irq 6 drq 2
isapnp0: no ISA Plug 'n Play devices found
fwohci0: node_id=0xc800ffc0, gen=1, CYCLEMASTER mode
ieee1394if0: 1 nodes, maxhop <= 0, cable IRM = 0 (me)
ieee1394if0: bus manager 0 (me)
fd0 at fdc0 drive 0: 1.44MB, 80 cyl, 2 head, 18 sec
Kernelized RAIDframe activated
atapibus0 at atabus0: 2 targets
cd0 at atapibus0 drive 0: <Memorex DVD16+/-DL4RWlD2, , JWS5> cdrom removable
cd0: 32-bit data port
cd0: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 4 (Ultra/66)
cd1 at atapibus0 drive 1: <TSSTcorpCD-RW   TS-H292B, , DE03> cdrom removable
cd1: 32-bit data port
cd1: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 2 (Ultra/33)
cd0(piixide0:0:0): using PIO mode 4, Ultra-DMA mode 2 (Ultra/33) (using DMA)
cd1(piixide0:0:1): using PIO mode 4, Ultra-DMA mode 2 (Ultra/33) (using DMA)
wd0 at atabus1 drive 0: <WDC WD800JD-75LSA0>
wd0: drive supports 16-sector PIO transfers, LBA48 addressing
wd0: 76293 MB, 155009 cyl, 16 head, 63 sec, 512 bytes/sect x 156250000 sectors
wd0: 32-bit data port
wd0: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 6 (Ultra/133)
wd1 at atabus1 drive 1: <Maxtor 6L200S0>
wd1: drive supports 16-sector PIO transfers, LBA48 addressing
wd1: 189 GB, 395136 cyl, 16 head, 63 sec, 512 bytes/sect x 398297088 sectors
wd1: 32-bit data port
wd1: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 6 (Ultra/133)
wd0(piixide1:0:0): using PIO mode 4, Ultra-DMA mode 6 (Ultra/133) (using DMA)
wd1(piixide1:0:1): using PIO mode 4, Ultra-DMA mode 6 (Ultra/133) (using DMA)
uhub4 at uhub1 port 2
uhub4: Texas Instruments TUSB2046 hub, class 9/0, rev 1.10/1.25, addr 2
uhub4: 4 ports with 4 removable, self powered
uhidev0 at uhub2 port 1 configuration 1 interface 0
uhidev0: Microsoft Microsoft 5-Button Mouse with IntelliEye(TM), rev 1.10/3.00, addr 2, iclass 3/1
ums0 at uhidev0: 5 buttons and Z dir.
wsmouse0 at ums0 mux 0
uhidev1 at uhub2 port 2 configuration 1 interface 0
uhidev1: Dell Dell USB Keyboard, rev 1.10/2.00, addr 3, iclass 3/1
ukbd0 at uhidev1
wskbd1 at ukbd0 mux 1
wskbd1: connecting to wsdisplay0
boot device: wd1
root on wd1a dumps on wd1b
root file system type: ffs
wsdisplay0: screen 1 added (80x25, vt100 emulation)
wsdisplay0: screen 2 added (80x25, vt100 emulation)
wsdisplay0: screen 3 added (80x25, vt100 emulation)
wsdisplay0: screen 4 added (80x25, vt100 emulation)


ugen0 at uhub4 port 4
ugen0: OLYMPU C-3000ZOOM, rev 1.10/1.00, addr 3
ugen0: at uhub4 port 4 (addr 3) disconnected
ugen0 detached

ugen0 at uhub3 port 2
ugen0: OLYMPU C-3000ZOOM, rev 1.10/1.00, addr 2
ugen0: at uhub3 port 2 (addr 2) disconnected
ugen0 detached

ugen0 at uhub0 port 2
ugen0: OLYMPU C-3000ZOOM, rev 1.10/1.00, addr 2
ugen0: at uhub0 port 2 (addr 2) disconnected
ugen0 detached

ugen0 at uhub4 port 4
ugen0: OLYMPU C-3000ZOOM, rev 1.10/1.00, addr 3
ugen0: at uhub4 port 4 (addr 3) disconnected
ugen0 detached

ugen0 at uhub4 port 4
ugen0: OLYMPU C-3000ZOOM, rev 1.10/1.00, addr 3
ugen0: at uhub4 port 4 (addr 3) disconnected
ugen0 detached

>How-To-Repeat:

Build GENERIC kernel -ehci; boot; use USB devics.

>Fix:

USB ports are more reliable under ACPI -ehci