[PATCH v3 0/7] crypto: sun4i-ss: prevent always fallback for ciphers

From: Corentin Labbe
Date: Mon Nov 16 2020 - 08:54:49 EST


Hello

For help testing on "crypto: sun4i-ss - Fix sparse endianness markers",
I have added "stats" support like other allwinner's crypto drivers.
Seeing stats showed a clear problem, the ciphers function were not used
at all.
This is due to the not-inialized need_fallback which is "init" as true
everytime.
So basicly, since the patch introduced it, this probem hidden some bugs.

This serie fixes all hidden problems, then fix the initialization of
"need_fallback" and then add the stats like other allwinner drivers.

Regards

Changes since v2:
- patch #1: move buf/bufo out of function for reducing stack usage
- patch #4: use writesl()
- patch #6: use IS_ENABLED instead of #ifdef

Changes since v1:
- patch #4 is sufficient to fix BE problem (removed todo)

Corentin Labbe (7):
crypto: sun4i-ss: linearize buffers content must be kept
crypto: sun4i-ss: checking sg length is not sufficient
crypto: sun4i-ss: IV register does not work on A10 and A13
crypto: sun4i-ss: handle BigEndian for cipher
crypto: sun4i-ss: initialize need_fallback
crypto: sun4i-ss: enabled stats via debugfs
crypto: sun4i-ss: add SPDX header and remove blank lines

drivers/crypto/allwinner/Kconfig | 9 ++
.../allwinner/sun4i-ss/sun4i-ss-cipher.c | 87 +++++++++++++------
.../crypto/allwinner/sun4i-ss/sun4i-ss-core.c | 56 ++++++++++++
.../crypto/allwinner/sun4i-ss/sun4i-ss-hash.c | 6 ++
.../crypto/allwinner/sun4i-ss/sun4i-ss-prng.c | 6 ++
drivers/crypto/allwinner/sun4i-ss/sun4i-ss.h | 8 ++
6 files changed, 146 insertions(+), 26 deletions(-)

--
2.26.2