Re: uhci support request
Michael Steil <[email protected]> Sat, 29 Oct 2005 14:38:55 +0200
| Newsgroups | gmane.linux.ports.xbox.devel |
|---|---|
| Message-ID | <[email protected]> |
Hi! We don't really maintain the support system on SF, instead you should have posted this to the mailing list. I am sending this to the mailing list as well. Here is the original post, my answer is below: > I'm sorry to bother you guys with this but I'm having > real trouble with xBox USB and I've been Googling for > hours without finding the solution. I hope that > someone here can point me in the right direction. > > I'm trying to get my USB keyboard to work on my Gentoo > Etherbooting NFS root xBox. It seems to be working > fine except for the USB drivers. I know that the > hardware functions because it all works flawlessly > using the Gentoo LiveCD with kernel 2.4.29. > > When I boot I get a whole load of the "pc_keyb: > controller jammed (0xFF)" errors from > drivers/char/pc_keyb.c line 513 and then my dmesg says: > > usb.c: registered new driver usbdevfs > usb.c: registered new driver hub > host/uhci.c: USB Universal Host Controller Interface > driver v1.1 > PCI: Setting latency timer of device 00:02.0 to 64 > host/usb-ohci.c: USB OHCI at membase 0xc9e88000, IRQ 1 > host/usb-ohci.c: usb-00:02.0, nVidia Corporation nForce > USB Controller > usb.c: new USB bus registered, assigned bus number 1 > host/usb-ohci.c: request interrupt 1 failed > usb.c: USB bus 1 deregistered > Trying to vfree() nonexistent vm area (c9e88000) > PCI: Setting latency timer of device 00:03.0 to 64 > host/usb-ohci.c: USB OHCI at membase 0xc9e88000, IRQ 9 > host/usb-ohci.c: usb-00:03.0, nVidia Corporation nForce > USB Controller (#2) > usb.c: new USB bus registered, assigned bus number 1 > hub.c: USB hub found > hub.c: 2 ports detected > > Instead of: > > uhci.c: USB Universal Host Controller Interface driver v1.1 > PCI: Setting latency timer of device 00:02.0 to 64 > usb-ohci.c: USB OHCI at membase 0xc9e90000, IRQ 1 > usb-ohci.c: usb-00:02.0, nVidia Corporation nForce USB > Controller > usb.c: new USB bus registered, assigned bus number 1 > hub.c: USB hub found > hub.c: 4 ports detected > PCI: Setting latency timer of device 00:03.0 to 64 > usb-ohci.c: USB OHCI at membase 0xc9e92000, IRQ 9 > usb-ohci.c: usb-00:03.0, nVidia Corporation nForce USB > Controller (#2) > usb.c: new USB bus registered, assigned bus number 2 > hub.c: USB hub found > hub.c: 2 ports detected > usb.c: registered new driver hiddev > usb.c: registered new driver hid > hid-core.c: v1.8.1 Andreas Gal, Vojtech Pavlik > <[email protected]> > hid-core.c: USB HID support drivers > SCSI subsystem driver Revision: 1.00 > Initializing USB Mass Storage driver... > usb.c: registered new driver usb-storage > USB Mass Storage support registered. > hub.c: new USB device 00:02.0-1, assigned address 2 > hub.c: USB hub found > hub.c: 4 ports detected > > I noticed your howto mentioned: > > "Many operating systems (such as Linux up some 2.4.x > version) assume that every PC has a keyboard controller > (although this is not true for many embedded x86 as > well as Itanium systems), and therefore statically > allocate interrupt line 1 for the keyboard controller. > > The problem is that the original Xbox hardware > initialization code (as well as Cromwell) put the first > USB controller on interrupt 1, so if the operating > system already has it allocated, the first USB > controller will not work. On a 1.0 Xbox this means that > no USB devices (including, ironically, a keyboard) will > work, while on later boxes this only affects two of the > four connectors. " > > So I'm wondering if that is the problem which I'm > seeing and, if so, what I need to do to fix it. > > If you have any ideas please let me know. > > Thanks, > > Ben Dash Yes, you are right, the problem is that pc_keyb allocates interrupt 1, although there is no keyboard controller, so the USB driver cannot allocate it. We fixed this in Xbox Linux very early, but removed the fix as soon as vanilla Linux had the fix included, i.e. current Linux kernels do keyboard controller autodetection and only allocate the interrupt if the controller is present. It seems like the kernel your distribution is using does not contain this fix. Okay, now that we've found the problem, can anyone help Ben? Michael On 29.10.2005, at 09:17, Ben Dash wrote: > > Message body follows: > > Michael, > > I hope you don't mind me emailing you directly about a > question that I have just submitted as a support request > regarding a problem that I'm having with a usb keyboard on > xbox linux. I noticed that you had worked on pc_keyb.c a > while ago and wondered if you had a second to point me in > the right direction. > > I'm in the middle of creating an etherbooting xbox, it's all > going fine, however I can't seem to get the keyboard working. > > The details are in the support request here: > > https://sourceforge.net/tracker/index.php? > func=detail&aid=1341376&group_id=54192&atid=472972 > > And on the Gentoo forum here: > > http://forums.gentoo.org/viewtopic-p-2836522.html#2836522 > > Please let me know if you have any ideas, > > Thanks, > > Ben Dash > > -- > This message has been sent to you, a registered SourceForge.net user, > by another site user, through the SourceForge.net site. This message > has been delivered to your SourceForge.net mail alias. You may reply > to this message using the "Reply" feature of your email client, or > using the messaging facility of SourceForge.net at: > https://sourceforge.net/sendmessage.php?touser=430227 > ------------------------------------------------------- This SF.Net email is sponsored by the JBoss Inc. Get Certified Today * Register for a JBoss Training Course Free Certification Exam for All Training Attendees Through End of 2005 Visit http://www.jboss.com/services/certification for more information