Re: [PATCH 3/3] arm64: dts: meson: g12a: Add hwrng node

From: Martin Blumenstingl
Date: Mon May 20 2019 - 13:48:36 EST


Hi Neil,

On Mon, May 20, 2019 at 3:49 PM Neil Armstrong <narmstrong@xxxxxxxxxxxx> wrote:
>
> The Amlogic G12A has the hwrng module in an unknown "EFUSE" bus.
>
> The hwrng is not enabled on the vendor G12A DTs, but is enabled on
> next generation SM1 SoC family sharing the exact same memory mapping.
>
> Let's add the "EFUSE" bus and the hwrng node.
>
> This hwrng has been checked with the rng-tools rngtest FIPS tool :
> rngtest: starting FIPS tests...
> rngtest: bits received from input: 1630240032
> rngtest: FIPS 140-2 successes: 81436
> rngtest: FIPS 140-2 failures: 76
> rngtest: FIPS 140-2(2001-10-10) Monobit: 10
> rngtest: FIPS 140-2(2001-10-10) Poker: 6
> rngtest: FIPS 140-2(2001-10-10) Runs: 26
> rngtest: FIPS 140-2(2001-10-10) Long run: 34
> rngtest: FIPS 140-2(2001-10-10) Continuous run: 0
> rngtest: input channel speed: (min=3.784; avg=5687.521; max=19073.486)Mibits/s
> rngtest: FIPS tests speed: (min=47.684; avg=52.348; max=52.835)Mibits/s
> rngtest: Program run time: 30000987 microseconds
>
> Signed-off-by: Neil Armstrong <narmstrong@xxxxxxxxxxxx>
> ---
> arch/arm64/boot/dts/amlogic/meson-g12a.dtsi | 13 +++++++++++++
> 1 file changed, 13 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/amlogic/meson-g12a.dtsi b/arch/arm64/boot/dts/amlogic/meson-g12a.dtsi
> index 8fcdd12f684a..19ef6a467d63 100644
> --- a/arch/arm64/boot/dts/amlogic/meson-g12a.dtsi
> +++ b/arch/arm64/boot/dts/amlogic/meson-g12a.dtsi
> @@ -197,6 +197,19 @@
> };
> };
>
> + apb_efuse: bus@30000 {
> + compatible = "simple-bus";
> + reg = <0x0 0x30000 0x0 0x1000>;
the public S922X datasheet lists the range as FF630000 - FF631FFF
that translates to a size of 0x2000, which the vendor kernel
(kernel/aml-4.9/arch/arm64/boot/dts/amlogic/mesong12a.dtsi from
buildroot-openlinux-A113-201901) seems to use as well:
io_efuse_base{
reg = <0x0 0xff630000 0x0 0x2000>;
};

where did you take the size from?

> + #address-cells = <2>;
> + #size-cells = <2>;
> + ranges = <0x0 0x0 0x0 0x30000 0x0 0x1000>;
(see reg property above)

> +
> + hwrng: rng {
this should be rng@218


Martin