linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 0/8] crypto: caam - add support for LS1043A SoC
@ 2016-05-05 15:33 Horia Geantă
  2016-05-05 15:35 ` [PATCH v2 1/8] asm-generic/io.h: allow barriers in io{read,write}{16,32}be Horia Geantă
                   ` (8 more replies)
  0 siblings, 9 replies; 21+ messages in thread
From: Horia Geantă @ 2016-05-05 15:33 UTC (permalink / raw)
  To: Herbert Xu, Arnd Bergmann, Catalin Marinas, Will Deacon,
	Benjamin Herrenschmidt, Paul Mackerras, Michael Ellerman,
	Rob Herring, Olof Johansson
  Cc: linux-crypto, linux-kernel, David S. Miller, Cristian Stoica,
	Scott Wood, Alexandru Porosanu, Tudor Ambarus

v2:
As suggested by Arnd, patch 1 fixes io{read,write}{16,32}be accessors
to prevent the case when {read,write}{w,l} are overriden by arch-specific
ones having barriers, while the BE accessors previously mentioned are not
(thus behaving differently, having no barriers).

Hi,

[Patches 2-4 add io{read,write}64[be] accessors (generic, arm64, ppc64),
such that CAAM's accessors in regs.h are simplified a bit.
Patch 8 adds crypto node for LS1043A platform.
Let me know if it's ok to go with these through the cryptodev-2.6 tree.]

This is a follow-up on the following RFC patch set:
crypto: caam - Revamp I/O accessors
https://www.mail-archive.com/linux-crypto@vger.kernel.org/msg15878.html

There are platforms such as LS1043A (or LS1012A) where core endianness
does not match CAAM/SEC endianness (LE vs. BE).
Add support in caam driver for these cases.

Current patch set detects device endianness at runtime (as opposed to
compile-time endianness), in order to support multiplatform kernels.
Detection of device endianness is not device-tree based.
Instead, SSTA ("SEC STAtus") register has a property such that
reading it in any endianness and masking it properly, it's possible
to deduce device endianness.

The performance drop due to the runtime detection is < 1.0%.
(An alternative implementation using function pointers has been tried,
but lead to a bigger performance drop.)

Thanks,
Horia

Cristian Stoica (1):
  crypto: caam - fix offset field in hw sg entries

Horia Geantă (7):
  asm-generic/io.h: allow barriers in io{read,write}{16,32}be
  asm-generic/io.h: add io{read,write}64 accessors
  arm64: add io{read,write}64be accessors
  powerpc: add io{read,write}64 accessors
  crypto: caam - handle core endianness != caam endianness
  crypto: caam - add ARCH_LAYERSCAPE to supported architectures
  arm64: dts: ls1043a: add crypto node

 arch/arm64/boot/dts/freescale/fsl-ls1043a-rdb.dts |   4 +
 arch/arm64/boot/dts/freescale/fsl-ls1043a.dtsi    |  43 ++++++
 arch/arm64/include/asm/io.h                       |   4 +-
 arch/powerpc/kernel/iomap.c                       |  24 ++++
 drivers/crypto/caam/Kconfig                       |   6 +-
 drivers/crypto/caam/caamhash.c                    |   5 +-
 drivers/crypto/caam/ctrl.c                        | 125 +++++++++++-------
 drivers/crypto/caam/desc.h                        |   9 +-
 drivers/crypto/caam/desc_constr.h                 |  44 ++++---
 drivers/crypto/caam/jr.c                          |  22 ++--
 drivers/crypto/caam/pdb.h                         | 137 +++++++++++++++-----
 drivers/crypto/caam/regs.h                        | 151 +++++++++++++++-------
 drivers/crypto/caam/sg_sw_sec4.h                  |  17 +--
 include/asm-generic/io.h                          |  71 +++++++++-
 include/asm-generic/iomap.h                       |   8 ++
 15 files changed, 494 insertions(+), 176 deletions(-)

-- 
2.4.4

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

end of thread, other threads:[~2016-05-17  0:08 UTC | newest]

Thread overview: 21+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-05-05 15:33 [PATCH v2 0/8] crypto: caam - add support for LS1043A SoC Horia Geantă
2016-05-05 15:35 ` [PATCH v2 1/8] asm-generic/io.h: allow barriers in io{read,write}{16,32}be Horia Geantă
2016-05-05 16:29   ` Arnd Bergmann
2016-05-05 15:35 ` [PATCH v2 2/8] asm-generic/io.h: add io{read,write}64 accessors Horia Geantă
2016-05-05 16:29   ` Arnd Bergmann
2016-05-10  9:33   ` Herbert Xu
2016-05-10  9:34     ` Herbert Xu
2016-05-05 15:36 ` [PATCH v2 3/8] arm64: add io{read,write}64be accessors Horia Geantă
2016-05-05 17:25   ` Catalin Marinas
2016-05-05 15:36 ` [PATCH v2 4/8] powerpc: add io{read,write}64 accessors Horia Geantă
2016-05-09  8:20   ` Horia Ioan Geanta Neag
2016-05-10 18:50     ` Scott Wood
2016-05-11  0:35       ` Michael Ellerman
2016-05-05 15:36 ` [PATCH v2 5/8] crypto: caam - fix offset field in hw sg entries Horia Geantă
2016-05-05 15:36 ` [PATCH v2 6/8] crypto: caam - handle core endianness != caam endianness Horia Geantă
2016-05-16 14:52   ` Tudor-Dan Ambarus
2016-05-05 15:36 ` [PATCH v2 7/8] crypto: caam - add ARCH_LAYERSCAPE to supported architectures Horia Geantă
2016-05-05 15:36 ` [PATCH v2 8/8] arm64: dts: ls1043a: add crypto node Horia Geantă
2016-05-09  8:28   ` Horia Ioan Geanta Neag
2016-05-16 15:49 ` [PATCH v2 0/8] crypto: caam - add support for LS1043A SoC Horia Ioan Geanta Neag
2016-05-17  0:08   ` Herbert Xu

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).