diff mbox series

[v5,2/6] Bindings: nvmem: add bindings for JZ4780 efuse

Message ID 51642368a064073ab99bb3110863b5fadc382f82.1582367141.git.hns@goldelico.com (mailing list archive)
State Superseded
Headers show
Series MIPS: CI20: Add efuse driver for Ingenic JZ4780 and attach to DM9000 for stable MAC addresses | expand

Commit Message

H. Nikolaus Schaller Feb. 22, 2020, 10:25 a.m. UTC
From: PrasannaKumar Muralidharan <prasannatsmkumar@gmail.com>

This patch brings support for the JZ4780 efuse. Currently it only exposes
a read only access to the entire 8K bits efuse memory.

Tested-by: Mathieu Malaterre <malat@debian.org>
Signed-off-by: PrasannaKumar Muralidharan <prasannatsmkumar@gmail.com>
Signed-off-by: Mathieu Malaterre <malat@debian.org>
Signed-off-by: H. Nikolaus Schaller <hns@goldelico.com>
[converted to yaml]
Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
---
 .../bindings/nvmem/ingenic,jz4780-efuse.yaml  | 50 +++++++++++++++++++
 1 file changed, 50 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/nvmem/ingenic,jz4780-efuse.yaml

Comments

Andreas Kemnade Feb. 22, 2020, 10:54 a.m. UTC | #1
On Sat, 22 Feb 2020 11:25:37 +0100
"H. Nikolaus Schaller" <hns@goldelico.com> wrote:

> From: PrasannaKumar Muralidharan <prasannatsmkumar@gmail.com>
> 
> This patch brings support for the JZ4780 efuse. Currently it only exposes
> a read only access to the entire 8K bits efuse memory.
> 
> Tested-by: Mathieu Malaterre <malat@debian.org>
> Signed-off-by: PrasannaKumar Muralidharan <prasannatsmkumar@gmail.com>
> Signed-off-by: Mathieu Malaterre <malat@debian.org>
> Signed-off-by: H. Nikolaus Schaller <hns@goldelico.com>
> [converted to yaml]
> Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
> ---
>  .../bindings/nvmem/ingenic,jz4780-efuse.yaml  | 50 +++++++++++++++++++
>  1 file changed, 50 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/nvmem/ingenic,jz4780-efuse.yaml
> 
> diff --git a/Documentation/devicetree/bindings/nvmem/ingenic,jz4780-efuse.yaml b/Documentation/devicetree/bindings/nvmem/ingenic,jz4780-efuse.yaml
> new file mode 100644
> index 000000000000..09a8ef937750
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/nvmem/ingenic,jz4780-efuse.yaml
> @@ -0,0 +1,50 @@
> +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/nvmem/ingenic,jz4780-efuse.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Ingenic JZ EFUSE driver bindings
> +
> +maintainers:
> +  - PrasannaKumar Muralidharan <prasannatsmkumar@gmail.com>
> +
> +allOf:
> +  - $ref: "nvmem.yaml#"
> +
> +properties:
> +  compatible:
> +    enum:
> +      - ingenic,jz4780-efuse
> +
> +  reg:
> +    maxItems: 1
> +
> +  clocks:
> +    # Handle for the ahb for the efuse.
> +    maxItems: 1
> +
> +  clock-names:
> +   items:
> +     - const:  ahb2
> +
> +required:
> +  - compatible
> +  - reg
> +  - clock-names
- clocks ?

In my first try there was "clock" without s which
caused the trouble.

Regards,
Andreas
Andreas Kemnade Feb. 22, 2020, 3:57 p.m. UTC | #2
On Sat, 22 Feb 2020 11:25:37 +0100
"H. Nikolaus Schaller" <hns@goldelico.com> wrote:

