From patchwork Mon Nov 13 14:26:56 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Th=C3=A9o_Lebrun?= X-Patchwork-Id: 743730 Received: from lindbergh.monkeyblade.net (lindbergh.monkeyblade.net [23.128.96.19]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 014DB210E7; Mon, 13 Nov 2023 14:27:04 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=bootlin.com header.i=@bootlin.com header.b="dNWCpFGY" Received: from relay5-d.mail.gandi.net (relay5-d.mail.gandi.net [IPv6:2001:4b98:dc4:8::225]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id CBC9FD5F; Mon, 13 Nov 2023 06:27:01 -0800 (PST) Received: by mail.gandi.net (Postfix) with ESMTPSA id D83E21C000F; Mon, 13 Nov 2023 14:26:59 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bootlin.com; s=gm1; t=1699885620; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=wEIgs122T7Asjcu3DAVwNs7eylVPunuGePaZEbl2tp8=; b=dNWCpFGY1qQrSRHjE5jAiv2SOMoC/Vkt74glt8+kW453OpsdimOQ6aw9eXp0Wr1Towbw5M Dn/7aBoG7qGp+huZcQjDhFZSDQBBatEWcfpoAP8PNAg5wW/CwA5iltmJyrI8+XpkdEwxTT kbj+dZIBiPnY+l3/TLvEV/Fkz1K/f3VenxYi3abxz0g8t+5qbTs9p5RCK+l0lmr/59QTxk M20tysL0nYfbuOdYylYb3UOX6T7ryx+nG65Rs9n3hNCx308YyEvh3tA9pfTUUWy8v1+pjw P9RsYCFAcjnNUVLxbN/I4qCdHxIHacs2i21h5n0UkZCsEbAZvCXoVdM9evsWpw== From: =?utf-8?q?Th=C3=A9o_Lebrun?= Date: Mon, 13 Nov 2023 15:26:56 +0100 Subject: [PATCH 1/6] dt-bindings: usb: ti,j721e-usb: add ti,j7200-usb compatible Precedence: bulk X-Mailing-List: linux-usb@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20231113-j7200-usb-suspend-v1-1-ad1ee714835c@bootlin.com> References: <20231113-j7200-usb-suspend-v1-0-ad1ee714835c@bootlin.com> In-Reply-To: <20231113-j7200-usb-suspend-v1-0-ad1ee714835c@bootlin.com> To: Greg Kroah-Hartman , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Roger Quadros , Peter Chen , Pawel Laszczak , Nishanth Menon , Vignesh Raghavendra , Tero Kristo Cc: linux-usb@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, =?utf-8?q?Th=C3=A9o_Lebrun?= X-Mailer: b4 0.12.3 X-GND-Sasl: theo.lebrun@bootlin.com On this platform, the controller is reset on resume. This makes it have a different behavior from other platforms. Signed-off-by: Théo Lebrun --- Documentation/devicetree/bindings/usb/ti,j721e-usb.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/Documentation/devicetree/bindings/usb/ti,j721e-usb.yaml b/Documentation/devicetree/bindings/usb/ti,j721e-usb.yaml index 95ff9791baea..77e0c0499936 100644 --- a/Documentation/devicetree/bindings/usb/ti,j721e-usb.yaml +++ b/Documentation/devicetree/bindings/usb/ti,j721e-usb.yaml @@ -12,6 +12,7 @@ maintainers: properties: compatible: oneOf: + - const: ti,j7200-usb - const: ti,j721e-usb - const: ti,am64-usb - items: From patchwork Mon Nov 13 14:26:57 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Th=C3=A9o_Lebrun?= X-Patchwork-Id: 743728 Received: from lindbergh.monkeyblade.net (lindbergh.monkeyblade.net [23.128.96.19]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id F335A210FC; Mon, 13 Nov 2023 14:27:05 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=bootlin.com header.i=@bootlin.com header.b="SwUcstoM" Received: from relay5-d.mail.gandi.net (relay5-d.mail.gandi.net [217.70.183.197]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 9301FD5E; Mon, 13 Nov 2023 06:27:02 -0800 (PST) Received: by mail.gandi.net (Postfix) with ESMTPSA id 8C3A21C0015; Mon, 13 Nov 2023 14:27:00 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bootlin.com; s=gm1; t=1699885621; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=GSimQIqa/8SepKg3uis9mexXr+RooQka7AQUj0ZMCxM=; b=SwUcstoMkO51WegbzPUOXINPZ7NYGCDMsSX0TGQ1JTX8616YqGNMPNTIaMYNIdWQ35Dku+ QmWV2FEHBVVZBsexgmEjdOmjFtlIq+ydInNn6XP2nZPQj55mglPNuuAyYqHwiITK75nWAC VzBCcYJvpz7H087K6HdZz5+obEe/2eOZnvxwUb5P0L65KMHQfR4r/KZrxmelOxS5Fvq9CQ NkXbPlSCOKL2S6v+1o1YlB9fCcBiQeDl5T+U4BF3PbBXFYe4Ud4wpofFGQK6Z+G2JjFI8E i07xwHxck7QCcudy3pCixOhdQW/ekohVwHujrytfq81jMmf0ctoZNe/43FdDLQ== From: =?utf-8?q?Th=C3=A9o_Lebrun?= Date: Mon, 13 Nov 2023 15:26:57 +0100 Subject: [PATCH 2/6] usb: cdns3-ti: move reg writes from probe into an init_hw helper Precedence: bulk X-Mailing-List: linux-usb@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20231113-j7200-usb-suspend-v1-2-ad1ee714835c@bootlin.com> References: <20231113-j7200-usb-suspend-v1-0-ad1ee714835c@bootlin.com> In-Reply-To: <20231113-j7200-usb-suspend-v1-0-ad1ee714835c@bootlin.com> To: Greg Kroah-Hartman , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Roger Quadros , Peter Chen , Pawel Laszczak , Nishanth Menon , Vignesh Raghavendra , Tero Kristo Cc: linux-usb@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, =?utf-8?q?Th=C3=A9o_Lebrun?= X-Mailer: b4 0.12.3 X-GND-Sasl: theo.lebrun@bootlin.com The hardware initialisation register write sequence is only used at probe. To support suspend/resume with a controller losing power, we must redo this sequence of writes. Extract the register write sequence to a new cdns_ti_init_hw function to reuse it later down the road, at resume. We keep the devicetree-parsing aspect of the sequence in probe & add a new field in the private struct to remember the USB2 refclk rate code computation result. Signed-off-by: Théo Lebrun --- drivers/usb/cdns3/cdns3-ti.c | 76 ++++++++++++++++++++++++-------------------- 1 file changed, 41 insertions(+), 35 deletions(-) diff --git a/drivers/usb/cdns3/cdns3-ti.c b/drivers/usb/cdns3/cdns3-ti.c index 5945c4b1e11f..c331bcd2faeb 100644 --- a/drivers/usb/cdns3/cdns3-ti.c +++ b/drivers/usb/cdns3/cdns3-ti.c @@ -57,6 +57,7 @@ struct cdns_ti { unsigned vbus_divider:1; struct clk *usb2_refclk; struct clk *lpm_clk; + int usb2_refclk_rate_code; }; static const int cdns_ti_rate_table[] = { /* in KHZ */ @@ -85,15 +86,50 @@ static inline void cdns_ti_writel(struct cdns_ti *data, u32 offset, u32 value) writel(value, data->usbss + offset); } +static void cdns_ti_init_hw(struct cdns_ti *data) +{ + u32 reg; + + /* assert RESET */ + reg = cdns_ti_readl(data, USBSS_W1); + reg &= ~USBSS_W1_PWRUP_RST; + cdns_ti_writel(data, USBSS_W1, reg); + + /* set static config */ + reg = cdns_ti_readl(data, USBSS_STATIC_CONFIG); + reg &= ~USBSS1_STATIC_PLL_REF_SEL_MASK; + reg |= data->usb2_refclk_rate_code << USBSS1_STATIC_PLL_REF_SEL_SHIFT; + + reg &= ~USBSS1_STATIC_VBUS_SEL_MASK; + if (data->vbus_divider) + reg |= 1 << USBSS1_STATIC_VBUS_SEL_SHIFT; + + cdns_ti_writel(data, USBSS_STATIC_CONFIG, reg); + reg = cdns_ti_readl(data, USBSS_STATIC_CONFIG); + + /* set USB2_ONLY mode if requested */ + reg = cdns_ti_readl(data, USBSS_W1); + if (data->usb2_only) + reg |= USBSS_W1_USB2_ONLY; + + /* set default modestrap */ + reg |= USBSS_W1_MODESTRAP_SEL; + reg &= ~USBSS_W1_MODESTRAP_MASK; + reg |= USBSS_MODESTRAP_MODE_NONE << USBSS_W1_MODESTRAP_SHIFT; + cdns_ti_writel(data, USBSS_W1, reg); + + /* de-assert RESET */ + reg |= USBSS_W1_PWRUP_RST; + cdns_ti_writel(data, USBSS_W1, reg); +} + static int cdns_ti_probe(struct platform_device *pdev) { struct device *dev = &pdev->dev; struct device_node *node = pdev->dev.of_node; struct cdns_ti *data; - int error; - u32 reg; - int rate_code, i; unsigned long rate; + int error, i; data = devm_kzalloc(dev, sizeof(*data), GFP_KERNEL); if (!data) @@ -133,8 +169,6 @@ static int cdns_ti_probe(struct platform_device *pdev) return -EINVAL; } - rate_code = i; - pm_runtime_enable(dev); error = pm_runtime_get_sync(dev); if (error < 0) { @@ -142,39 +176,11 @@ static int cdns_ti_probe(struct platform_device *pdev) goto err; } - /* assert RESET */ - reg = cdns_ti_readl(data, USBSS_W1); - reg &= ~USBSS_W1_PWRUP_RST; - cdns_ti_writel(data, USBSS_W1, reg); - - /* set static config */ - reg = cdns_ti_readl(data, USBSS_STATIC_CONFIG); - reg &= ~USBSS1_STATIC_PLL_REF_SEL_MASK; - reg |= rate_code << USBSS1_STATIC_PLL_REF_SEL_SHIFT; - - reg &= ~USBSS1_STATIC_VBUS_SEL_MASK; data->vbus_divider = device_property_read_bool(dev, "ti,vbus-divider"); - if (data->vbus_divider) - reg |= 1 << USBSS1_STATIC_VBUS_SEL_SHIFT; - - cdns_ti_writel(data, USBSS_STATIC_CONFIG, reg); - reg = cdns_ti_readl(data, USBSS_STATIC_CONFIG); - - /* set USB2_ONLY mode if requested */ - reg = cdns_ti_readl(data, USBSS_W1); data->usb2_only = device_property_read_bool(dev, "ti,usb2-only"); - if (data->usb2_only) - reg |= USBSS_W1_USB2_ONLY; - - /* set default modestrap */ - reg |= USBSS_W1_MODESTRAP_SEL; - reg &= ~USBSS_W1_MODESTRAP_MASK; - reg |= USBSS_MODESTRAP_MODE_NONE << USBSS_W1_MODESTRAP_SHIFT; - cdns_ti_writel(data, USBSS_W1, reg); + data->usb2_refclk_rate_code = i; - /* de-assert RESET */ - reg |= USBSS_W1_PWRUP_RST; - cdns_ti_writel(data, USBSS_W1, reg); + cdns_ti_init_hw(data); error = of_platform_populate(node, NULL, NULL, dev); if (error) { From patchwork Mon Nov 13 14:26:58 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Th=C3=A9o_Lebrun?= X-Patchwork-Id: 743729 Received: from lindbergh.monkeyblade.net (lindbergh.monkeyblade.net [23.128.96.19]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id BD8C1210F4; Mon, 13 Nov 2023 14:27:05 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=bootlin.com header.i=@bootlin.com header.b="CdUrQ5QZ" Received: from relay5-d.mail.gandi.net (relay5-d.mail.gandi.net [217.70.183.197]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 28F66D60; Mon, 13 Nov 2023 06:27:03 -0800 (PST) Received: by mail.gandi.net (Postfix) with ESMTPSA id 4CF531C0003; Mon, 13 Nov 2023 14:27:01 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bootlin.com; s=gm1; t=1699885621; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=xhQIX2l1AguLqLqqSuhrXlTHhHreB3Yx+m4gIExyzdk=; b=CdUrQ5QZKlKgfAHkaN5pRMkm6kJPA7FlAgX2N1M8ahm8ex2+uOgnaxX7lYbma/37xjoiRR XvjQ+AmQaJMrockgTuSlRkL1QUubiF49WGsh9YTkowiuuvRhl9EoaH3DspwDotkBdXLOwv LE9brLy6qOvyZkXRkYRhk8wg2GPX19qZGyr7ebhITZO+h+rXHfrYQk9V53UF5D5aVE3HeL XdU2nwVZ5T0MfN8IR33H+UiHkN7fy69Xr1hkKECt9SoTyZ5PR5IBBIj8p0aBPrddSnfhPS 4m30yACn8GeoehQ57l1oVuMsJrzUg2PcR25Enpzsly5sV9f6yLG5IeL/tKxM+g== From: =?utf-8?q?Th=C3=A9o_Lebrun?= Date: Mon, 13 Nov 2023 15:26:58 +0100 Subject: [PATCH 3/6] usb: cdns3-ti: add suspend/resume procedures for J7200 Precedence: bulk X-Mailing-List: linux-usb@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20231113-j7200-usb-suspend-v1-3-ad1ee714835c@bootlin.com> References: <20231113-j7200-usb-suspend-v1-0-ad1ee714835c@bootlin.com> In-Reply-To: <20231113-j7200-usb-suspend-v1-0-ad1ee714835c@bootlin.com> To: Greg Kroah-Hartman , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Roger Quadros , Peter Chen , Pawel Laszczak , Nishanth Menon , Vignesh Raghavendra , Tero Kristo Cc: linux-usb@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, =?utf-8?q?Th=C3=A9o_Lebrun?= X-Mailer: b4 0.12.3 X-GND-Sasl: theo.lebrun@bootlin.com Hardware initialisation is only done at probe. The J7200 USB controller is reset at resume because of power-domains toggling off & on. We therefore (1) toggle PM runtime at suspend/resume & (2) reconfigure the hardware at resume. Reuse the newly extracted cdns_ti_init_hw() function that contains the register write sequence. We guard this behavior based on compatible to avoid modifying the current behavior on other platforms. If the controller does not reset we do not want to touch PM runtime & do not want to redo reg writes. Signed-off-by: Théo Lebrun --- drivers/usb/cdns3/cdns3-ti.c | 48 +++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 47 insertions(+), 1 deletion(-) diff --git a/drivers/usb/cdns3/cdns3-ti.c b/drivers/usb/cdns3/cdns3-ti.c index c331bcd2faeb..50b38c4b9c87 100644 --- a/drivers/usb/cdns3/cdns3-ti.c +++ b/drivers/usb/cdns3/cdns3-ti.c @@ -197,6 +197,50 @@ static int cdns_ti_probe(struct platform_device *pdev) return error; } +#ifdef CONFIG_PM + +static int cdns_ti_suspend(struct device *dev) +{ + struct cdns_ti *data = dev_get_drvdata(dev); + + if (!of_device_is_compatible(dev_of_node(dev), "ti,j7200-usb")) + return 0; + + pm_runtime_put_sync(data->dev); + + return 0; +} + +static int cdns_ti_resume(struct device *dev) +{ + struct cdns_ti *data = dev_get_drvdata(dev); + int ret; + + if (!of_device_is_compatible(dev_of_node(dev), "ti,j7200-usb")) + return 0; + + ret = pm_runtime_get_sync(dev); + if (ret < 0) { + dev_err(dev, "pm_runtime_get_sync failed: %d\n", ret); + goto err; + } + + cdns_ti_init_hw(data); + + return 0; + +err: + pm_runtime_put_sync(data->dev); + pm_runtime_disable(data->dev); + return ret; +} + +static const struct dev_pm_ops cdns_ti_pm_ops = { + SET_SYSTEM_SLEEP_PM_OPS(cdns_ti_suspend, cdns_ti_resume) +}; + +#endif /* CONFIG_PM */ + static int cdns_ti_remove_core(struct device *dev, void *c) { struct platform_device *pdev = to_platform_device(dev); @@ -218,6 +262,7 @@ static void cdns_ti_remove(struct platform_device *pdev) } static const struct of_device_id cdns_ti_of_match[] = { + { .compatible = "ti,j7200-usb", }, { .compatible = "ti,j721e-usb", }, { .compatible = "ti,am64-usb", }, {}, @@ -228,8 +273,9 @@ static struct platform_driver cdns_ti_driver = { .probe = cdns_ti_probe, .remove_new = cdns_ti_remove, .driver = { - .name = "cdns3-ti", + .name = "cdns3-ti", .of_match_table = cdns_ti_of_match, + .pm = pm_ptr(&cdns_ti_pm_ops), }, }; From patchwork Mon Nov 13 14:27:01 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Th=C3=A9o_Lebrun?= X-Patchwork-Id: 743727 Received: from lindbergh.monkeyblade.net (lindbergh.monkeyblade.net [23.128.96.19]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 5E2FE21115; Mon, 13 Nov 2023 14:27:07 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=bootlin.com header.i=@bootlin.com header.b="JKEFIsKB" Received: from relay5-d.mail.gandi.net (relay5-d.mail.gandi.net [IPv6:2001:4b98:dc4:8::225]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 498BE10E5; Mon, 13 Nov 2023 06:27:05 -0800 (PST) Received: by mail.gandi.net (Postfix) with ESMTPSA id 4C9EF1C001D; Mon, 13 Nov 2023 14:27:03 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bootlin.com; s=gm1; t=1699885623; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=xSePrEltdrZVOTvOhxdlRrK/qcL9Ks2P2izMU5tje1Y=; b=JKEFIsKBpS7AxZ3+kCpMqv8P5Lm/HTtIKtvBs8c7H0q2fKGbGECmfrHKImDfvuhobhcZ1u Gev9AUbdxWIBRLqbHb9k+OlVwvxQ+DY57PY32FuoA6asoyuyGrY/3aU1cw9zXPwh40A6Fl GkGACM+hTd3rwNT/kPle3JVOlWyYr2W7uGhaaJ0LHKZIJRVeUdOzSgyQm4/QJvm8+TYPlJ 6zPY419LPYhfOWk8JRyDs1PWuCrxJXCxFtTxK1QPgkK2j2S5NxvA9kO5dbHI6Fl56yOGMF IXVctc1Up4doHSAd2pWgQRfsBDo87v3jFFRcn3Zy/HQI2ZibhVwnDVX29lxXVg== From: =?utf-8?q?Th=C3=A9o_Lebrun?= Date: Mon, 13 Nov 2023 15:27:01 +0100 Subject: [PATCH 6/6] arm64: dts: ti: k3-j7200: use J7200-specific USB compatible Precedence: bulk X-Mailing-List: linux-usb@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20231113-j7200-usb-suspend-v1-6-ad1ee714835c@bootlin.com> References: <20231113-j7200-usb-suspend-v1-0-ad1ee714835c@bootlin.com> In-Reply-To: <20231113-j7200-usb-suspend-v1-0-ad1ee714835c@bootlin.com> To: Greg Kroah-Hartman , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Roger Quadros , Peter Chen , Pawel Laszczak , Nishanth Menon , Vignesh Raghavendra , Tero Kristo Cc: linux-usb@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, =?utf-8?q?Th=C3=A9o_Lebrun?= X-Mailer: b4 0.12.3 X-GND-Sasl: theo.lebrun@bootlin.com On our platform, suspend-to-idle or suspend-to-RAM turn the controller off thanks to a power-domain. This compatible triggers reset on resume behavior to reconfigure the hardware. Signed-off-by: Théo Lebrun --- arch/arm64/boot/dts/ti/k3-j7200-main.dtsi | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/arm64/boot/dts/ti/k3-j7200-main.dtsi b/arch/arm64/boot/dts/ti/k3-j7200-main.dtsi index 709081cd1e7f..581905d9199e 100644 --- a/arch/arm64/boot/dts/ti/k3-j7200-main.dtsi +++ b/arch/arm64/boot/dts/ti/k3-j7200-main.dtsi @@ -788,7 +788,7 @@ pcie1_ep: pcie-ep@2910000 { }; usbss0: cdns-usb@4104000 { - compatible = "ti,j721e-usb"; + compatible = "ti,j7200-usb"; reg = <0x00 0x4104000 0x00 0x100>; dma-coherent; power-domains = <&k3_pds 288 TI_SCI_PD_EXCLUSIVE>;