Re: uhci support request

Ben Dash <[email protected]> Sat, 29 Oct 2005 09:07:22 -0700 (PDT)
Newsgroups gmane.linux.ports.xbox.devel
Message-ID <[email protected]>
I just realised that I hadn't mentioned the version of
the kernel which I'm having a problem with.

It's xbox-sources 2.4.31.  The Gentoo LiveCD for xBox
seems to be using 2.4.29.

How would I confirm that the interrupt 1 fix is not in
my kernel?

I'm looking at CVS for
xbox-linux/kernel/drivers/char/pc_keyb.c and the
comment says "re-added keyboard patch
We do need this patch, the standard kernel still
doesn't have it.
Stupid me, I removed it yesterday." however, the diff
shows no changes between that version and the previous
version.

Does the 1.6 version diff show the relevant changes?

http://cvs.sourceforge.net/viewcvs.py/xbox-linux/kernel/drivers/char/pc_keyb.c?r1=1.5&r2=1.6

If so then I have confirmed that the source which I
have looks just like 1.6 with:

line 908
/*
        if (!kbd_controller_present()) {
                kbd_exists = 0;
                return;
        }
*/

and line 923
if (!kbd_exists)
        return;

Should I change my version to uncomment the 908
change?

Please let me know your thoughts,

Thanks,

Ben Dash
--- Michael Steil <[email protected]> wrote:

> 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
> 
=== message truncated ===



	
		
__________________________________ 
Yahoo! Mail - PC Magazine Editors' Choice 2005 
http://mail.yahoo.com


-------------------------------------------------------
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