[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <755f8f930844cbef2b32f81bf6585c31@walle.cc>
Date: Tue, 20 Apr 2021 17:03:52 +0200
From: Michael Walle <michael@...le.cc>
To: Rob Herring <robh@...nel.org>
Cc: linux-mtd@...ts.infradead.org, devicetree@...r.kernel.org,
linux-kernel@...r.kernel.org,
Miquel Raynal <miquel.raynal@...tlin.com>,
Richard Weinberger <richard@....at>,
Vignesh Raghavendra <vigneshr@...com>,
Srinivas Kandagatla <srinivas.kandagatla@...aro.org>
Subject: Re: [PATCH 0/5] mtd: core: OTP nvmem provider support
Hi Rob,
Am 2021-04-20 16:08, schrieb Rob Herring:
> On Fri, Apr 16, 2021 at 09:26:03PM +0200, Michael Walle wrote:
>> Am 2021-04-16 20:44, schrieb Rob Herring:
>> > On Fri, Apr 16, 2021 at 01:49:23PM +0200, Michael Walle wrote:
>> > > The goal is to fetch a (base) MAC address from the OTP region of a
>> > > SPI NOR
>> > > flash.
>> > >
>> > > This is the first part, where I try to add the nvmem provider
>> > > support to
>> > > the MTD core.
>> > >
>> > > I'm not sure about the device tree bindings. Consider the following
>> > > two
>> > > variants:
>> > >
>> > > (1)
>> > > flash@0 {
>> > > ..
>> > >
>> > > otp {
>> > > compatible = "mtd-user-otp";
>> >
>> > mtd is a linuxism. Why not just 'nvmem-cells' here or as a fallback if
>> > we come up with a better name?
>>
>> There are two different compatibles: "mtd-user-otp" and
>> "mtd-factory-otp"
>> to differentiate what kind of OTP should be used (and both are
>> possible
>> at the same time). Thus nvmem-cells alone won't be enough. We could
>> drop
>> the "mtd-" prefix though.
>>
>> Is there a benefit of having the following?
>> compatible = "user-otp", "nvmem-cells";
>
> Yes. I assume 'user-otp' tells you something about the region and
> 'nvmem-cells' tells you that there are child nodes of nvmem data. Of
> course 'user-otp' could imply 'nvmem-cells' as you did. I'm fine with
> either way.
Ah, if I use both compatibles, then the
Documentation/devicetree/bindings/mtd/partitions/nvmem-cells.yaml
schema kicks in, which mandates 'compatible = "nvmem-cells";' and I
get the following errors:
CHECK Documentation/devicetree/bindings/mtd/mtd.example.dt.yaml
/home/mwalle/repos/b-linux-arm64/Documentation/devicetree/bindings/mtd/mtd.example.dt.yaml:
otp-1: compatible:0: 'nvmem-cells' was expected
From schema:
/home/mwalle/repos/linux-mw/Documentation/devicetree/bindings/mtd/partitions/nvmem-cells.yaml
/home/mwalle/repos/b-linux-arm64/Documentation/devicetree/bindings/mtd/mtd.example.dt.yaml:
otp-1: compatible: ['factory-otp', 'nvmem-cells'] is too long
From schema:
/home/mwalle/repos/linux-mw/Documentation/devicetree/bindings/mtd/partitions/nvmem-cells.yaml
/home/mwalle/repos/b-linux-arm64/Documentation/devicetree/bindings/mtd/mtd.example.dt.yaml:
otp-1: compatible: Additional items are not allowed ('nvmem-cells' was
unexpected)
From schema:
/home/mwalle/repos/linux-mw/Documentation/devicetree/bindings/mtd/partitions/nvmem-cells.yaml
Is there a way around that?
-michael
Powered by blists - more mailing lists