* [PATCH v2 0/3] Add and enable USB nodes for ExynosAutov920 SoC
[not found] <CGME20260122125130epcas5p4ac37f540c609f3016ff02f5708e897a2@epcas5p4.samsung.com>
@ 2026-01-22 13:07 ` Pritam Manohar Sutar
2026-01-22 13:07 ` [PATCH v2 1/3] arm64: dts: exynos: ExynosAutov920: Add USB and USB-phy nodes Pritam Manohar Sutar
` (3 more replies)
0 siblings, 4 replies; 23+ messages in thread
From: Pritam Manohar Sutar @ 2026-01-22 13:07 UTC (permalink / raw)
To: robh, krzk+dt, conor+dt, alim.akhtar
Cc: devicetree, linux-arm-kernel, linux-samsung-soc, linux-kernel,
rosa.pila, dev.tailor, faraz.ata, muhammed.ali, selvarasu.g,
pritam.sutar
This SoC has 2 USB typeC and 2 typeA ports those are DWC3 DRD
controllers and among them, one single USB3.1 DRD combo phy and three
USB2.0 only phy controllers. This patchset adds and enables USB and
USB-PHY nodes in dts.
PMIC is not implemented yet, we rely on USB LDOs being enabled by the
bootloader and used dummy regulators for now.
To drive vbus for host mode, it needs GPIO pin to enable vbus regulator.
GPIO expander is present in the dts, we used it to enable the regulator
using GPIO.
USB ports are configured as OTG, and default mode is configured as
peripheral. It will be changed based on requirements.
changelog
----------
Changes in v2:
- As v1 was pushed 3 months back, resending this patchset.
- Since dependencies are merged, removed links from coverletter.
link for v1: https://lore.kernel.org/linux-devicetree/20251024114845.2395166-1-pritam.sutar@samsung.com/
Pritam Manohar Sutar (3):
arm64: dts: exynos: ExynosAutov920: Add USB and USB-phy nodes
arm64: dts: exynos: ExynosAutov920: Add regulators for the USB
arm64: dts: exynos: ExynosAutov920: Enable USB nodes
.../boot/dts/exynos/exynosautov920-sadk.dts | 160 +++++++++++++++++
.../arm64/boot/dts/exynos/exynosautov920.dtsi | 162 ++++++++++++++++++
2 files changed, 322 insertions(+)
--
2.34.1
^ permalink raw reply [flat|nested] 23+ messages in thread
* [PATCH v2 1/3] arm64: dts: exynos: ExynosAutov920: Add USB and USB-phy nodes
2026-01-22 13:07 ` [PATCH v2 0/3] Add and enable USB nodes for ExynosAutov920 SoC Pritam Manohar Sutar
@ 2026-01-22 13:07 ` Pritam Manohar Sutar
2026-01-22 13:07 ` [PATCH v2 2/3] arm64: dts: exynos: ExynosAutov920: Add regulators for the USB Pritam Manohar Sutar
` (2 subsequent siblings)
3 siblings, 0 replies; 23+ messages in thread
From: Pritam Manohar Sutar @ 2026-01-22 13:07 UTC (permalink / raw)
To: robh, krzk+dt, conor+dt, alim.akhtar
Cc: devicetree, linux-arm-kernel, linux-samsung-soc, linux-kernel,
rosa.pila, dev.tailor, faraz.ata, muhammed.ali, selvarasu.g,
pritam.sutar
Add USB and USB PHY controller nodes.
Signed-off-by: Pritam Manohar Sutar <pritam.sutar@samsung.com>
---
.../arm64/boot/dts/exynos/exynosautov920.dtsi | 162 ++++++++++++++++++
1 file changed, 162 insertions(+)
diff --git a/arch/arm64/boot/dts/exynos/exynosautov920.dtsi b/arch/arm64/boot/dts/exynos/exynosautov920.dtsi
index 02bf2ca52fdc..843f2aec3567 100644
--- a/arch/arm64/boot/dts/exynos/exynosautov920.dtsi
+++ b/arch/arm64/boot/dts/exynos/exynosautov920.dtsi
@@ -1409,6 +1409,168 @@ pinctrl_hsi1: pinctrl@16450000 {
interrupts = <GIC_SPI 456 IRQ_TYPE_LEVEL_HIGH>;
};
+ usbdrd31_ssphy: phy@16480000 {
+ compatible = "samsung,exynosautov920-usb31drd-combo-ssphy";
+ reg = <0x16480000 0x0200>;
+ clocks = <&cmu_hsi1 CLK_MOUT_HSI1_NOC_USER>,
+ <&cmu_hsi1 CLK_MOUT_HSI1_USBDRD>;
+ clock-names = "phy", "ref";
+ #phy-cells = <1>;
+ samsung,pmu-syscon = <&pmu_system_controller>;
+ status = "disabled";
+ };
+
+ usbdrd31_hsphy: phy@16490000 {
+ compatible = "samsung,exynosautov920-usbdrd-combo-hsphy";
+ reg = <0x16490000 0x0200>;
+ clocks = <&cmu_hsi1 CLK_MOUT_HSI1_NOC_USER>,
+ <&cmu_hsi1 CLK_MOUT_HSI1_USBDRD>;
+ clock-names = "phy", "ref";
+ #phy-cells = <1>;
+ samsung,pmu-syscon = <&pmu_system_controller>;
+ status = "disabled";
+ };
+
+ usbdrd20_phy0: phy@16500000 {
+ compatible = "samsung,exynosautov920-usbdrd-phy";
+ reg = <0x16500000 0x0200>;
+ clocks = <&cmu_hsi1 CLK_MOUT_HSI1_NOC_USER>,
+ <&cmu_hsi1 CLK_MOUT_HSI1_USBDRD>;
+ clock-names = "phy", "ref";
+ #phy-cells = <1>;
+ samsung,pmu-syscon = <&pmu_system_controller>;
+ status = "disabled";
+ };
+
+ usbdrd20_phy1: phy@16510000 {
+ compatible = "samsung,exynosautov920-usbdrd-phy";
+ reg = <0x16510000 0x0200>;
+ clocks = <&cmu_hsi1 CLK_MOUT_HSI1_NOC_USER>,
+ <&cmu_hsi1 CLK_MOUT_HSI1_USBDRD>;
+ clock-names = "phy", "ref";
+ #phy-cells = <1>;
+ samsung,pmu-syscon = <&pmu_system_controller>;
+ status = "disabled";
+ };
+
+ usbdrd20_phy2: phy@16520000 {
+ compatible = "samsung,exynosautov920-usbdrd-phy";
+ reg = <0x16520000 0x0200>;
+ clocks = <&cmu_hsi1 CLK_MOUT_HSI1_NOC_USER>,
+ <&cmu_hsi1 CLK_MOUT_HSI1_USBDRD>;
+ clock-names = "phy", "ref";
+ #phy-cells = <1>;
+ samsung,pmu-syscon = <&pmu_system_controller>;
+ status = "disabled";
+ };
+
+ /* This usb port supports usb31 and usb20 speeds */
+ usbdrd31: usb@16600000 {
+ compatible = "samsung,exynosautov920-dwusb3";
+ ranges = <0x0 0x16600000 0x10000>;
+ clocks = <&cmu_hsi1 CLK_MOUT_HSI1_USBDRD>,
+ <&cmu_hsi1 CLK_MOUT_HSI1_USBDRD>;
+ clock-names = "ref", "susp_clk";
+ #address-cells = <1>;
+ #size-cells = <1>;
+ status = "disabled";
+
+ usbdrd31_dwc3: usb@0 {
+ compatible = "snps,dwc3";
+ reg = <0x0 0x10000>;
+ clocks = <&cmu_hsi1 CLK_MOUT_HSI1_USBDRD>,
+ <&cmu_hsi1 CLK_MOUT_HSI1_USBDRD>;
+ clock-names = "ref", "susp_clk";
+ interrupts = <GIC_SPI 491 IRQ_TYPE_LEVEL_HIGH>;
+ phys = <&usbdrd31_hsphy 0>, <&usbdrd31_ssphy 0>;
+ phy-names = "usb2-phy", "usb3-phy";
+ snps,has-lpm-erratum;
+ snps,dis_u2_susphy_quirk;
+ snps,dis_u3_susphy_quirk;
+ };
+ };
+
+ /* This usb port supports only usb20 speeds */
+ usbdrd20_0: usb@16700000 {
+ compatible = "samsung,exynosautov920-dwusb3";
+ ranges = <0x0 0x16700000 0x10000>;
+ clocks = <&cmu_hsi1 CLK_MOUT_HSI1_USBDRD>,
+ <&cmu_hsi1 CLK_MOUT_HSI1_USBDRD>;
+ clock-names = "ref", "susp_clk";
+ #address-cells = <1>;
+ #size-cells = <1>;
+ status = "disabled";
+
+ usbdrd20_dwc3_0: usb@0 {
+ compatible = "snps,dwc3";
+ reg = <0x0 0x10000>;
+ clocks = <&cmu_hsi1 CLK_MOUT_HSI1_USBDRD>,
+ <&cmu_hsi1 CLK_MOUT_HSI1_USBDRD>;
+ clock-names = "ref", "susp_clk";
+ interrupts = <GIC_SPI 479 IRQ_TYPE_LEVEL_HIGH>;
+ phys = <&usbdrd20_phy0 0>;
+ phy-names = "usb2-phy";
+ snps,has-lpm-erratum;
+ snps,dis_u2_susphy_quirk;
+ snps,dis_u3_susphy_quirk;
+ snps,quirk-frame-length-adjustment = <0x20>;
+ };
+ };
+
+ /* This usb port supports only usb20 speeds */
+ usbdrd20_1: usb@16800000 {
+ compatible = "samsung,exynosautov920-dwusb3";
+ ranges = <0x0 0x16800000 0x10000>;
+ clocks = <&cmu_hsi1 CLK_MOUT_HSI1_USBDRD>,
+ <&cmu_hsi1 CLK_MOUT_HSI1_USBDRD>;
+ clock-names = "ref", "susp_clk";
+ #address-cells = <1>;
+ #size-cells = <1>;
+ status = "disabled";
+
+ usbdrd20_dwc3_1: usb@0 {
+ compatible = "snps,dwc3";
+ reg = <0x0 0x10000>;
+ clocks = <&cmu_hsi1 CLK_MOUT_HSI1_USBDRD>,
+ <&cmu_hsi1 CLK_MOUT_HSI1_USBDRD>;
+ clock-names = "ref", "susp_clk";
+ interrupts = <GIC_SPI 481 IRQ_TYPE_LEVEL_HIGH>;
+ phys = <&usbdrd20_phy1 0>;
+ phy-names = "usb2-phy";
+ snps,has-lpm-erratum;
+ snps,dis_u2_susphy_quirk;
+ snps,dis_u3_susphy_quirk;
+ snps,quirk-frame-length-adjustment = <0x20>;
+ };
+ };
+
+ /* This usb port supports only usb20 speeds */
+ usbdrd20_2: usb@16900000 {
+ compatible = "samsung,exynosautov920-dwusb3";
+ ranges = <0x0 0x16900000 0x10000>;
+ clocks = <&cmu_hsi1 CLK_MOUT_HSI1_USBDRD>,
+ <&cmu_hsi1 CLK_MOUT_HSI1_USBDRD>;
+ clock-names = "ref", "susp_clk";
+ #address-cells = <1>;
+ #size-cells = <1>;
+ status = "disabled";
+
+ usbdrd20_dwc3_2: usb@0 {
+ compatible = "snps,dwc3";
+ reg = <0x0 0x10000>;
+ clocks = <&cmu_hsi1 CLK_MOUT_HSI1_USBDRD>,
+ <&cmu_hsi1 CLK_MOUT_HSI1_USBDRD>;
+ clock-names = "ref", "susp_clk";
+ interrupts = <GIC_SPI 483 IRQ_TYPE_LEVEL_HIGH>;
+ phys = <&usbdrd20_phy2 0>;
+ phy-names = "usb2-phy";
+ snps,has-lpm-erratum;
+ snps,dis_u2_susphy_quirk;
+ snps,dis_u3_susphy_quirk;
+ snps,quirk-frame-length-adjustment = <0x20>;
+ };
+ };
+
cmu_hsi2: clock-controller@16b00000 {
compatible = "samsung,exynosautov920-cmu-hsi2";
reg = <0x16b00000 0x8000>;
--
2.34.1
^ permalink raw reply related [flat|nested] 23+ messages in thread
* [PATCH v2 2/3] arm64: dts: exynos: ExynosAutov920: Add regulators for the USB
2026-01-22 13:07 ` [PATCH v2 0/3] Add and enable USB nodes for ExynosAutov920 SoC Pritam Manohar Sutar
2026-01-22 13:07 ` [PATCH v2 1/3] arm64: dts: exynos: ExynosAutov920: Add USB and USB-phy nodes Pritam Manohar Sutar
@ 2026-01-22 13:07 ` Pritam Manohar Sutar
2026-01-22 13:34 ` Krzysztof Kozlowski
2026-01-22 13:07 ` [PATCH v2 3/3] arm64: dts: exynos: ExynosAutov920: Enable USB nodes Pritam Manohar Sutar
2026-01-22 17:15 ` [PATCH v2 0/3] Add and enable USB nodes for ExynosAutov920 SoC Rob Herring
3 siblings, 1 reply; 23+ messages in thread
From: Pritam Manohar Sutar @ 2026-01-22 13:07 UTC (permalink / raw)
To: robh, krzk+dt, conor+dt, alim.akhtar
Cc: devicetree, linux-arm-kernel, linux-samsung-soc, linux-kernel,
rosa.pila, dev.tailor, faraz.ata, muhammed.ali, selvarasu.g,
pritam.sutar
Add dummy regulator for USB and PHY supplies.
Add vbus regulator that is enabled by GPIO pin.
Signed-off-by: Pritam Manohar Sutar <pritam.sutar@samsung.com>
---
.../boot/dts/exynos/exynosautov920-sadk.dts | 139 ++++++++++++++++++
1 file changed, 139 insertions(+)
diff --git a/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts b/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts
index a397f068ed53..f90f7704597c 100644
--- a/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts
+++ b/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts
@@ -52,6 +52,76 @@ memory@80000000 {
<0x8 0x80000000 0x1 0xfba00000>,
<0xa 0x00000000 0x2 0x00000000>;
};
+
+ /* TODO: Remove this once PMIC is implemented */
+ dummy_regulator: regulator-0 {
+ compatible = "regulator-fixed";
+ regulator-name = "dummy_regulator";
+ };
+
+ usbdrd31_dwc3_vbus: usbdrd31_dwc3-vbus {
+ compatible = "regulator-fixed";
+ regulator-name = "usbdrd31_dwc3-vbus";
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+ enable-active-high;
+ regulator-always-on;
+ gpio = <&gpp2 0 GPIO_ACTIVE_HIGH>;
+ };
+
+ /* Use gpio for enabling vbus regulator */
+ usb_phy0: usb-phy0 {
+ compatible = "usb-nop-xceiv";
+ vbus-supply = <&usbdrd31_dwc3_vbus>;
+ };
+
+ usbdrd20_dwc3_0_vbus: usbdrd20_dwc3_0-vbus {
+ compatible = "regulator-fixed";
+ regulator-name = "usbdrd20_dwc3_0-vbus";
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+ enable-active-high;
+ regulator-always-on;
+ gpio = <&gpp2 1 GPIO_ACTIVE_HIGH>;
+ };
+
+ /* Use gpio for enabling vbus regulator */
+ usb_phy1: usb-phy1 {
+ compatible = "usb-nop-xceiv";
+ vbus-supply = <&usbdrd20_dwc3_0_vbus>;
+ };
+
+ usbdrd20_dwc3_1_vbus: usbdrd20_dwc3_1-vbus {
+ compatible = "regulator-fixed";
+ regulator-name = "usbdrd20_dwc3_1-vbus";
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+ enable-active-high;
+ regulator-always-on;
+ gpio = <&gpp2 2 GPIO_ACTIVE_HIGH>;
+ };
+
+ /* Use gpio for enabling vbus regulator */
+ usb_phy2: usb-phy2 {
+ compatible = "usb-nop-xceiv";
+ vbus-supply = <&usbdrd20_dwc3_1_vbus>;
+ };
+
+ usbdrd20_dwc3_2_vbus: usbdrd20_dwc3_2-vbus {
+ compatible = "regulator-fixed";
+ regulator-name = "usbdrd20_dwc3_2-vbus";
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+ enable-active-high;
+ regulator-always-on;
+ gpio = <&gpp2 3 GPIO_ACTIVE_HIGH>;
+ };
+
+ /* Use gpio for enabling vbus regulator */
+ usb_phy3: usb-phy3 {
+ compatible = "usb-nop-xceiv";
+ vbus-supply = <&usbdrd20_dwc3_2_vbus>;
+ };
};
&pinctrl_alive {
@@ -86,3 +156,72 @@ &usi_0 {
&xtcxo {
clock-frequency = <38400000>;
};
+
+&usbdrd31_ssphy {
+ dvdd-supply = <&dummy_regulator>;
+ vdd18-supply = <&dummy_regulator>;
+};
+
+&usbdrd31_hsphy {
+ dvdd-supply = <&dummy_regulator>;
+ vdd18-supply = <&dummy_regulator>;
+ vdd33-supply = <&dummy_regulator>;
+};
+
+&usbdrd31_dwc3 {
+ maximum-speed = "super-speed-plus";
+ usb-phy = <&usb_phy0>;
+};
+
+&usbdrd31 {
+ vdd10-supply = <&dummy_regulator>;
+ vdd33-supply = <&dummy_regulator>;
+};
+
+&usbdrd20_phy0 {
+ dvdd-supply = <&dummy_regulator>;
+ vdd18-supply = <&dummy_regulator>;
+ vdd33-supply = <&dummy_regulator>;
+};
+
+&usbdrd20_dwc3_0 {
+ maximum-speed = "high-speed";
+ usb-phy = <&usb_phy1>;
+};
+
+&usbdrd20_0 {
+ vdd10-supply = <&dummy_regulator>;
+ vdd33-supply = <&dummy_regulator>;
+};
+
+&usbdrd20_phy1 {
+ dvdd-supply = <&dummy_regulator>;
+ vdd18-supply = <&dummy_regulator>;
+ vdd33-supply = <&dummy_regulator>;
+};
+
+&usbdrd20_dwc3_1 {
+ maximum-speed = "high-speed";
+ usb-phy = <&usb_phy2>;
+};
+
+&usbdrd20_1 {
+ vdd10-supply = <&dummy_regulator>;
+ vdd33-supply = <&dummy_regulator>;
+};
+
+&usbdrd20_phy2 {
+ dvdd-supply = <&dummy_regulator>;
+ vdd18-supply = <&dummy_regulator>;
+ vdd33-supply = <&dummy_regulator>;
+};
+
+&usbdrd20_dwc3_2 {
+ maximum-speed = "high-speed";
+ usb-phy = <&usb_phy3>;
+};
+
+&usbdrd20_2 {
+ vdd10-supply = <&dummy_regulator>;
+ vdd33-supply = <&dummy_regulator>;
+};
--
2.34.1
^ permalink raw reply related [flat|nested] 23+ messages in thread
* [PATCH v2 3/3] arm64: dts: exynos: ExynosAutov920: Enable USB nodes
2026-01-22 13:07 ` [PATCH v2 0/3] Add and enable USB nodes for ExynosAutov920 SoC Pritam Manohar Sutar
2026-01-22 13:07 ` [PATCH v2 1/3] arm64: dts: exynos: ExynosAutov920: Add USB and USB-phy nodes Pritam Manohar Sutar
2026-01-22 13:07 ` [PATCH v2 2/3] arm64: dts: exynos: ExynosAutov920: Add regulators for the USB Pritam Manohar Sutar
@ 2026-01-22 13:07 ` Pritam Manohar Sutar
2026-01-22 13:35 ` Krzysztof Kozlowski
2026-01-22 17:15 ` [PATCH v2 0/3] Add and enable USB nodes for ExynosAutov920 SoC Rob Herring
3 siblings, 1 reply; 23+ messages in thread
From: Pritam Manohar Sutar @ 2026-01-22 13:07 UTC (permalink / raw)
To: robh, krzk+dt, conor+dt, alim.akhtar
Cc: devicetree, linux-arm-kernel, linux-samsung-soc, linux-kernel,
rosa.pila, dev.tailor, faraz.ata, muhammed.ali, selvarasu.g,
pritam.sutar
Enable USB PHY and DWC3 USB controllers' nodes.
Signed-off-by: Pritam Manohar Sutar <pritam.sutar@samsung.com>
---
.../boot/dts/exynos/exynosautov920-sadk.dts | 21 +++++++++++++++++++
1 file changed, 21 insertions(+)
diff --git a/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts b/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts
index f90f7704597c..5896dd69334a 100644
--- a/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts
+++ b/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts
@@ -160,15 +160,20 @@ &xtcxo {
&usbdrd31_ssphy {
dvdd-supply = <&dummy_regulator>;
vdd18-supply = <&dummy_regulator>;
+ status = "okay";
};
&usbdrd31_hsphy {
dvdd-supply = <&dummy_regulator>;
vdd18-supply = <&dummy_regulator>;
vdd33-supply = <&dummy_regulator>;
+ status = "okay";
};
&usbdrd31_dwc3 {
+ dr_mode = "otg";
+ usb-role-switch;
+ role-switch-default-mode = "peripheral";
maximum-speed = "super-speed-plus";
usb-phy = <&usb_phy0>;
};
@@ -176,15 +181,20 @@ &usbdrd31_dwc3 {
&usbdrd31 {
vdd10-supply = <&dummy_regulator>;
vdd33-supply = <&dummy_regulator>;
+ status = "okay";
};
&usbdrd20_phy0 {
dvdd-supply = <&dummy_regulator>;
vdd18-supply = <&dummy_regulator>;
vdd33-supply = <&dummy_regulator>;
+ status = "okay";
};
&usbdrd20_dwc3_0 {
+ dr_mode = "otg";
+ usb-role-switch;
+ role-switch-default-mode = "peripheral";
maximum-speed = "high-speed";
usb-phy = <&usb_phy1>;
};
@@ -192,15 +202,20 @@ &usbdrd20_dwc3_0 {
&usbdrd20_0 {
vdd10-supply = <&dummy_regulator>;
vdd33-supply = <&dummy_regulator>;
+ status = "okay";
};
&usbdrd20_phy1 {
dvdd-supply = <&dummy_regulator>;
vdd18-supply = <&dummy_regulator>;
vdd33-supply = <&dummy_regulator>;
+ status = "okay";
};
&usbdrd20_dwc3_1 {
+ dr_mode = "otg";
+ usb-role-switch;
+ role-switch-default-mode = "peripheral";
maximum-speed = "high-speed";
usb-phy = <&usb_phy2>;
};
@@ -208,15 +223,20 @@ &usbdrd20_dwc3_1 {
&usbdrd20_1 {
vdd10-supply = <&dummy_regulator>;
vdd33-supply = <&dummy_regulator>;
+ status = "okay";
};
&usbdrd20_phy2 {
dvdd-supply = <&dummy_regulator>;
vdd18-supply = <&dummy_regulator>;
vdd33-supply = <&dummy_regulator>;
+ status = "okay";
};
&usbdrd20_dwc3_2 {
+ dr_mode = "otg";
+ usb-role-switch;
+ role-switch-default-mode = "peripheral";
maximum-speed = "high-speed";
usb-phy = <&usb_phy3>;
};
@@ -224,4 +244,5 @@ &usbdrd20_dwc3_2 {
&usbdrd20_2 {
vdd10-supply = <&dummy_regulator>;
vdd33-supply = <&dummy_regulator>;
+ status = "okay";
};
--
2.34.1
^ permalink raw reply related [flat|nested] 23+ messages in thread
* Re: [PATCH v2 2/3] arm64: dts: exynos: ExynosAutov920: Add regulators for the USB
2026-01-22 13:07 ` [PATCH v2 2/3] arm64: dts: exynos: ExynosAutov920: Add regulators for the USB Pritam Manohar Sutar
@ 2026-01-22 13:34 ` Krzysztof Kozlowski
2026-02-12 11:37 ` pritam.sutar
0 siblings, 1 reply; 23+ messages in thread
From: Krzysztof Kozlowski @ 2026-01-22 13:34 UTC (permalink / raw)
To: Pritam Manohar Sutar, robh, krzk+dt, conor+dt, alim.akhtar
Cc: devicetree, linux-arm-kernel, linux-samsung-soc, linux-kernel,
rosa.pila, dev.tailor, faraz.ata, muhammed.ali, selvarasu.g
On 22/01/2026 14:07, Pritam Manohar Sutar wrote:
> Add dummy regulator for USB and PHY supplies.
>
> Add vbus regulator that is enabled by GPIO pin.
>
> Signed-off-by: Pritam Manohar Sutar <pritam.sutar@samsung.com>
> ---
> .../boot/dts/exynos/exynosautov920-sadk.dts | 139 ++++++++++++++++++
> 1 file changed, 139 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts b/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts
> index a397f068ed53..f90f7704597c 100644
> --- a/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts
> +++ b/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts
> @@ -52,6 +52,76 @@ memory@80000000 {
> <0x8 0x80000000 0x1 0xfba00000>,
> <0xa 0x00000000 0x2 0x00000000>;
> };
> +
> + /* TODO: Remove this once PMIC is implemented */
> + dummy_regulator: regulator-0 {
> + compatible = "regulator-fixed";
> + regulator-name = "dummy_regulator";
> + };
> +
> + usbdrd31_dwc3_vbus: usbdrd31_dwc3-vbus {
Please use name for all fixed regulators which matches current format
recommendation: 'regulator-[0-9]v[0-9]'
https://web.git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/devicetree/bindings/regulator/fixed-regulator.yaml
None of the regulators are called like you wrote. Really NONE.
Also, carefully follow DTS coding style.
> + compatible = "regulator-fixed";
> + regulator-name = "usbdrd31_dwc3-vbus";
> + regulator-min-microvolt = <5000000>;
> + regulator-max-microvolt = <5000000>;
> + enable-active-high;
> + regulator-always-on;
> + gpio = <&gpp2 0 GPIO_ACTIVE_HIGH>;
> + };
> +
> + /* Use gpio for enabling vbus regulator */
> + usb_phy0: usb-phy0 {
usb-phy-0
> + compatible = "usb-nop-xceiv";
> + vbus-supply = <&usbdrd31_dwc3_vbus>;
That's pretty incomplete. Why do you need such node - just to toggle
regulator?
> + };
...
> +&usbdrd20_phy2 {
> + dvdd-supply = <&dummy_regulator>;
> + vdd18-supply = <&dummy_regulator>;
> + vdd33-supply = <&dummy_regulator>;
> +};
> +
> +&usbdrd20_dwc3_2 {
> + maximum-speed = "high-speed";
> + usb-phy = <&usb_phy3>;
> +};
> +
> +&usbdrd20_2 {
> + vdd10-supply = <&dummy_regulator>;
> + vdd33-supply = <&dummy_regulator>;
> +};
That's a bit too much of dummies. This is heavily incomplete. You need
to bring back the PMIC first.
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [PATCH v2 3/3] arm64: dts: exynos: ExynosAutov920: Enable USB nodes
2026-01-22 13:07 ` [PATCH v2 3/3] arm64: dts: exynos: ExynosAutov920: Enable USB nodes Pritam Manohar Sutar
@ 2026-01-22 13:35 ` Krzysztof Kozlowski
2026-01-23 7:29 ` Pritam Manohar Sutar
2026-01-23 7:59 ` Pritam Manohar Sutar
0 siblings, 2 replies; 23+ messages in thread
From: Krzysztof Kozlowski @ 2026-01-22 13:35 UTC (permalink / raw)
To: Pritam Manohar Sutar, robh, krzk+dt, conor+dt, alim.akhtar
Cc: devicetree, linux-arm-kernel, linux-samsung-soc, linux-kernel,
rosa.pila, dev.tailor, faraz.ata, muhammed.ali, selvarasu.g
On 22/01/2026 14:07, Pritam Manohar Sutar wrote:
> Enable USB PHY and DWC3 USB controllers' nodes.
>
> Signed-off-by: Pritam Manohar Sutar <pritam.sutar@samsung.com>
> ---
> .../boot/dts/exynos/exynosautov920-sadk.dts | 21 +++++++++++++++++++
> 1 file changed, 21 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts b/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts
> index f90f7704597c..5896dd69334a 100644
> --- a/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts
> +++ b/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts
> @@ -160,15 +160,20 @@ &xtcxo {
> &usbdrd31_ssphy {
> dvdd-supply = <&dummy_regulator>;
> vdd18-supply = <&dummy_regulator>;
> + status = "okay";
You just added the node in the previous patch, so why it cant be enavled
there?
> };
>
> &usbdrd31_hsphy {
> dvdd-supply = <&dummy_regulator>;
> vdd18-supply = <&dummy_regulator>;
> vdd33-supply = <&dummy_regulator>;
> + status = "okay";
> };
>
> &usbdrd31_dwc3 {
> + dr_mode = "otg";
> + usb-role-switch;
> + role-switch-default-mode = "peripheral";
Why did you add incomplete node in previous commit?
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [PATCH v2 0/3] Add and enable USB nodes for ExynosAutov920 SoC
2026-01-22 13:07 ` [PATCH v2 0/3] Add and enable USB nodes for ExynosAutov920 SoC Pritam Manohar Sutar
` (2 preceding siblings ...)
2026-01-22 13:07 ` [PATCH v2 3/3] arm64: dts: exynos: ExynosAutov920: Enable USB nodes Pritam Manohar Sutar
@ 2026-01-22 17:15 ` Rob Herring
2026-01-23 6:23 ` Pritam Manohar Sutar
3 siblings, 1 reply; 23+ messages in thread
From: Rob Herring @ 2026-01-22 17:15 UTC (permalink / raw)
To: Pritam Manohar Sutar
Cc: alim.akhtar, conor+dt, krzk+dt, linux-arm-kernel, rosa.pila,
selvarasu.g, linux-samsung-soc, muhammed.ali, faraz.ata,
linux-kernel, devicetree, dev.tailor
On Thu, 22 Jan 2026 18:37:18 +0530, Pritam Manohar Sutar wrote:
> This SoC has 2 USB typeC and 2 typeA ports those are DWC3 DRD
> controllers and among them, one single USB3.1 DRD combo phy and three
> USB2.0 only phy controllers. This patchset adds and enables USB and
> USB-PHY nodes in dts.
>
> PMIC is not implemented yet, we rely on USB LDOs being enabled by the
> bootloader and used dummy regulators for now.
>
> To drive vbus for host mode, it needs GPIO pin to enable vbus regulator.
> GPIO expander is present in the dts, we used it to enable the regulator
> using GPIO.
>
> USB ports are configured as OTG, and default mode is configured as
> peripheral. It will be changed based on requirements.
>
> changelog
> ----------
> Changes in v2:
> - As v1 was pushed 3 months back, resending this patchset.
> - Since dependencies are merged, removed links from coverletter.
> link for v1: https://lore.kernel.org/linux-devicetree/20251024114845.2395166-1-pritam.sutar@samsung.com/
>
> Pritam Manohar Sutar (3):
> arm64: dts: exynos: ExynosAutov920: Add USB and USB-phy nodes
> arm64: dts: exynos: ExynosAutov920: Add regulators for the USB
> arm64: dts: exynos: ExynosAutov920: Enable USB nodes
>
> .../boot/dts/exynos/exynosautov920-sadk.dts | 160 +++++++++++++++++
> .../arm64/boot/dts/exynos/exynosautov920.dtsi | 162 ++++++++++++++++++
> 2 files changed, 322 insertions(+)
>
> --
> 2.34.1
>
>
>
My bot found new DTB warnings on the .dts files added or changed in this
series.
Some warnings may be from an existing SoC .dtsi. Or perhaps the warnings
are fixed by another series. Ultimately, it is up to the platform
maintainer whether these warnings are acceptable or not. No need to reply
unless the platform maintainer has comments.
If you already ran DT checks and didn't see these error(s), then
make sure dt-schema is up to date:
pip3 install dtschema --upgrade
This patch series was applied (using b4) to base:
Base: attempting to guess base-commit...
Base: tags/next-20260121 (exact match)
Base: tags/next-20260121 (use --merge-base to override)
If this is not the correct base, please add 'base-commit' tag
(or use b4 which does this automatically)
New warnings running 'make CHECK_DTBS=y for arch/arm64/boot/dts/exynos/' for 20260122130721.205664-1-pritam.sutar@samsung.com:
arch/arm64/boot/dts/exynos/exynosautov920-sadk.dtb: usb-phy0 (usb-nop-xceiv): '#phy-cells' is a required property
from schema $id: http://devicetree.org/schemas/usb/usb-nop-xceiv.yaml
arch/arm64/boot/dts/exynos/exynosautov920-sadk.dtb: usb-phy1 (usb-nop-xceiv): '#phy-cells' is a required property
from schema $id: http://devicetree.org/schemas/usb/usb-nop-xceiv.yaml
arch/arm64/boot/dts/exynos/exynosautov920-sadk.dtb: usb-phy2 (usb-nop-xceiv): '#phy-cells' is a required property
from schema $id: http://devicetree.org/schemas/usb/usb-nop-xceiv.yaml
arch/arm64/boot/dts/exynos/exynosautov920-sadk.dtb: usb-phy3 (usb-nop-xceiv): '#phy-cells' is a required property
from schema $id: http://devicetree.org/schemas/usb/usb-nop-xceiv.yaml
^ permalink raw reply [flat|nested] 23+ messages in thread
* RE: [PATCH v2 0/3] Add and enable USB nodes for ExynosAutov920 SoC
2026-01-22 17:15 ` [PATCH v2 0/3] Add and enable USB nodes for ExynosAutov920 SoC Rob Herring
@ 2026-01-23 6:23 ` Pritam Manohar Sutar
2026-01-23 7:31 ` Krzysztof Kozlowski
2026-01-28 7:38 ` Krzysztof Kozlowski
0 siblings, 2 replies; 23+ messages in thread
From: Pritam Manohar Sutar @ 2026-01-23 6:23 UTC (permalink / raw)
To: 'Rob Herring'
Cc: alim.akhtar, conor+dt, krzk+dt, linux-arm-kernel, rosa.pila,
selvarasu.g, linux-samsung-soc, muhammed.ali, faraz.ata,
linux-kernel, devicetree, dev.tailor
Hi Rob,
Thank you for your feedback on the patch series.
> -----Original Message-----
> From: Rob Herring <robh@kernel.org>
> Sent: 22 January 2026 10:46 PM
> To: Pritam Manohar Sutar <pritam.sutar@samsung.com>
> Cc: alim.akhtar@samsung.com; conor+dt@kernel.org; krzk+dt@kernel.org;
> linux-arm-kernel@lists.infradead.org; rosa.pila@samsung.com;
> selvarasu.g@samsung.com; linux-samsung-soc@vger.kernel.org;
> muhammed.ali@samsung.com; faraz.ata@samsung.com; linux-
> kernel@vger.kernel.org; devicetree@vger.kernel.org;
> dev.tailor@samsung.com
> Subject: Re: [PATCH v2 0/3] Add and enable USB nodes for ExynosAutov920
> SoC
>
>
> On Thu, 22 Jan 2026 18:37:18 +0530, Pritam Manohar Sutar wrote:
> > This SoC has 2 USB typeC and 2 typeA ports those are DWC3 DRD
> > controllers and among them, one single USB3.1 DRD combo phy and three
> > USB2.0 only phy controllers. This patchset adds and enables USB and
> > USB-PHY nodes in dts.
> >
> > PMIC is not implemented yet, we rely on USB LDOs being enabled by the
> > bootloader and used dummy regulators for now.
> >
> > To drive vbus for host mode, it needs GPIO pin to enable vbus regulator.
> > GPIO expander is present in the dts, we used it to enable the
> > regulator using GPIO.
> >
> > USB ports are configured as OTG, and default mode is configured as
> > peripheral. It will be changed based on requirements.
> >
> > changelog
> > ----------
> > Changes in v2:
> > - As v1 was pushed 3 months back, resending this patchset.
> > - Since dependencies are merged, removed links from coverletter.
> > link for v1:
> > https://lore.kernel.org/linux-devicetree/20251024114845.2395166-1-prit
> > am.sutar@samsung.com/
> >
> > Pritam Manohar Sutar (3):
> > arm64: dts: exynos: ExynosAutov920: Add USB and USB-phy nodes
> > arm64: dts: exynos: ExynosAutov920: Add regulators for the USB
> > arm64: dts: exynos: ExynosAutov920: Enable USB nodes
> >
> > .../boot/dts/exynos/exynosautov920-sadk.dts | 160
> +++++++++++++++++
> > .../arm64/boot/dts/exynos/exynosautov920.dtsi | 162
> > ++++++++++++++++++
> > 2 files changed, 322 insertions(+)
> >
> > --
> > 2.34.1
> >
> >
> >
>
>
> My bot found new DTB warnings on the .dts files added or changed in this
> series.
>
> Some warnings may be from an existing SoC .dtsi. Or perhaps the warnings
> are fixed by another series. Ultimately, it is up to the platform maintainer
> whether these warnings are acceptable or not. No need to reply unless the
> platform maintainer has comments.
>
> If you already ran DT checks and didn't see these error(s), then make sure dt-
> schema is up to date:
>
> pip3 install dtschema --upgrade
>
>
> This patch series was applied (using b4) to base:
> Base: attempting to guess base-commit...
> Base: tags/next-20260121 (exact match)
> Base: tags/next-20260121 (use --merge-base to override)
>
> If this is not the correct base, please add 'base-commit' tag (or use b4 which
> does this automatically)
>
>
> New warnings running 'make CHECK_DTBS=y for
> arch/arm64/boot/dts/exynos/' for 20260122130721.205664-1-
> pritam.sutar@samsung.com:
>
> arch/arm64/boot/dts/exynos/exynosautov920-sadk.dtb: usb-phy0 (usb-
> nop-xceiv): '#phy-cells' is a required property
> from schema $id: https://protect2.fireeye.com/v1/url?k=91401ba9-
> cedb2354-914190e6-000babff317b-0af64cc1fcd35e1a&q=1&e=e0bf9bed-
> 20f5-431c-9a8f-
> ded53e46a366&u=http%3A%2F%2Fdevicetree.org%2Fschemas%2Fusb%2Fu
> sb-nop-xceiv.yaml
> arch/arm64/boot/dts/exynos/exynosautov920-sadk.dtb: usb-phy1 (usb-
> nop-xceiv): '#phy-cells' is a required property
> from schema $id: https://protect2.fireeye.com/v1/url?k=b208eda5-
> ed93d558-b20966ea-000babff317b-f6650041a1e910a7&q=1&e=e0bf9bed-
> 20f5-431c-9a8f-
> ded53e46a366&u=http%3A%2F%2Fdevicetree.org%2Fschemas%2Fusb%2Fu
> sb-nop-xceiv.yaml
> arch/arm64/boot/dts/exynos/exynosautov920-sadk.dtb: usb-phy2 (usb-
> nop-xceiv): '#phy-cells' is a required property
> from schema $id: https://protect2.fireeye.com/v1/url?k=ce686cfd-
> 91f35400-ce69e7b2-000babff317b-ccbf1b3c353ecfc0&q=1&e=e0bf9bed-20f5-
> 431c-9a8f-
> ded53e46a366&u=http%3A%2F%2Fdevicetree.org%2Fschemas%2Fusb%2Fu
> sb-nop-xceiv.yaml
> arch/arm64/boot/dts/exynos/exynosautov920-sadk.dtb: usb-phy3 (usb-
> nop-xceiv): '#phy-cells' is a required property
> from schema $id: https://protect2.fireeye.com/v1/url?k=633aebf3-
> 3ca1d30e-633b60bc-000babff317b-ef5a169bc853eddb&q=1&e=e0bf9bed-
> 20f5-431c-9a8f-
> ded53e46a366&u=http%3A%2F%2Fdevicetree.org%2Fschemas%2Fusb%2Fu
> sb-nop-xceiv.yaml
Apologize for any inconvenience caused by the issues you’ve identified.
Below, Have outlined the changes, will implement to address the warnings
and ensure the patch set aligns with the required standards.
Proposed Changes:
1. Will include #phy-cells = <0>; in the USB PHY nodes
(usb_phy0, usb_phy1, usb_phy2, and usb_phy3)
This is a crucial addition to avoid compilation warnings and ensure compatibility.
Example:
usb_phy0: usb-phy0 {
compatible = "usb-nop-xceiv";
#phy-cells = <0>;
vbus-supply = <&usbdrd31_dwc3_vbus>;
};
2. The errors were not caught by the make dt_binding_check and make dtbs_check
commands
make -j ARCH=arm64 dt_binding_check dtbs_check DT_SCHEMA_FILES=Documentation/devicetree/bindings/phy/samsung,usb3-drd-phy.yaml
make -j ARCH=arm64 dt_binding_check dtbs_check DT_SCHEMA_FILES=Documentation/devicetree/bindings/usb/samsung,exynos-dwc3.yaml
3. Once the above changes are verified and tested, I will incorporate them into the
next version of the patch set (v3).
Questions:
1. Are the Proposed Changes Correct?
Please confirm if the inclusion of #phy-cells = <0>; in the USB PHY nodes is the correct
fix for the issue. If there are additional changes required, kindly let me know.
2. Why Warnings Were Not Captured During Initial Checks?
The make dt_binding_check and make dtbs_check commands did not flag the warnings,
which suggests the schema or bindings might not be comprehensive enough. Could you
provide insights or recommendations on how to improve the schema to catch such issues
in the future?
>
>
>
>
Thank you for your valuable input. I’ll proceed with the changes and provide an updated
patch set once the fixes are confirmed. Please let me know if there’s anything else I need
to consider or address.
Regards,
Pritam
^ permalink raw reply [flat|nested] 23+ messages in thread
* RE: [PATCH v2 3/3] arm64: dts: exynos: ExynosAutov920: Enable USB nodes
2026-01-22 13:35 ` Krzysztof Kozlowski
@ 2026-01-23 7:29 ` Pritam Manohar Sutar
2026-01-23 7:59 ` Pritam Manohar Sutar
1 sibling, 0 replies; 23+ messages in thread
From: Pritam Manohar Sutar @ 2026-01-23 7:29 UTC (permalink / raw)
To: 'Krzysztof Kozlowski', robh, krzk+dt, conor+dt,
alim.akhtar
Cc: devicetree, linux-arm-kernel, linux-samsung-soc, linux-kernel,
rosa.pila, dev.tailor, faraz.ata, muhammed.ali, selvarasu.g
Hi
> -----Original Message-----
> From: Krzysztof Kozlowski <krzk@kernel.org>
> Sent: 22 January 2026 07:05 PM
> To: Pritam Manohar Sutar <pritam.sutar@samsung.com>; robh@kernel.org;
> krzk+dt@kernel.org; conor+dt@kernel.org; alim.akhtar@samsung.com
> Cc: devicetree@vger.kernel.org; linux-arm-kernel@lists.infradead.org; linux-
> samsung-soc@vger.kernel.org; linux-kernel@vger.kernel.org;
> rosa.pila@samsung.com; dev.tailor@samsung.com;
> faraz.ata@samsung.com; muhammed.ali@samsung.com;
> selvarasu.g@samsung.com
> Subject: Re: [PATCH v2 3/3] arm64: dts: exynos: ExynosAutov920: Enable USB
> nodes
>
> On 22/01/2026 14:07, Pritam Manohar Sutar wrote:
> > Enable USB PHY and DWC3 USB controllers' nodes.
> >
> > Signed-off-by: Pritam Manohar Sutar <pritam.sutar@samsung.com>
> > ---
> > .../boot/dts/exynos/exynosautov920-sadk.dts | 21
> +++++++++++++++++++
> > 1 file changed, 21 insertions(+)
> >
> > diff --git a/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts
> > b/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts
> > index f90f7704597c..5896dd69334a 100644
> > --- a/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts
> > +++ b/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts
> > @@ -160,15 +160,20 @@ &xtcxo {
> > &usbdrd31_ssphy {
> > dvdd-supply = <&dummy_regulator>;
> > vdd18-supply = <&dummy_regulator>;
> > + status = "okay";
>
> You just added the node in the previous patch, so why it cant be enavled
> there?
>
> > };
> >
> > &usbdrd31_hsphy {
> > dvdd-supply = <&dummy_regulator>;
> > vdd18-supply = <&dummy_regulator>;
> > vdd33-supply = <&dummy_regulator>;
> > + status = "okay";
> > };
> >
> > &usbdrd31_dwc3 {
> > + dr_mode = "otg";
> > + usb-role-switch;
> > + role-switch-default-mode = "peripheral";
>
> Why did you add incomplete node in previous commit?
>
>
> Best regards,
> Krzysztof
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [PATCH v2 0/3] Add and enable USB nodes for ExynosAutov920 SoC
2026-01-23 6:23 ` Pritam Manohar Sutar
@ 2026-01-23 7:31 ` Krzysztof Kozlowski
2026-02-12 11:48 ` pritam.sutar
2026-01-28 7:38 ` Krzysztof Kozlowski
1 sibling, 1 reply; 23+ messages in thread
From: Krzysztof Kozlowski @ 2026-01-23 7:31 UTC (permalink / raw)
To: Pritam Manohar Sutar, 'Rob Herring'
Cc: alim.akhtar, conor+dt, krzk+dt, linux-arm-kernel, rosa.pila,
selvarasu.g, linux-samsung-soc, muhammed.ali, faraz.ata,
linux-kernel, devicetree, dev.tailor
On 23/01/2026 07:23, Pritam Manohar Sutar wrote:
> Hi Rob,
>
> Thank you for your feedback on the patch series.
>
>> -----Original Message-----
>> From: Rob Herring <robh@kernel.org>
>> Sent: 22 January 2026 10:46 PM
>> To: Pritam Manohar Sutar <pritam.sutar@samsung.com>
>> Cc: alim.akhtar@samsung.com; conor+dt@kernel.org; krzk+dt@kernel.org;
>> linux-arm-kernel@lists.infradead.org; rosa.pila@samsung.com;
>> selvarasu.g@samsung.com; linux-samsung-soc@vger.kernel.org;
>> muhammed.ali@samsung.com; faraz.ata@samsung.com; linux-
>> kernel@vger.kernel.org; devicetree@vger.kernel.org;
>> dev.tailor@samsung.com
>> Subject: Re: [PATCH v2 0/3] Add and enable USB nodes for ExynosAutov920
>> SoC
>>
>>
>> On Thu, 22 Jan 2026 18:37:18 +0530, Pritam Manohar Sutar wrote:
>>> This SoC has 2 USB typeC and 2 typeA ports those are DWC3 DRD
>>> controllers and among them, one single USB3.1 DRD combo phy and three
>>> USB2.0 only phy controllers. This patchset adds and enables USB and
>>> USB-PHY nodes in dts.
>>>
>>> PMIC is not implemented yet, we rely on USB LDOs being enabled by the
>>> bootloader and used dummy regulators for now.
>>>
>>> To drive vbus for host mode, it needs GPIO pin to enable vbus regulator.
>>> GPIO expander is present in the dts, we used it to enable the
>>> regulator using GPIO.
>>>
>>> USB ports are configured as OTG, and default mode is configured as
>>> peripheral. It will be changed based on requirements.
>>>
>>> changelog
>>> ----------
>>> Changes in v2:
>>> - As v1 was pushed 3 months back, resending this patchset.
>>> - Since dependencies are merged, removed links from coverletter.
>>> link for v1:
>>> https://lore.kernel.org/linux-devicetree/20251024114845.2395166-1-prit
>>> am.sutar@samsung.com/
>>>
>>> Pritam Manohar Sutar (3):
>>> arm64: dts: exynos: ExynosAutov920: Add USB and USB-phy nodes
>>> arm64: dts: exynos: ExynosAutov920: Add regulators for the USB
>>> arm64: dts: exynos: ExynosAutov920: Enable USB nodes
>>>
>>> .../boot/dts/exynos/exynosautov920-sadk.dts | 160
>> +++++++++++++++++
>>> .../arm64/boot/dts/exynos/exynosautov920.dtsi | 162
>>> ++++++++++++++++++
>>> 2 files changed, 322 insertions(+)
>>>
>>> --
>>> 2.34.1
>>>
>>>
>>>
>>
>>
>> My bot found new DTB warnings on the .dts files added or changed in this
>> series.
>>
>> Some warnings may be from an existing SoC .dtsi. Or perhaps the warnings
>> are fixed by another series. Ultimately, it is up to the platform maintainer
>> whether these warnings are acceptable or not. No need to reply unless the
>> platform maintainer has comments.
>>
>> If you already ran DT checks and didn't see these error(s), then make sure dt-
>> schema is up to date:
>>
>> pip3 install dtschema --upgrade
>>
>>
>> This patch series was applied (using b4) to base:
>> Base: attempting to guess base-commit...
>> Base: tags/next-20260121 (exact match)
>> Base: tags/next-20260121 (use --merge-base to override)
>>
>> If this is not the correct base, please add 'base-commit' tag (or use b4 which
>> does this automatically)
>>
>>
>> New warnings running 'make CHECK_DTBS=y for
>> arch/arm64/boot/dts/exynos/' for 20260122130721.205664-1-
>> pritam.sutar@samsung.com:
>>
>> arch/arm64/boot/dts/exynos/exynosautov920-sadk.dtb: usb-phy0 (usb-
>> nop-xceiv): '#phy-cells' is a required property
>> from schema $id: https://protect2.fireeye.com/v1/url?k=91401ba9-
>> cedb2354-914190e6-000babff317b-0af64cc1fcd35e1a&q=1&e=e0bf9bed-
>> 20f5-431c-9a8f-
>> ded53e46a366&u=http%3A%2F%2Fdevicetree.org%2Fschemas%2Fusb%2Fu
>> sb-nop-xceiv.yaml
>> arch/arm64/boot/dts/exynos/exynosautov920-sadk.dtb: usb-phy1 (usb-
>> nop-xceiv): '#phy-cells' is a required property
>> from schema $id: https://protect2.fireeye.com/v1/url?k=b208eda5-
>> ed93d558-b20966ea-000babff317b-f6650041a1e910a7&q=1&e=e0bf9bed-
>> 20f5-431c-9a8f-
>> ded53e46a366&u=http%3A%2F%2Fdevicetree.org%2Fschemas%2Fusb%2Fu
>> sb-nop-xceiv.yaml
>> arch/arm64/boot/dts/exynos/exynosautov920-sadk.dtb: usb-phy2 (usb-
>> nop-xceiv): '#phy-cells' is a required property
>> from schema $id: https://protect2.fireeye.com/v1/url?k=ce686cfd-
>> 91f35400-ce69e7b2-000babff317b-ccbf1b3c353ecfc0&q=1&e=e0bf9bed-20f5-
>> 431c-9a8f-
>> ded53e46a366&u=http%3A%2F%2Fdevicetree.org%2Fschemas%2Fusb%2Fu
>> sb-nop-xceiv.yaml
>> arch/arm64/boot/dts/exynos/exynosautov920-sadk.dtb: usb-phy3 (usb-
>> nop-xceiv): '#phy-cells' is a required property
>> from schema $id: https://protect2.fireeye.com/v1/url?k=633aebf3-
>> 3ca1d30e-633b60bc-000babff317b-ef5a169bc853eddb&q=1&e=e0bf9bed-
>> 20f5-431c-9a8f-
>> ded53e46a366&u=http%3A%2F%2Fdevicetree.org%2Fschemas%2Fusb%2Fu
>> sb-nop-xceiv.yaml
>
> Apologize for any inconvenience caused by the issues you’ve identified.
It means you did not test the patches before sending and I find it very
wasteful of my time.
> Below, Have outlined the changes, will implement to address the warnings
> and ensure the patch set aligns with the required standards.
>
> Proposed Changes:
> 1. Will include #phy-cells = <0>; in the USB PHY nodes
> (usb_phy0, usb_phy1, usb_phy2, and usb_phy3)
> This is a crucial addition to avoid compilation warnings and ensure compatibility.
>
> Example:
> usb_phy0: usb-phy0 {
> compatible = "usb-nop-xceiv";
> #phy-cells = <0>;
> vbus-supply = <&usbdrd31_dwc3_vbus>;
> };
>
> 2. The errors were not caught by the make dt_binding_check and make dtbs_check
> commands
> make -j ARCH=arm64 dt_binding_check dtbs_check DT_SCHEMA_FILES=Documentation/devicetree/bindings/phy/samsung,usb3-drd-phy.yaml
> make -j ARCH=arm64 dt_binding_check dtbs_check DT_SCHEMA_FILES=Documentation/devicetree/bindings/usb/samsung,exynos-dwc3.yaml
This is not the command you are supposed to run! You MUST CHECK YOUR DTS
WITH ALL THE BINDINGS. Why would you run only two of them and ignore the
rest which you still use? What is the logic behind - I will use phy-nop
binding, but not test against it?
A hint - if your patches are not being picked up, maybe because you send
buggy code and I am bored to reply - test finally, because I am not your
testing service.
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 23+ messages in thread
* RE: [PATCH v2 3/3] arm64: dts: exynos: ExynosAutov920: Enable USB nodes
2026-01-22 13:35 ` Krzysztof Kozlowski
2026-01-23 7:29 ` Pritam Manohar Sutar
@ 2026-01-23 7:59 ` Pritam Manohar Sutar
2026-01-23 8:05 ` Krzysztof Kozlowski
2026-01-28 7:36 ` Krzysztof Kozlowski
1 sibling, 2 replies; 23+ messages in thread
From: Pritam Manohar Sutar @ 2026-01-23 7:59 UTC (permalink / raw)
To: 'Krzysztof Kozlowski', robh, krzk+dt, conor+dt,
alim.akhtar
Cc: devicetree, linux-arm-kernel, linux-samsung-soc, linux-kernel,
rosa.pila, dev.tailor, faraz.ata, muhammed.ali, selvarasu.g
Hi Krzysztof,
Thank you for your feedback.
> -----Original Message-----
> From: Krzysztof Kozlowski <krzk@kernel.org>
> Sent: 22 January 2026 07:05 PM
> To: Pritam Manohar Sutar <pritam.sutar@samsung.com>; robh@kernel.org;
> krzk+dt@kernel.org; conor+dt@kernel.org; alim.akhtar@samsung.com
> Cc: devicetree@vger.kernel.org; linux-arm-kernel@lists.infradead.org; linux-
> samsung-soc@vger.kernel.org; linux-kernel@vger.kernel.org;
> rosa.pila@samsung.com; dev.tailor@samsung.com;
> faraz.ata@samsung.com; muhammed.ali@samsung.com;
> selvarasu.g@samsung.com
> Subject: Re: [PATCH v2 3/3] arm64: dts: exynos: ExynosAutov920: Enable USB
> nodes
>
> On 22/01/2026 14:07, Pritam Manohar Sutar wrote:
> > Enable USB PHY and DWC3 USB controllers' nodes.
> >
> > Signed-off-by: Pritam Manohar Sutar <pritam.sutar@samsung.com>
> > ---
> > .../boot/dts/exynos/exynosautov920-sadk.dts | 21
> +++++++++++++++++++
> > 1 file changed, 21 insertions(+)
> >
> > diff --git a/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts
> > b/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts
> > index f90f7704597c..5896dd69334a 100644
> > --- a/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts
> > +++ b/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts
> > @@ -160,15 +160,20 @@ &xtcxo {
> > &usbdrd31_ssphy {
> > dvdd-supply = <&dummy_regulator>;
> > vdd18-supply = <&dummy_regulator>;
> > + status = "okay";
>
> You just added the node in the previous patch, so why it cant be enavled
> there?
>
> > };
> >
> > &usbdrd31_hsphy {
> > dvdd-supply = <&dummy_regulator>;
> > vdd18-supply = <&dummy_regulator>;
> > vdd33-supply = <&dummy_regulator>;
> > + status = "okay";
> > };
> >
> > &usbdrd31_dwc3 {
> > + dr_mode = "otg";
> > + usb-role-switch;
> > + role-switch-default-mode = "peripheral";
>
> Why did you add incomplete node in previous commit?
The commit was added to align with the existing convention of separating
node addition and enabling logic in USB configurations. This approach is
referenced from commits such as:
https://lore.kernel.org/all/20250710-resends-july-exynos990-dt-v2-5-55033f73d1b0@mentallysanemainliners.org/
https://lore.kernel.org/all/20240429-usb-dts-gs101-v2-2-7c1797c9db80@linaro.org/
Please let me know if this commit to be merged in previous commit.
>
>
> Best regards,
> Krzysztof
Regards,
Pritam
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [PATCH v2 3/3] arm64: dts: exynos: ExynosAutov920: Enable USB nodes
2026-01-23 7:59 ` Pritam Manohar Sutar
@ 2026-01-23 8:05 ` Krzysztof Kozlowski
2026-02-12 11:40 ` pritam.sutar
2026-01-28 7:36 ` Krzysztof Kozlowski
1 sibling, 1 reply; 23+ messages in thread
From: Krzysztof Kozlowski @ 2026-01-23 8:05 UTC (permalink / raw)
To: Pritam Manohar Sutar, robh, krzk+dt, conor+dt, alim.akhtar
Cc: devicetree, linux-arm-kernel, linux-samsung-soc, linux-kernel,
rosa.pila, dev.tailor, faraz.ata, muhammed.ali, selvarasu.g
On 23/01/2026 08:59, Pritam Manohar Sutar wrote:
> Hi Krzysztof,
>
> Thank you for your feedback.
>
>> -----Original Message-----
>> From: Krzysztof Kozlowski <krzk@kernel.org>
>> Sent: 22 January 2026 07:05 PM
>> To: Pritam Manohar Sutar <pritam.sutar@samsung.com>; robh@kernel.org;
>> krzk+dt@kernel.org; conor+dt@kernel.org; alim.akhtar@samsung.com
>> Cc: devicetree@vger.kernel.org; linux-arm-kernel@lists.infradead.org; linux-
>> samsung-soc@vger.kernel.org; linux-kernel@vger.kernel.org;
>> rosa.pila@samsung.com; dev.tailor@samsung.com;
>> faraz.ata@samsung.com; muhammed.ali@samsung.com;
>> selvarasu.g@samsung.com
>> Subject: Re: [PATCH v2 3/3] arm64: dts: exynos: ExynosAutov920: Enable USB
>> nodes
>>
>> On 22/01/2026 14:07, Pritam Manohar Sutar wrote:
>>> Enable USB PHY and DWC3 USB controllers' nodes.
>>>
>>> Signed-off-by: Pritam Manohar Sutar <pritam.sutar@samsung.com>
>>> ---
>>> .../boot/dts/exynos/exynosautov920-sadk.dts | 21
>> +++++++++++++++++++
>>> 1 file changed, 21 insertions(+)
>>>
>>> diff --git a/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts
>>> b/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts
>>> index f90f7704597c..5896dd69334a 100644
>>> --- a/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts
>>> +++ b/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts
>>> @@ -160,15 +160,20 @@ &xtcxo {
>>> &usbdrd31_ssphy {
>>> dvdd-supply = <&dummy_regulator>;
>>> vdd18-supply = <&dummy_regulator>;
>>> + status = "okay";
>>
>> You just added the node in the previous patch, so why it cant be enavled
>> there?
>>
>>> };
>>>
>>> &usbdrd31_hsphy {
>>> dvdd-supply = <&dummy_regulator>;
>>> vdd18-supply = <&dummy_regulator>;
>>> vdd33-supply = <&dummy_regulator>;
>>> + status = "okay";
>>> };
>>>
>>> &usbdrd31_dwc3 {
>>> + dr_mode = "otg";
>>> + usb-role-switch;
>>> + role-switch-default-mode = "peripheral";
>>
>> Why did you add incomplete node in previous commit?
>
> The commit was added to align with the existing convention of separating
> node addition and enabling logic in USB configurations. This approach is
There was never such convention for Qualcomm or Samsung. Do not make up
fake conventions.
> referenced from commits such as:
No, it is not.
>
> https://lore.kernel.org/all/20250710-resends-july-exynos990-dt-v2-5-55033f73d1b0@mentallysanemainliners.org/
> https://lore.kernel.org/all/20240429-usb-dts-gs101-v2-2-7c1797c9db80@linaro.org/
Just look at these commits - they add complete node override to DTS. Not
half node now and half node later to the DTS file!
>
> Please let me know if this commit to be merged in previous commit.
Just look at the commits there.
>
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [PATCH v2 3/3] arm64: dts: exynos: ExynosAutov920: Enable USB nodes
2026-01-23 7:59 ` Pritam Manohar Sutar
2026-01-23 8:05 ` Krzysztof Kozlowski
@ 2026-01-28 7:36 ` Krzysztof Kozlowski
2026-02-12 11:42 ` pritam.sutar
1 sibling, 1 reply; 23+ messages in thread
From: Krzysztof Kozlowski @ 2026-01-28 7:36 UTC (permalink / raw)
To: Pritam Manohar Sutar, robh, krzk+dt, conor+dt, alim.akhtar
Cc: devicetree, linux-arm-kernel, linux-samsung-soc, linux-kernel,
rosa.pila, dev.tailor, faraz.ata, muhammed.ali, selvarasu.g
On 23/01/2026 08:59, Pritam Manohar Sutar wrote:
> Hi Krzysztof,
>
> Thank you for your feedback.
>
>> -----Original Message-----
>> From: Krzysztof Kozlowski <krzk@kernel.org>
>> Sent: 22 January 2026 07:05 PM
>> To: Pritam Manohar Sutar <pritam.sutar@samsung.com>; robh@kernel.org;
>> krzk+dt@kernel.org; conor+dt@kernel.org; alim.akhtar@samsung.com
>> Cc: devicetree@vger.kernel.org; linux-arm-kernel@lists.infradead.org; linux-
>> samsung-soc@vger.kernel.org; linux-kernel@vger.kernel.org;
>> rosa.pila@samsung.com; dev.tailor@samsung.com;
>> faraz.ata@samsung.com; muhammed.ali@samsung.com;
>> selvarasu.g@samsung.com
>> Subject: Re: [PATCH v2 3/3] arm64: dts: exynos: ExynosAutov920: Enable USB
>> nodes
>>
>> On 22/01/2026 14:07, Pritam Manohar Sutar wrote:
>>> Enable USB PHY and DWC3 USB controllers' nodes.
>>>
>>> Signed-off-by: Pritam Manohar Sutar <pritam.sutar@samsung.com>
>>> ---
>>> .../boot/dts/exynos/exynosautov920-sadk.dts | 21
>> +++++++++++++++++++
>>> 1 file changed, 21 insertions(+)
>>>
>>> diff --git a/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts
>>> b/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts
>>> index f90f7704597c..5896dd69334a 100644
>>> --- a/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts
>>> +++ b/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts
>>> @@ -160,15 +160,20 @@ &xtcxo {
>>> &usbdrd31_ssphy {
>>> dvdd-supply = <&dummy_regulator>;
>>> vdd18-supply = <&dummy_regulator>;
>>> + status = "okay";
>>
>> You just added the node in the previous patch, so why it cant be enavled
>> there?
>>
>>> };
>>>
>>> &usbdrd31_hsphy {
>>> dvdd-supply = <&dummy_regulator>;
>>> vdd18-supply = <&dummy_regulator>;
>>> vdd33-supply = <&dummy_regulator>;
>>> + status = "okay";
>>> };
>>>
>>> &usbdrd31_dwc3 {
>>> + dr_mode = "otg";
>>> + usb-role-switch;
>>> + role-switch-default-mode = "peripheral";
>>
>> Why did you add incomplete node in previous commit?
>
> The commit was added to align with the existing convention of separating
> node addition and enabling logic in USB configurations. This approach is
> referenced from commits such as:
>
> https://lore.kernel.org/all/20250710-resends-july-exynos990-dt-v2-5-55033f73d1b0@mentallysanemainliners.org/
> https://lore.kernel.org/all/20240429-usb-dts-gs101-v2-2-7c1797c9db80@linaro.org/
>
> Please let me know if this commit to be merged in previous commit.
BTW, don't ever use AI to write code or code justifications. I will make
note of it.
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [PATCH v2 0/3] Add and enable USB nodes for ExynosAutov920 SoC
2026-01-23 6:23 ` Pritam Manohar Sutar
2026-01-23 7:31 ` Krzysztof Kozlowski
@ 2026-01-28 7:38 ` Krzysztof Kozlowski
1 sibling, 0 replies; 23+ messages in thread
From: Krzysztof Kozlowski @ 2026-01-28 7:38 UTC (permalink / raw)
To: Pritam Manohar Sutar, 'Rob Herring'
Cc: alim.akhtar, conor+dt, krzk+dt, linux-arm-kernel, rosa.pila,
selvarasu.g, linux-samsung-soc, muhammed.ali, faraz.ata,
linux-kernel, devicetree, dev.tailor
On 23/01/2026 07:23, Pritam Manohar Sutar wrote:
>
> Apologize for any inconvenience caused by the issues you’ve identified.
> Below, Have outlined the changes, will implement to address the warnings
> and ensure the patch set aligns with the required standards.
>
> Proposed Changes:
> 1. Will include #phy-cells = <0>; in the USB PHY nodes
> (usb_phy0, usb_phy1, usb_phy2, and usb_phy3)
> This is a crucial addition to avoid compilation warnings and ensure compatibility.
>
> Example:
> usb_phy0: usb-phy0 {
> compatible = "usb-nop-xceiv";
> #phy-cells = <0>;
> vbus-supply = <&usbdrd31_dwc3_vbus>;
> };
>
> 2. The errors were not caught by the make dt_binding_check and make dtbs_check
> commands
> make -j ARCH=arm64 dt_binding_check dtbs_check DT_SCHEMA_FILES=Documentation/devicetree/bindings/phy/samsung,usb3-drd-phy.yaml
> make -j ARCH=arm64 dt_binding_check dtbs_check DT_SCHEMA_FILES=Documentation/devicetree/bindings/usb/samsung,exynos-dwc3.yaml
>
> 3. Once the above changes are verified and tested, I will incorporate them into the
> next version of the patch set (v3).
>
> Questions:
> 1. Are the Proposed Changes Correct?
> Please confirm if the inclusion of #phy-cells = <0>; in the USB PHY nodes is the correct
> fix for the issue. If there are additional changes required, kindly let me know.
>
> 2. Why Warnings Were Not Captured During Initial Checks?
> The make dt_binding_check and make dtbs_check commands did not flag the warnings,
> which suggests the schema or bindings might not be comprehensive enough. Could you
> provide insights or recommendations on how to improve the schema to catch such issues
> in the future?
Please explain, why are we talking through microslop ChatGPT?
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 23+ messages in thread
* RE: [PATCH v2 2/3] arm64: dts: exynos: ExynosAutov920: Add regulators for the USB
2026-01-22 13:34 ` Krzysztof Kozlowski
@ 2026-02-12 11:37 ` pritam.sutar
2026-02-15 8:57 ` Krzysztof Kozlowski
0 siblings, 1 reply; 23+ messages in thread
From: pritam.sutar @ 2026-02-12 11:37 UTC (permalink / raw)
To: 'Krzysztof Kozlowski', robh, krzk+dt, conor+dt,
alim.akhtar
Cc: devicetree, linux-arm-kernel, linux-samsung-soc, linux-kernel,
rosa.pila, dev.tailor, faraz.ata, muhammed.ali, selvarasu.g
Hi Krzysztof,
> -----Original Message-----
> From: Krzysztof Kozlowski <krzk@kernel.org>
> Sent: Thursday, January 22, 2026 7:04 PM
> To: Pritam Manohar Sutar <pritam.sutar@samsung.com>; robh@kernel.org;
> krzk+dt@kernel.org; conor+dt@kernel.org; alim.akhtar@samsung.com
> Cc: devicetree@vger.kernel.org; linux-arm-kernel@lists.infradead.org; linux-
> samsung-soc@vger.kernel.org; linux-kernel@vger.kernel.org;
> rosa.pila@samsung.com; dev.tailor@samsung.com;
> faraz.ata@samsung.com; muhammed.ali@samsung.com;
> selvarasu.g@samsung.com
> Subject: Re: [PATCH v2 2/3] arm64: dts: exynos: ExynosAutov920: Add
> regulators for the USB
>
> On 22/01/2026 14:07, Pritam Manohar Sutar wrote:
> > Add dummy regulator for USB and PHY supplies.
> >
> > Add vbus regulator that is enabled by GPIO pin.
> >
> > Signed-off-by: Pritam Manohar Sutar <pritam.sutar@samsung.com>
> > ---
> > .../boot/dts/exynos/exynosautov920-sadk.dts | 139
> ++++++++++++++++++
> > 1 file changed, 139 insertions(+)
> >
> > diff --git a/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts
> > b/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts
> > index a397f068ed53..f90f7704597c 100644
> > --- a/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts
> > +++ b/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts
> > @@ -52,6 +52,76 @@ memory@80000000 {
> > <0x8 0x80000000 0x1 0xfba00000>,
> > <0xa 0x00000000 0x2 0x00000000>;
> > };
> > +
> > + /* TODO: Remove this once PMIC is implemented */
> > + dummy_regulator: regulator-0 {
> > + compatible = "regulator-fixed";
> > + regulator-name = "dummy_regulator";
> > + };
> > +
> > + usbdrd31_dwc3_vbus: usbdrd31_dwc3-vbus {
>
> Please use name for all fixed regulators which matches current format
> recommendation: 'regulator-[0-9]v[0-9]'
>
> https://web.git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/
> Documentation/devicetree/bindings/regulator/fixed-regulator.yaml
>
> None of the regulators are called like you wrote. Really NONE.
>
Thank you for the references. Will bring changes for regulator's name
and labels as
- usbdrd31_dwc3_vbus: usbdrd31_dwc3-vbus {
+ reg_usbdrd31_dwc3_vbus: regulator-1 {
> Also, carefully follow DTS coding style.
>
Sorry for that. Checking the code and will update in next
patchset version (v3).
> > + compatible = "regulator-fixed";
> > + regulator-name = "usbdrd31_dwc3-vbus";
> > + regulator-min-microvolt = <5000000>;
> > + regulator-max-microvolt = <5000000>;
> > + enable-active-high;
> > + regulator-always-on;
> > + gpio = <&gpp2 0 GPIO_ACTIVE_HIGH>;
> > + };
> > +
> > + /* Use gpio for enabling vbus regulator */
> > + usb_phy0: usb-phy0 {
>
> usb-phy-0
>
> > + compatible = "usb-nop-xceiv";
> > + vbus-supply = <&usbdrd31_dwc3_vbus>;
>
> That's pretty incomplete. Why do you need such node - just to toggle
> regulator?
>
There is no external controller to detect or switch the USB modes
automatically rather it is switched using userspace control
(sysfs attributes) for this SoC. GPIO pins are required to enable
vbus regulators. Existing phy-generic and fixed regulator are used to
avoid making any USB driver changes for the same purpose and it is
referenced from below -
https://lore.kernel.org/r/20230825215445.28309-3-semen.protsenko@linaro.org
a12af1c20751340ab6e449a5ef78b37d31123aca: ARM64: dts: marvell: armada-3720-db: Add phy for USB3
> > + };
>
> ...
>
> > +&usbdrd20_phy2 {
> > + dvdd-supply = <&dummy_regulator>;
> > + vdd18-supply = <&dummy_regulator>;
> > + vdd33-supply = <&dummy_regulator>;
> > +};
> > +
> > +&usbdrd20_dwc3_2 {
> > + maximum-speed = "high-speed";
> > + usb-phy = <&usb_phy3>;
> > +};
> > +
> > +&usbdrd20_2 {
> > + vdd10-supply = <&dummy_regulator>;
> > + vdd33-supply = <&dummy_regulator>;
> > +};
>
> That's a bit too much of dummies. This is heavily incomplete. You need to
> bring back the PMIC first.
>
Presently, relying on USB LDOs being enabled by the bootloader in this
automotive SoC. However, we understand the concern and it is added in case
if anyone wants to use implemented PMIC in future. For now, would like
to proceed with the dummy regulators to enable the required USB features.
Dummy regulators are clearly marked so that they will be replaced once
the PMIC driver is fully up.
>
> Best regards,
> Krzysztof
Thank you,
Regards,
Pritam
^ permalink raw reply [flat|nested] 23+ messages in thread
* RE: [PATCH v2 3/3] arm64: dts: exynos: ExynosAutov920: Enable USB nodes
2026-01-23 8:05 ` Krzysztof Kozlowski
@ 2026-02-12 11:40 ` pritam.sutar
0 siblings, 0 replies; 23+ messages in thread
From: pritam.sutar @ 2026-02-12 11:40 UTC (permalink / raw)
To: 'Krzysztof Kozlowski', robh, krzk+dt, conor+dt,
alim.akhtar
Cc: devicetree, linux-arm-kernel, linux-samsung-soc, linux-kernel,
rosa.pila, dev.tailor, faraz.ata, muhammed.ali, selvarasu.g
Hi Krzysztof,
> -----Original Message-----
> From: Krzysztof Kozlowski <krzk@kernel.org>
> Sent: Friday, January 23, 2026 1:36 PM
> To: Pritam Manohar Sutar <pritam.sutar@samsung.com>; robh@kernel.org;
> krzk+dt@kernel.org; conor+dt@kernel.org; alim.akhtar@samsung.com
> Cc: devicetree@vger.kernel.org; linux-arm-kernel@lists.infradead.org; linux-
> samsung-soc@vger.kernel.org; linux-kernel@vger.kernel.org;
> rosa.pila@samsung.com; dev.tailor@samsung.com;
> faraz.ata@samsung.com; muhammed.ali@samsung.com;
> selvarasu.g@samsung.com
> Subject: Re: [PATCH v2 3/3] arm64: dts: exynos: ExynosAutov920: Enable USB
> nodes
>
> On 23/01/2026 08:59, Pritam Manohar Sutar wrote:
> > Hi Krzysztof,
> >
> > Thank you for your feedback.
> >
> >> -----Original Message-----
> >> From: Krzysztof Kozlowski <krzk@kernel.org>
> >> Sent: 22 January 2026 07:05 PM
> >> To: Pritam Manohar Sutar <pritam.sutar@samsung.com>;
> robh@kernel.org;
> >> krzk+dt@kernel.org; conor+dt@kernel.org; alim.akhtar@samsung.com
> >> Cc: devicetree@vger.kernel.org; linux-arm-kernel@lists.infradead.org;
> >> linux- samsung-soc@vger.kernel.org; linux-kernel@vger.kernel.org;
> >> rosa.pila@samsung.com; dev.tailor@samsung.com;
> faraz.ata@samsung.com;
> >> muhammed.ali@samsung.com; selvarasu.g@samsung.com
> >> Subject: Re: [PATCH v2 3/3] arm64: dts: exynos: ExynosAutov920:
> >> Enable USB nodes
> >>
> >> On 22/01/2026 14:07, Pritam Manohar Sutar wrote:
> >>> Enable USB PHY and DWC3 USB controllers' nodes.
> >>>
> >>> Signed-off-by: Pritam Manohar Sutar <pritam.sutar@samsung.com>
> >>> ---
> >>> .../boot/dts/exynos/exynosautov920-sadk.dts | 21
> >> +++++++++++++++++++
> >>> 1 file changed, 21 insertions(+)
> >>>
> >>> diff --git a/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts
> >>> b/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts
> >>> index f90f7704597c..5896dd69334a 100644
> >>> --- a/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts
> >>> +++ b/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts
> >>> @@ -160,15 +160,20 @@ &xtcxo {
> >>> &usbdrd31_ssphy {
> >>> dvdd-supply = <&dummy_regulator>;
> >>> vdd18-supply = <&dummy_regulator>;
> >>> + status = "okay";
> >>
> >> You just added the node in the previous patch, so why it cant be
> >> enavled there?
> >>
> >>> };
> >>>
> >>> &usbdrd31_hsphy {
> >>> dvdd-supply = <&dummy_regulator>;
> >>> vdd18-supply = <&dummy_regulator>;
> >>> vdd33-supply = <&dummy_regulator>;
> >>> + status = "okay";
> >>> };
> >>>
> >>> &usbdrd31_dwc3 {
> >>> + dr_mode = "otg";
> >>> + usb-role-switch;
> >>> + role-switch-default-mode = "peripheral";
> >>
> >> Why did you add incomplete node in previous commit?
> >
> > The commit was added to align with the existing convention of
> > separating node addition and enabling logic in USB configurations.
> > This approach is
>
> There was never such convention for Qualcomm or Samsung. Do not make
> up fake conventions.
>
> > referenced from commits such as:
>
> No, it is not.
>
> >
> > https://lore.kernel.org/all/20250710-resends-july-exynos990-dt-v2-5-55
> > 033f73d1b0@mentallysanemainliners.org/
> > https://lore.kernel.org/all/20240429-usb-dts-gs101-v2-2-7c1797c9db80@l
> > inaro.org/
>
> Just look at these commits - they add complete node override to DTS. Not
> half node now and half node later to the DTS file!
>
> >
> > Please let me know if this commit to be merged in previous commit.
>
> Just look at the commits there.
>
Got it, thank you for the highlighting. Will mention more details in commit
and update single patch to add and enable USB nodes.
> >
>
>
> Best regards,
> Krzysztof
Thank you,
Regards,
Pritam
^ permalink raw reply [flat|nested] 23+ messages in thread
* RE: [PATCH v2 3/3] arm64: dts: exynos: ExynosAutov920: Enable USB nodes
2026-01-28 7:36 ` Krzysztof Kozlowski
@ 2026-02-12 11:42 ` pritam.sutar
0 siblings, 0 replies; 23+ messages in thread
From: pritam.sutar @ 2026-02-12 11:42 UTC (permalink / raw)
To: 'Krzysztof Kozlowski', robh, krzk+dt, conor+dt,
alim.akhtar
Cc: devicetree, linux-arm-kernel, linux-samsung-soc, linux-kernel,
rosa.pila, dev.tailor, faraz.ata, muhammed.ali, selvarasu.g
Hi Krzysztof,
> -----Original Message-----
> From: Krzysztof Kozlowski <krzk@kernel.org>
> Sent: Wednesday, January 28, 2026 1:07 PM
> To: Pritam Manohar Sutar <pritam.sutar@samsung.com>; robh@kernel.org;
> krzk+dt@kernel.org; conor+dt@kernel.org; alim.akhtar@samsung.com
> Cc: devicetree@vger.kernel.org; linux-arm-kernel@lists.infradead.org; linux-
> samsung-soc@vger.kernel.org; linux-kernel@vger.kernel.org;
> rosa.pila@samsung.com; dev.tailor@samsung.com;
> faraz.ata@samsung.com; muhammed.ali@samsung.com;
> selvarasu.g@samsung.com
> Subject: Re: [PATCH v2 3/3] arm64: dts: exynos: ExynosAutov920: Enable USB
> nodes
>
> On 23/01/2026 08:59, Pritam Manohar Sutar wrote:
> > Hi Krzysztof,
> >
> > Thank you for your feedback.
> >
> >> -----Original Message-----
> >> From: Krzysztof Kozlowski <krzk@kernel.org>
> >> Sent: 22 January 2026 07:05 PM
> >> To: Pritam Manohar Sutar <pritam.sutar@samsung.com>;
> robh@kernel.org;
> >> krzk+dt@kernel.org; conor+dt@kernel.org; alim.akhtar@samsung.com
> >> Cc: devicetree@vger.kernel.org; linux-arm-kernel@lists.infradead.org;
> >> linux- samsung-soc@vger.kernel.org; linux-kernel@vger.kernel.org;
> >> rosa.pila@samsung.com; dev.tailor@samsung.com;
> faraz.ata@samsung.com;
> >> muhammed.ali@samsung.com; selvarasu.g@samsung.com
> >> Subject: Re: [PATCH v2 3/3] arm64: dts: exynos: ExynosAutov920:
> >> Enable USB nodes
> >>
> >> On 22/01/2026 14:07, Pritam Manohar Sutar wrote:
> >>> Enable USB PHY and DWC3 USB controllers' nodes.
> >>>
> >>> Signed-off-by: Pritam Manohar Sutar <pritam.sutar@samsung.com>
> >>> ---
> >>> .../boot/dts/exynos/exynosautov920-sadk.dts | 21
> >> +++++++++++++++++++
> >>> 1 file changed, 21 insertions(+)
> >>>
> >>> diff --git a/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts
> >>> b/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts
> >>> index f90f7704597c..5896dd69334a 100644
> >>> --- a/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts
> >>> +++ b/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts
> >>> @@ -160,15 +160,20 @@ &xtcxo {
> >>> &usbdrd31_ssphy {
> >>> dvdd-supply = <&dummy_regulator>;
> >>> vdd18-supply = <&dummy_regulator>;
> >>> + status = "okay";
> >>
> >> You just added the node in the previous patch, so why it cant be
> >> enavled there?
> >>
> >>> };
> >>>
> >>> &usbdrd31_hsphy {
> >>> dvdd-supply = <&dummy_regulator>;
> >>> vdd18-supply = <&dummy_regulator>;
> >>> vdd33-supply = <&dummy_regulator>;
> >>> + status = "okay";
> >>> };
> >>>
> >>> &usbdrd31_dwc3 {
> >>> + dr_mode = "otg";
> >>> + usb-role-switch;
> >>> + role-switch-default-mode = "peripheral";
> >>
> >> Why did you add incomplete node in previous commit?
> >
> > The commit was added to align with the existing convention of
> > separating node addition and enabling logic in USB configurations.
> > This approach is referenced from commits such as:
> >
> > https://lore.kernel.org/all/20250710-resends-july-exynos990-dt-v2-5-55
> > 033f73d1b0@mentallysanemainliners.org/
> > https://lore.kernel.org/all/20240429-usb-dts-gs101-v2-2-7c1797c9db80@l
> > inaro.org/
> >
> > Please let me know if this commit to be merged in previous commit.
>
>
> BTW, don't ever use AI to write code or code justifications. I will make note
> of it.
>
Sorry for the misunderstanding. Will consider this in future.
However, AI was used to correct spell and grammatic mistakes.
> Best regards,
> Krzysztof
Thank you,
Regards,
Pritam
^ permalink raw reply [flat|nested] 23+ messages in thread
* RE: [PATCH v2 0/3] Add and enable USB nodes for ExynosAutov920 SoC
2026-01-23 7:31 ` Krzysztof Kozlowski
@ 2026-02-12 11:48 ` pritam.sutar
0 siblings, 0 replies; 23+ messages in thread
From: pritam.sutar @ 2026-02-12 11:48 UTC (permalink / raw)
To: 'Krzysztof Kozlowski', 'Rob Herring'
Cc: alim.akhtar, conor+dt, krzk+dt, linux-arm-kernel, rosa.pila,
selvarasu.g, linux-samsung-soc, muhammed.ali, faraz.ata,
linux-kernel, devicetree, dev.tailor
Hi Krzysztof,
> -----Original Message-----
> From: Krzysztof Kozlowski <krzk@kernel.org>
> Sent: Friday, January 23, 2026 1:02 PM
> To: Pritam Manohar Sutar <pritam.sutar@samsung.com>; 'Rob Herring'
> <robh@kernel.org>
> Cc: alim.akhtar@samsung.com; conor+dt@kernel.org; krzk+dt@kernel.org;
> linux-arm-kernel@lists.infradead.org; rosa.pila@samsung.com;
> selvarasu.g@samsung.com; linux-samsung-soc@vger.kernel.org;
> muhammed.ali@samsung.com; faraz.ata@samsung.com; linux-
> kernel@vger.kernel.org; devicetree@vger.kernel.org;
> dev.tailor@samsung.com
> Subject: Re: [PATCH v2 0/3] Add and enable USB nodes for ExynosAutov920
> SoC
>
> On 23/01/2026 07:23, Pritam Manohar Sutar wrote:
> > Hi Rob,
> >
> > Thank you for your feedback on the patch series.
> >
> >> -----Original Message-----
> >> From: Rob Herring <robh@kernel.org>
> >> Sent: 22 January 2026 10:46 PM
> >> To: Pritam Manohar Sutar <pritam.sutar@samsung.com>
> >> Cc: alim.akhtar@samsung.com; conor+dt@kernel.org;
> krzk+dt@kernel.org;
> >> linux-arm-kernel@lists.infradead.org; rosa.pila@samsung.com;
> >> selvarasu.g@samsung.com; linux-samsung-soc@vger.kernel.org;
> >> muhammed.ali@samsung.com; faraz.ata@samsung.com; linux-
> >> kernel@vger.kernel.org; devicetree@vger.kernel.org;
> >> dev.tailor@samsung.com
> >> Subject: Re: [PATCH v2 0/3] Add and enable USB nodes for
> >> ExynosAutov920 SoC
> >>
> >>
> >> On Thu, 22 Jan 2026 18:37:18 +0530, Pritam Manohar Sutar wrote:
> >>> This SoC has 2 USB typeC and 2 typeA ports those are DWC3 DRD
> >>> controllers and among them, one single USB3.1 DRD combo phy and
> >>> three
> >>> USB2.0 only phy controllers. This patchset adds and enables USB and
> >>> USB-PHY nodes in dts.
> >>>
> >>> PMIC is not implemented yet, we rely on USB LDOs being enabled by
> >>> the bootloader and used dummy regulators for now.
> >>>
> >>> To drive vbus for host mode, it needs GPIO pin to enable vbus regulator.
> >>> GPIO expander is present in the dts, we used it to enable the
> >>> regulator using GPIO.
> >>>
> >>> USB ports are configured as OTG, and default mode is configured as
> >>> peripheral. It will be changed based on requirements.
> >>>
> >>> changelog
> >>> ----------
> >>> Changes in v2:
> >>> - As v1 was pushed 3 months back, resending this patchset.
> >>> - Since dependencies are merged, removed links from coverletter.
> >>> link for v1:
> >>> https://lore.kernel.org/linux-devicetree/20251024114845.2395166-1-pr
> >>> it
> >>> am.sutar@samsung.com/
> >>>
> >>> Pritam Manohar Sutar (3):
> >>> arm64: dts: exynos: ExynosAutov920: Add USB and USB-phy nodes
> >>> arm64: dts: exynos: ExynosAutov920: Add regulators for the USB
> >>> arm64: dts: exynos: ExynosAutov920: Enable USB nodes
> >>>
> >>> .../boot/dts/exynos/exynosautov920-sadk.dts | 160
> >> +++++++++++++++++
> >>> .../arm64/boot/dts/exynos/exynosautov920.dtsi | 162
> >>> ++++++++++++++++++
> >>> 2 files changed, 322 insertions(+)
> >>>
> >>> --
> >>> 2.34.1
> >>>
> >>>
> >>>
> >>
> >>
> >> My bot found new DTB warnings on the .dts files added or changed in
> >> this series.
> >>
> >> Some warnings may be from an existing SoC .dtsi. Or perhaps the
> >> warnings are fixed by another series. Ultimately, it is up to the
> >> platform maintainer whether these warnings are acceptable or not. No
> >> need to reply unless the platform maintainer has comments.
> >>
> >> If you already ran DT checks and didn't see these error(s), then make
> >> sure dt- schema is up to date:
> >>
> >> pip3 install dtschema --upgrade
> >>
> >>
> >> This patch series was applied (using b4) to base:
> >> Base: attempting to guess base-commit...
> >> Base: tags/next-20260121 (exact match)
> >> Base: tags/next-20260121 (use --merge-base to override)
> >>
> >> If this is not the correct base, please add 'base-commit' tag (or use
> >> b4 which does this automatically)
> >>
> >>
> >> New warnings running 'make CHECK_DTBS=y for
> >> arch/arm64/boot/dts/exynos/' for 20260122130721.205664-1-
> >> pritam.sutar@samsung.com:
> >>
> >> arch/arm64/boot/dts/exynos/exynosautov920-sadk.dtb: usb-phy0 (usb-
> >> nop-xceiv): '#phy-cells' is a required property
> >> from schema $id: https://protect2.fireeye.com/v1/url?k=91401ba9-
> >> cedb2354-914190e6-000babff317b-0af64cc1fcd35e1a&q=1&e=e0bf9bed-
> >> 20f5-431c-9a8f-
> >>
> ded53e46a366&u=http%3A%2F%2Fdevicetree.org%2Fschemas%2Fusb%2Fu
> >> sb-nop-xceiv.yaml
> >> arch/arm64/boot/dts/exynos/exynosautov920-sadk.dtb: usb-phy1 (usb-
> >> nop-xceiv): '#phy-cells' is a required property
> >> from schema $id: https://protect2.fireeye.com/v1/url?k=b208eda5-
> >> ed93d558-b20966ea-000babff317b-f6650041a1e910a7&q=1&e=e0bf9bed-
> >> 20f5-431c-9a8f-
> >>
> ded53e46a366&u=http%3A%2F%2Fdevicetree.org%2Fschemas%2Fusb%2Fu
> >> sb-nop-xceiv.yaml
> >> arch/arm64/boot/dts/exynos/exynosautov920-sadk.dtb: usb-phy2 (usb-
> >> nop-xceiv): '#phy-cells' is a required property
> >> from schema $id: https://protect2.fireeye.com/v1/url?k=ce686cfd-
> >> 91f35400-ce69e7b2-000babff317b-ccbf1b3c353ecfc0&q=1&e=e0bf9bed-
> 20f5-
> >> 431c-9a8f-
> >>
> ded53e46a366&u=http%3A%2F%2Fdevicetree.org%2Fschemas%2Fusb%2Fu
> >> sb-nop-xceiv.yaml
> >> arch/arm64/boot/dts/exynos/exynosautov920-sadk.dtb: usb-phy3 (usb-
> >> nop-xceiv): '#phy-cells' is a required property
> >> from schema $id: https://protect2.fireeye.com/v1/url?k=633aebf3-
> >> 3ca1d30e-633b60bc-000babff317b-ef5a169bc853eddb&q=1&e=e0bf9bed-
> >> 20f5-431c-9a8f-
> >>
> ded53e46a366&u=http%3A%2F%2Fdevicetree.org%2Fschemas%2Fusb%2Fu
> >> sb-nop-xceiv.yaml
> >
> > Apologize for any inconvenience caused by the issues you’ve identified.
>
> It means you did not test the patches before sending and I find it very
> wasteful of my time.
>
> > Below, Have outlined the changes, will implement to address the
> > warnings and ensure the patch set aligns with the required standards.
> >
> > Proposed Changes:
> > 1. Will include #phy-cells = <0>; in the USB PHY nodes
> > (usb_phy0, usb_phy1, usb_phy2, and usb_phy3) This is a crucial
> > addition to avoid compilation warnings and ensure compatibility.
> >
> > Example:
> > usb_phy0: usb-phy0 {
> > compatible = "usb-nop-xceiv";
> > #phy-cells = <0>;
> > vbus-supply = <&usbdrd31_dwc3_vbus>;
> > };
> >
> > 2. The errors were not caught by the make dt_binding_check and make
> dtbs_check
> > commands
> > make -j ARCH=arm64 dt_binding_check dtbs_check
> DT_SCHEMA_FILES=Documentation/devicetree/bindings/phy/samsung,usb3
> -drd-phy.yaml
> > make -j ARCH=arm64 dt_binding_check dtbs_check
> >
> DT_SCHEMA_FILES=Documentation/devicetree/bindings/usb/samsung,exyn
> os-d
> > wc3.yaml
>
> This is not the command you are supposed to run! You MUST CHECK YOUR
> DTS WITH ALL THE BINDINGS. Why would you run only two of them and
> ignore the rest which you still use? What is the logic behind - I will use phy-
> nop binding, but not test against it?
>
> A hint - if your patches are not being picked up, maybe because you send
> buggy code and I am bored to reply - test finally, because I am not your
> testing service.
Sorry for the inconvenience. will take care of this in future to consider
all bindings rather than taking what are updated for this SoC.
>
> Best regards,
> Krzysztof
Thank you,
Regards,
Pritam
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [PATCH v2 2/3] arm64: dts: exynos: ExynosAutov920: Add regulators for the USB
2026-02-12 11:37 ` pritam.sutar
@ 2026-02-15 8:57 ` Krzysztof Kozlowski
2026-02-18 9:28 ` pritam.sutar
0 siblings, 1 reply; 23+ messages in thread
From: Krzysztof Kozlowski @ 2026-02-15 8:57 UTC (permalink / raw)
To: pritam.sutar, robh, krzk+dt, conor+dt, alim.akhtar
Cc: devicetree, linux-arm-kernel, linux-samsung-soc, linux-kernel,
rosa.pila, dev.tailor, faraz.ata, muhammed.ali, selvarasu.g
On 12/02/2026 12:37, pritam.sutar@samsung.com wrote:
> Hi Krzysztof,
>
>> -----Original Message-----
>> From: Krzysztof Kozlowski <krzk@kernel.org>
>> Sent: Thursday, January 22, 2026 7:04 PM
>> To: Pritam Manohar Sutar <pritam.sutar@samsung.com>; robh@kernel.org;
>> krzk+dt@kernel.org; conor+dt@kernel.org; alim.akhtar@samsung.com
>> Cc: devicetree@vger.kernel.org; linux-arm-kernel@lists.infradead.org; linux-
>> samsung-soc@vger.kernel.org; linux-kernel@vger.kernel.org;
>> rosa.pila@samsung.com; dev.tailor@samsung.com;
>> faraz.ata@samsung.com; muhammed.ali@samsung.com;
>> selvarasu.g@samsung.com
>> Subject: Re: [PATCH v2 2/3] arm64: dts: exynos: ExynosAutov920: Add
>> regulators for the USB
>>
>> On 22/01/2026 14:07, Pritam Manohar Sutar wrote:
>>> Add dummy regulator for USB and PHY supplies.
>>>
>>> Add vbus regulator that is enabled by GPIO pin.
>>>
>>> Signed-off-by: Pritam Manohar Sutar <pritam.sutar@samsung.com>
>>> ---
>>> .../boot/dts/exynos/exynosautov920-sadk.dts | 139
>> ++++++++++++++++++
>>> 1 file changed, 139 insertions(+)
>>>
>>> diff --git a/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts
>>> b/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts
>>> index a397f068ed53..f90f7704597c 100644
>>> --- a/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts
>>> +++ b/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts
>>> @@ -52,6 +52,76 @@ memory@80000000 {
>>> <0x8 0x80000000 0x1 0xfba00000>,
>>> <0xa 0x00000000 0x2 0x00000000>;
>>> };
>>> +
>>> + /* TODO: Remove this once PMIC is implemented */
>>> + dummy_regulator: regulator-0 {
>>> + compatible = "regulator-fixed";
>>> + regulator-name = "dummy_regulator";
>>> + };
>>> +
>>> + usbdrd31_dwc3_vbus: usbdrd31_dwc3-vbus {
>>
>> Please use name for all fixed regulators which matches current format
>> recommendation: 'regulator-[0-9]v[0-9]'
>>
>> https://web.git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/
>> Documentation/devicetree/bindings/regulator/fixed-regulator.yaml
>>
>> None of the regulators are called like you wrote. Really NONE.
>>
>
> Thank you for the references. Will bring changes for regulator's name
> and labels as
>
> - usbdrd31_dwc3_vbus: usbdrd31_dwc3-vbus {
> + reg_usbdrd31_dwc3_vbus: regulator-1 {
Did you read the binding? That's not what I asked.
>
>> Also, carefully follow DTS coding style.
>>
>
> Sorry for that. Checking the code and will update in next
> patchset version (v3).
>
>>> + compatible = "regulator-fixed";
>>> + regulator-name = "usbdrd31_dwc3-vbus";
>>> + regulator-min-microvolt = <5000000>;
>>> + regulator-max-microvolt = <5000000>;
>>> + enable-active-high;
>>> + regulator-always-on;
>>> + gpio = <&gpp2 0 GPIO_ACTIVE_HIGH>;
>>> + };
>>> +
>>> + /* Use gpio for enabling vbus regulator */
>>> + usb_phy0: usb-phy0 {
>>
>> usb-phy-0
>>
>>> + compatible = "usb-nop-xceiv";
>>> + vbus-supply = <&usbdrd31_dwc3_vbus>;
>>
>> That's pretty incomplete. Why do you need such node - just to toggle
>> regulator?
>>
>
> There is no external controller to detect or switch the USB modes
> automatically rather it is switched using userspace control
> (sysfs attributes) for this SoC. GPIO pins are required to enable
> vbus regulators. Existing phy-generic and fixed regulator are used to
> avoid making any USB driver changes for the same purpose and it is
> referenced from below -
>
> https://lore.kernel.org/r/20230825215445.28309-3-semen.protsenko@linaro.org
> a12af1c20751340ab6e449a5ef78b37d31123aca: ARM64: dts: marvell: armada-3720-db: Add phy for USB3
>
>>> + };
>>
>> ...
>>
>>> +&usbdrd20_phy2 {
>>> + dvdd-supply = <&dummy_regulator>;
>>> + vdd18-supply = <&dummy_regulator>;
>>> + vdd33-supply = <&dummy_regulator>;
>>> +};
>>> +
>>> +&usbdrd20_dwc3_2 {
>>> + maximum-speed = "high-speed";
>>> + usb-phy = <&usb_phy3>;
>>> +};
>>> +
>>> +&usbdrd20_2 {
>>> + vdd10-supply = <&dummy_regulator>;
>>> + vdd33-supply = <&dummy_regulator>;
>>> +};
>>
>> That's a bit too much of dummies. This is heavily incomplete. You need to
>> bring back the PMIC first.
>>
>
> Presently, relying on USB LDOs being enabled by the bootloader in this
> automotive SoC. However, we understand the concern and it is added in case
> if anyone wants to use implemented PMIC in future. For now, would like
> to proceed with the dummy regulators to enable the required USB features.
And I don't see the point of these dummies. Solves nothing.
> Dummy regulators are clearly marked so that they will be replaced once
> the PMIC driver is fully up.
>
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 23+ messages in thread
* RE: [PATCH v2 2/3] arm64: dts: exynos: ExynosAutov920: Add regulators for the USB
2026-02-15 8:57 ` Krzysztof Kozlowski
@ 2026-02-18 9:28 ` pritam.sutar
2026-02-18 19:54 ` Krzysztof Kozlowski
0 siblings, 1 reply; 23+ messages in thread
From: pritam.sutar @ 2026-02-18 9:28 UTC (permalink / raw)
To: 'Krzysztof Kozlowski', robh, krzk+dt, conor+dt,
alim.akhtar
Cc: devicetree, linux-arm-kernel, linux-samsung-soc, linux-kernel,
rosa.pila, dev.tailor, faraz.ata, muhammed.ali, selvarasu.g
Hi Krzysztof,
> -----Original Message-----
> From: Krzysztof Kozlowski <krzk@kernel.org>
> Sent: Sunday, February 15, 2026 2:27 PM
> To: pritam.sutar@samsung.com; robh@kernel.org; krzk+dt@kernel.org;
> conor+dt@kernel.org; alim.akhtar@samsung.com
> Cc: devicetree@vger.kernel.org; linux-arm-kernel@lists.infradead.org; linux-
> samsung-soc@vger.kernel.org; linux-kernel@vger.kernel.org;
> rosa.pila@samsung.com; dev.tailor@samsung.com;
> faraz.ata@samsung.com; muhammed.ali@samsung.com;
> selvarasu.g@samsung.com
> Subject: Re: [PATCH v2 2/3] arm64: dts: exynos: ExynosAutov920: Add
> regulators for the USB
>
> On 12/02/2026 12:37, pritam.sutar@samsung.com wrote:
> > Hi Krzysztof,
> >
> >> -----Original Message-----
> >> From: Krzysztof Kozlowski <krzk@kernel.org>
> >> Sent: Thursday, January 22, 2026 7:04 PM
> >> To: Pritam Manohar Sutar <pritam.sutar@samsung.com>;
> robh@kernel.org;
> >> krzk+dt@kernel.org; conor+dt@kernel.org; alim.akhtar@samsung.com
> >> Cc: devicetree@vger.kernel.org; linux-arm-kernel@lists.infradead.org;
> >> linux- samsung-soc@vger.kernel.org; linux-kernel@vger.kernel.org;
> >> rosa.pila@samsung.com; dev.tailor@samsung.com;
> faraz.ata@samsung.com;
> >> muhammed.ali@samsung.com; selvarasu.g@samsung.com
> >> Subject: Re: [PATCH v2 2/3] arm64: dts: exynos: ExynosAutov920: Add
> >> regulators for the USB
> >>
> >> On 22/01/2026 14:07, Pritam Manohar Sutar wrote:
> >>> Add dummy regulator for USB and PHY supplies.
> >>>
> >>> Add vbus regulator that is enabled by GPIO pin.
> >>>
> >>> Signed-off-by: Pritam Manohar Sutar <pritam.sutar@samsung.com>
> >>> ---
> >>> .../boot/dts/exynos/exynosautov920-sadk.dts | 139
> >> ++++++++++++++++++
> >>> 1 file changed, 139 insertions(+)
> >>>
> >>> diff --git a/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts
> >>> b/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts
> >>> index a397f068ed53..f90f7704597c 100644
> >>> --- a/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts
> >>> +++ b/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts
> >>> @@ -52,6 +52,76 @@ memory@80000000 {
> >>> <0x8 0x80000000 0x1 0xfba00000>,
> >>> <0xa 0x00000000 0x2 0x00000000>;
> >>> };
> >>> +
> >>> + /* TODO: Remove this once PMIC is implemented */
> >>> + dummy_regulator: regulator-0 {
> >>> + compatible = "regulator-fixed";
> >>> + regulator-name = "dummy_regulator";
> >>> + };
> >>> +
> >>> + usbdrd31_dwc3_vbus: usbdrd31_dwc3-vbus {
> >>
> >> Please use name for all fixed regulators which matches current format
> >> recommendation: 'regulator-[0-9]v[0-9]'
> >>
> >> https://web.git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.gi
> >> t/tree/
> >> Documentation/devicetree/bindings/regulator/fixed-regulator.yaml
> >>
> >> None of the regulators are called like you wrote. Really NONE.
> >>
> >
> > Thank you for the references. Will bring changes for regulator's name
> > and labels as
> >
> > - usbdrd31_dwc3_vbus: usbdrd31_dwc3-vbus {
> > + reg_usbdrd31_dwc3_vbus: regulator-1 {
>
> Did you read the binding? That's not what I asked.
>
Yes.
Sorry for misinterpreting above comment. Is it expected as below?
This is based on our understanding by referring binding and other vendor dts.
--- a/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts
+++ b/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts
@@ -59,7 +59,7 @@ dummy_regulator: regulator-0 {
regulator-name = "dummy_regulator";
};
- usbdrd31_dwc3_vbus: usbdrd31_dwc3-vbus {
+ reg_usb_vbus0: regulator-5v0-vbus0 {
compatible = "regulator-fixed";
regulator-name = "usbdrd31_dwc3-vbus";
regulator-min-microvolt = <5000000>;
@@ -75,7 +75,7 @@ usb_phy0: usb-phy0 {
vbus-supply = <&usbdrd31_dwc3_vbus>;
};
- usbdrd20_dwc3_0_vbus: usbdrd20_dwc3_0-vbus {
+ reg_usb_vbus1: regulator-5v0-vbus1 {
compatible = "regulator-fixed";
regulator-name = "usbdrd20_dwc3_0-vbus";
regulator-min-microvolt = <5000000>;
@@ -91,7 +91,7 @@ usb_phy1: usb-phy1 {
vbus-supply = <&usbdrd20_dwc3_0_vbus>;
};
- usbdrd20_dwc3_1_vbus: usbdrd20_dwc3_1-vbus {
+ reg_usb_vbus2: regulator-5v0-vbus2 {
compatible = "regulator-fixed";
regulator-name = "usbdrd20_dwc3_1-vbus";
regulator-min-microvolt = <5000000>;
@@ -107,7 +107,7 @@ usb_phy2: usb-phy2 {
vbus-supply = <&usbdrd20_dwc3_1_vbus>;
};
- usbdrd20_dwc3_2_vbus: usbdrd20_dwc3_2-vbus {
+ reg_usb_vbus3: regulator-5v0-vbus3 {
compatible = "regulator-fixed";
regulator-name = "usbdrd20_dwc3_2-vbus";
regulator-min-microvolt = <5000000>;
>
> >
> >> Also, carefully follow DTS coding style.
> >>
> >
> > Sorry for that. Checking the code and will update in next patchset
> > version (v3).
> >
> >>> + compatible = "regulator-fixed";
> >>> + regulator-name = "usbdrd31_dwc3-vbus";
> >>> + regulator-min-microvolt = <5000000>;
> >>> + regulator-max-microvolt = <5000000>;
> >>> + enable-active-high;
> >>> + regulator-always-on;
> >>> + gpio = <&gpp2 0 GPIO_ACTIVE_HIGH>;
> >>> + };
> >>> +
> >>> + /* Use gpio for enabling vbus regulator */
> >>> + usb_phy0: usb-phy0 {
> >>
> >> usb-phy-0
> >>
> >>> + compatible = "usb-nop-xceiv";
> >>> + vbus-supply = <&usbdrd31_dwc3_vbus>;
> >>
> >> That's pretty incomplete. Why do you need such node - just to toggle
> >> regulator?
> >>
> >
> > There is no external controller to detect or switch the USB modes
> > automatically rather it is switched using userspace control (sysfs
> > attributes) for this SoC. GPIO pins are required to enable vbus
> > regulators. Existing phy-generic and fixed regulator are used to avoid
> > making any USB driver changes for the same purpose and it is
> > referenced from below -
> >
> > https://lore.kernel.org/r/20230825215445.28309-3-semen.protsenko@linar
> > o.org
> > a12af1c20751340ab6e449a5ef78b37d31123aca: ARM64: dts: marvell:
> > armada-3720-db: Add phy for USB3
> >
> >>> + };
> >>
> >> ...
> >>
> >>> +&usbdrd20_phy2 {
> >>> + dvdd-supply = <&dummy_regulator>;
> >>> + vdd18-supply = <&dummy_regulator>;
> >>> + vdd33-supply = <&dummy_regulator>; };
> >>> +
> >>> +&usbdrd20_dwc3_2 {
> >>> + maximum-speed = "high-speed";
> >>> + usb-phy = <&usb_phy3>;
> >>> +};
> >>> +
> >>> +&usbdrd20_2 {
> >>> + vdd10-supply = <&dummy_regulator>;
> >>> + vdd33-supply = <&dummy_regulator>; };
> >>
> >> That's a bit too much of dummies. This is heavily incomplete. You
> >> need to bring back the PMIC first.
> >>
> >
> > Presently, relying on USB LDOs being enabled by the bootloader in this
> > automotive SoC. However, we understand the concern and it is added in
> > case if anyone wants to use implemented PMIC in future. For now, would
> > like to proceed with the dummy regulators to enable the required USB
> features.
>
> And I don't see the point of these dummies. Solves nothing.
>
Are you expecting details as mentioned in above section in commit message?
However, we have mentioned these details in cover letter.
if not, please provide more details on this comment.
> > Dummy regulators are clearly marked so that they will be replaced once
> > the PMIC driver is fully up.
> >
>
>
> Best regards,
> Krzysztof
Thank you,
Regards,
Pritam
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [PATCH v2 2/3] arm64: dts: exynos: ExynosAutov920: Add regulators for the USB
2026-02-18 9:28 ` pritam.sutar
@ 2026-02-18 19:54 ` Krzysztof Kozlowski
2026-03-04 7:46 ` pritam.sutar
0 siblings, 1 reply; 23+ messages in thread
From: Krzysztof Kozlowski @ 2026-02-18 19:54 UTC (permalink / raw)
To: pritam.sutar, robh, krzk+dt, conor+dt, alim.akhtar
Cc: devicetree, linux-arm-kernel, linux-samsung-soc, linux-kernel,
rosa.pila, dev.tailor, faraz.ata, muhammed.ali, selvarasu.g
On 18/02/2026 10:28, pritam.sutar@samsung.com wrote:
>>>>> + usbdrd31_dwc3_vbus: usbdrd31_dwc3-vbus {
>>>>
>>>> Please use name for all fixed regulators which matches current format
>>>> recommendation: 'regulator-[0-9]v[0-9]'
>>>>
>>>> https://web.git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.gi
>>>> t/tree/
>>>> Documentation/devicetree/bindings/regulator/fixed-regulator.yaml
>>>>
>>>> None of the regulators are called like you wrote. Really NONE.
>>>>
>>>
>>> Thank you for the references. Will bring changes for regulator's name
>>> and labels as
>>>
>>> - usbdrd31_dwc3_vbus: usbdrd31_dwc3-vbus {
>>> + reg_usbdrd31_dwc3_vbus: regulator-1 {
>>
>> Did you read the binding? That's not what I asked.
>>
>
> Yes.
> Sorry for misinterpreting above comment. Is it expected as below?
>
> This is based on our understanding by referring binding and other vendor dts.
>
> --- a/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts
> +++ b/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts
> @@ -59,7 +59,7 @@ dummy_regulator: regulator-0 {
> regulator-name = "dummy_regulator";
> };
>
> - usbdrd31_dwc3_vbus: usbdrd31_dwc3-vbus {
> + reg_usb_vbus0: regulator-5v0-vbus0 {
Yes, that's better.
Only under the assumption these are actually dedicated single-enable-pin
regulators, not pins going to the PMIC.
> compatible = "regulator-fixed";
> regulator-name = "usbdrd31_dwc3-vbus";
> regulator-min-microvolt = <5000000>;
> @@ -75,7 +75,7 @@ usb_phy0: usb-phy0 {
> vbus-supply = <&usbdrd31_dwc3_vbus>;
> };
>
...
>>>>
>>>> That's a bit too much of dummies. This is heavily incomplete. You
>>>> need to bring back the PMIC first.
>>>>
>>>
>>> Presently, relying on USB LDOs being enabled by the bootloader in this
>>> automotive SoC. However, we understand the concern and it is added in
>>> case if anyone wants to use implemented PMIC in future. For now, would
>>> like to proceed with the dummy regulators to enable the required USB
>> features.
>>
>> And I don't see the point of these dummies. Solves nothing.
>>
>
> Are you expecting details as mentioned in above section in commit message?
> However, we have mentioned these details in cover letter.
No, I am expecting proper PMIC to be represented here. One dummy
regulator during the fast development phase is okay. Dummy added by
community contributors without resources and schematics would also fly.
But Samsung, with all the resources, schematics doing development since
2023 and still adding 20 dummies to every device? Nope, no, sorry.
Please start doing this properly. Look how entire new SoC was upstreamed
by Linaro:
https://lore.kernel.org/all/20231121-topic-sm8650-upstream-dt-v3-0-db9d0507ffd3@linaro.org/
Or something newer by Qualcomm:
https://lore.kernel.org/linux-arm-msm/?q=s%3Aglymur
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 23+ messages in thread
* RE: [PATCH v2 2/3] arm64: dts: exynos: ExynosAutov920: Add regulators for the USB
2026-02-18 19:54 ` Krzysztof Kozlowski
@ 2026-03-04 7:46 ` pritam.sutar
2026-03-04 8:08 ` Krzysztof Kozlowski
0 siblings, 1 reply; 23+ messages in thread
From: pritam.sutar @ 2026-03-04 7:46 UTC (permalink / raw)
To: 'Krzysztof Kozlowski', robh, krzk+dt, conor+dt,
alim.akhtar
Cc: devicetree, linux-arm-kernel, linux-samsung-soc, linux-kernel,
rosa.pila, dev.tailor, faraz.ata, muhammed.ali, selvarasu.g
Hi Krzysztof,
> -----Original Message-----
> From: Krzysztof Kozlowski <krzk@kernel.org>
> Sent: Thursday, February 19, 2026 1:24 AM
> To: pritam.sutar@samsung.com; robh@kernel.org; krzk+dt@kernel.org;
> conor+dt@kernel.org; alim.akhtar@samsung.com
> Cc: devicetree@vger.kernel.org; linux-arm-kernel@lists.infradead.org; linux-
> samsung-soc@vger.kernel.org; linux-kernel@vger.kernel.org;
> rosa.pila@samsung.com; dev.tailor@samsung.com;
> faraz.ata@samsung.com; muhammed.ali@samsung.com;
> selvarasu.g@samsung.com
> Subject: Re: [PATCH v2 2/3] arm64: dts: exynos: ExynosAutov920: Add
> regulators for the USB
>
> On 18/02/2026 10:28, pritam.sutar@samsung.com wrote:
> >>>>> + usbdrd31_dwc3_vbus: usbdrd31_dwc3-vbus {
> >>>>
> >>>> Please use name for all fixed regulators which matches current
> >>>> format
> >>>> recommendation: 'regulator-[0-9]v[0-9]'
> >>>>
> >>>> https://web.git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.
> >>>> gi
> >>>> t/tree/
> >>>> Documentation/devicetree/bindings/regulator/fixed-regulator.yaml
> >>>>
> >>>> None of the regulators are called like you wrote. Really NONE.
> >>>>
> >>>
> >>> Thank you for the references. Will bring changes for regulator's
> >>> name and labels as
> >>>
> >>> - usbdrd31_dwc3_vbus: usbdrd31_dwc3-vbus {
> >>> + reg_usbdrd31_dwc3_vbus: regulator-1 {
> >>
> >> Did you read the binding? That's not what I asked.
> >>
> >
> > Yes.
> > Sorry for misinterpreting above comment. Is it expected as below?
> >
> > This is based on our understanding by referring binding and other vendor
> dts.
> >
> > --- a/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts
> > +++ b/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts
> > @@ -59,7 +59,7 @@ dummy_regulator: regulator-0 {
> > regulator-name = "dummy_regulator";
> > };
> >
> > - usbdrd31_dwc3_vbus: usbdrd31_dwc3-vbus {
> > + reg_usb_vbus0: regulator-5v0-vbus0 {
>
> Yes, that's better.
Thank you for the confirmation.
>
> Only under the assumption these are actually dedicated single-enable-pin
> regulators, not pins going to the PMIC.
>
Yes. this is dedicated single-enable-pin.
> > compatible = "regulator-fixed";
> > regulator-name = "usbdrd31_dwc3-vbus";
> > regulator-min-microvolt = <5000000>; @@ -75,7 +75,7 @@
> > usb_phy0: usb-phy0 {
> > vbus-supply = <&usbdrd31_dwc3_vbus>;
> > };
> >
>
> ...
>
> >>>>
> >>>> That's a bit too much of dummies. This is heavily incomplete. You
> >>>> need to bring back the PMIC first.
> >>>>
> >>>
> >>> Presently, relying on USB LDOs being enabled by the bootloader in
> >>> this automotive SoC. However, we understand the concern and it is
> >>> added in case if anyone wants to use implemented PMIC in future. For
> >>> now, would like to proceed with the dummy regulators to enable the
> >>> required USB
> >> features.
> >>
> >> And I don't see the point of these dummies. Solves nothing.
> >>
> >
> > Are you expecting details as mentioned in above section in commit
> message?
> > However, we have mentioned these details in cover letter.
>
> No, I am expecting proper PMIC to be represented here. One dummy
> regulator during the fast development phase is okay. Dummy added by
> community contributors without resources and schematics would also fly.
>
> But Samsung, with all the resources, schematics doing development since
> 2023 and still adding 20 dummies to every device? Nope, no, sorry.
>
> Please start doing this properly. Look how entire new SoC was upstreamed
> by Linaro:
> https://lore.kernel.org/all/20231121-topic-sm8650-upstream-dt-v3-0-
> db9d0507ffd3@linaro.org/
>
> Or something newer by Qualcomm:
> https://lore.kernel.org/linux-arm-msm/?q=s%3Aglymur
>
Appreciated for the references.
As you might know, the regulator control and power‑management architecture
has changed in recent Exynos SoCs. It is now controlled by the ACPM/APM core, and
the PMIC is interfaced over SPMI (instead of the legacy I2C interface). I am checking
internally how to implement this, and it may take a bit longer to have the full recipe
ready to add an actual regulator.
USB is one of the critical IP blocks that needs be enabled to allow the rest of the
team’s workflow over USB (e.g., enabling automation via USB for testing, etc.).
If these changes can be accommodated, it would be great. In the meantime,
I will continue working internally to see how we can push the missing pieces upstream.
>
> Best regards,
> Krzysztof
Thank you.
Regards,
Pritam
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [PATCH v2 2/3] arm64: dts: exynos: ExynosAutov920: Add regulators for the USB
2026-03-04 7:46 ` pritam.sutar
@ 2026-03-04 8:08 ` Krzysztof Kozlowski
0 siblings, 0 replies; 23+ messages in thread
From: Krzysztof Kozlowski @ 2026-03-04 8:08 UTC (permalink / raw)
To: pritam.sutar, robh, krzk+dt, conor+dt, alim.akhtar
Cc: devicetree, linux-arm-kernel, linux-samsung-soc, linux-kernel,
rosa.pila, dev.tailor, faraz.ata, muhammed.ali, selvarasu.g
On 04/03/2026 08:46, pritam.sutar@samsung.com wrote:
> Hi Krzysztof,
>
>> -----Original Message-----
>> From: Krzysztof Kozlowski <krzk@kernel.org>
>> Sent: Thursday, February 19, 2026 1:24 AM
>> To: pritam.sutar@samsung.com; robh@kernel.org; krzk+dt@kernel.org;
>> conor+dt@kernel.org; alim.akhtar@samsung.com
>> Cc: devicetree@vger.kernel.org; linux-arm-kernel@lists.infradead.org; linux-
>> samsung-soc@vger.kernel.org; linux-kernel@vger.kernel.org;
>> rosa.pila@samsung.com; dev.tailor@samsung.com;
>> faraz.ata@samsung.com; muhammed.ali@samsung.com;
>> selvarasu.g@samsung.com
>> Subject: Re: [PATCH v2 2/3] arm64: dts: exynos: ExynosAutov920: Add
>> regulators for the USB
>>
>> On 18/02/2026 10:28, pritam.sutar@samsung.com wrote:
>>>>>>> + usbdrd31_dwc3_vbus: usbdrd31_dwc3-vbus {
>>>>>>
>>>>>> Please use name for all fixed regulators which matches current
>>>>>> format
>>>>>> recommendation: 'regulator-[0-9]v[0-9]'
>>>>>>
>>>>>> https://web.git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.
>>>>>> gi
>>>>>> t/tree/
>>>>>> Documentation/devicetree/bindings/regulator/fixed-regulator.yaml
>>>>>>
>>>>>> None of the regulators are called like you wrote. Really NONE.
>>>>>>
>>>>>
>>>>> Thank you for the references. Will bring changes for regulator's
>>>>> name and labels as
>>>>>
>>>>> - usbdrd31_dwc3_vbus: usbdrd31_dwc3-vbus {
>>>>> + reg_usbdrd31_dwc3_vbus: regulator-1 {
>>>>
>>>> Did you read the binding? That's not what I asked.
>>>>
>>>
>>> Yes.
>>> Sorry for misinterpreting above comment. Is it expected as below?
>>>
>>> This is based on our understanding by referring binding and other vendor
>> dts.
>>>
>>> --- a/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts
>>> +++ b/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts
>>> @@ -59,7 +59,7 @@ dummy_regulator: regulator-0 {
>>> regulator-name = "dummy_regulator";
>>> };
>>>
>>> - usbdrd31_dwc3_vbus: usbdrd31_dwc3-vbus {
>>> + reg_usb_vbus0: regulator-5v0-vbus0 {
>>
>> Yes, that's better.
>
> Thank you for the confirmation.
>
>>
>> Only under the assumption these are actually dedicated single-enable-pin
>> regulators, not pins going to the PMIC.
>>
>
> Yes. this is dedicated single-enable-pin.
>
>>> compatible = "regulator-fixed";
>>> regulator-name = "usbdrd31_dwc3-vbus";
>>> regulator-min-microvolt = <5000000>; @@ -75,7 +75,7 @@
>>> usb_phy0: usb-phy0 {
>>> vbus-supply = <&usbdrd31_dwc3_vbus>;
>>> };
>>>
>>
>> ...
>>
>>>>>>
>>>>>> That's a bit too much of dummies. This is heavily incomplete. You
>>>>>> need to bring back the PMIC first.
>>>>>>
>>>>>
>>>>> Presently, relying on USB LDOs being enabled by the bootloader in
>>>>> this automotive SoC. However, we understand the concern and it is
>>>>> added in case if anyone wants to use implemented PMIC in future. For
>>>>> now, would like to proceed with the dummy regulators to enable the
>>>>> required USB
>>>> features.
>>>>
>>>> And I don't see the point of these dummies. Solves nothing.
>>>>
>>>
>>> Are you expecting details as mentioned in above section in commit
>> message?
>>> However, we have mentioned these details in cover letter.
>>
>> No, I am expecting proper PMIC to be represented here. One dummy
>> regulator during the fast development phase is okay. Dummy added by
>> community contributors without resources and schematics would also fly.
>>
>> But Samsung, with all the resources, schematics doing development since
>> 2023 and still adding 20 dummies to every device? Nope, no, sorry.
>>
>> Please start doing this properly. Look how entire new SoC was upstreamed
>> by Linaro:
>> https://lore.kernel.org/all/20231121-topic-sm8650-upstream-dt-v3-0-
>> db9d0507ffd3@linaro.org/
>>
>> Or something newer by Qualcomm:
>> https://lore.kernel.org/linux-arm-msm/?q=s%3Aglymur
>>
>
> Appreciated for the references.
>
> As you might know, the regulator control and power‑management architecture
> has changed in recent Exynos SoCs. It is now controlled by the ACPM/APM core, and
> the PMIC is interfaced over SPMI (instead of the legacy I2C interface). I am checking
> internally how to implement this, and it may take a bit longer to have the full recipe
> ready to add an actual regulator.
I did not say anything odd about the process. You should have done
ACPM/APM/SPMI much earlier, because PMIC is a necessary early step in
upstreaming.
Your explanation feels like you are surprised.
>
> USB is one of the critical IP blocks that needs be enabled to allow the rest of the
> team’s workflow over USB (e.g., enabling automation via USB for testing, etc.).
PMIC is before USB...
>
> If these changes can be accommodated, it would be great. In the meantime,
> I will continue working internally to see how we can push the missing pieces upstream.
Sorry, I am not taking ~22 phandles to a dummy regulator.
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 23+ messages in thread
end of thread, other threads:[~2026-03-04 8:08 UTC | newest]
Thread overview: 23+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <CGME20260122125130epcas5p4ac37f540c609f3016ff02f5708e897a2@epcas5p4.samsung.com>
2026-01-22 13:07 ` [PATCH v2 0/3] Add and enable USB nodes for ExynosAutov920 SoC Pritam Manohar Sutar
2026-01-22 13:07 ` [PATCH v2 1/3] arm64: dts: exynos: ExynosAutov920: Add USB and USB-phy nodes Pritam Manohar Sutar
2026-01-22 13:07 ` [PATCH v2 2/3] arm64: dts: exynos: ExynosAutov920: Add regulators for the USB Pritam Manohar Sutar
2026-01-22 13:34 ` Krzysztof Kozlowski
2026-02-12 11:37 ` pritam.sutar
2026-02-15 8:57 ` Krzysztof Kozlowski
2026-02-18 9:28 ` pritam.sutar
2026-02-18 19:54 ` Krzysztof Kozlowski
2026-03-04 7:46 ` pritam.sutar
2026-03-04 8:08 ` Krzysztof Kozlowski
2026-01-22 13:07 ` [PATCH v2 3/3] arm64: dts: exynos: ExynosAutov920: Enable USB nodes Pritam Manohar Sutar
2026-01-22 13:35 ` Krzysztof Kozlowski
2026-01-23 7:29 ` Pritam Manohar Sutar
2026-01-23 7:59 ` Pritam Manohar Sutar
2026-01-23 8:05 ` Krzysztof Kozlowski
2026-02-12 11:40 ` pritam.sutar
2026-01-28 7:36 ` Krzysztof Kozlowski
2026-02-12 11:42 ` pritam.sutar
2026-01-22 17:15 ` [PATCH v2 0/3] Add and enable USB nodes for ExynosAutov920 SoC Rob Herring
2026-01-23 6:23 ` Pritam Manohar Sutar
2026-01-23 7:31 ` Krzysztof Kozlowski
2026-02-12 11:48 ` pritam.sutar
2026-01-28 7:38 ` Krzysztof Kozlowski
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox