Support out of tree modules in kernel 5.10.

1. Upgrade opae-fpga-driver from version 2.0.1-8 to version 2.0.1-10.
2. Upgrade qat17 from version 4.5 to version 4.14.
   Deleted patch Get-and-report-the-return-code-on-firmware-load-fail.patch
   because the new code already had the fix.
3. Upgrade mlnx-ofa_kernel from version 5.0 to version 5.3.
4. Use dpdk-kmods-2a9f0f72a2d926382634cf8f1de10e1acf57542b.tar.gz for igb_uio.
5. Keep intel-i40e, intel-ice, and intel-iavf.
   Add devtoolset-8 for building, and fix a build issue with iavf.
6. Deleted drbd, intel-e1000e, intel-ixgbe and intel-ixgbevf that are
   used in kernel tree.

Story: 2008921
Partial-Task: 42519

Depends-On: https://review.opendev.org/c/starlingx/kernel/+/798790

Signed-off-by: Jiping Ma <jiping.ma2@windriver.com>
Change-Id: I4ecc38d0669dce187de0a64331577babda5921b7
This commit is contained in:
Jiping Ma
2021-06-30 02:26:22 -04:00
parent 7b55e47e1d
commit f438b8b5f6
57 changed files with 917 additions and 2539 deletions

View File

