Linux-ARM-Kernel Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Richard Genoud <richard.genoud@bootlin.com>
To: Miquel Raynal <miquel.raynal@bootlin.com>,
	Richard Weinberger <richard@nod.at>,
	Vignesh Raghavendra <vigneshr@ti.com>,
	Rob Herring <robh@kernel.org>,
	Krzysztof Kozlowski <krzk+dt@kernel.org>,
	Conor Dooley <conor+dt@kernel.org>, Chen-Yu Tsai <wens@csie.org>,
	Jernej Skrabec <jernej.skrabec@gmail.com>,
	Samuel Holland <samuel@sholland.org>
Cc: "Uwe Kleine-König" <u.kleine-koenig@baylibre.com>,
	"Wentao Liang" <vulab@iscas.ac.cn>,
	"Johan Hovold" <johan@kernel.org>,
	"Maxime Ripard" <mripard@kernel.org>,
	"Thomas Petazzoni" <thomas.petazzoni@bootlin.com>,
	linux-mtd@lists.infradead.org, devicetree@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org,
	linux-sunxi@lists.linux.dev, linux-kernel@vger.kernel.org,
	"Richard Genoud" <richard.genoud@bootlin.com>
Subject: [PATCH v2 14/15] dt-bindings: mtd: sunxi: Add H616 compatible
Date: Mon, 13 Oct 2025 17:26:44 +0200	[thread overview]
Message-ID: <20251013152645.1119308-15-richard.genoud@bootlin.com> (raw)
In-Reply-To: <20251013152645.1119308-1-richard.genoud@bootlin.com>

The H616 NAND controller is quite different from the A10 and A23 ones,
some registers offset changed, and some new one are introduced.
Also, the DMA handling is different (it uses chained descriptors)

So, introduce a new compatible to represent this version of the IP.

Signed-off-by: Richard Genoud <richard.genoud@bootlin.com>
---
 .../mtd/allwinner,sun4i-a10-nand.yaml         | 57 ++++++++++++++++---
 1 file changed, 48 insertions(+), 9 deletions(-)

diff --git a/Documentation/devicetree/bindings/mtd/allwinner,sun4i-a10-nand.yaml b/Documentation/devicetree/bindings/mtd/allwinner,sun4i-a10-nand.yaml
index 054b6b8bf9b9..4b82de9fae17 100644
--- a/Documentation/devicetree/bindings/mtd/allwinner,sun4i-a10-nand.yaml
+++ b/Documentation/devicetree/bindings/mtd/allwinner,sun4i-a10-nand.yaml
@@ -6,9 +6,6 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
 
 title: Allwinner A10 NAND Controller
 
-allOf:
-  - $ref: nand-controller.yaml
-
 maintainers:
   - Chen-Yu Tsai <wens@csie.org>
   - Maxime Ripard <mripard@kernel.org>
@@ -18,6 +15,8 @@ properties:
     enum:
       - allwinner,sun4i-a10-nand
       - allwinner,sun8i-a23-nand-controller
+      - allwinner,sun50i-h616-nand-controller
+
   reg:
     maxItems: 1
 
@@ -25,14 +24,12 @@ properties:
     maxItems: 1
 
   clocks:
-    items:
-      - description: Bus Clock
-      - description: Module Clock
+    minItems: 2
+    maxItems: 4
 
   clock-names:
-    items:
-      - const: ahb
-      - const: mod
+    minItems: 2
+    maxItems: 4
 
   resets:
     maxItems: 1
@@ -85,6 +82,48 @@ required:
 
 unevaluatedProperties: false
 
