Re: [REGRESSION] usb controller fails to initialize on intel s1200btl

"Rafael J. Wysocki (Intel)" <[email protected]> Fri, 31 Jul 2026 15:41:49 +0200
Newsgroups dev.linux.lists.regressions,org.kernel.vger.linux-acpi,org.kernel.vger.linux-usb
Message-ID <CAJZ5v0gXtKEaNDdSRqd57zg9GbFN-VDHrU5-=EEQPdSa9Zk-xw@mail.gmail.com>
On Fri, Jul 31, 2026 at 3:06=E2=80=AFPM Julian Silver <[email protected]> =
wrote:
>
> On 2026-07-31 19:58:32, Rafael J. Wysocki (Intel) wrote:
> > Please boot with "intel_idle.states_off=3D16" in the kernel command lin=
e
> > and see if the problem is still there.  If this doesn't help, please
> > also try "intel_idle.states_off=3D24".
>
> "intel_idle.states_off=3D16" does not help.  "intel_idle.states_off=3D24"=
 works.
> Note that the test is performed on vanilla kernel v7.2-rc5(without the pa=
tch).

Yes, that's what I meant, thanks!

The kernel command line switch that works causes idle states 3 and 4
(C3 and C6) to be disabled by default.  These CPU idle states allow
the processor to enter package idle states (PC2 or deeper), so what
(most likely) happens is that the package idle states on this platform
somehow interfere with EHCI probing (causing the latter time out).  It
is basically a platform issue that was previously hidden.

Note that you can re-enable idle states disabled by default by doing (as ro=
ot)

# echo 0 | tee /sys/devices/system/cpu/cpu*/cpuidle/state[3-4]/disable

Before the commit in question EHCI was probed before the intel_idle
initialization and so package idle states were not used at that time
and before, but that was only due to the initialization ordering based
on driver name (so fragile anyway).

I'm not sure how to address this cleanly because moving the intel_idle
initialization back to the device_initcall() level won't guarantee the
working initialization ordering (for instance, if ehci-pci is a
module), but let me send you one more debug patch.