> From: PrasannaKumar Muralidharan <prasannatsmkumar@gmail.com>
> 
> This patch brings support for the JZ4780 efuse. Currently it only exposes
> a read only access to the entire 8K bits efuse memory.
> 
> Tested-by: Mathieu Malaterre <malat@debian.org>
> Signed-off-by: PrasannaKumar Muralidharan <prasannatsmkumar@gmail.com>
> Signed-off-by: Mathieu Malaterre <malat@debian.org>
> Signed-off-by: H. Nikolaus Schaller <hns@goldelico.com>
> [converted to yaml]
> Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
> ---
>  .../bindings/nvmem/ingenic,jz4780-efuse.yaml  | 50 +++++++++++++++++++
>  1 file changed, 50 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/nvmem/ingenic,jz4780-efuse.yaml
> 
> diff --git a/Documentation/devicetree/bindings/nvmem/ingenic,jz4780-efuse.yaml b/Documentation/devicetree/bindings/nvmem/ingenic,jz4780-efuse.yaml
> new file mode 100644
> index 000000000000..09a8ef937750
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/nvmem/ingenic,jz4780-efuse.yaml
> @@ -0,0 +1,50 @@
> +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/nvmem/ingenic,jz4780-efuse.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Ingenic JZ EFUSE driver bindings
> +
> +maintainers:
> +  - PrasannaKumar Muralidharan <prasannatsmkumar@gmail.com>
> +
> +allOf:
> +  - $ref: "nvmem.yaml#"
> +
> +properties:
> +  compatible:
> +    enum:
> +      - ingenic,jz4780-efuse
> +
> +  reg:
> +    maxItems: 1
> +
> +  clocks:
> +    # Handle for the ahb for the efuse.
> +    maxItems: 1
> +
> +  clock-names:
> +   items:
> +     - const:  ahb2
as Rob said: probably not needed, since it is a single
clock, and the driver uses devm_clk_get(dev, NULL), so it should be prepared
for that without any extra work.

> +
> +required:
> +  - compatible
> +  - reg
> +  - clock-names
so it is not required here (but "- clocks" (not "- clock") as said in earlier
mail).

