From: Miquel Raynal <miquel.raynal@bootlin.com>
To: Nikita Shubin <nikita.shubin@maquefel.me>
Cc: Arnd Bergmann <arnd@kernel.org>,
	Linus Walleij <linusw@kernel.org>,
	Alexander Sverdlin <alexander.sverdlin@gmail.com>,
	Richard Weinberger <richard@nod.at>,
	Vignesh Raghavendra <vigneshr@ti.com>,
	Rob Herring <robh+dt@kernel.org>,
	Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
	Lukasz Majewski <lukma@denx.de>,
	linux-mtd@lists.infradead.org, devicetree@vger.kernel.org,
	linux-kernel@vger.kernel.org
Subject: Re: [PATCH 22/43] dt-bindings: mtd: add DT bindings for ts7250 nand
Date: Tue, 2 May 2023 11:48:58 +0200	[thread overview]
Message-ID: <20230502114858.7152572a@xps-13> (raw)
In-Reply-To: <20230424123522.18302-23-nikita.shubin@maquefel.me>
Hi Nikita,
nikita.shubin@maquefel.me wrote on Mon, 24 Apr 2023 15:34:38 +0300:
> Add YAML bindings for ts7250 NAND.
> 
> Signed-off-by: Nikita Shubin <nikita.shubin@maquefel.me>
> ---
>  .../bindings/mtd/technologic,nand.yaml        | 56 +++++++++++++++++++
>  1 file changed, 56 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/mtd/technologic,nand.yaml
> 
> diff --git a/Documentation/devicetree/bindings/mtd/technologic,nand.yaml b/Documentation/devicetree/bindings/mtd/technologic,nand.yaml
> new file mode 100644
> index 000000000000..3234d93a1c21
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/mtd/technologic,nand.yaml
> @@ -0,0 +1,56 @@
> +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/mtd/technologic,nand.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Technologic Systems NAND controller
> +
> +maintainers:
> +  - Lukasz Majewski <lukma@denx.de>
> +
> +properties:
> +  compatible:
> +    items:
> +      - const: technologic,ts7200-nand
would -nand-controller instead of -nand work as a suffix here?
You mention ts7250 in the title, should we have a more specific
compatible than ts7200 as well?
I see by looking at the mtd patch that you actually try to match both,
so they should both be defined in the bindings.
> +      - const: gen_nand
This is a old hack for very simple controllers (converted to DT probing
12 years ago). The logic used by this driver has been deprecated for
like 10 years and does not really apply to modern APIs. I would really
like to keep this driver contained with platform data coming from arch/
data only.
I suggest you create a real NAND controller driver based on the
generic one (should not be very complex, just duplicate the code so the
migration to the up-to-date API is eased) and you flag it as "must be
updated to ->exec_op() somehow. This way if someone starts the
conversion, it does not need to cope with the 5 other users of the
generic driver which anyway share nothing in common besides the
deprecated ->cmd_ctrl() backbone.
I read the comments on the cover letter, people are kind of pushing on
having this merged quickly. I am fine accepting a legacy controller
driver and migrating it to ->exec_op() later, but the current driver
conversion does not fit the approach taken years ago towards a cleaner
mtd tree.
> +
> +  reg:
> +    maxItems: 1
> +
> +  '#address-cells': true
> +  '#size-cells': true
> +
> +required:
> +  - compatible
> +  - reg
> +
> +unevaluatedProperties: true
> +
> +examples:
> +  - |
> +    nand-parts@0 {
> +      compatible = "technologic,ts7200-nand", "gen_nand";
> +      reg = <0x60000000 0x8000000>;
> +      #address-cells = <1>;
> +      #size-cells = <1>;
> +
> +      partition@0 {
> +        label = "TS-BOOTROM";
> +        reg = <0x00000000 0x00020000>;
> +        read-only;
> +      };
Partitions are not useful here, but if you want them, use the
partitions container instead, please.
> +
> +      partition@20000 {
> +        label = "Linux";
> +        reg = <0x00020000 0x07d00000>;
> +      };
> +
> +      partition@7d20000 {
> +        label = "RedBoot";
> +        reg = <0x07d20000 0x002e0000>;
> +        read-only;
> +      };
> +    };
> +
> +...
Thanks,
Miquèl
next prev parent reply	other threads:[~2023-05-02  9:49 UTC|newest]
Thread overview: 118+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-04-24 12:34 [PATCH 00/43] ep93xx device tree conversion Nikita Shubin
2023-04-24 11:31 ` Arnd Bergmann
     [not found]   ` <20230424152933.48b2ede1@kernel.org>
