mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH v2 0/3] arm64: dts: nuvoton: Improve MA35D1 support
@ 2026-09-04 13:02 Miquel Raynal
  2026-09-04 13:02 ` [PATCH v2 1/3] dt-bindings: nuvoton: Add NuMaker compatible Miquel Raynal
                   ` (2 more replies)
  0 siblings, 3 replies; 7+ messages in thread
From: Miquel Raynal @ 2026-09-04 13:02 UTC (permalink / raw)
  To: Jacky Huang, Shan-Chun Hung, Andrew Jeffery, Avi Fishman,
	Tomer Maimon, Tali Perry, Patrick Venture, Nancy Yuen,
	Benjamin Fair, Rob Herring, Krzysztof Kozlowski, Conor Dooley
  Cc: Thomas Petazzoni, Steam Lin, linux-arm-kernel, openbmc,
	devicetree, linux-kernel, Miquel Raynal

I am in possession of an MA35D1 NuMaker board. The SPI controller has
been contributed, but:
1- it lacks a DT description
2- it does not work with current clock driver
3- it can be improved

This series is addressing #1.

Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
---
Changes in v2:
- Edit the binding file to mention the new compatible.
- Add a model and a compatible for that board.
- Link to v1: https://lore.kernel.org/r/20260813-perso-ma35d1-upstream-dts-v1-0-bb237fd7c3c2@bootlin.com

---
Miquel Raynal (3):
      dt-bindings: nuvoton: Add NuMaker compatible
      arm64: dts: nuvoton: Add QSPI0 node
      arm64: dts: nuvoton: Add NuMaker board

 .../bindings/arm/nuvoton/nuvoton,ma35d1.yaml       |  6 +++-
 arch/arm64/boot/dts/nuvoton/Makefile               |  1 +
 arch/arm64/boot/dts/nuvoton/ma35d1-numaker.dts     | 42 ++++++++++++++++++++++
 arch/arm64/boot/dts/nuvoton/ma35d1.dtsi            | 11 ++++++
 4 files changed, 59 insertions(+), 1 deletion(-)
---
base-commit: cee9395acd8043be0644b25c34bfa86623f2b935
change-id: 20260813-perso-ma35d1-upstream-dts-99f61de2c01c

Best regards,
-- 
Miquel Raynal <miquel.raynal@bootlin.com>


^ permalink raw reply	[flat|nested] 7+ messages in thread

* [PATCH v2 1/3] dt-bindings: nuvoton: Add NuMaker compatible
  2026-09-04 13:02 [PATCH v2 0/3] arm64: dts: nuvoton: Improve MA35D1 support Miquel Raynal
@ 2026-09-04 13:02 ` Miquel Raynal
  2026-09-04 15:11   ` Conor Dooley
  2026-09-04 13:02 ` [PATCH v2 2/3] arm64: dts: nuvoton: Add QSPI0 node Miquel Raynal
  2026-09-04 13:02 ` [PATCH v2 3/3] arm64: dts: nuvoton: Add NuMaker board Miquel Raynal
  2 siblings, 1 reply; 7+ messages in thread
From: Miquel Raynal @ 2026-09-04 13:02 UTC (permalink / raw)
  To: Jacky Huang, Shan-Chun Hung, Andrew Jeffery, Avi Fishman,
	Tomer Maimon, Tali Perry, Patrick Venture, Nancy Yuen,
	Benjamin Fair, Rob Herring, Krzysztof Kozlowski, Conor Dooley
  Cc: Thomas Petazzoni, Steam Lin, linux-arm-kernel, openbmc,
	devicetree, linux-kernel, Miquel Raynal

The NuMaker board is a carrier board on which the MA35D1 SoM may be
connected. It has a lot of available peripherals.

Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
---
 Documentation/devicetree/bindings/arm/nuvoton/nuvoton,ma35d1.yaml | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/Documentation/devicetree/bindings/arm/nuvoton/nuvoton,ma35d1.yaml b/Documentation/devicetree/bindings/arm/nuvoton/nuvoton,ma35d1.yaml
