linux-stable/drivers/usb
Mathias Nyman a44c6c61af usb: port: Don't try to peer unused USB ports based on location
commit 69c63350e5 upstream.

Unused USB ports may have bogus location data in ACPI PLD tables.
This causes port peering failures as these unused USB2 and USB3 ports
location may match.

Due to these failures the driver prints a
"usb: port power management may be unreliable" warning, and
unnecessarily blocks port power off during runtime suspend.

This was debugged on a couple DELL systems where the unused ports
all returned zeroes in their location data.
Similar bugreports exist for other systems.

Don't try to peer or match ports that have connect type set to
USB_PORT_NOT_USED.

Fixes: 3bfd659bae ("usb: find internal hub tier mismatch via acpi")
Closes: https://bugzilla.kernel.org/show_bug.cgi?id=218465
Closes: https://bugzilla.kernel.org/show_bug.cgi?id=218486
Tested-by: Paul Menzel <pmenzel@molgen.mpg.de>
Link: https://lore.kernel.org/linux-usb/5406d361-f5b7-4309-b0e6-8c94408f7d75@molgen.mpg.de
Cc: stable@vger.kernel.org # v3.16+
Signed-off-by: Mathias Nyman <mathias.nyman@linux.intel.com>
Closes: https://bugzilla.kernel.org/show_bug.cgi?id=218490
Link: https://lore.kernel.org/r/20240222233343.71856-1-mathias.nyman@linux.intel.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2024-04-10 16:18:45 +02:00
..
atm
c67x00
cdns3 usb: cdns3: fix memory double free when handle zero packet 2024-03-01 13:21:49 +01:00
chipidea usb: chipidea: wait controller resume finished for wakeup irq 2024-01-25 14:52:47 -08:00
class usb: cdc-acm: return correct error code on unsupported break 2024-01-25 14:52:52 -08:00
common usb: common: usb-conn-gpio: Prevent bailing out if initial role is none 2023-08-16 18:21:59 +02:00
core usb: port: Don't try to peer unused USB ports based on location 2024-04-10 16:18:45 +02:00
dwc2 USB: dwc2: write HCINT with INTMASK applied 2023-12-03 07:31:25 +01:00
dwc3 usb: dwc3: gadget: Don't disconnect if not started 2024-03-01 13:21:49 +01:00
early usb: early: xhci-dbc: Fix a potential out-of-bound memory access 2023-03-10 09:39:39 +01:00
gadget usb: gadget: ncm: Fix handling of zero block length packets 2024-04-10 16:18:45 +02:00
host usb: xhci: Add error handling in xhci_map_urb_for_dma 2024-04-10 16:18:37 +02:00
image
isp1760
misc USB: sisusbvga: Add endpoint checks 2023-05-30 13:55:31 +01:00
mon usb: mon: Fix atomicity violation in mon_bin_vma_fault 2024-01-25 14:52:47 -08:00
mtu3 usb: mtu3: fix kernel panic at qmu transfer done irq handler 2023-05-11 23:00:33 +09:00
musb usb: musb: Modify the "HWVers" register address 2023-10-19 23:05:35 +02:00
phy usb: phy: mxs: remove CONFIG_USB_OTG condition for mxs_phy_is_otg_host() 2024-01-25 14:52:47 -08:00
renesas_usbhs
roles usb: roles: don't get/set_role() when usb_role_switch is unregistered 2024-03-01 13:21:50 +01:00
serial USB: serial: cp210x: add pid/vid for TDK NC0110013M and MM0110113M 2024-04-10 16:18:37 +02:00
storage USB: usb-storage: Prevent divide-by-0 error in isd200_ata_command 2024-04-10 16:18:45 +02:00
typec usb: typec: ucsi: Clean up UCSI_CABLE_PROP macros 2024-04-10 16:18:38 +02:00
usbip USB: usbip: fix stub_dev hub disconnect 2023-11-20 11:08:26 +01:00
Kconfig
Makefile
usb-skeleton.c