diff mbox series

[v4,3/3] arm64: dts: freescale: add i.MX95 19x19 EVK minimal board dts

Message ID 20240503-imx95-dts-v3-v4-3-535ddc2bde73@nxp.com (mailing list archive)
State New, archived
Headers show
Series arm64: dts: add i.MX95 and EVK board | expand

Commit Message

Peng Fan (OSS) May 3, 2024, 1:37 a.m. UTC
From: Peng Fan <peng.fan@nxp.com>

Add a minimal dts for i.MX95 19x19 EVK board:
 - lpuart1 as console
 - sdhc1/2 as storage

As of now, because scmi pinctrl support not ready, so count on
bootloader to set the pinctrl.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
---
 arch/arm64/boot/dts/freescale/Makefile            |   1 +
 arch/arm64/boot/dts/freescale/imx95-19x19-evk.dts | 112 ++++++++++++++++++++++
 2 files changed, 113 insertions(+)

Comments

Fabio Estevam May 3, 2024, 9:53 a.m. UTC | #1
Hi Peng,

On Thu, May 2, 2024 at 10:29 PM Peng Fan (OSS) <peng.fan@oss.nxp.com> wrote:

> +       aliases {
> +               gpio0 = &gpio1;
> +               gpio1 = &gpio2;
> +               gpio2 = &gpio3;
> +               gpio3 = &gpio4;
> +               gpio4 = &gpio5;
> +               i2c0 = &lpi2c1;
> +               i2c1 = &lpi2c2;
> +               i2c2 = &lpi2c3;
> +               i2c3 = &lpi2c4;
> +               i2c4 = &lpi2c5;
> +               i2c5 = &lpi2c6;
> +               i2c6 = &lpi2c7;
> +               i2c7 = &lpi2c8;
> +               mmc0 = &usdhc1;
> +               mmc1 = &usdhc2;
> +               mmc2 = &usdhc3;
> +               serial0 = &lpuart1;
> +               serial1 = &lpuart2;
> +               serial2 = &lpuart3;
> +               serial3 = &lpuart4;
> +               serial4 = &lpuart5;
> +               serial5 = &lpuart6;
> +               serial6 = &lpuart7;
> +               serial7 = &lpuart8;
> +       };

This looks like an excessive aliases list.
Can't you just have serial0, mmc0, and mmc1 instead?

> +       reg_1p8v: regulator-1p8v {
> +               compatible = "regulator-fixed";
> +               regulator-max-microvolt = <1800000>;
> +               regulator-min-microvolt = <1800000>;
> +               regulator-name = "+V1.8_SW";
> +       };
> +
> +       reg_3p3v: regulator-3p3v {
> +               compatible = "regulator-fixed";
> +               regulator-max-microvolt = <3300000>;
> +               regulator-min-microvolt = <3300000>;
> +               regulator-name = "+V3.3_SW";
> +       };
> +
> +       reg_vref_1v8: regulator-adc-vref {
> +               compatible = "regulator-fixed";
> +               regulator-name = "vref_1v8";
> +               regulator-min-microvolt = <1800000>;
> +               regulator-max-microvolt = <1800000>;
> +       };

These regulators are not used anywhere.

Please add them when they have consumers for them.
Peng Fan May 3, 2024, 12:28 p.m. UTC | #2
> Subject: Re: [PATCH v4 3/3] arm64: dts: freescale: add i.MX95 19x19 EVK
> minimal board dts
> 
> Hi Peng,
> 
> On Thu, May 2, 2024 at 10:29 PM Peng Fan (OSS) <peng.fan@oss.nxp.com>
> wrote:
> 
> > +       aliases {
> > +               gpio0 = &gpio1;
> > +               gpio1 = &gpio2;
> > +               gpio2 = &gpio3;
> > +               gpio3 = &gpio4;
> > +               gpio4 = &gpio5;
> > +               i2c0 = &lpi2c1;
> > +               i2c1 = &lpi2c2;
> > +               i2c2 = &lpi2c3;
> > +               i2c3 = &lpi2c4;
> > +               i2c4 = &lpi2c5;
> > +               i2c5 = &lpi2c6;
> > +               i2c6 = &lpi2c7;
> > +               i2c7 = &lpi2c8;
> > +               mmc0 = &usdhc1;
> > +               mmc1 = &usdhc2;
> > +               mmc2 = &usdhc3;
> > +               serial0 = &lpuart1;
> > +               serial1 = &lpuart2;
> > +               serial2 = &lpuart3;
> > +               serial3 = &lpuart4;
> > +               serial4 = &lpuart5;
> > +               serial5 = &lpuart6;
> > +               serial6 = &lpuart7;
> > +               serial7 = &lpuart8;
> > +       };
> 
> This looks like an excessive aliases list.
> Can't you just have serial0, mmc0, and mmc1 instead?

ok, will drop other alias.

> 
> > +       reg_1p8v: regulator-1p8v {
> > +               compatible = "regulator-fixed";
> > +               regulator-max-microvolt = <1800000>;
> > +               regulator-min-microvolt = <1800000>;
> > +               regulator-name = "+V1.8_SW";
> > +       };
> > +
> > +       reg_3p3v: regulator-3p3v {
> > +               compatible = "regulator-fixed";
> > +               regulator-max-microvolt = <3300000>;
> > +               regulator-min-microvolt = <3300000>;
> > +               regulator-name = "+V3.3_SW";
> > +       };
> > +
> > +       reg_vref_1v8: regulator-adc-vref {
> > +               compatible = "regulator-fixed";
> > +               regulator-name = "vref_1v8";
> > +               regulator-min-microvolt = <1800000>;
> > +               regulator-max-microvolt = <1800000>;
> > +       };
> 
> These regulators are not used anywhere.
> 
> Please add them when they have consumers for them.

