This is a note to let you know that I've just added the patch titled usb: dwc3: disable USB core PHY management to the 5.15-stable tree which can be found at: http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary The filename of the patch is: usb-dwc3-disable-usb-core-phy-management.patch and it can be found in the queue-5.15 subdirectory. If you, or anyone else, feels it should not be added to the stable tree, please let <stable@xxxxxxxxxxxxxxx> know about it. >From foo@baz Tue Sep 6 02:12:11 PM CEST 2022 From: Johan Hovold <johan@xxxxxxxxxx> Date: Tue, 6 Sep 2022 14:07:02 +0200 Subject: usb: dwc3: disable USB core PHY management To: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx> Cc: stable@xxxxxxxxxxxxxxx, linux-kernel@xxxxxxxxxxxxxxx, Johan Hovold <johan+linaro@xxxxxxxxxx>, Matthias Kaehlcke <mka@xxxxxxxxxxxx>, stable <stable@xxxxxxxxxx> Message-ID: <20220906120702.19219-4-johan@xxxxxxxxxx> From: Johan Hovold <johan+linaro@xxxxxxxxxx> commit 6000b8d900cd5f52fbcd0776d0cc396e88c8c2ea upstream. The dwc3 driver manages its PHYs itself so the USB core PHY management needs to be disabled. Use the struct xhci_plat_priv hack added by commits 46034a999c07 ("usb: host: xhci-plat: add platform data support") and f768e718911e ("usb: host: xhci-plat: add priv quirk for skip PHY initialization") to propagate the setting for now. Fixes: 4e88d4c08301 ("usb: add a flag to skip PHY initialization to struct usb_hcd") Fixes: 178a0bce05cb ("usb: core: hcd: integrate the PHY wrapper into the HCD core") Tested-by: Matthias Kaehlcke <mka@xxxxxxxxxxxx> Cc: stable <stable@xxxxxxxxxx> Reviewed-by: Matthias Kaehlcke <mka@xxxxxxxxxxxx> Signed-off-by: Johan Hovold <johan+linaro@xxxxxxxxxx> Link: https://lore.kernel.org/r/20220825131836.19769-1-johan+linaro@xxxxxxxxxx Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx> [ johan: adjust context to 5.15 ] Signed-off-by: Johan Hovold <johan+linaro@xxxxxxxxxx> Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx> --- drivers/usb/dwc3/host.c | 10 ++++++++++ 1 file changed, 10 insertions(+) --- a/drivers/usb/dwc3/host.c +++ b/drivers/usb/dwc3/host.c @@ -10,8 +10,13 @@ #include <linux/acpi.h> #include <linux/platform_device.h> +#include "../host/xhci-plat.h" #include "core.h" +static const struct xhci_plat_priv dwc3_xhci_plat_priv = { + .quirks = XHCI_SKIP_PHY_INIT, +}; + static int dwc3_host_get_irq(struct dwc3 *dwc) { struct platform_device *dwc3_pdev = to_platform_device(dwc->dev); @@ -87,6 +92,11 @@ int dwc3_host_init(struct dwc3 *dwc) goto err; } + ret = platform_device_add_data(xhci, &dwc3_xhci_plat_priv, + sizeof(dwc3_xhci_plat_priv)); + if (ret) + goto err; + memset(props, 0, sizeof(struct property_entry) * ARRAY_SIZE(props)); if (dwc->usb3_lpm_capable) Patches currently in stable-queue which might be from johan@xxxxxxxxxx are queue-5.15/usb-serial-option-add-support-for-oppo-r11-diag-port.patch queue-5.15/usb-dwc3-disable-usb-core-phy-management.patch queue-5.15/usb-dwc3-qcom-fix-use-after-free-on-runtime-pm-wakeup.patch queue-5.15/usb-dwc3-fix-phy-disable-sequence.patch queue-5.15/usb-serial-cp210x-add-decagon-uca-device-id.patch queue-5.15/usb-serial-option-add-quectel-em060k-modem.patch queue-5.15/usb-serial-option-add-support-for-cinterion-mv32-wa-wb-rmnet-mode.patch queue-5.15/usb-serial-ftdi_sio-add-omron-cs1w-cif31-device-id.patch