Bug 62124

Summary: Skipjack: USB not detected/configured during install
Product: [Retired] Red Hat Linux Reporter: Wendy Hung <wendyh>
Component: kernelAssignee: Arjan van de Ven <arjanv>
Status: CLOSED RAWHIDE QA Contact: Brock Organ <borgan>
Severity: medium Docs Contact:
Priority: medium    
Version: 7.3CC: notting, rlandry, sdonald
Target Milestone: ---   
Target Release: ---   
Hardware: i386   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2002-04-13 09:14:52 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 61901    
Attachments:
Description Flags
hwconf before running kudzu
none
output of lspci -v
none
output of lspci -v with vmlinuz-2.4.18-0.4BOOT
none
output of 'kudzu -p -b pci' under BOOT kernel
none
output from dmidecode none

Description Wendy Hung 2002-03-27 18:56:51 UTC
Description of problem:
USB controller on IBM xSeries 370 does not appear to be detected or configured 
during the installation. 

Reboot system and Kudzu will detect the USB controller (the description is 
"Intel Corp|82371AB PIIX4 USB"). 

If the machine is rebooted again after this, the correct usb modules 
(usbcore, usb-uhci) are loaded and USB devices can be detected by kudzu 
and work fine.

However, if the machine is NOT rebooted after the USB controller is detected, 
and an USB keyboard and mouse are plugged in and kudzu is run to detect them, 
the detection fails and several errors are reported in /var/log/messages as 
follows.  If the USB controller is detected during the install, the user 
shouldn't run into this problem.

Mar 26 13:13:58 localhost kernel: usb.c: registered new driver usbdevfs
Mar 26 13:13:58 localhost kernel: usb.c: registered new driver hub
Mar 26 13:13:58 localhost kernel: usb-uhci.c: $Revision: 1.275 $ time 10:10:58 
Mar 13 2002
Mar 26 13:13:58 localhost kernel: usb-uhci.c: High bandwidth mode enabled
Mar 26 13:13:58 localhost kernel: usb-uhci.c: USB UHCI at I/O 0x460, IRQ 49
Mar 26 13:13:58 localhost kernel: usb-uhci.c: Detected 2 ports
Mar 26 13:13:58 localhost kernel: usb.c: new USB bus registered, assigned bus 
number 1
Mar 26 13:13:58 localhost kernel: hub.c: USB hub found
Mar 26 13:13:58 localhost kernel: hub.c: 2 ports detected
Mar 26 13:13:58 localhost kernel: usb-uhci.c: v1.275:USB Universal Host 
Controller Interface driver
Mar 26 13:13:58 localhost kernel: usb.c: USB disconnect on device 1
Mar 26 13:13:59 localhost /etc/hotplug/usb.agent: ... no modules for USB 
product 0/0/0
Mar 26 13:13:59 localhost kernel: hub.c: get_port_status(1) failed (err = -19)
Mar 26 13:14:00 localhost last message repeated 4 times
Mar 26 13:14:00 localhost kernel: hub.c: Cannot enable port 1 of hub 1, 
disabling port.
Mar 26 13:14:00 localhost kernel: hub.c: Maybe the USB cable is bad?
Mar 26 13:14:00 localhost kernel: hub.c: cannot disable port 1 of hub 1 (err = -
19)
Mar 26 13:14:00 localhost kernel: hub.c: get_port_status failed (err = -19)
Mar 26 13:14:00 localhost kernel: hub.c: get_hub_status failed
Mar 26 13:14:00 localhost kernel: hub.c: get_port_status failed (err = -19)
Mar 26 13:14:00 localhost kernel: hub.c: get_port_status failed (err = -19)
Mar 26 13:14:00 localhost kernel: hub.c: get_hub_status failed
Mar 26 13:14:00 localhost kernel: usb.c: USB bus 1 deregistered
Mar 26 13:14:00 localhost kernel: usb.c: deregistering driver usbdevfs
Mar 26 13:14:00 localhost kernel: usb.c: deregistering driver hub
Mar 26 13:14:08 localhost kernel: parport0: PC-style at 0x378 [PCSPP]
Mar 26 13:15:22 localhost kernel: usb.c: registered new driver usbdevfs
Mar 26 13:15:22 localhost kernel: usb.c: registered new driver hub
Mar 26 13:15:22 localhost kernel: usb-uhci.c: $Revision: 1.275 $ time 10:10:58 
Mar 13 2002
Mar 26 13:15:22 localhost kernel: usb-uhci.c: High bandwidth mode enabled
Mar 26 13:15:22 localhost kernel: usb-uhci.c: USB UHCI at I/O 0x460, IRQ 49
Mar 26 13:15:22 localhost kernel: usb-uhci.c: Detected 2 ports
Mar 26 13:15:22 localhost kernel: usb.c: new USB bus registered, assigned bus 
number 1
Mar 26 13:15:22 localhost kernel: hub.c: USB hub found
Mar 26 13:15:22 localhost kernel: hub.c: 2 ports detected
Mar 26 13:15:22 localhost kernel: usb-uhci.c: v1.275:USB Universal Host 
Controller Interface driver
Mar 26 13:15:23 localhost kernel: usb.c: USB disconnect on device 1
Mar 26 13:15:23 localhost /etc/hotplug/usb.agent: ... no modules for USB 
product 0/0/0
Mar 26 13:15:23 localhost kernel: hub.c: get_port_status(2) failed (err = -19)
Mar 26 13:15:24 localhost last message repeated 4 times
Mar 26 13:15:24 localhost kernel: hub.c: Cannot enable port 2 of hub 1, 
disabling port.
Mar 26 13:15:24 localhost kernel: hub.c: Maybe the USB cable is bad?
Mar 26 13:15:24 localhost kernel: hub.c: cannot disable port 2 of hub 1 (err = -
19)
Mar 26 13:15:24 localhost kernel: hub.c: get_hub_status failed
Mar 26 13:15:24 localhost kernel: usb.c: USB bus 1 deregistered
Mar 26 13:15:24 localhost kernel: usb.c: deregistering driver usbdevfs
Mar 26 13:15:24 localhost kernel: usb.c: deregistering driver hub

