devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Geert Uytterhoeven <geert@linux-m68k.org>
To: Hadar Gat <Hadar.Gat@arm.com>
Cc: Matt Mackall <mpm@selenic.com>,
	Herbert Xu <herbert@gondor.apana.org.au>,
	Rob Herring <robh+dt@kernel.org>,
	Mark Rutland <Mark.Rutland@arm.com>,
	Arnd Bergmann <arnd@arndb.de>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Krzysztof Kozlowski <krzk@kernel.org>,
	Florian Fainelli <f.fainelli@gmail.com>,
	Alexander Sverdlin <alexander.sverdlin@nokia.com>,
	Thomas Gleixner <tglx@linutronix.de>,
	Tomer Maimon <tmaimon77@gmail.com>,
	Randy Dunlap <rdunlap@infradead.org>,
	Zaibo Xu <xuzaibo@huawei.com>,
	Daniel Thompson <daniel.thompson@linaro.org>,
	Mauro Carvalho Chehab <mchehab+samsung@kernel.org>,
	"David S. Miller" <davem@davemloft.net>,
	Jonathan Cameron <Jonathan.Cameron@huawei.com>,
	Linux Crypto Mailing List <linux-crypto@vger.kernel.org>,
	"open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS" 
	<devicetree@vger.kernel.org>,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
	Gilad Ben-Yossef <gilad@benyossef.com>,
	Ofir Drang <Ofir.Drang@arm.com>, nd <nd@arm.com>
Subject: Re: [PATCH v7 0/3] hw_random: introduce Arm CryptoCell TRNG driver
Date: Tue, 21 Apr 2020 15:39:50 +0200	[thread overview]
Message-ID: <CAMuHMdWjBTEM-cU32ZcvvoYDcjdMzcKbQZUyvGggZRMRhkOmFg@mail.gmail.com> (raw)
In-Reply-To: <DB6PR0802MB25330B64ABAE083E31B427DDE9D50@DB6PR0802MB2533.eurprd08.prod.outlook.com>

Hi Hadar (and Gilad),

On Tue, Apr 21, 2020 at 3:13 PM Hadar Gat <Hadar.Gat@arm.com> wrote:
> To better explain the relationship between ccree and cctrng drivers, here an description of the underlying hardware and the relationship to the two drivers:
>
> Arm TrustZone CryptoCell is a hardware block that implements two separate and discreet, although related, interfaces: one for the Rich Execution Environment  (read: Linux) and the other for the Trusted Execution Environment (e.g. Trusty, Op-TEE).
>
> The ccree driver exposes the REE interface of CryptoCell to Linux. Where a SoC vendor implements both REE and TEE in their design, that is all that is needed.
>
> However, we have some customers that make use CryptoCell but never implement a Trusted Execution Environment. This is a design decision taken when the SoC hardware is being designed and not a software controlled configuration, as it involves how the buses are laid out. Some of these customers have requested from us to allow making use in Linux of the TRNG resources which are normally associated with the TEE side when it is not in use. For these customers, the cctrng driver allows making use in Linux the TRNG which is normally part of the TEE side of CryptoCell.

Thank you, that is the part I was missing.

BTW, there seems to be no mention of CryptoCell 630 on arm.com; it
covers only CC-300 and CC-700.
But from the (very limited) information about the crypto engine on R-Car
Gen3 SoCs, it looks like the RNG is indeed only present in the secure
(trusted) part.

> > -----Original Message-----
> > From: Geert Uytterhoeven <geert@linux-m68k.org>
> > On Mon, Apr 20, 2020 at 2:27 PM Hadar Gat <Hadar.Gat@arm.com> wrote:
> > > > From: Geert Uytterhoeven <geert@linux-m68k.org>
> > > > Sent: Monday, 20 April 2020 12:35
> > > >
> > > > On Fri, Mar 27, 2020 at 7:11 AM Hadar Gat <hadar.gat@arm.com> wrote:
> > > > > The Arm CryptoCell is a hardware security engine.
> > > > > This patch introduces driver for its TRNG (True Random Number
> > > > > Generator) engine.
> > > >
> > > > Thanks for your series!
> > > >
> > > > I am wondering what is the relation between this and
> > > > Documentation/devicetree/bindings/crypto/arm-cryptocell.txt?
> > >
> > > Arm TrustZone CryptoCell hardware contains both cryptographic engine
> > (ccree) and true random number generator engine (cctrng).
> >
> > OK.
> >
> > > These are separate engines with some sharing in logic and interface.
> >
> > Do they share the same register block?
> >
> > > cctrng engine may not always be present.
> >
> > I assume that applies to e.g. the older 630p?
> >
> > > The devicetree documentation is in:
> > > For ccree -
> > > Documentation/devicetree/bindings/crypto/arm-cryptocell.txt
> > > For cctrng - Documentation/devicetree/bindings/rng/arm-cctrng.yaml
> >
> > Thank you, I had already read both documents.

Gr{oetje,eeting}s,

                        Geert

-- 
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds

      reply	other threads:[~2020-04-21 13:40 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-03-27  6:10 [PATCH v7 0/3] hw_random: introduce Arm CryptoCell TRNG driver Hadar Gat
2020-03-27  6:10 ` [PATCH v7 1/3] dt-bindings: add device tree binding for Arm CryptoCell trng engine Hadar Gat
2020-04-05  1:30   ` Rob Herring
2020-03-27  6:10 ` [PATCH v7 2/3] hw_random: cctrng: introduce Arm CryptoCell driver Hadar Gat
2020-04-20 13:44   ` Geert Uytterhoeven
2020-04-21 13:16     ` Hadar Gat
2020-04-21 13:34       ` Geert Uytterhoeven
2020-04-21 15:13         ` Hadar Gat
2020-04-21 16:26           ` Geert Uytterhoeven
2020-04-22 10:37             ` Hadar Gat
2020-03-27  6:10 ` [PATCH v7 3/3] MAINTAINERS: add HG as cctrng maintainer Hadar Gat
2020-04-16  6:51 ` [PATCH v7 0/3] hw_random: introduce Arm CryptoCell TRNG driver Herbert Xu
2020-04-20  9:34 ` Geert Uytterhoeven
2020-04-20 12:27   ` Hadar Gat
2020-04-20 13:45     ` Geert Uytterhoeven
2020-04-21 13:12       ` Hadar Gat
2020-04-21 13:39         ` Geert Uytterhoeven [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CAMuHMdWjBTEM-cU32ZcvvoYDcjdMzcKbQZUyvGggZRMRhkOmFg@mail.gmail.com \
    --to=geert@linux-m68k.org \
    --cc=Hadar.Gat@arm.com \
    --cc=Jonathan.Cameron@huawei.com \
    --cc=Mark.Rutland@arm.com \
    --cc=Ofir.Drang@arm.com \
    --cc=alexander.sverdlin@nokia.com \
    --cc=arnd@arndb.de \
    --cc=daniel.thompson@linaro.org \
    --cc=davem@davemloft.net \
    --cc=devicetree@vger.kernel.org \
    --cc=f.fainelli@gmail.com \
    --cc=gilad@benyossef.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=herbert@gondor.apana.org.au \
    --cc=krzk@kernel.org \
    --cc=linux-crypto@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mchehab+samsung@kernel.org \
    --cc=mpm@selenic.com \
    --cc=nd@arm.com \
    --cc=rdunlap@infradead.org \
    --cc=robh+dt@kernel.org \
    --cc=tglx@linutronix.de \
    --cc=tmaimon77@gmail.com \
    --cc=xuzaibo@huawei.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).