On Tue, 7 Aug 2007, David Engraf wrote: > You said your Intel board has also problems with the handoff. > Could you try the follwing patch, because the EHCI documentation > says that the OS must set the EHCI_USBLEGSUP_OS bit and then > wait until EHCI_USBLEGSUP_BIOS is cleared. The kernel never > uses the EHCI_USBLEGSUP_OS flag at the moment.
Yes it does. Maybe not by that name, but it does set the bit. > On my system there is no change, but maybe this patch works on > your system. > > Thanks > David Engraf > > linux-2.6.22.1 > > diff -puN drivers/usb/host/pci-quirks_orig.c drivers/usb/host/pci-quirks.c > > --- drivers/usb/host/pci-quirks_orig.c 2007-07-10 20:56:30.000000000 > +0200 > +++ drivers/usb/host/pci-quirks.c 2007-08-07 10:38:33.000000000 +0200 > @@ -268,6 +268,8 @@ static void __devinit quirk_usb_disable_ > * handoff.. > */ > pci_write_config_byte(pdev, offset + 3, 1); > + > + pci_write_config_byte(pdev, offset, cap | > EHCI_USBLEGSUP_OS); This patch is definitely wrong (besides being line-wrapped). Note that EHCI_USBLEGSUP_OS is equal to (1 << 24) -- it makes no sense to use it as an argument for a byte-sized write. Also note that the two low-order bytes in the USBLEGSUP register are read-only; you shouldn't try to write them at all. It looks like you are simply attempting to do what the previous line of code already does. Alan Stern - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/