2009-01-05 13:41:27

by Jiri Slaby

[permalink] [raw]
Subject: quirk_usb_disable_ehci takes 2x 1.5s on boot

Hi,

I don't know since which moment (maybe I changed something in bios, but usb
legacy kbd was ever enabled), but quirk_usb_disable_ehci takes for both of my
ehci controllers 1.5 s.

More precisely, the time is spent in
pci_write_config_byte(pdev, offset + 3, 1);
by
outb((u8)value, 0xCFC + (reg & 3));
from pci_conf1_write deep in the callstack.

Is there any workaround known or something. Turning legacy usb off is not an
option, I want to control grub.

Thanks.


2009-01-05 22:44:55

by David Brownell

[permalink] [raw]
Subject: Re: quirk_usb_disable_ehci takes 2x 1.5s on boot

On Monday 05 January 2009, Jiri Slaby wrote:
> Hi,
>
> I don't know since which moment (maybe I changed something in bios, but usb
> legacy kbd was ever enabled), but quirk_usb_disable_ehci takes for both of my
> ehci controllers 1.5 s.
>
> More precisely, the time is spent in
> pci_write_config_byte(pdev, offset + 3, 1);
> by
> outb((u8)value, 0xCFC + (reg & 3));
> from pci_conf1_write deep in the callstack.
>
> Is there any workaround known or something.

I've never heard of pci_write_config_byte() taking enough time
to be visible without a PCI bus analyser... sorry, no clue.

- Dave


> Turning legacy usb off is not an
> option, I want to control grub.
>
> Thanks.
>
>

2009-01-06 00:37:06

by Robert Hancock

[permalink] [raw]
Subject: Re: quirk_usb_disable_ehci takes 2x 1.5s on boot



Jiri Slaby wrote:
> Hi,
>
> I don't know since which moment (maybe I changed something in bios, but usb
> legacy kbd was ever enabled), but quirk_usb_disable_ehci takes for both of my
> ehci controllers 1.5 s.
>
> More precisely, the time is spent in
> pci_write_config_byte(pdev, offset + 3, 1);
> by
> outb((u8)value, 0xCFC + (reg & 3));
> from pci_conf1_write deep in the callstack.
>
> Is there any workaround known or something. Turning legacy usb off is not an
> option, I want to control grub.

Most likely the PCI config space write is causing some SMM trap and the
BIOS is taking forever to do whatever it's doing. It doesn't report that
the handoff failed, though?

I'd look for a BIOS update..