From: Guanjun <guanjun@xxxxxxxxxxxxxxxxx> Hi, This patch series aims to add drivers for Alibaba YCC (Yitian Cryptography Complex) cryptographic accelerator. Enables the on-chip cryptographic accelerator of Alibaba Yitian SoCs which is based on ARMv9 architecture. It includes PCIe enabling, skcipher, aead, rsa, sm2 support. Additionally, this patchset has rebase Linux upstream tree and ensure no compile warnings. -- As Herbert's comments said in v2. Please help to review. Thanks, Guanjun. Change log: v2 -> v3: - [01/09] Fix the lost "$" in Makefile - [08/09] Fix compile warnings when both CONFIG_CRYPTO_SM2 and CONFIG_CRYPTO_DEV_YCC are enabled v1 RESEND -> v2: - [01/09] Remove char device that is not used now. v1 -> v1 RESEND: - [01/09] Adjust the Kconfig entry in alphabetical order - [05/09][07/09][08/09] Adjust the format of algorithm names v2: https://lore.kernel.org/all/1664350687-47330-1-git-send-email-guanjun@xxxxxxxxxxxxxxxxx/ v1: https://lore.kernel.org/all/1661334621-44413-1-git-send-email-guanjun@xxxxxxxxxxxxxxxxx/ v1 RESEND: https://lore.kernel.org/all/1662435353-114812-1-git-send-email-guanjun@xxxxxxxxxxxxxxxxx/ Guanjun (3): crypto/ycc: Add skcipher algorithm support crypto/ycc: Add aead algorithm support crypto/ycc: Add rsa algorithm support Xuchun Shang (1): crypto/ycc: Add sm2 algorithm support Zelin Deng (5): crypto/ycc: Add YCC (Yitian Cryptography Complex) accelerator driver crypto/ycc: Add ycc ring configuration crypto/ycc: Add irq support for ycc kernel rings crypto/ycc: Add device error handling support for ycc hw errors MAINTAINERS: Add Yitian Cryptography Complex (YCC) driver maintainer entry MAINTAINERS | 8 + drivers/crypto/Kconfig | 2 + drivers/crypto/Makefile | 1 + drivers/crypto/ycc/Kconfig | 18 + drivers/crypto/ycc/Makefile | 7 + drivers/crypto/ycc/sm2signature_asn1.c | 38 ++ drivers/crypto/ycc/sm2signature_asn1.h | 13 + drivers/crypto/ycc/ycc_aead.c | 646 ++++++++++++++++++++++ drivers/crypto/ycc/ycc_algs.h | 176 ++++++ drivers/crypto/ycc/ycc_dev.h | 157 ++++++ drivers/crypto/ycc/ycc_drv.c | 567 ++++++++++++++++++++ drivers/crypto/ycc/ycc_isr.c | 279 ++++++++++ drivers/crypto/ycc/ycc_isr.h | 12 + drivers/crypto/ycc/ycc_pke.c | 946 +++++++++++++++++++++++++++++++++ drivers/crypto/ycc/ycc_ring.c | 652 +++++++++++++++++++++++ drivers/crypto/ycc/ycc_ring.h | 168 ++++++ drivers/crypto/ycc/ycc_ske.c | 925 ++++++++++++++++++++++++++++++++ 17 files changed, 4615 insertions(+) create mode 100644 drivers/crypto/ycc/Kconfig create mode 100644 drivers/crypto/ycc/Makefile create mode 100644 drivers/crypto/ycc/sm2signature_asn1.c create mode 100644 drivers/crypto/ycc/sm2signature_asn1.h create mode 100644 drivers/crypto/ycc/ycc_aead.c create mode 100644 drivers/crypto/ycc/ycc_algs.h create mode 100644 drivers/crypto/ycc/ycc_dev.h create mode 100644 drivers/crypto/ycc/ycc_drv.c create mode 100644 drivers/crypto/ycc/ycc_isr.c create mode 100644 drivers/crypto/ycc/ycc_isr.h create mode 100644 drivers/crypto/ycc/ycc_pke.c create mode 100644 drivers/crypto/ycc/ycc_ring.c create mode 100644 drivers/crypto/ycc/ycc_ring.h create mode 100644 drivers/crypto/ycc/ycc_ske.c -- 1.8.3.1