index fb190db61525..972f71a7449c 100644
--- a/Documentation/devicetree/bindings/arm/nuvoton/nuvoton,ma35d1.yaml
+++ b/Documentation/devicetree/bindings/arm/nuvoton/nuvoton,ma35d1.yaml
@@ -18,7 +18,11 @@ properties:
     const: '/'
   compatible:
     oneOf:
-
+      - description: NuMaker carrier board with an MA35D1 SoM
+        items:
+          - const: nuvoton,ma35d1-numaker
+          - const: nuvoton,ma35d1-som
+          - const: nuvoton,ma35d1
       - description: MA35D1 based boards
         items:
           - enum:

-- 
2.54.0


^ permalink raw reply	[flat|nested] 7+ messages in thread

* [PATCH v2 2/3] arm64: dts: nuvoton: Add QSPI0 node
  2026-09-04 13:02 [PATCH v2 0/3] arm64: dts: nuvoton: Improve MA35D1 support Miquel Raynal
  2026-09-04 13:02 ` [PATCH v2 1/3] dt-bindings: nuvoton: Add NuMaker compatible Miquel Raynal
@ 2026-09-04 13:02 ` Miquel Raynal
  2026-09-10 16:45   ` Jacky Huang
  2026-09-04 13:02 ` [PATCH v2 3/3] arm64: dts: nuvoton: Add NuMaker board Miquel Raynal
  2 siblings, 1 reply; 7+ messages in thread
From: Miquel Raynal @ 2026-09-04 13:02 UTC (permalink / raw)
  To: Jacky Huang, Shan-Chun Hung, Andrew Jeffery, Avi Fishman,
	Tomer Maimon, Tali Perry, Patrick Venture, Nancy Yuen,
	Benjamin Fair, Rob Herring, Krzysztof Kozlowski, Conor Dooley
  Cc: Thomas Petazzoni, Steam Lin, linux-arm-kernel, openbmc,
	devicetree, linux-kernel, Miquel Raynal

Describe the quad-SPI controller available on Nuvoton MA35D1. Bindings
for it have already been contributed.

Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
---
 arch/arm64/boot/dts/nuvoton/ma35d1.dtsi | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/arch/arm64/boot/dts/nuvoton/ma35d1.dtsi b/arch/arm64/boot/dts/nuvoton/ma35d1.dtsi
index 7228ad4735b5..9eec44128d28 100644
--- a/arch/arm64/boot/dts/nuvoton/ma35d1.dtsi
+++ b/arch/arm64/boot/dts/nuvoton/ma35d1.dtsi
@@ -431,5 +431,16 @@ mdio1: mdio {
 				#size-cells = <0>;
 			};
 		};
+
+		qspi0: spi@40680000 {
+			compatible = "nuvoton,ma35d1-qspi";
+			reg = <0x0 0x40680000 0x0 0x100>;
+			interrupts = <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>;
+			clocks = <&clk QSPI0_GATE>;
+			resets = <&sys MA35D1_RESET_QSPI0>;
+			#address-cells = <1>;
+			#size-cells = <0>;
+			status = "disabled";
+		};
 	};
 };

-- 
2.54.0


^ permalink raw reply	[flat|nested] 7+ messages in thread

* [PATCH v2 3/3] arm64: dts: nuvoton: Add NuMaker board
  2026-09-04 13:02 [PATCH v2 0/3] arm64: dts: nuvoton: Improve MA35D1 support Miquel Raynal
  2026-09-04 13:02 ` [PATCH v2 1/3] dt-bindings: nuvoton: Add NuMaker compatible Miquel Raynal
  2026-09-04 13:02 ` [PATCH v2 2/3] arm64: dts: nuvoton: Add QSPI0 node Miquel Raynal
