mirror of
https://github.com/breeze303/nss-packages.git
synced 2025-12-16 08:44:52 +00:00
qca-nss-crypto: moved to package tree
This commit is contained in:
parent
8216f98cf7
commit
e12d587afc
@ -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))
|
||||
@ -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
|
||||
|
||||
@ -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
|
||||
|
||||
@ -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
|
||||
|
||||
Loading…
Reference in New Issue
Block a user