2019-11-18 08:03:41

by Stephen Brennan

[permalink] [raw]
Subject: [PATCH 3/3] ARM: dts: bcm2711: Enable HWRNG support

From: Stefan Wahren <[email protected]>

This enables hardware random number generator support for the BCM2711
on the Raspberry Pi 4 board.

Signed-off-by: Stefan Wahren <[email protected]>
Signed-off-by: Stephen Brennan <[email protected]>
---
arch/arm/boot/dts/bcm2711.dtsi | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/arch/arm/boot/dts/bcm2711.dtsi b/arch/arm/boot/dts/bcm2711.dtsi
index ac83dac2e6ba..2c19e5de284a 100644
--- a/arch/arm/boot/dts/bcm2711.dtsi
+++ b/arch/arm/boot/dts/bcm2711.dtsi
@@ -92,10 +92,9 @@ pm: watchdog@7e100000 {
};

rng@7e104000 {
+ compatible = "brcm,bcm2711-rng200";
interrupts = <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>;
-
- /* RNG is incompatible with brcm,bcm2835-rng */
- status = "disabled";
+ status = "okay";
};

uart2: serial@7e201400 {
--
2.24.0




2019-11-18 11:46:45

by Nicolas Saenz Julienne

[permalink] [raw]
Subject: Re: [PATCH 3/3] ARM: dts: bcm2711: Enable HWRNG support

Hi Stephen,

On Sun, 2019-11-17 at 23:58 -0800, Stephen Brennan wrote:
> From: Stefan Wahren <[email protected]>
>
> This enables hardware random number generator support for the BCM2711
> on the Raspberry Pi 4 board.
>
> Signed-off-by: Stefan Wahren <[email protected]>
> Signed-off-by: Stephen Brennan <[email protected]>
> ---
> arch/arm/boot/dts/bcm2711.dtsi | 5 ++---
> 1 file changed, 2 insertions(+), 3 deletions(-)
>
> diff --git a/arch/arm/boot/dts/bcm2711.dtsi b/arch/arm/boot/dts/bcm2711.dtsi
> index ac83dac2e6ba..2c19e5de284a 100644
> --- a/arch/arm/boot/dts/bcm2711.dtsi
> +++ b/arch/arm/boot/dts/bcm2711.dtsi
> @@ -92,10 +92,9 @@ pm: watchdog@7e100000 {
> };
>
> rng@7e104000 {
> + compatible = "brcm,bcm2711-rng200";
> interrupts = <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>;
> -
> - /* RNG is incompatible with brcm,bcm2835-rng */
> - status = "disabled";
> + status = "okay";
> };
>
> uart2: serial@7e201400 {

We inherit the reg property from bcm283x.dtsi, on which we only define a size
of 0x10 bytes. I gather from the driver that iproc-rng200's register space is
at least 0x28 bytes big. We should also update the 'reg' property to:

reg = <0x7e104000 0x28>;

Regards,
Nicolas


Attachments:
signature.asc (499.00 B)
This is a digitally signed message part

2019-11-18 19:46:06

by Stefan Wahren

[permalink] [raw]
Subject: Re: [PATCH 3/3] ARM: dts: bcm2711: Enable HWRNG support

Hi,

Am 18.11.19 um 12:44 schrieb Nicolas Saenz Julienne:
> Hi Stephen,
>
> On Sun, 2019-11-17 at 23:58 -0800, Stephen Brennan wrote:
>> From: Stefan Wahren <[email protected]>
>>
>> This enables hardware random number generator support for the BCM2711
>> on the Raspberry Pi 4 board.
>>
>> Signed-off-by: Stefan Wahren <[email protected]>
>> Signed-off-by: Stephen Brennan <[email protected]>
>> ---
>> arch/arm/boot/dts/bcm2711.dtsi | 5 ++---
>> 1 file changed, 2 insertions(+), 3 deletions(-)
>>
>> diff --git a/arch/arm/boot/dts/bcm2711.dtsi b/arch/arm/boot/dts/bcm2711.dtsi
>> index ac83dac2e6ba..2c19e5de284a 100644
>> --- a/arch/arm/boot/dts/bcm2711.dtsi
>> +++ b/arch/arm/boot/dts/bcm2711.dtsi
>> @@ -92,10 +92,9 @@ pm: watchdog@7e100000 {
>> };
>>
>> rng@7e104000 {
>> + compatible = "brcm,bcm2711-rng200";
>> interrupts = <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>;
>> -
>> - /* RNG is incompatible with brcm,bcm2835-rng */
>> - status = "disabled";
>> + status = "okay";
>> };
>>
>> uart2: serial@7e201400 {
> We inherit the reg property from bcm283x.dtsi, on which we only define a size
> of 0x10 bytes. I gather from the driver that iproc-rng200's register space is
> at least 0x28 bytes big. We should also update the 'reg' property to:
>
> reg = <0x7e104000 0x28>;

Thanks for sending and noticing. A proper solution would be to move the
whole rng node from bcm283x.dtsi to bcm283x-common.dtsi and define a
completely new rng node in bcm2711.dtsi.

Regards
Stefan

>
> Regards,
> Nicolas
>
>
> _______________________________________________
> linux-arm-kernel mailing list
> [email protected]
> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

2019-11-19 06:00:06

by Stephen Brennan

[permalink] [raw]
Subject: Re: [PATCH 3/3] ARM: dts: bcm2711: Enable HWRNG support

Hello Stefan & Nicolas,

On Mon Nov 18, 2019 at 8:44 PM, Stefan Wahren wrote:
> Hi,
>
>
> Am 18.11.19 um 12:44 schrieb Nicolas Saenz Julienne:
> > Hi Stephen,
> >
> > On Sun, 2019-11-17 at 23:58 -0800, Stephen Brennan wrote:
> >> From: Stefan Wahren <[email protected]>
> >>
> >> This enables hardware random number generator support for the BCM2711
> >> on the Raspberry Pi 4 board.
> >>
> >> Signed-off-by: Stefan Wahren <[email protected]>
> >> Signed-off-by: Stephen Brennan <[email protected]>
> >> ---
> >> arch/arm/boot/dts/bcm2711.dtsi | 5 ++---
> >> 1 file changed, 2 insertions(+), 3 deletions(-)
> >>
> >> diff --git a/arch/arm/boot/dts/bcm2711.dtsi b/arch/arm/boot/dts/bcm2711.dtsi
> >> index ac83dac2e6ba..2c19e5de284a 100644
> >> --- a/arch/arm/boot/dts/bcm2711.dtsi
> >> +++ b/arch/arm/boot/dts/bcm2711.dtsi
> >> @@ -92,10 +92,9 @@ pm: watchdog@7e100000 {
> >> };
> >>
> >> rng@7e104000 {
> >> + compatible = "brcm,bcm2711-rng200";
> >> interrupts = <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>;
> >> -
> >> - /* RNG is incompatible with brcm,bcm2835-rng */
> >> - status = "disabled";
> >> + status = "okay";
> >> };
> >>
> >> uart2: serial@7e201400 {
> > We inherit the reg property from bcm283x.dtsi, on which we only define a size
> > of 0x10 bytes. I gather from the driver that iproc-rng200's register space is
> > at least 0x28 bytes big. We should also update the 'reg' property to:
> >
> > reg = <0x7e104000 0x28>;
>
>
> Thanks for sending and noticing. A proper solution would be to move the
> whole rng node from bcm283x.dtsi to bcm283x-common.dtsi and define a
> completely new rng node in bcm2711.dtsi.

Thanks both for your time and consideration. I'm not terribly familiar with
device tree source but I think I understand what you'd like here. I'll send
a v2 that does this!

Regards,
Stephen

>
>
> Regards
> Stefan
>
>
> >
> > Regards,
> > Nicolas
> >
> >
> > _______________________________________________
> > linux-arm-kernel mailing list
> > [email protected]
> > http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
>
>
>
>