@ 2026-09-04 13:02 ` Miquel Raynal
  2026-09-10 16:53   ` Jacky Huang
  2 siblings, 1 reply; 7+ messages in thread
From: Miquel Raynal @ 2026-09-04 13:02 UTC (permalink / raw)
  To: Jacky Huang, Shan-Chun Hung, Andrew Jeffery, Avi Fishman,
	Tomer Maimon, Tali Perry, Patrick Venture, Nancy Yuen,
	Benjamin Fair, Rob Herring, Krzysztof Kozlowski, Conor Dooley
  Cc: Thomas Petazzoni, Steam Lin, linux-arm-kernel, openbmc,
	devicetree, linux-kernel, Miquel Raynal

Nuvoton MA35D SoC is used on the NuMaker SoM, itself plugged onto a
carrier board labelled NuMaker. Create a DTS including the SoM
description. As a first external component, mention the SPI NAND
connected to the Quad SPI controller.

Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
---
 arch/arm64/boot/dts/nuvoton/Makefile           |  1 +
 arch/arm64/boot/dts/nuvoton/ma35d1-numaker.dts | 42 ++++++++++++++++++++++++++
 2 files changed, 43 insertions(+)

diff --git a/arch/arm64/boot/dts/nuvoton/Makefile b/arch/arm64/boot/dts/nuvoton/Makefile
index 3bc9787801a5..4c82109c885a 100644
--- a/arch/arm64/boot/dts/nuvoton/Makefile
+++ b/arch/arm64/boot/dts/nuvoton/Makefile
@@ -1,4 +1,5 @@
 # SPDX-License-Identifier: GPL-2.0
 dtb-$(CONFIG_ARCH_MA35) += ma35d1-iot-512m.dtb
+dtb-$(CONFIG_ARCH_MA35) += ma35d1-numaker.dtb
 dtb-$(CONFIG_ARCH_MA35) += ma35d1-som-256m.dtb
 dtb-$(CONFIG_ARCH_NPCM) += nuvoton-npcm845-evb.dtb
diff --git a/arch/arm64/boot/dts/nuvoton/ma35d1-numaker.dts b/arch/arm64/boot/dts/nuvoton/ma35d1-numaker.dts
new file mode 100644
index 000000000000..16c003998d3b
--- /dev/null
+++ b/arch/arm64/boot/dts/nuvoton/ma35d1-numaker.dts
@@ -0,0 +1,42 @@
+// SPDX-License-Identifier: GPL-2.0-only OR MIT
+/*
+ * Copyright (C) 2025 Bootlin
+ * Author: Miquel Raynal <miquel.raynal@bootlin.com>
+ */
+
+/dts-v1/;
+#include "ma35d1-som-256m.dts"
+
+/ {
+	model = "Nuvoton MA35D1 NuMaker";
+	compatible = "nuvoton,ma35d1-numaker", "nuvoton,ma35d1-som", "nuvoton,ma35d1";
+};
+
+&pinctrl {
+	spi-grp {
+		pinctrl_qspi0: qspi0-pins {
+			nuvoton,pins = <3 0 5>,
+				       <3 1 5>,
+				       <3 2 5>,
+				       <3 3 5>,
+				       <3 4 5>,
+				       <3 5 5>;
+			bias-disable;
+			power-source = <1>;
+		};
+	};
+};
+
+&qspi0 {
+	pinctrl-names = "default";
+	pinctrl-0 = <&pinctrl_qspi0>;
+	status = "okay";
+
+	flash: flash@0 {
+		compatible = "spi-nand";
+		reg = <0>;
+		spi-max-frequency = <30000000>;
+		spi-rx-bus-width = <4>;
+		spi-tx-bus-width = <4>;
+	};
+};

-- 
2.54.0


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH v2 1/3] dt-bindings: nuvoton: Add NuMaker compatible
  2026-09-04 13:02 ` [PATCH v2 1/3] dt-bindings: nuvoton: Add NuMaker compatible Miquel Raynal
@ 2026-09-04 15:11   ` Conor Dooley
  0 siblings, 0 replies; 7+ messages in thread
