On 14.2.2024 11.31, Paul Menzel wrote:
Dear Linux folks, As a follow-up to *Linux warning `usb: port power management may be unreliable` on Dell XPS 13 9360* [1][2], Linux warns about this on Dell laptops, desktops, and servers, and also on devices from other manufacturers [3]. I created issue with corresponding Linux messages and output of acpidump attached for more devices I have access to: 1. Linux warning `usb: port power management may be unreliable` on Dell OptiPlex 3620 https://bugzilla.kernel.org/show_bug.cgi?id=218486 2. Linux warning `usb: port power management may be unreliable` on Dell OptiPlex 5055 https://bugzilla.kernel.org/show_bug.cgi?id=218487 3. Linux warning `usb: port power management may be unreliable` on OptiPlex Small Form Factor Plus 7010 https://bugzilla.kernel.org/show_bug.cgi?id=218488 4. Linux warning `usb: port power management may be unreliable` on Dell PowerEdge T440 https://bugzilla.kernel.org/show_bug.cgi?id=218490 (Artem (Cc:) marked them all as duplicates, and I asked him privately to undo this until the maintainers ask me to.) Mathias was so kind to analyze the ACPI tables [2]. Is this a firmware issue or a Linux one? As a user I am unsure what to do, and ignoring warnings sounds wrong to me.
At a fist glance it looks like a firmware issue. USB2 and USB3 ports are in this case matched and peered based on the ports ACPI _PLD (Physical Device Location) entries. Usually there is only one USB2 and one USB3 port with exactly the same _PLD values, but here it appears more ports return similar _PLD values. But need to look a bit deeper at this. Linux does not compare at all _PLD fields, and xhci specification Appendix D mentions mapping ports to connectors using both port _UPC and _PLD ACPI entries. Thanks Mathias