[PATCH 3/4] arm64: dts: st: Add UCPD node on stm32mp231
From: Marek Vasut
Date: Wed Aug 19 2026 - 12:36:14 EST
Add ST UCPD Type-C block node on stm32mp231. The UCPD integrates the
physical layer of the Power Delivery (PD), with CC signaling method,
for operation with Type-C cables. Vbus and Vconn control is performed
using an external chip, usually ST TCPP01/TCPP02/TCPP03 or similar.
The UCPD Rp/Rd resistor trimming values are part of OTP, add the nvmem
subnode and include a phandle to it.
Signed-off-by: Marek Vasut <marex@xxxxxxxxxxxx>
---
Cc: Alexandre Torgue <alexandre.torgue@xxxxxxxxxxx>
Cc: Conor Dooley <conor+dt@xxxxxxxxxx>
Cc: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
Cc: Heikki Krogerus <heikki.krogerus@xxxxxxxxxxxxxxx>
Cc: Krzysztof Kozlowski <krzk+dt@xxxxxxxxxx>
Cc: Maxime Coquelin <mcoquelin.stm32@xxxxxxxxx>
Cc: Rob Herring <robh@xxxxxxxxxx>
Cc: Sebastian Reichel <sebastian.reichel@xxxxxxxxxxxxx>
Cc: devicetree@xxxxxxxxxxxxxxx
Cc: kernel@xxxxxxxxxxxxxxxxxx
Cc: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx
Cc: linux-kernel@xxxxxxxxxxxxxxx
Cc: linux-stm32@xxxxxxxxxxxxxxxxxxxxxxxxxxxx
Cc: linux-usb@xxxxxxxxxxxxxxx
---
arch/arm64/boot/dts/st/stm32mp231.dtsi | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)
diff --git a/arch/arm64/boot/dts/st/stm32mp231.dtsi b/arch/arm64/boot/dts/st/stm32mp231.dtsi
index 9e1d240888ff2..5049e031a38dd 100644
--- a/arch/arm64/boot/dts/st/stm32mp231.dtsi
+++ b/arch/arm64/boot/dts/st/stm32mp231.dtsi
@@ -715,6 +715,21 @@ dcmipp: dcmipp@48030000 {
status = "disabled";
};
+ ucpd: phy@480a0000 {
+ compatible = "st,stm32mp25-ucpd";
+ reg = <0x480a0000 0x1000>;
+ access-controllers = <&rifsc 69>;
+ clocks = <&rcc CK_BUS_USBTC>, <&rcc CK_KER_USBTC>;
+ clock-names = "apb", "ker";
+ interrupts-extended = <&exti1 46 IRQ_TYPE_LEVEL_HIGH>;
+ nvmem-cells = <&ucpdtrim>;
+ nvmem-cell-names = "trim";
+ power-domains = <&cluster_pd>;
+ resets = <&rcc USBTC_R>;
+ reset-names = "phy";
+ status = "disabled";
+ };
+
sdmmc1: mmc@48220000 {
compatible = "st,stm32mp25-sdmmc2", "arm,pl18x", "arm,primecell";
reg = <0x48220000 0x400>, <0x44230400 0x8>;
@@ -794,6 +809,11 @@ package-otp@1e8 {
reg = <0x1e8 0x1>;
bits = <0 3>;
};
+
+ ucpdtrim: atrim3@1e8 {
+ reg = <0x1e8 0x4>;
+ bits = <4 16>;
+ };
};
rcc: clock-controller@44200000 {
--
2.53.0