View previous topic :: View next topic |
Author |
Message |
Eldomir n00b
Joined: 09 Nov 2003 Posts: 63 Location: Madrid/Spain/EU
|
Posted: Sat Nov 22, 2003 12:31 pm Post subject: usb-uhci doesn't load |
|
|
I seem to have problems with usb-uhci, which never loads correctly (through hotplug or any other way). I've checked dmesg, and the most worrying part in it about uhci is
Code: | uhci.c:d800:host controller halted. very bad |
I've tried lsmod, which tells me usb-storage and usb-core are loaded, and insmod usb-uhci gives me an error saying there is no such module (I can post again the exact insmod error if necessary).
I compiled the kernel (gs-sources) with genkernel, specifying uhci support as a module. I've also tried gentoo-sources but I get the same error. Surprisingly, my USB modem seems to work fine, which is surprising because it gives me an error saying it can't find usb-uhci when it connects to the net.
I've searched the forums but didn't find anything that worked on this...Any clues?
Pedro |
|
Back to top |
|
|
NeddySeagoon Administrator
Joined: 05 Jul 2003 Posts: 54821 Location: 56N 3W
|
Posted: Sat Nov 22, 2003 12:43 pm Post subject: |
|
|
Eldomir,
The uhci module may be the wrong one for your hardware.
Run usbview and see what it says about your Root Hubs. If it says OHCI Rott hub you need one of the ohci modules.
Regards,
NeddySagoon _________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
|
Eldomir n00b
Joined: 09 Nov 2003 Posts: 63 Location: Madrid/Spain/EU
|
Posted: Sat Nov 22, 2003 1:17 pm Post subject: |
|
|
I doubt it's that, since the driver's description explicitly states I need to have UHCI support loaded as a kernel module, but I'll check However, do I need to emerge anything to try usbview? I get "unrecognized command".
(I'm not on linux now so if it's just "emerge usbview" then I'm sorry for the silly question).
Thanks! |
|
Back to top |
|
|
ronmon Veteran
Joined: 15 Apr 2002 Posts: 1043 Location: Key West, FL
|
Posted: Sat Nov 22, 2003 1:31 pm Post subject: |
|
|
Yep, you have to emerge it first. Or you can see what it is by doing:
Code: |
cat /proc/bus/usb/devices
|
The first section should look something like this:
Code: |
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.10 Cls=09(hub ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
P: Vendor=0000 ProdID=0000 Rev= 2.06
S: Manufacturer=Linux 2.6.0-test9-mm5 ohci_hcd
S: Product=OHCI Host Controller
S: SerialNumber=0000:02:06.1
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= 2 Ivl=255ms
|
Whether you need uhci or ohci depends on which controller chipset is on your motherboard. Read the help associated with those options in menuconfig for more info.
If you have a USB 2.0 controller be sure to build the ehci module also. Then you'll also have a section like this:
Code: |
T: Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=480 MxCh= 5
B: Alloc= 0/800 us ( 0%), #Int= 0, #Iso= 0
D: Ver= 2.00 Cls=09(hub ) Sub=00 Prot=01 MxPS= 8 #Cfgs= 1
P: Vendor=0000 ProdID=0000 Rev= 2.06
S: Manufacturer=Linux 2.6.0-test9-mm5 ehci_hcd
S: Product=EHCI Host Controller
S: SerialNumber=0000:02:06.2
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= 2 Ivl=256ms
|
|
|
Back to top |
|
|
Eldomir n00b
Joined: 09 Nov 2003 Posts: 63 Location: Madrid/Spain/EU
|
Posted: Sat Nov 22, 2003 1:52 pm Post subject: |
|
|
I can't see any OHCI or EHCI on /proc/bus/usb/devices. Instead, it has
Code: | Product = USB UHCI-alt Root Hub |
(And I chose UHCI support during kernel compilation). |
|
Back to top |
|
|
mike4148 l33t
Joined: 09 Sep 2003 Posts: 641
|
Posted: Sat Nov 22, 2003 5:55 pm Post subject: |
|
|
Ugh, it's been a while since I've messed with 2.4 kernels, but I can recall that there were two different drivers for
one of the host controllers (UHCI or OHCI). My guess is that you're running with the "alternate" UHCI driver
(which is the default in the kernel config; I've always used the normal, nonalternate one) -- that would explain
the "-alt." Look at your kernel configuration in the USB section and see if this is the case; if so, try the other driver. |
|
Back to top |
|
|
Eldomir n00b
Joined: 09 Nov 2003 Posts: 63 Location: Madrid/Spain/EU
|
Posted: Sat Nov 22, 2003 8:20 pm Post subject: |
|
|
Thanks for the tip, but (I'm a complete newbie), could you elaborate a bit? I used genkernel --config to compile the kernel, and I didn't see anything from what I remember, that allowed me to choose between "normal" and "alternate" UHCI controllers - so even if I manage to find out which one my kernel uses (I don't know how to either), how can I enable the other?
(I'm sorry if this is a bunch of nonsense - I don't really know what I'm talking about half the time). |
|
Back to top |
|
|
NeddySeagoon Administrator
Joined: 05 Jul 2003 Posts: 54821 Location: 56N 3W
|
Posted: Sat Nov 22, 2003 11:13 pm Post subject: |
|
|
Eldomir,
To check on your USB Chipset driver do the following Code: | grep USB usr/src/linux/.config |
Look for five lines like Quote: |
# USB Host Controller Drivers
CONFIG_USB_EHCI_HCD=m
CONFIG_USB_UHCI=m
CONFIG_USB_UHCI_ALT=m
CONFIG_USB_OHCI=m
|
The "=m" means I built them all as modules and let the kernel sort out the mess at boot time. You may have "=y", whicvh means its built into the kernel or it may even read
Quote: | # CONFIG_USB ... is not set | in which case the facility is not available in your current kernel build.
Regards,
NeddySeagoon _________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
|
Eldomir n00b
Joined: 09 Nov 2003 Posts: 63 Location: Madrid/Spain/EU
|
Posted: Sun Nov 23, 2003 2:18 pm Post subject: |
|
|
You were right - I had both UHCI and UHCI-alt loaded, which is what my stupid modem driver's documentation recommended. Just to try, I recompiled the kernel with only UHCI support, and everything worked like a breeze. Not only that, but my problems with "emerge sync" (posted in another forum) were solved as well, so I finally have an up-to-date and running system.
Thanks all for your help and patience |
|
Back to top |
|
|
ronmon Veteran
Joined: 15 Apr 2002 Posts: 1043 Location: Key West, FL
|
Posted: Sun Nov 23, 2003 2:58 pm Post subject: |
|
|
I've never been a fan of the 'scattergun' method of building all drivers / modules and letting the kernel sort it out. It's always best to know what you have and use the proper stuff. Good to see that you have figured it out. |
|
Back to top |
|
|
NeddySeagoon Administrator
Joined: 05 Jul 2003 Posts: 54821 Location: 56N 3W
|
Posted: Sun Nov 23, 2003 3:28 pm Post subject: |
|
|
ronmon,
Me neither. I normally build things I'm not sure about as modules and control what gets loaded. It costs you the extra build time once, rather than once per module. I found out that in the case (USB Chipset driver) the kernel does it all without any help.
Regards,
NeddySeagoon _________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
|
|