
Hi Heinrich,
On Sun, 5 Nov 2023 at 03:47, Heinrich Schuchardt heinrich.schuchardt@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@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@arm.com Signed-off-by: Heinrich Schuchardt heinrich.schuchardt@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