Re: [REGRESSION] usb controller fails to initialize on intel s1200btl
"Rafael J. Wysocki (Intel)" <[email protected]> Fri, 31 Jul 2026 16:11:15 +0200
| Newsgroups | dev.linux.lists.regressions,org.kernel.vger.linux-acpi,org.kernel.vger.linux-usb |
|---|---|
| Message-ID | <CAJZ5v0g4ctzLpEro2Mu7EbSo8RNmYUCM6+J2p_ExCXseQAx13Q@mail.gmail.com> |
--000000000000bd2bf00657e8c3e6 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Fri, Jul 31, 2026 at 3:41=E2=80=AFPM Rafael J. Wysocki (Intel) <[email protected]> wrote: > > 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 l= ine > > > 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=3D2= 4" works. > > Note that the test is performed on vanilla kernel v7.2-rc5(without the = patch). > > 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 = root) > > # 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. The attached patch (on top of the current mainline) should prevent cpuidle governors from requesting idle states deeper than C1E when intel_idle is used until all of the device_initcall()s are done. Please see if this helps. --000000000000bd2bf00657e8c3e6 Content-Type: text/x-patch; charset="US-ASCII"; name="intel-idle-pm-qos.patch" Content-Disposition: attachment; filename="intel-idle-pm-qos.patch" Content-Transfer-Encoding: base64 Content-ID: <f_ms90p7260> X-Attachment-Id: f_ms90p7260 LS0tCiBkcml2ZXJzL2lkbGUvaW50ZWxfaWRsZS5jIHwgICAxMyArKysrKysrKysrKysrCiAxIGZp bGUgY2hhbmdlZCwgMTMgaW5zZXJ0aW9ucygrKQoKLS0tIGEvZHJpdmVycy9pZGxlL2ludGVsX2lk bGUuYworKysgYi9kcml2ZXJzL2lkbGUvaW50ZWxfaWRsZS5jCkBAIC01Myw2ICs1Myw3IEBACiAj aW5jbHVkZSA8bGludXgvbm90aWZpZXIuaD4KICNpbmNsdWRlIDxsaW51eC9jcHUuaD4KICNpbmNs dWRlIDxsaW51eC9tb2R1bGVwYXJhbS5oPgorI2luY2x1ZGUgPGxpbnV4L3BtX3Fvcy5oPgogI2lu Y2x1ZGUgPGxpbnV4L3N5c2ZzLmg+CiAjaW5jbHVkZSA8YXNtL2NwdWlkL2FwaS5oPgogI2luY2x1 ZGUgPGFzbS9jcHVfZGV2aWNlX2lkLmg+CkBAIC0yODIyLDEyICsyODIzLDE3IEBAIGVycm9yOgog CXByX2luZm8oIkZhaWxlZCB0byBhZGp1c3QgQy1zdGF0ZXMgd2l0aCBkYXRhIGZyb20gJ2ludGVs X2lkbGUudGFibGUnXG4iKTsKIH0KIAorI2RlZmluZSBJTlRFTF9JRExFX0lOSVRfUU9TCTIwCitz dGF0aWMgc3RydWN0IHBtX3Fvc19yZXF1ZXN0IHFvc19yZXEgX19pbml0ZGF0YTsKKwogc3RhdGlj IGludCBfX2luaXQgaW50ZWxfaWRsZV9pbml0KHZvaWQpCiB7CiAJY29uc3Qgc3RydWN0IHg4Nl9j cHVfaWQgKmlkOwogCXVuc2lnbmVkIGludCBlYXgsIGVieCwgZWN4OwogCWludCByZXR2YWw7CiAK KwljcHVfbGF0ZW5jeV9xb3NfYWRkX3JlcXVlc3QoJnFvc19yZXEsIElOVEVMX0lETEVfSU5JVF9R T1MpOworCiAJLyogRG8gbm90IGxvYWQgaW50ZWxfaWRsZSBhdCBhbGwgZm9yIG5vdyBpZiBpZGxl PSBpcyBwYXNzZWQgKi8KIAlpZiAoYm9vdF9vcHRpb25faWRsZV9vdmVycmlkZSAhPSBJRExFX05P X09WRVJSSURFKQogCQlyZXR1cm4gLUVOT0RFVjsKQEAgLTI5MjIsNiArMjkyOCwxMyBAQCBpbml0 X2RyaXZlcl9mYWlsOgogfQogc3Vic3lzX2luaXRjYWxsX3N5bmMoaW50ZWxfaWRsZV9pbml0KTsK IAorc3RhdGljIGludCBfX2luaXQgaW50ZWxfaWRsZV9pbml0X2NvbXBsZXRlKHZvaWQpCit7CisJ Y3B1X2xhdGVuY3lfcW9zX3JlbW92ZV9yZXF1ZXN0KCZxb3NfcmVxKTsKKwlyZXR1cm4gMDsKK30K K2RldmljZV9pbml0Y2FsbF9zeW5jKGludGVsX2lkbGVfaW5pdF9jb21wbGV0ZSk7CisKIC8qCiAg KiBXZSBhcmUgbm90IHJlYWxseSBtb2R1bGFyLCBidXQgd2UgdXNlZCB0byBzdXBwb3J0IHRoYXQu ICBNZWFuaW5nIHdlIGFsc28KICAqIHN1cHBvcnQgImludGVsX2lkbGUubWF4X2NzdGF0ZT0uLi4i IGF0IGJvb3QgYW5kIGFsc28gYSByZWFkLW9ubHkgZXhwb3J0IG9mCg== --000000000000bd2bf00657e8c3e6--