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

From: Andreas Kemnade
Date: Mon Feb 24 2020 - 02:38:21 EST


On Sat, 22 Feb 2020 17:34:06 +0100
"H. Nikolaus Schaller" <hns@xxxxxxxxxxxxx> wrote:

> > 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?
>
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

Attachment: pgpn8YfCVjzXJ.pgp
Description: OpenPGP digital signature