From: Conor Dooley @ 2026-09-04 15:11 UTC (permalink / raw)
  To: Miquel Raynal
  Cc: Jacky Huang, Shan-Chun Hung, Andrew Jeffery, Avi Fishman,
	Tomer Maimon, Tali Perry, Patrick Venture, Nancy Yuen,
	Benjamin Fair, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Thomas Petazzoni, Steam Lin, linux-arm-kernel, openbmc,
	devicetree, linux-kernel

[-- Attachment #1: Type: text/plain, Size: 75 bytes --]

Acked-by: Conor Dooley <conor.dooley@microchip.com>
pw-bot: not-applicable

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH v2 2/3] arm64: dts: nuvoton: Add QSPI0 node
  2026-09-04 13:02 ` [PATCH v2 2/3] arm64: dts: nuvoton: Add QSPI0 node Miquel Raynal
@ 2026-09-10 16:45   ` Jacky Huang
  0 siblings, 0 replies; 7+ messages in thread
From: Jacky Huang @ 2026-09-10 16:45 UTC (permalink / raw)
  To: Miquel Raynal, Jacky Huang, Shan-Chun Hung, Andrew Jeffery,
	Avi Fishman, Tomer Maimon, Tali Perry, Patrick Venture,
	Nancy Yuen, Benjamin Fair, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley
  Cc: Thomas Petazzoni, Steam Lin, linux-arm-kernel, openbmc,
	devicetree, linux-kernel

> Describe the quad-SPI controller available on Nuvoton MA35D1. Bindings
> for it have already been contributed.
>
> Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
> ---
>   arch/arm64/boot/dts/nuvoton/ma35d1.dtsi | 11 +++++++++++
>   1 file changed, 11 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/nuvoton/ma35d1.dtsi b/arch/arm64/boot/dts/nuvoton/ma35d1.dtsi
> index 7228ad4735b5..9eec44128d28 100644
> --- a/arch/arm64/boot/dts/nuvoton/ma35d1.dtsi
> +++ b/arch/arm64/boot/dts/nuvoton/ma35d1.dtsi
> @@ -431,5 +431,16 @@ mdio1: mdio {
>                                  #size-cells = <0>;
>                          };
>                  };
> +
> +               qspi0: spi@40680000 {
> +                       compatible = "nuvoton,ma35d1-qspi";
> +                       reg = <0x0 0x40680000 0x0 0x100>;
> +                       interrupts = <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>;
> +                       clocks = <&clk QSPI0_GATE>;
> +                       resets = <&sys MA35D1_RESET_QSPI0>;
> +                       #address-cells = <1>;
> +                       #size-cells = <0>;
> +                       status = "disabled";
> +               };
>          };
>   };
>
> --
> 2.54.0
>

Reviewed-by: Jacky Huang <ychuang3@nuvoton.com>

Best regards,
Jacky Huang


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH v2 3/3] arm64: dts: nuvoton: Add NuMaker board
  2026-09-04 13:02 ` [PATCH v2 3/3] arm64: dts: nuvoton: Add NuMaker board Miquel Raynal
@ 2026-09-10 16:53   ` Jacky Huang
  0 siblings, 0 replies; 7+ messages in thread
From: Jacky Huang @ 2026-09-10 16:53 UTC (permalink / raw)
  To: Miquel Raynal, Jacky Huang, Shan-Chun Hung, Andrew Jeffery,
	Avi Fishman, Tomer Maimon, Tali Perry, Patrick Venture,
	Nancy Yuen, Benjamin Fair, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley
  Cc: Thomas Petazzoni, Steam Lin, linux-arm-kernel, openbmc,
	devicetree, linux-kernel

