All of lore.kernel.org
 help / color / mirror / Atom feed
From: Peter Maydell <peter.maydell@linaro.org>
To: Krzysztof Kozlowski <krzk@kernel.org>
Cc: Igor Mitsyanko <i.mitsyanko@gmail.com>,
	qemu-arm <qemu-arm@nongnu.org>,
	QEMU Developers <qemu-devel@nongnu.org>
Subject: Re: [Qemu-devel] [PATCH v2] hw/misc: Add Exynos4210 Pseudo Random Number Generator
Date: Tue, 4 Apr 2017 15:05:09 +0100	[thread overview]
Message-ID: <CAFEAcA9UGEVVUfL3--goP4mVU+ezegWPcoka41XM8d_E2yyJkQ@mail.gmail.com> (raw)
In-Reply-To: <20170404134402.GA4196@kozik-book>

On 4 April 2017 at 14:44, Krzysztof Kozlowski <krzk@kernel.org> wrote:
> On Tue, Apr 04, 2017 at 01:09:08PM +0100, Peter Maydell wrote:
>> On 18 March 2017 at 19:25, Krzysztof Kozlowski <krzk@kernel.org> wrote:
>> > Add emulation for Exynos4210 Pseudo Random Number Generator which could
>> > work on fixed seeds or with seeds provided by True Random Number
>> > Generator block inside the SoC.
>> >
>> > Implement only the fixed seeds part of it in polling mode (no
>> > interrupts).  Simple testing:
>> >     # echo "exynos" > /sys/class/misc/hw_random/rng_current
>> >     # dd if=/dev/hwrng of=/dev/null bs=1 count=16
>> >
>> > Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
>> >
>> > ---
>> >
>> > Changes since v1:
>> > 1. Use GRand-like functions to fix build on MingW32 (this adds also
>> >    finalize).
>> > 2. Add DPRINTF macro.
>> > 3. Use HWADDR_PRIx and family for printing values.
>>
>> Is there a data sheet that describes this RNG? I had a quick google
>> but couldn't find anything in the 4210 manual you can get from Samsung.
>
> Official and public datasheet - I never heard about it... AFAIK, Samsung
> never released any datasheet... But recently I found a copy of
> Exynos4412 datasheet published on FriendlyArm website:
> http://wiki.friendlyarm.com/wiki/index.php/NanoPC-T1
> (at the bottom in "Resources").
>
> Some blocks in Exynos4412, including the RNG, are the same as in
> Exynos4210. However, you should not expect too much data about the RNG
> in the datasheet...
>
>> In particular I'm not sure we want to use GRand here.
>
> Now, I am not sure neither. :)

The last RNG we added was hw/misc/bcm2835_rng.c, which uses
qcrypto_random_bytes() to get cryptographically-random bytes
from the host. On the other hand it sounds like this Exynos
hardware is a PRNG without true-random input...

> During the discussions about new kernel driver, I found that this RNG
> module (at least on Exynos4412 board) requires seeding but it is not
> following the Pseudo RNG behavior - seeding with the same value produces
> different results. This means that GRand would not be needed here.

That's rather odd. You're right that the datasheet is hopelessly
uninformative about what's actually going on.

thanks
-- PMM

  reply	other threads:[~2017-04-04 14:05 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-03-18 19:25 [Qemu-devel] [PATCH v2] hw/misc: Add Exynos4210 Pseudo Random Number Generator Krzysztof Kozlowski
2017-04-04 12:09 ` Peter Maydell
2017-04-04 13:44   ` Krzysztof Kozlowski
2017-04-04 14:05     ` Peter Maydell [this message]
2017-04-04 14:31       ` Krzysztof Kozlowski
2017-04-10 15:15         ` Peter Maydell
2017-04-11 12:02           ` Krzysztof Kozlowski
2017-04-11 12:07             ` Peter Maydell

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=CAFEAcA9UGEVVUfL3--goP4mVU+ezegWPcoka41XM8d_E2yyJkQ@mail.gmail.com \
    --to=peter.maydell@linaro.org \
    --cc=i.mitsyanko@gmail.com \
    --cc=krzk@kernel.org \
    --cc=qemu-arm@nongnu.org \
    --cc=qemu-devel@nongnu.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.