2023-04-25  9:20     ` Krzysztof Kozlowski
2023-04-25 13:27       ` Arnd Bergmann
2023-04-24 12:34 ` [PATCH 03/43] dt-bindings: pinctrl: Add DT bindings ep93xx pinctrl Nikita Shubin
2023-04-24 13:28   ` Rob Herring
2023-04-25  9:24   ` Krzysztof Kozlowski
2023-04-24 12:34 ` [PATCH 05/43] dt-bindings: timers: add DT bindings for Cirrus EP93xx Nikita Shubin
2023-04-25  9:26   ` Krzysztof Kozlowski
2023-04-25  9:29   ` Krzysztof Kozlowski
2023-04-28 14:34     ` Nikita Shubin
2023-04-28 12:18       ` Krzysztof Kozlowski
2023-04-24 12:34 ` [PATCH 07/43] dt-bindings: rtc: " Nikita Shubin
2023-04-24 10:08   ` Alexandre Belloni
2023-04-25  9:28   ` Krzysztof Kozlowski
2023-04-28 14:35     ` Nikita Shubin
2023-04-28 12:21       ` Krzysztof Kozlowski
2023-04-24 12:34 ` [PATCH 09/43] dt-bindings: watchdog: add DT bindings for Cirrus EP93x Nikita Shubin
2023-04-24 14:16   ` Guenter Roeck
2023-04-24 14:18     ` Guenter Roeck
2023-04-24 15:59       ` Rob Herring
2023-04-25  9:31   ` Krzysztof Kozlowski
2023-04-28 14:33     ` Nikita Shubin
2023-04-28 12:20       ` Krzysztof Kozlowski
2023-04-28 17:42         ` Nikita Shubin
2023-04-30 11:30           ` Krzysztof Kozlowski
2023-04-24 12:34 ` [PATCH 11/43] dt-bindings: clock: add DT bindings for Cirrus EP93xx Nikita Shubin
2023-04-24 13:28   ` Rob Herring
2023-04-28 23:15   ` Stephen Boyd
2023-04-24 12:34 ` [PATCH 14/43] dt-bindings: pwm: Add DT bindings ep93xx PWM Nikita Shubin
2023-04-24 16:02   ` Rob Herring
2023-04-24 12:34 ` [PATCH 16/43] dt-bindings: spi: Add DT bindings ep93xx spi Nikita Shubin
2023-04-24 15:54   ` Mark Brown
2023-04-24 16:08   ` Rob Herring
2023-04-24 12:34 ` [PATCH 18/43] dt-bindings: net: Add DT bindings ep93xx eth Nikita Shubin
2023-04-24 16:11   ` Rob Herring
     [not found]   ` <7f05ecdc-cbbd-40b0-9a40-229e18aec721@lunn.ch>
2023-05-15 13:42     ` Nikita Shubin
2023-04-24 12:34 ` [PATCH 20/43] dt-bindings: dma: Add DT bindings ep93xx dma Nikita Shubin
2023-04-24 16:15   ` Rob Herring
2023-04-24 12:34 ` [PATCH 22/43] dt-bindings: mtd: add DT bindings for ts7250 nand Nikita Shubin
2023-04-24 16:17   ` Rob Herring
2023-05-02  9:48   ` Miquel Raynal [this message]
2023-05-15 15:48     ` Nikita Shubin
2023-05-22 14:18       ` Miquel Raynal
2023-04-24 12:34 ` [PATCH 24/43] dt-bindings: ata: Add DT bindings ep93xx pata Nikita Shubin
2023-04-24 13:16   ` Damien Le Moal
2023-04-24 12:34 ` [PATCH 26/43] dt-bindings: input: Add DT bindings ep93xx keypad Nikita Shubin
2023-04-24 16:21   ` Rob Herring
2023-04-24 12:34 ` [PATCH 28/43] dt-bindings: rtc: Add DT binding m48t86 rtc Nikita Shubin
2023-04-24 16:25   ` Rob Herring
2023-04-24 16:40     ` Alexandre Belloni
2023-04-24 12:34 ` [PATCH 30/43] dt-bindings: wdt: Add DT binding ts72xx wdt Nikita Shubin
2023-04-24 16:26   ` Rob Herring
2023-04-24 12:34 ` [PATCH 32/43] dt-bindings: gpio: Add DT bindings ep93xx gpio Nikita Shubin
2023-04-24 16:32   ` Rob Herring
2023-04-26 20:48     ` Linus Walleij
2023-04-28 14:44       ` Nikita Shubin
2023-04-24 12:34 ` [PATCH 34/43] ARM: dts: add device tree for ep93xx Soc Nikita Shubin
2023-04-24 11:28   ` Arnd Bergmann
2023-04-28 15:13     ` Nikita Shubin
2023-04-28 21:56     ` Kris Bahnsen
2023-04-24 12:34 ` [PATCH 40/43] ARM: dts: ep93xx: Add ADC node Nikita Shubin
2023-04-24 12:34 ` [PATCH 41/43] ARM: dts: ep93xx: Add I2S and AC97 nodes Nikita Shubin
2023-04-24 12:34 ` [PATCH 42/43] ARM: dts: ep93xx: Add EDB9302 DT Nikita Shubin
2023-04-26 20:56 ` [PATCH 00/43] ep93xx device tree conversion Linus Walleij
     [not found]   ` <b5396ef5-3fed-4e98-8f37-a9cd4473bddc@sirena.org.uk>
2023-04-26 21:06     ` Linus Walleij
2023-05-16  3:47 ` Florian Fainelli
2023-05-16 10:37   ` Nikita Shubin
2023-06-01  5:33 ` [PATCH v1 02/43] dt-bindings: soc: Add Cirrus EP93xx Nikita Shubin
2023-06-01  6:37   ` Krzysztof Kozlowski
2023-06-01  7:04     ` Nikita Shubin
2023-06-01  5:33 ` [PATCH v1 04/43] dt-bindings: clock: " Nikita Shubin
2023-06-01  6:39   ` Krzysztof Kozlowski
2023-06-01  6:40   ` Krzysztof Kozlowski
2023-06-01  5:33 ` [PATCH v1 06/43] dt-bindings: pinctrl: " Nikita Shubin
2023-06-01  6:42   ` Krzysztof Kozlowski
2023-06-01  5:33 ` [PATCH v1 08/43] dt-bindings: timers: " Nikita Shubin
2023-06-01  6:43   ` Krzysztof Kozlowski
2023-06-01  6:44   ` Krzysztof Kozlowski
2023-06-01  5:34 ` [PATCH v1 10/43] dt-bindings: rtc: " Nikita Shubin
2023-06-01  5:34 ` [PATCH v1 12/43] dt-bindings: watchdog: Add Cirrus EP93x Nikita Shubin
2023-06-01  5:34 ` [PATCH v1 15/43] dt-bindings: pwm: Add Cirrus EP93xx Nikita Shubin
2023-06-01  5:34 ` [PATCH v1 17/43] dt-bindings: spi: " Nikita Shubin
2023-06-01  8:16   ` Krzysztof Kozlowski
2023-06-01 11:17   ` Mark Brown
2023-06-01 12:41     ` Nikita Shubin
2023-06-01 12:55       ` Mark Brown
2023-06-01 13:15         ` Nikita Shubin
2023-06-01  5:45 ` [PATCH v1 19/43] dt-bindings: net: " Nikita Shubin
2023-06-01  5:45 ` [PATCH v1 21/43] dt-bindings: dma: " Nikita Shubin
2023-06-01  5:45 ` [PATCH v1 23/43] dt-bindings: mtd: Add ts7250 nand-controller Nikita Shubin
2023-06-01  7:45   ` Miquel Raynal
2023-06-01  8:11   ` Krzysztof Kozlowski
2023-06-01  5:45 ` [PATCH v1 25/43] dt-bindings: ata: Add Cirrus EP93xx Nikita Shubin
2023-06-01 23:57   ` Damien Le Moal
2023-06-04 19:24     ` Nikita Shubin
2023-06-14 19:00     ` Rob Herring
2023-06-15  0:49       ` Damien Le Moal
2023-06-01  5:45 ` [PATCH v1 27/43] dt-bindings: input: Add Cirrus EP93xx keypad Nikita Shubin
2023-06-01  8:24   ` Rob Herring
2023-06-08 15:01   ` Rob Herring
2023-06-01  5:45 ` [PATCH v1 29/43] dt-bindings: rtc: Add ST M48T86 Nikita Shubin
2023-06-01  8:18   ` Krzysztof Kozlowski
2023-06-20  7:30     ` Nikita Shubin
2023-06-01  5:45 ` [PATCH v1 31/43] dt-bindings: wdt: Add ts72xx Nikita Shubin
2023-06-01  5:45 ` [PATCH v1 33/43] dt-bindings: gpio: Add Cirrus EP93xx Nikita Shubin
2023-06-01  8:20   ` Krzysztof Kozlowski
2023-06-02  7:40     ` Linus Walleij
2023-06-13 14:55       ` Bartosz Golaszewski
2023-06-13 18:09         ` Linus Walleij
2023-06-16  9:15   ` Bartosz Golaszewski
2023-06-01  5:45 ` [PATCH v1 35/43] ARM: dts: add device tree for ep93xx Soc Nikita Shubin
2023-06-01  8:30   ` Krzysztof Kozlowski
2023-07-05 16:06     ` Nikita Shubin
2023-06-01  5:45 ` [PATCH v1 41/43] ARM: dts: ep93xx: Add I2S and AC97 nodes Nikita Shubin
2023-06-01  8:31   ` Krzysztof Kozlowski
2023-06-01  5:45 ` [PATCH v1 42/43] ARM: dts: ep93xx: Add EDB9302 DT Nikita Shubin
2023-06-01  8:33   ` Krzysztof Kozlowski
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=20230502114858.7152572a@xps-13 \
    --to=miquel.raynal@bootlin.com \
    --cc=alexander.sverdlin@gmail.com \
    --cc=arnd@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=krzysztof.kozlowski+dt@linaro.org \
    --cc=linusw@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mtd@lists.infradead.org \
    --cc=lukma@denx.de \
    --cc=nikita.shubin@maquefel.me \
    --cc=richard@nod.at \
    --cc=robh+dt@kernel.org \
    --cc=vigneshr@ti.com \
    /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;
as well as URLs for NNTP newsgroup(s).