> Nuvoton MA35D SoC is used on the NuMaker SoM, itself plugged onto a
> carrier board labelled NuMaker. Create a DTS including the SoM
> description. As a first external component, mention the SPI NAND
> connected to the Quad SPI controller.
>
> Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
> ---
>   arch/arm64/boot/dts/nuvoton/Makefile           |  1 +
>   arch/arm64/boot/dts/nuvoton/ma35d1-numaker.dts | 42 ++++++++++++++++++++++++++
>   2 files changed, 43 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/nuvoton/Makefile b/arch/arm64/boot/dts/nuvoton/Makefile
> index 3bc9787801a5..4c82109c885a 100644
> --- a/arch/arm64/boot/dts/nuvoton/Makefile
> +++ b/arch/arm64/boot/dts/nuvoton/Makefile
> @@ -1,4 +1,5 @@
>   # SPDX-License-Identifier: GPL-2.0
>   dtb-$(CONFIG_ARCH_MA35) += ma35d1-iot-512m.dtb
> +dtb-$(CONFIG_ARCH_MA35) += ma35d1-numaker.dtb
>   dtb-$(CONFIG_ARCH_MA35) += ma35d1-som-256m.dtb
>   dtb-$(CONFIG_ARCH_NPCM) += nuvoton-npcm845-evb.dtb
> diff --git a/arch/arm64/boot/dts/nuvoton/ma35d1-numaker.dts b/arch/arm64/boot/dts/nuvoton/ma35d1-numaker.dts
> new file mode 100644
> index 000000000000..16c003998d3b
> --- /dev/null
> +++ b/arch/arm64/boot/dts/nuvoton/ma35d1-numaker.dts
> @@ -0,0 +1,42 @@
> +// SPDX-License-Identifier: GPL-2.0-only OR MIT
> +/*
> + * Copyright (C) 2025 Bootlin
> + * Author: Miquel Raynal <miquel.raynal@bootlin.com>
> + */
> +
> +/dts-v1/;
> +#include "ma35d1-som-256m.dts"
> +
> +/ {
> +       model = "Nuvoton MA35D1 NuMaker";
> +       compatible = "nuvoton,ma35d1-numaker", "nuvoton,ma35d1-som", "nuvoton,ma35d1";
> +};
> +
> +&pinctrl {
> +       spi-grp {
> +               pinctrl_qspi0: qspi0-pins {
> +                       nuvoton,pins = <3 0 5>,
> +                                      <3 1 5>,
> +                                      <3 2 5>,
> +                                      <3 3 5>,
> +                                      <3 4 5>,
> +                                      <3 5 5>;
> +                       bias-disable;
> +                       power-source = <1>;
> +               };
> +       };
> +};
> +
> +&qspi0 {
> +       pinctrl-names = "default";
> +       pinctrl-0 = <&pinctrl_qspi0>;
> +       status = "okay";
> +
> +       flash: flash@0 {
> +               compatible = "spi-nand";
> +               reg = <0>;
> +               spi-max-frequency = <30000000>;
> +               spi-rx-bus-width = <4>;
> +               spi-tx-bus-width = <4>;
> +       };
> +};
>
> --
> 2.54.0
>

Reviewed-by: Jacky Huang <ychuang3@nuvoton.com>

Best regards,
Jacky Huang


^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2026-09-10 16:53 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-09-04 13:02 [PATCH v2 0/3] arm64: dts: nuvoton: Improve MA35D1 support Miquel Raynal
2026-09-04 13:02 ` [PATCH v2 1/3] dt-bindings: nuvoton: Add NuMaker compatible Miquel Raynal
2026-09-04 15:11   ` Conor Dooley
2026-09-04 13:02 ` [PATCH v2 2/3] arm64: dts: nuvoton: Add QSPI0 node Miquel Raynal
2026-09-10 16:45   ` Jacky Huang
2026-09-04 13:02 ` [PATCH v2 3/3] arm64: dts: nuvoton: Add NuMaker board Miquel Raynal
2026-09-10 16:53   ` Jacky Huang

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®