lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<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

Powered by Openwall GNU/*/Linux Powered by OpenVZ