public inbox for devicetree@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH] Support for RNGB on i.MX6 ULL
@ 2020-07-27 10:57 Christian Eggers
  2020-07-27 10:57 ` [PATCH 1/3] ARM: dts: imx6ull: Add rngb node Christian Eggers
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: Christian Eggers @ 2020-07-27 10:57 UTC (permalink / raw)
  To: Rob Herring, Shawn Guo, Sascha Hauer
  Cc: Pengutronix Kernel Team, Fabio Estevam, NXP Linux Team,
	Matt Mackall, Herbert Xu, Arnd Bergmann, Greg Kroah-Hartman,
	Martin Kaiser, PrasannaKumar Muralidharan, Christian Eggers,
	Dong Aisheng, Anson Huang, devicetree, linux-arm-kernel,
	linux-kernel, linux-crypto

This small series adds support for the Random Number Generator on 
the i.MX6 ULL SoC.



^ permalink raw reply	[flat|nested] 5+ messages in thread

* [PATCH 1/3] ARM: dts: imx6ull: Add rngb node
  2020-07-27 10:57 [PATCH] Support for RNGB on i.MX6 ULL Christian Eggers
@ 2020-07-27 10:57 ` Christian Eggers
  2020-07-27 11:36   ` Fabio Estevam
  2020-07-27 10:57 ` [PATCH 2/3] hwrng: imx-rngc - make clock optional Christian Eggers
  2020-07-27 10:57 ` [PATCH 3/3] hwrng: imx-rngc - setup default RNG quality Christian Eggers
  2 siblings, 1 reply; 5+ messages in thread
From: Christian Eggers @ 2020-07-27 10:57 UTC (permalink / raw)
  To: Rob Herring, Shawn Guo, Sascha Hauer
  Cc: Christian Eggers, Pengutronix Kernel Team, Fabio Estevam,
	NXP Linux Team, Matt Mackall, Herbert Xu, Arnd Bergmann,
	Greg Kroah-Hartman, Martin Kaiser, PrasannaKumar Muralidharan,
	Anson Huang, devicetree, linux-arm-kernel, linux-kernel,
	linux-crypto

The RNGB block on 6ull has no major differences, but it has no
switchable clock.

Signed-off-by: Christian Eggers <ceggers@arri.de>
---
 arch/arm/boot/dts/imx6ull.dtsi | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/arch/arm/boot/dts/imx6ull.dtsi b/arch/arm/boot/dts/imx6ull.dtsi
index fcde7f77ae42..3d021b304a83 100644
--- a/arch/arm/boot/dts/imx6ull.dtsi
+++ b/arch/arm/boot/dts/imx6ull.dtsi
@@ -68,6 +68,12 @@ dcp: crypto@2280000 {
 				clock-names = "dcp";
 			};
 
+			rngb: rng@2284000 {
+				compatible = "fsl,imx6ull-dcp", "fsl,imx25-rngb";
+				reg = <0x02284000 0x4000>;
+				interrupts = <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>;
+			};
+
 			iomuxc_snvs: iomuxc-snvs@2290000 {
 				compatible = "fsl,imx6ull-iomuxc-snvs";
 				reg = <0x02290000 0x4000>;
-- 
Christian Eggers
Embedded software developer

Arnold & Richter Cine Technik GmbH & Co. Betriebs KG
Sitz: Muenchen - Registergericht: Amtsgericht Muenchen - Handelsregisternummer: HRA 57918
Persoenlich haftender Gesellschafter: Arnold & Richter Cine Technik GmbH
Sitz: Muenchen - Registergericht: Amtsgericht Muenchen - Handelsregisternummer: HRB 54477
Geschaeftsfuehrer: Dr. Michael Neuhaeuser; Stephan Schenk; Walter Trauninger; Markus Zeiler


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [PATCH 2/3] hwrng: imx-rngc - make clock optional
  2020-07-27 10:57 [PATCH] Support for RNGB on i.MX6 ULL Christian Eggers
  2020-07-27 10:57 ` [PATCH 1/3] ARM: dts: imx6ull: Add rngb node Christian Eggers
@ 2020-07-27 10:57 ` Christian Eggers
  2020-07-27 10:57 ` [PATCH 3/3] hwrng: imx-rngc - setup default RNG quality Christian Eggers
  2 siblings, 0 replies; 5+ messages in thread
From: Christian Eggers @ 2020-07-27 10:57 UTC (permalink / raw)
  To: Rob Herring, Shawn Guo, Sascha Hauer
  Cc: Christian Eggers, Pengutronix Kernel Team, Fabio Estevam,
	NXP Linux Team, Matt Mackall, Herbert Xu, Arnd Bergmann,
	Greg Kroah-Hartman, Martin Kaiser, PrasannaKumar Muralidharan,
	Anson Huang, devicetree, linux-arm-kernel, linux-kernel,
	linux-crypto

On i.MX6 ULL the RNGB has no switchable clock.

Signed-off-by: Christian Eggers <ceggers@arri.de>
---
 drivers/char/hw_random/imx-rngc.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/char/hw_random/imx-rngc.c b/drivers/char/hw_random/imx-rngc.c
index 9c47e431ce90..f9c5ddd0276b 100644
--- a/drivers/char/hw_random/imx-rngc.c
+++ b/drivers/char/hw_random/imx-rngc.c
@@ -245,7 +245,7 @@ static int imx_rngc_probe(struct platform_device *pdev)
 	if (IS_ERR(rngc->base))
 		return PTR_ERR(rngc->base);
 
