[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAL_Jsq+F8mW7oUBCXMgzEVb3Bz2pHxU=bFjo97QisMZN92PaQw@mail.gmail.com>
Date: Tue, 11 Feb 2020 12:39:46 -0600
From: Rob Herring <robh@...nel.org>
To: Hadar Gat <Hadar.Gat@....com>
Cc: Matt Mackall <mpm@...enic.com>,
Herbert Xu <herbert@...dor.apana.org.au>,
Mark Rutland <Mark.Rutland@....com>,
Arnd Bergmann <arnd@...db.de>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
Krzysztof Kozlowski <krzk@...nel.org>,
Daniel Thompson <daniel.thompson@...aro.org>,
Tomer Maimon <tmaimon77@...il.com>,
Stefan Wahren <wahrenst@....net>,
Sumit Garg <sumit.garg@...aro.org>,
Zaibo Xu <xuzaibo@...wei.com>,
Weili Qian <qianweili@...wei.com>,
Mauro Carvalho Chehab <mchehab+samsung@...nel.org>,
"David S. Miller" <davem@...emloft.net>,
Jonathan Cameron <Jonathan.Cameron@...wei.com>,
"linux-crypto@...r.kernel.org" <linux-crypto@...r.kernel.org>,
"devicetree@...r.kernel.org" <devicetree@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
Gilad Ben-Yossef <gilad@...yossef.com>,
Ofir Drang <Ofir.Drang@....com>, nd <nd@....com>
Subject: Re: [PATCH v2 1/3] dt-bindings: add device tree binding for Arm
CryptoCell trng engine
On Sun, Feb 9, 2020 at 3:34 AM Hadar Gat <Hadar.Gat@....com> wrote:
>
> Hi Rob,
> Thanks for remarks.
> Please see my answers.
> Hadar
>
> > On Sun, Feb 02, 2020 at 03:26:59PM +0200, Hadar Gat wrote:
> > > The Arm CryptoCell is a hardware security engine. This patch adds DT
> > > bindings for its TRNG (True Random Number Generator) engine.
> > >
> > > Signed-off-by: Hadar Gat <hadar.gat@....com>
> > > ---
> > > .../devicetree/bindings/rng/arm-cctrng.yaml | 51
> > ++++++++++++++++++++++
> > > 1 file changed, 51 insertions(+)
> > > create mode 100644
> > > Documentation/devicetree/bindings/rng/arm-cctrng.yaml
> > >
> > > diff --git a/Documentation/devicetree/bindings/rng/arm-cctrng.yaml
> > > b/Documentation/devicetree/bindings/rng/arm-cctrng.yaml
> > > new file mode 100644
> > > index 0000000..fe9422e
> > > --- /dev/null
> > > +++ b/Documentation/devicetree/bindings/rng/arm-cctrng.yaml
> > > @@ -0,0 +1,51 @@
> > > +# SPDX-License-Identifier: GPL-2.0
> >
> > Dual license new bindings:
> >
> > (GPL-2.0-only OR BSD-2-Clause)
> >
> Okay.
>
> > > +%YAML 1.2
> > > +---
> > > +$id: http://devicetree.org/schemas/rng/arm-cctrng.yaml#
> > > +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > > +
> > > +title: Arm ZrustZone CryptoCell TRNG engine
> > > +
> > > +maintainers:
> > > + - Hadar Gat <hadar.gat@....com>
> > > +
> > > +description: |+
> > > + Arm ZrustZone CryptoCell TRNG (True Random Number Generator)
> > engine.
> > > +
> > > +properties:
> > > + compatible:
> > > + description: Should be "arm,cryptocell-7x3-trng"
> >
> > Drop. That's what the schema says.
> >
> Okay.
>
> > > + const: arm,cryptocell-7x3-trng
> >
> > Is 'x' a wildcard? We don't do wildcards unless you have other ways to get the
> > specific version.
> >
> Kind of a wildcard. It stands for either 703 or 713.
> Should I fix this to the specific versions?
> OR,
> Since the specific version doesn't matter to the driver, should it changed?
Maybe not now, but both will always have the same errata and features?
2 is not a large number, so just do 2.
Of course, errata can vary by revision. Most Arm IP has version
registers, so I assume that's true here. If not, we'd need per SoC
implementation compatible strings here.
> (checking out other rng drivers, I see this example in Samsung,exynos4.yaml:
> - samsung,exynos4-rng # for Exynos4210 and Exynos4412 )
Well, there's lots of bad examples, and also, some Samsung bindings
are declared to not be stable.
>
> > > +
> > > + interrupts:
> > > + description: Interrupt number for the device.
> >
> > Drop. That's all 'interrupts'.
> >
> Okay.
>
> > > + maxItems: 1
> > > +
> > > + reg:
> > > + description: Base physical address of the engine and length of memory
> > > + mapped region.
> >
> > Drop.
> >
> Okay.
>
> > > + maxItems: 1
> > > +
> > > + rosc-ratio:
> > > + description: Sampling ratio values from calibration for 4 ring oscillators.
> > > + maxItems: 1
> >
> > Is this an array?
> >
> Yes, array of 4. (I'll mention in the description)
Don't need a description as that's constraints the schema should express.
> > Needs a vendor prefix, a type ref and any constraints you can come up with.
> >
> Do you mean in the name? instead of "rosc-ratio"?
arm,rosc-ratio:
allOf:
- $ref: /schemas/types.yaml#/definitions/uint32-array
maxItems: 4
> I didn't find anything about it in the documentation or examples in other rng drivers..
>
> > > +
> > > + clocks:
> > > + description: Reference to the crypto engine clock.
> >
> > How many clocks?
> >
> One clock. (I will change clocks --> clock)
No, the property name is always 'clocks'. You need just 'maxItems: 1'
if there's a single clock.
Rob
Powered by blists - more mailing lists