Neil Armstrong <[email protected]> writes: > On 20/05/2019 19:45, Martin Blumenstingl wrote: >> Hi Neil, >> >> On Mon, May 20, 2019 at 3:49 PM Neil Armstrong <[email protected]> >> 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 <[email protected]> >>> --- >>> 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? > > Another typo, it's 0x2000. > >> >>> + #address-cells = <2>; >>> + #size-cells = <2>; >>> + ranges = <0x0 0x0 0x0 0x30000 0x0 0x1000>; >> (see reg property above) >> >>> + >>> + hwrng: rng { >> this should be rng@218 > > Exact. >
Will wait for v2 on this one, Kevin

