Re: About the reboot hang issue with EHCI driver on the Baytrail platform
From: Alan Stern
Date: Tue Aug 26 2014 - 11:38:58 EST
On Tue, 26 Aug 2014, Gavin Guo wrote:
> I found that in the Baytrail-m platform if the "USB3.0 Configuration
> in Pre-OS" is set to Auto in the BIOS, the system will boot with
> EHCI-enabled. And test reboot 200 times. It sometimes hang in the
> shutdown process "ehci-pci 0000:00:1d.0: shutdown." I also found that
> sometimes hang in the booting up process. But it still black screen, I
> can't see clearly where it hang.
> After doing some experiments, I found the following symptoms:
> 1) Set the "USB3.0 Configuration in Pre-OS" to enable, the 200 times
> reboot test can pass. Under the condition, lspci can't see the EHCI
> [8086:0f34] controller.
> 2) Build a new kernel without the EHCI driver can also pass the 200
> times reboot test.
> 3) Put "echo -n "0000:00:1d.0" > /sys/bus/pci/drivers/ehci-pci/unbind"
> in the /etc/rc.local can avoid shutdown hang but sometimes it also
> hang in the booting up process during the 200 times reboot test.
> 4) I also found some messages in dmesg which show "ehci-pci
> 0000:00:1d.0: port 1 reset error -110."
It sounds like the BIOS is buggy.
> If there is any possibility to disable the EHCI controller in the
> Baytrail platform because the XHCI covers all the ports connected to
> EHCI controller.
You can disable the EHCI controller by setting "USB3.0 Configuration in
Pre-OS" to enable, as you discovered.
> And IIRC, there is only one host controller within
> EHCI and XHCI can be enabled in the Baytrail platform. I'm also trying
> to find out the kernel parameters to disable the EHCI driver, but
> currently there is no available one.
It's not a kernel parameter. You can blacklist the ehci-pci and
ehci-hcd modules in /etc/modprobe.d/local.conf.
Or you can turn off CONFIG_USB_EHCI_HCD in your .config and build a
kernel with no EHCI support at all.
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/