Received: by 2002:a05:6358:1087:b0:cb:c9d3:cd90 with SMTP id j7csp8138002rwi; Tue, 25 Oct 2022 03:02:37 -0700 (PDT) X-Google-Smtp-Source: AMsMyM6gQRIcoAzLWpI1GdZnE9Kv6Duw0lYQkzUF9bGj+xxo1CoGAplcbiPwub+IPSThKiHQBVAg X-Received: by 2002:a17:902:e1ca:b0:186:878e:3b03 with SMTP id t10-20020a170902e1ca00b00186878e3b03mr18357831pla.95.1666692157173; Tue, 25 Oct 2022 03:02:37 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1666692157; cv=none; d=google.com; s=arc-20160816; b=p5QX08lVt216RuVxIZUGjGyQSpswtnZWclg6vZkzBRAUbelY/NFBYs0EO4aBQQLa7F 1fbzApQHxYKKxQPAsBH57sdCKpq4jpeVsFZKsIhrjIKfYDVxMjPxZH1jIK1AwbhWNrTh UtDn3Ckp6kMiDxj2D8zYl0/Fx8VIXUlSp/ZVIpc0P1lLLJRDBiYp9Uqyfb4ka5gWxBKd juF4yQZs1+T34GgYjGXi7Zq9g8xhMiRMxRRd2DTJEeOK8HZHV5EsAMXiYYohJ3ngtnQQ io6eRk2eZCZews0nvghdKxK/D3gtG6KEzYbB63nlXQNvV82BlDJov+8k+g7vrXvwHSiW 4YxA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:message-id:date:subject:cc:to:from; bh=t23LQKNXp9S/zGDaJk4pOyxjs3cAhW7jMSpg+0mdvrc=; b=iYn2TxLjo2IQHPbNBgPLv/bH77CUVetCokKoG59M93p6QTGv5Z9Xv/f8xahS8k3nYM IycLWvGPjKm2bGK65yIfqPHlb9u0TWK+QGsN39CBUR1wc5iPBsX6iPn3eoHBDwPILFlq iIWzu3IGvW+OoLcm0mihvzX3XJaGabGqjNV3osDAjUuCN7a4wDsA987Jui9HRDMxN2BW TvoznNaWLmrYgPvE1zRX689MvbTx4MPxOEL0/rrF6RRDZ3mWjZPYuJRHCzMLT1p7BhDe FvMWfSICIUEDr2r4dTif87lNofl0GPQIUIrZzGrw/Sw8fAhhGTWbfAPlVvOoI/Sw0V75 9bsA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-crypto-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-crypto-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=alibaba.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id l3-20020a17090270c300b001869ef77051si2312142plt.210.2022.10.25.03.02.19; Tue, 25 Oct 2022 03:02:37 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-crypto-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-crypto-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-crypto-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=alibaba.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230463AbiJYJ7P (ORCPT + 99 others); Tue, 25 Oct 2022 05:59:15 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:41422 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232005AbiJYJ6i (ORCPT ); Tue, 25 Oct 2022 05:58:38 -0400 Received: from out30-43.freemail.mail.aliyun.com (out30-43.freemail.mail.aliyun.com [115.124.30.43]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 83FF918B771; Tue, 25 Oct 2022 02:53:39 -0700 (PDT) X-Alimail-AntiSpam: AC=PASS;BC=-1|-1;BR=01201311R151e4;CH=green;DM=||false|;DS=||;FP=0|-1|-1|-1|0|-1|-1|-1;HT=ay29a033018045176;MF=guanjun@linux.alibaba.com;NM=1;PH=DS;RN=8;SR=0;TI=SMTPD_---0VT2gD3N_1666691616; Received: from localhost(mailfrom:guanjun@linux.alibaba.com fp:SMTPD_---0VT2gD3N_1666691616) by smtp.aliyun-inc.com; Tue, 25 Oct 2022 17:53:37 +0800 From: 'Guanjun' To: herbert@gondor.apana.org.au, elliott@hpe.com Cc: zelin.deng@linux.alibaba.com, artie.ding@linux.alibaba.com, guanjun@linux.alibaba.com, linux-crypto@vger.kernel.org, linux-kernel@vger.kernel.org, xuchun.shang@linux.alibaba.com Subject: [PATCH v3 0/9] Drivers for Alibaba YCC (Yitian Cryptography Complex) cryptographic accelerator Date: Tue, 25 Oct 2022 17:53:27 +0800 Message-Id: <1666691616-69983-1-git-send-email-guanjun@linux.alibaba.com> X-Mailer: git-send-email 1.8.3.1 X-Spam-Status: No, score=-9.9 required=5.0 tests=BAYES_00, ENV_AND_HDR_SPF_MATCH,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2, SPF_HELO_NONE,SPF_PASS,UNPARSEABLE_RELAY,USER_IN_DEF_SPF_WL autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-crypto@vger.kernel.org From: Guanjun 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@linux.alibaba.com/ v1: https://lore.kernel.org/all/1661334621-44413-1-git-send-email-guanjun@linux.alibaba.com/ v1 RESEND: https://lore.kernel.org/all/1662435353-114812-1-git-send-email-guanjun@linux.alibaba.com/ 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