@@ -1,6 +1,5 @@
COPY_LIST=" \
$PATCHES_BASE/* \
$STX_BASE/downloads/opae-intel-fpga-driver-2.0.1-8.tar.gz"
$PATCHES_BASE/* "
OPT_DEP_LIST_FOR_BUILD_TYPE[std]=$GIT_BASE/kernel-std
OPT_DEP_LIST_FOR_BUILD_TYPE[rt]=$GIT_BASE/kernel-rt
BASE_SRCREV_FOR_PATH[$GIT_BASE/kernel-std]=b3b85950aecb5fef6902d4dfcf578b402ec6a69d

View File

@@ -1,108 +0,0 @@
%if "%{?_tis_build_type}" == "rt"
%define bt_ext -rt
%else
%undefine bt_ext
%endif
# Define the kmod package name here.
%define kmod_name opae-intel-fpga-driver
# If a release doesn't have an iteration number, just use 0
%define iteration 8
Name: %{kmod_name}-kmod%{?bt_ext}
Version: 2.0.1
Release: %{iteration}%{?_tis_dist}.%{tis_patch_ver}
Group: System Environment/Kernel
License: GPLv2
Summary: %{kmod_name}%{?bt_ext} kernel module(s)
URL: http://www.intel.com/
BuildRequires: kernel%{?bt_ext}-devel, redhat-rpm-config, perl, openssl, elfutils-libelf-devel
ExclusiveArch: x86_64
# Sources.
# The source tarball name may or may not include the iteration number.
Source0: %{kmod_name}-%{version}-%{iteration}.tar.gz
Patch01: Remove-regmap-mmio-as-it-is-built-into-the-kernel.patch
Patch02: Fix-compile-error-with-CentOS-8.1-4.18.0-147-kernel.patch
Patch03: Fix-wrong-kernel-version.patch
%define kversion %(rpm -q kernel%{?bt_ext}-devel | sort --version-sort | tail -1 | sed 's/kernel%{?bt_ext}-devel-//')
%package -n kmod-opae-fpga-driver%{?bt_ext}
Summary: OPAE fpga driver kernel module(s)
Group: System Environment/Kernel
%global _use_internal_dependency_generator 0
Provides: kernel-modules >= %{kversion}
Provides: opae-intel-fpga-driver-kmod = %{?epoch:%{epoch}:}%{version}-%{release}
Requires(post): /usr/sbin/depmod
Requires(postun): /usr/sbin/depmod
%description -n kmod-opae-fpga-driver%{?bt_ext}
This package provides the opae-fpga-driver kernel module(s) built
for the Linux kernel using the %{_target_cpu} family of processors.
%post -n kmod-opae-fpga-driver%{?bt_ext}
echo "Working. This may take some time ..."
if [ -e "/boot/System.map-%{kversion}" ]; then
/usr/sbin/depmod -aeF "/boot/System.map-%{kversion}" "%{kversion}" > /dev/null || :
fi
echo "Done."
%preun -n kmod-opae-fpga-driver%{?bt_ext}
rpm -ql kmod-opae-fpga-driver%{?bt_ext}-%{version}-%{release}.x86_64 | grep '\.ko$' > /var/run/rpm-kmod-opae-fpga-driver%{?bt_ext}-modules
%postun -n kmod-opae-fpga-driver%{?bt_ext}
echo "Working. This may take some time ..."
if [ -e "/boot/System.map-%{kversion}" ]; then
/usr/sbin/depmod -aeF "/boot/System.map-%{kversion}" "%{kversion}" > /dev/null || :
fi
rm /var/run/rpm-kmod-opae-fpga-driver%{?bt_ext}-modules
echo "Done."
%files -n kmod-opae-fpga-driver%{?bt_ext}
%defattr(644,root,root,755)
/lib/modules/%{kversion}/
%doc /usr/share/doc/kmod-%{kmod_name}-%{version}/
# Disable the building of the debug package(s).
%define debug_package %{nil}
%description
This package provides the %{kmod_name} kernel module(s).
It is built to depend upon the specific ABI provided by a range of releases
of the same variant of the Linux kernel and not on any one specific build.
%prep
%autosetup -p 1 -n %{kmod_name}-%{version}-%{iteration}
%{__gzip} %{kmod_name}.7
%build
%{__make} KERNELDIR=%{_usrsrc}/kernels/%{kversion}
%install
%{__install} -d %{buildroot}/lib/modules/%{kversion}/extra/%{kmod_name}/
%{__install} %{_builddir}/%{kmod_name}-%{version}-%{iteration}/*.ko %{buildroot}/lib/modules/%{kversion}/extra/%{kmod_name}/
%{__install} -d %{buildroot}%{_defaultdocdir}/kmod-%{kmod_name}-%{version}/
%{__install} LICENSE %{buildroot}%{_defaultdocdir}/kmod-%{kmod_name}-%{version}/
%{__install} COPYING %{buildroot}%{_defaultdocdir}/kmod-%{kmod_name}-%{version}/
%{__install} -d %{buildroot}%{_sysconfdir}/modules-load.d
# Strip the modules(s).
find %{buildroot} -type f -name \*.ko -exec %{__strip} --strip-debug \{\} \;
# Always Sign the modules(s).
# If the module signing keys are not defined, define them here.
%{!?privkey: %define privkey /usr/src/kernels/%{kversion}/signing_key.pem}
%{!?pubkey: %define pubkey /usr/src/kernels/%{kversion}/signing_key.x509}
for module in $(find %{buildroot} -type f -name \*.ko);
do /usr/src/kernels/%{kversion}/scripts/sign-file \
sha256 %{privkey} %{pubkey} $module;
done
%clean
%{__rm} -rf %{buildroot}
%changelog
* Thu Feb 11 2016 Matthias Saou <matthias@saou.eu> 1.4.25-1
- Initial RPM package, based on elrepo.org's ixgbe one.

View File

@@ -0,0 +1,52 @@
From 70669797bbce2b74a78fb777d7acb87d93fee752 Mon Sep 17 00:00:00 2001
From: Jiping Ma <jiping.ma2@windriver.com>
Date: Sun, 27 Jun 2021 23:52:04 -0700
Subject: [PATCH 2/2] Fix build issues
Signed-off-by: Jiping Ma <jiping.ma2@windriver.com>
---
opae-intel-fpga-driver.spec | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/SPECS/opae-intel-fpga-driver.spec b/SPECS/opae-intel-fpga-driver.spec
index 48f0590..3701475 100755
--- a/SPECS/opae-intel-fpga-driver.spec
+++ b/SPECS/opae-intel-fpga-driver.spec
@@ -42,6 +42,8 @@ BuildRequires: kernel%{?bt_ext}-devel
%endif
Requires: dkms, gcc, kernel%{?bt_ext}-devel, make
%define debug_package ${nil}
+Patch0001: Fix-build-errors.patch
+Patch0002: use-altera.h-from-driver-instead-of-from-kernel.patch
%package -n kmod-opae-fpga-driver%{?bt_ext}
Summary: OPAE modules files
@@ -74,6 +76,8 @@ source scl_source enable devtoolset-8 || :
source scl_source enable llvm-toolset-7.0 || :
%endif
%setup -q -n %{kmod_name}-%{version}
+%patch0001 -p1
+%patch0002 -p1
%description
OPAE Driver
@@ -240,13 +244,15 @@ rm -rf $RPM_BUILD_ROOT
%files -n kmod-opae-fpga-driver%{?bt_ext}
%defattr(-,root,root)
-/usr/src/%{kmod_name}-%{version}-%{_release}
+/lib/modules
+/etc/udev
%files -n kmod-opae-fpga-driver%{?bt_ext}-devel
#/usr/include/*
%files -n kmod-opae-fpga-driver%{?bt_ext}-prebuilt
%defattr(-,root,root)
+/usr/src/%{kmod_name}-%{version}-%{_release}
/lib/modules
/etc/udev
--
2.31.1

View File

@@ -0,0 +1,2 @@
Support-TiS-system-and-devtoolset-8.patch
Fix-build-issues.patch

View File

@@ -0,0 +1,290 @@
From 0bafdeac82f1f1544b73c5d55521e694cfa2a4ac Mon Sep 17 00:00:00 2001
From: Jiping Ma <jiping.ma2@windriver.com>
Date: Tue, 22 Jun 2021 23:40:36 -0700
Subject: [PATCH 1/2] Support-TiS-system and devtoolset-8
Support-TiS-system and build with devtoolset-8, also
change package name from opae-intel-fpga-driver to
kmod-opae-fpga-driver.
Signed-off-by: Jiping Ma <jiping.ma2@windriver.com>
---
opae-intel-fpga-driver.spec | 157 ++++++++++++++++++++++--------------
1 file changed, 97 insertions(+), 60 deletions(-)
diff --git a/SPECS/opae-intel-fpga-driver.spec b/SPECS/opae-intel-fpga-driver.spec
index c8374d8..48f0590 100755
--- a/SPECS/opae-intel-fpga-driver.spec
+++ b/SPECS/opae-intel-fpga-driver.spec
@@ -1,19 +1,35 @@
#
# OPAE Drivers rpm .spec file
#
+%if "%{?_tis_build_type}" == "rt"
+%define bt_ext -rt
+%else
+%undefine bt_ext
+%endif
+
+# Define the kmod package name here.
+%define kmod_name opae-intel-fpga-driver
+
Summary: Create OPAE Driver source and binary rpm packages.
-Name: opae-intel-fpga-driver
+Name: opae-intel-fpga-driver%{?bt_ext}
Version: 2.0.1
-Release: 10
+%define _release 10
+Release: %{_release}%{?_tis_dist}.%{tis_patch_ver}
License: GPL V2
Group: Applications/System
Distribution: CentOS Linux
Vendor: Intel Corporation
-Source: %{name}-%{version}.tar.gz
+Source: %{kmod_name}-%{version}.tar.gz
Exclusiveos: linux
ExclusiveArch: i386 i586 i686 x86_64
-Buildroot: %{_builddir}/%{name}-%{version}
-BuildRequires: kernel-headers, kernel-devel, tar, gcc, make
+Buildroot: %{_builddir}/%{kmod_name}-%{version}
+BuildRequires: kernel%{?bt_ext}-devel, tar, gcc, make
+%if 0%{?rhel} == 7
+BuildRequires: devtoolset-8-build
+BuildRequires: devtoolset-8-binutils
+BuildRequires: devtoolset-8-gcc
+BuildRequires: devtoolset-8-make
+%endif
#BuildRequires: osv-linux4.14-devel
#BuildRequires: osv-linux4.16-devel
#BuildRequires: osv-linux4.19-devel
@@ -21,40 +37,58 @@ BuildRequires: kernel-headers, kernel-devel, tar, gcc, make
BuildRequires: kernel-default-devel
%else
%if %{?_vendor} != "clr"
-BuildRequires: kernel-devel
+BuildRequires: kernel%{?bt_ext}-devel
%endif
%endif
-Requires: dkms, gcc, kernel-devel, make
+Requires: dkms, gcc, kernel%{?bt_ext}-devel, make
%define debug_package ${nil}
-%package devel
+%package -n kmod-opae-fpga-driver%{?bt_ext}
+Summary: OPAE modules files
+Group: Applications/System
+%description -n kmod-opae-fpga-driver%{?bt_ext}
+OPAE Modules files
+
+%package -n kmod-opae-fpga-driver%{?bt_ext}-devel
Summary: OPAE modules devel files
Group: Applications/System
-%description devel
+%description -n kmod-opae-fpga-driver%{?bt_ext}-devel
OPAE Modules Development files
-%package prebuilt
+%package -n kmod-opae-fpga-driver%{?bt_ext}-prebuilt
Summary: Prebuilt OPAE drivers for common kernels
Group: Applications/System
-%description prebuilt
+%description -n kmod-opae-fpga-driver%{?bt_ext}-prebuilt
Prebuilt OPAE Drivers for common kernels
-%package source
+%package -n kmod-opae-fpga-driver%{?bt_ext}-source
Summary: Source for the OPAE drivers for common kernels
Group: Applications/System
Requires: gcc, kernel-devel, make
-%description source
+%description -n kmod-opae-fpga-driver%{?bt_ext}-source
Source for the OPAE Drivers for common kernels
%prep
-%setup -q
+%if 0%{?rhel} == 7
+source scl_source enable devtoolset-8 || :
+source scl_source enable llvm-toolset-7.0 || :
+%endif
+%setup -q -n %{kmod_name}-%{version}
%description
OPAE Driver
%build
+%if 0%{?rhel} == 7
+source scl_source enable devtoolset-8 || :
+source scl_source enable llvm-toolset-7.0 || :
+%endif
%install
+%if 0%{?rhel} == 7
+source scl_source enable devtoolset-8 || :
+source scl_source enable llvm-toolset-7.0 || :
+%endif
FILES_TO_COPY=`ls | grep -v '^build-' | grep -v debian | grep -v spec`
@@ -74,12 +108,6 @@ do
if [ -f $kern/Module.symvers ]
then
kernname=`basename $kern`
- if [[ $kernname == *"2.6."* ]]; then
- continue
- fi
- if [[ $kernname == *"4."* ]]; then
- continue
- fi
if ! grep -q "CONFIG_REGMAP=y" $kern/include/config/auto.conf ; then
continue
fi
@@ -95,57 +123,66 @@ done
# Remove the depmod related file we will not be including
rm -f $RPM_BUILD_ROOT/lib/modules/*/modules.*
+# Always Sign the modules(s).
+# If the module signing keys are not defined, define them here.
+%{!?privkey: %define privkey /usr/src/kernels/${kernname}/signing_key.pem}
+%{!?pubkey: %define pubkey /usr/src/kernels/${kernname}/signing_key.x509}
+for module in $(find %{buildroot} -type f -name \*.ko);
+do /usr/src/kernels/${kernname}/scripts/sign-file \
+ sha256 %{privkey} %{pubkey} $module;
+done
+
# Now, install the source for the DKMS package
-install -d $RPM_BUILD_ROOT/usr/src/%{name}-%{version}
-cp -a drivers $RPM_BUILD_ROOT/usr/src/%{name}-%{version}
-cp -a include $RPM_BUILD_ROOT/usr/src/%{name}-%{version}
-cp -a scripts $RPM_BUILD_ROOT/usr/src/%{name}-%{version}
-cp -a lib-4-12 $RPM_BUILD_ROOT/usr/src/%{name}-%{version}
-cp -a Makefile $RPM_BUILD_ROOT/usr/src/%{name}-%{version}
-cp -a 40-intel-fpga.rules $RPM_BUILD_ROOT/usr/src/%{name}-%{version}
-cp -a LICENSE $RPM_BUILD_ROOT/usr/src/%{name}-%{version}
+install -d $RPM_BUILD_ROOT/usr/src/%{kmod_name}-%{version}
+cp -a drivers $RPM_BUILD_ROOT/usr/src/%{kmod_name}-%{version}
+cp -a include $RPM_BUILD_ROOT/usr/src/%{kmod_name}-%{version}
+cp -a scripts $RPM_BUILD_ROOT/usr/src/%{kmod_name}-%{version}
+cp -a lib-4-12 $RPM_BUILD_ROOT/usr/src/%{kmod_name}-%{version}
+cp -a Makefile $RPM_BUILD_ROOT/usr/src/%{kmod_name}-%{version}
+cp -a 40-intel-fpga.rules $RPM_BUILD_ROOT/usr/src/%{kmod_name}-%{version}
+cp -a LICENSE $RPM_BUILD_ROOT/usr/src/%{kmod_name}-%{version}
# Now, create/install a source tarball of the driver for the -source package
# Make a tarball of the driver source
-tar -C $RPM_BUILD_ROOT/usr/src --group=root --owner=root -czf $RPM_BUILD_ROOT/usr/src/%{name}-%{version}-%{release}.tar.gz %{name}-%{version}
+tar -C $RPM_BUILD_ROOT/usr/src --group=root --owner=root -czf $RPM_BUILD_ROOT/usr/src/%{kmod_name}-%{version}-%{_release}.tar.gz %{kmod_name}-%{version}
# Set up a specfile
-sed -e 's/PKGVER/%{version}/' -e 's/PKGREL/%{release}/' build/specs/native-build.spec.in >$RPM_BUILD_ROOT/usr/src/%{name}.spec
+sed -e 's/PKGVER/%{version}/' -e 's/PKGREL/%{_release}/' build/specs/native-build.spec.in >$RPM_BUILD_ROOT/usr/src/%{kmod_name}.spec
# Create a source package tarball that rpmbuild can consume directly
-tar -C $RPM_BUILD_ROOT/usr/src --group=root --owner=root -czf $RPM_BUILD_ROOT/usr/src/%{name}-source-%{version}-%{release}.tar.gz %{name}-%{version}-%{release}.tar.gz %{name}.spec
+tar -C $RPM_BUILD_ROOT/usr/src --group=root --owner=root -czf $RPM_BUILD_ROOT/usr/src/%{kmod_name}-source-%{version}-%{_release}.tar.gz %{kmod_name}-%{version}-%{_release}.tar.gz %{kmod_name}.spec
# Clean up the intemediate files
-rm -rf $RPM_BUILD_ROOT/usr/src/%{name}-%{version}-%{release}.tar.gz $RPM_BUILD_ROOT/usr/src/%{name}.spec $RPM_BUILD_ROOT/usr/src/%{name}-%{version}
+rm -rf $RPM_BUILD_ROOT/usr/src/%{kmod_name}-%{version}-%{_release}.tar.gz $RPM_BUILD_ROOT/usr/src/%{kmod_name}.spec $RPM_BUILD_ROOT/usr/src/%{kmod_name}-%{version}
# Prebuilt module udev file
install -d $RPM_BUILD_ROOT/etc/udev/rules.d
cp -a 40-intel-fpga.rules $RPM_BUILD_ROOT/etc/udev/rules.d
# Now, install the source for the DKMS package
-install -d $RPM_BUILD_ROOT/usr/src/%{name}-%{version}-%{release}
-cp -a drivers $RPM_BUILD_ROOT/usr/src/%{name}-%{version}-%{release}
-cp -a include $RPM_BUILD_ROOT/usr/src/%{name}-%{version}-%{release}
-cp -a scripts $RPM_BUILD_ROOT/usr/src/%{name}-%{version}-%{release}
-cp -a lib-4-12 $RPM_BUILD_ROOT/usr/src/%{name}-%{version}-%{release}
-cp -a Makefile $RPM_BUILD_ROOT/usr/src/%{name}-%{version}-%{release}
-cp -a 40-intel-fpga.rules $RPM_BUILD_ROOT/usr/src/%{name}-%{version}-%{release}
-cp -a LICENSE $RPM_BUILD_ROOT/usr/src/%{name}-%{version}-%{release}
+install -d $RPM_BUILD_ROOT/usr/src/%{kmod_name}-%{version}-%{_release}
+cp -a drivers $RPM_BUILD_ROOT/usr/src/%{kmod_name}-%{version}-%{_release}
+cp -a include $RPM_BUILD_ROOT/usr/src/%{kmod_name}-%{version}-%{_release}
+cp -a scripts $RPM_BUILD_ROOT/usr/src/%{kmod_name}-%{version}-%{_release}
+cp -a lib-4-12 $RPM_BUILD_ROOT/usr/src/%{kmod_name}-%{version}-%{_release}
+cp -a Makefile $RPM_BUILD_ROOT/usr/src/%{kmod_name}-%{version}-%{_release}
+cp -a 40-intel-fpga.rules $RPM_BUILD_ROOT/usr/src/%{kmod_name}-%{version}-%{_release}
+cp -a LICENSE $RPM_BUILD_ROOT/usr/src/%{kmod_name}-%{version}-%{_release}
# DKMS stuff
-cp -a dkms-postinst.sh $RPM_BUILD_ROOT/usr/src/%{name}-%{version}-%{release}
-cp -a dkms-postrem.sh $RPM_BUILD_ROOT/usr/src/%{name}-%{version}-%{release}
-sed -e 's/PKGVER/%{version}-%{release}/' dkms-preinst.sh >$RPM_BUILD_ROOT/usr/src/%{name}-%{version}-%{release}/dkms-preinst.sh
-chmod 0755 $RPM_BUILD_ROOT/usr/src/%{name}-%{version}-%{release}/dkms-preinst.sh
-echo "Creating $RPM_BUILD_ROOT/usr/src/%{name}-%{version}-%{release}/dkms.conf"
-sed -e 's/PKGVER/%{version}-%{release}/' dkms.conf >$RPM_BUILD_ROOT/usr/src/%{name}-%{version}-%{release}/dkms.conf
+cp -a dkms-postinst.sh $RPM_BUILD_ROOT/usr/src/%{kmod_name}-%{version}-%{_release}
+cp -a dkms-postrem.sh $RPM_BUILD_ROOT/usr/src/%{kmod_name}-%{version}-%{_release}
+sed -e 's/PKGVER/%{version}-%{_release}/' dkms-preinst.sh >$RPM_BUILD_ROOT/usr/src/%{kmod_name}-%{version}-%{_release}/dkms-preinst.sh
+chmod 0755 $RPM_BUILD_ROOT/usr/src/%{kmod_name}-%{version}-%{_release}/dkms-preinst.sh
+echo "Creating $RPM_BUILD_ROOT/usr/src/%{kmod_name}-%{version}-%{_release}/dkms.conf"
+sed -e 's/PKGVER/%{version}-%{_release}/' dkms.conf >$RPM_BUILD_ROOT/usr/src/%{kmod_name}-%{version}-%{_release}/dkms.conf
%post
-if [ -z "`dkms status -m opae-intel-fpga-driver -v %{version}-%{release}`" ]; then
+if [ -z "`dkms status -m opae-intel-fpga-driver%{?bt_ext} -v %{version}-%{_release}`" ]; then
echo "Add module source to dkms"
- dkms add -m opae-intel-fpga-driver -v %{version}-%{release} --rpm_safe_upgrade
+ dkms add -m opae-intel-fpga-driver%{?bt_ext} -v %{version}-%{_release} --rpm_safe_upgrade
fi
# If we haven't loaded a tarball, then try building it for the current kernel
if [ `uname -r | grep -c "BOOT"` -eq 0 ] && [ -e /lib/modules/`uname -r`/build/include ]; then
- dkms build -m opae-intel-fpga-driver -v %{version}-%{release}
- dkms install -m opae-intel-fpga-driver -v %{version}-%{release} --force
+ dkms build -m opae-intel-fpga-driver%{?bt_ext} -v %{version}-%{_release}
+ dkms install -m opae-intel-fpga-driver%{?bt_ext} -v %{version}-%{_release} --force
elif [ `uname -r | grep -c "BOOT"` -gt 0 ]; then
echo -e ""
@@ -162,8 +199,8 @@ exit 0
%preun
echo -e
-echo -e "Uninstall of opae-intel-fpga-driver module (version %{version}-%{release}) beginning:"
-dkms remove -m opae-intel-fpga-driver -v %{version}-%{release} --all --rpm_safe_upgrade
+echo -e "Uninstall of opae-intel-fpga-driver%{?bt_ext} module (version %{version}-%{_release}) beginning:"
+dkms remove -m opae-intel-fpga-driver%{?bt_ext} -v %{version}-%{_release} --all --rpm_safe_upgrade
if [ "$1" -eq "0" ]
then
find /lib/modules -type f \( -name spi-nor-mod.ko* \
@@ -179,7 +216,7 @@ echo -e "Force regeneration of new initramfs"
dracut --force /boot/initramfs-$(uname -r).img $(uname -r)
exit 0
-%post prebuilt
+%post -n kmod-opae-fpga-driver%{?bt_ext}-prebuilt
depmod=/sbin/depmod
if [ -x /usr/sbin/depmod ]
then
@@ -201,22 +238,22 @@ done
%clean
rm -rf $RPM_BUILD_ROOT
-%files
+%files -n kmod-opae-fpga-driver%{?bt_ext}
%defattr(-,root,root)
-/usr/src/%{name}-%{version}-%{release}
+/usr/src/%{kmod_name}-%{version}-%{_release}
-%files devel
+%files -n kmod-opae-fpga-driver%{?bt_ext}-devel
#/usr/include/*
-%files prebuilt
+%files -n kmod-opae-fpga-driver%{?bt_ext}-prebuilt
%defattr(-,root,root)
/lib/modules
/etc/udev
-%files source
+%files -n kmod-opae-fpga-driver%{?bt_ext}-source
%defattr(-,root,root)
-/usr/src/%{name}-source-%{version}-%{release}.tar.gz
+/usr/src/%{kmod_name}-source-%{version}-%{_release}.tar.gz
%changelog
-* %(date "+%a %b %d %Y") %{version}-%{release}
+* %(date "+%a %b %d %Y") %{version}-%{_release}
-OPAE Intel FPGA Driver Build
--
2.31.1

View File

@@ -0,0 +1,104 @@
From 262f8cbac0e4699edfcc5d1027479f85f9c8177f Mon Sep 17 00:00:00 2001
From: Jiping Ma <jiping.ma2@windriver.com>
Date: Sun, 27 Jun 2021 23:13:51 -0700
Subject: [PATCH 1/2] Fix build errors.
Fix the following issues.
1. readx_poll_timeout redefined
2. change mmap_sem to mmap_lock
because commit da1c55f1b272f4bd54671d459b39ea7b54944ef9
mmap locking API: rename mmap_sem to mmap_lock
3. change i2c_new_device to i2c_new_client_device because
i2c_new_device is deprecated.
Signed-off-by: Jiping Ma <jiping.ma2@windriver.com>
---
drivers/fpga/intel/dma-region.c | 4 ++--
drivers/fpga/intel/fme-main.c | 1 -
drivers/i2c/busses/i2c-altera.c | 3 +--
drivers/mtd/devices/intel-on-chip-flash.c | 1 -
drivers/mtd/spi-nor/intel-generic-qspi.c | 1 -
5 files changed, 3 insertions(+), 7 deletions(-)
diff --git a/drivers/fpga/intel/dma-region.c b/drivers/fpga/intel/dma-region.c
index 87c8f32..d6749b1 100644
--- a/drivers/fpga/intel/dma-region.c
+++ b/drivers/fpga/intel/dma-region.c
@@ -51,7 +51,7 @@ static long afu_dma_adjust_locked_vm(struct device *dev, long npages, bool incr)
if (!current->mm)
return 0;
- down_write(&current->mm->mmap_sem);
+ down_write(&current->mm->mmap_lock);
if (incr) {
locked = current->mm->locked_vm + npages;
@@ -75,7 +75,7 @@ static long afu_dma_adjust_locked_vm(struct device *dev, long npages, bool incr)
rlimit(RLIMIT_MEMLOCK),
ret ? "- execeeded" : "");
- up_write(&current->mm->mmap_sem);
+ up_write(&current->mm->mmap_lock);
return ret;
}
diff --git a/drivers/fpga/intel/fme-main.c b/drivers/fpga/intel/fme-main.c
index 0b68232..29b2cc0 100644
--- a/drivers/fpga/intel/fme-main.c
+++ b/drivers/fpga/intel/fme-main.c
@@ -30,7 +30,6 @@
#include <linux/uaccess.h>
#include <linux/intel-fpga.h>
#include <linux/fpga/fpga-mgr-4-12.h>
-#include <linux/iopoll-4-12.h>
#include <linux/i2c/altera.h>
#include <linux/spi/altera.h>
#include <linux/mtd/altera-asmip2.h>
diff --git a/drivers/i2c/busses/i2c-altera.c b/drivers/i2c/busses/i2c-altera.c
index 381c562..cea3247 100644
--- a/drivers/i2c/busses/i2c-altera.c
+++ b/drivers/i2c/busses/i2c-altera.c
@@ -20,7 +20,6 @@
#include <linux/err.h>
#include <linux/i2c.h>
#include <linux/i2c/altera.h>
-#include <linux/iopoll-4-12.h>
#include <linux/interrupt.h>
#include <linux/module.h>
#include <linux/io.h>
@@ -633,7 +632,7 @@ static int altr_i2c_probe(struct platform_device *pdev)
if (pdata) {
/* add in known devices to the bus */
for (i = 0; i < pdata->num_devices; i++)
- i2c_new_device(&idev->adapter, pdata->devices + i);
+ i2c_new_client_device(&idev->adapter, pdata->devices + i);
}
dev_info(&pdev->dev, "Altera SoftIP I2C Probe Complete\n");
diff --git a/drivers/mtd/devices/intel-on-chip-flash.c b/drivers/mtd/devices/intel-on-chip-flash.c
index 259801d..05e16af 100644
--- a/drivers/mtd/devices/intel-on-chip-flash.c
+++ b/drivers/mtd/devices/intel-on-chip-flash.c
@@ -11,7 +11,6 @@
*/
#include <linux/bitfield-intel-pac.h>
-#include <linux/iopoll-4-12.h>
#include <linux/module.h>
#include <linux/mtd/mtd.h>
#include <linux/mtd/intel-on-chip-flash.h>
diff --git a/drivers/mtd/spi-nor/intel-generic-qspi.c b/drivers/mtd/spi-nor/intel-generic-qspi.c
index 4183125..25d6d84 100644
--- a/drivers/mtd/spi-nor/intel-generic-qspi.c
+++ b/drivers/mtd/spi-nor/intel-generic-qspi.c
@@ -10,7 +10,6 @@
*/
#include <linux/bitfield-intel-pac.h>
-#include <linux/iopoll-4-12.h>
#include <linux/module.h>
#include <linux/mtd/intel-generic-qspi.h>
#include <linux/mtd/mtd.h>
--
2.31.1

