All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 00/12] bcm63xx-rng conversion to bcm2835-rng
@ 2017-11-08  0:44 ` Florian Fainelli
  0 siblings, 0 replies; 100+ messages in thread
From: Florian Fainelli @ 2017-11-08  0:44 UTC (permalink / raw)
  To: linux-kernel
  Cc: Florian Fainelli, Matt Mackall, Herbert Xu, Rob Herring,
	Mark Rutland, Ray Jui, Scott Branden,
	maintainer:BROADCOM BCM281XX/BCM11XXX/BCM216XX ARM ARCHITE...,
	Eric Anholt, Stefan Wahren, PrasannaKumar Muralidharan,
	Russell King, Krzysztof Kozlowski, Harald Freudenberger,
	Sean Wang, Martin Kaiser, Steffen Trumtrar, linux-crypto

Hi,

As it usually happens when there is a fair amount of HW IP block re-use,
competing implementations show up. In that case the BCM2835 HWRNG driver and
the BCM63xx RNG driver have exactly the same register offsets and this is
indeed the same piece of HW.

This patch series first prepares the bcm2835-rng to be more future proof and
support newer platforms, and the last part brings in what is necessary to
migrate the bcm63xx-rng over to bcm2835-rng. Finally we delete bcm63xx-rng
completely.

The reason why BCM2835 RNG was kept over BCM63xx RNG is because the former
deals correctly with a warm up count and the number of words available in the
FIFO size.

Thanks!

Changes in v2:

- rework the logic about how we manage the optional clock
- use pdev->name for the rng.name member

Florian Fainelli (12):
  hwrng: bcm2835-rng: Obtain base register via resource
  hwrng: bcm2835-rng: Define a driver private context
  hwrng: bcm2835-rng: Move enabling to hwrng::init
  hwrng: bcm2835-rng: Implementation cleanup callback
  hwrng: bcm2835-rng: Use device managed helpers
  hwrng: bcm2835-rng: Rework interrupt masking
  hwrng: bcm2835-rng: Manage an optional clock
  hwrng: bcm2835-rng: Abstract I/O accessors
  hwrng: bcm2835-rng: Add Broadcom MIPS I/O accessors
  dt-bindings: rng: Incorporate brcm,bcm6368.txt binding
  hwrng: bcm2835-rng: Enable BCM2835 RNG to work on BCM63xx platforms
  hwrng: bcm63xx-rng: Remove since bcm2835-rng takes over

 .../devicetree/bindings/rng/brcm,bcm2835.txt       |  22 ++-
 .../devicetree/bindings/rng/brcm,bcm6368.txt       |  17 ---
 drivers/char/hw_random/Kconfig                     |  20 +--
 drivers/char/hw_random/Makefile                    |   1 -
 drivers/char/hw_random/bcm2835-rng.c               | 167 +++++++++++++++------
 drivers/char/hw_random/bcm63xx-rng.c               | 154 -------------------
 6 files changed, 140 insertions(+), 241 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/rng/brcm,bcm6368.txt
 delete mode 100644 drivers/char/hw_random/bcm63xx-rng.c

-- 
2.9.3

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

end of thread, other threads:[~2017-11-30  7:19 UTC | newest]

Thread overview: 100+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-11-08  0:44 [PATCH v2 00/12] bcm63xx-rng conversion to bcm2835-rng Florian Fainelli
2017-11-08  0:44 ` Florian Fainelli
2017-11-08  0:44 ` Florian Fainelli
2017-11-08  0:44 ` Florian Fainelli
     [not found] ` <20171108004449.32730-1-f.fainelli-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2017-11-08  0:44   ` [PATCH v2 01/12] hwrng: bcm2835-rng: Obtain base register via resource Florian Fainelli
2017-11-08  0:44     ` Florian Fainelli
2017-11-08  0:44     ` Florian Fainelli
2017-11-08  0:44     ` Florian Fainelli
2017-11-29  6:30     ` [v2,01/12] hwrng: bcm2835 - " Herbert Xu
2017-11-29  6:30       ` Herbert Xu
2017-11-29  6:30       ` Herbert Xu
2017-11-29  6:30       ` Herbert Xu
2017-11-29 17:38       ` Florian Fainelli
2017-11-29 17:38         ` Florian Fainelli
2017-11-29 17:38         ` Florian Fainelli
2017-11-29 17:38         ` Florian Fainelli
2017-11-30  7:14         ` Herbert Xu
2017-11-30  7:14           ` Herbert Xu
2017-11-30  7:14           ` Herbert Xu
2017-11-30  7:14           ` Herbert Xu
2017-11-08  0:44   ` [PATCH v2 06/12] hwrng: bcm2835-rng: Rework interrupt masking Florian Fainelli
2017-11-08  0:44     ` Florian Fainelli
2017-11-08  0:44     ` Florian Fainelli
2017-11-08  0:44     ` Florian Fainelli
2017-11-08 18:26     ` Eric Anholt
2017-11-08 18:26       ` Eric Anholt
2017-11-08 18:26       ` Eric Anholt
2017-11-08 18:26       ` Eric Anholt
2017-11-08 18:46     ` Stefan Wahren
2017-11-08 18:46       ` Stefan Wahren
2017-11-08 18:46       ` Stefan Wahren
     [not found]       ` <1086045224.63286.1510166797078-7tX72C7vayboQLBSYMtkGA@public.gmane.org>
2017-11-08 20:41         ` Eric Anholt
2017-11-08 20:41           ` Eric Anholt
2017-11-08 20:41           ` Eric Anholt
2017-11-08  0:44   ` [PATCH v2 08/12] hwrng: bcm2835-rng: Abstract I/O accessors Florian Fainelli
2017-11-08  0:44     ` Florian Fainelli
2017-11-08  0:44     ` Florian Fainelli
2017-11-08  0:44     ` Florian Fainelli
     [not found]     ` <20171108004449.32730-9-f.fainelli-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2017-11-08 18:33       ` Eric Anholt
