This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "IPFire 2.x development tree".
The branch, next has been updated
via cd7836340471b3455884b11b6a5955288714579d (commit)
via 41e33931526f9a071acc1f849cbf1d06901a430d (commit)
via f41a54a2eae3c21732863dba8851f87029cfd8d6 (commit)
via ee0ee298435ada541e4cfed95cfd38b328a41eca (commit)
via 6e16017fc0042bc346dc2d405a04528a4b4c0922 (commit)
via 162a0684483a0159b4d069b651ada02f03c14fec (commit)
via 285740b9265b24dcbd01a0eaaf4b3d35b7ce4b9a (commit)
via 20ad6285d66bb1907246d13b2241ba06bff06c67 (commit)
via 45c75a55a96792ccbb1db73f419f56ac41153513 (commit)
via babb30f6ab507bd944b4efb515f1ea19d33c41e6 (commit)
from 806cc1ffd1c03f4ad3be2bfc43b488df720623e0 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit cd7836340471b3455884b11b6a5955288714579d
Merge: 806cc1ffd 41e339315
Author: Arne Fitzenreiter arne_f@ipfire.org
Date: Sat Aug 12 16:48:54 2023 +0200
Merge remote-tracking branch 'origin/master' into next
Signed-off-by: Arne Fitzenreiter arne_f@ipfire.org
-----------------------------------------------------------------------
Summary of changes:
config/kernel/kernel.config.aarch64-ipfire | 3 +-
config/kernel/kernel.config.x86_64-ipfire | 5 +-
config/rootfiles/common/aarch64/linux | 2 +-
config/rootfiles/common/linux-firmware | 265 +++++-
config/rootfiles/common/x86_64/intel-microcode | 3 +
config/rootfiles/common/x86_64/linux | 3 +-
.../{159 => 177}/filelists/aarch64/u-boot-mkimage | 0
config/rootfiles/{core/179 => oldcore/178}/exclude | 0
.../oldcore/{124 => 178}/filelists/aarch64/linux | 0
.../{159 => 178}/filelists/aarch64/u-boot-mkimage | 0
.../{core/179 => oldcore/178}/filelists/core-files | 0
config/rootfiles/oldcore/178/filelists/files | 2 +
.../oldcore/178/filelists/linux-firmware-update | 66 ++
.../{121 => 178}/filelists/x86_64/intel-microcode | 0
.../oldcore/{100 => 178}/filelists/x86_64/linux | 0
config/rootfiles/oldcore/{177 => 178}/update.sh | 38 +-
html/cgi-bin/vulnerabilities.cgi | 2 +
lfs/intel-microcode | 4 +-
lfs/linux | 4 +-
lfs/linux-firmware | 5 +-
make.sh | 21 +-
src/initscripts/system/smt | 10 +-
src/patches/linux-firmware-amd-family-17h.patch | 243 -----
src/patches/linux-firmware-amd-family-19h.patch | 993 +++++++++------------
24 files changed, 798 insertions(+), 871 deletions(-)
copy config/rootfiles/oldcore/{159 => 177}/filelists/aarch64/u-boot-mkimage (100%)
copy config/rootfiles/{core/179 => oldcore/178}/exclude (100%)
copy config/rootfiles/oldcore/{124 => 178}/filelists/aarch64/linux (100%)
copy config/rootfiles/oldcore/{159 => 178}/filelists/aarch64/u-boot-mkimage (100%)
copy config/rootfiles/{core/179 => oldcore/178}/filelists/core-files (100%)
create mode 100644 config/rootfiles/oldcore/178/filelists/files
create mode 100644 config/rootfiles/oldcore/178/filelists/linux-firmware-update
copy config/rootfiles/oldcore/{121 => 178}/filelists/x86_64/intel-microcode (100%)
copy config/rootfiles/oldcore/{100 => 178}/filelists/x86_64/linux (100%)
copy config/rootfiles/oldcore/{177 => 178}/update.sh (80%)
delete mode 100644 src/patches/linux-firmware-amd-family-17h.patch
Difference in files:
diff --git a/config/kernel/kernel.config.aarch64-ipfire b/config/kernel/kernel.config.aarch64-ipfire
index 830d9db9b..74dec8565 100644
--- a/config/kernel/kernel.config.aarch64-ipfire
+++ b/config/kernel/kernel.config.aarch64-ipfire
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/arm64 6.1.41-ipfire Kernel Configuration
+# Linux/arm64 6.1.45-ipfire Kernel Configuration
#
CONFIG_CC_VERSION_TEXT="gcc (GCC) 13.1.0"
CONFIG_CC_IS_GCC=y
@@ -336,6 +336,7 @@ CONFIG_ARCH_VEXPRESS=y
#
# ARM errata workarounds via the alternatives framework
#
+CONFIG_AMPERE_ERRATUM_AC03_CPU_38=y
CONFIG_ARM64_WORKAROUND_CLEAN_CACHE=y
CONFIG_ARM64_ERRATUM_826319=y
CONFIG_ARM64_ERRATUM_827319=y
diff --git a/config/kernel/kernel.config.x86_64-ipfire b/config/kernel/kernel.config.x86_64-ipfire
index a5ad9700f..7c052fe08 100644
--- a/config/kernel/kernel.config.x86_64-ipfire
+++ b/config/kernel/kernel.config.x86_64-ipfire
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/x86 6.1.42-ipfire Kernel Configuration
+# Linux/x86 6.1.45-ipfire Kernel Configuration
#
CONFIG_CC_VERSION_TEXT="gcc (GCC) 13.1.0"
CONFIG_CC_IS_GCC=y
@@ -478,7 +478,9 @@ CONFIG_RETHUNK=y
CONFIG_CPU_UNRET_ENTRY=y
CONFIG_CPU_IBPB_ENTRY=y
CONFIG_CPU_IBRS_ENTRY=y
+CONFIG_CPU_SRSO=y
CONFIG_SLS=y
+# CONFIG_GDS_FORCE_MITIGATION is not set
CONFIG_ARCH_HAS_ADD_PAGES=y
CONFIG_ARCH_MHP_MEMMAP_ON_MEMORY_ENABLE=y
@@ -689,6 +691,7 @@ CONFIG_GENERIC_SMP_IDLE_THREAD=y
CONFIG_ARCH_HAS_FORTIFY_SOURCE=y
CONFIG_ARCH_HAS_SET_MEMORY=y
CONFIG_ARCH_HAS_SET_DIRECT_MAP=y
+CONFIG_ARCH_HAS_CPU_FINALIZE_INIT=y
CONFIG_HAVE_ARCH_THREAD_STRUCT_WHITELIST=y
CONFIG_ARCH_WANTS_DYNAMIC_TASK_STRUCT=y
CONFIG_ARCH_WANTS_NO_INSTR=y
diff --git a/config/rootfiles/common/aarch64/linux b/config/rootfiles/common/aarch64/linux
index 230e419d3..5ed37b7e0 100644
--- a/config/rootfiles/common/aarch64/linux
+++ b/config/rootfiles/common/aarch64/linux
@@ -6587,7 +6587,6 @@ etc/modprobe.d/ipv6.conf
#lib/modules/KVER-ipfire/build/include/asm-generic/bitops/sched.h
#lib/modules/KVER-ipfire/build/include/asm-generic/bitsperlong.h
#lib/modules/KVER-ipfire/build/include/asm-generic/bug.h
-#lib/modules/KVER-ipfire/build/include/asm-generic/bugs.h
#lib/modules/KVER-ipfire/build/include/asm-generic/cache.h
#lib/modules/KVER-ipfire/build/include/asm-generic/cacheflush.h
#lib/modules/KVER-ipfire/build/include/asm-generic/checksum.h
@@ -6767,6 +6766,7 @@ etc/modprobe.d/ipv6.conf
#lib/modules/KVER-ipfire/build/include/config/AMD8111_ETH
#lib/modules/KVER-ipfire/build/include/config/AMD_PHY
#lib/modules/KVER-ipfire/build/include/config/AMLOGIC_THERMAL
+#lib/modules/KVER-ipfire/build/include/config/AMPERE_ERRATUM_AC03_CPU_38
#lib/modules/KVER-ipfire/build/include/config/APERTURE_HELPERS
#lib/modules/KVER-ipfire/build/include/config/AQTION
#lib/modules/KVER-ipfire/build/include/config/AQUANTIA_PHY
diff --git a/config/rootfiles/common/linux-firmware b/config/rootfiles/common/linux-firmware
index d66eb313d..ef305ae77 100644
--- a/config/rootfiles/common/linux-firmware
+++ b/config/rootfiles/common/linux-firmware
@@ -159,6 +159,13 @@ lib/firmware/amdgpu/gc_11_0_2_mes1.bin
lib/firmware/amdgpu/gc_11_0_2_mes_2.bin
lib/firmware/amdgpu/gc_11_0_2_pfp.bin
lib/firmware/amdgpu/gc_11_0_2_rlc.bin
+lib/firmware/amdgpu/gc_11_0_3_imu.bin
+lib/firmware/amdgpu/gc_11_0_3_me.bin
+lib/firmware/amdgpu/gc_11_0_3_mec.bin
+lib/firmware/amdgpu/gc_11_0_3_mes1.bin
+lib/firmware/amdgpu/gc_11_0_3_mes_2.bin
+lib/firmware/amdgpu/gc_11_0_3_pfp.bin
+lib/firmware/amdgpu/gc_11_0_3_rlc.bin
lib/firmware/amdgpu/gc_11_0_4_imu.bin
lib/firmware/amdgpu/gc_11_0_4_me.bin
lib/firmware/amdgpu/gc_11_0_4_mec.bin
@@ -377,6 +384,8 @@ lib/firmware/amdgpu/polaris12_uvd.bin
lib/firmware/amdgpu/polaris12_vce.bin
lib/firmware/amdgpu/psp_13_0_0_sos.bin
lib/firmware/amdgpu/psp_13_0_0_ta.bin
+lib/firmware/amdgpu/psp_13_0_10_sos.bin
+lib/firmware/amdgpu/psp_13_0_10_ta.bin
lib/firmware/amdgpu/psp_13_0_11_ta.bin
lib/firmware/amdgpu/psp_13_0_11_toc.bin
lib/firmware/amdgpu/psp_13_0_4_ta.bin
@@ -430,6 +439,7 @@ lib/firmware/amdgpu/sdma_5_2_7.bin
lib/firmware/amdgpu/sdma_6_0_0.bin
lib/firmware/amdgpu/sdma_6_0_1.bin
lib/firmware/amdgpu/sdma_6_0_2.bin
+lib/firmware/amdgpu/sdma_6_0_3.bin
lib/firmware/amdgpu/si58_mc.bin
lib/firmware/amdgpu/sienna_cichlid_ce.bin
lib/firmware/amdgpu/sienna_cichlid_dmcub.bin
@@ -444,6 +454,7 @@ lib/firmware/amdgpu/sienna_cichlid_sos.bin
lib/firmware/amdgpu/sienna_cichlid_ta.bin
lib/firmware/amdgpu/sienna_cichlid_vcn.bin
lib/firmware/amdgpu/smu_13_0_0.bin
+lib/firmware/amdgpu/smu_13_0_10.bin
lib/firmware/amdgpu/smu_13_0_7.bin
lib/firmware/amdgpu/stoney_ce.bin
lib/firmware/amdgpu/stoney_me.bin
@@ -988,6 +999,27 @@ lib/firmware/cavium/cnn55xx_se.fw
lib/firmware/cbfw-3.2.5.1.bin
#lib/firmware/cirrus
#lib/firmware/cirrus/cs35l41
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10280cbd-spkid0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10280cbd-spkid1.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10280cbd.wmfw
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10280cbe-spkid0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10280cbe-spkid1.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10280cbe.wmfw
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10280cbf-spkid0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10280cbf-spkid1.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10280cbf.wmfw
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10280cc1-spkid0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10280cc1-spkid1.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10280cc1.wmfw
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10280cc2-spkid0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10280cc2-spkid1.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10280cc2.wmfw
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10280cc3-spkid0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10280cc3-spkid1.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10280cc3.wmfw
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10280cc4-spkid0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10280cc4-spkid1.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10280cc4.wmfw
#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-103c896e-l0.bin
#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-103c896e-r0.bin
#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-103c896e.wmfw
@@ -1064,6 +1096,60 @@ lib/firmware/cbfw-3.2.5.1.bin
#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-104312af-spkid1-l0.bin
#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-104312af-spkid1-r0.bin
#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-104312af.wmfw
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431433-spkid0-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431433-spkid0-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431433-spkid1-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431433-spkid1-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431433.wmfw
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431463-spkid0-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431463-spkid0-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431463-spkid1-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431463-spkid1-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431463.wmfw
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431473-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431473-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431473.wmfw
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431483-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431483-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431483.wmfw
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431493-spkid0-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431493-spkid0-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431493-spkid1-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431493-spkid1-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431493.wmfw
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-104314d3-spkid0-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-104314d3-spkid0-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-104314d3-spkid1-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-104314d3-spkid1-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-104314d3.wmfw
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-104314e3-spkid0-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-104314e3-spkid0-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-104314e3-spkid1-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-104314e3-spkid1-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-104314e3.wmfw
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431503-spkid0-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431503-spkid0-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431503-spkid1-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431503-spkid1-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431503.wmfw
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431533-spkid0-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431533-spkid0-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431533-spkid1-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431533-spkid1-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431533.wmfw
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431573-spkid0-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431573-spkid0-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431573-spkid1-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431573-spkid1-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431573.wmfw
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431663-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431663-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431663.wmfw
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-104317f3-spkid0-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-104317f3-spkid0-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-104317f3-spkid1-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-104317f3-spkid1-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-104317f3.wmfw
#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431a20.wmfw
#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431a30.wmfw
#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431a40.wmfw
@@ -1079,6 +1165,36 @@ lib/firmware/cbfw-3.2.5.1.bin
#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431b93-spkid1-l0.bin
#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431b93-spkid1-r0.bin
#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431b93.wmfw
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431c9f-spkid0-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431c9f-spkid0-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431c9f-spkid1-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431c9f-spkid1-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431c9f.wmfw
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431caf-spkid0-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431caf-spkid0-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431caf-spkid1-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431caf-spkid1-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431caf.wmfw
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431ccf-spkid0-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431ccf-spkid0-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431ccf-spkid1-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431ccf-spkid1-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431ccf.wmfw
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431cdf-spkid0-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431cdf-spkid0-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431cdf-spkid1-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431cdf-spkid1-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431cdf.wmfw
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431cef-spkid0-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431cef-spkid0-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431cef-spkid1-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431cef-spkid1-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431cef.wmfw
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431d1f-spkid0-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431d1f-spkid0-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431d1f-spkid1-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431d1f-spkid1-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431d1f.wmfw
#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431e02-spkid0-l0.bin
#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431e02-spkid0-r0.bin
#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-10431e02-spkid1-l0.bin
@@ -1148,6 +1264,27 @@ lib/firmware/cbfw-3.2.5.1.bin
#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-17aa3855-spkid0.bin
#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-17aa3855-spkid1.bin
#lib/firmware/cirrus/cs35l41-dsp1-spk-cali-17aa3855.wmfw
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10280cbd-spkid0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10280cbd-spkid1.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10280cbd.wmfw
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10280cbe-spkid0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10280cbe-spkid1.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10280cbe.wmfw
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10280cbf-spkid0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10280cbf-spkid1.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10280cbf.wmfw
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10280cc1-spkid0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10280cc1-spkid1.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10280cc1.wmfw
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10280cc2-spkid0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10280cc2-spkid1.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10280cc2.wmfw
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10280cc3-spkid0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10280cc3-spkid1.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10280cc3.wmfw
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10280cc4-spkid0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10280cc4-spkid1.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10280cc4.wmfw
#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-103c896e-l0.bin
#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-103c896e-r0.bin
#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-103c896e.wmfw
@@ -1226,6 +1363,60 @@ lib/firmware/cbfw-3.2.5.1.bin
#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-104312af-spkid1-l0.bin
#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-104312af-spkid1-r0.bin
#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-104312af.wmfw
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431433-spkid0-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431433-spkid0-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431433-spkid1-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431433-spkid1-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431433.wmfw
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431463-spkid0-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431463-spkid0-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431463-spkid1-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431463-spkid1-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431463.wmfw
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431473-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431473-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431473.wmfw
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431483-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431483-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431483.wmfw
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431493-spkid0-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431493-spkid0-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431493-spkid1-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431493-spkid1-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431493.wmfw
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-104314d3-spkid0-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-104314d3-spkid0-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-104314d3-spkid1-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-104314d3-spkid1-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-104314d3.wmfw
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-104314e3-spkid0-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-104314e3-spkid0-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-104314e3-spkid1-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-104314e3-spkid1-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-104314e3.wmfw
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431503-spkid0-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431503-spkid0-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431503-spkid1-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431503-spkid1-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431503.wmfw
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431533-spkid0-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431533-spkid0-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431533-spkid1-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431533-spkid1-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431533.wmfw
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431573-spkid0-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431573-spkid0-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431573-spkid1-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431573-spkid1-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431573.wmfw
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431663-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431663-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431663.wmfw
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-104317f3-spkid0-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-104317f3-spkid0-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-104317f3-spkid1-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-104317f3-spkid1-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-104317f3.wmfw
#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431a20.wmfw
#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431a30.wmfw
#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431a40.wmfw
@@ -1241,6 +1432,36 @@ lib/firmware/cbfw-3.2.5.1.bin
#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431b93-spkid1-l0.bin
#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431b93-spkid1-r0.bin
#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431b93.wmfw
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431c9f-spkid0-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431c9f-spkid0-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431c9f-spkid1-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431c9f-spkid1-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431c9f.wmfw
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431caf-spkid0-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431caf-spkid0-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431caf-spkid1-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431caf-spkid1-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431caf.wmfw
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431ccf-spkid0-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431ccf-spkid0-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431ccf-spkid1-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431ccf-spkid1-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431ccf.wmfw
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431cdf-spkid0-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431cdf-spkid0-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431cdf-spkid1-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431cdf-spkid1-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431cdf.wmfw
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431cef-spkid0-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431cef-spkid0-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431cef-spkid1-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431cef-spkid1-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431cef.wmfw
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431d1f-spkid0-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431d1f-spkid0-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431d1f-spkid1-l0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431d1f-spkid1-r0.bin
+#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431d1f.wmfw
#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431e02-spkid0-l0.bin
#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431e02-spkid0-r0.bin
#lib/firmware/cirrus/cs35l41-dsp1-spk-prot-10431e02-spkid1-l0.bin
@@ -1324,6 +1545,8 @@ lib/firmware/cbfw-3.2.5.1.bin
#lib/firmware/cirrus/cs35l41/v6.61.1/halo_cspl_RAM_revB2_29.63.1.wmfw
#lib/firmware/cirrus/cs35l41/v6.63.0
#lib/firmware/cirrus/cs35l41/v6.63.0/halo_cspl_RAM_revB2_29.65.0.wmfw
+#lib/firmware/cirrus/cs35l41/v6.78.0
+#lib/firmware/cirrus/cs35l41/v6.78.0/halo_cspl_RAM_revB2_29.80.0.wmfw
#lib/firmware/cis
lib/firmware/cis/3CCFEM556.cis
lib/firmware/cis/3CXEM556.cis
@@ -1348,9 +1571,7 @@ lib/firmware/cmmb_venice_12mhz.inp
#lib/firmware/cpia2
lib/firmware/cpia2/stv0672_vp4.bin
lib/firmware/ct2fw-3.2.5.1.bin
-lib/firmware/ctefx.bin
lib/firmware/ctfw-3.2.5.1.bin
-lib/firmware/ctspeq.bin
#lib/firmware/cxgb3
lib/firmware/cxgb3/ael2005_opt_edc.bin
lib/firmware/cxgb3/ael2005_twx_edc.bin
@@ -1463,9 +1684,6 @@ lib/firmware/ene-ub6250/msp_rdwr.bin
lib/firmware/ene-ub6250/sd_init1.bin
lib/firmware/ene-ub6250/sd_init2.bin
lib/firmware/ene-ub6250/sd_rdwr.bin
-#lib/firmware/ess
-lib/firmware/ess/maestro3_assp_kernel.fw
-lib/firmware/ess/maestro3_assp_minisrc.fw
lib/firmware/f2255usb.bin
#lib/firmware/go7007
lib/firmware/go7007/go7007fw.bin
@@ -1731,6 +1949,8 @@ lib/firmware/intel/fw_sst_22a8.bin
#lib/firmware/intel/ice/ddp
lib/firmware/intel/ice/ddp-comms
lib/firmware/intel/ice/ddp-comms/ice_comms-1.3.40.0.pkg
+lib/firmware/intel/ice/ddp-lag
+lib/firmware/intel/ice/ddp-lag/ice_lag-1.3.1.0.pkg
lib/firmware/intel/ice/ddp-wireless_edge
lib/firmware/intel/ice/ddp-wireless_edge/ice_wireless_edge-1.3.10.0.pkg
lib/firmware/intel/ice/ddp/ice-1.3.30.0.pkg
@@ -1827,6 +2047,7 @@ lib/firmware/iwlwifi-so-a0-gf-a0-77.ucode
lib/firmware/iwlwifi-so-a0-gf-a0-78.ucode
lib/firmware/iwlwifi-so-a0-gf-a0-79.ucode
lib/firmware/iwlwifi-so-a0-gf-a0-81.ucode
+lib/firmware/iwlwifi-so-a0-gf-a0-83.ucode
lib/firmware/iwlwifi-so-a0-gf-a0.pnvm
lib/firmware/iwlwifi-so-a0-gf4-a0-72.ucode
lib/firmware/iwlwifi-so-a0-gf4-a0-73.ucode
@@ -1835,6 +2056,7 @@ lib/firmware/iwlwifi-so-a0-gf4-a0-77.ucode
lib/firmware/iwlwifi-so-a0-gf4-a0-78.ucode
lib/firmware/iwlwifi-so-a0-gf4-a0-79.ucode
lib/firmware/iwlwifi-so-a0-gf4-a0-81.ucode
+lib/firmware/iwlwifi-so-a0-gf4-a0-83.ucode
lib/firmware/iwlwifi-so-a0-gf4-a0.pnvm
lib/firmware/iwlwifi-so-a0-hr-b0-72.ucode
lib/firmware/iwlwifi-so-a0-hr-b0-73.ucode
@@ -1855,6 +2077,7 @@ lib/firmware/iwlwifi-ty-a0-gf-a0-77.ucode
lib/firmware/iwlwifi-ty-a0-gf-a0-78.ucode
lib/firmware/iwlwifi-ty-a0-gf-a0-79.ucode
lib/firmware/iwlwifi-ty-a0-gf-a0-81.ucode
+lib/firmware/iwlwifi-ty-a0-gf-a0-83.ucode
lib/firmware/iwlwifi-ty-a0-gf-a0.pnvm
#lib/firmware/kaweth
lib/firmware/kaweth/new_code.bin
@@ -1877,8 +2100,6 @@ lib/firmware/keyspan/usa49wlc.fw
#lib/firmware/keyspan_pda
lib/firmware/keyspan_pda/keyspan_pda.fw
lib/firmware/keyspan_pda/xircom_pgs.fw
-#lib/firmware/korg
-lib/firmware/korg/k1212.dsp
lib/firmware/lbtf_usb.bin
lib/firmware/lgs8g75.fw
#lib/firmware/libertas
@@ -2018,6 +2239,7 @@ lib/firmware/mediatek/sof/sof-mt8195.ri
#lib/firmware/mellanox/mlxsw_spectrum-13.2010.1502.mfa2
#lib/firmware/mellanox/mlxsw_spectrum-13.2010.3020.mfa2
#lib/firmware/mellanox/mlxsw_spectrum-13.2010.3146.mfa2
+#lib/firmware/mellanox/mlxsw_spectrum-13.2012.1012.mfa2
#lib/firmware/mellanox/mlxsw_spectrum2-29.2000.2308.mfa2
#lib/firmware/mellanox/mlxsw_spectrum2-29.2000.2714.mfa2
#lib/firmware/mellanox/mlxsw_spectrum2-29.2007.1168.mfa2
@@ -2036,6 +2258,7 @@ lib/firmware/mediatek/sof/sof-mt8195.ri
#lib/firmware/mellanox/mlxsw_spectrum2-29.2010.1502.mfa2
#lib/firmware/mellanox/mlxsw_spectrum2-29.2010.3020.mfa2
#lib/firmware/mellanox/mlxsw_spectrum2-29.2010.3146.mfa2
+#lib/firmware/mellanox/mlxsw_spectrum2-29.2012.1012.mfa2
#lib/firmware/mellanox/mlxsw_spectrum3-30.2007.1168.mfa2
#lib/firmware/mellanox/mlxsw_spectrum3-30.2008.1036.mfa2
#lib/firmware/mellanox/mlxsw_spectrum3-30.2008.1310.mfa2
@@ -2052,6 +2275,8 @@ lib/firmware/mediatek/sof/sof-mt8195.ri
#lib/firmware/mellanox/mlxsw_spectrum3-30.2010.1502.mfa2
#lib/firmware/mellanox/mlxsw_spectrum3-30.2010.3020.mfa2
#lib/firmware/mellanox/mlxsw_spectrum3-30.2010.3146.mfa2
+#lib/firmware/mellanox/mlxsw_spectrum3-30.2012.1012.mfa2
+#lib/firmware/mellanox/mlxsw_spectrum4-34.2012.1012.mfa2
#lib/firmware/meson
#lib/firmware/meson/vdec
lib/firmware/meson/vdec/g12a_h264.bin
@@ -2850,8 +3075,6 @@ lib/firmware/qat_mmp.bin
#lib/firmware/qca/rampatch_usb_00130201.bin
#lib/firmware/qca/rampatch_usb_00190200.bin
#lib/firmware/qcom
-#lib/firmware/qcom/LENOVO
-#lib/firmware/qcom/LENOVO/21BX
lib/firmware/qcom/a300_pfp.fw
lib/firmware/qcom/a300_pm4.fw
lib/firmware/qcom/a330_pfp.fw
@@ -2888,6 +3111,7 @@ lib/firmware/qcom/leia_pm4_470.fw
#lib/firmware/qcom/sc8280xp/LENOVO/21BX
#lib/firmware/qcom/sc8280xp/LENOVO/21BX/adspr.jsn
#lib/firmware/qcom/sc8280xp/LENOVO/21BX/adspua.jsn
+#lib/firmware/qcom/sc8280xp/LENOVO/21BX/audioreach-tplg.bin
#lib/firmware/qcom/sc8280xp/LENOVO/21BX/battmgr.jsn
#lib/firmware/qcom/sc8280xp/LENOVO/21BX/cdspr.jsn
#lib/firmware/qcom/sc8280xp/LENOVO/21BX/qcadsp8280.mbn
@@ -2895,6 +3119,11 @@ lib/firmware/qcom/leia_pm4_470.fw
#lib/firmware/qcom/sc8280xp/LENOVO/21BX/qcdxkmsuc8280.mbn
#lib/firmware/qcom/sc8280xp/LENOVO/21BX/qcslpi8280.mbn
#lib/firmware/qcom/sdm845
+#lib/firmware/qcom/sdm845/Thundercomm
+#lib/firmware/qcom/sdm845/Thundercomm/db845c
+#lib/firmware/qcom/sdm845/Thundercomm/db845c/slpi.mbn
+#lib/firmware/qcom/sdm845/Thundercomm/db845c/slpir.jsn
+#lib/firmware/qcom/sdm845/Thundercomm/db845c/slpius.jsn
#lib/firmware/qcom/sdm845/a630_zap.mbn
#lib/firmware/qcom/sdm845/adsp.mbn
#lib/firmware/qcom/sdm845/adspr.jsn
@@ -3368,12 +3597,6 @@ lib/firmware/s5p-mfc-v6.fw
lib/firmware/s5p-mfc-v7.fw
lib/firmware/s5p-mfc-v8.fw
lib/firmware/s5p-mfc.fw
-#lib/firmware/sb16
-lib/firmware/sb16/alaw_main.csp
-lib/firmware/sb16/ima_adpcm_capture.csp
-lib/firmware/sb16/ima_adpcm_init.csp
-lib/firmware/sb16/ima_adpcm_playback.csp
-lib/firmware/sb16/mulaw_main.csp
lib/firmware/sdd_sagrad_1091_1098.bin
#lib/firmware/slicoss
lib/firmware/slicoss/gbdownload.sys
@@ -3498,9 +3721,17 @@ lib/firmware/wsm_22.bin
#lib/firmware/yam
lib/firmware/yam/1200.bin
lib/firmware/yam/9600.bin
-#lib/firmware/yamaha
+lib/firmware/ctefx.bin
+lib/firmware/ctspeq.bin
+lib/firmware/ess/maestro3_assp_kernel.fw
+lib/firmware/ess/maestro3_assp_minisrc.fw
+lib/firmware/korg/k1212.dsp
+lib/firmware/sb16/alaw_main.csp
+lib/firmware/sb16/ima_adpcm_capture.csp
+lib/firmware/sb16/ima_adpcm_init.csp
+lib/firmware/sb16/ima_adpcm_playback.csp
+lib/firmware/sb16/mulaw_main.csp
lib/firmware/yamaha/ds1_ctrl.fw
lib/firmware/yamaha/ds1_dsp.fw
lib/firmware/yamaha/ds1e_ctrl.fw
lib/firmware/yamaha/yss225_registers.bin
-
diff --git a/config/rootfiles/common/x86_64/intel-microcode b/config/rootfiles/common/x86_64/intel-microcode
index 7f9632973..3241092f3 100644
--- a/config/rootfiles/common/x86_64/intel-microcode
+++ b/config/rootfiles/common/x86_64/intel-microcode
@@ -119,8 +119,11 @@ lib/firmware/intel-ucode/06-a6-01
lib/firmware/intel-ucode/06-a7-01
lib/firmware/intel-ucode/06-b7-01
lib/firmware/intel-ucode/06-ba-02
+lib/firmware/intel-ucode/06-ba-02_DUPLICATE
lib/firmware/intel-ucode/06-ba-03
+lib/firmware/intel-ucode/06-ba-03_DUPLICATE
lib/firmware/intel-ucode/06-be-00
+lib/firmware/intel-ucode/06-be-00_DUPLICATE
lib/firmware/intel-ucode/06-bf-02
lib/firmware/intel-ucode/06-bf-05
lib/firmware/intel-ucode/0f-00-07
diff --git a/config/rootfiles/common/x86_64/linux b/config/rootfiles/common/x86_64/linux
index 3db69b01c..f2b488ef9 100644
--- a/config/rootfiles/common/x86_64/linux
+++ b/config/rootfiles/common/x86_64/linux
@@ -6422,7 +6422,6 @@ etc/modprobe.d/ipv6.conf
#lib/modules/KVER-ipfire/build/include/asm-generic/bitops/sched.h
#lib/modules/KVER-ipfire/build/include/asm-generic/bitsperlong.h
#lib/modules/KVER-ipfire/build/include/asm-generic/bug.h
-#lib/modules/KVER-ipfire/build/include/asm-generic/bugs.h
#lib/modules/KVER-ipfire/build/include/asm-generic/cache.h
#lib/modules/KVER-ipfire/build/include/asm-generic/cacheflush.h
#lib/modules/KVER-ipfire/build/include/asm-generic/checksum.h
@@ -6659,6 +6658,7 @@ etc/modprobe.d/ipv6.conf
#lib/modules/KVER-ipfire/build/include/config/ARCH_HAS_ADD_PAGES
#lib/modules/KVER-ipfire/build/include/config/ARCH_HAS_CACHE_LINE_SIZE
#lib/modules/KVER-ipfire/build/include/config/ARCH_HAS_COPY_MC
+#lib/modules/KVER-ipfire/build/include/config/ARCH_HAS_CPU_FINALIZE_INIT
#lib/modules/KVER-ipfire/build/include/config/ARCH_HAS_CPU_RELAX
#lib/modules/KVER-ipfire/build/include/config/ARCH_HAS_CURRENT_STACK_POINTER
#lib/modules/KVER-ipfire/build/include/config/ARCH_HAS_DEBUG_VIRTUAL
@@ -7113,6 +7113,7 @@ etc/modprobe.d/ipv6.conf
#lib/modules/KVER-ipfire/build/include/config/CPU_IDLE_GOV_TEO
#lib/modules/KVER-ipfire/build/include/config/CPU_ISOLATION
#lib/modules/KVER-ipfire/build/include/config/CPU_RMAP
+#lib/modules/KVER-ipfire/build/include/config/CPU_SRSO
#lib/modules/KVER-ipfire/build/include/config/CPU_SUP_AMD
#lib/modules/KVER-ipfire/build/include/config/CPU_SUP_CENTAUR
#lib/modules/KVER-ipfire/build/include/config/CPU_SUP_HYGON
diff --git a/config/rootfiles/oldcore/177/filelists/aarch64/u-boot-mkimage b/config/rootfiles/oldcore/177/filelists/aarch64/u-boot-mkimage
new file mode 120000
index 000000000..8606a8983
--- /dev/null
+++ b/config/rootfiles/oldcore/177/filelists/aarch64/u-boot-mkimage
@@ -0,0 +1 @@
+../../../../common/aarch64/u-boot-mkimage
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/178/exclude b/config/rootfiles/oldcore/178/exclude
new file mode 100644
index 000000000..8ee1c3c2f
--- /dev/null
+++ b/config/rootfiles/oldcore/178/exclude
@@ -0,0 +1,35 @@
+boot/config.txt
+boot/grub/grub.cfg
+boot/grub/grubenv
+boot/uEnv.txt
+etc/alternatives
+etc/collectd.custom
+etc/default/grub
+etc/ipsec.conf
+etc/ipsec.secrets
+etc/ipsec.user.conf
+etc/ipsec.user.secrets
+etc/localtime
+etc/shadow
+etc/snort/snort.conf
+etc/ssl/openssl.cnf
+etc/sudoers
+etc/sysconfig/firewall.local
+etc/sysconfig/rc.local
+etc/udev/rules.d/30-persistent-network.rules
+srv/web/ipfire/html/proxy.pac
+var/ipfire/dma
+var/ipfire/time
+var/ipfire/firewall/locationblock
+var/ipfire/fwhosts/customlocationgrp
+var/ipfire/ovpn
+var/ipfire/urlfilter/blacklist
+var/ipfire/urlfilter/settings
+var/lib/alternatives
+var/lib/location/database.db
+var/lib/location/ipset
+var/log/cache
+var/log/dhcpcd.log
+var/log/messages
+var/state/dhcp/dhcpd.leases
+var/updatecache
diff --git a/config/rootfiles/oldcore/178/filelists/aarch64/linux b/config/rootfiles/oldcore/178/filelists/aarch64/linux
new file mode 120000
index 000000000..3a2532bc7
--- /dev/null
+++ b/config/rootfiles/oldcore/178/filelists/aarch64/linux
@@ -0,0 +1 @@
+../../../../common/aarch64/linux
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/178/filelists/aarch64/u-boot-mkimage b/config/rootfiles/oldcore/178/filelists/aarch64/u-boot-mkimage
new file mode 120000
index 000000000..8606a8983
--- /dev/null
+++ b/config/rootfiles/oldcore/178/filelists/aarch64/u-boot-mkimage
@@ -0,0 +1 @@
+../../../../common/aarch64/u-boot-mkimage
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/178/filelists/core-files b/config/rootfiles/oldcore/178/filelists/core-files
new file mode 100644
index 000000000..0dec37e53
--- /dev/null
+++ b/config/rootfiles/oldcore/178/filelists/core-files
@@ -0,0 +1,5 @@
+etc/system-release
+etc/issue
+etc/os-release
+srv/web/ipfire/cgi-bin/credits.cgi
+var/ipfire/langs
diff --git a/config/rootfiles/oldcore/178/filelists/files b/config/rootfiles/oldcore/178/filelists/files
new file mode 100644
index 000000000..957d268c9
--- /dev/null
+++ b/config/rootfiles/oldcore/178/filelists/files
@@ -0,0 +1,2 @@
+etc/rc.d/init.d/smt
+srv/web/ipfire/cgi-bin/vulnerabilities.cgi
diff --git a/config/rootfiles/oldcore/178/filelists/linux-firmware-update b/config/rootfiles/oldcore/178/filelists/linux-firmware-update
new file mode 100644
index 000000000..21e8e8602
--- /dev/null
+++ b/config/rootfiles/oldcore/178/filelists/linux-firmware-update
@@ -0,0 +1,66 @@
+lib/firmware/amdgpu/dcn_3_1_4_dmcub.bin
+lib/firmware/amdgpu/dcn_3_1_5_dmcub.bin
+lib/firmware/amdgpu/dcn_3_2_0_dmcub.bin
+lib/firmware/amdgpu/dcn_3_2_1_dmcub.bin
+lib/firmware/amdgpu/gc_11_0_3_imu.bin
+lib/firmware/amdgpu/gc_11_0_3_me.bin
+lib/firmware/amdgpu/gc_11_0_3_mec.bin
+lib/firmware/amdgpu/gc_11_0_3_mes1.bin
+lib/firmware/amdgpu/gc_11_0_3_mes_2.bin
+lib/firmware/amdgpu/gc_11_0_3_pfp.bin
+lib/firmware/amdgpu/gc_11_0_3_rlc.bin
+lib/firmware/amdgpu/green_sardine_vcn.bin
+lib/firmware/amdgpu/picasso_vcn.bin
+lib/firmware/amdgpu/psp_13_0_10_sos.bin
+lib/firmware/amdgpu/psp_13_0_10_ta.bin
+lib/firmware/amdgpu/raven2_vcn.bin
+lib/firmware/amdgpu/raven_vcn.bin
+lib/firmware/amdgpu/renoir_vcn.bin
+lib/firmware/amdgpu/sdma_6_0_3.bin
+lib/firmware/amdgpu/smu_13_0_10.bin
+lib/firmware/amdgpu/vcn_4_0_0.bin
+lib/firmware/amdgpu/yellow_carp_dmcub.bin
+lib/firmware/amd-ucode/microcode_amd_fam17h.bin
+lib/firmware/amd-ucode/microcode_amd_fam19h.bin
+lib/firmware/i915/adlp_dmc.bin
+lib/firmware/i915/dg2_guc_70.bin
+lib/firmware/i915/mtl_dmc.bin
+lib/firmware/i915/mtl_guc_70.bin
+lib/firmware/i915/mtl_huc_gsc.bin
+lib/firmware/intel/ibt-0040-0041.sfi
+lib/firmware/intel/ibt-0040-4150.sfi
+lib/firmware/intel/ibt-0041-0041.sfi
+lib/firmware/intel/ibt-1040-0041.sfi
+lib/firmware/intel/ibt-1040-4150.sfi
+lib/firmware/intel/ibt-19-0-0.sfi
+lib/firmware/intel/ibt-19-0-1.sfi
+lib/firmware/intel/ibt-19-0-4.sfi
+lib/firmware/intel/ibt-19-16-4.sfi
+lib/firmware/intel/ibt-19-240-1.sfi
+lib/firmware/intel/ibt-19-240-4.sfi
+lib/firmware/intel/ibt-19-32-0.sfi
+lib/firmware/intel/ibt-19-32-1.sfi
+lib/firmware/intel/ibt-19-32-4.sfi
+lib/firmware/intel/ibt-20-0-3.sfi
+lib/firmware/intel/ibt-20-1-3.sfi
+lib/firmware/intel/ibt-20-1-4.sfi
+lib/firmware/intel/ice/ddp-lag
+lib/firmware/iwlwifi-cc-a0-77.ucode
+lib/firmware/iwlwifi-Qu-b0-hr-b0-77.ucode
+lib/firmware/iwlwifi-Qu-b0-jf-b0-77.ucode
+lib/firmware/iwlwifi-Qu-c0-hr-b0-77.ucode
+lib/firmware/iwlwifi-Qu-c0-jf-b0-77.ucode
+lib/firmware/iwlwifi-QuZ-a0-hr-b0-77.ucode
+lib/firmware/iwlwifi-so-a0-gf4-a0-83.ucode
+lib/firmware/iwlwifi-so-a0-gf4-a0.pnvm
+lib/firmware/iwlwifi-so-a0-gf-a0-83.ucode
+lib/firmware/iwlwifi-so-a0-gf-a0.pnvm
+lib/firmware/iwlwifi-ty-a0-gf-a0-83.ucode
+lib/firmware/iwlwifi-ty-a0-gf-a0.pnvm
+lib/firmware/mediatek/BT_RAM_CODE_MT7922_1_1_hdr.bin
+lib/firmware/mediatek/mt8195/scp.img
+lib/firmware/mediatek/WIFI_MT7922_patch_mcu_1_1_hdr.bin
+lib/firmware/mediatek/WIFI_RAM_CODE_MT7922_1.bin
+lib/firmware/nxp/sr150_fw.bin
+lib/firmware/rtw89/rtw8851b_fw.bin
+lib/firmware/wfx/wfm_wf200_C0.sec
diff --git a/config/rootfiles/oldcore/178/filelists/x86_64/intel-microcode b/config/rootfiles/oldcore/178/filelists/x86_64/intel-microcode
new file mode 120000
index 000000000..d5ac074e2
--- /dev/null
+++ b/config/rootfiles/oldcore/178/filelists/x86_64/intel-microcode
@@ -0,0 +1 @@
+../../../../common/x86_64/intel-microcode
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/178/filelists/x86_64/linux b/config/rootfiles/oldcore/178/filelists/x86_64/linux
new file mode 120000
index 000000000..0615b5b9a
--- /dev/null
+++ b/config/rootfiles/oldcore/178/filelists/x86_64/linux
@@ -0,0 +1 @@
+../../../../common/x86_64/linux
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/178/update.sh b/config/rootfiles/oldcore/178/update.sh
new file mode 100644
index 000000000..caa15bee7
--- /dev/null
+++ b/config/rootfiles/oldcore/178/update.sh
@@ -0,0 +1,149 @@
+#!/bin/bash
+############################################################################
+# #
+# This file is part of the IPFire Firewall. #
+# #
+# IPFire is free software; you can redistribute it and/or modify #
+# it under the terms of the GNU General Public License as published by #
+# the Free Software Foundation; either version 3 of the License, or #
+# (at your option) any later version. #
+# #
+# IPFire is distributed in the hope that it will be useful, #
+# but WITHOUT ANY WARRANTY; without even the implied warranty of #
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
+# GNU General Public License for more details. #
+# #
+# You should have received a copy of the GNU General Public License #
+# along with IPFire; if not, write to the Free Software #
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #
+# #
+# Copyright (C) 2023 IPFire-Team info@ipfire.org. #
+# #
+############################################################################
+#
+. /opt/pakfire/lib/functions.sh
+/usr/local/bin/backupctrl exclude >/dev/null 2>&1
+
+core=178
+
+exit_with_error() {
+ # Set last succesfull installed core.
+ echo $(($core-1)) > /opt/pakfire/db/core/mine
+ # force fsck at next boot, this may fix free space on xfs
+ touch /forcefsck
+ # don't start pakfire again at error
+ killall -KILL pak_update
+ /usr/bin/logger -p syslog.emerg -t ipfire \
+ "core-update-${core}: $1"
+ exit $2
+}
+
+
+# Remove old core updates from pakfire cache to save space...
+for (( i=1; i<=$core; i++ )); do
+ rm -f /var/cache/pakfire/core-upgrade-*-$i.ipfire
+done
+
+# Stop services
+/etc/rc.d/init.d/squid stop
+
+KVER="xxxKVERxxx"
+
+# Backup uEnv.txt if exist
+if [ -e /boot/uEnv.txt ]; then
+ cp -vf /boot/uEnv.txt /boot/uEnv.txt.org
+fi
+
+# Do some sanity checks prior to the kernel update
+case $(uname -r) in
+ *-ipfire*)
+ # Ok.
+ ;;
+ *)
+ exit_with_error "ERROR cannot update. No IPFire Kernel." 1
+ ;;
+esac
+
+# Check diskspace on root
+ROOTSPACE=$( df / -Pk | sed "s| * | |g" | cut -d" " -f4 | tail -n 1 )
+
+if [ $ROOTSPACE -lt 100000 ]; then
+ exit_with_error "ERROR cannot update because not enough free space on root." 2
+ exit 2
+fi
+
+# Remove the old kernel
+rm -rvf \
+ /boot/System.map-* \
+ /boot/config-* \
+ /boot/ipfirerd-* \
+ /boot/initramfs-* \
+ /boot/vmlinuz-* \
+ /boot/uImage-* \
+ /boot/zImage-* \
+ /boot/uInit-* \
+ /boot/dtb-* \
+ /lib/modules
+
+# Extract files
+extract_files
+
+# Remove files
+#rm -rvf \
+
+# update linker config
+ldconfig
+
+# Update Language cache
+/usr/local/bin/update-lang-cache
+
+# Filesytem cleanup
+/usr/local/bin/filesystem-cleanup
+
+# Start services
+/etc/init.d/sshd restart
+/etc/init.d/unbound reload
+if [ -f /var/ipfire/proxy/enable ]; then
+ /etc/init.d/squid start
+fi
+
+# Rebuild initial ramdisks
+dracut --regenerate-all --force
+KVER="xxxKVERxxx"
+case "$(uname -m)" in
+ aarch64)
+ mkimage -A arm64 -T ramdisk -C lzma -d /boot/initramfs-${KVER}-ipfire.img /boot/uInit-${KVER}-ipfire
+ # dont remove initramfs because grub need this to boot.
+ ;;
+esac
+
+# remove lm_sensor config after collectd was started
+# to re-search sensors at next boot with updated kernel
+rm -f /etc/sysconfig/lm_sensors
+
+# Upadate Kernel version in uEnv.txt
+if [ -e /boot/uEnv.txt ]; then
+ sed -i -e "s/KVER=.*/KVER=${KVER}/g" /boot/uEnv.txt
+fi
+
+# Call user update script (needed for some ARM boards)
+if [ -e /boot/pakfire-kernel-update ]; then
+ /boot/pakfire-kernel-update ${KVER}
+fi
+
+# This update needs a reboot...
+touch /var/run/need_reboot
+
+# Finish
+/etc/init.d/fireinfo start
+sendprofile
+
+# Update grub config to display new core version
+if [ -e /boot/grub/grub.cfg ]; then
+ grub-mkconfig -o /boot/grub/grub.cfg
+fi
+
+sync
+
+# Don't report the exitcode last command
+exit 0
diff --git a/html/cgi-bin/vulnerabilities.cgi b/html/cgi-bin/vulnerabilities.cgi
index 0edd127d7..77223c4fa 100644
--- a/html/cgi-bin/vulnerabilities.cgi
+++ b/html/cgi-bin/vulnerabilities.cgi
@@ -30,12 +30,14 @@ require "${General::swroot}/lang.pl";
require "${General::swroot}/header.pl";
my %VULNERABILITIES = (
+ "gather_data_sampling" => "gather data sampling",
"itlb_multihit" => "$Lang::tr{'itlb multihit'} (CVE-2018-12207)",
"l1tf" => "$Lang::tr{'foreshadow'} (CVE-2018-3620)",
"mds" => "$Lang::tr{'fallout zombieload ridl'} (CVE-2018-12126, CVE-2018-12130, CVE-2018-12127, CVE-2019-11091)",
"meltdown" => "$Lang::tr{'meltdown'} (CVE-2017-5754)",
"mmio_stale_data" => "$Lang::tr{'mmio stale data'} (CVE-2022-21123, CVE-2022-21125, CVE-2022-21127, CVE-2022-21166)",
"retbleed" => "$Lang::tr{'retbleed'} (CVE-2022-29900, CVE-2022-29901)",
+ "spec_rstack_overflow" => "spec rstack overflow",
"spec_store_bypass" => "$Lang::tr{'spectre variant 4'} (CVE-2018-3639)",
"spectre_v1" => "$Lang::tr{'spectre variant 1'} (CVE-2017-5753)",
"spectre_v2" => "$Lang::tr{'spectre variant 2'} (CVE-2017-5715)",
diff --git a/lfs/intel-microcode b/lfs/intel-microcode
index 37cf9589c..4bb322ac5 100644
--- a/lfs/intel-microcode
+++ b/lfs/intel-microcode
@@ -24,7 +24,7 @@
include Config
-VER = 20230613
+VER = 20230808
THISAPP = Intel-Linux-Processor-Microcode-Data-Files-microcode-$(VER)
DL_FILE = $(THISAPP).tar.gz
@@ -41,7 +41,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_BLAKE2 = 56bffb26687fd3a20b79b4540ae10c98b2875e3edb84583b679ddc75e339193db4bddece25c7e5cb26b79f5e6ce2d10fcc318c55e13c05d8611198e4c571354b
+$(DL_FILE)_BLAKE2 = 400ba9b91a7048c780377d49ff6cb00458c60a9d53c2e5cef1eb99170ca8f0cad66336841d14869bd42d182f7d8df27a2fa9cb982b0df0c5fc9f62325b6acb69
install : $(TARGET)
diff --git a/lfs/linux b/lfs/linux
index 2160482ca..52f1fe167 100644
--- a/lfs/linux
+++ b/lfs/linux
@@ -24,7 +24,7 @@
include Config
-VER = 6.1.42
+VER = 6.1.45
ARM_PATCHES = 6.1.y-ipfire2
THISAPP = linux-$(VER)
@@ -75,7 +75,7 @@ objects = \
$(DL_FILE) = $(URL_IPFIRE)/$(DL_FILE)
arm-multi-patches-$(ARM_PATCHES).patch.xz = $(URL_IPFIRE)/arm-multi-patches-$(ARM_PATCHES).patch.xz
-$(DL_FILE)_BLAKE2 = 27d506867a44764ca5fb71d36a1732ded064b8d24d2d53bd1b2158db53cc82283a390b46071ed0cd07fdd68a0fd60486e5ec231fc6247f87bc0bea9692d449f9
+$(DL_FILE)_BLAKE2 = 1889f12c4bf9d09a5c3d3addbe5de7989ebacdc89c01973b33e8e11faa989eb7a0f1666c3a78ffeb6b315ec1599ab51490a97079f2d4c2109c8888a88dcf03b7
arm-multi-patches-$(ARM_PATCHES).patch.xz_BLAKE2 = 7afc460562fb24bcd75784fc79de768f9b60780aedd88d1a847927169e31920bbb475b1ac1466c4a224a7876d16bd8d465b96202de12b74f6e2ccbfcec731ad3
install : $(TARGET)
diff --git a/lfs/linux-firmware b/lfs/linux-firmware
index 7313c2d0f..bd292a694 100644
--- a/lfs/linux-firmware
+++ b/lfs/linux-firmware
@@ -24,7 +24,7 @@
include Config
-VER = 20230625
+VER = 20230804
THISAPP = linux-firmware-$(VER)
DL_FILE = $(THISAPP).tar.gz
@@ -40,7 +40,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_BLAKE2 = ffddd7e1252b1916b667ed153b6a81d843589c36d53ca48d5a491183f549b380ba7b242e4dc18998fc7e8d3fa4522c4ab0ed55ac37e771f13254f7c0e3b69ccf
+$(DL_FILE)_BLAKE2 = 9ecedb8bc155fbd192d8cd42d06c9b37d6c7a52c013ec997331865c06f12251c3f223eb9d2e6d0830e29276bd588a352e8ff8bae276e63157df5d6a433c3e20d
install : $(TARGET)
@@ -71,7 +71,6 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
@$(PREBUILD)
@rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE)
cd $(DIR_APP) && git apply -p1 < $(DIR_SRC)/src/patches/linux-firmware-amd-family-19h.patch
- cd $(DIR_APP) && git apply -p1 < $(DIR_SRC)/src/patches/linux-firmware-amd-family-17h.patch
mkdir -p /lib/firmware
cd $(DIR_APP) && make install
diff --git a/make.sh b/make.sh
index 0ed5bbb4c..e74156156 100755
--- a/make.sh
+++ b/make.sh
@@ -1132,17 +1132,6 @@ buildipfire() {
lfsmake2 iproute2
lfsmake2 screen
lfsmake2 elfutils
-
- # Kernelbuild ... current we have no platform that need
- # multi kernel builds so KCFG is empty
- lfsmake2 linux KCFG=""
- lfsmake2 rtl8189es KCFG=""
- lfsmake2 rtl8189fs KCFG=""
- lfsmake2 rtl8812au KCFG=""
- lfsmake2 rtl8822bu KCFG=""
- lfsmake2 rtl8821cu KCFG=""
- lfsmake2 linux-initrd KCFG=""
-
lfsmake2 expat
lfsmake2 libconfig
lfsmake2 curl
@@ -1708,6 +1697,16 @@ buildipfire() {
lfsmake2 perl-MIME-Base32
lfsmake2 perl-URI-Encode
lfsmake2 rsnapshot
+
+ # Kernelbuild ... current we have no platform that need
+ # multi kernel builds so KCFG is empty
+ lfsmake2 linux KCFG=""
+ lfsmake2 rtl8189es KCFG=""
+ lfsmake2 rtl8189fs KCFG=""
+ lfsmake2 rtl8812au KCFG=""
+ lfsmake2 rtl8822bu KCFG=""
+ lfsmake2 rtl8821cu KCFG=""
+ lfsmake2 linux-initrd KCFG=""
}
buildinstaller() {
diff --git a/src/initscripts/system/smt b/src/initscripts/system/smt
index 821bb5178..384ea40b0 100644
--- a/src/initscripts/system/smt
+++ b/src/initscripts/system/smt
@@ -2,7 +2,7 @@
###############################################################################
# #
# IPFire.org - A linux based firewall #
-# Copyright (C) 2007-2022 IPFire Team info@ipfire.org #
+# Copyright (C) 2007-2023 IPFire Team info@ipfire.org #
# #
# This program is free software: you can redistribute it and/or modify #
# it under the terms of the GNU General Public License as published by #
@@ -41,10 +41,10 @@ case "${1}" in
exit 0
fi
- # Disable SMT when the processor is vulnerable to Foreshadow or Fallout/ZombieLoad/RIDL
- for vuln in l1tf mds; do
- if [ -r "/sys/devices/system/cpu/vulnerabilities/${vuln}" ] && \
- [[ "$(</sys/devices/system/cpu/vulnerabilities/${vuln})" =~ "SMT vulnerable" ]]; then
+ # Disable SMT when the processor is vulnerable if SMT is enabled
+ for vuln in $(ls /sys/devices/system/cpu/vulnerabilities/*) ; do
+ if [ -r "${vuln}" ] && \
+ [[ "$(<${vuln})" =~ "SMT vulnerable" ]]; then
# Disable SMT
boot_mesg "Disabling Simultaneous Multi-Threading (SMT)..."
echo "forceoff" > /sys/devices/system/cpu/smt/control
diff --git a/src/patches/linux-firmware-amd-family-17h.patch b/src/patches/linux-firmware-amd-family-17h.patch
deleted file mode 100644
index b3cbc6b12..000000000
--- a/src/patches/linux-firmware-amd-family-17h.patch
+++ /dev/null
@@ -1,243 +0,0 @@
-From 0bc3126c9cfa0b8c761483215c25382f831a7c6f Mon Sep 17 00:00:00 2001
-From: John Allen john.allen@amd.com
-Date: Wed, 19 Jul 2023 19:17:57 +0000
-Subject: [PATCH] linux-firmware: Update AMD fam17h cpu microcode
-
-* Update AMD cpu microcode for processor family 17h
-
-Key Name = AMD Microcode Signing Key (for signing microcode container files only)
-Key ID = F328AE73
-Key Fingerprint = FC7C 6C50 5DAF CC14 7183 57CA E4BE 5339 F328 AE73
-
-Signed-off-by: John Allen john.allen@amd.com
-Signed-off-by: Josh Boyer jwboyer@kernel.org
----
- WHENCE | 2 +-
- amd-ucode/README | 3 ++-
- amd-ucode/microcode_amd_fam17h.bin | Bin 9700 -> 12924 bytes
- amd-ucode/microcode_amd_fam17h.bin.asc | 16 ++++++++--------
- 4 files changed, 11 insertions(+), 10 deletions(-)
-
-diff --git a/WHENCE b/WHENCE
-index b92e5299..dcb86fab 100644
---- a/WHENCE
-+++ b/WHENCE
-@@ -3909,7 +3909,7 @@ Raw: amd-ucode/microcode_amd_fam16h.bin
- Version: 2014-10-28
- File: amd-ucode/microcode_amd_fam17h.bin
- Raw: amd-ucode/microcode_amd_fam17h.bin
--Version: 2023-04-13
-+Version: 2023-07-19
- File: amd-ucode/microcode_amd_fam19h.bin
- Raw: amd-ucode/microcode_amd_fam19h.bin
- Version: 2023-07-18
-diff --git a/amd-ucode/README b/amd-ucode/README
-index 4308fe2d..1d39da3b 100644
---- a/amd-ucode/README
-+++ b/amd-ucode/README
-@@ -32,8 +32,9 @@ Microcode patches in microcode_amd_fam16h.bin:
-
- Microcode patches in microcode_amd_fam17h.bin:
- Family=0x17 Model=0x08 Stepping=0x02: Patch=0x0800820d Length=3200 bytes
-+ Family=0x17 Model=0x31 Stepping=0x00: Patch=0x0830107a Length=3200 bytes
-+ Family=0x17 Model=0xa0 Stepping=0x00: Patch=0x08a00008 Length=3200 bytes
- Family=0x17 Model=0x01 Stepping=0x02: Patch=0x0800126e Length=3200 bytes
-- Family=0x17 Model=0x31 Stepping=0x00: Patch=0x08301072 Length=3200 bytes
-
- Microcode patches in microcode_amd_fam19h.bin:
- Family=0x19 Model=0x01 Stepping=0x01: Patch=0x0a0011d1 Length=5568 bytes
-diff --git a/amd-ucode/microcode_amd_fam17h.bin b/amd-ucode/microcode_amd_fam17h.bin
-index 37d899cd534789e461a5cf3ad666fcd587b8ab93..f9841b65b8d6ea156a402f45bba17f0e31eaf4ea 100644
-GIT binary patch
-delta 5515
-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
-F{{gHxepLVf
-
-delta 2769
-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
-XI8~N^f?XgDZsTXPhi>+WOwD$}@;OgK
-
-diff --git a/amd-ucode/microcode_amd_fam17h.bin.asc b/amd-ucode/microcode_amd_fam17h.bin.asc
-index 27da52c8..34a40245 100644
---- a/amd-ucode/microcode_amd_fam17h.bin.asc
-+++ b/amd-ucode/microcode_amd_fam17h.bin.asc
-@@ -1,11 +1,11 @@
- -----BEGIN PGP SIGNATURE-----
-
--iQEzBAABCgAdFiEE/HxsUF2vzBRxg1fK5L5TOfMornMFAmQeEvgACgkQ5L5TOfMo
--rnPOpAf/dYhPqq/ktg1muI/khV4EhDiguX6OXib3fmfSZdvPIAI0cRI77M3Lvf0b
--nlV8D67e5HOQ5foJbix5tunz0sZjqr2QU8U9dNk/ut0KC7UiCRc8VH40aSi/OQBG
--Y8c7tb6IJ+N+jyJ6Ii6koUuRO2Lk2MckcrWLRuLRV4bB+osyJrGjc/X54Z6UJ/Ma
--VDg13Yxy5WvC7sMmlmnY42JLeLBKDVUvg0zDvJ4aOLLxRE2l3eiAKE+TV122LmxN
--ca5WA/ESYQ9BjxHYIrpTd9nQaWa/TIZ+rOmJGLMtnQ1gGlW97zQuJR7zh+8vdLzC
--iwVlS1cu7kcV7KYDytTkWJ+2gwb3uQ==
--=lP2S
-+iQEzBAABCgAdFiEE/HxsUF2vzBRxg1fK5L5TOfMornMFAmS4Mm4ACgkQ5L5TOfMo
-+rnN35wgAkllCunxE6J5hQyLMx5o4WTHZkbNvXmu6nV1Y3vjiL1oeaK+pmx8BlkPt
-+fGZJCe/068kqmp3N4EtOZLxXn55t3jNBYectPr0RmFqpjMsEJEcfXfuXROA4N9Ti
-+Zd/o6X21eHEsm0kK0q4YfppfgTd5Ze7k1jTkUuuU6/yh6uRk1MiFreEzkPO3Aayh
-+iEWlYx33vq3HccTPgdY3D64Zr8gmgKG+8mdEvqb1jK4SVZ1/9vy4OKIIpUZB/eqx
-+46h9Ejwn9pktnYkHi/A/zCREEcIQ10HXFF5bjxJTFQkM5S46/QEO7uuvnpMb+6Yy
-+4V1/QIWMG6ixqCRx9GqbBK7GHdYODw==
-+=+IsI
- -----END PGP SIGNATURE-----
---
-2.39.2
-
diff --git a/src/patches/linux-firmware-amd-family-19h.patch b/src/patches/linux-firmware-amd-family-19h.patch
index 0cf278085..371a8bfbb 100644
--- a/src/patches/linux-firmware-amd-family-19h.patch
+++ b/src/patches/linux-firmware-amd-family-19h.patch
@@ -1,7 +1,7 @@
-From b250b32ab1d044953af2dc5e790819a7703b7ee6 Mon Sep 17 00:00:00 2001
+From f2eb058afc57348cde66852272d6bf11da1eef8f Mon Sep 17 00:00:00 2001
From: John Allen
john.allen@amd.com
-Date: Tue, 18 Jul 2023 23:19:59 +0000
-Subject: [PATCH] linux-firmware: Update AMD cpu microcode
+Date: Tue, 8 Aug 2023 19:02:39 +0000
+Subject: [PATCH 1/1] linux-firmware: Update AMD cpu microcode
* Update AMD cpu microcode for processor family 19h
@@ -13,576 +13,473 @@ Signed-off-by: John Allen
john.allen@amd.com
Signed-off-by: Josh Boyer
jwboyer@kernel.org
---
WHENCE | 2 +-
- amd-ucode/README | 6 +++---
- amd-ucode/microcode_amd_fam19h.bin | Bin 16804 -> 16804 bytes
+ amd-ucode/README | 13 +++++++++++++
+ amd-ucode/microcode_amd_fam19h.bin | Bin 16804 -> 39172 bytes
amd-ucode/microcode_amd_fam19h.bin.asc | 16 ++++++++--------
- 4 files changed, 12 insertions(+), 12 deletions(-)
+ 4 files changed, 22 insertions(+), 9 deletions(-)
diff --git a/WHENCE b/WHENCE
-index de23a75e..b92e5299 100644
+index 99cee970..54aadb0c 100644
--- a/WHENCE
+++ b/WHENCE
-@@ -3912,7 +3912,7 @@ Raw: amd-ucode/microcode_amd_fam17h.bin
- Version: 2023-04-13
+@@ -3924,7 +3924,7 @@ Raw: amd-ucode/microcode_amd_fam17h.bin
+ Version: 2023-07-19
File: amd-ucode/microcode_amd_fam19h.bin
Raw: amd-ucode/microcode_amd_fam19h.bin
--Version: 2023-01-31
-+Version: 2023-07-18
+-Version: 2023-07-18
++Version: 2023-08-08
File: amd-ucode/README
License: Redistributable. See LICENSE.amd-ucode for details
diff --git a/amd-ucode/README b/amd-ucode/README
-index 0d97f910..4308fe2d 100644
+index 1d39da3b..fac11524 100644
--- a/amd-ucode/README
+++ b/amd-ucode/README
-@@ -36,6 +36,6 @@ Microcode patches in microcode_amd_fam17h.bin:
- Family=0x17 Model=0x31 Stepping=0x00: Patch=0x08301072 Length=3200 bytes
+@@ -37,6 +37,19 @@ Microcode patches in microcode_amd_fam17h.bin:
+ Family=0x17 Model=0x01 Stepping=0x02: Patch=0x0800126e Length=3200 bytes
Microcode patches in microcode_amd_fam19h.bin:
-- Family=0x19 Model=0x01 Stepping=0x00: Patch=0x0a001078 Length=5568 bytes
-- Family=0x19 Model=0x01 Stepping=0x01: Patch=0x0a0011ce Length=5568 bytes
-- Family=0x19 Model=0x01 Stepping=0x02: Patch=0x0a001231 Length=5568 bytes
-+ Family=0x19 Model=0x01 Stepping=0x01: Patch=0x0a0011d1 Length=5568 bytes
-+ Family=0x19 Model=0x01 Stepping=0x00: Patch=0x0a001079 Length=5568 bytes
-+ Family=0x19 Model=0x01 Stepping=0x02: Patch=0x0a001234 Length=5568 bytes
++ Family=0x19 Model=0x11 Stepping=0x01: Patch=0x0a10113e Length=5568 bytes
++ Family=0x19 Model=0x11 Stepping=0x02: Patch=0x0a10123e Length=5568 bytes
++ Family=0x19 Model=0xa0 Stepping=0x02: Patch=0x0aa00212 Length=5568 bytes
+ Family=0x19 Model=0x01 Stepping=0x01: Patch=0x0a0011d1 Length=5568 bytes
+ Family=0x19 Model=0x01 Stepping=0x00: Patch=0x0a001079 Length=5568 bytes
+ Family=0x19 Model=0x01 Stepping=0x02: Patch=0x0a001234 Length=5568 bytes
++ Family=0x19 Model=0xa0 Stepping=0x01: Patch=0x0aa00116 Length=5568 bytes
++
++NOTE: For Genoa (Family=0x19 Model=0x11) and Bergamo (Family=0x19 Model=0xa0),
++either AGESA version >= 1.0.0.8 OR a kernel with the following commit is
++required:
++a32b0f0db3f3 ("x86/microcode/AMD: Load late on both threads too")
++
++When late loading the patches for Genoa or Bergamo, there may be one spurious
++NMI observed per physical core. These NMIs are benign and don't cause any
++functional issue but will result in kernel messages being logged.
diff --git a/amd-ucode/microcode_amd_fam19h.bin b/amd-ucode/microcode_amd_fam19h.bin
-index 4bd623e14006b3a2eeb287e52708d3bea1c3a728..50470c3f461a068e832a1ebe33683a041d4515fe 100644
+index 50470c3f461a068e832a1ebe33683a041d4515fe..02a5d051d58b8028275ee6a0b091f11f8d1b6e27 100644
GIT binary patch
-literal 16804
-zcmeI&Q;%k0+b-&|ZQHhO+qPZRW!vhqZFku=p0aJL%bM?-nU!y@HGja`=`$H4xkg6r
-zz3bjMbBM_c1N}Eb|9OxR3;y%|-$5<_0z&#fW~BejDF4Td@}K$t8{q$Z=tl<vA|*nC
-zoJR(N0T29t|MA~5|C_*>=4dARAv8YrGO%<w9MT?TZL9Kfje`;YLWk-K6^@o4C&kC;
-z=uA4sHwsbjcW8N%DZ3`tL_w?Xcu4)EJ;0AD{rtzD7L|!e=?T<f?Kakyb3kyCzf7-o
-zk&;mWPNF;{WX~fi6K!PBa*idki4enxeaYPeuDPSx1NHK}l=@XT_dczdn$07k9Ax0R
-zw|yGmDSC3L3h7x8!_ivrfDNz!9Fdl#$}$f~hX!qc!I}B(UlaZ?uDJa*_CY2lTa83G
-z6=mtM|7Y@`_~cNLyfK>oMvFAg!{$lAVN$g-T#D{>;i!j?1KK|q$@wCynBV3w23pH*
-zr8)2_v}j)#KV>W@f_&#`F~Un?x0NcjG&6fMlx8H(O9XB0hjaWJW15RSn8)WchyF#P
-zj^254)ABW%ozHqwJpD{kC2A2-{!8t`I*WbMuPESqz}bnq*ieONM;;vz79SD$8*1uA
-zHV3F`1+WD~V=tkGGYQ3zi%f|@UHhJ-BRYLm`x2oh$Ywp_fJvkcRP_y86{V<nBwXuJ
-z?5B%cqNweqLqL;WA{#5PG_1JVdLNnin^VbEXV4V~JzCT&uG0^@M^#vTUGD)!u*hHm
-zNy?Z}jwCld{dkplfr}vA>-yZIeW4)m?z7R5uxYZpYcNcQi4<l4Fsfg!x;=w9f!AT=
-z_S#t+IHdC{)0)?ZmSz=BYD^T*zZD>{3+hRq0VAEY<pR%r<7#!VzOtrAUFa%`1HnV?
-z7e_3mlMHpdh^FCoD6$DW(V7b|jD}$M-n6d0Ki^v1aD0Un%7@1AJ>Ny+Dg&p*!6G2w
-z9E8-z$7p%@8E)76Oqh+*4N!%Afh#?%3bd6f<NDDX53z&_$KkgcI2q6(4(s>D)tnS`
-zQ4i$VwnBog{k*O(LqF6*FD3_K6Q9?oeQ4U0!q3(rZ>d8A+mxt3gJ8yQu7mAS5qy$Z
-z`F4e!Q*r9kvFgmGF#V0YDyc}Ulbf&+($uKrJ9Z!j^<%mDDVol?4lN>&>kXtGp@@9|
-zKnMQMqWpJ15RJ!c?avM=WPT(ylH16hZ<habXe4?%4yD>rB7mBO`?EY=yQsU#={6TE
-zh^7&3DR?0`{#0<LzXcNfP&(SR-FQ!?3huU)WW<#+pK+bhaVyJ#0em6Z+f=WVS&+gB
-zJ{>*|h+z?-X3vEx5rW_jB3vAg$Apm7ot*x2o`yO(Skp|I7+8$7rOEKS!CM5P@O9B6
-z(e*NhlAaWoj+3qd^|ExTeD%qNRhbf+X!2_=mi)`|ufXOFn8g)B@x(2sw7{8`u3}`H
-z#C-}OV)OW9<QD{M-R5E-4|X3OkDKdMRq)&BqsgUFm+VXs{vr1n?`ltyokgE5K~?d{
-zjgtjDG&CzH@a<VX0hx><2)ZG4*ySu%!Ul{xt>a!>USxy>Cm6PuisG;N6&c+Qk*1&n
-zxlWDNOo@oMu)nhOzozWZH!|K91E%UPfKXX+&yP2<C;XzupGjJ`HZE|q|19KJuKz-U
-zHv}g~)R|feG@j$sU&^#}MxeI4FdmTg%+O3hBecF2(x<Fk*3~e=U=a(5YlD%La&(LV
-z-qE(<Z$}2UMa2!#By1p$v|t+#eH>L=4(p{vBk%yV4&C3>)UXLD_;DMaOV;GAgK6{f
-z6KpM?^av*CIhjZJNv#B6{Jk#4G{iK4a6A$qzSBIMmZ1FBsuM!rcpS;(>(>M@6C_c5
-zq)KLO7hm37Hy*rs8af~GV5P6b`+TJo#v;>&SXziwH8?_lYr(WKs@@JUP<0+K{fV$g
-z<>Dt<6AdpUo}B~sCV9pkio8w1lX(qLeWfN0l=Ffi%6uZsvA29V<7PmIr>tb_b6bkq
-zix!Mr)~|}Wa-+dF|3W{M&Zdu~Twjhr7|wIJ1hY_D{G9~`g5eL;Qd4PAallF|Mnus&
-zGuP)7-hxWs=0^WIkHGrb13cxnPh4z@N^gWaofZX+($KBS(nf7sl2tSu%@c~W=V|He
-zW_j?+Ac5CO);TTZ-@t&F_)zOau(w;8z}d@h%PHkx<}Ed_e#{u2)D86$yOo2-I4;DQ
-z7(I@mX9d}h8Fcqpw=t33a~cQ;Ge=h)75F=WDZv^32iL6XUG~E4s1f#1mYVtuRMVId
-zr!mA<YPEW-L4=o0M}1M+56UFpXMe#0Pb~>cwG>Qgy5{XKZ0yLr)Aa!O`Bp${j>|xK
-zo>+Y|1If(Ev(K&vnD)ZpRTpSvNiK0QnsBd@clk<i6pnT3(+77$@6XpTE_OwH|Dtc!
-z)o8?2sXbF1kxodP>XDdp;b04lW%I|H5+=CQ>gmrq6lV`bSE9BknBAGIi7%m4evX4w
-zx&=O2v9r+Jerd4v;mhosqRycVqGqbOZwOu4*Gv}?9D7~XZ<Uq{q*b7YL$BYFuQH7p
-zI?|);ei#j~vz?EScB&nR+xPH94ir&mg717sXdy}CrRr1nd59oo;%a2HJh7PHgqG{6
-z%03a0a_{jjCz!X#n17%%vmCH&5^Y<f*v5c!n<b&$Pa{DI$>(^KB`hxMaXG^Pr8Cn-
-z!&ms{BTxp-vdw*TynFko$~Bff)Qhon3}I1rKh}t?>8|%OYTL5FM5ZRLlR?O}ajw9i
-zPf?RoEK8B_qYqR~P71ofI=76x^4(+9c))!_zTAglct53`?^(Ygh(*-4!yM+viF`HI
-z;o93WUV<GhKM|I-emmW)M&J7nTQpg7Dv#<D?ya3j$G2){>-@>#49&2GdoODmjg^n$
-ziK~IRaed}N5E1xPB8B!|{{qr-XJ}4Qf(JUvmv$NyCt$3L4^1t=a-7g)$mB=zojJ;x
-zic170L*4d+6d7aUM3?=7-@*bB1K^@C^I?vQMQ#VA0*SB91S;h4IU*~^@N1~OWW(=Z
-z&M;mgexaSt<~`-`Ez<$s`cS<UW#1?f)HU$qwb!251YV#J=g1ye+V>hPaA~)J^YT1}
-zD@IEL-}3f_GAPlvw8TyIs(JoYcxe`+)U~dwX8kCpQre0w^laKjLe)ivBfH;hBG8$1
-zs$CasUsUY47%B6LBT3;%072wN+aZhc93G9s|GqiJ;JF$*In?HI6Yf`xHeuE&Ub_{F
-z3e!rFldI>qA;yk#)C=lmv%Pz2Loz*HxuIXl!N>(|_GQEG2rfcoW|Bv-Fn&)7W!qlA
-z!&eHJr5_YspF66-I5>tIl0r5e6l>+lQF_E*xg^*w1h%wk(C~zi*$a`9hQn>b?Oxww
-zRX-~-B71~c91@)FrKx6WX+kXRR%%s0e(smkP*%~!snK^ZKDst6p{i`o^6QyfEYvCr
-z$_>(kYIn_*WFhuMVQEgqfakw-K@xwCVD<a?)nk+a)W9G2chmXJ)elSBnSp5-@D>n`
-zsOT!}N}Onjw3-y$=9&x2NJnDT#GSD}dx>lNWRYj)+ljg3rE(oxB9S&$)%0W=C$(yD
-zOx@Nv5-q{l{Bi}mnLij?=V*JX?;ssx)Zz4?!7`zGgdjt5SbxbWHp2Uc7f2-0M_ptY
-z^;_&M+Mo~h9O5u&0V-$<$rI;!_G<#jgbgMG%E)H@010&6wL#C;r}y(}ge5ZNR+Vc*
-zRqCi&gpkz>m0`fBH<=I@n-&lDM)heJMloLHpok?e{1LW~T~eeJt2Ga**i;WrQtIT9
-z`JLM^zD={GXOsnwh9Zm2hmL_J_pWJ3Lq+wSie?sRL;n(q&_2J&?XJrVJio5|;O1Q;
-zqHFa^VI?Y*Z)KHi{<2@_HTB|14sYqQ`!4g`guyU#S%28hniZoN9p=xQn3g|mVDqhN
-zP-saAd#+Hd!oE{ImIb=qHXyTsiqu)?l0P$*<cPPIzbv#yyo>Au83q+J>Cj=%CsjqV
-zv%EXD&c1B-+9TvpiZM9C%TCS`^quf$`DXwh=dpXOG3!|LWu{AmvG{rCIAcIpcFtq0
-zRP~O<S`Oce)A)0Hk-f$DBK|Bv)940jWqhX`HS}6BZy>GiFLIwxlmLBmA;L3!?pRJT
-zw_!5Ohd>GGYwC|pmUB!u-mZ=rl1%Uq;U_jrUCQk_^i?Q`U-D%xZO#4XsP1$aT_e>K
-zKox3tpy@10f6XDo2>Dq>MEQJ-3o#Ez*z<ANe>&+i_N*^kUXz1d+S#2Zumg$mS{Jp0
-z0)n?O>nXbghs0IlOdo^NBRSl84Gfr*(W(i8<}Xkm09Vvp^SA4{;%V^vbAgurzN8jO
-z2%JVjZ4cIHatqAUQEex?AcPK#aVQ7vgFV!^(aAul#*CqGBk_I|z=dnu=ciE9Zo6W)
-z3|ME{IFj1o&BU($+9!&&yi_3HMx)JJhtV`*n1)B>*Yii?F0TLtt>qlbFUM>Cqai$J
-z=LVqQ=5jtvw;O>;oLR$Fw3pVF_VqaEf>$(d8#ug?+Au4`Dm}7zw_%6i<9jJl108<v
-z$Hw`m1nx4^xHYx>a&c&0<*Z1L)w;6abjBAsDdLZ4_<VQQyp4V5$Y9}%B7L24#&=Pz
-z^Xs2IYa$3>1=dO99^&+4k!g^b=9YwrP*^tGSo}lPdrbt7#cW+h-Q-fxYCg;MY;oI`
-z!`646MnOSUcIbhY3@ljQq6b9u-ScUWrKl^t#94=XE22L0MLBI1w!K`2j(j@V;<P_a
-z!+ZO@nfW+wunWl9Y43J(H)YE$wkxdnRJKFEe!C$0-_!U6N6chc53Jh#*p9lcB9Yxx
-zloqS_@U^9#f6dHhp4zx#0Ei}f9#Wa2d0kb{^d!XU;u7V(lw$vg4eE1Gx_F&LPH&oS
-zDr0?r;omhbMDRo*;eTMWP;1f<qY8R0#yh$_(WVL3Cp7NK@dG(<q}SCV+-aS5LsB87
-zq~{l=<=iVDemkYi#CvyvP!|HkR)djn{!kJqfDaan)b}o!__lD0QhMaUw&63(%5yEI
-za-R|9o24$B^f*94%%(xJsUNw0z#iG_uxF!(1}UwcX)AalML3yR$0u@)Wl^V!|3#(?
-zRdI-y(Yk_?t(8j6<TC(BEmP5P?#l7fAq@#TA0OBgWx9I@yx}h`LBHFmpMvm_fznJF
-zUQum5a`rX_e?DzrDKJpr90l@^3-GJtZ=~F$&9-18xT!$~s1J*lb-VP}`ZX>s7r;v7
-zkAn`;gnbkzs=_R@fAPmr&x9jz4zr48x1;8E7(XEBcdHu6#bKWY@!WgN*2GZ$x&-3k
-zZ9wX^4Vn3vgU4l>)!H^hlBD>1O5RW(Suw~jE++)Eza0a~iASQvrP*c?jyX=wx!Tls
-zrJC}M0o)-ow0PMz7KTFS9x>W31{S2VEA|88yYFtvS`UUep^mWaH_roFkxv6KJLAL8
-zuvIqf5=n&1<9$KdnX|7;w89@yBL-*ge(g>dxDg-bNQhc;jkTf`(D}^lwCVtr5GBH?
-zsVhN!FjK*Yd}=IYq9lA#amaf^9J7~1nc+%XbWRQG&|z0eJ8s)h=0Zq^UyNRC@13(o
-zCm#2<slHZy=^yQcn{VxM^0OywP6D3j{?FCLda6ieTzj=LW2r8OxtRlh5oeFcX@EKW
-zHQolkY;bY2JMHzJHAv#Cl$<?M7)&tZ!XB)y8#$<%J+yiYc`}Mc7D-B26bAHNR^A)V
-z6R##FwK|1G?GU-_3bqx{(2M%$p0Qw@MDd$BU1c^YSpODV9n2x;?gY;|a)fG6;SQwC
-z7kDk0-!M~DS-!Ss+yhGYHDdP^m^H`}-*@5h_;)zv;_{x~6Be|ckXb^BWw$1I`P&D2
-zBg9I>^<aOrcMBu2<;bcAxP||)IRf;zfKPZlhZelnEUOeGt@?@-!7<G7LzlGZeb(R7
-zG}mLzVk^^fT<Ro(Oc6AU`#4~a=^h8gDLw|izq$oUe}`jTZh6$*T?kP4=Nx`oqzOX{
-zOK@KGt#8IU-i<$}ng+^qhMa_mQJ?zUJ?MKi@be4!47wUx6b7{g{XBcpw|w=DIOb}J
-z-lmPOCA2wg?#Eap*DRXVC>q>NjYN1Ui_VgjT4OdQ0i*~^)bJ~lh#H#C*~{ndJ7X0*
-z>1of7u$|e&^z7++j>~OF*@C{7AvY=(We2tOqY6l8)8$H4-@n?KhCw+^qqQ_{(}^vW
-zibAD^@?H$$L5MxdoUJDLjij9e{xma;6-FDR*j*vbV5Ncq-RgQngjAjtN0(;H{Dt7@
-zm!woedFde4EIX$=#obKP+J`x2knm09*r`G`9}I_(-BPN8{heWi(e#NYFhGdKITdwU
-ze$N%mJ+AxlULM46PkoS3t3`MK3n}K>CMG7Hp(0G}*NEn-<uQ>r(D7Xweo7ZaM7e(J
-z1yl6>W>kOUa*FRi;iLhn8v>MMi&A6tq}_eKOa%0`1AH8-FzHX`A}E<r+L&D`yP>GC
-z2E{35_uz7Vh4WagqLtD_C}!zNe7_yl-kWR_r8~%+mHFLE3&3Fg#$~>Yk~hIn*YU>`
-z%~pYD&y&G%InbOyOW0bJ=!`;m+P#bymci%W%nM8sCOZ@vJKLGh1F*ZBjN6G}IonIt
-z$J8J!DHq<3;*d!RD*EM=Mx?nM*tUgyia}O`1Cw{RhbU2RVZR)*d%D7Xj0py3pYK#w
-zD@RG~q#jMseUfN@E2v_a1{h}`SXY}(d|n#8tWnD*amsatKnQ{w+a-B(p6<lJg3y;n
-zZhdHs;UY9Tw6?cbqLKp^4{?D+7W?ODxrhci_+v)b#+2E!Hk7ufCj~(~w$gmk6Nij8
-zA%FeSxc}Z3G(vyEg=u)k59VF!mNK*3s|!PS<Z<-=AuQbYaUxNxF`Ipb>)AFEqFgu3
-z#m{VbA1EREkvkOCdjO*yQ;=aD?KRDb|5#|P*15`YQ#I#L?)eM^_J@g92!fwZZJuLP
-zC_&Mk)bOIV=G>MoMvmBgDnRFEV*e%mEF|UuQ$&wqFaRPSrZ-7?uD4f<kgLfdo&4)Y
-zJZAA86SD^VusPM(?g2>CciZVAveF-#te1<w*}13YPK&znB#XympZ%@e2&f2G#kY5@
-z*7JCAq9>7)bSyiJN7rO;0|KRx?+ZD%BP@i?(ny6mDqGa0t4Afb3^saxAs4T>syu6$
-zE`|yTQ(z*Iq;hoFDZ?`DZ36A!3|KW2uB@bWP<B%JR?)&^PTb}R<JaLFQwxH%A`?k-
-zXX*VfbhQMcO5K?pX#8==5dYv1>v&1+wUT74RbKmER#<q*cs6I)+A>V2>h1}QJI?#@
-z0FxMRfwtSXzKA^^in_Z6^I#>c8p6lXRvI{eBe+o>2wLe$u9{oZzpEKDJr1i}U0TX0
-z9v3s~S*pKV>S^P6LZ4J5r65R5=cRw<Krq6-aSp=%Qs>TugFI|MZ@p5qR$6_!<D3NR
-zi+;*n=^e%q|5@&WauWMZ5rbfIpj$IsRMIKsm~2;6_^6;&;nqYy{69S|G=vw@|J~#M
-zw+sGn;!gIsbUTTz*@#kkHmtN}w8vEh@hBB8O(oqA)dYd3BR2xcNu8y#yecMy5$S9o
-z#-~8z=;?)ooD*OdKQs`jLK}39h9X>;Fj?o)KC6Yg<~eHnUXypN`)`2vgqTvs(pvtI
-zx~DJ*7AP$!+tum-#{ZsL_RWNKMYQ-(08yU1Yxnx5h2Mu`yJ=BIkD8dHB9xxUyb&y%
-zX}@HBGXMH<XQ;=X-w}+*^X(=ExvB&2Z*+)_j}nj!jPrln7S#Pf!HbTtq;k+<ykr68
-z{lFSLOsMVNkLz>0GG+XV_7ZqskX}`yqj4D+Ml&ubT31cA!d}PwoeR`Sn*+}87d2u`
-z_OHkN*W><oKcwc07CfGp0yc!Xc?2sbfp>eO1#YAGE7>tRyhJyzkXT=^!orT1{F{&2
-zlE(%13`pl|6T6X^oSh0of|Q*)`eQt$*NQLWvsdp%HZF;}WW<Ucy`caN^!A0OChTEM
-zVVw^e{W0P;Q!Y1pfKthzoa3d&bUE$<a>1fR-6KgQAPMYOKvZP14bCoEbHay5V%X`r
-zrr#5}3|3d2W=)S-#jK}Z_ny2Bq$L#kbS%#4>%DjZb7>#gPxpYzF^^mZnB;`(>h1W}
-z;%f{l(I#s<e1~=IAC#qY!f0mQNyxw>^VJE;wr}DR+w|HTKTNake9Ow*f?e${nq-R<
-zl<PelMXLl<U@XL}PPZtN(6r&SL(|ke8=D|C<)=#;ujN)Dm}R#J%W)9|DOye+I-%hr
-zmsD$kQGTQSySyWD%r#D6{L)B)B;r)&(WR$lf=D$YbGB(i<Lzp~`xc>cRCD#ZTzi<m
-zPBt3zn7EAd*e=A|J&gpmMd*e`2gM<p$?~_J`9OHm#JJdPak%bdFl<wg*3ufFwBM}7
-zR+R-@5Dwn$Ua%``PEEvXKZ)t}?5zHKoUrWO1zX2u9q-vb4oS{!3RcwmB_AyWU=DdP
-zJhg*%Eukxuj(8~P9LZS3lflc&r`!{bR<%<U9M(#I=#5}@j$&?FLVD$KAWSvbsgLq~
-zMKn&azQ)SsTYsCWC%zY0hdQ_u<P|%5l=F;YY_v&mc1g|WXGYnY9cTF)vTB*yVVv>@
-zJF<=St-{ljx?!d}RJJcjWY&4{WyXmFU7EG$8yI|hpp3AQx0<2;UBHS-Vi&K?!G#fj
-z6_Q%c;$_*Od%VuJq~|2cevt0rY>`&O+#5U(l3I{YL>IMWE&o^tf$*is<V!SMj)?c~
-z(z6Hs`|YK9>EdV;*=w)Bv%{h$$Kfgzbp4$wJ5H3QX>0bIQ3!w=yRe0sXtohzZTbdn
-zhB31)uEK?YI}*7cZj-;O6gjsXR~p_kPr<5kJolc@VQtL^THXDjfnVggb;Dw@9IFrF
-zwSCF$PeE0$gzYYP!9q>|+#XXNSajBhnjN%ZJhp5t&5*P+S<<m<gXr@`A~z<cMEAk@
-z3Y4GE0j~Qzm+W2re#If95^wYH82;v=<1TYRDZYk2(geeD@_~{^a#tfu8yl2lMIoSw
-zh@nNKy<MEqb>ZabVmMedy@Y6Bvy{;gK_qKmjval@+9)k{sEj3^=R4$bnjiLAY%aO;
-z_g?6-(I%M8z`z2Jy*I?uKN32UKr=xw%-2_$*v`txnAT}5(WlQq2etB5EHbWr`u07g
-zU!#m?a{)=&gwd2i0+9Qlq3NVbUV<2NvE2#DyR#3*asep?8*)5*Hm>Nh%M>`ew``rZ
-zERyxSqY^0Ny`F~l*io9!z~s8p?Sd@I`U?iA?Y;|=wil`ss&jhdwc_COm#H~8W~f57
-z<OKCno<LU9GkH44=fFlKPmW;xFvMG<Lfs-%f^T~Za@k_j(#TW5x89TP3x5+(btCHv
-zgq@rc?h@%Svx7bNdCg9OahMi%S($eL>a&)mk}`Khy%|T5alObOm+4mWC~EuY9ri%!
-zOG-3Tc;e_nmI?UrLyyS{Ro>`d@c||bV3s`2SuczGFmn#u^CXTM*W4TC{VBbXK)4QP
-zrxq%APv;u#K@%(|&hA!YQN2*OJbGhu5T(Tlp|_AxbfgxYNBM+}H~Gs;e9P87V2`4`
-zgU_!_W$jyM>DdkpG0CjR)&^rw8CX)RJoU6;i>Cz7uy0`2d@u~u6V>*6bcG;@QwLHN
-z_e{}f7kPkb!27v1qGj=V#eLIM5-vHP5&|b$+oEs7lV`e^>d&8K|Ge!MZ?q!KKRK+(
-z`kqn57avd+REO38muI9V8V<VSssbj}1-`KFP}oho3iaF@YO6RtDvw>LJHoW7#*ot?
-zLh|!Y0h-94LhjJV>@(P}_6}eXL1`|yS_$?`@@xKpms$4}R3gXAC4-Xg)}Xb(ZB<uK
-z5`w2axZBt-y=4RkM>GRj9vWMV^J3}ur#h|u^Dcba?D{ccehbuAS7PSs={QwR;~J1A
-z{y~;A-S^S;)`~p>HK=r8jWje3BBRpP&9Y0rNg6Zd<+@n%$_rz@Ce9No<12uceyw`G
-z8VxnhUPEWXR!Gtpjm*1j1(B@^-`_*iMjg<Ny9oWvYzw~x22%51Tp>kY77ljgND0^@
-zXh2J0yJELL^>Y2tNd})&N`D@Q3eNNI3Of&255(yFS3q&ecsFEf+J&H@Z<8lC(`NO6
-zblB3l#Qw6}t)9ON$x4Z`KOAI=Z3A*LQR2QvCesdA$O?~r_(S#3wkF)+;hk{;wJs4V
-zZ`B*&-L?Vq?(egse+~((rK5t7Y7UoMd^=`xO_Up3hIfASWld_3e3Oy+Al}IWUO8Wp
-z1mji5x)uhwXVka_YHQ=1w&E|qLML6g<TT8aQXc5T;(t0mUuOu1e1Al@Oq3Id0_PYj
-zoDLYsczECKXk|cU@xuUi+a!i&*$wp`?*qp`0$uFP3D_u_l#`odFcU=fD4wRMvXJ&j
-z5SDtHKPk`Dr?y5zq(iR*^g!@NIN-9uJdI+H*3%}~vGAGHzT}MAvE^OFHRNl9CT1yr
-z!{Tly$<>@A*WH_J20_COgAXz&M=WQ~ib>(MJ3R9))?t@=0Lx5;{fSidZn0o@K~zpz
-ztsad$Qm2Qb?zHt7GG7jB5~(=sk%}iG2ne?vELq7A=%M*0h*jU0PZ?j(O(#0&Wfos(
-zAuYwueshJEZFngJ3YhPTh^T7y(GMvZrps&1JA|3nbo=}%MM{|IEGPu>-uK_XRR0tq
-z<u)oeQ_fH;od|r$6${deTm8;kbCq<y{Rrn%l(gYZOj{9NY|!50eE)?bx&H^fo9ob9
-zk#s&Lxwc+>#dy<pA(HdP|5Gcbsvt<&CMG;&D9yLM#Di+IGLWQ>9}vFxHA~(IBkh+5
-ze<F$Mrj!mGtyyollhoZ=0TN&{%i{|=*R1$z4;wt(pCZt`n49;OHBEuZu?Xvs0^vUY
-zSN?9^QtAFEDh1t=q;ZdJdkC*xa^TRaOQ#l85mjrq09S&F032aOGCW;aRF_RW#E=XP
-zmFiVE%x<q2YifRg13)xvzT;^85sUeFG_w*H(?6aKDVtN!GFrZQ0VVFvl#ob87lIr{
-zmwE?p2p~ezwrv%ki8CpoQc8?~F0L%>37S6VG&mRXH*>(EqQrcev(?PSWIai(jE$gq
-znoQ@ba*C;UEDWEygxB7kZ+nT$ZtFSdf{-BR?g2V*a|$^FcaAgL^eO9hrF8%k*T%*g
-zbuB~wINS4RJD?8yP*sE1ECWk|m8H-`hz=WtwKU+eb_Y7VIs0s|BMJx}Y7WmO>AybK
-zKlYH9iUU`*EgR;ZHJ|sKTiZ4K;>YQUg|;H(x+E?R2=T37zVs09=AB$8L(-U|-vtud
-zY*tH=3R%H#Grs*6V49k;1$c`#MnO4Ymnl}mOW@)1mZip9)IvAhY~jiFPy0K}2B+d}
-zZR6gofHanjbasG?-<W;f@wPdKtEsKX9hRaPx`BMd7`}F4Uo}|2$=U^fE$fdZh&R8C
-zMaE<Sn__Sr!%J~IOhd@z6Gz4Z*0p>c%cm4=S*MUy<Y(FD9#qiISvmo;Zl4or%d()`
-zV|Ary$8&epwaZv+gTX}{#BE;sL*GP~Ii~rmz;3gZL?PZq%-YjUk=5qwai1<KWlX|T
-z>>(oj&_5SG4r1Fmopma^^h#bl^@x$qeO+vB@T_4W!v%4x0`cUQcExQoq%bOmKoQ_%
-zZALh9IH+8XtD3M{GR+wQ>(Ia$<{Tz5?wY)~;mCh1NS2A<Uehl(A_5wp0C`-6!)CNu
-zz)!eU>#=LFBpFx!Wbasbh%zFrCk)}g=1QXEAiSi)7W(aqGNN5(A@%JBhqqd`RpkA`
-z2E8H*dGyrC*^bYK;76xNz+<)CI2W-+nvSx{fqDSNtw@Ysr`%#{C%q!(4>8yDCLn&f
-z=YBF2l$w@V@)0uOXHbY2N5aQd{xuWhCU!n2LM2A>M~U!4CTt{aPQ~lX)b}gU(PjsG
-z3v=s3h8BJ;_n%@cI3T~G3<)xSInAaO7UGj58cN{GTymHBwF00kSUE0zHb63x+3eYZ
-zO31v5#t7fAmXt}S(4Savls;MW0GtzxdGw63(i83Mf=BrrbL}0RfKjnGwGDWzaA#Y$
-zI~FgKkA2~Er|Mvfdp}>jgt)?&`~DVg*B&01<fZ9q{{-=Tk9)*sfkWH!%QhB<Z6e<Q
-zyuql1NMT|k<T5v=HoM^8cu7R8s#k6o!$#g|IT4s0jK36gY68Ac9a-4v`i>X*rQ9mC
-zkX?Z%U|%F<#URJ+DvD?{lMHeRx+tt2z0q1VSF3D=HIu58n`_(s`CSjz9oDq!V;iFV
-z|BS{biQu%IgI91l#PjH!H^d;*PPPyX_lu;MzpfKheW$6`l!=O#Sx!r2Rp6CTJlE(|
-z7oTt{6_L*2C<cBXvK~sOs?Rwl&)JH>X$%7^)R;}NX4bO1&W|1C+u(4Xz}oSS_*+C&
-zy>Nh#FPYb$eum2Kz!-vRbs80am^ym83*(}~TKGS|Xk!~@mT!q9)o1S5lF3Q<C*{QD
-z2}pEHD$;tenAWiRMbA+CYmqW<qdzmSvIeK&(PZ@#%)+)WHA;Db1c7Ra1#r+WVyl_c
-zGEY+WL4WfrjKmI>|Aj|l(O#TZdGZ>N`U~U6|5m+gC3&fImUn{CSoH_Mx|^fk3?X_T
-zLLSPd7u~Sbs`rp|Aye2z`+F_%H~IyR2LGu8-aHZyA!{4CTpVKo3`Y$DBD64|+uweO
-zgl}C`T`JpO!>Vs>X5<j3XH6wyxaKf)P-lfd=Q7nAhA^cfg~Hjmu9@r@=xp;qWD+dt
-z&W(DVWk+Xxv(!YAfOYXtEA#lZ^I5QJFRIOvm|jxc4TnlOo}SjMcj$aD5Ml2ox%$C7
-zS-Mi7lTP*?V&BwfRv=3)zFB8!htY6b`{AIH^l?3dsT1_`7vtP*(dx!JI(uMTwKK#X
-zy5TUZjZi$`B>gR6W-rQAG%fiBGp$JU!e`5}{#DKh^86{=W2ff*MazGqJN*JL24QyR
-z^KW<n@?-&l@65`$_C&vnU~MQIA747ebdB}}-}X7u9Kjo0qOTsQ3v}pra!mByfCp&+
-zS1S)5pw>R}l|R94XA+#jm^O++wnBt&02Z#f4MQ*Z+CJo2pKk+$D2vW4DAQZ5C7K#x
-z!VnkSw5K^L*$(AFN;t@SqBMez2+R%3JvzU4B|L8)y0gl(`-MNVRNTFX>C^;Qx3c4n
-zXY>iK8WpNE`)0#HHv0?gWPS*g&YX;O$3oX=iN#OT^2;nd<8CrjK^8H*(}aP+^x=>q
-zQyr~+=jZ7NF50)#0`Wn&aope@@{zvtqs%z6BQCK>^JsL?K(~eYl(N!jz!KK*WV%Dg
-ziGcD;E6_|13T}9bhcwEy7+?148M&7y6miH0jFf+XVp~ZW*{dl;&p%E6adXTvYo)Zm
-zN6nMi2F}@wb)6lzr`r8z)9&Y6`jgQ*&2zdmeectM3ooScpiA%3FKBI6?09qDXmW3g
-z4413@ta8L@)|R9DWRS8R5{lUz<{Jmjh(9ukWRBXxiaItKuS<?wfOT~9vQ4q=-8+mc
-zev`$XUEFrqQ%VYRLzN)UFR?S1>5&h~3>+)FJfoAR+rkFr0kK1+H;X(sjuzTQw*E)U
-z0u`bLMocxJ?`fRD5uu#yC9G^Cq`aHlLK5<#Ts+!B79O^(+w&u<*48K%Ig4eHyjV%>
-z;!5czq<9DIN;PLd9hD)2m3Vp(Yi=b&0>Pgu0mO~Q7N3>1lfnTC74G-E>~^5n>65LC
-z%^P2mrbVw6``zq9=(c>_Jvj3g7lEUH#(m{lg}Q=zK(dg(MCyksgVR%#esK#vZ{L8Y
-z_GU;IsMmgXjJl-v{I*9ueazR{n@JpkL+5y&r3?g&b^AlZn|vuP@6-BjbEQNvu*}_b
-zafne>W#U`?>GRfY8AcKYA0)$k1SRvASJ?CeB<vHshCVd(#v~&ung_0~G@18zlRpx+
-zLN9T<^6gOWn&1l3U}sdp#aLVtP|RmRO1v^FHlQ5qw7vN4av{`(W@joDd-Q2*Rixaf
-zJAFQoV(W67GfG`BK^M)uOBKm1Ytagj+u6mFs&St4K&~S#XlV4g#Ur}+WyijnI>i~9
-zjyL96yBZ}Mn-u4s@2A{(T;^aHLOd2&Nf-|_kyl!bJAT9QI}`?DaKq=G_E%<cVO<ku
-zo>hR6()ddi8B9ihC@^(ZkE&BMQTv*(OK)$P1-u<+l8$M4IUnu+^tecnY$*SCkNf`^
-zUh$B`*b1f;5PTJ&3)WS_-JFQm^r^q*ewKo{04jwhGz?o5QLsrSqjSZ)m+Y7Pb38}X
-z*N&m~JEuMix@~X?L$NrV1^{YQCa&#R@%QLQ(iw3*^YzU|P%afZ-SdqQ%warQzlOtb
-zLZ<uao6_06d)&*tiDYmHv#LS|g#k&86_<f}fif!MF##iCl~H)_f!F9xEWLGq+;bWv
-z>w?FVl*v?Ze9rwSSv_Yec2lx^9pI`^Tvkjvx`d{pntzmbA~Y<E0^zl<u8DT`eE`QB
-zw||^+_j!t@0tz_>BqpmZ{@UAdiyR^g-d<wnYA5%*S{sRBZ2V^Vd*+qH&-fDS{$G##
-zugCrGe*E*e|2*zLkNeN#{`0v1Jnlb_`_JS4^SJ*!?mv(F&*T2{xc@xvKacy*<Nouw
-M|2*#hA0GFA0Rm`VAOHXW
+delta 20542
+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
+YVQu*TZ8nl?f%`zS*L1OeLEkX&JxSZWhyVZp
-delta 15290
-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
-ME5Vz0z(fSb57uLE4*&oF
+delta 28
+hcmZqK#I&TDk;}!`kpTo87$#a7O{|gH{LazO5ddxw2oeAQ
diff --git a/amd-ucode/microcode_amd_fam19h.bin.asc b/amd-ucode/microcode_amd_fam19h.bin.asc
-index 7c5193cf..a32b4d61 100644
+index a32b4d61..8cff9013 100644
--- a/amd-ucode/microcode_amd_fam19h.bin.asc
+++ b/amd-ucode/microcode_amd_fam19h.bin.asc
@@ -1,11 +1,11 @@
-----BEGIN PGP SIGNATURE-----
--iQEzBAABCgAdFiEE/HxsUF2vzBRxg1fK5L5TOfMornMFAmPS0gkACgkQ5L5TOfMo
--rnMWewf/SNlPcRuJ/RPEKThbPJyToBi98e7QLqlGkuIQ7sZBjZ/zZIycQDkQgjVV
--MpO8E2yxn0Pp/2T6IzGBLPWpMVgvCabIn2gRe3qvRbJ5dYnxU3I5hfCITGHG0z2K
--OgH3Z51aKZGX0fCRHKdrtVf9RMdcYcVHD9NU48q8x8gArdRg+IZSCPzqD3dNw7nT
--TS2WHNiMzyqXkkqqkroofljUSZcuMIqDDEsfIB9LDQjFCMYEththlC0m0wz1QIRv
--HJCJZ8p/E8xMPLEp0JvhA1zxBePlyKmKtHLxhslyvEePJif5fHECEx95Q2xYRS+F
--rMXPlWVgxXzeM1NUxEBDM8vI6gaXtQ==
--=+Rqf
-+iQEzBAABCgAdFiEE/HxsUF2vzBRxg1fK5L5TOfMornMFAmS3F00ACgkQ5L5TOfMo
-+rnNEhQgAizSV8IFpvaYNytaJKLA4uevrZneGPV4czjCXnnj1yHpfQmCTyZQnoLnx
-+7gyzf7K5271zO51FBQ5z2Nm48a3XPUhMbQLNP4BZdekLiA3bRpMtSyHct6zD0ULm
-+xaFaOQ7MR1tGADhlon1bDvtnOuixUhwrZhEIlR9MzQAzERKDMOAVTbxn9ZhMfYiT
-+LhA791Blyyi+6Z9uh7BpaA8l8uvoxt+uuvlBTjQMR3ER/TEjgcsoy+XhhK4QKS0V
-+wJCtcDle/3pF+N6SAFWiXbNZ+P8p19afhcYddDl97xtpzA6/8b20a2eHkrqnu/Ds
-+jTozF9kmhiifYMYpXtXgSOwI3GRZbQ==
-+=t+j1
+-iQEzBAABCgAdFiEE/HxsUF2vzBRxg1fK5L5TOfMornMFAmS3F00ACgkQ5L5TOfMo
+-rnNEhQgAizSV8IFpvaYNytaJKLA4uevrZneGPV4czjCXnnj1yHpfQmCTyZQnoLnx
+-7gyzf7K5271zO51FBQ5z2Nm48a3XPUhMbQLNP4BZdekLiA3bRpMtSyHct6zD0ULm
+-xaFaOQ7MR1tGADhlon1bDvtnOuixUhwrZhEIlR9MzQAzERKDMOAVTbxn9ZhMfYiT
+-LhA791Blyyi+6Z9uh7BpaA8l8uvoxt+uuvlBTjQMR3ER/TEjgcsoy+XhhK4QKS0V
+-wJCtcDle/3pF+N6SAFWiXbNZ+P8p19afhcYddDl97xtpzA6/8b20a2eHkrqnu/Ds
+-jTozF9kmhiifYMYpXtXgSOwI3GRZbQ==
+-=t+j1
++iQEzBAABCgAdFiEE/HxsUF2vzBRxg1fK5L5TOfMornMFAmTEYrcACgkQ5L5TOfMo
++rnN4IQf/QKbOezXZ4OYzaPANvsZQEAzLNfuylC/aQMwrPaO7daz5/zmCN4HU5XkH
++dDT8DYfPg+fQHIgxAw0/L24xPOm5Op/QuLVDyDqVr4qvL8+65eeI+JqxD/wXMXYN
++V34kkLM2p8iuyY1Nc8IDLXu4X75KGNPbKZlMRKMU3Pr7ai5O4ihmiAM+N6qv1KEJ
++YToNN6vrg0qt1cv0SLM8sa4e7L1+oblUrg/o0FViYE8pxsU3ZRRVSJMUg+lKjvl/
++1ZPGKOdD80fcNJ+ItYGHNNs3eCc3WgW7Kc/E668eH75Yu9Zt7ewWZX8Sg/mygleY
++OzMwhbPJg4bF4zm7C/Pku7i1T2Omcg==
++=km2X
-----END PGP SIGNATURE-----
--
2.39.2
hooks/post-receive
--
IPFire 2.x development tree