]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
usb: dwc3: Check for USB4 IP_NAME
authorThinh Nguyen <Thinh.Nguyen@synopsys.com>
Fri, 2 Jan 2026 21:53:46 +0000 (21:53 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 23 Jan 2026 10:18:44 +0000 (11:18 +0100)
commit 0ed91d47959cb7573c17e06487f0fb891d59dfb3 upstream.

Synopsys renamed DWC_usb32 IP to DWC_usb4 as of IP version 1.30. No
functional change except checking for the IP_NAME here. The driver will
treat the new IP_NAME as if it's DWC_usb32. Additional features for USB4
will be introduced and checked separately.

Cc: stable@vger.kernel.org
Signed-off-by: Thinh Nguyen <Thinh.Nguyen@synopsys.com>
Link: https://patch.msgid.link/e6f1827754c7a7ddc5eb7382add20bfe3a9b312f.1767390747.git.Thinh.Nguyen@synopsys.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/usb/dwc3/core.c
drivers/usb/dwc3/core.h

index dac06d01bc1cabf7b7c830656efa143ebff69a8d..b37a86f2bcca956a363133e40ee53ad6c2096c53 100644 (file)
@@ -988,6 +988,8 @@ static bool dwc3_core_is_valid(struct dwc3 *dwc)
 
        reg = dwc3_readl(dwc->regs, DWC3_GSNPSID);
        dwc->ip = DWC3_GSNPS_ID(reg);
+       if (dwc->ip == DWC4_IP)
+               dwc->ip = DWC32_IP;
 
        /* This should read as U3 followed by revision number */
        if (DWC3_IP_IS(DWC3)) {
index 30fe7df1c3ca0e8abce3d2c9d5cb44bacb83210b..d47ea3b3528eca4f7e1b632efb8aee7df82b37ef 100644 (file)
@@ -1254,6 +1254,7 @@ struct dwc3 {
 #define DWC3_IP                        0x5533
 #define DWC31_IP               0x3331
 #define DWC32_IP               0x3332
+#define DWC4_IP                        0x3430
 
        u32                     revision;