-	rngc->clk = devm_clk_get(&pdev->dev, NULL);
+	rngc->clk = devm_clk_get_optional(&pdev->dev, NULL);
 	if (IS_ERR(rngc->clk)) {
 		dev_err(&pdev->dev, "Can not get rng_clk\n");
 		return PTR_ERR(rngc->clk);
-- 
Christian Eggers
Embedded software developer

Arnold & Richter Cine Technik GmbH & Co. Betriebs KG
Sitz: Muenchen - Registergericht: Amtsgericht Muenchen - Handelsregisternummer: HRA 57918
Persoenlich haftender Gesellschafter: Arnold & Richter Cine Technik GmbH
Sitz: Muenchen - Registergericht: Amtsgericht Muenchen - Handelsregisternummer: HRB 54477
Geschaeftsfuehrer: Dr. Michael Neuhaeuser; Stephan Schenk; Walter Trauninger; Markus Zeiler


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [PATCH 3/3] hwrng: imx-rngc - setup default RNG quality
  2020-07-27 10:57 [PATCH] Support for RNGB on i.MX6 ULL Christian Eggers
  2020-07-27 10:57 ` [PATCH 1/3] ARM: dts: imx6ull: Add rngb node Christian Eggers
  2020-07-27 10:57 ` [PATCH 2/3] hwrng: imx-rngc - make clock optional Christian Eggers
@ 2020-07-27 10:57 ` Christian Eggers
  2 siblings, 0 replies; 5+ messages in thread
From: Christian Eggers @ 2020-07-27 10:57 UTC (permalink / raw)
  To: Rob Herring, Shawn Guo, Sascha Hauer
  Cc: Christian Eggers, Pengutronix Kernel Team, Fabio Estevam,
	NXP Linux Team, Matt Mackall, Herbert Xu, Arnd Bergmann,
	Greg Kroah-Hartman, Martin Kaiser, PrasannaKumar Muralidharan,
	Anson Huang, devicetree, linux-arm-kernel, linux-kernel,
	linux-crypto

When hw_random device's quality is non-zero, it will automatically fill
the kernel's entropy pool at boot.  For this purpose, one conservative
quality value is being picked up as the default value.

Signed-off-by: Christian Eggers <ceggers@arri.de>
---
 drivers/char/hw_random/imx-rngc.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/char/hw_random/imx-rngc.c b/drivers/char/hw_random/imx-rngc.c
index f9c5ddd0276b..a62ff78bd7ea 100644
--- a/drivers/char/hw_random/imx-rngc.c
+++ b/drivers/char/hw_random/imx-rngc.c
@@ -285,6 +285,7 @@ static int imx_rngc_probe(struct platform_device *pdev)
 	rngc->rng.init = imx_rngc_init;
 	rngc->rng.read = imx_rngc_read;
 	rngc->rng.cleanup = imx_rngc_cleanup;
+	rngc->rng.quality = 900;
 
 	rngc->dev = &pdev->dev;
 	platform_set_drvdata(pdev, rngc);
-- 
Christian Eggers
Embedded software developer

Arnold & Richter Cine Technik GmbH & Co. Betriebs KG
Sitz: Muenchen - Registergericht: Amtsgericht Muenchen - Handelsregisternummer: HRA 57918
Persoenlich haftender Gesellschafter: Arnold & Richter Cine Technik GmbH
Sitz: Muenchen - Registergericht: Amtsgericht Muenchen - Handelsregisternummer: HRB 54477
Geschaeftsfuehrer: Dr. Michael Neuhaeuser; Stephan Schenk; Walter Trauninger; Markus Zeiler


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [PATCH 1/3] ARM: dts: imx6ull: Add rngb node
  2020-07-27 10:57 ` [PATCH 1/3] ARM: dts: imx6ull: Add rngb node Christian Eggers
@ 2020-07-27 11:36   ` Fabio Estevam
  0 siblings, 0 replies; 5+ messages in thread
From: Fabio Estevam @ 2020-07-27 11:36 UTC (permalink / raw)
  To: Christian Eggers, Horia Geanta Neag
  Cc: Rob Herring, Shawn Guo, Sascha Hauer, Pengutronix Kernel Team,
	NXP Linux Team, Matt Mackall, Herbert Xu, Arnd Bergmann,
	Greg Kroah-Hartman, Martin Kaiser, PrasannaKumar Muralidharan,
	Anson Huang,
	open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS,
	moderated list:ARM/FREESCALE IMX / MXC ARM ARCHITECTURE,
	linux-kernel, open list:HARDWARE RANDOM NUMBER GENERATOR CORE

Hi Christian,

On Mon, Jul 27, 2020 at 8:00 AM Christian Eggers <ceggers@arri.de> wrote:
>
> The RNGB block on 6ull has no major differences, but it has no
> switchable clock.

Horia has already sent a patch series that adds imx6ull rngb support:
https://lkml.org/lkml/2020/7/23/173

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2020-07-27 11:36 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-07-27 10:57 [PATCH] Support for RNGB on i.MX6 ULL Christian Eggers
2020-07-27 10:57 ` [PATCH 1/3] ARM: dts: imx6ull: Add rngb node Christian Eggers
2020-07-27 11:36   ` Fabio Estevam
2020-07-27 10:57 ` [PATCH 2/3] hwrng: imx-rngc - make clock optional Christian Eggers
2020-07-27 10:57 ` [PATCH 3/3] hwrng: imx-rngc - setup default RNG quality Christian Eggers

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox