Compare commits

...

13 Commits

4 changed files with 256 additions and 116 deletions

View File

@ -1,2 +1,2 @@
25cfd4609f553d2dfecf70664da814f5064c194b SOURCES/stable_20250916.tar.gz
be897efea93afd8c6ccc39a2667166f7398fc97a SOURCES/1.20250915.tar.gz
b8475afdd5b669b6db3a4cb73dea4cf804359cad SOURCES/1.20260521.tar.gz
095085828d53344f49000c4fac01f1333fb63b50 SOURCES/stable_20260724.tar.gz

View File

@ -1,6 +1,6 @@
From bdec30ca8e18bc7d9a5d25d7cd9ca7976aef8aa2 Mon Sep 17 00:00:00 2001
From 830e3d1891cd911bee5d3424445b47c1f50c317e Mon Sep 17 00:00:00 2001
From: Koichiro Iwao <meta@almalinux.org>
Date: Mon, 19 May 2025 13:09:29 +0900
Date: Tue, 31 Mar 2026 17:52:13 +0900
Subject: [PATCH 1/2] Apply config patch for Raspberry Pi (BCM2711)
The patch is originally provided by Pablo Greco <pgreco@centosproject.org>.
@ -11,19 +11,19 @@ Signed-off-by: Koichiro Iwao <meta@almalinux.org>
1 file changed, 40 insertions(+), 2 deletions(-)
diff --git a/arch/arm64/configs/bcm2711_defconfig b/arch/arm64/configs/bcm2711_defconfig
index ce3e13572fb4..324800576e6a 100644
index 56795bf145bd..2ba26e955191 100644
--- a/arch/arm64/configs/bcm2711_defconfig
+++ b/arch/arm64/configs/bcm2711_defconfig
@@ -1690,8 +1690,6 @@ CONFIG_DLM=m
@@ -1714,8 +1714,6 @@ CONFIG_DLM=m
CONFIG_UNICODE=m
CONFIG_KEY_DH_OPERATIONS=y
CONFIG_SECURITY=y
-CONFIG_SECURITY_APPARMOR=y
-CONFIG_LSM=""
CONFIG_CRYPTO_USER=m
CONFIG_CRYPTO_NULL=m
CONFIG_CRYPTO_CRYPTD=m
CONFIG_CRYPTO_AES=m
@@ -1742,3 +1740,43 @@ CONFIG_SCHED_TRACER=y
@@ -1762,3 +1760,43 @@ CONFIG_FTRACE_SYSCALLS=y
CONFIG_BLK_DEV_IO_TRACE=y
# CONFIG_UPROBE_EVENTS is not set
# CONFIG_STRICT_DEVMEM is not set
@ -68,5 +68,5 @@ index ce3e13572fb4..324800576e6a 100644
+CONFIG_EROFS_POSIX_ACL=y
+CONFIG_EROFS_FS_SECURITY=y
--
2.49.0
2.53.0

View File

@ -1,6 +1,6 @@
From c6064f14a8c32e3109ee83c736097e2ee03086ca Mon Sep 17 00:00:00 2001
From c79f1902314f6aca86f4df9bec6f203f6bdb1231 Mon Sep 17 00:00:00 2001
From: Koichiro Iwao <meta@almalinux.org>
Date: Mon, 19 May 2025 13:10:35 +0900
Date: Tue, 31 Mar 2026 17:53:02 +0900
Subject: [PATCH 2/2] Apply config patch for Raspberry Pi (BCM2712)
The patch is originally provided by Pablo Greco <pgreco@centosproject.org>.
@ -11,19 +11,19 @@ Signed-off-by: Koichiro Iwao <meta@almalinux.org>
1 file changed, 40 insertions(+), 2 deletions(-)
diff --git a/arch/arm64/configs/bcm2712_defconfig b/arch/arm64/configs/bcm2712_defconfig
index 9e2bda050f81..51afa99f75e3 100644
index 65e4f476536a..5530ed8c9dda 100644
--- a/arch/arm64/configs/bcm2712_defconfig
+++ b/arch/arm64/configs/bcm2712_defconfig
@@ -1692,8 +1692,6 @@ CONFIG_DLM=m
@@ -1716,8 +1716,6 @@ CONFIG_DLM=m
CONFIG_UNICODE=m
CONFIG_KEY_DH_OPERATIONS=y
CONFIG_SECURITY=y
-CONFIG_SECURITY_APPARMOR=y
-CONFIG_LSM=""
CONFIG_CRYPTO_USER=m
CONFIG_CRYPTO_NULL=m
CONFIG_CRYPTO_CRYPTD=m
CONFIG_CRYPTO_AES=m
@@ -1744,3 +1742,43 @@ CONFIG_SCHED_TRACER=y
@@ -1764,3 +1762,43 @@ CONFIG_FTRACE_SYSCALLS=y
CONFIG_BLK_DEV_IO_TRACE=y
# CONFIG_UPROBE_EVENTS is not set
# CONFIG_STRICT_DEVMEM is not set
@ -68,5 +68,5 @@ index 9e2bda050f81..51afa99f75e3 100644
+CONFIG_EROFS_POSIX_ACL=y
+CONFIG_EROFS_FS_SECURITY=y
--
2.49.0
2.53.0

View File

