Re: [PATCH v5 2/3] arm64: dts: nuvoton: ma35d1: add USB controllers and dual-port PHY node

From: Joey Lu

Date: Thu Sep 24 2026 - 02:48:47 EST



Jacky Huang 於 2026/9/19 下午 01:49 寫道:
Add the USB subsystem nodes for the MA35D1 SoC and boards:

   - usb_phy: standalone PHY node with #phy-cells = <1>, covering both
     the OTG port (PHY0, index 0) and the host-only port (PHY1, index 1).
     Uses nuvoton,sys phandle and HUSBH0_GATE clock per the binding.

   - usb (DWC2 gadget, USB0): phys = <&usb_phy 0>, dr_mode = peripheral.
   - ehci0/ohci0 (USB0 host): phys = <&usb_phy 0>, companion pairing.
   - ehci1/ohci1 (USB1 host): phys = <&usb_phy 1>.

Board files (ma35d1-som-256m.dts, ma35d1-iot-512m.dts) add pinctrl for
VBUSVLD, PWREN and OVC signals and enable all USB nodes.

Signed-off-by: Joey Lu <a0987203069@xxxxxxxxx>
---
  .../boot/dts/nuvoton/ma35d1-iot-512m.dts      | 36 ++++++++++
  .../boot/dts/nuvoton/ma35d1-som-256m.dts      | 36 ++++++++++
  arch/arm64/boot/dts/nuvoton/ma35d1.dtsi       | 65 +++++++++++++++++++
  3 files changed, 137 insertions(+)

diff --git a/arch/arm64/boot/dts/nuvoton/ma35d1-iot-512m.dts b/arch/arm64/boot/dts/nuvoton/ma35d1-iot-512m.dts
index 78534d613486..0a068abda6e0 100644
--- a/arch/arm64/boot/dts/nuvoton/ma35d1-iot-512m.dts
+++ b/arch/arm64/boot/dts/nuvoton/ma35d1-iot-512m.dts
@@ -97,6 +97,16 @@ pinctrl_uart14: uart14-pins {
                         power-source = <1>;
                 };
         };
+
+       hsusb {
+               pinctrl_hsusb: hsusb-pins {
+                       nuvoton,pins = <5 15 1>, /* VBUSVLD */
+                                      <11 12 9>, /* PWREN */
+                                      <11 13 9>; /* OVC */
+                       bias-disable;
+                       power-source = <1>;
+               };
+       };
  };


The outer pinctrl group node name does not match the MA35D1 pinctrl binding. dt-validate reports:

  'hsusb' does not match any of the regexes: '-grp$',
  '^gpio@[0-9a-f]+$', '^pinctrl-[0-9]+$'

Please rename it to "hsusb-grp" in both ma35d1-iot-512m.dts and ma35d1-som-256m.dts.

I tested this change locally. Both affected DTBs build and validate cleanly after the rename.


Best regards,
Jacky Huang
Agreed, hsusb doesn't match the pinctrl node-name regex. I'll rename it to hsusb-grp in both
ma35d1-iot-512m.dts and ma35d1-som-256m.dts in the next revision.

Thanks.