2017-11-08 18:33         ` Eric Anholt
2017-11-08 18:33         ` Eric Anholt
2017-11-08 18:33         ` Eric Anholt
2017-11-13  4:54     ` [v2,08/12] " Philippe Mathieu-Daudé
2017-11-08  0:44   ` [PATCH v2 09/12] hwrng: bcm2835-rng: Add Broadcom MIPS " Florian Fainelli
2017-11-08  0:44     ` Florian Fainelli
2017-11-08  0:44     ` Florian Fainelli
2017-11-08  0:44     ` Florian Fainelli
2017-11-08  0:44   ` [PATCH v2 12/12] hwrng: bcm63xx-rng: Remove since bcm2835-rng takes over Florian Fainelli
2017-11-08  0:44     ` Florian Fainelli
2017-11-08  0:44     ` Florian Fainelli
2017-11-08  0:44     ` Florian Fainelli
2017-11-08 18:36     ` Eric Anholt
2017-11-08 18:36       ` Eric Anholt
2017-11-08 18:36       ` Eric Anholt
2017-11-08 18:36       ` Eric Anholt
2017-11-08  0:44 ` [PATCH v2 02/12] hwrng: bcm2835-rng: Define a driver private context Florian Fainelli
2017-11-08  0:44   ` Florian Fainelli
2017-11-08  0:44   ` Florian Fainelli
2017-11-08  0:44   ` Florian Fainelli
2017-11-08 18:22   ` Eric Anholt
2017-11-08 18:22     ` Eric Anholt
2017-11-08 18:22     ` Eric Anholt
2017-11-08 18:22     ` Eric Anholt
2017-11-08  0:44 ` [PATCH v2 03/12] hwrng: bcm2835-rng: Move enabling to hwrng::init Florian Fainelli
2017-11-08  0:44   ` Florian Fainelli
2017-11-08  0:44   ` Florian Fainelli
2017-11-08  0:44   ` Florian Fainelli
2017-11-08  0:44 ` [PATCH v2 04/12] hwrng: bcm2835-rng: Implementation cleanup callback Florian Fainelli
2017-11-08  0:44   ` Florian Fainelli
2017-11-08  0:44   ` Florian Fainelli
2017-11-08  0:44   ` Florian Fainelli
2017-11-08  0:44 ` [PATCH v2 05/12] hwrng: bcm2835-rng: Use device managed helpers Florian Fainelli
2017-11-08  0:44   ` Florian Fainelli
2017-11-08  0:44   ` Florian Fainelli
2017-11-08  0:44   ` Florian Fainelli
2017-11-08 18:24   ` Eric Anholt
2017-11-08 18:24     ` Eric Anholt
2017-11-08 18:24     ` Eric Anholt
2017-11-08 18:24     ` Eric Anholt
2017-11-08  0:44 ` [PATCH v2 07/12] hwrng: bcm2835-rng: Manage an optional clock Florian Fainelli
2017-11-08  0:44   ` Florian Fainelli
2017-11-08  0:44   ` Florian Fainelli
2017-11-08  0:44   ` Florian Fainelli
2017-11-08 18:31   ` Eric Anholt
2017-11-08 18:31     ` Eric Anholt
2017-11-08 18:31     ` Eric Anholt
2017-11-08 18:31     ` Eric Anholt
2017-11-08 19:19   ` Stefan Wahren
2017-11-08 19:19     ` Stefan Wahren
2017-11-08 19:19     ` Stefan Wahren
2017-11-08 19:23     ` Russell King - ARM Linux
2017-11-08 19:23       ` Russell King - ARM Linux
2017-11-08  0:44 ` [PATCH v2 10/12] dt-bindings: rng: Incorporate brcm,bcm6368.txt binding Florian Fainelli
2017-11-08  0:44   ` [PATCH v2 10/12] dt-bindings: rng: Incorporate brcm, bcm6368.txt binding Florian Fainelli
2017-11-08  0:44   ` [PATCH v2 10/12] dt-bindings: rng: Incorporate brcm,bcm6368.txt binding Florian Fainelli
2017-11-08  0:44   ` Florian Fainelli
2017-11-08  0:44 ` [PATCH v2 11/12] hwrng: bcm2835-rng: Enable BCM2835 RNG to work on BCM63xx platforms Florian Fainelli
2017-11-08  0:44   ` Florian Fainelli
2017-11-08  0:44   ` Florian Fainelli
2017-11-08  0:44   ` Florian Fainelli

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.