qca-nss-crypto: moved to package tree

This commit is contained in:
bitthief 2023-03-13 22:28:00 +02:00
parent 8216f98cf7
commit e12d587afc
4 changed files with 0 additions and 227 deletions

View File

@ -1,75 +0,0 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=qca-nss-crypto
PKG_RELEASE:=$(AUTORELEASE)
PKG_SOURCE_URL:=https://git.codelinaro.org/clo/qsdk/oss/lklm/nss-crypto.git
PKG_SOURCE_PROTO:=git
PKG_SOURCE_DATE:=2021-03-20
PKG_SOURCE_VERSION:=2271a3a66f7e8284d42a9e787ddec6f24a1d2e15
PKG_MIRROR_HASH:=afd2b746779bf9abb72dfb58c755acf54d1cb51085b879013dd0edf9ba98d3c9
PKG_BUILD_PARALLEL:=1
include $(INCLUDE_DIR)/kernel.mk
include $(INCLUDE_DIR)/package.mk
ifeq ($(CONFIG_TARGET_BOARD), "ipq807x")
SOC="ipq807x_64"
else ifeq ($(CONFIG_TARGET_BOARD), "ipq60xx")
SOC="ipq60xx_64"
endif
# v1.0 is for Akronite
# v2.0 is for Hawkeye/Cypress/Maple
ifneq (, $(findstring $(CONFIG_TARGET_BOARD), "ipq807x" "ipq60xx"))
NSS_CRYPTO_DIR:=v2.0
else
NSS_CRYPTO_DIR:=v1.0
endif
define KernelPackage/qca-nss-crypto
SECTION:=kernel
CATEGORY:=Kernel modules
SUBMENU:=Cryptographic API modules
DEPENDS:=@(TARGET_ipq807x||TARGET_ipq60xx) \
+@NSS_DRV_CRYPTO_ENABLE \
+kmod-qca-nss-drv \
+nss-eip-firmware
TITLE:=Kernel driver for NSS crypto driver
FILES:=$(PKG_BUILD_DIR)/$(NSS_CRYPTO_DIR)/src/qca-nss-crypto.ko \
$(PKG_BUILD_DIR)/$(NSS_CRYPTO_DIR)/tool/qca-nss-crypto-tool.ko
AUTOLOAD:=$(call AutoLoad,52,qca-nss-crypto)
endef
define KernelPackage/qca-nss-crypto/Description
This package contains a NSS crypto driver for QCA chipset
endef
define Build/InstallDev
$(INSTALL_DIR) $(1)/usr/include/qca-nss-crypto
$(CP) $(PKG_BUILD_DIR)/$(NSS_CRYPTO_DIR)/include/* $(1)/usr/include/qca-nss-crypto
endef
EXTRA_CFLAGS+= \
-DCONFIG_NSS_DEBUG_LEVEL=4 \
-I$(STAGING_DIR)/usr/include/qca-nss-crypto \
-I$(STAGING_DIR)/usr/include/qca-nss-drv \
-I$(PKG_BUILD_DIR)/$(NSS_CRYPTO_DIR)/include \
-I$(PKG_BUILD_DIR)/$(NSS_CRYPTO_DIR)/src
define Build/Compile
+$(MAKE) -C "$(LINUX_DIR)" \
CC="$(TARGET_CC)" \
CROSS_COMPILE="$(TARGET_CROSS)" \
ARCH="$(LINUX_KARCH)" \
M="$(PKG_BUILD_DIR)" \
EXTRA_CFLAGS="$(EXTRA_CFLAGS)" \
NSS_CRYPTO_DIR=$(NSS_CRYPTO_DIR) \
SoC=$(SOC) \
$(KERNEL_MAKE_FLAGS) \
$(PKG_JOBS) \
modules
endef
$(eval $(call KernelPackage,qca-nss-crypto))

View File

@ -1,32 +0,0 @@
From 68b7776673aabc2f93bd75e73ef4b45a1ac561d9 Mon Sep 17 00:00:00 2001
From: Robert Marko <robimarko@gmail.com>
Date: Sun, 13 Mar 2022 13:44:47 +0100
Subject: [PATCH 1/3] nss-crypto: fix SHA1 header include
SHA1 header has been merged to the generic SHA one,
and with that the cryptohash.h was dropped.
So, fix include in kernels 5.8 and newer.
Signed-off-by: Robert Marko <robimarko@gmail.com>
---
v2.0/src/nss_crypto_hlos.h | 2 ++
1 file changed, 2 insertions(+)
diff --git a/v2.0/src/nss_crypto_hlos.h b/v2.0/src/nss_crypto_hlos.h
index 84740c2..e827f4f 100644
--- a/v2.0/src/nss_crypto_hlos.h
+++ b/v2.0/src/nss_crypto_hlos.h
@@ -55,7 +55,9 @@
#include <linux/interrupt.h>
#include <linux/delay.h>
#include <linux/vmalloc.h>
+#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 8, 0)
#include <linux/cryptohash.h>
+#endif
#include <crypto/sha.h>
#include <crypto/aes.h>
#include <crypto/des.h>
--
2.35.1

View File

@ -1,69 +0,0 @@
From 80393ab565e26d572de56b7502b069b0a944bd40 Mon Sep 17 00:00:00 2001
From: Robert Marko <robimarko@gmail.com>
Date: Tue, 8 Jun 2021 22:14:34 +0200
Subject: [PATCH 2/3] nss-crypto: replace ioremap_nocache() with ioremap
ioremap_nocache() was dropped in kernel 5.5 as regular
ioremap() was exactly the same.
So, simply replace all of the ioremap_nocache() calls
with ioremap().
Signed-off-by: Robert Marko <robimarko@gmail.com>
---
v2.0/src/hal/ipq50xx/nss_crypto_ce5.c | 4 ++--
v2.0/src/hal/ipq60xx/nss_crypto_eip197.c | 2 +-
v2.0/src/hal/ipq807x/nss_crypto_eip197.c | 2 +-
3 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/v2.0/src/hal/ipq50xx/nss_crypto_ce5.c b/v2.0/src/hal/ipq50xx/nss_crypto_ce5.c
index c89cd38..a7a46e0 100644
--- a/v2.0/src/hal/ipq50xx/nss_crypto_ce5.c
+++ b/v2.0/src/hal/ipq50xx/nss_crypto_ce5.c
@@ -288,7 +288,7 @@ int nss_crypto_ce5_engine_init(struct platform_device *pdev, struct resource *cr
* remap the I/O addresses for crypto
*/
eng->crypto_paddr = crypto_res->start;
- eng->crypto_vaddr = ioremap_nocache(crypto_res->start, resource_size(crypto_res));
+ eng->crypto_vaddr = ioremap(crypto_res->start, resource_size(crypto_res));
if (!eng->crypto_vaddr) {
nss_crypto_warn("%px: unable to remap crypto_addr(0x%px)\n", node, (void *)eng->crypto_paddr);
nss_crypto_engine_free(eng);
@@ -299,7 +299,7 @@ int nss_crypto_ce5_engine_init(struct platform_device *pdev, struct resource *cr
* remap the I/O addresses for bam
*/
eng->dma_paddr = bam_res->start;
- eng->dma_vaddr = ioremap_nocache(bam_res->start, resource_size(bam_res));
+ eng->dma_vaddr = ioremap(bam_res->start, resource_size(bam_res));
if (!eng->dma_vaddr) {
iounmap(eng->crypto_vaddr);
nss_crypto_warn("%px: unable to remap dma_addr(0x%px)\n", node, (void *)eng->dma_paddr);
diff --git a/v2.0/src/hal/ipq60xx/nss_crypto_eip197.c b/v2.0/src/hal/ipq60xx/nss_crypto_eip197.c
index 8dfc35d..79649f9 100644
--- a/v2.0/src/hal/ipq60xx/nss_crypto_eip197.c
+++ b/v2.0/src/hal/ipq60xx/nss_crypto_eip197.c
@@ -490,7 +490,7 @@ int nss_crypto_eip197_engine_init(struct platform_device *pdev, struct device_no
* remap the I/O addresses
*/
paddr = res->start + offset;
- vaddr = ioremap_nocache(paddr, resource_size(res));
+ vaddr = ioremap(paddr, resource_size(res));
if (!vaddr) {
nss_crypto_warn("%px: unable to remap crypto_addr(0x%px)\n", node, (void *)paddr);
return -EIO;
diff --git a/v2.0/src/hal/ipq807x/nss_crypto_eip197.c b/v2.0/src/hal/ipq807x/nss_crypto_eip197.c
index 632adca..5e2c146 100644
--- a/v2.0/src/hal/ipq807x/nss_crypto_eip197.c
+++ b/v2.0/src/hal/ipq807x/nss_crypto_eip197.c
@@ -490,7 +490,7 @@ int nss_crypto_eip197_engine_init(struct platform_device *pdev, struct device_no
* remap the I/O addresses
*/
paddr = res->start + offset;
- vaddr = ioremap_nocache(paddr, resource_size(res));
+ vaddr = ioremap(paddr, resource_size(res));
if (!vaddr) {
nss_crypto_warn("%px: unable to remap crypto_addr(0x%px)\n", node, (void *)paddr);
return -EIO;
--
2.35.1

View File

@ -1,51 +0,0 @@
From 4c0cc66cde0c4a30aa049b586af311501304e9ce Mon Sep 17 00:00:00 2001
From: Robert Marko <robimarko@gmail.com>
Date: Sun, 13 Mar 2022 13:47:24 +0100
Subject: [PATCH 3/3] nss-crypto: fix SHA header include in 5.15
SHA header was split into SHA-1 and SHA-2 headers in kernel 5.11, so
fix the include for newer kernels.
Signed-off-by: Robert Marko <robimarko@gmail.com>
---
v2.0/src/nss_crypto_ctrl.c | 6 ++++++
v2.0/src/nss_crypto_hlos.h | 4 ++++
2 files changed, 10 insertions(+)
diff --git a/v2.0/src/nss_crypto_ctrl.c b/v2.0/src/nss_crypto_ctrl.c
index 72d1602..a462705 100644
--- a/v2.0/src/nss_crypto_ctrl.c
+++ b/v2.0/src/nss_crypto_ctrl.c
@@ -38,7 +38,13 @@
#include <linux/debugfs.h>
#include <linux/log2.h>
#include <linux/completion.h>
+#include <linux/version.h>
+#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 11, 0)
#include <crypto/sha.h>
+#else
+#include <crypto/sha1.h>
+#include <crypto/sha2.h>
+#endif
#include <crypto/des.h>
#include <crypto/aes.h>
#include <crypto/md5.h>
diff --git a/v2.0/src/nss_crypto_hlos.h b/v2.0/src/nss_crypto_hlos.h
index e827f4f..5565472 100644
--- a/v2.0/src/nss_crypto_hlos.h
+++ b/v2.0/src/nss_crypto_hlos.h
@@ -58,7 +58,11 @@
#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 8, 0)
#include <linux/cryptohash.h>
#endif
+#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 11, 0)
#include <crypto/sha.h>
+#else
+#include <crypto/sha1.h>
+#endif
#include <crypto/aes.h>
#include <crypto/des.h>
#include <crypto/ghash.h>
--
2.35.1