* [PATCH 1/3] dt-bindings: mtd: mxc-nand: add i.MX25 and i.MX27 nand support
2026-02-11 21:19 [PATCH 0/3] ARM: dts: imx: clean up imx2* NAND CHECK_DTBS warnings Frank Li
@ 2026-02-11 21:19 ` Frank Li
2026-02-12 11:47 ` Krzysztof Kozlowski
2026-02-11 21:19 ` [PATCH 2/3] RM: dts: imx: set #size-cells to 0 to align with nand-controller.yaml Frank Li
2026-02-11 21:19 ` [PATCH 3/3] ARM: dts: imx: move NAND properties under nand@0 node Frank Li
2 siblings, 1 reply; 8+ messages in thread
From: Frank Li @ 2026-02-11 21:19 UTC (permalink / raw)
To: Miquel Raynal, Richard Weinberger, Vignesh Raghavendra,
Rob Herring, Krzysztof Kozlowski, Conor Dooley, Sascha Hauer,
Pengutronix Kernel Team, Fabio Estevam, Uwe Kleine-König
Cc: linux-mtd, devicetree, imx, linux-arm-kernel, linux-kernel,
Frank Li
Add compatible string fsl,imx25-nand and fsl,imx27-nand (over 15 years
chips). Add one optional clocks for it.
Signed-off-by: Frank Li <Frank.Li@nxp.com>
---
Documentation/devicetree/bindings/mtd/mxc-nand.yaml | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/Documentation/devicetree/bindings/mtd/mxc-nand.yaml b/Documentation/devicetree/bindings/mtd/mxc-nand.yaml
index bd8f7b6839535fe900ebf8477c79bd28c15726e3..433ae5727ad85b0fcb9617b5096fa57dcecb1683 100644
--- a/Documentation/devicetree/bindings/mtd/mxc-nand.yaml
+++ b/Documentation/devicetree/bindings/mtd/mxc-nand.yaml
@@ -15,7 +15,9 @@ allOf:
properties:
compatible:
oneOf:
- - const: fsl,imx27-nand
+ - enum:
+ - fsl,imx25-nand
+ - fsl,imx27-nand
- items:
- enum:
- fsl,imx31-nand
@@ -26,6 +28,9 @@ properties:
interrupts:
maxItems: 1
+ clocks:
+ maxItems: 1
+
required:
- compatible
- reg
--
2.43.0
^ permalink raw reply related [flat|nested] 8+ messages in thread* Re: [PATCH 1/3] dt-bindings: mtd: mxc-nand: add i.MX25 and i.MX27 nand support
2026-02-11 21:19 ` [PATCH 1/3] dt-bindings: mtd: mxc-nand: add i.MX25 and i.MX27 nand support Frank Li
@ 2026-02-12 11:47 ` Krzysztof Kozlowski
0 siblings, 0 replies; 8+ messages in thread
From: Krzysztof Kozlowski @ 2026-02-12 11:47 UTC (permalink / raw)
To: Frank Li
Cc: Miquel Raynal, Richard Weinberger, Vignesh Raghavendra,
Rob Herring, Krzysztof Kozlowski, Conor Dooley, Sascha Hauer,
Pengutronix Kernel Team, Fabio Estevam, Uwe Kleine-König,
linux-mtd, devicetree, imx, linux-arm-kernel, linux-kernel
On Wed, Feb 11, 2026 at 04:19:39PM -0500, Frank Li wrote:
> Add compatible string fsl,imx25-nand and fsl,imx27-nand (over 15 years
> chips). Add one optional clocks for it.
... because IMX25 upstream DTS defines them? Or according to manual the
hardware has clocks but they were missing?
Please extend the rationale. Assuming you will find one:
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH 2/3] RM: dts: imx: set #size-cells to 0 to align with nand-controller.yaml
2026-02-11 21:19 [PATCH 0/3] ARM: dts: imx: clean up imx2* NAND CHECK_DTBS warnings Frank Li
2026-02-11 21:19 ` [PATCH 1/3] dt-bindings: mtd: mxc-nand: add i.MX25 and i.MX27 nand support Frank Li
@ 2026-02-11 21:19 ` Frank Li
2026-02-12 8:56 ` Miquel Raynal
2026-02-13 7:27 ` Uwe Kleine-König
2026-02-11 21:19 ` [PATCH 3/3] ARM: dts: imx: move NAND properties under nand@0 node Frank Li
2 siblings, 2 replies; 8+ messages in thread
From: Frank Li @ 2026-02-11 21:19 UTC (permalink / raw)
To: Miquel Raynal, Richard Weinberger, Vignesh Raghavendra,
Rob Herring, Krzysztof Kozlowski, Conor Dooley, Sascha Hauer,
Pengutronix Kernel Team, Fabio Estevam, Uwe Kleine-König
Cc: linux-mtd, devicetree, imx, linux-arm-kernel, linux-kernel,
Frank Li
Set #size-cells to 0 to align with nand-controller.yaml. Remove the
redundant empty clock-names property from the NFC node.
Fix below CHECK_DTBS warning:
arch/arm/boot/dts/nxp/imx/imx25-karo-tx25.dtb: nand-controller@bb000000 (fsl,imx25-nand): #size-cells: 0 was expected
from schema $id: http://devicetree.org/schemas/mtd/nand-controller.yam
Signed-off-by: Frank Li <Frank.Li@nxp.com>
---
arch/arm/boot/dts/nxp/imx/imx25.dtsi | 3 +--
arch/arm/boot/dts/nxp/imx/imx27.dtsi | 2 +-
2 files changed, 2 insertions(+), 3 deletions(-)
diff --git a/arch/arm/boot/dts/nxp/imx/imx25.dtsi b/arch/arm/boot/dts/nxp/imx/imx25.dtsi
index 54a116533c45883d9a2f7823a2e48b2f82a17b1e..d0f01f9b76afcfa0f38398ec29697b6d590a613a 100644
--- a/arch/arm/boot/dts/nxp/imx/imx25.dtsi
+++ b/arch/arm/boot/dts/nxp/imx/imx25.dtsi
@@ -613,12 +613,11 @@ bus@80000000 {
nfc: nand-controller@bb000000 {
#address-cells = <1>;
- #size-cells = <1>;
+ #size-cells = <0>;
compatible = "fsl,imx25-nand";
reg = <0xbb000000 0x2000>;
clocks = <&clks 50>;
- clock-names = "";
interrupts = <33>;
status = "disabled";
};
diff --git a/arch/arm/boot/dts/nxp/imx/imx27.dtsi b/arch/arm/boot/dts/nxp/imx/imx27.dtsi
index 3a8ca1c3f179361870d95136b1141c147132c840..99a8f2b1f7d319fd8d25ff696d53622f8badf0c7 100644
--- a/arch/arm/boot/dts/nxp/imx/imx27.dtsi
+++ b/arch/arm/boot/dts/nxp/imx/imx27.dtsi
@@ -560,7 +560,7 @@ fec: ethernet@1002b000 {
nfc: nand-controller@d8000000 {
#address-cells = <1>;
- #size-cells = <1>;
+ #size-cells = <0>;
compatible = "fsl,imx27-nand";
reg = <0xd8000000 0x1000>;
interrupts = <29>;
--
2.43.0
^ permalink raw reply related [flat|nested] 8+ messages in thread* Re: [PATCH 2/3] RM: dts: imx: set #size-cells to 0 to align with nand-controller.yaml
2026-02-11 21:19 ` [PATCH 2/3] RM: dts: imx: set #size-cells to 0 to align with nand-controller.yaml Frank Li
@ 2026-02-12 8:56 ` Miquel Raynal
2026-02-13 7:27 ` Uwe Kleine-König
1 sibling, 0 replies; 8+ messages in thread
From: Miquel Raynal @ 2026-02-12 8:56 UTC (permalink / raw)
To: Frank Li
Cc: Richard Weinberger, Vignesh Raghavendra, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Sascha Hauer,
Pengutronix Kernel Team, Fabio Estevam, Uwe Kleine-König,
linux-mtd, devicetree, imx, linux-arm-kernel, linux-kernel
On 11/02/2026 at 16:19:40 -05, Frank Li <Frank.Li@nxp.com> wrote:
> Set #size-cells to 0 to align with nand-controller.yaml. Remove the
> redundant empty clock-names property from the NFC node.
>
> Fix below CHECK_DTBS warning:
> arch/arm/boot/dts/nxp/imx/imx25-karo-tx25.dtb: nand-controller@bb000000 (fsl,imx25-nand): #size-cells: 0 was expected
> from schema $id: http://devicetree.org/schemas/mtd/nand-controller.yam
>
> Signed-off-by: Frank Li <Frank.Li@nxp.com>
> ---
Besides the prefix which misses an "A",
Reviewed-by: Miquel Raynal <miquel.raynal@bootlin.com>
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH 2/3] RM: dts: imx: set #size-cells to 0 to align with nand-controller.yaml
2026-02-11 21:19 ` [PATCH 2/3] RM: dts: imx: set #size-cells to 0 to align with nand-controller.yaml Frank Li
2026-02-12 8:56 ` Miquel Raynal
@ 2026-02-13 7:27 ` Uwe Kleine-König
1 sibling, 0 replies; 8+ messages in thread
From: Uwe Kleine-König @ 2026-02-13 7:27 UTC (permalink / raw)
To: Frank Li
Cc: Miquel Raynal, Richard Weinberger, Vignesh Raghavendra,
Rob Herring, Krzysztof Kozlowski, Conor Dooley, Sascha Hauer,
Pengutronix Kernel Team, Fabio Estevam, linux-mtd, devicetree,
imx, linux-arm-kernel, linux-kernel
[-- Attachment #1: Type: text/plain, Size: 616 bytes --]
On Wed, Feb 11, 2026 at 04:19:40PM -0500, Frank Li wrote:
> Set #size-cells to 0 to align with nand-controller.yaml. Remove the
> redundant empty clock-names property from the NFC node.
>
> Fix below CHECK_DTBS warning:
> arch/arm/boot/dts/nxp/imx/imx25-karo-tx25.dtb: nand-controller@bb000000 (fsl,imx25-nand): #size-cells: 0 was expected
> from schema $id: http://devicetree.org/schemas/mtd/nand-controller.yam
^
Missing 'l' I guess ------------------------------------------------------------'
Best regards
Uwe
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH 3/3] ARM: dts: imx: move NAND properties under nand@0 node
2026-02-11 21:19 [PATCH 0/3] ARM: dts: imx: clean up imx2* NAND CHECK_DTBS warnings Frank Li
2026-02-11 21:19 ` [PATCH 1/3] dt-bindings: mtd: mxc-nand: add i.MX25 and i.MX27 nand support Frank Li
2026-02-11 21:19 ` [PATCH 2/3] RM: dts: imx: set #size-cells to 0 to align with nand-controller.yaml Frank Li
@ 2026-02-11 21:19 ` Frank Li
2026-02-12 8:55 ` Miquel Raynal
2 siblings, 1 reply; 8+ messages in thread
From: Frank Li @ 2026-02-11 21:19 UTC (permalink / raw)
To: Miquel Raynal, Richard Weinberger, Vignesh Raghavendra,
Rob Herring, Krzysztof Kozlowski, Conor Dooley, Sascha Hauer,
Pengutronix Kernel Team, Fabio Estevam, Uwe Kleine-König
Cc: linux-mtd, devicetree, imx, linux-arm-kernel, linux-kernel,
Frank Li
Move NAND flash properties under the nand@0 node and place partition
properties under the partitions node.
Fix below CHECK_DTBS warnings:
arch/arm/boot/dts/nxp/imx/imx27-apf27.dtb: nand-controller@d8000000 (fsl,imx27-nand): Unevaluated properties are not allowed ('#address-cells', '#size-cells', 'clocks', 'nand-bus-width', 'nand-ecc-mode', 'nand-on-flash-bbt', 'partition@0', 'partition@100000', 'partition@180000', 'partition@200000', 'partition@280000', 'partition@300000', 'partition@800000' were unexpected)
from schema $id: http://devicetree.org/schemas/mtd/mxc-nand.yaml
Signed-off-by: Frank Li <Frank.Li@nxp.com>
---
.../boot/dts/nxp/imx/imx25-eukrea-cpuimx25.dtsi | 10 ++-
arch/arm/boot/dts/nxp/imx/imx25-karo-tx25.dts | 10 ++-
arch/arm/boot/dts/nxp/imx/imx25-pdk.dts | 6 +-
arch/arm/boot/dts/nxp/imx/imx27-apf27.dts | 82 ++++++++++++----------
.../boot/dts/nxp/imx/imx27-eukrea-cpuimx27.dtsi | 10 ++-
arch/arm/boot/dts/nxp/imx/imx27-pdk.dts | 8 ++-
.../dts/nxp/imx/imx27-phytec-phycard-s-som.dtsi | 10 ++-
.../boot/dts/nxp/imx/imx27-phytec-phycore-som.dtsi | 10 ++-
8 files changed, 92 insertions(+), 54 deletions(-)
diff --git a/arch/arm/boot/dts/nxp/imx/imx25-eukrea-cpuimx25.dtsi b/arch/arm/boot/dts/nxp/imx/imx25-eukrea-cpuimx25.dtsi
index 31dc2a6403628db1527a1707460afbf9de893abd..29a7f99842e3a70c5dc7ce70c547afce2ed73f9f 100644
--- a/arch/arm/boot/dts/nxp/imx/imx25-eukrea-cpuimx25.dtsi
+++ b/arch/arm/boot/dts/nxp/imx/imx25-eukrea-cpuimx25.dtsi
@@ -57,8 +57,12 @@ MX25_PAD_I2C1_DAT__I2C1_DAT 0x80000000
};
&nfc {
- nand-bus-width = <8>;
- nand-ecc-mode = "hw";
- nand-on-flash-bbt;
status = "okay";
+
+ nand@0 {
+ reg = <0>;
+ nand-bus-width = <8>;
+ nand-ecc-mode = "hw";
+ nand-on-flash-bbt;
+ };
};
diff --git a/arch/arm/boot/dts/nxp/imx/imx25-karo-tx25.dts b/arch/arm/boot/dts/nxp/imx/imx25-karo-tx25.dts
index 458b94d3d4ed4c97adc5b9f2597698f22edb9350..7fd8656f529b1a9f3a4cacc68fe63ad0f23571dc 100644
--- a/arch/arm/boot/dts/nxp/imx/imx25-karo-tx25.dts
+++ b/arch/arm/boot/dts/nxp/imx/imx25-karo-tx25.dts
@@ -94,8 +94,12 @@ &fec {
&nfc {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_nfc>;
- nand-on-flash-bbt;
- nand-ecc-mode = "hw";
- nand-bus-width = <8>;
status = "okay";
+
+ nand@0 {
+ reg = <0>;
+ nand-on-flash-bbt;
+ nand-ecc-mode = "hw";
+ nand-bus-width = <8>;
+ };
};
diff --git a/arch/arm/boot/dts/nxp/imx/imx25-pdk.dts b/arch/arm/boot/dts/nxp/imx/imx25-pdk.dts
index a35778ba6ffa0474d67f77005dfa4299b27d947c..04183ee7ff6851fc26874a640002bf702fe7aa07 100644
--- a/arch/arm/boot/dts/nxp/imx/imx25-pdk.dts
+++ b/arch/arm/boot/dts/nxp/imx/imx25-pdk.dts
@@ -245,8 +245,12 @@ &lcdc {
};
&nfc {
- nand-on-flash-bbt;
status = "okay";
+
+ nand@0 {
+ reg = <0>;
+ nand-on-flash-bbt;
+ };
};
&kpp {
diff --git a/arch/arm/boot/dts/nxp/imx/imx27-apf27.dts b/arch/arm/boot/dts/nxp/imx/imx27-apf27.dts
index b67bb21af3dedf1124ccdff6a1ac3ef703a6e22d..a61b0afa958ad304338192d8b8eb76a5c2004e3a 100644
--- a/arch/arm/boot/dts/nxp/imx/imx27-apf27.dts
+++ b/arch/arm/boot/dts/nxp/imx/imx27-apf27.dts
@@ -69,42 +69,52 @@ &fec {
&nfc {
status = "okay";
- nand-bus-width = <16>;
- nand-ecc-mode = "hw";
- nand-on-flash-bbt;
- partition@0 {
- label = "u-boot";
- reg = <0x0 0x100000>;
- };
-
- partition@100000 {
- label = "env";
- reg = <0x100000 0x80000>;
- };
-
- partition@180000 {
- label = "env2";
- reg = <0x180000 0x80000>;
- };
-
- partition@200000 {
- label = "firmware";
- reg = <0x200000 0x80000>;
- };
-
- partition@280000 {
- label = "dtb";
- reg = <0x280000 0x80000>;
- };
-
- partition@300000 {
- label = "kernel";
- reg = <0x300000 0x500000>;
- };
-
- partition@800000 {
- label = "rootfs";
- reg = <0x800000 0xf800000>;
+ nand@0 {
+ reg = <0>;
+ nand-bus-width = <16>;
+ nand-ecc-mode = "hw";
+ nand-on-flash-bbt;
+
+ partitions {
+ compatible = "fixed-partitions";
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x0 0x100000>;
+ };
+
+ partition@100000 {
+ label = "env";
+ reg = <0x100000 0x80000>;
+ };
+
+ partition@180000 {
+ label = "env2";
+ reg = <0x180000 0x80000>;
+ };
+
+ partition@200000 {
+ label = "firmware";
+ reg = <0x200000 0x80000>;
+ };
+
+ partition@280000 {
+ label = "dtb";
+ reg = <0x280000 0x80000>;
+ };
+
+ partition@300000 {
+ label = "kernel";
+ reg = <0x300000 0x500000>;
+ };
+
+ partition@800000 {
+ label = "rootfs";
+ reg = <0x800000 0xf800000>;
+ };
+ };
};
};
diff --git a/arch/arm/boot/dts/nxp/imx/imx27-eukrea-cpuimx27.dtsi b/arch/arm/boot/dts/nxp/imx/imx27-eukrea-cpuimx27.dtsi
index 3df70ed6056c4d122c83f9d6dd1ec1af3c64ff0b..bc28250df7a7fb729c2ef76b1f4b3c1199e7f1ba 100644
--- a/arch/arm/boot/dts/nxp/imx/imx27-eukrea-cpuimx27.dtsi
+++ b/arch/arm/boot/dts/nxp/imx/imx27-eukrea-cpuimx27.dtsi
@@ -42,10 +42,14 @@ rtc@51 {
&nfc {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_nfc>;
- nand-bus-width = <8>;
- nand-ecc-mode = "hw";
- nand-on-flash-bbt;
status = "okay";
+
+ nand@0 {
+ reg = <0>;
+ nand-bus-width = <8>;
+ nand-ecc-mode = "hw";
+ nand-on-flash-bbt;
+ };
};
&owire {
diff --git a/arch/arm/boot/dts/nxp/imx/imx27-pdk.dts b/arch/arm/boot/dts/nxp/imx/imx27-pdk.dts
index 2fc4ea5b9501f4765624b42f8badf013fbcdad6f..a1e3b387ba8ee290746fb094903989366a9968fb 100644
--- a/arch/arm/boot/dts/nxp/imx/imx27-pdk.dts
+++ b/arch/arm/boot/dts/nxp/imx/imx27-pdk.dts
@@ -88,9 +88,13 @@ MATRIX_KEY(2, 3, KEY_F10)
&nfc {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_nand>;
- nand-ecc-mode = "hw";
- nand-on-flash-bbt;
status = "okay";
+
+ nand@0 {
+ reg = <0>;
+ nand-ecc-mode = "hw";
+ nand-on-flash-bbt;
+ };
};
&uart1 {
diff --git a/arch/arm/boot/dts/nxp/imx/imx27-phytec-phycard-s-som.dtsi b/arch/arm/boot/dts/nxp/imx/imx27-phytec-phycard-s-som.dtsi
index 2f60b3809f39b2f2c92cdb6a61664103380e3478..ba6cf03b60057af41f291a2c760efeeecf064301 100644
--- a/arch/arm/boot/dts/nxp/imx/imx27-phytec-phycard-s-som.dtsi
+++ b/arch/arm/boot/dts/nxp/imx/imx27-phytec-phycard-s-som.dtsi
@@ -150,10 +150,14 @@ MX27_PAD_USBH2_DATA7__USBH2_DATA7 0x0
&nfc {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_nfc>;
- nand-bus-width = <8>;
- nand-ecc-mode = "hw";
- nand-on-flash-bbt;
status = "okay";
+
+ nand@0 {
+ reg = <0>;
+ nand-bus-width = <8>;
+ nand-ecc-mode = "hw";
+ nand-on-flash-bbt;
+ };
};
&usbotg {
diff --git a/arch/arm/boot/dts/nxp/imx/imx27-phytec-phycore-som.dtsi b/arch/arm/boot/dts/nxp/imx/imx27-phytec-phycore-som.dtsi
index 7d5d24c781b9834dbf8834c798b923829fd98444..cfa833cf0c114d987821ec563c7af5053b153a62 100644
--- a/arch/arm/boot/dts/nxp/imx/imx27-phytec-phycore-som.dtsi
+++ b/arch/arm/boot/dts/nxp/imx/imx27-phytec-phycore-som.dtsi
@@ -280,10 +280,14 @@ MX27_PAD_USBOTG_DATA7__USBOTG_DATA7 0x0
&nfc {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_nfc>;
- nand-bus-width = <8>;
- nand-ecc-mode = "hw";
- nand-on-flash-bbt;
status = "okay";
+
+ nand@0 {
+ reg = <0>;
+ nand-bus-width = <8>;
+ nand-ecc-mode = "hw";
+ nand-on-flash-bbt;
+ };
};
&ssi1 {
--
2.43.0
^ permalink raw reply related [flat|nested] 8+ messages in thread* Re: [PATCH 3/3] ARM: dts: imx: move NAND properties under nand@0 node
2026-02-11 21:19 ` [PATCH 3/3] ARM: dts: imx: move NAND properties under nand@0 node Frank Li
@ 2026-02-12 8:55 ` Miquel Raynal
0 siblings, 0 replies; 8+ messages in thread
From: Miquel Raynal @ 2026-02-12 8:55 UTC (permalink / raw)
To: Frank Li
Cc: Richard Weinberger, Vignesh Raghavendra, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Sascha Hauer,
Pengutronix Kernel Team, Fabio Estevam, Uwe Kleine-König,
linux-mtd, devicetree, imx, linux-arm-kernel, linux-kernel
On 11/02/2026 at 16:19:41 -05, Frank Li <Frank.Li@nxp.com> wrote:
> Move NAND flash properties under the nand@0 node and place partition
> properties under the partitions node.
>
> Fix below CHECK_DTBS warnings:
> arch/arm/boot/dts/nxp/imx/imx27-apf27.dtb: nand-controller@d8000000 (fsl,imx27-nand): Unevaluated properties are not allowed ('#address-cells', '#size-cells', 'clocks', 'nand-bus-width', 'nand-ecc-mode', 'nand-on-flash-bbt', 'partition@0', 'partition@100000', 'partition@180000', 'partition@200000', 'partition@280000', 'partition@300000', 'partition@800000' were unexpected)
> from schema $id: http://devicetree.org/schemas/mtd/mxc-nand.yaml
>
> Signed-off-by: Frank Li <Frank.Li@nxp.com>
Reviewed-by: Miquel Raynal <miquel.raynal@bootlin.com>
^ permalink raw reply [flat|nested] 8+ messages in thread