+allOf:
+  - $ref: nand-controller.yaml
+
+  - if:
+      properties:
+        compatible:
+          contains:
+            enum:
+              - allwinner,sun4i-a10-nand
+              - allwinner,sun8i-a23-nand-controller
+    then:
+      properties:
+        clocks:
+          items:
+            - description: Bus Clock
+            - description: Module Clock
+        clock-names:
+          items:
+            - const: ahb
+            - const: mod
+
+  - if:
+      properties:
+        compatible:
+          contains:
+            enum:
+              - allwinner,sun50i-h616-nand-controller
+    then:
+      properties:
+        clocks:
+          items:
+            - description: Bus Clock
+            - description: Module Clock
+            - description: ECC Clock
+            - description: MBus Clock
+        clock-names:
+          items:
+            - const: ahb
+            - const: mod
+            - const: ecc
+            - const: mbus
+
 examples:
   - |
     #include <dt-bindings/interrupt-controller/arm-gic.h>


  parent reply	other threads:[~2025-10-13 15:28 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-10-13 15:26 [PATCH v2 00/15] Introduce Allwinner H6/H616 NAND controller support Richard Genoud
2025-10-13 15:26 ` [PATCH v2 01/15] mtd: rawnand: sunxi: Remove superfluous register readings Richard Genoud
2025-10-13 15:26 ` [PATCH v2 02/15] mtd: rawnand: sunxi: move ECC strenghts in sunxi_nfc_caps Richard Genoud
2025-10-13 15:54   ` Chen-Yu Tsai
2025-10-13 15:26 ` [PATCH v2 03/15] mtd: rawnand: sunxi: introduce reg_ecc_err_cnt " Richard Genoud
2025-10-13 15:26 ` [PATCH v2 04/15] mtd: rawnand: sunxi: introduce reg_user_data " Richard Genoud
2025-10-13 15:26 ` [PATCH v2 05/15] mtd: rawnand: sunxi: rework pattern found registers Richard Genoud
2025-10-13 15:26 ` [PATCH v2 06/15] mtd: rawnand: sunxi: add has_ecc_block_512 capability Richard Genoud
2025-10-13 15:26 ` [PATCH v2 07/15] mtd: rawnand: sunxi: introduce ecc_mode_mask in sunxi_nfc_caps Richard Genoud
2025-10-13 15:26 ` [PATCH v2 08/15] mtd: rawnand: sunxi: introduce random en/dir " Richard Genoud
2025-10-13 15:26 ` [PATCH v2 09/15] mtd: rawnand: sunxi: introduce reg_pat_id " Richard Genoud
2025-10-13 15:26 ` [PATCH v2 10/15] mtd: rawnand: sunxi: introduce reg_spare_area " Richard Genoud
2025-10-13 15:26 ` [PATCH v2 11/15] mtd: rawnand: sunxi: introduce ecc_err_mask " Richard Genoud
2025-10-13 15:26 ` [PATCH v2 12/15] mtd: rawnand: sunxi: introduce sram_size " Richard Genoud
2025-10-13 15:26 ` [PATCH v2 13/15] mtd: rawnand: sunxi: Add support for H616 nand controller Richard Genoud
2025-10-13 15:26 ` Richard Genoud [this message]
2025-10-13 19:44   ` [PATCH v2 14/15] dt-bindings: mtd: sunxi: Add H616 compatible Conor Dooley
2025-10-14  7:13     ` Richard GENOUD
2025-10-13 15:26 ` [PATCH v2 15/15] arm64: dts: allwinner: h616: add NAND controller Richard Genoud
2025-10-13 15:43   ` Jernej Škrabec
2025-10-13 15:59     ` Richard GENOUD

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20251013152645.1119308-15-richard.genoud@bootlin.com \
    --to=richard.genoud@bootlin.com \
    --cc=conor+dt@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=jernej.skrabec@gmail.com \
    --cc=johan@kernel.org \
    --cc=krzk+dt@kernel.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mtd@lists.infradead.org \
    --cc=linux-sunxi@lists.linux.dev \
    --cc=miquel.raynal@bootlin.com \
    --cc=mripard@kernel.org \
    --cc=richard@nod.at \
    --cc=robh@kernel.org \
    --cc=samuel@sholland.org \
    --cc=thomas.petazzoni@bootlin.com \
    --cc=u.kleine-koenig@baylibre.com \
    --cc=vigneshr@ti.com \
    --cc=vulab@iscas.ac.cn \
    --cc=wens@csie.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox