[PATCH v4 0/8] crypto: sun4i-ss: prevent always fallback for ciphers

Corentin Labbe
2020-12-14T20:04:09Z

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 v3:
- patch #2: Rewrite test as suggested by David Laight
- patch #7: removed all ifdef CONFIG_CRYPTO_DEV_SUN4I_SS_DEBUG
- added kmap patch

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 (8):
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: fix kmap usage
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 | 196 +++++++++++-------
.../crypto/allwinner/sun4i-ss/sun4i-ss-core.c | 52 +++++
.../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, 207 insertions(+), 70 deletions(-)

--
2.26.2