> +
> +unevaluatedProperties: false
> +
> +examples:
> +  - |
> +    #include <dt-bindings/clock/jz4780-cgu.h>
> +
> +    efuse@134100d0 {
> +        compatible = "ingenic,jz4780-efuse";
> +        reg = <0x134100d0 0x2c>;
> +
> +        clocks = <&cgu JZ4780_CLK_AHB2>;
> +        clock-names = "ahb2";
and not required here.

Regards,
Andreas
H. Nikolaus Schaller Feb. 22, 2020, 4:28 p.m. UTC | #3
> Am 22.02.2020 um 11:54 schrieb Andreas Kemnade <andreas@kemnade.info>:
> 
> On Sat, 22 Feb 2020 11:25:37 +0100
> "H. Nikolaus Schaller" <hns@goldelico.com> wrote:
> 
>> From: PrasannaKumar Muralidharan <prasannatsmkumar@gmail.com>
>> 
>> This patch brings support for the JZ4780 efuse. Currently it only exposes
>> a read only access to the entire 8K bits efuse memory.
>> 
>> Tested-by: Mathieu Malaterre <malat@debian.org>
>> Signed-off-by: PrasannaKumar Muralidharan <prasannatsmkumar@gmail.com>
>> Signed-off-by: Mathieu Malaterre <malat@debian.org>
>> Signed-off-by: H. Nikolaus Schaller <hns@goldelico.com>
>> [converted to yaml]
>> Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
>> ---
>> .../bindings/nvmem/ingenic,jz4780-efuse.yaml  | 50 +++++++++++++++++++
>> 1 file changed, 50 insertions(+)
>> create mode 100644 Documentation/devicetree/bindings/nvmem/ingenic,jz4780-efuse.yaml
>> 
>> diff --git a/Documentation/devicetree/bindings/nvmem/ingenic,jz4780-efuse.yaml b/Documentation/devicetree/bindings/nvmem/ingenic,jz4780-efuse.yaml
>> new file mode 100644
>> index 000000000000..09a8ef937750
>> --- /dev/null
>> +++ b/Documentation/devicetree/bindings/nvmem/ingenic,jz4780-efuse.yaml
>> @@ -0,0 +1,50 @@
>> +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
>> +%YAML 1.2
>> +---
>> +$id: http://devicetree.org/schemas/nvmem/ingenic,jz4780-efuse.yaml#
>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>> +
>> +title: Ingenic JZ EFUSE driver bindings
>> +
>> +maintainers:
>> +  - PrasannaKumar Muralidharan <prasannatsmkumar@gmail.com>
>> +
>> +allOf:
>> +  - $ref: "nvmem.yaml#"
>> +
>> +properties:
>> +  compatible:
>> +    enum:
>> +      - ingenic,jz4780-efuse
>> +
>> +  reg:
>> +    maxItems: 1
>> +
>> +  clocks:
>> +    # Handle for the ahb for the efuse.
>> +    maxItems: 1
>> +
>> +  clock-names:
>> +   items:
>> +     - const:  ahb2
>> +
>> +required:
>> +  - compatible
>> +  - reg
>> +  - clock-names
> - clocks ?
> 
> In my first try there was "clock" without s which
> caused the trouble.

Ah, ok. Seems I have mis-interpreted this.

BR and thanks,
Nikolaus
H. Nikolaus Schaller Feb. 22, 2020, 4:34 p.m. UTC | #4
> Am 22.02.2020 um 16:57 schrieb Andreas Kemnade <andreas@kemnade.info>:
> 
> On Sat, 22 Feb 2020 11:25:37 +0100
> "H. Nikolaus Schaller" <hns@goldelico.com> wrote:
> 
>> From: PrasannaKumar Muralidharan <prasannatsmkumar@gmail.com>
>> 
>> This patch brings support for the JZ4780 efuse. Currently it only exposes
>> a read only access to the entire 8K bits efuse memory.
>> 
>> Tested-by: Mathieu Malaterre <malat@debian.org>
>> Signed-off-by: PrasannaKumar Muralidharan <prasannatsmkumar@gmail.com>
>> Signed-off-by: Mathieu Malaterre <malat@debian.org>
>> Signed-off-by: H. Nikolaus Schaller <hns@goldelico.com>
>> [converted to yaml]
>> Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
>> ---
>> .../bindings/nvmem/ingenic,jz4780-efuse.yaml  | 50 +++++++++++++++++++
>> 1 file changed, 50 insertions(+)
>> create mode 100644 Documentation/devicetree/bindings/nvmem/ingenic,jz4780-efuse.yaml
>> 
>> diff --git a/Documentation/devicetree/bindings/nvmem/ingenic,jz4780-efuse.yaml b/Documentation/devicetree/bindings/nvmem/ingenic,jz4780-efuse.yaml
>> new file mode 100644
>> index 000000000000..09a8ef937750
>> --- /dev/null
>> +++ b/Documentation/devicetree/bindings/nvmem/ingenic,jz4780-efuse.yaml
>> @@ -0,0 +1,50 @@
>> +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
>> +%YAML 1.2
>> +---
>> +$id: http://devicetree.org/schemas/nvmem/ingenic,jz4780-efuse.yaml#
>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>> +
>> +title: Ingenic JZ EFUSE driver bindings
>> +
>> +maintainers:
>> +  - PrasannaKumar Muralidharan <prasannatsmkumar@gmail.com>
>> +
>> +allOf:
>> +  - $ref: "nvmem.yaml#"
>> +
>> +properties:
>> +  compatible:
>> +    enum:
>> +      - ingenic,jz4780-efuse
>> +
>> +  reg:
>> +    maxItems: 1
>> +
>> +  clocks:
>> +    # Handle for the ahb for the efuse.
>> +    maxItems: 1
>> +
>> +  clock-names:
>> +   items:
>> +     - const:  ahb2
> as Rob said: probably not needed, since it is a single
> clock, and the driver uses devm_clk_get(dev, NULL), so it should be prepared
> for that without any extra work.

The question is if a specific driver implementation should determine
what the DT requires or the other way round. I don't know...

I did interpret Rob's comment differently: there was

> - "clock-names"		Must be "bus_clk"

and he did say: 

	'clk' is redundant. How about 'ahb'?

So I thought he refers to the _clk suffix?

> 
>> +
>> +required:
>> +  - compatible
>> +  - reg
>> +  - clock-names
> so it is not required here (but "- clocks" (not "- clock") as said in earlier
> mail).

Well, this is another example where I do not yet see any improvement by yaml.
It is the same amount of guessing what should be written where. Is this to
be added or not? When is it and why, when not and why?

BR and thanks,
Nikolaus
Andreas Kemnade Feb. 22, 2020, 4:46 p.m. UTC | #5
On Sat, 22 Feb 2020 17:34:06 +0100
"H. Nikolaus Schaller" <hns@goldelico.com> wrote:

> > Am 22.02.2020 um 16:57 schrieb Andreas Kemnade <andreas@kemnade.info>:
> > 
> > On Sat, 22 Feb 2020 11:25:37 +0100
> > "H. Nikolaus Schaller" <hns@goldelico.com> wrote:
> >   
> >> From: PrasannaKumar Muralidharan <prasannatsmkumar@gmail.com>
> >> 
> >> This patch brings support for the JZ4780 efuse. Currently it only exposes
> >> a read only access to the entire 8K bits efuse memory.
> >> 
> >> Tested-by: Mathieu Malaterre <malat@debian.org>
> >> Signed-off-by: PrasannaKumar Muralidharan <prasannatsmkumar@gmail.com>
> >> Signed-off-by: Mathieu Malaterre <malat@debian.org>
> >> Signed-off-by: H. Nikolaus Schaller <hns@goldelico.com>
> >> [converted to yaml]
> >> Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
> >> ---
> >> .../bindings/nvmem/ingenic,jz4780-efuse.yaml  | 50 +++++++++++++++++++
> >> 1 file changed, 50 insertions(+)
> >> create mode 100644 Documentation/devicetree/bindings/nvmem/ingenic,jz4780-efuse.yaml
> >> 
> >> diff --git a/Documentation/devicetree/bindings/nvmem/ingenic,jz4780-efuse.yaml b/Documentation/devicetree/bindings/nvmem/ingenic,jz4780-efuse.yaml
> >> new file mode 100644
> >> index 000000000000..09a8ef937750
> >> --- /dev/null
> >> +++ b/Documentation/devicetree/bindings/nvmem/ingenic,jz4780-efuse.yaml
> >> @@ -0,0 +1,50 @@
> >> +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
> >> +%YAML 1.2
> >> +---
> >> +$id: http://devicetree.org/schemas/nvmem/ingenic,jz4780-efuse.yaml#
> >> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> >> +
> >> +title: Ingenic JZ EFUSE driver bindings
> >> +
> >> +maintainers:
> >> +  - PrasannaKumar Muralidharan <prasannatsmkumar@gmail.com>
> >> +
> >> +allOf:
> >> +  - $ref: "nvmem.yaml#"
> >> +
> >> +properties:
> >> +  compatible:
> >> +    enum:
> >> +      - ingenic,jz4780-efuse
> >> +
> >> +  reg:
> >> +    maxItems: 1
> >> +
> >> +  clocks:
> >> +    # Handle for the ahb for the efuse.
> >> +    maxItems: 1
> >> +
> >> +  clock-names:
> >> +   items:
> >> +     - const:  ahb2  
> > as Rob said: probably not needed, since it is a single
> > clock, and the driver uses devm_clk_get(dev, NULL), so it should be prepared
> > for that without any extra work.  
> 
> The question is if a specific driver implementation should determine
> what the DT requires or the other way round. I don't know...
> 
> I did interpret Rob's comment differently: there was
> 
> > - "clock-names"		Must be "bus_clk"  
> 
> and he did say: 
> 
> 	'clk' is redundant. How about 'ahb'?
> 
> So I thought he refers to the _clk suffix?
> 

and he said to my first try:
---
> +  clock-names:
> +   items:
> +     - const:  bus_clk  

My prior comment still applies.

Also, for a single clock, you don't really need a name.
---

Regards,
Andreas
H. Nikolaus Schaller Feb. 22, 2020, 5:17 p.m. UTC | #6
> Am 22.02.2020 um 17:46 schrieb Andreas Kemnade <andreas@kemnade.info>:
> 
> On Sat, 22 Feb 2020 17:34:06 +0100
> "H. Nikolaus Schaller" <hns@goldelico.com> wrote:
> 
>>> Am 22.02.2020 um 16:57 schrieb Andreas Kemnade <andreas@kemnade.info>:
>>> 
>>> On Sat, 22 Feb 2020 11:25:37 +0100
>>> "H. Nikolaus Schaller" <hns@goldelico.com> wrote:
>>> 
>>>> From: PrasannaKumar Muralidharan <prasannatsmkumar@gmail.com>
>>>> 
>>>> This patch brings support for the JZ4780 efuse. Currently it only exposes
>>>> a read only access to the entire 8K bits efuse memory.
>>>> 
>>>> Tested-by: Mathieu Malaterre <malat@debian.org>
>>>> Signed-off-by: PrasannaKumar Muralidharan <prasannatsmkumar@gmail.com>
>>>> Signed-off-by: Mathieu Malaterre <malat@debian.org>
>>>> Signed-off-by: H. Nikolaus Schaller <hns@goldelico.com>
>>>> [converted to yaml]
>>>> Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
>>>> ---
>>>> .../bindings/nvmem/ingenic,jz4780-efuse.yaml  | 50 +++++++++++++++++++
>>>> 1 file changed, 50 insertions(+)
>>>> create mode 100644 Documentation/devicetree/bindings/nvmem/ingenic,jz4780-efuse.yaml
>>>> 
>>>> diff --git a/Documentation/devicetree/bindings/nvmem/ingenic,jz4780-efuse.yaml b/Documentation/devicetree/bindings/nvmem/ingenic,jz4780-efuse.yaml
>>>> new file mode 100644
>>>> index 000000000000..09a8ef937750
>>>> --- /dev/null
>>>> +++ b/Documentation/devicetree/bindings/nvmem/ingenic,jz4780-efuse.yaml
>>>> @@ -0,0 +1,50 @@
>>>> +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
>>>> +%YAML 1.2
>>>> +---
>>>> +$id: http://devicetree.org/schemas/nvmem/ingenic,jz4780-efuse.yaml#
>>>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>>>> +
>>>> +title: Ingenic JZ EFUSE driver bindings
>>>> +
>>>> +maintainers:
>>>> +  - PrasannaKumar Muralidharan <prasannatsmkumar@gmail.com>
>>>> +
>>>> +allOf:
>>>> +  - $ref: "nvmem.yaml#"
>>>> +
>>>> +properties:
>>>> +  compatible:
>>>> +    enum:
>>>> +      - ingenic,jz4780-efuse
>>>> +
>>>> +  reg:
>>>> +    maxItems: 1
>>>> +
>>>> +  clocks:
>>>> +    # Handle for the ahb for the efuse.
>>>> +    maxItems: 1
>>>> +
>>>> +  clock-names:
>>>> +   items:
>>>> +     - const:  ahb2  
>>> as Rob said: probably not needed, since it is a single
>>> clock, and the driver uses devm_clk_get(dev, NULL), so it should be prepared
>>> for that without any extra work.  
>> 
>> The question is if a specific driver implementation should determine
>> what the DT requires or the other way round. I don't know...
>> 
>> I did interpret Rob's comment differently: there was
>> 
>>> - "clock-names"		Must be "bus_clk"  
>> 
>> and he did say: 
>> 
>> 	'clk' is redundant. How about 'ahb'?
>> 
>> So I thought he refers to the _clk suffix?
>> 
> 
> and he said to my first try:
> ---
>> +  clock-names:
>> +   items:
>> +     - const:  bus_clk  
> 
> My prior comment still applies.
> 
> Also, for a single clock, you don't really need a name.

Ah, ok. I may have missed that.

BR and thanks,
Nikolaus
Andreas Kemnade Feb. 24, 2020, 7:33 a.m. UTC | #7
On Sat, 22 Feb 2020 17:34:06 +0100
"H. Nikolaus Schaller" <hns@goldelico.com> wrote:

> > Am 22.02.2020 um 16:57 schrieb Andreas Kemnade <andreas@kemnade.info>:
> > 
> > On Sat, 22 Feb 2020 11:25:37 +0100
> > "H. Nikolaus Schaller" <hns@goldelico.com> wrote:
> >   
> >> From: PrasannaKumar Muralidharan <prasannatsmkumar@gmail.com>
> >> 
> >> This patch brings support for the JZ4780 efuse. Currently it only exposes
> >> a read only access to the entire 8K bits efuse memory.
> >> 
> >> Tested-by: Mathieu Malaterre <malat@debian.org>
> >> Signed-off-by: PrasannaKumar Muralidharan <prasannatsmkumar@gmail.com>
> >> Signed-off-by: Mathieu Malaterre <malat@debian.org>
> >> Signed-off-by: H. Nikolaus Schaller <hns@goldelico.com>
> >> [converted to yaml]
> >> Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
> >> ---
> >> .../bindings/nvmem/ingenic,jz4780-efuse.yaml  | 50 +++++++++++++++++++
> >> 1 file changed, 50 insertions(+)
> >> create mode 100644 Documentation/devicetree/bindings/nvmem/ingenic,jz4780-efuse.yaml
> >> 
> >> diff --git a/Documentation/devicetree/bindings/nvmem/ingenic,jz4780-efuse.yaml b/Documentation/devicetree/bindings/nvmem/ingenic,jz4780-efuse.yaml
> >> new file mode 100644
> >> index 000000000000..09a8ef937750
> >> --- /dev/null
> >> +++ b/Documentation/devicetree/bindings/nvmem/ingenic,jz4780-efuse.yaml
> >> @@ -0,0 +1,50 @@
> >> +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
> >> +%YAML 1.2
> >> +---
> >> +$id: http://devicetree.org/schemas/nvmem/ingenic,jz4780-efuse.yaml#
> >> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> >> +
> >> +title: Ingenic JZ EFUSE driver bindings
> >> +
> >> +maintainers:
> >> +  - PrasannaKumar Muralidharan <prasannatsmkumar@gmail.com>
> >> +
> >> +allOf:
> >> +  - $ref: "nvmem.yaml#"
> >> +
> >> +properties:
> >> +  compatible:
> >> +    enum:
> >> +      - ingenic,jz4780-efuse
> >> +
> >> +  reg:
> >> +    maxItems: 1
> >> +
> >> +  clocks:
> >> +    # Handle for the ahb for the efuse.
> >> +    maxItems: 1
> >> +
> >> +  clock-names:
> >> +   items:
> >> +     - const:  ahb2  
> > as Rob said: probably not needed, since it is a single
> > clock, and the driver uses devm_clk_get(dev, NULL), so it should be prepared
> > for that without any extra work.  
> 
> The question is if a specific driver implementation should determine
> what the DT requires or the other way round. I don't know...
> 
> I did interpret Rob's comment differently: there was
> 
> > - "clock-names"		Must be "bus_clk"  
> 
> and he did say: 
> 
> 	'clk' is redundant. How about 'ahb'?
> 
> So I thought he refers to the _clk suffix?
> 
> >   
> >> +
> >> +required:
> >> +  - compatible
> >> +  - reg
> >> +  - clock-names  
> > so it is not required here (but "- clocks" (not "- clock") as said in earlier
> > mail).  
> 
> Well, this is another example where I do not yet see any improvement by yaml.
> It is the same amount of guessing what should be written where. Is this to
> be added or not? When is it and why, when not and why?
> 
well, this is the list of required properties which have to be an any
devicetree using that device, the conversion of the comments for the properties
in the .txt-file.
So, if you do not declare a property before, you cannot specify that it is
required. So if we drop the definition of clock-names we cannot declare it
as required. 

Regards,
Andreas
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/nvmem/ingenic,jz4780-efuse.yaml b/Documentation/devicetree/bindings/nvmem/ingenic,jz4780-efuse.yaml
new file mode 100644
index 000000000000..09a8ef937750
--- /dev/null
+++ b/Documentation/devicetree/bindings/nvmem/ingenic,jz4780-efuse.yaml
@@ -0,0 +1,50 @@ 
+# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/nvmem/ingenic,jz4780-efuse.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Ingenic JZ EFUSE driver bindings
+
+maintainers:
+  - PrasannaKumar Muralidharan <prasannatsmkumar@gmail.com>
+
+allOf:
+  - $ref: "nvmem.yaml#"
+
+properties:
+  compatible:
+    enum:
+      - ingenic,jz4780-efuse
+
+  reg:
+    maxItems: 1
+
+  clocks:
+    # Handle for the ahb for the efuse.
+    maxItems: 1
+
+  clock-names:
+   items:
+     - const:  ahb2
+
+required:
+  - compatible
+  - reg
+  - clock-names
+
+unevaluatedProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/clock/jz4780-cgu.h>
+
+    efuse@134100d0 {
+        compatible = "ingenic,jz4780-efuse";
+        reg = <0x134100d0 0x2c>;
+
+        clocks = <&cgu JZ4780_CLK_AHB2>;
+        clock-names = "ahb2";
+    };
+
+...