Message ID | 20190520134817.25435-4-narmstrong@baylibre.com (mailing list archive) |
---|---|
State | Changes Requested |
Headers | show |
Series | arm64: dts: meson: g12a: add drive strength and hwrng | expand |
Hi Neil, On Mon, May 20, 2019 at 3:49 PM Neil Armstrong <narmstrong@baylibre.com> 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@baylibre.com> > --- > 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
On 20/05/2019 19:45, Martin Blumenstingl wrote: > Hi Neil, > > On Mon, May 20, 2019 at 3:49 PM Neil Armstrong <narmstrong@baylibre.com> 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@baylibre.com> >> --- >> 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. > > > Martin > Neil
Neil Armstrong <narmstrong@baylibre.com> writes: > On 20/05/2019 19:45, Martin Blumenstingl wrote: >> Hi Neil, >> >> On Mon, May 20, 2019 at 3:49 PM Neil Armstrong <narmstrong@baylibre.com> 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@baylibre.com> >>> --- >>> 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
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>; + #address-cells = <2>; + #size-cells = <2>; + ranges = <0x0 0x0 0x0 0x30000 0x0 0x1000>; + + hwrng: rng { + compatible = "amlogic,meson-rng"; + reg = <0x0 0x218 0x0 0x4>; + }; + }; + periphs: bus@34400 { compatible = "simple-bus"; reg = <0x0 0x34400 0x0 0x400>;
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@baylibre.com> --- arch/arm64/boot/dts/amlogic/meson-g12a.dtsi | 13 +++++++++++++ 1 file changed, 13 insertions(+)