Add firmware packaging and validation scripts

Red Bear OS Team
This commit is contained in:
2026-04-16 12:45:24 +01:00
parent 54e63420ec
commit 7b98843b97
1012 changed files with 121829 additions and 0 deletions
@@ -0,0 +1,125 @@
This repository includes microcode container files for family 15h, 16h,
17h, and 19h AMD CPUs. Microcode patches for families earlier than 15h are
included in the microcode_amd.bin microcode container file. The microcode
patches included in an AMD CPU microcode container file can be listed using
the script in the following git repository:
https://github.com/AMDESE/amd_ucode_info
The microcode patches included in the container files in this directory are
listed below:
Microcode patches in microcode_amd.bin:
Family=0x10 Model=0x02 Stepping=0x02: Patch=0x01000083 Length=960 bytes
Family=0x10 Model=0x02 Stepping=0x0a: Patch=0x01000084 Length=960 bytes
Family=0x10 Model=0x06 Stepping=0x02: Patch=0x010000c7 Length=960 bytes
Family=0x10 Model=0x05 Stepping=0x03: Patch=0x010000c8 Length=960 bytes
Family=0x10 Model=0x09 Stepping=0x01: Patch=0x010000d9 Length=960 bytes
Family=0x10 Model=0x08 Stepping=0x00: Patch=0x010000da Length=960 bytes
Family=0x10 Model=0x05 Stepping=0x02: Patch=0x010000db Length=960 bytes
Family=0x10 Model=0x0a Stepping=0x00: Patch=0x010000dc Length=960 bytes
Family=0x11 Model=0x03 Stepping=0x01: Patch=0x02000032 Length=512 bytes
Family=0x12 Model=0x01 Stepping=0x00: Patch=0x03000027 Length=960 bytes
Family=0x14 Model=0x01 Stepping=0x00: Patch=0x05000029 Length=1568 bytes
Family=0x14 Model=0x02 Stepping=0x00: Patch=0x05000119 Length=1568 bytes
Microcode patches in microcode_amd_fam15h.bin:
Family=0x15 Model=0x01 Stepping=0x02: Patch=0x0600063e Length=2592 bytes
Family=0x15 Model=0x02 Stepping=0x00: Patch=0x06000852 Length=2592 bytes
Family=0x15 Model=0x10 Stepping=0x01: Patch=0x06001119 Length=2592 bytes
Microcode patches in microcode_amd_fam16h.bin:
Family=0x16 Model=0x00 Stepping=0x01: Patch=0x0700010f Length=3458 bytes
Microcode patches in microcode_amd_fam17h.bin:
Family=0x17 Model=0x71 Stepping=0x00: Patch=0x08701034 Length=3200 bytes
Family=0x17 Model=0x01 Stepping=0x02: Patch=0x0800126f Length=3200 bytes
Family=0x17 Model=0x31 Stepping=0x00: Patch=0x0830107c Length=3200 bytes
Family=0x17 Model=0x60 Stepping=0x01: Patch=0x0860010d Length=3200 bytes
Family=0x17 Model=0x08 Stepping=0x02: Patch=0x0800820d Length=3200 bytes
Family=0x17 Model=0xa0 Stepping=0x00: Patch=0x08a0000a Length=3200 bytes
Family=0x17 Model=0x68 Stepping=0x01: Patch=0x08608108 Length=3200 bytes
Microcode patches in microcode_amd_fam19h.bin:
Family=0x19 Model=0x01 Stepping=0x00: Patch=0x0a00107a Length=5568 bytes
Family=0x19 Model=0x01 Stepping=0x01: Patch=0x0a0011d5 Length=5568 bytes
Family=0x19 Model=0x01 Stepping=0x01: Patch=0x0a0011de Length=5568 bytes
Minimum base ucode version for loading: 0x0a0011d9
Family=0x19 Model=0x01 Stepping=0x02: Patch=0x0a001238 Length=5568 bytes
Family=0x19 Model=0x01 Stepping=0x02: Patch=0x0a001247 Length=5568 bytes
Minimum base ucode version for loading: 0x0a001242
Family=0x19 Model=0x08 Stepping=0x02: Patch=0x0a00820d Length=5568 bytes
Family=0x19 Model=0x11 Stepping=0x01: Patch=0x0a101148 Length=5568 bytes
Family=0x19 Model=0x11 Stepping=0x01: Patch=0x0a101158 Length=5568 bytes
Minimum base ucode version for loading: 0x0a101153
Family=0x19 Model=0x11 Stepping=0x02: Patch=0x0a101248 Length=5568 bytes
Family=0x19 Model=0x11 Stepping=0x02: Patch=0x0a101253 Length=5568 bytes
Minimum base ucode version for loading: 0x0a10124e
Family=0x19 Model=0x18 Stepping=0x01: Patch=0x0a108109 Length=5568 bytes
Family=0x19 Model=0x21 Stepping=0x00: Patch=0x0a20102e Length=5568 bytes
Family=0x19 Model=0x21 Stepping=0x02: Patch=0x0a201211 Length=5568 bytes
Family=0x19 Model=0x44 Stepping=0x01: Patch=0x0a404108 Length=5568 bytes
Family=0x19 Model=0x50 Stepping=0x00: Patch=0x0a500012 Length=5568 bytes
Family=0x19 Model=0x61 Stepping=0x02: Patch=0x0a60120a Length=5568 bytes
Family=0x19 Model=0x74 Stepping=0x01: Patch=0x0a704108 Length=5568 bytes
Family=0x19 Model=0x75 Stepping=0x02: Patch=0x0a705208 Length=5568 bytes
Family=0x19 Model=0x78 Stepping=0x00: Patch=0x0a708008 Length=5568 bytes
Family=0x19 Model=0x7c Stepping=0x00: Patch=0x0a70c008 Length=5568 bytes
Family=0x19 Model=0xa0 Stepping=0x01: Patch=0x0aa00116 Length=5568 bytes
Family=0x19 Model=0xa0 Stepping=0x02: Patch=0x0aa00215 Length=5568 bytes
Family=0x19 Model=0xa0 Stepping=0x02: Patch=0x0aa0021c Length=5568 bytes
Minimum base ucode version for loading: 0x0aa00218
Microcode patches in microcode_amd_fam1ah.bin:
Family=0x1a Model=0x02 Stepping=0x01: Patch=0x0b002161 Length=14368 bytes
Minimum base ucode version for loading: 0x0b002140
Family=0x1a Model=0x08 Stepping=0x01: Patch=0x0b008121 Length=14368 bytes
Minimum base ucode version for loading: 0x0b008112
Family=0x1a Model=0x11 Stepping=0x00: Patch=0x0b101058 Length=14368 bytes
Minimum base ucode version for loading: 0x0b101040
Family=0x1a Model=0x24 Stepping=0x00: Patch=0x0b204037 Length=14368 bytes
Minimum base ucode version for loading: 0x0b204032
Family=0x1a Model=0x44 Stepping=0x00: Patch=0x0b404035 Length=14368 bytes
Minimum base ucode version for loading: 0x0b404032
Family=0x1a Model=0x44 Stepping=0x01: Patch=0x0b404108 Length=14368 bytes
Minimum base ucode version for loading: 0x0b404102
Family=0x1a Model=0x60 Stepping=0x00: Patch=0x0b600037 Length=14368 bytes
Minimum base ucode version for loading: 0x0b600032
Family=0x1a Model=0x68 Stepping=0x00: Patch=0x0b608038 Length=14368 bytes
Minimum base ucode version for loading: 0x0b608032
Family=0x1a Model=0x70 Stepping=0x00: Patch=0x0b700037 Length=14368 bytes
Minimum base ucode version for loading: 0x0b700032
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.
NOTE: When running 5.19+ kernels on Genoa or Bergamo systems, some microcode
patches are known to trigger warnings in the PMI handler. The following are
the required minimum patch levels to address this problem:
Family=0x19 Model=0x11 Stepping=0x01: Patch=0x0a10113e
Family=0x19 Model=0x11 Stepping=0x02: Patch=0x0a10123e
Family=0x19 Model=0xa0 Stepping=0x01: Patch=0x0aa00116
Family=0x19 Model=0xa0 Stepping=0x02: Patch=0x0aa00212
NOTE: In order to not fully abandon machines affected by AMD-SB-7033 [1] that
have not received the BIOS update, the family 19h microcode container now
includes a second patch for these machines that brings the microcode to the
highest possible level without the microcode signing fix. While a BIOS update
is highly recommended to receive the latest security updates issued after the
microcode signing vulnerability, this will allow non-updated systems to at
least receive some microcode updates beyond the version provided by BIOS.
The list of additional patches can be seen below:
Family=0x19 Model=0x01 Stepping=0x01: Patch=0x0a0011d5 Length=5568 bytes
Family=0x19 Model=0x01 Stepping=0x02: Patch=0x0a001238 Length=5568 bytes
Family=0x19 Model=0x11 Stepping=0x01: Patch=0x0a101148 Length=5568 bytes
Family=0x19 Model=0x11 Stepping=0x02: Patch=0x0a101248 Length=5568 bytes
Family=0x19 Model=0xa0 Stepping=0x02: Patch=0x0aa00215 Length=5568 bytes
[1]: https://www.amd.com/en/resources/product-security/bulletin/amd-sb-7033.html
@@ -0,0 +1,11 @@
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.11 (GNU/Linux)
iQEcBAABAgAGBQJR3dkLAAoJEKXo28mMAQi0/9cIAKraXlbchZkkIPzyMrZBZZJe
zapMterpLdDYL6zukfqgF7Frg94+ilGPK9yKAFsvC+EJyHrF5lbRQ/JthANdRv+Y
8sBKz5/knVI72WdjSjg+473I1rFdIUK+YN7Ygp6eAwP3fg/IQ9UD9iQfWKbbUnx0
WSEMCZm/izsyU2LQMJvtizJ2gz9ktFoALUtTvj0bv34CKr++qqngEVFy/WKQdR6x
R3l5MjFAhvzO0O9gV59s1tXbPU56HRhMbvSBn3NIVZu17pwAFySHwQLAeW10GH0j
UfgpKQppbz90iLLaSh8vseTOoTBn5SegDtK0JEJNMOuK1VoZ+kgv0cqGCs17HBQ=
=FnHv
-----END PGP SIGNATURE-----
@@ -0,0 +1,11 @@
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1
iQEcBAABAgAGBQJbB09SAAoJEOS+UznzKK5z8kAIAK1In82D88fGFbhluAl13UFu
rs8BhXKL2w7B2KAspBNTmYpIQnfvVDrZzn6t6nqssuJ4bnWH8sf0mC/w5dSQLG4M
WdpDd+qkdkDGJFlbl3zkr14Q7ZCQPV44pT7BOF07VPflOeQQjRWug9cdyqRIfO4n
XGR5wvBOJZ2BlriRkYagQHn6iB/UJWXodmTr8CRGIHTApQg6K0NPNvmbwa/W5Z9X
bS6eniACMfFDH7NXG2uTpFiGa3DYbDyNZiZeM7Uv3BFxtAOGY8vTFghtRyk0qxAl
o6d8fT6ozkTUxE40Lgb6MegDJPwJ+uDfB7jKVPnYsbDAp6K7L8k/7PQQQRJ69Pc=
=k2EA
-----END PGP SIGNATURE-----
@@ -0,0 +1,11 @@
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1
iQEcBAABAgAGBQJUTtyFAAoJEOS+UznzKK5z4mwIAKEoRVZfNlqlsD2SR6Sfy3Cw
8SgsmUk0Wtdt4AmIMn3O4cZ+ONN9knMrJyLcDk+dH2dGsWPutNCE73diC7jP+P2W
hPy++6o9EBgCVBGxa/9ltuIAsS6N7HXPX2StZHcSaZEy+QWFX9rLmX9YF2lHzhwr
mbgK9/LLL2mV9BzBeuLAWBpzijIIrYgBfxDQS5gLwyveJMrWFO4WqupXd6XyrFur
ixe4paWNqHf82Llz7Yy55H8TAlES4eCg/wpxKVFAMDrs25MEXLoIGlAwLoTZBRkQ
bX+HsHfN3IcOi67UxwbRzTkb+hBvT13yJN4TymKhXstx4A/a3jF2sMlUD4aRs88=
=YwHU
-----END PGP SIGNATURE-----
@@ -0,0 +1,11 @@
-----BEGIN PGP SIGNATURE-----
iQEzBAABCgAdFiEE/HxsUF2vzBRxg1fK5L5TOfMornMFAmc/W5AACgkQ5L5TOfMo
rnN+IQf/SpWITbAMKm22ZkUs6NOwgOV3bKx6D38BPQ3MRwAzfN8nTT9h33tlw0rc
XdxdzfyRh+FJcweQHVOzLMLtUH6GwTFfGphjDBEFAhNLMZoeD29Z98IDaOQfWSJ2
geGlZY7tfNZycN/NCYJqRON3MmpqAqoILp1tuck5JU+eQzcCGW5nn96LeAQc7Cin
8q4X3FvYbRIGuiChSF3R9yxPIVtY1Pps/gtg9j0Q5zXBWN3Yb3OcRPCZi4xjZmDg
FfYg79UzB2eM+HdoQ+ymqRgySLIqunBxcNP8pOkyrW0lxLEIhqj7TE++M6om/mwT
pzUx+Q7L5FS9b/n3c7Hw0esH6yztcA==
=1U/Y
-----END PGP SIGNATURE-----
@@ -0,0 +1,11 @@
-----BEGIN PGP SIGNATURE-----
iQEzBAABCgAdFiEE/HxsUF2vzBRxg1fK5L5TOfMornMFAmj4/hcACgkQ5L5TOfMo
rnN+pAgAqw2g0/vMt82S58O5q2Ec35xqEBabSaeQkI9T2tolQmlBx45ggT8eWitf
Wx4Oopq13lLvHNk7d7Isvi0nZ/+4yu7IoBNPqR1jkbgUOW1qmhkGK3PJROUphPGZ
r6GPd/sRW/ugDECO7fiheqop9OzGlOwMzovSJNUDvQL8MfRK9bKUNSPmmKYLeKzw
5cWtKKhC3AMxaCGiL4gJIXrT+SG+VxR3rMOiFLu2vYi5wJvYbutXX4GspjXPg9PV
HjE1cQt8pgGEVmGDD47yLNttAN1OVTxf4tBcJmc9svxmFrI6f3TKU99h+fzmH/Zj
1MGoWAW4FP8L4AEqjJkiUjof08hiVw==
=IB2l
-----END PGP SIGNATURE-----
@@ -0,0 +1,11 @@
-----BEGIN PGP SIGNATURE-----
iQEzBAABCgAdFiEE/HxsUF2vzBRxg1fK5L5TOfMornMFAmkvhcIACgkQ5L5TOfMo
rnMHnQf/VMb4t4zk3y/XtMaff219LqrPsthI3z821nrv7L6Hg4Hy6bQRBH+7JkzF
p/+jdZkbkp2dKN05RqRTg/vL+jXK9IbmSZoacTjkVtaEwRLyiU3IQz+gWThuBqwj
+ptsAUf+YH7YHpwJ8Xb8KfY43YVMaOnDbsFcWrnxxzdkEfOEKNOwxJMJvpZtzKW0
HoIxeHfNjIDmpFBGui0ojTxShpH1JNi/ujWHfyHqauIdO/HcHkLhtQIrBjXFDxeg
3UvS/uzwwu3/xhdzygyvBAoHOMSnrKByjfC6TeFrnPEhmfAiTV32qberDZr4LKAi
INUNC4I/DDDEG0nYqeJw1O2cdmTrdg==
=gKQm
-----END PGP SIGNATURE-----