From: Marek Vasut <marex@nabladev.com>
To: linux-usb@vger.kernel.org
Cc: fabrice.gasnier@foss.st.com, Marek Vasut <marex@nabladev.com>,
Alexandre Torgue <alexandre.torgue@foss.st.com>,
Francois Choleau <francois.choleau@st.com>,
Christian Bruel <christian.bruel@foss.st.com>,
Conor Dooley <conor+dt@kernel.org>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Maxime Coquelin <mcoquelin.stm32@gmail.com>,
Neil Armstrong <neil.armstrong@linaro.org>,
Pankaj Dev <pankaj.dev@st.com>,
Rahul Kumar <rahul.kumar05@st.com>, Rob Herring <robh@kernel.org>,
Rosen Penev <rosenp@gmail.com>,
Thinh Nguyen <Thinh.Nguyen@synopsys.com>,
Vinod Koul <vkoul@kernel.org>,
devicetree@vger.kernel.org, kernel@dh-electronics.com,
linux-arm-kernel@lists.infradead.org,
linux-kernel@vger.kernel.org, linux-phy@lists.infradead.org,
linux-stm32@st-md-mailman.stormreply.com
Subject: [PATCH v3 8/9] arm64: dts: st: Add USB nodes on stm32mp231
Date: Sat, 22 Aug 2026 09:46:41 +0200 [thread overview]
Message-ID: <20260822074816.548662-9-marex@nabladev.com> (raw)
In-Reply-To: <20260822074816.548662-1-marex@nabladev.com>
Add USB controller and PHY nodes to stm32mp231 DT.
This includes two USB 2.0 FEMTO PHYs, USB 2.0 host
controller and DWC3 DRD controller nodes.
Co-developed-by: Alexandre Torgue <alexandre.torgue@foss.st.com>
Signed-off-by: Alexandre Torgue <alexandre.torgue@foss.st.com>
Co-developed-by: Francois Choleau <francois.choleau@st.com>
Signed-off-by: Francois Choleau <francois.choleau@st.com>
Signed-off-by: Marek Vasut <marex@nabladev.com>
---
Cc: Alexandre Torgue <alexandre.torgue@foss.st.com>
Cc: Christian Bruel <christian.bruel@foss.st.com>
Cc: Conor Dooley <conor+dt@kernel.org>
Cc: Fabrice Gasnier <fabrice.gasnier@foss.st.com>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: Krzysztof Kozlowski <krzk+dt@kernel.org>
Cc: Maxime Coquelin <mcoquelin.stm32@gmail.com>
Cc: Neil Armstrong <neil.armstrong@linaro.org>
Cc: Pankaj Dev <pankaj.dev@st.com>
Cc: Rahul Kumar <rahul.kumar05@st.com>
Cc: Rob Herring <robh@kernel.org>
Cc: Rosen Penev <rosenp@gmail.com>
Cc: Thinh Nguyen <Thinh.Nguyen@synopsys.com>
Cc: Vinod Koul <vkoul@kernel.org>
Cc: devicetree@vger.kernel.org
Cc: kernel@dh-electronics.com
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-kernel@vger.kernel.org
Cc: linux-phy@lists.infradead.org
Cc: linux-stm32@st-md-mailman.stormreply.com
Cc: linux-usb@vger.kernel.org
---
V2: - Fix up Sob/Cdb lines
- Move PHY into syscfg subnode
- Turn st,stm32mp23-syscfg into simple-mfd
- Use clock-cells = <1> to discern OSC and future PLL clock from the PHY
V3: - Drop combophy which is not present on MP23
- Describe OHCI clock as the CMN clock
---
arch/arm64/boot/dts/st/stm32mp231.dtsi | 67 +++++++++++++++++++++++++-
1 file changed, 66 insertions(+), 1 deletion(-)
diff --git a/arch/arm64/boot/dts/st/stm32mp231.dtsi b/arch/arm64/boot/dts/st/stm32mp231.dtsi
index 4505fc0e3b537..314a514f31024 100644
--- a/arch/arm64/boot/dts/st/stm32mp231.dtsi
+++ b/arch/arm64/boot/dts/st/stm32mp231.dtsi
@@ -7,6 +7,7 @@
#include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/regulator/st,stm32mp25-regulator.h>
#include <dt-bindings/reset/st,stm32mp25-rcc.h>
+#include <dt-bindings/phy/phy.h>
/ {
#address-cells = <2>;
@@ -862,6 +863,48 @@ stmmac_axi_config_1: stmmac-axi-config {
snps,wr_osr_lmt = <0x7>;
};
};
+
+ usbh_ohci: usb@482e0000 {
+ compatible = "generic-ohci";
+ reg = <0x482e0000 0x1000>;
+ access-controllers = <&rifsc 63>;
+ clocks = <&usb2_phy1 1>, <&rcc CK_BUS_USB2OHCI>;
+ interrupts = <GIC_SPI 140 IRQ_TYPE_LEVEL_HIGH>;
+ phys = <&usb2_phy1>;
+ phy-names = "usb";
+ resets = <&rcc USBH_R>;
+ status = "disabled";
+ };
+
+ usbh_ehci: usb@482f0000 {
+ compatible = "generic-ehci";
+ reg = <0x482f0000 0x1000>;
+ access-controllers = <&rifsc 63>;
+ clocks = <&usb2_phy1 0>, <&rcc CK_BUS_USB2EHCI>;
+ companion = <&usbh_ohci>;
+ interrupts = <GIC_SPI 139 IRQ_TYPE_LEVEL_HIGH>;
+ phys = <&usb2_phy1>;
+ phy-names = "usb";
+ resets = <&rcc USBH_R>;
+ status = "disabled";
+ };
+
+ usb3dr: usb@48300000 {
+ compatible = "st,stm32mp25-dwc3";
+ reg = <0x48300000 0x100000>;
+ access-controllers = <&rifsc 66>;
+ clocks = <&rcc CK_KER_USB2PHY2>,
+ <&rcc CK_BUS_USB3DR>,
+ <&rcc CK_KER_USB2PHY2>;
+ clock-names = "ref", "bus_early", "suspend";
+ interrupts = <GIC_SPI 228 IRQ_TYPE_LEVEL_HIGH>;
+ maximum-speed = "high-speed";
+ phys = <&usb2_phy2>;
+ phy-names = "usb2-phy";
+ resets = <&rcc USB3DR_R>;
+ st,syscfg = <&syscfg 0x4800>;
+ status = "disabled";
+ };
};
bsec: efuse@44000000 {
@@ -1062,9 +1105,31 @@ exti1: interrupt-controller@44220000 {
};
syscfg: syscon@44230000 {
- compatible = "st,stm32mp23-syscfg", "syscon";
+ compatible = "st,stm32mp23-syscfg", "syscon", "simple-mfd";
reg = <0x44230000 0x10000>;
#clock-cells = <0>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ usb2_phy1: phy@2400 {
+ compatible = "st,stm32mp25-usb2phy1";
+ reg = <0x2400 0x24>;
+ #phy-cells = <0>;
+ #clock-cells = <1>;
+ clocks = <&rcc CK_KER_USB2PHY1>;
+ resets = <&rcc USB2PHY1_R>;
+ status = "disabled";
+ };
+
+ usb2_phy2: phy@2800 {
+ compatible = "st,stm32mp25-usb2phy2";
+ reg = <0x2800 0xc>;
+ #phy-cells = <0>;
+ #clock-cells = <1>;
+ clocks = <&rcc CK_KER_USB2PHY2EN>;
+ resets = <&rcc USB2PHY2_R>;
+ status = "disabled";
+ };
};
pinctrl: pinctrl@44240000 {
--
2.53.0
WARNING: multiple messages have this Message-ID (diff)
From: Marek Vasut <marex@nabladev.com>
To: linux-usb@vger.kernel.org
Cc: fabrice.gasnier@foss.st.com, Marek Vasut <marex@nabladev.com>,
Alexandre Torgue <alexandre.torgue@foss.st.com>,
Francois Choleau <francois.choleau@st.com>,
Christian Bruel <christian.bruel@foss.st.com>,
Conor Dooley <conor+dt@kernel.org>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Maxime Coquelin <mcoquelin.stm32@gmail.com>,
Neil Armstrong <neil.armstrong@linaro.org>,
Pankaj Dev <pankaj.dev@st.com>,
Rahul Kumar <rahul.kumar05@st.com>, Rob Herring <robh@kernel.org>,
Rosen Penev <rosenp@gmail.com>,
Thinh Nguyen <Thinh.Nguyen@synopsys.com>,
Vinod Koul <vkoul@kernel.org>,
devicetree@vger.kernel.org, kernel@dh-electronics.com,
linux-arm-kernel@lists.infradead.org,
linux-kernel@vger.kernel.org, linux-phy@lists.infradead.org,
linux-stm32@st-md-mailman.stormreply.com
Subject: [PATCH v3 8/9] arm64: dts: st: Add USB nodes on stm32mp231
Date: Sat, 22 Aug 2026 09:46:41 +0200 [thread overview]
Message-ID: <20260822074816.548662-9-marex@nabladev.com> (raw)
In-Reply-To: <20260822074816.548662-1-marex@nabladev.com>
Add USB controller and PHY nodes to stm32mp231 DT.
This includes two USB 2.0 FEMTO PHYs, USB 2.0 host
controller and DWC3 DRD controller nodes.
Co-developed-by: Alexandre Torgue <alexandre.torgue@foss.st.com>
Signed-off-by: Alexandre Torgue <alexandre.torgue@foss.st.com>
Co-developed-by: Francois Choleau <francois.choleau@st.com>
Signed-off-by: Francois Choleau <francois.choleau@st.com>
Signed-off-by: Marek Vasut <marex@nabladev.com>
---
Cc: Alexandre Torgue <alexandre.torgue@foss.st.com>
Cc: Christian Bruel <christian.bruel@foss.st.com>
Cc: Conor Dooley <conor+dt@kernel.org>
Cc: Fabrice Gasnier <fabrice.gasnier@foss.st.com>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: Krzysztof Kozlowski <krzk+dt@kernel.org>
Cc: Maxime Coquelin <mcoquelin.stm32@gmail.com>
Cc: Neil Armstrong <neil.armstrong@linaro.org>
Cc: Pankaj Dev <pankaj.dev@st.com>
Cc: Rahul Kumar <rahul.kumar05@st.com>
Cc: Rob Herring <robh@kernel.org>
Cc: Rosen Penev <rosenp@gmail.com>
Cc: Thinh Nguyen <Thinh.Nguyen@synopsys.com>
Cc: Vinod Koul <vkoul@kernel.org>
Cc: devicetree@vger.kernel.org
Cc: kernel@dh-electronics.com
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-kernel@vger.kernel.org
Cc: linux-phy@lists.infradead.org
Cc: linux-stm32@st-md-mailman.stormreply.com
Cc: linux-usb@vger.kernel.org
---
V2: - Fix up Sob/Cdb lines
- Move PHY into syscfg subnode
- Turn st,stm32mp23-syscfg into simple-mfd
- Use clock-cells = <1> to discern OSC and future PLL clock from the PHY
V3: - Drop combophy which is not present on MP23
- Describe OHCI clock as the CMN clock
---
arch/arm64/boot/dts/st/stm32mp231.dtsi | 67 +++++++++++++++++++++++++-
1 file changed, 66 insertions(+), 1 deletion(-)
diff --git a/arch/arm64/boot/dts/st/stm32mp231.dtsi b/arch/arm64/boot/dts/st/stm32mp231.dtsi
index 4505fc0e3b537..314a514f31024 100644
--- a/arch/arm64/boot/dts/st/stm32mp231.dtsi
+++ b/arch/arm64/boot/dts/st/stm32mp231.dtsi
@@ -7,6 +7,7 @@
#include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/regulator/st,stm32mp25-regulator.h>
#include <dt-bindings/reset/st,stm32mp25-rcc.h>
+#include <dt-bindings/phy/phy.h>
/ {
#address-cells = <2>;
@@ -862,6 +863,48 @@ stmmac_axi_config_1: stmmac-axi-config {
snps,wr_osr_lmt = <0x7>;
};
};
+
+ usbh_ohci: usb@482e0000 {
+ compatible = "generic-ohci";
+ reg = <0x482e0000 0x1000>;
+ access-controllers = <&rifsc 63>;
+ clocks = <&usb2_phy1 1>, <&rcc CK_BUS_USB2OHCI>;
+ interrupts = <GIC_SPI 140 IRQ_TYPE_LEVEL_HIGH>;
+ phys = <&usb2_phy1>;
+ phy-names = "usb";
+ resets = <&rcc USBH_R>;
+ status = "disabled";
+ };
+
+ usbh_ehci: usb@482f0000 {
+ compatible = "generic-ehci";
+ reg = <0x482f0000 0x1000>;
+ access-controllers = <&rifsc 63>;
+ clocks = <&usb2_phy1 0>, <&rcc CK_BUS_USB2EHCI>;
+ companion = <&usbh_ohci>;
+ interrupts = <GIC_SPI 139 IRQ_TYPE_LEVEL_HIGH>;
+ phys = <&usb2_phy1>;
+ phy-names = "usb";
+ resets = <&rcc USBH_R>;
+ status = "disabled";
+ };
+
+ usb3dr: usb@48300000 {
+ compatible = "st,stm32mp25-dwc3";
+ reg = <0x48300000 0x100000>;
+ access-controllers = <&rifsc 66>;
+ clocks = <&rcc CK_KER_USB2PHY2>,
+ <&rcc CK_BUS_USB3DR>,
+ <&rcc CK_KER_USB2PHY2>;
+ clock-names = "ref", "bus_early", "suspend";
+ interrupts = <GIC_SPI 228 IRQ_TYPE_LEVEL_HIGH>;
+ maximum-speed = "high-speed";
+ phys = <&usb2_phy2>;
+ phy-names = "usb2-phy";
+ resets = <&rcc USB3DR_R>;
+ st,syscfg = <&syscfg 0x4800>;
+ status = "disabled";
+ };
};
bsec: efuse@44000000 {
@@ -1062,9 +1105,31 @@ exti1: interrupt-controller@44220000 {
};
syscfg: syscon@44230000 {
- compatible = "st,stm32mp23-syscfg", "syscon";
+ compatible = "st,stm32mp23-syscfg", "syscon", "simple-mfd";
reg = <0x44230000 0x10000>;
#clock-cells = <0>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ usb2_phy1: phy@2400 {
+ compatible = "st,stm32mp25-usb2phy1";
+ reg = <0x2400 0x24>;
+ #phy-cells = <0>;
+ #clock-cells = <1>;
+ clocks = <&rcc CK_KER_USB2PHY1>;
+ resets = <&rcc USB2PHY1_R>;
+ status = "disabled";
+ };
+
+ usb2_phy2: phy@2800 {
+ compatible = "st,stm32mp25-usb2phy2";
+ reg = <0x2800 0xc>;
+ #phy-cells = <0>;
+ #clock-cells = <1>;
+ clocks = <&rcc CK_KER_USB2PHY2EN>;
+ resets = <&rcc USB2PHY2_R>;
+ status = "disabled";
+ };
};
pinctrl: pinctrl@44240000 {
--
2.53.0
--
linux-phy mailing list
linux-phy@lists.infradead.org
https://lists.infradead.org/mailman/listinfo/linux-phy
next prev parent reply other threads:[~2026-08-22 7:49 UTC|newest]
Thread overview: 78+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-08-22 7:46 [PATCH v3 0/9] arm64: dts: phy: st: usb: Add STM32MP2 USB support Marek Vasut
2026-08-22 7:46 ` Marek Vasut
2026-08-22 7:46 ` [PATCH v3 1/9] dt-bindings: phy: Document ST STM32MP25 USB2-FEMTO PHY Marek Vasut
2026-08-22 7:46 ` Marek Vasut
2026-08-22 7:55 ` sashiko-bot
2026-08-22 7:55 ` sashiko-bot
2026-08-27 12:54 ` Krzysztof Kozlowski
2026-08-27 12:54 ` Krzysztof Kozlowski
2026-08-27 14:53 ` Marek Vasut
2026-08-27 14:53 ` Marek Vasut
2026-08-27 21:33 ` Krzysztof Kozlowski
2026-08-27 21:33 ` Krzysztof Kozlowski
2026-08-27 23:14 ` Marek Vasut
2026-08-27 23:14 ` Marek Vasut
2026-08-28 6:37 ` Krzysztof Kozlowski
2026-08-28 6:37 ` Krzysztof Kozlowski
2026-08-28 9:11 ` Krzysztof Kozlowski
2026-08-28 9:11 ` Krzysztof Kozlowski
2026-08-28 13:11 ` Marek Vasut
2026-08-28 13:11 ` Marek Vasut
2026-08-22 7:46 ` [PATCH v3 2/9] phy: stm32: Add support for " Marek Vasut
2026-08-22 7:46 ` Marek Vasut
2026-08-22 7:58 ` sashiko-bot
2026-08-22 7:58 ` sashiko-bot
2026-08-24 13:17 ` Fabrice Gasnier
2026-08-24 13:17 ` Fabrice Gasnier
2026-08-24 14:53 ` Marek Vasut
2026-08-24 14:53 ` Marek Vasut
2026-08-27 16:00 ` Vinod Koul
2026-08-27 16:00 ` Vinod Koul
2026-08-27 16:52 ` Marek Vasut
2026-08-27 16:52 ` Marek Vasut
2026-08-22 7:46 ` [PATCH v3 3/9] dt-bindings: usb: generic-ehci: Document access-controllers property Marek Vasut
2026-08-22 7:46 ` Marek Vasut
2026-08-28 9:13 ` Krzysztof Kozlowski
2026-08-28 9:13 ` Krzysztof Kozlowski
2026-08-28 13:44 ` Marek Vasut
2026-08-28 13:44 ` Marek Vasut
2026-08-22 7:46 ` [PATCH v3 4/9] dt-bindings: usb: generic-ohci: " Marek Vasut
2026-08-22 7:46 ` Marek Vasut
2026-08-22 7:46 ` [PATCH v3 5/9] dt-bindings: usb: dwc3: Document ST STM32MP2 DWC3 xHCI USB controller Marek Vasut
2026-08-22 7:46 ` Marek Vasut
2026-08-27 12:59 ` Krzysztof Kozlowski
2026-08-27 12:59 ` Krzysztof Kozlowski
2026-08-27 14:56 ` Marek Vasut
2026-08-27 14:56 ` Marek Vasut
2026-08-22 7:46 ` [PATCH v3 6/9] usb: dwc3: dwc3-generic-plat: Add ST STM32MP2 DWC3 xHCI USB controller glue Marek Vasut
2026-08-22 7:46 ` Marek Vasut
2026-08-22 7:56 ` sashiko-bot
2026-08-22 7:56 ` sashiko-bot
2026-08-22 7:46 ` [PATCH v3 7/9] dt-bindings: arm: stm32: Switch st,stm32mp23/25-syscfg into simple-mfd Marek Vasut
2026-08-22 7:46 ` Marek Vasut
2026-08-22 8:01 ` sashiko-bot
2026-08-22 8:01 ` sashiko-bot
2026-08-27 13:07 ` Krzysztof Kozlowski
2026-08-27 13:07 ` Krzysztof Kozlowski
2026-08-27 15:04 ` Marek Vasut
2026-08-27 15:04 ` Marek Vasut
2026-08-27 21:35 ` Krzysztof Kozlowski
2026-08-27 21:35 ` Krzysztof Kozlowski
2026-08-28 1:03 ` Marek Vasut
2026-08-28 1:03 ` Marek Vasut
2026-08-22 7:46 ` Marek Vasut [this message]
2026-08-22 7:46 ` [PATCH v3 8/9] arm64: dts: st: Add USB nodes on stm32mp231 Marek Vasut
2026-08-22 8:07 ` sashiko-bot
2026-08-22 8:07 ` sashiko-bot
2026-08-24 13:18 ` Fabrice Gasnier
2026-08-24 13:18 ` Fabrice Gasnier
2026-08-24 14:39 ` Marek Vasut
2026-08-24 14:39 ` Marek Vasut
2026-08-22 7:46 ` [PATCH v3 9/9] arm64: dts: st: Add USB nodes on stm32mp251 Marek Vasut
2026-08-22 7:46 ` Marek Vasut
2026-08-24 13:19 ` Fabrice Gasnier
2026-08-24 13:19 ` Fabrice Gasnier
2026-08-24 14:39 ` Marek Vasut
2026-08-24 14:39 ` Marek Vasut
2026-08-28 9:15 ` Krzysztof Kozlowski
2026-08-28 9:15 ` Krzysztof Kozlowski
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260822074816.548662-9-marex@nabladev.com \
--to=marex@nabladev.com \
--cc=Thinh.Nguyen@synopsys.com \
--cc=alexandre.torgue@foss.st.com \
--cc=christian.bruel@foss.st.com \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=fabrice.gasnier@foss.st.com \
--cc=francois.choleau@st.com \
--cc=gregkh@linuxfoundation.org \
--cc=kernel@dh-electronics.com \
--cc=krzk+dt@kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-phy@lists.infradead.org \
--cc=linux-stm32@st-md-mailman.stormreply.com \
--cc=linux-usb@vger.kernel.org \
--cc=mcoquelin.stm32@gmail.com \
--cc=neil.armstrong@linaro.org \
--cc=pankaj.dev@st.com \
--cc=rahul.kumar05@st.com \
--cc=robh@kernel.org \
--cc=rosenp@gmail.com \
--cc=vkoul@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.