EHCI driver

2012-05-29 Thread Christer Weinigel
Hi list, the EHCI driver in GRUB has some known problems with low-speed transfers and split transactions [1]. On older machines this is not a big problem since it's possible to connect low speed devices such a USB keyboard directly to a port and use the UHCI driver instead. But modern Intel chip

Re: EHCI driver

2012-05-30 Thread Christer Weinigel
On 2012-05-30 00:46, Aleš Nesrsta wrote: >> the EHCI driver in GRUB has some known problems with low-speed transfers >> and split transactions [1]. On older machines this is not a big problem >> since it's possible to connect low speed devices such a USB keyboard >> directly to a port and use the

Re: EHCI driver

2012-05-30 Thread Christer Weinigel
On 2012-05-30 11:28, Christer Weinigel wrote: > [talk about EHCI problems with low speed split transactions] > Now I just have to fix up the queue management so that it properly keeps > track of QHs for two queues instead of one. And figure out if there are > any other problems. S

Re: EHCI driver

2012-05-31 Thread Christer Weinigel
On 2012-05-30 14:35, Vladimir 'φ-coder/phcoder' Serbinenko wrote: >>/* Now should be possible to power-up and enumerate ports etc. */ >> @@ -926,6 +931,12 @@ grub_ehci_setup_qh (grub_ehci_qh_t qh, >> grub_usb_transfer_t transfer) >> & GRUB_EHCI_DEVPORT_MASK; >>ep_cap |= (transfer->de

EHCI: don't stop after finding the first controller

2012-05-31 Thread Christer Weinigel
Hi, Modern Intel chipsets have multiple EHCI controllers but the EHCI code will only detect the first one. I noticed this because on a test laptop all external USB ports are connected to the second EHCI controller so none of them would show up in grub. The reason is that the PCI code will stop i

Re: EHCI: don't stop after finding the first controller

2012-05-31 Thread Christer Weinigel
On 2012-05-31 10:46, Christer Weinigel wrote: > diff --git a/grub-core/bus/usb/ehci.c b/grub-core/bus/usb/ehci.c > index d8ecf26..240c0d5 100644 > --- a/grub-core/bus/usb/ehci.c > +++ b/grub-core/bus/usb/ehci.c > @@ -839,7 +839,7 @@ grub_ehci_pci_iter (grub_pci_device_t dev, &g

[PATCH] correct definition of GRUB_EHCI_MULT_ONE, TWO and THREE

2012-05-31 Thread Christer Weinigel
I might as well submit this "obviously correct" patch also and save the big EHCI patch for later. This patch was made against the latest version in the trunk on bzr.savannah.gnu.org. /Christer GRUB_EHCI_MULT_ONE, TWO and THREE should be 1, 2 and 3 but were all zero. Use the correct values ins

[PATCH] fix off-by-one in grub_file_getline

2012-05-31 Thread Christer Weinigel
I'd like to submit a few trivial patches that I've had on my hard drive for a while. This patch is against the latest version in the trunk on bzr.savannah.gnu.org. If grub_file_getline tries to read a line which is exactly 64 bytes long it will write the terminating zero past the end of the alloc