Received: by 2002:a05:6a10:17d3:0:0:0:0 with SMTP id hz19csp2992913pxb; Mon, 19 Apr 2021 20:36:37 -0700 (PDT) X-Google-Smtp-Source: ABdhPJww7eoMex5sbGg4LO7/ytKeLSL/JoYDDw0ZreHXAYqtB2w/Ue2U5JXWzoGJxdawitXQd2R+ X-Received: by 2002:a17:90b:302:: with SMTP id ay2mr2614128pjb.84.1618889797159; Mon, 19 Apr 2021 20:36:37 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1618889797; cv=none; d=google.com; s=arc-20160816; b=FljN7nnf7h3+iG09QpmzuAOrvvcG6fFJd2v9kIE8eSxE+Q2X4zIo9c7mW5luU5bFvU EV06o4fUsyW+BPKnvpP+0nYjDQ1wCAtPfWDLbGoCNK4JCV/ZfqEdKNFx9sNFTG8m5rUA y8ocSPZYrJeHSSigwIqG5OpTL3c3IVJ5o3KxR8Q0pgSGVizTMZgjOdibV6aGxyb1I1X1 52fBc5aF1vl7ed9cGSp8yNWLCrZ38zCEo/paWmEtktcu5+YGuhjGXYU2UI9ZwmzVvoG4 h1vnYquSs+t0ZvEpM1QjleyjNJ0sdyPDdHqZSzFV+egOdzg2IyQOw1yZ6sAtjAGYuqv4 eRFA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:dkim-signature; bh=PJriSY/3BoO1fHsVgHab2OGWTgIWKz/XuakYolqJtHg=; b=LbJ7Fii8aS+3Z1Aw+U2aqAdecRlto4+ZvtYAvu4H0jX16qnIpH5sDPA3EYtC+QDUPj rWudkI1b8MHErlgv6msqYl0PZIXtNNba3SR6H3O6F8hLuaWsdpXL3Hk1nXrhZsrj0bX0 rg1kXUR78DKuQcheo2GISgoCLMCFqDLbwTm4V7sFQiZFB4PMXnz3a4RQR1eWbr9xlQ7q kd27n6e+UYFw+E/plHMDk/SWyn31DW6RIBWZR/BTwJ8WcuqQPwqxTnjx4raGHqDCcXfV UqE/sexZjCuFHn9yfdNG8vMbpcyzNOUJ5L73IzOqKxfKTroTHLohbc+dSKYBxlROQzyV v0Bg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=E0hvOm6e; spf=pass (google.com: domain of linux-crypto-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-crypto-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id i13si19770105pgd.185.2021.04.19.20.36.10; Mon, 19 Apr 2021 20:36:37 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-crypto-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=E0hvOm6e; spf=pass (google.com: domain of linux-crypto-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-crypto-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230135AbhDTDgi (ORCPT + 99 others); Mon, 19 Apr 2021 23:36:38 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:49178 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229670AbhDTDgg (ORCPT ); Mon, 19 Apr 2021 23:36:36 -0400 Received: from mail-qv1-xf33.google.com (mail-qv1-xf33.google.com [IPv6:2607:f8b0:4864:20::f33]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 3A8DFC061763 for ; Mon, 19 Apr 2021 20:36:04 -0700 (PDT) Received: by mail-qv1-xf33.google.com with SMTP id er3so9463715qvb.6 for ; Mon, 19 Apr 2021 20:36:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=PJriSY/3BoO1fHsVgHab2OGWTgIWKz/XuakYolqJtHg=; b=E0hvOm6eMmyEZ2M3MU2QsiHj0zTZy4NxvzMJ4BuGjCki4mRcIXk7NPuyXjMnsPdPAA T8mmB/dCDnnKTJo7waaGCoouYsM+rEdpHxjRg624Hrm+KrU319G2jfKtg5Zsn6t+JKUE 1+p5ccwYfSWxeg05DUjA+Gh9Kiz9CiRLj1/KaNL+sHK5ixXA8oKcbNnZGGOkuN/dD7UA yNG89UnljPOlKQwcffDInPUHqBmauqiT1uEU/J7gopgaRVGL+aXAYaB25y0h6rpe4OLF j3uEo6c7Cg0EuX8EaUT51G2iok5lnUA0gkTf3S0kDpXlE9nutvI/49+aMCKwcWh+LObV a99w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=PJriSY/3BoO1fHsVgHab2OGWTgIWKz/XuakYolqJtHg=; b=igvpJnKfpo99Zt1cS6jaboPPleGKj2GnOEP26aeYSd0WK1eFU3ppq9YLaqLwcHXB1w QJaAYlryEXbFDdmXija0wlrXNnDJ1+29FYyEsoWE86C0kugHyUtFQzvmn7RTcqt38Dl1 Wu6zcY2h338tMNoOCWjy5uhgjDO3KznjOoYR6GssHMUGlvdZi8zCGPOgbvHPEAY+8mjI lPztzoyo3zXMt7f5BZNCMMGDLn2XLX7WiloctBzTsJRvfHspPODpw4IF5BgCP1vHDEbK rJCMGZfKPSOhRx/FrZCn9P+g4Oxz727EKtLwzzXcb+OsnzFRGVSdZYaRpMDH2tPVAjA7 208g== X-Gm-Message-State: AOAM531J6B49HI7SNZwA/sXrgzpkxHzf+DCiceIIoYNnk5dJ5+h5uprW A40zCofPIu16WciOj35Dsw8K7Q== X-Received: by 2002:a0c:eb06:: with SMTP id j6mr24696769qvp.10.1618889763374; Mon, 19 Apr 2021 20:36:03 -0700 (PDT) Received: from pop-os.fios-router.home (pool-71-163-245-5.washdc.fios.verizon.net. [71.163.245.5]) by smtp.googlemail.com with ESMTPSA id b8sm3562643qka.117.2021.04.19.20.36.02 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 19 Apr 2021 20:36:02 -0700 (PDT) From: Thara Gopinath To: herbert@gondor.apana.org.au, davem@davemloft.net, bjorn.andersson@linaro.org Cc: ebiggers@google.com, ardb@kernel.org, sivaprak@codeaurora.org, linux-crypto@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-msm@vger.kernel.org Subject: [Patch v3 0/7] Add support for AEAD algorithms in Qualcomm Crypto Engine driver Date: Mon, 19 Apr 2021 23:35:55 -0400 Message-Id: <20210420033602.1729947-1-thara.gopinath@linaro.org> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-crypto@vger.kernel.org Enable support for AEAD algorithms in Qualcomm CE driver. The first three patches in this series are cleanups and add a few missing pieces required to add support for AEAD algorithms. Patch 4 introduces supported AEAD transformations on Qualcomm CE. Patches 5 and 6 implements the h/w infrastructure needed to enable and run the AEAD transformations on Qualcomm CE. Patch 7 adds support to queue fallback algorithms in case of unsupported special inputs. This patch series has been tested with in kernel crypto testing module tcrypt.ko with fuzz tests enabled as well. Thara Gopinath (7): crypto: qce: common: Add MAC failed error checking crypto: qce: common: Make result dump optional crypto: qce: Add mode for rfc4309 crypto: qce: Add support for AEAD algorithms crypto: qce: common: Clean up qce_auth_cfg crypto: qce: common: Add support for AEAD algorithms crypto: qce: aead: Schedule fallback algorithm drivers/crypto/Kconfig | 15 + drivers/crypto/qce/Makefile | 1 + drivers/crypto/qce/aead.c | 841 ++++++++++++++++++++++++++++++++++++ drivers/crypto/qce/aead.h | 56 +++ drivers/crypto/qce/common.c | 196 ++++++++- drivers/crypto/qce/common.h | 9 +- drivers/crypto/qce/core.c | 4 + 7 files changed, 1102 insertions(+), 20 deletions(-) create mode 100644 drivers/crypto/qce/aead.c create mode 100644 drivers/crypto/qce/aead.h -- 2.25.1