Comment 1 Bill Nottingham 2002-03-27 21:05:32 UTC
What does /etc/sysconfing/hwconf look like *before* kudzu runs the first time
you boot the system?

Comment 2 Don Smith 2002-03-28 14:31:40 UTC
Created attachment 51164 [details]
hwconf before running kudzu

Comment 3 Bill Nottingham 2002-03-28 15:09:47 UTC
Can you post the lspci -v output?

Comment 4 Don Smith 2002-03-28 15:56:23 UTC
Created attachment 51190 [details]
output of lspci -v

Comment 5 Bill Nottingham 2002-03-28 16:05:43 UTC
Can you install and boot the -BOOT kernel and post the lspci -v output?

Comment 6 Don Smith 2002-03-28 16:42:54 UTC
Created attachment 51192 [details]
output of lspci -v with vmlinuz-2.4.18-0.4BOOT

Comment 7 Jeremy Katz 2002-03-28 20:21:46 UTC
USB is built into the boot kernel so anaconda doesn't do anything to speak of

Comment 8 Bill Nottingham 2002-04-02 06:15:46 UTC
What is the output of 'kudzu -p -b pci' under the BOOT kernel?

Comment 9 Don Smith 2002-04-03 18:31:50 UTC
Created attachment 52084 [details]
output of 'kudzu -p -b pci' under BOOT kernel

Comment 10 Michael Fulbright 2002-04-09 18:15:33 UTC
This appears to be a kudzu issue.

Comment 11 Bill Nottingham 2002-04-11 04:30:52 UTC
OK, under the -BOOT kernel, the USB controller doesn't get an interrupt routed
to it, so kudzu assumes it's disabled (because it's not going to work without an
interrupt.) That's why it's not detected.

This sounds like it could be a BIOS issue of some sort. Does booting the
installer/BOOT kernel  with 'apic' (or 'noapic', for that matter) make any
difference?

Comment 12 Don Smith 2002-04-11 20:36:54 UTC
Booting with the 'apic' option cures this problem... it seems like for some 
reason the USB controller in this system will only send interrupts through the 
APIC. I booted with the uniprocessor kernel, which I am assuming defaults to  
_not_ using the APIC (/proc/interrupts entries all said XT-PIC and were < 15), 
and kudzu came up and said the USB devices I had connected were removed from 
the system, and disabled the USB controller. Booting with the bigmem kernel 
after that re-enabled it and rediscovered the USB devices.

Comment 13 Arjan van de Ven 2002-04-11 20:42:49 UTC
Ok this is one for your bios folks then, they need to fix the $PIRQ table.
In the mean time we can blacklist the current bios version to do "apic"
automatically.
Please send or attach the output of the dmidecode progam (in the kernel-utils
package)

Comment 14 Don Smith 2002-04-12 20:41:30 UTC
Created attachment 53671 [details]
output from dmidecode

Comment 15 Arjan van de Ven 2002-04-13 09:14:46 UTC
added to the linux-2.4.18-dmi-hall-of-shame.patch patch
note: this is THIS EXACT version; I assume/hope that the next revision
of the bios has the bug fixed.

Comment 16 Wendy Hung 2002-05-02 13:36:44 UTC
There are no plans for future BIOS releases for the x370.
Fixed in RH 7.3 Gold Master for BIOS level 33A.