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

From: H. Nikolaus Schaller
Date: Sat Feb 22 2020 - 11:34:21 EST



> Am 22.02.2020 um 16:57 schrieb Andreas Kemnade <andreas@xxxxxxxxxxxx>:
>
> On Sat, 22 Feb 2020 11:25:37 +0100
> "H. Nikolaus Schaller" <hns@xxxxxxxxxxxxx> wrote:
>
>> From: PrasannaKumar Muralidharan <prasannatsmkumar@xxxxxxxxx>
>>
>> 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@xxxxxxxxxx>
>> Signed-off-by: PrasannaKumar Muralidharan <prasannatsmkumar@xxxxxxxxx>
>> Signed-off-by: Mathieu Malaterre <malat@xxxxxxxxxx>
>> Signed-off-by: H. Nikolaus Schaller <hns@xxxxxxxxxxxxx>
>> [converted to yaml]
>> Signed-off-by: Andreas Kemnade <andreas@xxxxxxxxxxxx>
>> ---
>> .../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@xxxxxxxxx>
>> +
>> +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