ok. Will drop the unused ones for now.

Thanks,
Peng.
diff mbox series

Patch

diff --git a/arch/arm64/boot/dts/freescale/Makefile b/arch/arm64/boot/dts/freescale/Makefile
index bd443c2bc5a4..057e23fde780 100644
--- a/arch/arm64/boot/dts/freescale/Makefile
+++ b/arch/arm64/boot/dts/freescale/Makefile
@@ -236,6 +236,7 @@  dtb-$(CONFIG_ARCH_MXC) += imx93-phyboard-segin.dtb
 dtb-$(CONFIG_ARCH_MXC) += imx93-tqma9352-mba93xxca.dtb
 dtb-$(CONFIG_ARCH_MXC) += imx93-tqma9352-mba93xxla.dtb
 dtb-$(CONFIG_ARCH_MXC) += imx93-var-som-symphony.dtb
+dtb-$(CONFIG_ARCH_MXC) += imx95-19x19-evk.dtb
 
 imx8mm-venice-gw72xx-0x-imx219-dtbs	:= imx8mm-venice-gw72xx-0x.dtb imx8mm-venice-gw72xx-0x-imx219.dtbo
 imx8mm-venice-gw72xx-0x-rpidsi-dtbs	:= imx8mm-venice-gw72xx-0x.dtb imx8mm-venice-gw72xx-0x-rpidsi.dtbo
diff --git a/arch/arm64/boot/dts/freescale/imx95-19x19-evk.dts b/arch/arm64/boot/dts/freescale/imx95-19x19-evk.dts
new file mode 100644
index 000000000000..7e7271b0c545
--- /dev/null
+++ b/arch/arm64/boot/dts/freescale/imx95-19x19-evk.dts
@@ -0,0 +1,112 @@ 
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+/*
+ * Copyright 2024 NXP
+ */
+
+/dts-v1/;
+
+#include "imx95.dtsi"
+
+/ {
+	model = "NXP i.MX95 19X19 board";
+	compatible = "fsl,imx95-19x19-evk", "fsl,imx95";
+
+	aliases {
+		gpio0 = &gpio1;
+		gpio1 = &gpio2;
+		gpio2 = &gpio3;
+		gpio3 = &gpio4;
+		gpio4 = &gpio5;
+		i2c0 = &lpi2c1;
+		i2c1 = &lpi2c2;
+		i2c2 = &lpi2c3;
+		i2c3 = &lpi2c4;
+		i2c4 = &lpi2c5;
+		i2c5 = &lpi2c6;
+		i2c6 = &lpi2c7;
+		i2c7 = &lpi2c8;
+		mmc0 = &usdhc1;
+		mmc1 = &usdhc2;
+		mmc2 = &usdhc3;
+		serial0 = &lpuart1;
+		serial1 = &lpuart2;
+		serial2 = &lpuart3;
+		serial3 = &lpuart4;
+		serial4 = &lpuart5;
+		serial5 = &lpuart6;
+		serial6 = &lpuart7;
+		serial7 = &lpuart8;
+	};
+
+	chosen {
+		stdout-path = &lpuart1;
+	};
+
+	memory@80000000 {
+		device_type = "memory";
+		reg = <0x0 0x80000000 0 0x80000000>;
+	};
+
+	reserved-memory {
+		#address-cells = <2>;
+		#size-cells = <2>;
+		ranges;
+
+		linux_cma: linux,cma {
+			compatible = "shared-dma-pool";
+			alloc-ranges = <0 0x80000000 0 0x7F000000>;
+			size = <0 0x3c000000>;
+			linux,cma-default;
+			reusable;
+		};
+	};
+
+	reg_1p8v: regulator-1p8v {
+		compatible = "regulator-fixed";
+		regulator-max-microvolt = <1800000>;
+		regulator-min-microvolt = <1800000>;
+		regulator-name = "+V1.8_SW";
+	};
+
+	reg_3p3v: regulator-3p3v {
+		compatible = "regulator-fixed";
+		regulator-max-microvolt = <3300000>;
+		regulator-min-microvolt = <3300000>;
+		regulator-name = "+V3.3_SW";
+	};
+
+	reg_vref_1v8: regulator-adc-vref {
+		compatible = "regulator-fixed";
+		regulator-name = "vref_1v8";
+		regulator-min-microvolt = <1800000>;
+		regulator-max-microvolt = <1800000>;
+	};
+};
+
+&lpuart1 {
+	/* console */
+	status = "okay";
+};
+
+&mu7 {
+	status = "okay";
+};
+
+&usdhc1 {
+	bus-width = <8>;
+	non-removable;
+	no-sdio;
+	no-sd;
+	status = "okay";
+};
+
+&usdhc2 {
+	non-removable;
+	bus-width = <4>;
+	status = "okay";
+};
+
+&wdog3 {
+	fsl,ext-reset-output;
+	status = "okay";
+};