diff --git a/KAE-2.0.0.tar.gz b/KAE-2.0.0.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..e3e52a74e25a4a2f28633a2ae2028e7852cb3990 Binary files /dev/null and b/KAE-2.0.0.tar.gz differ diff --git a/fix-Makefile-compilation-failed.patch b/fix-Makefile-compilation-failed.patch deleted file mode 100644 index 30cc7658ff852803d003fff40c476ddccfb994d9..0000000000000000000000000000000000000000 --- a/fix-Makefile-compilation-failed.patch +++ /dev/null @@ -1,22 +0,0 @@ -From 690b5230ec25237c82630ec7c3766381b2a8c467 Mon Sep 17 00:00:00 2001 -From: wang_yue111 <648774160@qq.com> -Date: Wed, 11 Nov 2020 14:43:58 +0800 -Subject: [PATCH] fix Makefile compilation failed - ---- - kae_driver/hisilicon/Makefile | 1 - - 1 file changed, 1 deletion(-) - -diff --git a/kae_driver/hisilicon/Makefile b/kae_driver-1.3.9/kae_driver/hisilicon/Makefile -index c766a09..eafceb9 100644 ---- a/kae_driver/hisilicon/Makefile -+++ b/kae_driver/hisilicon/Makefile -@@ -1,5 +1,4 @@ - # SPDX-License-Identifier: GPL-2.0 --obj-$(CONFIG_CRYPTO_DEV_HISI_SEC) += sec/ - obj-$(CONFIG_CRYPTO_DEV_HISI_QM) += hisi_qm.o - hisi_qm-objs = qm.o sgl.o - obj-$(CONFIG_CRYPTO_DEV_HISI_ZIP) += zip/ --- -2.23.0 - diff --git a/fix-value-not-ignored-as-it-ought-to-be.patch b/fix-value-not-ignored-as-it-ought-to-be.patch deleted file mode 100644 index fb5d49201e54154ec60544c023c0623c157e1912..0000000000000000000000000000000000000000 --- a/fix-value-not-ignored-as-it-ought-to-be.patch +++ /dev/null @@ -1,47 +0,0 @@ -From 41654427d727cdc7e5f63ed148265054d530998b Mon Sep 17 00:00:00 2001 -From: wang_yue111 <648774160@qq.com> -Date: Wed, 11 Nov 2020 15:15:21 +0800 -Subject: [PATCH] fix value not ignored as itought to be - ---- - kae_driver/hisilicon/rde/rde_main.c | 10 +++------- - 1 file changed, 3 insertions(+), 7 deletions(-) - -diff --git a/kae_driver/hisilicon/rde/rde_main.c b/KAEdriver-1.3.9/kae_driver/hisilicon/rde/rde_main.c -index bdc4c55..f900369 100644 ---- a/kae_driver/hisilicon/rde/rde_main.c -+++ b/kae_driver/hisilicon/rde/rde_main.c -@@ -479,7 +479,7 @@ static int hisi_rde_chn_debug_init(struct hisi_qm *qm) - { - struct device *dev = &qm->pdev->dev; - struct debugfs_regset32 *regset, *regset_ooo; -- struct dentry *tmp_d, *tmp; -+ struct dentry *tmp_d; - char buf[HRDE_DBGFS_VAL_MAX_LEN]; - int ret; - -@@ -497,9 +497,7 @@ static int hisi_rde_chn_debug_init(struct hisi_qm *qm) - regset->regs = hrde_dfx_regs; - regset->nregs = ARRAY_SIZE(hrde_dfx_regs); - regset->base = qm->io_base; -- tmp = debugfs_create_regset32("chn_regs", 0444, tmp_d, regset); -- if (!tmp) -- return -ENOENT; -+ debugfs_create_regset32("chn_regs", 0444, tmp_d, regset); - - regset_ooo = devm_kzalloc(dev, sizeof(*regset_ooo), GFP_KERNEL); - if (!regset_ooo) -@@ -507,9 +505,7 @@ static int hisi_rde_chn_debug_init(struct hisi_qm *qm) - regset_ooo->regs = hrde_ooo_dfx_regs; - regset_ooo->nregs = ARRAY_SIZE(hrde_ooo_dfx_regs); - regset_ooo->base = qm->io_base; -- tmp = debugfs_create_regset32("ooo_regs", 0444, tmp_d, regset_ooo); -- if (!tmp) -- return -ENOENT; -+ debugfs_create_regset32("ooo_regs", 0444, tmp_d, regset_ooo); - - return 0; - } --- -2.23.0 - diff --git a/fix-vm_fault_t-conflict.patch b/fix-vm_fault_t-conflict.patch deleted file mode 100644 index 2f53439fb5561a4e0635221d6c42e7d5853de3af..0000000000000000000000000000000000000000 --- a/fix-vm_fault_t-conflict.patch +++ /dev/null @@ -1,34 +0,0 @@ -From 47c1fc7609ad25b54896c8715eff0e05b45d9956 Mon Sep 17 00:00:00 2001 -From: wang_yue111 <648774160@qq.com> -Date: Wed, 11 Nov 2020 14:13:19 +0800 -Subject: [PATCH] fix vm_fault_t conflict error - ---- - kae_driver/uacce/uacce.c | 3 +++ - 1 file changed, 3 insertions(+) - -diff --git a/kae_driver/uacce/uacce.c b/KAEdriver-1.3.9/kae_driver/uacce/uacce.c -index 0ce0702..f897456 100644 ---- a/kae_driver/uacce/uacce.c -+++ b/kae_driver/uacce/uacce.c -@@ -14,6 +14,7 @@ - #include "../include_linux/uacce.h" - #include - #include -+#include - - static struct class *uacce_class; - static DEFINE_IDR(uacce_idr); -@@ -31,7 +32,9 @@ static DECLARE_RWSEM(uacce_qs_lock); - static const struct file_operations uacce_fops; - static void uacce_put_queue(struct uacce_queue *q); - -+#if LINUX_VERSION_CODE < KERNEL_VERSION(5,1,0) - typedef int vm_fault_t; -+#endif - typedef unsigned int __poll_t; - - /* match with enum uacce_qfrt */ --- -2.23.0 - diff --git a/kae.spec b/kae.spec new file mode 100644 index 0000000000000000000000000000000000000000..7cd90c7b1b3c898e3396e7956db55af8006e33d1 --- /dev/null +++ b/kae.spec @@ -0,0 +1,67 @@ +Name: kae_openssl +Summary: Huawei Kunpeng Accelerator Engine +Version: 2.0.0 +Release: 1%dist +License: Apache-2.0 +Source: KAE-%{version}.tar.gz +ExclusiveOS: linux +BuildRoot: %{_tmppath}/%{name}-%{version}-root +Prefix: /usr/local/lib/engines-1.1 +Conflicts: %{name} < %{version}-%{release} +Provides: %{name} = %{version}-%{release} +Requires: libwd >= %{version} +Autoreq: no +Autoprov: no + +%description +This package contains the Huawei Kunpeng Accelerator Engine + +%prep +%global debug_package %{nil} +%setup -c -n %{name}-%{version} + +%build +cd KAEOpensslEngine +export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig +autoreconf -i +./configure --libdir=/usr/local/lib/engines-1.1/ +make -j + +%install +mkdir -p ${RPM_BUILD_ROOT}/usr/local/lib/engines-1.1 +install -b -m -755 KAEOpensslEngine/src/.libs/kae.so.1.1.0 ${RPM_BUILD_ROOT}/usr/local/lib/engines-1.1 + +%clean +rm -rf ${RPM_BUILD_ROOT} + +%files +%defattr(755,root,root) +/usr/local/lib/engines-1.1/kae.so.1.1.0 + +%pre +if [ "$1" = "2" ] ; then #2: update + rm -rf $RPM_INSTALL_PREFIX/kae.so > /dev/null 2>&1 || true + rm -rf $RPM_INSTALL_PREFIX/kae.so.0 > /dev/null 2>&1 || true +fi + +%post +if [[ "$1" = "1" || "$1" = "2" ]] ; then #1: install 2: update + ln -sf $RPM_INSTALL_PREFIX/libkae.so.%{version} $RPM_INSTALL_PREFIX/kae.so + ln -sf $RPM_INSTALL_PREFIX/libkae.so.%{version} $RPM_INSTALL_PREFIX/kae.so.0 +fi +/sbin/ldconfig + +%preun +if [ "$1" = "0" ] ; then #0: uninstall + rm -rf $RPM_INSTALL_PREFIX/kae.so > /dev/null 2>&1 || true + rm -rf $RPM_INSTALL_PREFIX/kae.so.0 > /dev/null 2>&1 || true + rm -f /var/log/kae.log > /dev/null 2>&1 || true + rm -f /var/log/kae.log.old > /dev/null 2>&1 || true +fi + +%postun +/sbin/ldconfig + +%changelog +* Tue Jan 07 2020 jinbinhua 1.2.7-1 +- First Spec Version Include kunpeng accelerator engine Code diff --git a/kae_driver-1.3.9.tar.gz b/kae_driver-1.3.9.tar.gz deleted file mode 100644 index 0c0d6060854955f5998accbca298392fafd0ddd4..0000000000000000000000000000000000000000 Binary files a/kae_driver-1.3.9.tar.gz and /dev/null differ diff --git a/kae_driver.spec b/kae_driver.spec index 6308bf7430fe45880104d26e81c87a6afcf9d209..8bfad446469e00142c32cd1048a91041c5508fc1 100644 --- a/kae_driver.spec +++ b/kae_driver.spec @@ -1,249 +1,307 @@ -%global debug_package %{nil} - Name: kae_driver Summary: Kunpeng Accelerator Engine Kernel Driver -Version: 1.3.9 -Release: 1 +Version: 2.0.0 +Release: 1%dist License: GPL-2.0 -Source: %{name}-%{version}.tar.gz -Vendor: Huawei Corporation +Source: KAE-%{version}.tar.gz ExclusiveOS: linux -URL: https://support.huawei.com BuildRoot: %{_tmppath}/%{name}-%{version}-root Conflicts: %{name} < %{version}-%{release} Provides: %{name} = %{version}-%{release} -BuildRequires: kernel-devel, gcc, make -ExclusiveArch: aarch64 -Patch0001: fix-vm_fault_t-conflict.patch -Patch0002: fix-Makefile-compilation-failed.patch -Patch0003: fix-value-not-ignored-as-it-ought-to-be.patch -Patch0004: support-kernel-5.7.0-compation.patch +BuildRequires: gcc, make %define kernel_version %(uname -r) -%define kae_driver_path %{_builddir}/%{name}-%{version}/%{name} +%define kae_driver_path %{_builddir}/%{name}-%{version}/KAEKernelDriver +%define kae_uadk_path %{_builddir}/%{name}-%{version}/uadk %description -This package contains the Kunpeng Accelerator Engine Kernel Driver - -%package -n uacce -Summary: Unified/User-space-access-intended Accelerator Framework -Conflicts: %{name} < %{version}-%{release} -Provides: %{name} = %{version}-%{release} - -%description -n uacce -This package contains the Unified/User-space-access-intended Accelerator Framework. - -%package -n hisi_sec2 -Summary: Huawei Hisilicon SEC Accelerator Driver -Requires: uacce >= %{version}-%{release} -Conflicts: %{name} < %{version}-%{release} -Provides: %{name} = %{version}-%{release} - -%description -n hisi_sec2 -This package contains the Huawei Hisilicon SEC Accelerator Driver. - -%package -n hisi_hpre -Summary: Huawei Hisilicon HPRE Accelerator Driver -Requires: uacce >= %{version}-%{release} -Conflicts: %{name} < %{version}-%{release} -Provides: %{name} = %{version}-%{release} - -%description -n hisi_hpre -This package contains the Huawei Hisilicon HPRE Accelerator Driver. - -%package -n hisi_zip -Summary: Huawei Hisilicon ZIP Accelerator Driver -Requires: uacce >= %{version}-%{release} -Conflicts: %{name} < %{version}-%{release} -Provides: %{name} = %{version}-%{release} - -%description -n hisi_zip -This package contains the Huawei Hisilicon ZIP Accelerator Driver. - -%package -n hisi_rde -Summary: Huawei Hisilicon RDE Accelerator Driver -Requires: uacce >= %{version}-%{release} -Conflicts: %{name} < %{version}-%{release} -Provides: %{name} = %{version}-%{release} - -%description -n hisi_rde -This package contains the Huawei Hisilicon RDE Accelerator Driver. - +This package contains the Kunpeng Accelerator Engine Driver %prep -%autosetup -c -n %{name}-%{version} -p1 +%global debug_package %{nil} +%setup -c -n %{name}-%{version} %build -cd kae_driver -make +cd KAEKernelDriver +make -j + +cd .. +cd uadk +sh autogen.sh +sh conf.sh +make -j %install mkdir -p ${RPM_BUILD_ROOT}/lib/modules/%{kernel_version}/extra mkdir -p ${RPM_BUILD_ROOT}/etc/modprobe.d -install -b -m644 %{kae_driver_path}/uacce/uacce.ko ${RPM_BUILD_ROOT}/lib/modules/%{kernel_version}/extra -install -b -m644 %{kae_driver_path}/hisilicon/hisi_qm.ko ${RPM_BUILD_ROOT}/lib/modules/%{kernel_version}/extra -install -b -m644 %{kae_driver_path}/hisilicon/sec2/hisi_sec2.ko ${RPM_BUILD_ROOT}/lib/modules/%{kernel_version}/extra -install -b -m644 %{kae_driver_path}/conf/hisi_sec2.conf ${RPM_BUILD_ROOT}/etc/modprobe.d/hisi_sec2.conf -install -b -m644 %{kae_driver_path}/hisilicon/hpre/hisi_hpre.ko ${RPM_BUILD_ROOT}/lib/modules/%{kernel_version}/extra -install -b -m644 %{kae_driver_path}/conf/hisi_hpre.conf ${RPM_BUILD_ROOT}/etc/modprobe.d/hisi_hpre.conf -install -b -m644 %{kae_driver_path}/hisilicon/zip/hisi_zip.ko ${RPM_BUILD_ROOT}/lib/modules/%{kernel_version}/extra -install -b -m644 %{kae_driver_path}/conf/hisi_zip.conf ${RPM_BUILD_ROOT}/etc/modprobe.d/hisi_zip.conf -install -b -m644 %{kae_driver_path}/hisilicon/rde/hisi_rde.ko ${RPM_BUILD_ROOT}/lib/modules/%{kernel_version}/extra -install -b -m644 %{kae_driver_path}/conf/hisi_rde.conf ${RPM_BUILD_ROOT}/etc/modprobe.d/hisi_rde.conf +install -b -m -644 %{kae_driver_path}/uacce/uacce.ko ${RPM_BUILD_ROOT}/lib/modules/%{kernel_version}/extra +install -b -m -644 %{kae_driver_path}/hisilicon/hisi_qm.ko ${RPM_BUILD_ROOT}/lib/modules/%{kernel_version}/extra +install -b -m -644 %{kae_driver_path}/hisilicon/sec2/hisi_sec2.ko ${RPM_BUILD_ROOT}/lib/modules/%{kernel_version}/extra +#install -b -m -644 %{kae_driver_path}/conf/hisi_sec2.conf ${RPM_BUILD_ROOT}/etc/modprobe.d/hisi_sec2.conf +install -b -m -644 %{kae_driver_path}/hisilicon/hpre/hisi_hpre.ko ${RPM_BUILD_ROOT}/lib/modules/%{kernel_version}/extra +#install -b -m -644 %{kae_driver_path}/conf/hisi_hpre.conf ${RPM_BUILD_ROOT}/etc/modprobe.d/hisi_hpre.conf +install -b -m -644 %{kae_driver_path}/hisilicon/zip/hisi_zip.ko ${RPM_BUILD_ROOT}/lib/modules/%{kernel_version}/extra +#install -b -m -644 %{kae_driver_path}/conf/hisi_zip.conf ${RPM_BUILD_ROOT}/etc/modprobe.d/hisi_zip.conf +#install -b -m -644 %{kae_driver_path}/hisilicon/rde/hisi_rde.ko ${RPM_BUILD_ROOT}/lib/modules/%{kernel_version}/extra +#install -b -m -644 %{kae_driver_path}/conf/hisi_rde.conf ${RPM_BUILD_ROOT}/etc/modprobe.d/hisi_rde.conf + +mkdir -p ${RPM_BUILD_ROOT}/usr/lib64 +install -b -m -755 %{kae_uadk_path}/.libs/libwd_comp.so.2.4.0 ${RPM_BUILD_ROOT}/usr/lib64 +install -b -m -755 %{kae_uadk_path}/.libs/libwd_crypto.so.2.4.0 ${RPM_BUILD_ROOT}/usr/lib64 +install -b -m -755 %{kae_uadk_path}/.libs/libwd.so.2.4.0 ${RPM_BUILD_ROOT}/usr/lib64 +install -b -m -755 %{kae_uadk_path}/.libs/libhisi_hpre.so.2.4.0 ${RPM_BUILD_ROOT}/usr/lib64 +install -b -m -755 %{kae_uadk_path}/.libs/libhisi_sec.so.2.4.0 ${RPM_BUILD_ROOT}/usr/lib64 +install -b -m -755 %{kae_uadk_path}/.libs/libhisi_zip.so.2.4.0 ${RPM_BUILD_ROOT}/usr/lib64 +mkdir -p ${RPM_BUILD_ROOT}/usr/include/uadk +mkdir -p ${RPM_BUILD_ROOT}/usr/include/uadk/drv +install -b -m -755 %{kae_uadk_path}/include/hisi_qm_udrv.h ${RPM_BUILD_ROOT}/usr/include/uadk +install -b -m -755 %{kae_uadk_path}/include/wd.h ${RPM_BUILD_ROOT}/usr/include/uadk +install -b -m -755 %{kae_uadk_path}/include/wd_aead.h ${RPM_BUILD_ROOT}/usr/include/uadk +install -b -m -755 %{kae_uadk_path}/include/wd_alg_common.h ${RPM_BUILD_ROOT}/usr/include/uadk +install -b -m -755 %{kae_uadk_path}/include/wd_cipher.h ${RPM_BUILD_ROOT}/usr/include/uadk +install -b -m -755 %{kae_uadk_path}/include/wd_comp.h ${RPM_BUILD_ROOT}/usr/include/uadk +install -b -m -755 %{kae_uadk_path}/include/wd_dh.h ${RPM_BUILD_ROOT}/usr/include/uadk +install -b -m -755 %{kae_uadk_path}/include/wd_digest.h ${RPM_BUILD_ROOT}/usr/include/uadk +install -b -m -755 %{kae_uadk_path}/include/wd_ecc.h ${RPM_BUILD_ROOT}/usr/include/uadk +install -b -m -755 %{kae_uadk_path}/include/wd_ecc_curve.h ${RPM_BUILD_ROOT}/usr/include/uadk +install -b -m -755 %{kae_uadk_path}/include/wd_rsa.h ${RPM_BUILD_ROOT}/usr/include/uadk +install -b -m -755 %{kae_uadk_path}/include/wd_sched.h ${RPM_BUILD_ROOT}/usr/include/uadk +install -b -m -755 %{kae_uadk_path}/include/wd_util.h ${RPM_BUILD_ROOT}/usr/include/uadk +install -b -m -755 %{kae_uadk_path}/include/uacce.h ${RPM_BUILD_ROOT}/usr/include/uadk +install -b -m -755 %{kae_uadk_path}/include/drv/wd_aead_drv.h ${RPM_BUILD_ROOT}/usr/include/uadk/drv +install -b -m -755 %{kae_uadk_path}/include/drv/wd_cipher_drv.h ${RPM_BUILD_ROOT}/usr/include/uadk/drv +install -b -m -755 %{kae_uadk_path}/include/drv/wd_comp_drv.h ${RPM_BUILD_ROOT}/usr/include/uadk/drv +install -b -m -755 %{kae_uadk_path}/include/drv/wd_dh_drv.h ${RPM_BUILD_ROOT}/usr/include/uadk/drv +install -b -m -755 %{kae_uadk_path}/include/drv/wd_digest_drv.h ${RPM_BUILD_ROOT}/usr/include/uadk/drv +install -b -m -755 %{kae_uadk_path}/include/drv/wd_ecc_drv.h ${RPM_BUILD_ROOT}/usr/include/uadk/drv +install -b -m -755 %{kae_uadk_path}/include/drv/wd_rsa_drv.h ${RPM_BUILD_ROOT}/usr/include/uadk/drv %clean rm -rf ${RPM_BUILD_ROOT} -%pre -n uacce +%files +%defattr(644,root,root) +/lib/modules/%{kernel_version}/extra/uacce.ko +/lib/modules/%{kernel_version}/extra/hisi_qm.ko +/lib/modules/%{kernel_version}/extra/hisi_sec2.ko +/lib/modules/%{kernel_version}/extra/hisi_hpre.ko +/lib/modules/%{kernel_version}/extra/hisi_zip.ko +%defattr(755,root,root) +/usr/lib64/libwd.so.2.4.0 +/usr/lib64/libwd_comp.so.2.4.0 +/usr/lib64/libwd_crypto.so.2.4.0 +/usr/lib64/libhisi_hpre.so.2.4.0 +/usr/lib64/libhisi_sec.so.2.4.0 +/usr/lib64/libhisi_zip.so.2.4.0 +/usr/lib64/libhisi_hpre.so.2 +/usr/lib64/libhisi_sec.so.2 +/usr/lib64/libhisi_zip.so.2 +/usr/lib64/libwd.so.2 +/usr/lib64/libwd_comp.so.2 +/usr/lib64/libwd_crypto.so.2 +%defattr(644,root,root) +/usr/include/uadk/hisi_qm_udrv.h +/usr/include/uadk/wd.h +/usr/include/uadk/wd_aead.h +/usr/include/uadk/wd_alg_common.h +/usr/include/uadk/wd_cipher.h +/usr/include/uadk/wd_comp.h +/usr/include/uadk/wd_dh.h +/usr/include/uadk/wd_digest.h +/usr/include/uadk/wd_ecc.h +/usr/include/uadk/wd_ecc_curve.h +/usr/include/uadk/wd_rsa.h +/usr/include/uadk/wd_sched.h +/usr/include/uadk/wd_util.h +/usr/include/uadk/uacce.h +/usr/include/uadk/drv/wd_aead_drv.h +/usr/include/uadk/drv/wd_cipher_drv.h +/usr/include/uadk/drv/wd_comp_drv.h +/usr/include/uadk/drv/wd_dh_drv.h +/usr/include/uadk/drv/wd_digest_drv.h +/usr/include/uadk/drv/wd_ecc_drv.h +/usr/include/uadk/drv/wd_rsa_drv.h + +%pre +if [ "$1" = "2" ] ; then #2: update + rm -rf /usr/lib64/libwd.so > /dev/null 2>&1 || true + rm -rf /usr/lib64/libwd.so.1 > /dev/null 2>&1 || true + + rm -rf /usr/lib64/libwd_comp.so > /dev/null 2>&1 || true + rm -rf /usr/lib64/libwd_comp.so.1 > /dev/null 2>&1 || true + + rm -rf /usr/lib64/libwd_crypto.so > /dev/null 2>&1 || true + rm -rf /usr/lib64/libwd_crypto.so.1 > /dev/null 2>&1 || true + + rm -rf /usr/lib64/libhisi_hpre.so > /dev/null 2>&1 || true + rm -rf /usr/lib64/libhisi_hpre.so.1 > /dev/null 2>&1 || true + + rm -rf /usr/lib64/libhisi_sec.so > /dev/null 2>&1 || true + rm -rf /usr/lib64/libhisi_sec.so.1 > /dev/null 2>&1 || true + + rm -rf /usr/lib64/libhisi_zip.so > /dev/null 2>&1 || true + rm -rf /usr/lib64/libhisi_zip.so.1 > /dev/null 2>&1 || true +fi + echo "checking installed modules" if [[ "$1" = "1" || "$1" = "2" ]] ; then #1: install 2: update echo "uacce modules start to install" fi -%pre -n hisi_sec2 echo "checking installed modules" if [[ "$1" = "1" || "$1" = "2" ]] ; then #1: install 2: update echo "hisi_sec2 modules start to install" fi -%pre -n hisi_hpre echo "checking installed modules" if [[ "$1" = "1" || "$1" = "2" ]] ; then #1: install 2: update echo "hisi_hpre modules start to install" fi -%pre -n hisi_zip echo "checking installed modules" if [[ "$1" = "1" || "$1" = "2" ]] ; then #1: install 2: update echo "hisi_zip modules start to install" fi -%pre -n hisi_rde -echo "checking installed modules" +%post if [[ "$1" = "1" || "$1" = "2" ]] ; then #1: install 2: update - echo "hisi_rde modules start to install" + cd /usr/lib64 + ln -sf libwd.so.2.4.0 libwd.so + ln -sf libwd.so.2.4.0 libwd.so.1 + + ln -sf libwd_comp.so.2.4.0 libwd_comp.so + ln -sf libwd_comp.so.2.4.0 libwd_comp.so.1 + + ln -sf libwd_crypto.so.2.4.0 libwd_crypto.so + ln -sf libwd_crypto.so.2.4.0 libwd_crypto.so.1 + + ln -sf libhisi_hpre.so.2.4.0 libhisi_hpre.so + ln -sf libhisi_hpre.so.2.4.0 libhisi_hpre.so.1 + + ln -sf libhisi_sec.so.2.4.0 libhisi_sec.so + ln -sf libhisi_sec.so.2.4.0 libhisi_sec.so.1 + + ln -sf libhisi_zip.so.2.4.0 libhisi_zip.so + ln -sf libhisi_zip.so.2.4.0 libhisi_zip.so.1 fi +/sbin/ldconfig -%post -n uacce if [[ "$1" = "1" || "$1" = "2" ]] ; then #1: install 2: update + if [ -e /sbin/weak-modules ]; then + echo "/lib/modules/%{kernel_version}/extra/uacce.ko" | /sbin/weak-modules --add-module --no-initramfs + echo "/lib/modules/%{kernel_version}/extra/hisi_qm.ko" | /sbin/weak-modules --add-module --no-initramfs + fi /sbin/depmod -a > /dev/null 2>&1 || true fi echo "uacce modules installed" -%post -n hisi_sec2 if [[ "$1" = "1" || "$1" = "2" ]] ; then #1: install 2: update + if [ -e /sbin/weak-modules ]; then + echo "/lib/modules/%{kernel_version}/extra/hisi_sec2.ko" | /sbin/weak-modules --add-module --no-initramfs + fi /sbin/depmod -a > /dev/null 2>&1 || true fi echo "hisi_sec2 modules installed" -%post -n hisi_hpre if [[ "$1" = "1" || "$1" = "2" ]] ; then #1: install 2: update + if [ -e /sbin/weak-modules ]; then + echo "/lib/modules/%{kernel_version}/extra/hisi_hpre.ko" | /sbin/weak-modules --add-module --no-initramfs + fi /sbin/depmod -a > /dev/null 2>&1 || true fi echo "hisi_hpre modules installed" -%post -n hisi_zip if [[ "$1" = "1" || "$1" = "2" ]] ; then #1: install 2: update + if [ -e /sbin/weak-modules ]; then + echo "/lib/modules/%{kernel_version}/extra/hisi_zip.ko" | /sbin/weak-modules --add-module --no-initramfs + fi /sbin/depmod -a > /dev/null 2>&1 || true fi echo "hisi_zip modules installed" -%post -n hisi_rde -if [[ "$1" = "1" || "$1" = "2" ]] ; then #1: install 2: update - /sbin/depmod -a > /dev/null 2>&1 || true +%preun +if [ "$1" = "0" ] ; then #0: uninstall + rm -rf /usr/lib64/libwd.so > /dev/null 2>&1 || true + rm -rf /usr/lib64/libwd.so.1 > /dev/null 2>&1 || true + + rm -rf /usr/lib64/libwd_comp.so > /dev/null 2>&1 || true + rm -rf /usr/lib64/libwd_comp.so.1 > /dev/null 2>&1 || true + + rm -rf /usr/lib64/libwd_crypto.so > /dev/null 2>&1 || true + rm -rf /usr/lib64/libwd_crypto.so.1 > /dev/null 2>&1 || true + + rm -rf /usr/lib64/libhisi_hpre.so > /dev/null 2>&1 || true + rm -rf /usr/lib64/libhisi_hpre.so.1 > /dev/null 2>&1 || true + + rm -rf /usr/lib64/libhisi_sec.so > /dev/null 2>&1 || true + rm -rf /usr/lib64/libhisi_sec.so.1 > /dev/null 2>&1 || true + + rm -rf /usr/lib64/libhisi_zip.so > /dev/null 2>&1 || true + rm -rf /usr/lib64/libhisi_zip.so.1 > /dev/null 2>&1 || true fi -echo "hisi_rde modules installed" -%preun -n uacce +if [ -e /sbin/weak-modules ]; then + echo "/lib/modules/%{kernel_version}/extra/uacce.ko" | /sbin/weak-modules --remove-module --no-initramfs + echo "/lib/modules/%{kernel_version}/extra/hisi_qm.ko" | /sbin/weak-modules --remove-module --no-initramfs +fi +/sbin/depmod -a > /dev/null 2>&1 || true if [ "$1" = "0" ] ; then #0: uninstall echo "uacce modules uninstalling" fi -%preun -n hisi_sec2 +if [ -e /sbin/weak-modules ]; then + echo "/lib/modules/%{kernel_version}/extra/hisi_sec2.ko" | /sbin/weak-modules --remove-module --no-initramfs +fi if [ "$1" = "0" ] ; then #0: uninstall echo "hisi_sec2 modules uninstalling" fi -%preun -n hisi_hpre +if [ -e /sbin/weak-modules ]; then + echo "/lib/modules/%{kernel_version}/extra/hisi_hpre.ko" | /sbin/weak-modules --remove-module --no-initramfs +fi if [ "$1" = "0" ] ; then #0: uninstall echo "hisi_hpre modules uninstalling" fi -%preun -n hisi_zip +if [ -e /sbin/weak-modules ]; then + echo "/lib/modules/%{kernel_version}/extra/hisi_zip.ko" | /sbin/weak-modules --remove-module --no-initramfs +fi if [ "$1" = "0" ] ; then #0: uninstall echo "hisi_zip modules uninstalling" fi -%preun -n hisi_rde -if [ "$1" = "0" ] ; then #0: uninstall - echo "hisi_rde modules uninstalling" -fi +%postun +/sbin/ldconfig -%postun -n uacce if [ "$1" = "0" ] ; then #0: uninstall /sbin/depmod -a > /dev/null 2>&1 || true fi echo "uacce modules uninstalled" -%postun -n hisi_sec2 if [ "$1" = "0" ] ; then #0: uninstall + if [ -e /sbin/weak-modules ]; then + echo "/lib/modules/%{kernel_version}/extra/hisi_sec2.ko" | /sbin/weak-modules --remove-module --no-initramfs + fi /sbin/depmod -a > /dev/null 2>&1 || true fi echo "hisi_sec2 modules uninstalled" -%postun -n hisi_hpre if [ "$1" = "0" ] ; then #0: uninstall + if [ -e /sbin/weak-modules ]; then + echo "/lib/modules/%{kernel_version}/extra/hisi_hpre.ko" | /sbin/weak-modules --remove-module --no-initramfs + fi /sbin/depmod -a > /dev/null 2>&1 || true fi echo "hisi_hpre modules uninstalled" -%postun -n hisi_zip -if [ "$1" = "0" ] ; then #0: uninstall +if [ "$1" = "0" ]; then #0: uninstall + if [ -e /sbin/weak-modules ]; then + echo "/lib/modules/%{kernel_version}/extra/hisi_zip.ko" | /sbin/weak-modules --remove-module --no-initramfs + fi /sbin/depmod -a > /dev/null 2>&1 || true fi echo "hisi_zip modules uninstalled" -%postun -n hisi_rde -if [ "$1" = "0" ] ; then #0: uninstall - /sbin/depmod -a > /dev/null 2>&1 || true -fi -echo "hisi_rde modules uninstalled" - -%files -n uacce -%defattr(644,root,root) -/lib/modules/%{kernel_version}/extra/uacce.ko -/lib/modules/%{kernel_version}/extra/hisi_qm.ko - - -%files -n hisi_sec2 -%defattr(644,root,root) -/lib/modules/%{kernel_version}/extra/hisi_sec2.ko -%config(noreplace) /etc/modprobe.d/hisi_sec2.conf - -%files -n hisi_hpre -%defattr(644,root,root) -/lib/modules/%{kernel_version}/extra/hisi_hpre.ko -%config(noreplace) /etc/modprobe.d/hisi_hpre.conf - -%files -n hisi_zip -%defattr(644,root,root) -/lib/modules/%{kernel_version}/extra/hisi_zip.ko -%config(noreplace) /etc/modprobe.d/hisi_zip.conf - -%files -n hisi_rde -%defattr(644,root,root) -/lib/modules/%{kernel_version}/extra/hisi_rde.ko -%config(noreplace) /etc/modprobe.d/hisi_rde.conf - %changelog -* Wed Nov 11 2020 wangyue - 1.3.9-1 -- Fix kae_driver build error on kernel 5.10 - -* Sun Mar 15 2020 zhangtao 1.2.10-3 -- specify aarch64 compilation - -* Tue Mar 03 2020 catastrowings 1.2.10-2 -- openEuler init - * Tue Jan 07 2020 jinbinhua 1.2.7-1 - First Spec Version Include all Kunpeng Accelerator Engine Kernel Driver Code diff --git a/kaezip.spec b/kaezip.spec new file mode 100644 index 0000000000000000000000000000000000000000..048ae13fab658acb78656062c29371d4a06323e8 --- /dev/null +++ b/kaezip.spec @@ -0,0 +1,135 @@ +Name: kae_zip +Summary: Huawei Kunpeng Accelerator Engine Zip +Version: 2.0.0 +Release: 1%dist +License: Apache-2.0 +Source: KAE-%{version}.tar.gz +ExclusiveOS: linux +BuildRoot: %{_tmppath}/%{name}-%{version}-root +Conflicts: %{name} < %{version}-%{release} +Provides: %{name} = %{version}-%{release} +Requires: libwd >= %{version} +Autoreq: no +Autoprov: no + +%define zlib_version 1.2.11 +%define zstd_version 1.5.2 + +%description +This package contains the Huawei Hisilicon Zip Accelerator Engine. + +%prep +%global debug_package %{nil} +%setup -c -n %{name}-%{version} + +%build +cd KAEZstd +sh build.sh install + +cd .. +cd KAEZlib +sh setup.sh build + +%install +mkdir -p ${RPM_BUILD_ROOT}/usr/local/KAEZlib/lib +mkdir -p ${RPM_BUILD_ROOT}/usr/local/KAEZlib/include +mkdir -p ${RPM_BUILD_ROOT}/usr/local/KAEZlib/lib/pkgconfig +mkdir -p ${RPM_BUILD_ROOT}/usr/local/KAEZlib/share/man/man3 +install -b -m -755 KAEZlib/libkaezip.so.1.3.11 ${RPM_BUILD_ROOT}/usr/local/KAEZlib/lib +install -b -m -755 KAEZlib/include/kaezip.h ${RPM_BUILD_ROOT}/usr/local/KAEZlib/include +install -b -m -755 KAEZlib/open_source/zlib-%{zlib_version}/libz.so.%{zlib_version} ${RPM_BUILD_ROOT}/usr/local/KAEZlib/lib +install -b -m -644 KAEZlib/open_source/zlib-%{zlib_version}/libz.a ${RPM_BUILD_ROOT}/usr/local/KAEZlib/lib +install -b -m -644 KAEZlib/open_source/zlib-%{zlib_version}/zlib.pc ${RPM_BUILD_ROOT}/usr/local/KAEZlib/lib/pkgconfig +install -b -m -644 KAEZlib/open_source/zlib-%{zlib_version}/zlib.3 ${RPM_BUILD_ROOT}/usr/local/KAEZlib/share/man/man3 +install -b -m -644 KAEZlib/open_source/zlib-%{zlib_version}/zlib.h ${RPM_BUILD_ROOT}/usr/local/KAEZlib/include +install -b -m -644 KAEZlib/open_source/zlib-%{zlib_version}/zconf.h ${RPM_BUILD_ROOT}/usr/local/KAEZlib/include + +mkdir -p ${RPM_BUILD_ROOT}/usr/local/KAEZstd/lib +mkdir -p ${RPM_BUILD_ROOT}/usr/local/KAEZstd/include +mkdir -p ${RPM_BUILD_ROOT}/usr/local/KAEZstd/lib/pkgconfig +mkdir -p ${RPM_BUILD_ROOT}/usr/local/KAEZstd/share/man/man3 +install -b -m -755 KAEZstd/libkaezstd.so.0.0.1 ${RPM_BUILD_ROOT}/usr/local/KAEZstd/lib +install -b -m -755 KAEZstd/include/kaezstd.h ${RPM_BUILD_ROOT}/usr/local/KAEZstd/include +install -b -m -755 KAEZstd/open_source/zstd/lib/libzstd.so.%{zstd_version} ${RPM_BUILD_ROOT}/usr/local/KAEZstd/lib +install -b -m -644 KAEZstd/open_source/zstd/lib/libzstd.a ${RPM_BUILD_ROOT}/usr/local/KAEZstd/lib +install -b -m -644 KAEZstd/open_source/zstd/lib/libzstd.pc ${RPM_BUILD_ROOT}/usr/local/KAEZstd/lib/pkgconfig +#install -b -m -644 KAEZstd/open_source/zstd/lib/zlib.3 ${RPM_BUILD_ROOT}/usr/local/KAEZstd/share/man/man3 +install -b -m -644 KAEZstd/open_source/zstd/lib/zstd.h ${RPM_BUILD_ROOT}/usr/local/KAEZstd/include +install -b -m -644 KAEZstd/open_source/zstd/lib/zdict.h ${RPM_BUILD_ROOT}/usr/local/KAEZstd/include +install -b -m -644 KAEZstd/open_source/zstd/lib/zstd_errors.h ${RPM_BUILD_ROOT}/usr/local/KAEZstd/include + +%clean +rm -rf ${RPM_BUILD_ROOT} + +%files +%defattr(755,root,root) +/usr/local/KAEZlib/lib/libkaezip.so.1.3.11 +/usr/local/KAEZlib/include/kaezip.h +/usr/local/KAEZlib/lib/libz.so.%{zlib_version} +%defattr(644,root,root) +/usr/local/KAEZlib/lib/libz.a +/usr/local/KAEZlib/lib/pkgconfig/zlib.pc +/usr/local/KAEZlib/share/man/man3/zlib.3 +/usr/local/KAEZlib/include/zlib.h +/usr/local/KAEZlib/include/zconf.h + +%defattr(755,root,root) +/usr/local/KAEZstd/lib/libkaezstd.so.0.0.1 +/usr/local/KAEZstd/include/kaezstd.h +/usr/local/KAEZstd/lib/libzstd.so.%{zstd_version} +%defattr(644,root,root) +/usr/local/KAEZstd/lib/libzstd.a +/usr/local/KAEZstd/lib/pkgconfig/libzstd.pc +#/usr/local/KAEZstd/share/man/man3/zlib.3 +/usr/local/KAEZstd/include/zstd.h +/usr/local/KAEZstd/include/zdict.h +/usr/local/KAEZstd/include/zstd_errors.h + +%pre +if [ "$1" = "2" ] ; then #2: update + rm -rf /usr/local/KAEZlib/lib/libkaezip.so > /dev/null 2>&1 || true + rm -rf /usr/local/KAEZlib/lib/libkaezip.so.0 > /dev/null 2>&1 || true + rm -rf /usr/local/KAEZlib/lib/libz.so > /dev/null 2>&1 || true + rm -rf /usr/local/KAEZlib/lib/libz.so.1 > /dev/null 2>&1 || true + + rm -rf /usr/local/KAEZstd/lib/libkaezstd.so > /dev/null 2>&1 || true + rm -rf /usr/local/KAEZstd/lib/libkaezstd.so.0 > /dev/null 2>&1 || true + rm -rf /usr/local/KAEZstd/lib/libzstd.so > /dev/null 2>&1 || true + rm -rf /usr/local/KAEZstd/lib/libzstd.so.1 > /dev/null 2>&1 || true +fi + +%post +if [[ "$1" = "1" || "$1" = "2" ]] ; then #1: install 2: update + ln -sf /usr/local/KAEZlib/lib/libkaezip.so.1.3.11 /usr/local/KAEZlib/lib/libkaezip.so + ln -sf /usr/local/KAEZlib/lib/libkaezip.so.1.3.11 /usr/local/KAEZlib/lib/libkaezip.so.0 + ln -sf /usr/local/KAEZlib/lib/libz.so.%{zlib_version} /usr/local/KAEZlib/lib/libz.so + ln -sf /usr/local/KAEZlib/lib/libz.so.%{zlib_version} /usr/local/KAEZlib/lib/libz.so.1 + + ln -sf /usr/local/KAEZstd/lib/libkaezstd.so.0.0.1 /usr/local/KAEZstd/lib/libkaezstd.so + ln -sf /usr/local/KAEZstd/lib/libkaezstd.so.0.0.1 /usr/local/KAEZstd/lib/libkaezstd.so.0 + ln -sf /usr/local/KAEZstd/lib/libzstd.so.%{zstd_version} /usr/local/KAEZstd/lib/libzstd.so + ln -sf /usr/local/KAEZstd/lib/libzstd.so.%{zstd_version} /usr/local/KAEZstd/lib/libzstd.so.1 +fi +/sbin/ldconfig + +%preun +if [ "$1" = "0" ] ; then #0: uninstall + rm -rf /usr/local/KAEZlib/lib/libz.so > /dev/null 2>&1 || true + rm -rf /usr/local/KAEZlib/lib/libz.so.1 > /dev/null 2>&1 || true + rm -rf /usr/local/KAEZlib/lib/libkaezip.so > /dev/null 2>&1 || true + rm -rf /usr/local/KAEZlib/lib/libkaezip.so.0 > /dev/null 2>&1 || true + + rm -rf /usr/local/KAEZstd/lib/libzstd.so > /dev/null 2>&1 || true + rm -rf /usr/local/KAEZstd/lib/libzstd.so.1 > /dev/null 2>&1 || true + rm -rf /usr/local/KAEZstd/lib/libkaezstd.so > /dev/null 2>&1 || true + rm -rf /usr/local/KAEZstd/lib/libkaezstd.so.0 > /dev/null 2>&1 || true + rm -f /var/log/kaezip.log > /dev/null 2>&1 || true + rm -f /var/log/kaezip.log.old > /dev/null 2>&1 || true +fi + +%postun +/sbin/ldconfig + +%changelog +* Tue Jan 07 2020 jinbinhua 1.2.7-1 +- First Spec Version Include kunpeng accelerator engine Code diff --git a/support-kernel-5.7.0-compation.patch b/support-kernel-5.7.0-compation.patch deleted file mode 100644 index 37d4b3dc427cd5402bacf37fbef466f78850cbc8..0000000000000000000000000000000000000000 --- a/support-kernel-5.7.0-compation.patch +++ /dev/null @@ -1,38 +0,0 @@ -From b3dd45f0dc62148045cdbdc52dbaac6c7f136efe Mon Sep 17 00:00:00 2001 -From: wang_yue111 <648774160@qq.com> -Date: Wed, 11 Nov 2020 15:43:59 +0800 -Subject: [PATCH] fix pci_cleanup_aer_uncorrect_error_status renamed to pci_aer_clear_nonfatal_status since kernel 5.7.0 - ---- - kae_driver/hisilicon/qm.c | 8 ++++++-- - 1 file changed, 6 insertions(+), 2 deletions(-) - -diff --git a/kae_driver/hisilicon/qm.c b/KAEdriver-1.3.9/kae_driver/hisilicon/qm.c -index 35aa107..601b9c2 100644 ---- a/kae_driver/hisilicon/qm.c -+++ b/kae_driver/hisilicon/qm.c -@@ -13,6 +13,7 @@ - #include - #include "qm.h" - #include "qm_usr_if.h" -+#include - - /* eq/aeq irq enable */ - #define QM_VF_AEQ_INT_SOURCE 0x0 -@@ -4127,8 +4128,11 @@ pci_ers_result_t hisi_qm_dev_slot_reset(struct pci_dev *pdev) - return PCI_ERS_RESULT_RECOVERED; - - pci_info(pdev, "Requesting reset due to PCI error\n"); -- pci_cleanup_aer_uncorrect_error_status(pdev); -- -+#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,7,0) -+ pci_aer_clear_nonfatal_status(pdev); -+#else -+ pci_cleanup_aer_uncorrect_error_status(pdev); -+#endif - /* reset pcie device controller */ - ret = hisi_qm_controller_reset(qm); - if (ret) { --- -2.23.0 -