[PATCH 1/1] rng: detect RISC-V Zkr RNG device in bind method

Simon Glass sjg at chromium.org
Sun Nov 5 17:25:23 CET 2023


Hi Heinrich,

On Sun, 5 Nov 2023 at 03:47, Heinrich Schuchardt
<heinrich.schuchardt at canonical.com> wrote:
>
> On 11/4/23 21:42, Simon Glass wrote:
> > Hi Heinrich,
> >
> > On Sat, 4 Nov 2023 at 06:51, Heinrich Schuchardt
> > <heinrich.schuchardt at canonical.com> wrote:
> >>
> >> The existence of devices should be checked in the bind method and not in
> >> the probe method. Adjust the RISC-V Zkr RNG driver accordingly.
> >>
> >> Use ENOENT (and not ENODEV) to signal that the device is not available.
> >>
> >> Fixes: ceec977ba1a9 ("rng: Provide a RNG based on the RISC-V Zkr ISA extension")
> >> Reported-by: Andre Przywara <andre.przywara at arm.com>
> >> Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt at canonical.com>
> >> ---
> >>   drivers/rng/riscv_zkr_rng.c | 34 ++++++++++++++++++++++++++--------
> >>   1 file changed, 26 insertions(+), 8 deletions(-)
> >
> > This device should be in the DT, so you have some control over which
> > RNG is used.
>
> The device-tree provided by QEMU does not contain such a device as Zkr
> is an ISA extension and not a device. This device-tree is not under the
> control of the U-Boot project.

Why do you bring up QEMU? I would expect that it follows the norma dt
bindings, so it should not be any different from real hardware?

Anyway, you could add it. It is just a binding. I believe RISC-V has
all sorts of isa options which result in different machine features.

What are you going to do when you want to choose between the ISA RNG
and a TPM one?

Regards,
Simon


More information about the U-Boot mailing list