From nobody Fri Apr 3 07:59:26 2026 Received: from mail-pf1-f172.google.com (mail-pf1-f172.google.com [209.85.210.172]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 7F1F531E0FB for ; Wed, 18 Feb 2026 12:58:44 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.172 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1771419526; cv=none; b=i03uanCYfNUm0pGdiVeAFgR5UNzfVKzk5GTUsG1V1E2i85KGNYhhoXRMWMNqr7T181LaiTFwgjhmftWoEI4zNxxb0Ktj46CDj7k1cJAbn3Pn51koJgCyj9Nas8LqoDKbQb3UEduMxJq6+s0lx2TN1rpj0T76CxP/HAfUz+MsqgU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1771419526; c=relaxed/simple; bh=9+DQjUew8kkumdJA/hrPw0h+aDG9PSARamWRMqx9mNQ=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=eFh/RTgp4BczOwF9ayLlsFnAJZrz5jn9ieevMr2x1+5NlmpbtnN+0UZiOetcbWD38iUE2gv6yK5sPsVB1RJR8NYaqi5IgHESIB3Ixs1cWPAquKKbuaOugmtZOreKHE0UNeLPIQJsvV3JM7JC2tva8IUoz3fNNs/+SMOMsGejCgA= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=vayavyalabs.com; spf=pass smtp.mailfrom=vayavyalabs.com; dkim=pass (1024-bit key) header.d=vayavyalabs.com header.i=@vayavyalabs.com header.b=dYnVcpzv; arc=none smtp.client-ip=209.85.210.172 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=vayavyalabs.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=vayavyalabs.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=vayavyalabs.com header.i=@vayavyalabs.com header.b="dYnVcpzv" Received: by mail-pf1-f172.google.com with SMTP id d2e1a72fcca58-824a829f9bbso2757113b3a.0 for ; Wed, 18 Feb 2026 04:58:44 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=vayavyalabs.com; s=google; t=1771419524; x=1772024324; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=KlFofjEDBgXa43lzOJCQ6xEpdr+n2zK1FZuaFtwkHQA=; b=dYnVcpzvbhqfKce5khUDrmSx/0VYWv8MHGkZjhMn4KeNkT1Po9KHUTmOXsb04o01Dj 3yyZR6U2mFI7COpVaT33UEEbq2oJYa2G27zndBoxXngqQH7keWYVPnhUl1EX211O53Hg SUokxcg9Dj25aJYxD6DqbMOXYXIpNXljo2mwM= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1771419524; x=1772024324; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=KlFofjEDBgXa43lzOJCQ6xEpdr+n2zK1FZuaFtwkHQA=; b=FvbU3sqSBPifzD31H+cLSOxNF8v9f6EJwfS4zVfuDkaOTT15DNiKEmeQ50oqYbJ8GR BU2vs7LKvnTrTLSnQGgeDKas4i4vlLqMmJ1hqgjrRJHwQ6C42zZ02wuAFhWrsbsZ7dM3 ea+PIdHT8EY7jW3CyLiBu4mhPObbS274x8C8pYlI5sIoPy1oi60eLvEaqwxSQqlD3pCM fjyxwzyGJbQIxOxDhPkF12ZaEaJJCVaRIT4r2YrmOVFTOjihPTlZa09C4uNudpmCsoUs X3ZBtgNUwJMQfbV4TLNWyHhx0QtkJQO52bE5J8AkBXk4W/s/oDDtsLeXTry6ZXwSPBAQ 8kMQ== X-Forwarded-Encrypted: i=1; AJvYcCWPxVxJhZ8ZrRh3t70cnMUXhGmFTnQUIiwLReSdFuCkOBQ3bV/1MdUWDTNKJe7Ri3K/ogEt/u+xhLEBfV0=@vger.kernel.org X-Gm-Message-State: AOJu0YyK9k974E8xAJ63V3AMOmVCTZlFyKNcPH5Xan7Ruae6wAopQ0UE nwxJYEhY5hWStj05JptxKoa9aAzltav9UkamgXgJJ9/V925nDeXmNRSxmAVnW6387E4XqgIrif+ eMYALDEQ= X-Gm-Gg: AZuq6aKVtofdQoW8YhJ3WZ/g262+GybLQGElaAyg2T8YX46S/dy5Fzjmc7iCTxeHrGe fGM+ToxyjCLx3r2vxR5Y6IPlsN1Y9vddYMgAAkeJRF86EmD4v7u/7MYjazjVIShwFp7HlWwQ7zK +QUgeQGxO/VWTW5OrZqAKtJkeuw0M8YHazEefHKOLrzYtlC2+revMqGCOAdbIiVo8BC426mqCxp mdBddIP8vUKYZzrnyNa3+VqIY65lXxj8jGgMrofkb4mq0eq5rwGIrmJuOtvhiSZVRM7ZgmmELie pCNrOFeNGgM06szP0nJpjiJDBSz9rkY65w33vRVqmqA2sy1jLs/wcaAOmt6kclBThWSRPKQoThf rureh/D32cmoCHb41gtTUFT+h/Q5gpP4LweLdWpoWRQtQLhiRB3wr8vm4hpmE3gU9yJMTo4QjQO ty/1/bX3q/7P+uFBvQawgX2rq8fb6tZXAITxlZpKGC705Yd1AZVrmr5wTtIUJGfgmiue/7lUiPt Uo/i4fRGS9rDBjgjmEh1tl7YItgR3pSOXcK2epysRWQKeHBvQuCOHvJgSku8yAuBJsF20Rr/9fn Hw== X-Received: by 2002:a05:6a00:2354:b0:81f:8084:7ead with SMTP id d2e1a72fcca58-82527460776mr1819433b3a.5.1771419523896; Wed, 18 Feb 2026 04:58:43 -0800 (PST) Received: from localhost.localdomain ([103.108.57.9]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-824c6a2afeesm19227464b3a.2.2026.02.18.04.58.39 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 18 Feb 2026 04:58:43 -0800 (PST) From: Pavitrakumar Managutte To: linux-crypto@vger.kernel.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, herbert@gondor.apana.org.au, robh@kernel.org Cc: krzk+dt@kernel.org, conor+dt@kernel.org, Ruud.Derwig@synopsys.com, manjunath.hadli@vayavyalabs.com, adityak@vayavyalabs.com, navami.telsang@vayavyalabs.com, bhoomikak@vayavyalabs.com, Pavitrakumar Managutte Subject: [PATCH v9 4/4] crypto: spacc - Add SPAcc Kconfig and Makefile Date: Wed, 18 Feb 2026 18:28:05 +0530 Message-Id: <20260218125805.615525-5-pavitrakumarm@vayavyalabs.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20260218125805.615525-1-pavitrakumarm@vayavyalabs.com> References: <20260218125805.615525-1-pavitrakumarm@vayavyalabs.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Add Makefile and Kconfig for SPAcc driver. Acked-by: Ruud Derwig Signed-off-by: Pavitrakumar Managutte --- drivers/crypto/Kconfig | 1 + drivers/crypto/Makefile | 1 + drivers/crypto/dwc-spacc/Kconfig | 88 +++++++++++++++++++++++++++++++ drivers/crypto/dwc-spacc/Makefile | 8 +++ 4 files changed, 98 insertions(+) create mode 100644 drivers/crypto/dwc-spacc/Kconfig create mode 100644 drivers/crypto/dwc-spacc/Makefile diff --git a/drivers/crypto/Kconfig b/drivers/crypto/Kconfig index 8d3b5d2890f8b..b644f80ed40d4 100644 --- a/drivers/crypto/Kconfig +++ b/drivers/crypto/Kconfig @@ -781,6 +781,7 @@ config CRYPTO_DEV_BCM_SPU ahash, and aead algorithms with the kernel cryptographic API. source "drivers/crypto/stm32/Kconfig" +source "drivers/crypto/dwc-spacc/Kconfig" config CRYPTO_DEV_SAFEXCEL tristate "Inside Secure's SafeXcel cryptographic engine driver" diff --git a/drivers/crypto/Makefile b/drivers/crypto/Makefile index 322ae8854e3ea..89f54b3faeb56 100644 --- a/drivers/crypto/Makefile +++ b/drivers/crypto/Makefile @@ -43,6 +43,7 @@ obj-$(CONFIG_CRYPTO_DEV_BCM_SPU) +=3D bcm/ obj-y +=3D inside-secure/ obj-$(CONFIG_CRYPTO_DEV_ARTPEC6) +=3D axis/ obj-y +=3D xilinx/ +obj-y +=3D dwc-spacc/ obj-y +=3D hisilicon/ obj-y +=3D loongson/ obj-$(CONFIG_CRYPTO_DEV_AMLOGIC_GXL) +=3D amlogic/ diff --git a/drivers/crypto/dwc-spacc/Kconfig b/drivers/crypto/dwc-spacc/Kc= onfig new file mode 100644 index 0000000000000..f9752e6f664b8 --- /dev/null +++ b/drivers/crypto/dwc-spacc/Kconfig @@ -0,0 +1,88 @@ +# SPDX-License-Identifier: GPL-2.0-only + +config CRYPTO_DEV_SPACC + tristate "Support for dwc_spacc Security Protocol Accelerator" + depends on HAS_DMA + select CRYPTO_ENGINE + default n + + help + This enables support for SPAcc Hardware Accelerator. + +config CRYPTO_DEV_SPACC_HASH + bool "Enable HASH functionality" + depends on CRYPTO_DEV_SPACC + default y + select CRYPTO_HASH + select CRYPTO_SHA1 + select CRYPTO_MD5 + select CRYPTO_SHA256 + select CRYPTO_SHA512 + select CRYPTO_HMAC + select CRYPTO_SM3 + select CRYPTO_CMAC + select CRYPTO_MICHAEL_MIC + select CRYPTO_XCBC + select CRYPTO_AES + select CRYPTO_SM4_GENERIC + + help + Say y to enable Hash functionality of SPAcc. + +config CRYPTO_DEV_SPACC_AUTODETECT + bool "Enable Autodetect functionality" + depends on CRYPTO_DEV_SPACC + default y + help + Say y to enable Autodetect functionality of SPAcc. + +config CRYPTO_DEV_SPACC_DEBUG_TRACE_IO + bool "Enable Trace MMIO reads/writes stats" + depends on CRYPTO_DEV_SPACC + default n + help + Say y to enable Trace MMIO reads/writes stats. + To Debug and trace IO register read/write oprations. + +config CRYPTO_DEV_SPACC_DEBUG_TRACE_DDT + bool "Enable Trace DDT entries stats" + default n + depends on CRYPTO_DEV_SPACC + help + Say y to enable Enable DDT entry stats. + To Debug and trace DDT opration + +config CRYPTO_DEV_SPACC_SECURE_MODE + bool "Enable Spacc secure mode stats" + default n + depends on CRYPTO_DEV_SPACC + help + Say y to enable SPAcc secure modes stats. + +config CRYPTO_DEV_SPACC_PRIORITY + int "VSPACC priority value" + depends on CRYPTO_DEV_SPACC + range 0 15 + default 1 + help + Default arbitration priority weight for this Virtual SPAcc instance. + Hardware resets this to 1. Higher values means higher priority. + +config CRYPTO_DEV_SPACC_INTERNAL_COUNTER + int "SPAcc internal counter value" + depends on CRYPTO_DEV_SPACC + range 100000 1048575 + default 100000 + help + This value configures a hardware watchdog counter in the SPAcc engine. + The counter starts ticking when a completed cryptographic job is + sitting in the STATUS FIFO. If the job remains unprocessed for the + configured duration, an interrupt is triggered to ensure it is serviced. + +config CRYPTO_DEV_SPACC_CONFIG_DEBUG + bool "Enable SPAcc debug logs" + default n + depends on CRYPTO_DEV_SPACC + help + Say y to enable additional debug prints and diagnostics in the + SPAcc driver. Disable this for production builds. diff --git a/drivers/crypto/dwc-spacc/Makefile b/drivers/crypto/dwc-spacc/M= akefile new file mode 100644 index 0000000000000..45d0166dfc8f7 --- /dev/null +++ b/drivers/crypto/dwc-spacc/Makefile @@ -0,0 +1,8 @@ +# SPDX-License-Identifier: GPL-2.0-only +obj-$(CONFIG_CRYPTO_DEV_SPACC) +=3D snps-spacc.o +snps-spacc-objs =3D spacc_hal.o spacc_core.o \ +spacc_manager.o spacc_interrupt.o spacc_device.o + +ifeq ($(CONFIG_CRYPTO_DEV_SPACC_HASH),y) +snps-spacc-objs +=3D spacc_ahash.o +endif -- 2.25.1