@ -1,5 +1,5 @@
%global firmware_tag 1.20250915
%global version_tag 20250916
%global firmware_tag 1.20260521
%global version_tag 20260724
ExclusiveArch: aarch64
@ -11,15 +11,15 @@ ExclusiveArch: aarch64
%define local_version v8
%define bcmmodel 2711
%define extra_version 2
%define extra_version 1
# This originally implies Kernel 4.x for RPi 2 and is not appropriate now.
# Be careful to change this not to disturb the seamless package update.
%define rpisuffix 2
%define ksuffix 4
%define kversion 6.12
%define patchlevel 47
%define kversion 6.18
%define patchlevel 39
%if 0%{?rhel} >= 10 || 0%{?fedora} >= 40
%define pathfix %{__python3} %{_rpmconfigdir}/redhat/pathfix.py
@ -35,6 +35,8 @@ ExclusiveArch: aarch64
%define with_firmware %{?_without_firmware: 0} %{?!_without_firmware: 1}
# kernel-headers
%define with_headers %{?_without_headers: 0} %{?!_without_headers: 1}
# kernel-16k (aarch64 kernel with 16K page_size; RPi 5 only)
%define with_arm64_16k %{?_without_arm64_16k: 0} %{?!_without_arm64_16k: 1}
Name: raspberrypi%{rpisuffix}
Version: %{kversion}.%{patchlevel}
@ -157,6 +159,39 @@ This package provides pseudo dependency for the packages that depends on regular
kernel-modules-extra-matched packages.
%endif
%if %{with_arm64_16k}
%package kernel%{?ksuffix}-16k
Group: System Environment/Kernel
Summary: The Linux kernel
Provides: kernel = %{version}-%{release}
Provides: kernel-core = %{version}-%{release}
Provides: installonlypkg(kernel)
Requires: %{name}-kernel%{?ksuffix} = %{version}-%{release}
Requires: coreutils
Requires: dracut
%description kernel%{?ksuffix}-16k
The kernel package contains the Linux kernel (vmlinuz), the core of any
Linux operating system. The kernel handles the basic functions
of the operating system: memory allocation, process allocation, device
input and output, etc.
%package kernel%{?ksuffix}-16k-devel
Group: System Environment/Kernel
Summary: Development package for building kernel modules to match the kernel
Provides: kernel-devel = %{version}-%{release}
Provides: kernel-devel-uname-r = %{version}-%{release}
Provides: %{name}-kernel%{?ksuffix-devel} = %{version}-%{release}
Provides: installonlypkg(kernel)
Provides: installonlypkg(kernel)
Autoreq: no
Requires(pre): findutils
Requires: findutils
Requires: perl-interpreter
%description kernel%{?ksuffix}-16k-devel
This package provides kernel headers and makefiles sufficient to build modules
against the kernel package.
%endif
%if %{with_tools}
%package kernel%{?ksuffix}-tools
Summary: Assortment of tools for the Linux kernel
@ -227,10 +262,11 @@ glibc package.
%endif
%prep
%setup -q -n linux-stable_%{version_tag}
%setup -q -c -n linux-stable_%{version_tag}
pushd linux-stable_%{version_tag}
%patch -P 100 -p1
%patch -P 101 -p1
perl -p -i -e "s/^EXTRAVERSION.*/EXTRAVERSION = -%{release}/" Makefile
perl -p -i -e "s/^EXTRAVERSION.*/EXTRAVERSION = -%{release}.%{_arch}/" Makefile
perl -p -i -e "s/^CONFIG_LOCALVERSION=.*/CONFIG_LOCALVERSION=/" arch/%{Arch}/configs/bcm2711_defconfig
perl -p -i -e "s/^CONFIG_LOCALVERSION=.*/CONFIG_LOCALVERSION=/" arch/%{Arch}/configs/bcm2712_defconfig
@ -245,18 +281,38 @@ perl -p -i -e "s/^CONFIG_LOCALVERSION=.*/CONFIG_LOCALVERSION=/" arch/%{Arch}/con
scripts/jobserver-exec scripts/dtc/dt-extract-compatibles
%{pathfix} -pni "%{__python3} %{py3_shbang_opts}" tools/ tools/kvm/kvm_stat/kvm_stat
%endif
popd
cp -r linux-stable_%{version_tag} 2711
%if %{with_arm64_16k}
cp -r linux-stable_%{version_tag} 2712
perl -p -i -e "s/^EXTRAVERSION.*/EXTRAVERSION = -%{release}.%{_arch}+16k/" 2712/Makefile
%endif
%build
# 16K page-size kernel optimized (bcmmodel=2712) for RPi 5 is not built at the moment
# to support both RPi 4 and 5.
export KERNEL=kernel%{armtarget}
make bcm%{bcmmodel}_defconfig
pushd 2711
make bcm2711_defconfig
popd
# 4K page-size kernel
%if %{with_up}
pushd 2711
make %{?_smp_mflags} HOSTCFLAGS="%{?build_cflags}" HOSTLDFLAGS="%{?build_ldflags}" %{build_image} modules dtbs
popd
%endif
# 16K page-size kernel for RPi 5
%if %{with_arm64_16k}
pushd 2712
make bcm2712_defconfig
make %{?_smp_mflags} HOSTCFLAGS="%{?build_cflags}" HOSTLDFLAGS="%{?build_ldflags}" %{build_image} modules dtbs
popd
%endif
# kernel-tools
%if %{with_tools}
pushd 2711
make %{?_smp_mflags} -C tools/power/cpupower CPUFREQ_BENCH=false DEBUG=false
pushd tools/thermal/tmon/
make %{?_smp_mflags} HOSTCFLAGS="%{?build_cflags}" HOSTLDFLAGS="%{?build_ldflags}"
@ -270,67 +326,104 @@ popd
pushd tools/mm/
make %{?_smp_mflags} HOSTCFLAGS="%{?build_cflags}" HOSTLDFLAGS="%{?build_ldflags}" slabinfo page_owner_sort
popd
popd # 2711
%endif
%install
%if %{with_up}
# kernel
mkdir -p %{buildroot}/boot/overlays/
mkdir -p %{buildroot}/usr/share/%{name}-kernel%{?ksuffix}/%{version}-%{release}/boot/overlays
cp -p -v COPYING %{buildroot}/boot/COPYING.linux-%{kversion}
cp -p -v arch/%{Arch}/boot/dts/overlays/README %{buildroot}/usr/share/%{name}-kernel%{?ksuffix}/%{version}-%{release}/boot/overlays
%ifarch aarch64
cp -p -v arch/%{Arch}/boot/dts/broadcom/*.dtb %{buildroot}/usr/share/%{name}-kernel%{?ksuffix}/%{version}-%{release}/boot
%else
cp -p -v arch/%{Arch}/boot/dts/*.dtb %{buildroot}/usr/share/%{name}-kernel%{?ksuffix}/%{version}-%{release}/boot
%endif
cp -p -v arch/%{Arch}/boot/dts/overlays/*.dtb* %{buildroot}/usr/share/%{name}-kernel%{?ksuffix}/%{version}-%{release}/boot/overlays
cp -p -v arch/%{Arch}/boot/%{build_image} %{buildroot}/boot/kernel-%{version}-%{release}.img
make INSTALL_MOD_PATH=%{buildroot} modules_install
cat > %{buildroot}/boot/config-kernel-%{version}-%{release}.inc <<__EOF__
%ifarch aarch64
InstallKernel() {
BcmModel=$1
case "${BcmModel}" in
2711)
Variant=""
;;
2712)
Variant="+16k"
;;
*)
exit 1
;;
esac
KernelVer=%{version}-%{release}.%{_arch}${Variant}
InstallDir=%{buildroot}/usr/share/%{name}-kernel%{?ksuffix}/${KernelVer}
ModulesDir=%{buildroot}/lib/modules/${KernelVer}
DevelDir=/usr/src/kernels/${KernelVer}
pushd ${BcmModel}
# kernel
mkdir -p %{buildroot}/boot/overlays
mkdir -p ${InstallDir}/boot/overlays
cp -p -v COPYING ${InstallDir}/boot/COPYING.linux-${KernelVer}
cp -p -v arch/%{Arch}/boot/dts/overlays/README ${InstallDir}/boot/overlays
cp -p -v arch/%{Arch}/boot/dts/broadcom/*.dtb ${InstallDir}/boot
cp -p -v arch/%{Arch}/boot/dts/overlays/*.dtb* ${InstallDir}/boot/overlays
cp -p -v arch/%{Arch}/boot/%{build_image} ${InstallDir}/boot/kernel-${KernelVer}.img
cp .config ${InstallDir}/boot/config-${KernelVer}
make INSTALL_MOD_PATH=%{buildroot} KERNELRELEASE="${KernelVer}" modules_install
cat > ${InstallDir}/boot/config-kernel-${KernelVer}.inc <<__EOF__
arm_64bit=1
%endif
kernel kernel-%{version}-%{release}.img
initramfs initramfs-%{version}-%{release}.img followkernel
kernel kernel-${KernelVer}.img
initramfs initramfs-${KernelVer}.img followkernel
__EOF__
cp .config %{buildroot}/boot/config-%{version}-%{release}
# /boot for normal boot
cp -p -v ${InstallDir}/boot/COPYING.linux-${KernelVer} %{buildroot}/boot/COPYING.linux-${KernelVer}
cp ${InstallDir}/boot/config-kernel-${KernelVer}.inc %{buildroot}/boot/config-kernel-${KernelVer}.inc
cp ${InstallDir}/boot/config-${KernelVer} %{buildroot}/boot/config-${KernelVer}
cp ${InstallDir}/boot/kernel-${KernelVer}.img %{buildroot}/boot/kernel-${KernelVer}.img
[ x"${BcmModel}" = x"2712" ] && cp ${InstallDir}/boot/kernel-${KernelVer}.img %{buildroot}/boot/kernel_${BcmModel}.img
# /lib/modules for ostree boot
cp ${InstallDir}/boot/kernel-${KernelVer}.img ${ModulesDir}/vmlinuz
cp -p -v System.map ${ModulesDir}
# kernel-devel
DevelDir=/usr/src/kernels/%{version}-%{release}
mkdir -p %{buildroot}$DevelDir
# first copy everything
cp -p -v Module.symvers System.map %{buildroot}$DevelDir
cp --parents `find -type f -name "Makefile*" -o -name "Kconfig*"` %{buildroot}$DevelDir
# then drop all but the needed Makefiles/Kconfig files
rm -rf %{buildroot}$DevelDir/Documentation
rm -rf %{buildroot}$DevelDir/scripts
rm -rf %{buildroot}$DevelDir/include
cp .config %{buildroot}$DevelDir
cp -a scripts %{buildroot}$DevelDir
cp -a include %{buildroot}$DevelDir
# kernel-devel
mkdir -p %{buildroot}${DevelDir}
# first copy everything
cp -p -v Module.symvers System.map %{buildroot}${DevelDir}
cp --parents `find -type f -name "Makefile*" -o -name "Kconfig*"` %{buildroot}${DevelDir}
if [ -d arch/%{Arch}/scripts ]; then
cp -a arch/%{Arch}/scripts %{buildroot}$DevelDir/arch/%{_arch} || :
fi
if [ -f arch/%{Arch}/*lds ]; then
cp -a arch/%{Arch}/*lds %{buildroot}$DevelDir/arch/%{_arch}/ || :
fi
if [ -f arch/%{Arch}/kernel/module.lds ]; then
cp -a --parents arch/%{Arch}/kernel/module.lds %{buildroot}$DevelDir/
fi
rm -f %{buildroot}$DevelDir/scripts/*.o
rm -f %{buildroot}$DevelDir/scripts/*/*.o
cp -a --parents arch/%{Arch}/include %{buildroot}$DevelDir
# include the machine specific headers for ARM variants, if available.
if [ -d arch/%{Arch}/mach-bcm%{bcmmodel}/include ]; then
cp -a --parents arch/%{Arch}/mach-bcm%{bcmmodel}/include %{buildroot}$DevelDir
fi
cp include/generated/uapi/linux/version.h %{buildroot}$DevelDir/include/linux
touch -r %{buildroot}$DevelDir/Makefile %{buildroot}$DevelDir/include/linux/version.h
ln -T -s $DevelDir %{buildroot}/lib/modules/%{version}-%{release}/build --force
ln -T -s build %{buildroot}/lib/modules/%{version}-%{release}/source --force
# then drop all but the needed Makefiles/Kconfig files
rm -rf %{buildroot}${DevelDir}/Documentation
rm -rf %{buildroot}${DevelDir}/scripts
rm -rf %{buildroot}${DevelDir}/include
cp .config %{buildroot}${DevelDir}
cp -a scripts %{buildroot}${DevelDir}
cp -a include %{buildroot}${DevelDir}
rm -rf %{buildroot}${DevelDir}/scripts/kconfig/conf
# cleanup kernel-devel and
find %{buildroot}${DevelDir} -name ".*.cmd" -delete
find %{buildroot}${DevelDir} -name "*.o" -delete
find %{buildroot}${DevelDir} -name ".gitignore" -delete
if [ -d arch/%{Arch}/scripts ]; then
cp -a arch/%{Arch}/scripts ${DevelDir}/arch/%{_arch} || :
fi
if [ -f arch/%{Arch}/*lds ]; then
cp -a arch/%{Arch}/*lds ${DevelDir}/arch/%{_arch}/ || :
fi
if [ -f arch/%{Arch}/kernel/module.lds ]; then
cp -a --parents arch/%{Arch}/kernel/module.lds %{buildroot}${DevelDir}/
fi
rm -f %{buildroot}${DevelDir}/scripts/*.o
rm -f %{buildroot}${DevelDir}/scripts/*/*.o
cp -a --parents arch/%{Arch}/include %{buildroot}${DevelDir}
# include the machine specific headers for ARM variants, if available.
if [ -d arch/%{Arch}/mach-bcm%{bcmmodel}/include ]; then
cp -a --parents arch/%{Arch}/mach-bcm%{bcmmodel}/include %{buildroot}${DevelDir}
fi
cp include/generated/uapi/linux/version.h %{buildroot}${DevelDir}/include/linux
touch -r %{buildroot}${DevelDir}/Makefile %{buildroot}${DevelDir}/include/linux/version.h
ln -T -s ${DevelDir} ${ModulesDir}/build --force
ln -T -s build ${ModulesDir}/source --force
popd
}
%if %{with_up}
InstallKernel 2711
%endif
%if %{with_arm64_16k}
InstallKernel 2712
%endif
%if %{with_firmware}
@ -348,6 +441,7 @@ popd
%endif
%if %{with_tools}
pushd 2711
# kernel-tools
make -C tools/power/cpupower DESTDIR=$RPM_BUILD_ROOT libdir=%{_libdir} mandir=%{_mandir} CPUFREQ_BENCH=false install
rm -f %{buildroot}%{_libdir}/*.{a,la}
@ -374,14 +468,17 @@ pushd tools/mm/
install -m755 slabinfo %{buildroot}%{_bindir}/slabinfo
install -m755 page_owner_sort %{buildroot}%{_bindir}/page_owner_sort
popd
popd #2711
%endif
%if %{with_headers}
pushd 2711
%{__make} ARCH=%{Arch} INSTALL_HDR_PATH=%{buildroot}/usr headers_install
find %{buildroot}/usr/include \
\( -name .install -o -name .check -o \
-name ..install.cmd -o -name ..check.cmd \) -delete
popd
%endif
%if %{with_tools}
@ -404,46 +501,32 @@ find %{buildroot}/usr/include \
%if %{with_up}
%files kernel%{?ksuffix}
%defattr(-,root,root,-)
/lib/modules/%{version}-%{release}
/usr/share/%{name}-kernel%{?ksuffix}/%{version}-%{release}
/usr/share/%{name}-kernel%{?ksuffix}/%{version}-%{release}/boot
/usr/share/%{name}-kernel%{?ksuffix}/%{version}-%{release}/boot/*.dtb
/boot/config-%{version}-%{release}
/lib/modules/%{version}-%{release}.%{_arch}
%ghost /lib/modules/%{version}-%{release}.%{_arch}/initramfs
/usr/share/%{name}-kernel%{?ksuffix}/%{version}-%{release}.%{_arch}
/boot/config-%{version}-%{release}.%{_arch}
/boot/config-kernel-%{version}-%{release}.%{_arch}.inc
/boot/overlays/
/usr/share/%{name}-kernel%{?ksuffix}/%{version}-%{release}/boot/overlays/*
%attr(0755,root,root) /boot/kernel-%{version}-%{release}.img
%ghost /boot/initramfs-%{version}-%{release}.img
/boot/config-kernel-%{version}-%{release}.inc
%doc /boot/COPYING.linux-%{kversion}
%attr(0755,root,root) /boot/kernel-%{version}-%{release}.%{_arch}.img
%ghost /boot/initramfs-%{version}-%{release}.%{_arch}.img
%doc /boot/COPYING.linux-%{version}-%{release}.%{_arch}
%posttrans kernel%{?ksuffix}
if [ -d /usr/lib/ostree-boot ]; then
mkdir -p /usr/lib/modules/%{version}-%{release}
pushd /usr/lib/ostree-boot
[ -e config-%{version}-%{release} ] && \
mv config-%{version}-%{release} /usr/lib/modules/%{version}-%{release}/
[ -e config-kernel-%{version}-%{release}.inc ] && \
mv config-kernel-%{version}-%{release}.inc /usr/lib/modules/%{version}-%{release}/
[ -e initramfs-%{version}-%{release}.img ] && \
mv initramfs-%{version}-%{release}.img /usr/lib/modules/%{version}-%{release}/initramfs
[ -e kernel-%{version}-%{release}.img ] && \
mv kernel-%{version}-%{release}.img /usr/lib/modules/%{version}-%{release}/vmlinuz
popd
fi
if [ -d /boot ]; then
if [ -f /boot/kernel%{armtarget}.img ] || [ ! -f /boot/config-kernel.inc ];then
# if nothing exists, fall back to generating the file, but don't create it
# if we have moved to initramfs
cp /boot/kernel-%{version}-%{release}.img /boot/kernel%{armtarget}.img
cp /boot/kernel-%{version}-%{release}.%{_arch}.img /boot/kernel%{armtarget}.img
fi
cp /usr/share/%{name}-kernel%{?ksuffix}/%{version}-%{release}/boot/*.dtb /boot/
cp /usr/share/%{name}-kernel%{?ksuffix}/%{version}-%{release}/boot/overlays/*.dtb* /boot/overlays/
cp /usr/share/%{name}-kernel%{?ksuffix}/%{version}-%{release}/boot/overlays/README /boot/overlays/
cp /boot/config-kernel-%{version}-%{release}.inc /boot/config-kernel.inc
cp /usr/share/%{name}-kernel%{?ksuffix}/%{version}-%{release}.%{_arch}/boot/*.dtb /boot/
cp /usr/share/%{name}-kernel%{?ksuffix}/%{version}-%{release}.%{_arch}/boot/overlays/*.dtb* /boot/overlays/
cp /usr/share/%{name}-kernel%{?ksuffix}/%{version}-%{release}.%{_arch}/boot/overlays/README /boot/overlays/
cp /boot/config-kernel-%{version}-%{release}.%{_arch}.inc /boot/config-kernel.inc
/usr/bin/dracut --no-hostonly /boot/initramfs-%{version}-%{release}.img %{version}-%{release}
cp /boot/initramfs-%{version}-%{release}.img /boot/initramfs%{armtarget}
/usr/bin/dracut --no-hostonly \
/lib/modules/%{version}-%{release}.%{_arch}/initramfs.img %{version}-%{release}.%{_arch}
cp /lib/modules/%{version}-%{release}.%{_arch}/initramfs.img /boot/initramfs-%{version}-%{release}.%{_arch}.img
cp /boot/initramfs-%{version}-%{release}.%{_arch}.img /boot/initramfs%{armtarget}
fi
%postun kernel%{?ksuffix}
@ -459,10 +542,9 @@ cp $(ls -1d /usr/share/%{name}-kernel%{?ksuffix}/*-*/|sort -V|tail -1)/boot/over
cp $(ls -1d /usr/share/%{name}-kernel%{?ksuffix}/*-*/|sort -V|tail -1)/boot/overlays/README /boot/overlays/
cp $(ls -1 /boot/config-kernel-*-*|sort -V|tail -1) /boot/config-kernel.inc
%files kernel%{?ksuffix}-devel
%defattr(-,root,root)
/usr/src/kernels/%{version}-%{release}
/usr/src/kernels/%{version}-%{release}.%{_arch}
%if 0%{?rhel} >= 10
%files kernel%{?ksuffix}-modules
@ -483,12 +565,36 @@ cp $(ls -1 /boot/config-kernel-*-*|sort -V|tail -1) /boot/config-kernel.inc
%endif
%endif
%if %{with_arm64_16k}
%files kernel%{?ksuffix}-16k
%defattr(-,root,root,-)
/lib/modules/%{version}-%{release}.%{_arch}+16k
%ghost /lib/modules/%{version}-%{release}.%{_arch}+16k/initramfs.img
/usr/share/%{name}-kernel%{?ksuffix}/%{version}-%{release}.%{_arch}+16k
/boot/config-%{version}-%{release}.%{_arch}+16k
/boot/config-kernel-%{version}-%{release}.%{_arch}+16k.inc
/boot/kernel-%{version}-%{release}.%{_arch}+16k.img
/boot/kernel_2712.img
%doc /boot/COPYING.linux-%{version}-%{release}.%{_arch}+16k
%posttrans kernel%{?ksuffix}-16k
/usr/bin/dracut --no-hostonly \
/lib/modules/%{version}-%{release}.%{_arch}+16k/initramfs.img %{version}-%{release}.%{_arch}+16k
cp /lib/modules/%{version}-%{release}.%{_arch}+16k/initramfs.img /boot/initramfs-%{version}-%{release}.%{_arch}+16k.img
%files kernel%{?ksuffix}-16k-devel
%defattr(-,root,root)
/usr/src/kernels/%{version}-%{release}.%{_arch}+16k
%endif
%if %{with_tools}
%files kernel%{?ksuffix}-tools -f cpupower.lang
%files kernel%{?ksuffix}-tools -f 2711/cpupower.lang
%{_bindir}/cpupower
%{_datadir}/bash-completion/completions/cpupower
%{_unitdir}/cpupower.service
%{_mandir}/man[1-8]/cpupower*
%{_libexecdir}/cpupower
%config(noreplace) %{_sysconfdir}/cpupower-service.conf
%config(noreplace) %{_sysconfdir}/sysconfig/cpupower
%{_bindir}/tmon
%{_bindir}/iio_event_monitor
@ -507,7 +613,7 @@ cp $(ls -1 /boot/config-kernel-*-*|sort -V|tail -1) /boot/config-kernel.inc
%files kernel%{?ksuffix}-tools-libs
%{_libdir}/libcpupower.so.1
%{_libdir}/libcpupower.so.0.0.1
%{_libdir}/libcpupower.so.1.0.1
%files kernel%{?ksuffix}-tools-libs-devel
%{_libdir}/libcpupower.so
@ -529,11 +635,45 @@ cp $(ls -1 /boot/config-kernel-*-*|sort -V|tail -1) /boot/config-kernel.inc
%files kernel%{?ksuffix}-headers
/usr/include/*
%exclude %{_includedir}/cpufreq.h
%exclude %{_includedir}/internal/
%exclude %{_includedir}/perf/
%exclude %{_includedir}/cpuidle.h
%exclude %{_includedir}/powercap.h
%endif
%changelog
* Thu Jul 30 2026 Koichiro Iwao <meta@almalinux.org> - 6.18.39-20260724.v8.1
- Update kernel to v6.18.39 stable_20260724
* Wed Jul 29 2026 Koichiro Iwao <meta@almalinux.org> - 6.18.34-20260609.v8.2
- Add 16KB PAGESIZE kernel for BCM2712 (Pi 5)
- Install kernel & initramfs OSTree to the canonical location ([/usr]/lib/$kver)
https://bootc.dev/bootc/bootc-install.html#installing-bootc-compatible-images
* Thu Jul 09 2026 Koichiro Iwao <meta@almalinux.org> - 6.18.34-20260609.v8.1
- Update kernel to v6.18.34 stable_20260609
* Tue Jun 09 2026 Koichiro Iwao <meta@almalinux.org> - 6.18.33-20260527.v8.1
- Update kernel to v6.18.33 stable_20260527
- Update firmware to 1.20260521
* Fri May 15 2026 Koichiro Iwao <meta@almalinux.org> - 6.18.29-20260513.v8.1
- Update kernel to v6.18.29 a72a0085
* Fri May 08 2026 Koichiro Iwao <meta@almalinux.org> - 6.18.28-20260508.v8.1
- Update kernel to v6.18.28 6b979ced
* Fri May 08 2026 Koichiro Iwao <meta@almalinux.org> - 6.18.27-20260507.v8.1
- Update kernel to v6.18.27 9dc8796e
* Thu Apr 30 2026 Koichiro Iwao <meta@almalinux.org> - 6.18.24-20260430.v8.1
- Update kernel to v6.18.26 3d3dd592
* Thu Apr 30 2026 Koichiro Iwao <meta@almalinux.org> - 6.18.24-20260423.v8.1
- Update kernel to v6.18.24 f2f68e79
- Update firmware to 1.20260408
* Wed Apr 01 2026 Koichiro Iwao <meta@almalinux.org> - 6.18.20-20260329.v8.1
- Update kernel to v6.18.20 21da81b5
* Mon Mar 02 2026 Koichiro Iwao <meta@almalinux.org> - 6.12.47-20250916.v8.2
- Add a pseudo subpackage -modules-extra-matched to resolve dependency issue