[PATCH] ARM: dts: stm32: Convert GPIO hog to USB connector Vbus supply on STM32MP15xx DHCOM PicoITX

Marek Vasut marex at nabladev.com
Thu Oct 22 05:40:55 PDT 2026


Replace current GPIO hog with USB-A connector vbus-supply.
This moves the Vbus GPIO into port control, where it can
be enabled and disabled by the controller as needed.

Signed-off-by: Marek Vasut <marex at nabladev.com>
---
Cc: Alexandre Torgue <alexandre.torgue at foss.st.com>
Cc: Christoph Niedermaier <cniedermaier at dh-electronics.com>
Cc: Conor Dooley <conor+dt at kernel.org>
Cc: Krzysztof Kozlowski <krzk+dt at kernel.org>
Cc: Maxime Coquelin <mcoquelin.stm32 at gmail.com>
Cc: Rob Herring <robh at kernel.org>
Cc: devicetree at vger.kernel.org
Cc: kernel at dh-electronics.com
Cc: linux-arm-kernel at lists.infradead.org
Cc: linux-kernel at vger.kernel.org
Cc: linux-stm32 at st-md-mailman.stormreply.com
---
 .../dts/st/stm32mp15xx-dhcom-picoitx.dtsi     | 27 +++++++++----------
 1 file changed, 12 insertions(+), 15 deletions(-)

diff --git a/arch/arm/boot/dts/st/stm32mp15xx-dhcom-picoitx.dtsi b/arch/arm/boot/dts/st/stm32mp15xx-dhcom-picoitx.dtsi
index 01c693cc03446..7f444bd4c58d3 100644
--- a/arch/arm/boot/dts/st/stm32mp15xx-dhcom-picoitx.dtsi
+++ b/arch/arm/boot/dts/st/stm32mp15xx-dhcom-picoitx.dtsi
@@ -16,6 +16,14 @@ led-0 {
 			default-state = "off";
 		};
 	};
+
+	usb_vbus: vbus-regulator {
+		compatible = "regulator-fixed";
+		gpio = <&gpioa 13 GPIO_ACTIVE_LOW>;
+		regulator-name = "Vbus";
+		regulator-min-microvolt = <5000000>;
+		regulator-max-microvolt = <5000000>;
+	};
 };
 
 &adc {
@@ -30,21 +38,6 @@ &fmc {
 	status = "disabled";
 };
 
-&gpioa {
-	/*
-	 * NOTE: The USB Port on the PicoITX needs a PWR_EN signal to enable
-	 * port power. This signal should be handled by USB power sequencing
-	 * in order to turn on port power when USB bus is powered up, but so
-	 * far there is no such functionality.
-	 */
-	usb-port-power-hog {
-		gpio-hog;
-		gpios = <13 0>;
-		output-low;
-		line-name = "usb-port-power";
-	};
-};
-
 &gpioc {
 	gpio-line-names = "", "", "", "",
 			  "", "", "PicoITX-In1", "",
@@ -132,6 +125,10 @@ &usbphyc {
 
 &usbphyc_port0 {
 	phy-supply = <&vdd_usb>;
+	connector {
+		compatible = "usb-a-connector";
+		vbus-supply = <&usb_vbus>;
+	};
 };
 
 &usbphyc_port1 {
-- 
2.53.0




More information about the linux-arm-kernel mailing list