View File

@@ -1,63 +0,0 @@
From 36259496411e8d2e20bde91e93c9fcb83d9daa1d Mon Sep 17 00:00:00 2001
From: Shuicheng Lin <shuicheng.lin@intel.com>
Date: Mon, 24 Feb 2020 09:40:22 +0800
Subject: [PATCH] Fix compile error with CentOS 8.1 4.18.0-147 kernel
access_ok definition in CentOS 8.1 is the same as linux kernel
with version >= 5.0.0, so force the code to go with the correct
path.
Signed-off-by: Shuicheng Lin <shuicheng.lin@intel.com>
---
drivers/fpga/intel/fme-pr.c | 3 ++-
drivers/fpga/intel/ifpga-sec-mgr.c | 5 +++--
drivers/misc/avmmi-bmc.c | 3 ++-
3 files changed, 7 insertions(+), 4 deletions(-)
diff --git a/drivers/fpga/intel/fme-pr.c b/drivers/fpga/intel/fme-pr.c
index a5bf846..a65ec0d 100644
--- a/drivers/fpga/intel/fme-pr.c
+++ b/drivers/fpga/intel/fme-pr.c
@@ -338,7 +338,8 @@ static int fme_pr(struct platform_device *pdev, unsigned long arg)
return -EINVAL;
}
-#if LINUX_VERSION_CODE >= KERNEL_VERSION(5, 0, 0)
+/* CentOS 8.1 kernel also contains this change. */
+#if 1 /* LINUX_VERSION_CODE >= KERNEL_VERSION(5, 0, 0) */
if (!access_ok(u64_to_user_ptr(port_pr.buffer_address),
port_pr.buffer_size))
return -EFAULT;
diff --git a/drivers/fpga/intel/ifpga-sec-mgr.c b/drivers/fpga/intel/ifpga-sec-mgr.c
index 56405f2..c32e5b7 100644
--- a/drivers/fpga/intel/ifpga-sec-mgr.c
+++ b/drivers/fpga/intel/ifpga-sec-mgr.c
@@ -132,8 +132,9 @@ static int ifpga_sec_mgr_ioctl_write_blk(struct ifpga_sec_mgr *imgr,
if (wb.size > SIZE_4K)
return -ENOMEM;
-
-#if LINUX_VERSION_CODE >= KERNEL_VERSION(5, 0, 0)
+
+/* CentOS 8.1 kernel also contains this change. */
+#if 1 /* LINUX_VERSION_CODE >= KERNEL_VERSION(5, 0, 0) */
if (!access_ok(u64_to_user_ptr(wb.buf), wb.size))
return -EFAULT;
#else
diff --git a/drivers/misc/avmmi-bmc.c b/drivers/misc/avmmi-bmc.c
index 4716b0d..9bb70a7 100644
--- a/drivers/misc/avmmi-bmc.c
+++ b/drivers/misc/avmmi-bmc.c
@@ -804,7 +804,8 @@ static long avmmi_bmc_ioctl(struct file *file, unsigned int cmd,
if (xact.txlen > MAX_PACKET_SIZE || xact.rxlen > MAX_PACKET_SIZE)
return -ENOMEM;
-#if LINUX_VERSION_CODE >= KERNEL_VERSION(5, 0, 0)
+/* CentOS 8.1 kernel also contains this change. */
+#if 1 /* LINUX_VERSION_CODE >= KERNEL_VERSION(5, 0, 0) */
if (!access_ok(u64_to_user_ptr(xact.txbuf), xact.txlen))
return -EFAULT;
--
2.7.4

View File

@@ -1,25 +0,0 @@
From 934c6a908315f7f5943760e9b9047e1225c54d3e Mon Sep 17 00:00:00 2001
From: Dongqi Chen <chen.dq@neusoft.com>
Date: Wed, 22 Apr 2020 23:42:26 -0700
Subject: [PATCH] Fix wrong kernel version
Signed-off-by: Dongqi Chen <chen.dq@neusoft.com>
---
Makefile | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Makefile b/Makefile
index 0dfd0a8..4db08f2 100644
--- a/Makefile
+++ b/Makefile
@@ -1,6 +1,6 @@
KERNELDIR ?= /lib/modules/$(shell uname -r)/build
PWD ?= $(shell pwd)
-kerval = $(shell uname -r | sed 's/\([0-9]*\.[0-9]*\)\..*/\1/')
+kerval = $(shell echo $(KERNELDIR) | sed 's/.*\/\([0-9]*\.[0-9]*\)\..*/\1/')
cflags-y += -Wno-unused-value -Wno-unused-label -I$(M)/include -I$(M)/include/uapi -I$(M)/include/intel
cflags-y += -I$(M)/build/include -I$(M)/build/include/uapi -I$(M)/build/include/intel
--
1.8.3.1

View File

@@ -1,55 +0,0 @@
From 94704d9260d7057549b9f66461f7c2328f6080d3 Mon Sep 17 00:00:00 2001
Message-Id: <94704d9260d7057549b9f66461f7c2328f6080d3.1578602281.git.Jim.Somerville@windriver.com>
From: Jim Somerville <Jim.Somerville@windriver.com>
Date: Thu, 9 Jan 2020 15:36:55 -0500
Subject: [PATCH 1/1] Remove regmap mmio as it is built into the kernel
Signed-off-by: Jim Somerville <Jim.Somerville@windriver.com>
---
Makefile | 9 ---------
1 file changed, 9 deletions(-)
diff --git a/Makefile b/Makefile
index 0dfd0a8..3386289 100644
--- a/Makefile
+++ b/Makefile
@@ -12,7 +12,6 @@ ccflags-y += -I$(PWD)/scripts/dtc/libfdt-4-12
ifeq ($(kerval),3.10)
obj-m += spi-bitbang-mod.o
- obj-m += regmap-mmio-mod.o
endif
obj-m += i2c-altera.o
@@ -45,8 +44,6 @@ intel-max10-y += lib-4-12/fdt_sw.o
intel-max10-y += lib-4-12/fdt_strerror.o
intel-max10-y += lib-4-12/fdt_empty_tree.o
-regmap-mmio-mod-y := drivers/base/regmap/regmap-mmio-3-10.o
-
i2c-altera-y := drivers/i2c/busses/i2c-altera.o
intel-generic-qspi-y := drivers/mtd/spi-nor/intel-generic-qspi.o
@@ -99,9 +96,6 @@ load-drv:
if ! egrep -q '^intel_generic_qspi ' /proc/modules; then insmod intel-generic-qspi.ko; fi
if ! egrep -q '^intel_on_chip_flash ' /proc/modules; then insmod intel-on-chip-flash.ko; fi
if ! egrep -q '^altera_asmip2 ' /proc/modules; then insmod altera-asmip2.ko; fi
-ifeq ($(kerval),3.10)
- if ! egrep -q '^regmap_mmio_mod ' /proc/modules; then insmod regmap-mmio-mod.ko; fi
-endif
if ! egrep -q '^i2c_altera ' /proc/modules; then insmod i2c-altera.ko; fi
ifeq ($(kerval),3.10)
if ! egrep -q '^spi_bitbang_mod ' /proc/modules; then insmod spi-bitbang-mod.ko; fi
@@ -137,9 +131,6 @@ ifeq ($(kerval),3.10)
if egrep -q '^spi_bitbang_mod ' /proc/modules; then rmmod spi_bitbang_mod; fi
endif
if egrep -q '^i2c_altera ' /proc/modules; then rmmod i2c_altera; fi
-ifeq ($(kerval),3.10)
- if egrep -q '^regmap_mmio_mod ' /proc/modules; then rmmod regmap_mmio_mod; fi
-endif
if egrep -q '^altera_asmip2 ' /proc/modules; then rmmod altera_asmip2; fi
if egrep -q '^intel_on_chip_flash ' /proc/modules; then rmmod intel_on_chip_flash; fi
if egrep -q '^intel_generic_qspi ' /proc/modules; then rmmod intel_generic_qspi; fi
--
1.8.3.1

View File

@@ -0,0 +1,112 @@
From 6371907d1b4809fe6c1cb02a4a9dc8b2a18999fa Mon Sep 17 00:00:00 2001
From: Jiping Ma <jiping.ma2@windriver.com>
Date: Wed, 23 Jun 2021 23:38:47 -0700
Subject: [PATCH] use altera.h from driver instead of from kernel
linux/spi/altera.h in Kernel is very different from
the file in opae-intel-fpga-driver. So we use the
head file in opae-intel-fpga-driver driver.
Signed-off-by: Jiping Ma <jiping.ma2@windriver.com>
---
Makefile | 28 ----------------------------
drivers/fpga/intel/fme-main.c | 2 +-
drivers/spi/spi-altera-4-12.c | 2 +-
3 files changed, 2 insertions(+), 30 deletions(-)
diff --git a/Makefile b/Makefile
index bb31b0e..e5518ad 100644
--- a/Makefile
+++ b/Makefile
@@ -10,11 +10,6 @@ ccflags-y += -I$(M)/build/include -I$(M)/build/include/uapi -I$(M)/build/include
ccflags-y += -DCONFIG_AS_AVX512
ccflags-y += -I$(PWD)/scripts/dtc/libfdt-4-12
-ifeq ($(kerval), $(filter $(kerval), 4.18 3.10))
-obj-m += spi-bitbang-mod.o
-obj-m += regmap-mmio-mod.o
-endif
-
obj-m += i2c-altera.o
obj-m += intel-generic-qspi.o
obj-m += intel-on-chip-flash.o
@@ -45,22 +40,11 @@ intel-max10-y += lib-4-12/fdt_sw.o
intel-max10-y += lib-4-12/fdt_strerror.o
intel-max10-y += lib-4-12/fdt_empty_tree.o
-ifeq ($(kerval), 4.18)
-regmap-mmio-mod-y := drivers/base/regmap/regmap-mmio-4-18.o
-else
-regmap-mmio-mod-y := drivers/base/regmap/regmap-mmio-3-10.o
-endif
-
i2c-altera-y := drivers/i2c/busses/i2c-altera.o
intel-generic-qspi-y := drivers/mtd/spi-nor/intel-generic-qspi.o
intel-on-chip-flash-y := drivers/mtd/devices/intel-on-chip-flash.o
-ifeq ($(kerval), 4.18)
-spi-bitbang-mod-y := drivers/spi/spi-bitbang-4-18.o
-else
-spi-bitbang-mod-y := drivers/spi/spi-bitbang-3-10.o
-endif
spi-altera-mod-y := drivers/spi/spi-altera-4-12.o
@@ -108,13 +92,7 @@ load-drv:
if ! egrep -q '^intel_generic_qspi ' /proc/modules; then insmod intel-generic-qspi.ko; fi
if ! egrep -q '^intel_on_chip_flash ' /proc/modules; then insmod intel-on-chip-flash.ko; fi
if ! egrep -q '^altera_asmip2 ' /proc/modules; then insmod altera-asmip2.ko; fi
-ifeq ($(kerval), $(filter $(kerval), 4.18 3.10))
- if ! egrep -q '^regmap_mmio_mod ' /proc/modules; then insmod regmap-mmio-mod.ko; fi
-endif
if ! egrep -q '^i2c_altera ' /proc/modules; then insmod i2c-altera.ko; fi
-ifeq ($(kerval), $(filter $(kerval), 4.18 3.10))
- if ! egrep -q '^spi_bitbang_mod ' /proc/modules; then insmod spi-bitbang-mod.ko; fi
-endif
if ! egrep -q '^spi_altera_mod ' /proc/modules; then insmod spi-altera-mod.ko; fi
if ! egrep -q '^ifpga_sec_mgr ' /proc/modules; then insmod ifpga-sec-mgr.ko; fi
if ! egrep -q '^avmmi_bmc ' /proc/modules; then insmod avmmi-bmc.ko; fi
@@ -142,13 +120,7 @@ unload-drv:
if egrep -q '^avmmi_bmc ' /proc/modules; then rmmod avmmi_bmc; fi
if egrep -q '^ifpga_sec_mgr ' /proc/modules; then rmmod ifpga_sec_mgr; fi
if egrep -q '^spi_altera_mod ' /proc/modules; then rmmod spi_altera_mod; fi
-ifeq ($(kerval), $(filter $(kerval), 4.18 3.10))
- if egrep -q '^spi_bitbang_mod ' /proc/modules; then rmmod spi_bitbang_mod; fi
-endif
if egrep -q '^i2c_altera ' /proc/modules; then rmmod i2c_altera; fi
-ifeq ($(kerval), $(filter $(kerval), 4.18 3.10))
- if egrep -q '^regmap_mmio_mod ' /proc/modules; then rmmod regmap_mmio_mod; fi
-endif
if egrep -q '^altera_asmip2 ' /proc/modules; then rmmod altera_asmip2; fi
if egrep -q '^intel_on_chip_flash ' /proc/modules; then rmmod intel_on_chip_flash; fi
if egrep -q '^intel_generic_qspi ' /proc/modules; then rmmod intel_generic_qspi; fi
diff --git a/drivers/fpga/intel/fme-main.c b/drivers/fpga/intel/fme-main.c
index 29b2cc0..857cf87 100644
--- a/drivers/fpga/intel/fme-main.c
+++ b/drivers/fpga/intel/fme-main.c
@@ -31,7 +31,7 @@
#include <linux/intel-fpga.h>
#include <linux/fpga/fpga-mgr-4-12.h>
#include <linux/i2c/altera.h>
-#include <linux/spi/altera.h>
+#include "../../../include/linux/spi/altera.h"
#include <linux/mtd/altera-asmip2.h>
#include <linux/version.h>
diff --git a/drivers/spi/spi-altera-4-12.c b/drivers/spi/spi-altera-4-12.c
index 9cc2f27..a67b87b 100644
--- a/drivers/spi/spi-altera-4-12.c
+++ b/drivers/spi/spi-altera-4-12.c
@@ -19,7 +19,7 @@
#include <linux/platform_device.h>
#include <linux/spi/spi.h>
#include <linux/spi/spi_bitbang.h>
-#include <linux/spi/altera.h>
+#include "../../../include/linux/spi/altera.h"
#include <linux/io.h>
#include <linux/of.h>
#include <linux/version.h>
--
2.31.1

View File

@@ -0,0 +1 @@
repo:stx/downloads/opae-intel-fpga-driver-2.0.1-10.src.rpm