public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Cyrille Pitchen <cyrille.pitchen@atmel.com>
To: <herbert@gondor.apana.org.au>, <davem@davemloft.net>,
	<nicolas.ferre@atmel.com>
Cc: <linux-crypto@vger.kernel.org>, <linux-kernel@vger.kernel.org>,
	<linux-arm-kernel@lists.infradead.org>,
	Cyrille Pitchen <cyrille.pitchen@atmel.com>
Subject: [PATCH 00/24] crypto: atmel-aes: global rework of the driver
Date: Thu, 17 Dec 2015 17:48:31 +0100	[thread overview]
Message-ID: <cover.1450366831.git.cyrille.pitchen@atmel.com> (raw)

Hi all,

this series of patches is a global rework of the Atmel driver. Some
patches improve the performances whereas others fix some bugs like
the counter overflow in CTR mode.

It also updates some part of the code to make them more generic. For
instance the crypto request queue management supports both async block
cipher and AEAD requests, which allows us to add support the the GCM
mode. The support of the GCM mode is only available on sama5d4 and later.

This series is based on linux-next and was tested on sama5d2, sama5d3 and
sama5d4 boards. The driver implementation was validated using the tcrypt
module running modes:
- 10: ecb(aes), cbc(aes), ctr(aes), rfc3686(ctr(aes))
- 35: gcm(aes)

tcrypt speed test was run with modes:
- 211: rfc4106(gcm(aes)), gcm(aes)
- 500: ecb(aes), cbc(aes), ctr(aes), cfb(aes), ofc(aes), rfc3686(ctr(aes))

Finally iperf was run for at least 5 mins over an IPSEC/L2TP tunnel using
the rfc4106(gcm(aes)) cipher suite.


Changelog:

v1: initial version


Cyrille Pitchen (23):
  crypto: atmel-aes: constify value argument of atmel_aes_write_n()
  crypto: atmel-aes: change algorithm priorities
  crypto: atmel-aes: fix unregistration order of crypto algorithms
  crypto: atmel-aes: remove unused header includes
  crypto: atmel-aes: propagate error from atmel_aes_hw_version_init()
  crypto: atmel-aes: change atmel_aes_write_ctrl() signature
  crypto: atmel-aes: make crypto request queue management more generic
  crypto: atmel-aes: remove useless write in the Control Register
  crypto: atmel-aes: simplify the configuration of the AES IP
  crypto: atmel-aes: rework crypto request completion
  crypto: atmel-aes: remove unused 'err' member of struct atmel_aes_dev
  crypto: atmel-aes: reduce latency of DMA completion
  crypto: atmel-aes: remove useless AES_FLAGS_DMA flag
  crypto: atmel-aes: fix atmel_aes_remove()
  crypto: atmel-aes: improve performances of data transfer
  crypto: atmel-aes: use SIZE_IN_WORDS() helper macro
  crypto: atmel-aes: fix typo and indentation
  crypto: atmel-aes: create sections to regroup functions by usage
  crypto: atmel-aes: fix atmel-ctr-aes driver for RFC 3686
  crypto: atmel-aes: fix the counter overflow in CTR mode
  crypto: atmel-aes: change the DMA threshold
  crypto: atmel-aes: add support to GCM mode
  crypto: atmel-aes: add debug facilities to monitor register accesses.

Leilei Zhao (1):
  crypto: atmel-aes: add new version

 drivers/crypto/Kconfig          |    1 +
 drivers/crypto/atmel-aes-regs.h |   10 +
 drivers/crypto/atmel-aes.c      | 1843 +++++++++++++++++++++++++++------------
 3 files changed, 1278 insertions(+), 576 deletions(-)

-- 
1.8.2.2


             reply	other threads:[~2015-12-17 16:48 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-12-17 16:48 Cyrille Pitchen [this message]
2015-12-17 16:48 ` [PATCH 01/24] crypto: atmel-aes: add new version Cyrille Pitchen
2015-12-17 16:48 ` [PATCH 02/24] crypto: atmel-aes: constify value argument of atmel_aes_write_n() Cyrille Pitchen
2015-12-17 16:48 ` [PATCH 03/24] crypto: atmel-aes: change algorithm priorities Cyrille Pitchen
2015-12-17 16:48 ` [PATCH 04/24] crypto: atmel-aes: fix unregistration order of crypto algorithms Cyrille Pitchen
2015-12-17 16:48 ` [PATCH 05/24] crypto: atmel-aes: remove unused header includes Cyrille Pitchen
2015-12-17 16:48 ` [PATCH 06/24] crypto: atmel-aes: propagate error from atmel_aes_hw_version_init() Cyrille Pitchen
2015-12-17 16:48 ` [PATCH 07/24] crypto: atmel-aes: change atmel_aes_write_ctrl() signature Cyrille Pitchen
2015-12-17 16:48 ` [PATCH 08/24] crypto: atmel-aes: make crypto request queue management more generic Cyrille Pitchen
2015-12-17 16:48 ` [PATCH 09/24] crypto: atmel-aes: remove useless write in the Control Register Cyrille Pitchen
2015-12-17 16:48 ` [PATCH 10/24] crypto: atmel-aes: simplify the configuration of the AES IP Cyrille Pitchen
2015-12-17 16:48 ` [PATCH 11/24] crypto: atmel-aes: rework crypto request completion Cyrille Pitchen
2015-12-17 16:48 ` [PATCH 12/24] crypto: atmel-aes: remove unused 'err' member of struct atmel_aes_dev Cyrille Pitchen
2015-12-17 16:48 ` [PATCH 13/24] crypto: atmel-aes: reduce latency of DMA completion Cyrille Pitchen
2015-12-17 16:48 ` [PATCH 14/24] crypto: atmel-aes: remove useless AES_FLAGS_DMA flag Cyrille Pitchen
2015-12-17 16:48 ` [PATCH 15/24] crypto: atmel-aes: fix atmel_aes_remove() Cyrille Pitchen
2015-12-17 17:13 ` [PATCH 16/24] crypto: atmel-aes: improve performances of data transfer Cyrille Pitchen
2015-12-17 17:13 ` [PATCH 17/24] crypto: atmel-aes: use SIZE_IN_WORDS() helper macro Cyrille Pitchen
2015-12-17 17:13 ` [PATCH 18/24] crypto: atmel-aes: fix typo and indentation Cyrille Pitchen
2015-12-17 17:13 ` [PATCH 19/24] crypto: atmel-aes: create sections to regroup functions by usage Cyrille Pitchen
2015-12-17 17:13 ` [PATCH 20/24] crypto: atmel-aes: fix atmel-ctr-aes driver for RFC 3686 Cyrille Pitchen
2015-12-17 17:13 ` [PATCH 21/24] crypto: atmel-aes: fix the counter overflow in CTR mode Cyrille Pitchen
2015-12-17 17:13 ` [PATCH 22/24] crypto: atmel-aes: change the DMA threshold Cyrille Pitchen
2015-12-17 17:13 ` [PATCH 23/24] crypto: atmel-aes: add support to GCM mode Cyrille Pitchen
2015-12-17 17:13 ` [PATCH 24/24] crypto: atmel-aes: add debug facilities to monitor register accesses Cyrille Pitchen
2015-12-23 10:24 ` [PATCH 00/24] crypto: atmel-aes: global rework of the driver Herbert Xu

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=cover.1450366831.git.cyrille.pitchen@atmel.com \
    --to=cyrille.pitchen@atmel.com \
    --cc=davem@davemloft.net \
    --cc=herbert@gondor.apana.org.au \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-crypto@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=nicolas.ferre@atmel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox