diff options
Diffstat (limited to 'config/module/coreboot/default')
59 files changed, 2045 insertions, 336 deletions
diff --git a/config/module/coreboot/default/patches/0001-add-c3-and-clockgen-to-apple-macbook21.patch b/config/module/coreboot/default/patches/0001-add-c3-and-clockgen-to-apple-macbook21.patch index b654b32c..6e0d0d74 100644 --- a/config/module/coreboot/default/patches/0001-add-c3-and-clockgen-to-apple-macbook21.patch +++ b/config/module/coreboot/default/patches/0001-add-c3-and-clockgen-to-apple-macbook21.patch @@ -1,30 +1,17 @@ -From 03e8f5f33723fd291e30c5305fa2f5eb22bdf656 Mon Sep 17 00:00:00 2001 +From a4f3d7b48e2f0ca3635fbfe8fc791e763e0f29de Mon Sep 17 00:00:00 2001 From: Vitali64 <5405891-vitali64yt@users.noreply.gitlab.com> Date: Wed, 27 Oct 2021 13:36:01 +0200 -Subject: [PATCH 01/48] add c3 and clockgen to apple/macbook21 +Subject: [PATCH 01/56] add c3 and clockgen to apple/macbook21 --- - src/mainboard/apple/macbook21/Kconfig | 1 + - src/mainboard/apple/macbook21/cstates.c | 13 +++++++++++++ - src/mainboard/apple/macbook21/devicetree.cb | 6 ++++++ - 3 files changed, 20 insertions(+) + src/mainboard/apple/i945_macs/cstates.c | 13 +++++++++++++ + src/mainboard/apple/i945_macs/devicetree.cb | 6 ++++++ + 2 files changed, 19 insertions(+) -diff --git a/src/mainboard/apple/macbook21/Kconfig b/src/mainboard/apple/macbook21/Kconfig -index 330d8efae2..cf10343554 100644 ---- a/src/mainboard/apple/macbook21/Kconfig -+++ b/src/mainboard/apple/macbook21/Kconfig -@@ -18,6 +18,7 @@ config BOARD_SPECIFIC_OPTIONS - select HAVE_ACPI_TABLES - select HAVE_ACPI_RESUME - select I945_LVDS -+ select DRIVERS_I2C_CK505 - - config MAINBOARD_DIR - default "apple/macbook21" -diff --git a/src/mainboard/apple/macbook21/cstates.c b/src/mainboard/apple/macbook21/cstates.c +diff --git a/src/mainboard/apple/i945_macs/cstates.c b/src/mainboard/apple/i945_macs/cstates.c index 13d06f0839..88b8669c61 100644 ---- a/src/mainboard/apple/macbook21/cstates.c -+++ b/src/mainboard/apple/macbook21/cstates.c +--- a/src/mainboard/apple/i945_macs/cstates.c ++++ b/src/mainboard/apple/i945_macs/cstates.c @@ -29,6 +29,19 @@ static const acpi_cstate_t cst_entries[] = { .addrh = 0, } @@ -45,11 +32,11 @@ index 13d06f0839..88b8669c61 100644 }; int get_cst_entries(const acpi_cstate_t **entries) -diff --git a/src/mainboard/apple/macbook21/devicetree.cb b/src/mainboard/apple/macbook21/devicetree.cb -index fd86e939b9..263fbabcd1 100644 ---- a/src/mainboard/apple/macbook21/devicetree.cb -+++ b/src/mainboard/apple/macbook21/devicetree.cb -@@ -100,7 +100,13 @@ chip northbridge/intel/i945 +diff --git a/src/mainboard/apple/i945_macs/devicetree.cb b/src/mainboard/apple/i945_macs/devicetree.cb +index e479c63db1..f7b97c516c 100644 +--- a/src/mainboard/apple/i945_macs/devicetree.cb ++++ b/src/mainboard/apple/i945_macs/devicetree.cb +@@ -89,7 +89,13 @@ chip northbridge/intel/i945 end device pci 1f.3 on # SMBUS subsystemid 0x8086 0x7270 diff --git a/config/module/coreboot/default/patches/0002-lenovo-t400-Enable-all-SATA-ports.patch b/config/module/coreboot/default/patches/0002-lenovo-t400-Enable-all-SATA-ports.patch index 20fff9eb..64750430 100644 --- a/config/module/coreboot/default/patches/0002-lenovo-t400-Enable-all-SATA-ports.patch +++ b/config/module/coreboot/default/patches/0002-lenovo-t400-Enable-all-SATA-ports.patch @@ -1,7 +1,7 @@ -From da742084f51bb7e97472605d6eff0726fd7a5863 Mon Sep 17 00:00:00 2001 +From 1fa144817f28f667290747680f463f7d6d58f961 Mon Sep 17 00:00:00 2001 From: persmule <persmule@gmail.com> Date: Sun, 31 Oct 2021 23:33:26 +0000 -Subject: [PATCH 02/48] lenovo/t400: Enable all SATA ports +Subject: [PATCH 02/56] lenovo/t400: Enable all SATA ports There are 2 SATA ports on the chassis of t400(s), but at least one dock for t400 contains a port for (P/S)ATA device, and t400s has a eSATA port on its @@ -15,7 +15,7 @@ This patch unmasked all SATA ports found within t400s with factory firmware. 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/mainboard/lenovo/t400/devicetree.cb b/src/mainboard/lenovo/t400/devicetree.cb -index 9e056772e9..9361f330d2 100644 +index 467c09fb94..7100eee639 100644 --- a/src/mainboard/lenovo/t400/devicetree.cb +++ b/src/mainboard/lenovo/t400/devicetree.cb @@ -46,8 +46,8 @@ chip northbridge/intel/gm45 diff --git a/config/module/coreboot/default/patches/0003-lenovo-x230-set-me_state-Disabled-in-cmos.default.patch b/config/module/coreboot/default/patches/0003-lenovo-x230-set-me_state-Disabled-in-cmos.default.patch index 8e814be3..fc6a39aa 100644 --- a/config/module/coreboot/default/patches/0003-lenovo-x230-set-me_state-Disabled-in-cmos.default.patch +++ b/config/module/coreboot/default/patches/0003-lenovo-x230-set-me_state-Disabled-in-cmos.default.patch @@ -1,7 +1,7 @@ -From 278c2a989c025c1b3a097966968c8d253c973a3e Mon Sep 17 00:00:00 2001 +From d88b7b987c792ba0c63eae4700ebf022dd12f58c Mon Sep 17 00:00:00 2001 From: Leah Rowe <leah@libreboot.org> Date: Mon, 3 Jan 2022 19:06:22 +0000 -Subject: [PATCH 03/48] lenovo/x230: set me_state=Disabled in cmos.default +Subject: [PATCH 03/56] lenovo/x230: set me_state=Disabled in cmos.default I only recently found out about this. It's possible to use me_cleaner to do the same thing, but some people might just flash coreboot and not do @@ -23,15 +23,16 @@ Date: Thu Nov 21 21:47:31 2019 +0300 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mainboard/lenovo/x230/cmos.default b/src/mainboard/lenovo/x230/cmos.default -index 732e214b32..8454f0eac0 100644 +index 089039caf6..a7acdebdb0 100644 --- a/src/mainboard/lenovo/x230/cmos.default +++ b/src/mainboard/lenovo/x230/cmos.default -@@ -17,4 +17,4 @@ trackpoint=Enable +@@ -17,5 +17,5 @@ trackpoint=Enable backlight=Both usb_always_on=Disable f1_to_f12_as_primary=Enable -me_state=Normal +me_state=Disabled + hyper_threading=Enable -- 2.47.3 diff --git a/config/module/coreboot/default/patches/0004-set-me_state-Disabled-on-all-cmos.default-files.patch b/config/module/coreboot/default/patches/0004-set-me_state-Disabled-on-all-cmos.default-files.patch index 43830448..cc1a1d58 100644 --- a/config/module/coreboot/default/patches/0004-set-me_state-Disabled-on-all-cmos.default-files.patch +++ b/config/module/coreboot/default/patches/0004-set-me_state-Disabled-on-all-cmos.default-files.patch @@ -1,7 +1,7 @@ -From 63357b7f8c9da3a8d644542c70f50fc9bc77a8fc Mon Sep 17 00:00:00 2001 +From 14e6d93a31b2e95d867ef0e4be0313fd0e55b56b Mon Sep 17 00:00:00 2001 From: Leah Rowe <leah@libreboot.org> Date: Wed, 2 Mar 2022 21:50:01 +0000 -Subject: [PATCH 04/48] set me_state=Disabled on all cmos.default files! +Subject: [PATCH 04/56] set me_state=Disabled on all cmos.default files! yeah. why the hell isn't this the default @@ -10,95 +10,91 @@ Signed-off-by: Leah Rowe <leah@libreboot.org> src/mainboard/lenovo/l520/cmos.default | 2 +- src/mainboard/lenovo/t420/cmos.default | 2 +- src/mainboard/lenovo/t420s/cmos.default | 2 +- - src/mainboard/lenovo/t430/cmos.default | 2 +- src/mainboard/lenovo/t430s/cmos.default | 2 +- src/mainboard/lenovo/t520/cmos.default | 2 +- src/mainboard/lenovo/t530/cmos.default | 2 +- src/mainboard/lenovo/x220/cmos.default | 2 +- src/mainboard/protectli/vault_cml/cmos.default | 2 +- src/mainboard/system76/tgl-u/cmos.default | 2 +- - 10 files changed, 10 insertions(+), 10 deletions(-) + 9 files changed, 9 insertions(+), 9 deletions(-) diff --git a/src/mainboard/lenovo/l520/cmos.default b/src/mainboard/lenovo/l520/cmos.default -index be08e0a342..b8970efa46 100644 +index 0b8ffb9431..b607031071 100644 --- a/src/mainboard/lenovo/l520/cmos.default +++ b/src/mainboard/lenovo/l520/cmos.default -@@ -16,4 +16,4 @@ sticky_fn=Disable +@@ -16,5 +16,5 @@ sticky_fn=Disable trackpoint=Enable backlight=Both usb_always_on=Disable -me_state=Normal +me_state=Disabled + hyper_threading=Enable diff --git a/src/mainboard/lenovo/t420/cmos.default b/src/mainboard/lenovo/t420/cmos.default -index 6fd26c5fe3..27a62d07b3 100644 +index c52ea5e021..161a94b176 100644 --- a/src/mainboard/lenovo/t420/cmos.default +++ b/src/mainboard/lenovo/t420/cmos.default -@@ -16,4 +16,4 @@ sticky_fn=Disable +@@ -16,5 +16,5 @@ sticky_fn=Disable trackpoint=Enable hybrid_graphics_mode=Integrated Only usb_always_on=Disable -me_state=Normal +me_state=Disabled + hyper_threading=Enable diff --git a/src/mainboard/lenovo/t420s/cmos.default b/src/mainboard/lenovo/t420s/cmos.default -index 6fd26c5fe3..27a62d07b3 100644 +index c52ea5e021..161a94b176 100644 --- a/src/mainboard/lenovo/t420s/cmos.default +++ b/src/mainboard/lenovo/t420s/cmos.default -@@ -16,4 +16,4 @@ sticky_fn=Disable +@@ -16,5 +16,5 @@ sticky_fn=Disable trackpoint=Enable hybrid_graphics_mode=Integrated Only usb_always_on=Disable -me_state=Normal +me_state=Disabled -diff --git a/src/mainboard/lenovo/t430/cmos.default b/src/mainboard/lenovo/t430/cmos.default -index c896eadec1..6d1e172056 100644 ---- a/src/mainboard/lenovo/t430/cmos.default -+++ b/src/mainboard/lenovo/t430/cmos.default -@@ -17,4 +17,4 @@ trackpoint=Enable - backlight=Both - usb_always_on=Disable - hybrid_graphics_mode=Integrated Only --me_state=Normal -+me_state=Disabled + hyper_threading=Enable diff --git a/src/mainboard/lenovo/t430s/cmos.default b/src/mainboard/lenovo/t430s/cmos.default -index 286fb0ae8c..5a05c73721 100644 +index c5ee1836b1..3015f4d4fa 100644 --- a/src/mainboard/lenovo/t430s/cmos.default +++ b/src/mainboard/lenovo/t430s/cmos.default -@@ -18,4 +18,4 @@ backlight=Both +@@ -18,5 +18,5 @@ backlight=Both enable_dual_graphics=Disable usb_always_on=Disable f1_to_f12_as_primary=Enable -me_state=Normal +me_state=Disabled + hyper_threading=Enable diff --git a/src/mainboard/lenovo/t520/cmos.default b/src/mainboard/lenovo/t520/cmos.default -index 4857f92f67..ab1be1a678 100644 +index 5891af9287..d705f3e9e0 100644 --- a/src/mainboard/lenovo/t520/cmos.default +++ b/src/mainboard/lenovo/t520/cmos.default -@@ -17,4 +17,4 @@ trackpoint=Enable +@@ -17,5 +17,5 @@ trackpoint=Enable backlight=Both hybrid_graphics_mode=Integrated Only usb_always_on=Disable -me_state=Normal +me_state=Disabled + hyper_threading=Enable diff --git a/src/mainboard/lenovo/t530/cmos.default b/src/mainboard/lenovo/t530/cmos.default -index 4857f92f67..ab1be1a678 100644 +index 5891af9287..d705f3e9e0 100644 --- a/src/mainboard/lenovo/t530/cmos.default +++ b/src/mainboard/lenovo/t530/cmos.default -@@ -17,4 +17,4 @@ trackpoint=Enable +@@ -17,5 +17,5 @@ trackpoint=Enable backlight=Both hybrid_graphics_mode=Integrated Only usb_always_on=Disable -me_state=Normal +me_state=Disabled + hyper_threading=Enable diff --git a/src/mainboard/lenovo/x220/cmos.default b/src/mainboard/lenovo/x220/cmos.default -index ef706c1303..b318ab9772 100644 +index 7b717ace03..4d941f0c7e 100644 --- a/src/mainboard/lenovo/x220/cmos.default +++ b/src/mainboard/lenovo/x220/cmos.default -@@ -15,4 +15,4 @@ usb_always_on=Disable +@@ -15,5 +15,5 @@ usb_always_on=Disable fn_ctrl_swap=Disable sticky_fn=Disable trackpoint=Enable -me_state=Normal +me_state=Disabled + hyper_threading=Enable diff --git a/src/mainboard/protectli/vault_cml/cmos.default b/src/mainboard/protectli/vault_cml/cmos.default index d61046df6b..8c793fd1c3 100644 --- a/src/mainboard/protectli/vault_cml/cmos.default diff --git a/config/module/coreboot/default/patches/0005-util-ifdtool-add-nuke-flag-all-0xFF-on-region.patch b/config/module/coreboot/default/patches/0005-util-ifdtool-add-nuke-flag-all-0xFF-on-region.patch index 8490157a..e100be7b 100644 --- a/config/module/coreboot/default/patches/0005-util-ifdtool-add-nuke-flag-all-0xFF-on-region.patch +++ b/config/module/coreboot/default/patches/0005-util-ifdtool-add-nuke-flag-all-0xFF-on-region.patch @@ -1,7 +1,7 @@ -From 434136e0aca4839e449e3841a5e993688b4586f0 Mon Sep 17 00:00:00 2001 +From 990701ec0bbce4a5c01a1057b69378b47429567b Mon Sep 17 00:00:00 2001 From: Leah Rowe <info@minifree.org> Date: Sun, 19 Feb 2023 18:21:43 +0000 -Subject: [PATCH 05/48] util/ifdtool: add --nuke flag (all 0xFF on region) +Subject: [PATCH 05/56] util/ifdtool: add --nuke flag (all 0xFF on region) When this option is used, the region's contents are overwritten with all ones (0xFF). @@ -20,18 +20,18 @@ Signed-off-by: Leah Rowe <leah@libreboot.org> 1 file changed, 84 insertions(+), 32 deletions(-) diff --git a/util/ifdtool/ifdtool.c b/util/ifdtool/ifdtool.c -index 0592785bf6..cab934c3a5 100644 +index a3b66fd465..ddc7c19430 100644 --- a/util/ifdtool/ifdtool.c +++ b/util/ifdtool/ifdtool.c -@@ -2240,6 +2240,7 @@ static void print_usage(const char *name) - " tgl - Tiger Lake\n" +@@ -2263,6 +2263,7 @@ static void print_usage(const char *name) + " nvl - Nova Lake\n" " wbg - Wellsburg\n" " -S | --setpchstrap Write a PCH strap\n" + " -N | --nuke <region> Overwrite the specified region with 0xFF (all ones)\n" " -V | --newvalue The new value to write into PCH strap specified by -S\n" " -T | --topswapsize Set the Top Swap Block Size PCH strap value\n" " Possible values: 0x10000, 0x20000, 0x40000, 0x80000,\n" -@@ -2251,6 +2252,60 @@ static void print_usage(const char *name) +@@ -2274,6 +2275,60 @@ static void print_usage(const char *name) "\n"); } @@ -92,7 +92,7 @@ index 0592785bf6..cab934c3a5 100644 int main(int argc, char *argv[]) { int opt, option_index = 0; -@@ -2258,6 +2313,7 @@ int main(int argc, char *argv[]) +@@ -2281,6 +2336,7 @@ int main(int argc, char *argv[]) int mode_em100 = 0, mode_locked = 0, mode_unlocked = 0, mode_validate = 0; int mode_layout = 0, mode_newlayout = 0, mode_density = 0, mode_setstrap = 0; int mode_read = 0, mode_altmedisable = 0, altmedisable = 0, mode_fmap_template = 0; @@ -100,7 +100,7 @@ index 0592785bf6..cab934c3a5 100644 int mode_gpr0_disable = 0, mode_gpr0_enable = 0, mode_gpr0_status = 0; int mode_settopswapsize = 0; char *region_type_string = NULL, *region_fname = NULL, *layout_fname = NULL; -@@ -2294,6 +2350,7 @@ int main(int argc, char *argv[]) +@@ -2317,6 +2373,7 @@ int main(int argc, char *argv[]) {"setpchstrap", 1, NULL, 'S'}, {"newvalue", 1, NULL, 'V'}, {"topswapsize", 1, NULL, 'T'}, @@ -108,7 +108,7 @@ index 0592785bf6..cab934c3a5 100644 {0, 0, 0, 0} }; -@@ -2343,35 +2400,8 @@ int main(int argc, char *argv[]) +@@ -2366,35 +2423,8 @@ int main(int argc, char *argv[]) region_fname++; // Descriptor, BIOS, ME, GbE, Platform // valid type? @@ -146,7 +146,7 @@ index 0592785bf6..cab934c3a5 100644 fprintf(stderr, "No such region type: '%s'\n\n", region_type_string); fprintf(stderr, "run '%s -h' for usage\n", argv[0]); -@@ -2552,7 +2582,23 @@ int main(int argc, char *argv[]) +@@ -2577,7 +2607,23 @@ int main(int argc, char *argv[]) mode_settopswapsize = 1; top_swap_size_arg = optarg; break; @@ -171,7 +171,7 @@ index 0592785bf6..cab934c3a5 100644 print_version(); exit(EXIT_SUCCESS); break; -@@ -2571,7 +2617,8 @@ int main(int argc, char *argv[]) +@@ -2596,7 +2642,8 @@ int main(int argc, char *argv[]) if ((mode_dump + mode_layout + mode_fmap_template + mode_extract + mode_inject + mode_setstrap + mode_settopswapsize + mode_newlayout + (mode_spifreq | mode_em100 | mode_unlocked | mode_locked) + mode_altmedisable + mode_validate + @@ -181,7 +181,7 @@ index 0592785bf6..cab934c3a5 100644 fprintf(stderr, "You may not specify more than one mode.\n\n"); fprintf(stderr, "run '%s -h' for usage\n", argv[0]); exit(EXIT_FAILURE); -@@ -2580,7 +2627,8 @@ int main(int argc, char *argv[]) +@@ -2605,7 +2652,8 @@ int main(int argc, char *argv[]) if ((mode_dump + mode_layout + mode_fmap_template + mode_extract + mode_inject + mode_setstrap + mode_settopswapsize + mode_newlayout + mode_spifreq + mode_em100 + mode_locked + mode_unlocked + mode_density + mode_altmedisable + @@ -191,7 +191,7 @@ index 0592785bf6..cab934c3a5 100644 fprintf(stderr, "You need to specify a mode.\n\n"); fprintf(stderr, "run '%s -h' for usage\n", argv[0]); exit(EXIT_FAILURE); -@@ -2746,6 +2794,10 @@ int main(int argc, char *argv[]) +@@ -2771,6 +2819,10 @@ int main(int argc, char *argv[]) write_image(new_filename, image, size); } diff --git a/config/module/coreboot/default/patches/0006-mb-dell-e6400-Enable-01.0-device-in-devicetree-for-d.patch b/config/module/coreboot/default/patches/0006-mb-dell-e6400-Enable-01.0-device-in-devicetree-for-d.patch index 725c6380..445d33bf 100644 --- a/config/module/coreboot/default/patches/0006-mb-dell-e6400-Enable-01.0-device-in-devicetree-for-d.patch +++ b/config/module/coreboot/default/patches/0006-mb-dell-e6400-Enable-01.0-device-in-devicetree-for-d.patch @@ -1,7 +1,7 @@ -From 91e4334541da6522d5a0bf5277ac478c891e7117 Mon Sep 17 00:00:00 2001 +From fc07dc0a94ff7453508568b0f14c5b9e9edefb7e Mon Sep 17 00:00:00 2001 From: Nicholas Chin <nic.c3.14@gmail.com> Date: Sat, 6 May 2023 15:53:41 -0600 -Subject: [PATCH 06/48] mb/dell/e6400: Enable 01.0 device in devicetree for +Subject: [PATCH 06/56] mb/dell/e6400: Enable 01.0 device in devicetree for dGPU models Change-Id: I9b8e5d3cd1e1f64dc87b682b1e045b6342924aed @@ -11,7 +11,7 @@ Signed-off-by: Nicholas Chin <nic.c3.14@gmail.com> 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mainboard/dell/gm45_latitude/devicetree.cb b/src/mainboard/dell/gm45_latitude/devicetree.cb -index 5919803be2..76dae87153 100644 +index dcd208e80d..4dd5f3625b 100644 --- a/src/mainboard/dell/gm45_latitude/devicetree.cb +++ b/src/mainboard/dell/gm45_latitude/devicetree.cb @@ -18,7 +18,7 @@ chip northbridge/intel/gm45 diff --git a/config/module/coreboot/default/patches/0007-Remove-warning-for-coreboot-images-built-without-a-p.patch b/config/module/coreboot/default/patches/0007-Remove-warning-for-coreboot-images-built-without-a-p.patch index e583accc..60865641 100644 --- a/config/module/coreboot/default/patches/0007-Remove-warning-for-coreboot-images-built-without-a-p.patch +++ b/config/module/coreboot/default/patches/0007-Remove-warning-for-coreboot-images-built-without-a-p.patch @@ -1,7 +1,7 @@ -From 3ebe9e03ec563e5adb43337340fe973aa66a984a Mon Sep 17 00:00:00 2001 +From 5407081d9b539aa356ed6730ca5cfe5684af69ee Mon Sep 17 00:00:00 2001 From: Nicholas Chin <nic.c3.14@gmail.com> Date: Fri, 12 May 2023 19:55:15 -0600 -Subject: [PATCH 07/48] Remove warning for coreboot images built without a +Subject: [PATCH 07/56] Remove warning for coreboot images built without a payload I added this in upstream to prevent people from accidentally flashing diff --git a/config/module/coreboot/default/patches/0008-HACK-Disable-coreboot-related-BL31-features.patch b/config/module/coreboot/default/patches/0008-HACK-Disable-coreboot-related-BL31-features.patch index a450cb4e..0d0b3ada 100644 --- a/config/module/coreboot/default/patches/0008-HACK-Disable-coreboot-related-BL31-features.patch +++ b/config/module/coreboot/default/patches/0008-HACK-Disable-coreboot-related-BL31-features.patch @@ -1,7 +1,7 @@ -From 0e2fa472354b2e68ffbfc01d5bb225ca9d8973f0 Mon Sep 17 00:00:00 2001 +From d287eb6df021afc78476a9ccbdfcc020cc6ee115 Mon Sep 17 00:00:00 2001 From: Alper Nebi Yasak <alpernebiyasak@gmail.com> Date: Thu, 22 Jun 2023 16:44:27 +0300 -Subject: [PATCH 08/48] HACK: Disable coreboot related BL31 features +Subject: [PATCH 08/56] HACK: Disable coreboot related BL31 features I don't know why, but removing this BL31 make argument lets gru-kevin power off properly when shut down from Linux. Needs investigation. @@ -10,10 +10,10 @@ power off properly when shut down from Linux. Needs investigation. 1 file changed, 3 deletions(-) diff --git a/src/arch/arm64/Makefile.mk b/src/arch/arm64/Makefile.mk -index efd628fee7..6c4f3d702e 100644 +index 7310ce1c1f..b0a6ed1f84 100644 --- a/src/arch/arm64/Makefile.mk +++ b/src/arch/arm64/Makefile.mk -@@ -156,9 +156,6 @@ BL31_MAKEARGS += LOG_LEVEL=40 +@@ -158,9 +158,6 @@ BL31_MAKEARGS += LOG_LEVEL=40 # Always enable crash reporting, even on a release build BL31_MAKEARGS += CRASH_REPORTING=1 diff --git a/config/module/coreboot/default/patches/0009-dell-e6430-use-ME-Soft-Temporary-Disable.patch b/config/module/coreboot/default/patches/0009-dell-e6430-use-ME-Soft-Temporary-Disable.patch index d67bdf03..ce0d1a0d 100644 --- a/config/module/coreboot/default/patches/0009-dell-e6430-use-ME-Soft-Temporary-Disable.patch +++ b/config/module/coreboot/default/patches/0009-dell-e6430-use-ME-Soft-Temporary-Disable.patch @@ -1,7 +1,7 @@ -From f692cd96a4484b8e60bd112454d1bdbc3c689017 Mon Sep 17 00:00:00 2001 +From 6e81af254fa70cd11c6bffd0343da5eb855954f3 Mon Sep 17 00:00:00 2001 From: Leah Rowe <leah@libreboot.org> Date: Sun, 5 Nov 2023 11:41:41 +0000 -Subject: [PATCH 09/48] dell/e6430: use ME Soft Temporary Disable +Subject: [PATCH 09/56] dell/e6430: use ME Soft Temporary Disable i overlooked this. it's set on other boards. @@ -16,15 +16,16 @@ Signed-off-by: Leah Rowe <leah@libreboot.org> 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mainboard/dell/snb_ivb_latitude/cmos.default b/src/mainboard/dell/snb_ivb_latitude/cmos.default -index 2a5b30f2b7..279415dfd1 100644 +index c883ec40de..088da5d844 100644 --- a/src/mainboard/dell/snb_ivb_latitude/cmos.default +++ b/src/mainboard/dell/snb_ivb_latitude/cmos.default -@@ -6,4 +6,4 @@ bluetooth=Enable +@@ -6,5 +6,5 @@ bluetooth=Enable wwan=Enable wlan=Enable sata_mode=AHCI -me_state=Normal +me_state=Disabled + hyper_threading=Enable -- 2.47.3 diff --git a/config/module/coreboot/default/patches/0010-mb-hp-Add-Compaq-Elite-8300-CMT-port.patch b/config/module/coreboot/default/patches/0010-mb-hp-Add-Compaq-Elite-8300-CMT-port.patch index e01800af..2e40c41b 100644 --- a/config/module/coreboot/default/patches/0010-mb-hp-Add-Compaq-Elite-8300-CMT-port.patch +++ b/config/module/coreboot/default/patches/0010-mb-hp-Add-Compaq-Elite-8300-CMT-port.patch @@ -1,7 +1,7 @@ -From 78db6c595ff816ad4344d541688605ae720a83c4 Mon Sep 17 00:00:00 2001 +From 3fd2da0978e53ce6801cc3520788d5dcd52b6b0a Mon Sep 17 00:00:00 2001 From: Riku Viitanen <riku.viitanen@protonmail.com> Date: Sat, 23 Dec 2023 19:02:10 +0200 -Subject: [PATCH 10/48] mb/hp: Add Compaq Elite 8300 CMT port +Subject: [PATCH 10/56] mb/hp: Add Compaq Elite 8300 CMT port Based on autoport and Z220 SuperIO code. diff --git a/config/module/coreboot/default/patches/0011-nb-intel-haswell-make-IOMMU-a-runtime-option.patch b/config/module/coreboot/default/patches/0011-nb-intel-haswell-make-IOMMU-a-runtime-option.patch index 235ee880..9df1f29e 100644 --- a/config/module/coreboot/default/patches/0011-nb-intel-haswell-make-IOMMU-a-runtime-option.patch +++ b/config/module/coreboot/default/patches/0011-nb-intel-haswell-make-IOMMU-a-runtime-option.patch @@ -1,7 +1,7 @@ -From beb9b1650fb3aec96544b683fbe53ee16584f3d8 Mon Sep 17 00:00:00 2001 +From 9fb0290711e7ece4a1d12b4297c8886980c8ccdf Mon Sep 17 00:00:00 2001 From: Leah Rowe <info@minifree.org> Date: Sat, 2 Mar 2024 22:51:09 +0000 -Subject: [PATCH 11/48] nb/intel/haswell: make IOMMU a runtime option +Subject: [PATCH 11/56] nb/intel/haswell: make IOMMU a runtime option When I tested graphics cards on a coreboot port for Dell OptiPlex 9020 SFF, I could not use a graphics card unless @@ -34,8 +34,8 @@ Signed-off-by: Leah Rowe <info@minifree.org> src/mainboard/lenovo/haswell/cmos.layout | 3 +++ src/mainboard/supermicro/x10slm-f/cmos.default | 1 + src/mainboard/supermicro/x10slm-f/cmos.layout | 6 ++++++ - src/northbridge/intel/haswell/early_init.c | 5 +++++ - 14 files changed, 48 insertions(+) + src/northbridge/intel/haswell/early_init.c | 6 ++++++ + 14 files changed, 49 insertions(+) diff --git a/src/mainboard/asrock/b85m_pro4/cmos.default b/src/mainboard/asrock/b85m_pro4/cmos.default index 01bf20ad16..dfc8b80fb0 100644 @@ -202,27 +202,27 @@ index 78d44c1415..f2c602f541 100644 checksums diff --git a/src/mainboard/lenovo/haswell/cmos.default b/src/mainboard/lenovo/haswell/cmos.default -index 08db97c5a9..cc6b363cd9 100644 +index e1044343a9..13ee202983 100644 --- a/src/mainboard/lenovo/haswell/cmos.default +++ b/src/mainboard/lenovo/haswell/cmos.default -@@ -14,3 +14,4 @@ trackpoint=Enable +@@ -13,3 +13,4 @@ trackpoint=Enable backlight=Keyboard enable_dual_graphics=Disable usb_always_on=Disable +iommu=Enable diff --git a/src/mainboard/lenovo/haswell/cmos.layout b/src/mainboard/lenovo/haswell/cmos.layout -index 27915d3ab7..59df76b64c 100644 +index 5fb6972a92..a866b47f08 100644 --- a/src/mainboard/lenovo/haswell/cmos.layout +++ b/src/mainboard/lenovo/haswell/cmos.layout -@@ -23,6 +23,7 @@ entries +@@ -22,6 +22,7 @@ entries + 409 2 e 7 power_on_after_fail # coreboot config options: EC - 411 1 e 8 first_battery +413 1 e 14 iommu 415 1 e 1 wlan 416 1 e 1 trackpoint 417 1 e 1 fn_ctrl_swap -@@ -72,6 +73,8 @@ enumerations +@@ -71,6 +72,8 @@ enumerations 13 0 Disable 13 1 AC and battery 13 2 AC only @@ -265,28 +265,29 @@ index 38ba87aa45..24d39e97ee 100644 checksums diff --git a/src/northbridge/intel/haswell/early_init.c b/src/northbridge/intel/haswell/early_init.c -index e47deb5da6..1a7e0b1076 100644 +index 6a5ce53a40..5f07fa0b17 100644 --- a/src/northbridge/intel/haswell/early_init.c +++ b/src/northbridge/intel/haswell/early_init.c -@@ -5,6 +5,7 @@ - #include <device/mmio.h> +@@ -6,6 +6,7 @@ #include <device/pci_def.h> #include <device/pci_ops.h> + #include <types.h> +#include <option.h> #include "haswell.h" -@@ -157,6 +158,10 @@ static void haswell_setup_misc(void) - static void haswell_setup_iommu(void) +@@ -80,6 +81,11 @@ static void haswell_setup_misc(void) + static void northbridge_setup_iommu(void) { const u32 capid0_a = pci_read_config32(HOST_BRIDGE, CAPID0_A); + u8 enable_iommu = get_uint_option("iommu", 1); + + if (!enable_iommu) + return; - ++ if (capid0_a & VTD_DISABLE) return; + -- 2.47.3 diff --git a/config/module/coreboot/default/patches/0012-dell-optiplex_9020-Disable-IOMMU-by-default.patch b/config/module/coreboot/default/patches/0012-dell-optiplex_9020-Disable-IOMMU-by-default.patch index 3e6b8085..bae908c6 100644 --- a/config/module/coreboot/default/patches/0012-dell-optiplex_9020-Disable-IOMMU-by-default.patch +++ b/config/module/coreboot/default/patches/0012-dell-optiplex_9020-Disable-IOMMU-by-default.patch @@ -1,7 +1,7 @@ -From 0f76a919522c9624c2b5df2a9c17525ab21bd6b9 Mon Sep 17 00:00:00 2001 +From 65517ed6a68335f0a4cd20cca52f4c190c0f8d83 Mon Sep 17 00:00:00 2001 From: Leah Rowe <info@minifree.org> Date: Sat, 2 Mar 2024 23:00:09 +0000 -Subject: [PATCH 12/48] dell/optiplex_9020: Disable IOMMU by default +Subject: [PATCH 12/56] dell/optiplex_9020: Disable IOMMU by default Needed to make graphics cards work. Turning it on is recommended if only using iGPU, otherwise leave it off diff --git a/config/module/coreboot/default/patches/0013-nb-haswell-Fully-disable-iGPU-when-dGPU-is-used.patch b/config/module/coreboot/default/patches/0013-nb-haswell-Fully-disable-iGPU-when-dGPU-is-used.patch index 56b61882..d99763d0 100644 --- a/config/module/coreboot/default/patches/0013-nb-haswell-Fully-disable-iGPU-when-dGPU-is-used.patch +++ b/config/module/coreboot/default/patches/0013-nb-haswell-Fully-disable-iGPU-when-dGPU-is-used.patch @@ -1,7 +1,7 @@ -From df64f2825157226b98e002e746114e25b0047438 Mon Sep 17 00:00:00 2001 +From 688dcbc22e89ab83c7d1ea55273728e837964642 Mon Sep 17 00:00:00 2001 From: Leah Rowe <info@minifree.org> Date: Sat, 6 Apr 2024 01:22:47 +0100 -Subject: [PATCH 13/48] nb/haswell: Fully disable iGPU when dGPU is used +Subject: [PATCH 13/56] nb/haswell: Fully disable iGPU when dGPU is used My earlier patch disabled decode *and* disabled the iGPU itself, but a subsequent revision disabled only VGA decode. Upon revisiting, I @@ -33,10 +33,10 @@ Signed-off-by: Leah Rowe <info@minifree.org> 1 file changed, 3 insertions(+) diff --git a/src/northbridge/intel/haswell/gma.c b/src/northbridge/intel/haswell/gma.c -index f7fad3183d..1b188e92e1 100644 +index fc44a98a57..451147d082 100644 --- a/src/northbridge/intel/haswell/gma.c +++ b/src/northbridge/intel/haswell/gma.c -@@ -466,6 +466,9 @@ static void gma_func0_disable(struct device *dev) +@@ -655,6 +655,9 @@ static void gma_func0_disable(struct device *dev) { /* Disable VGA decode */ pci_or_config16(pcidev_on_root(0, 0), GGC, 1 << 1); diff --git a/config/module/coreboot/default/patches/0014-ec-dell-mec5035-Add-S3-suspend-SMI-handler.patch b/config/module/coreboot/default/patches/0014-ec-dell-mec5035-Add-S3-suspend-SMI-handler.patch index 722e895d..cc527b9b 100644 --- a/config/module/coreboot/default/patches/0014-ec-dell-mec5035-Add-S3-suspend-SMI-handler.patch +++ b/config/module/coreboot/default/patches/0014-ec-dell-mec5035-Add-S3-suspend-SMI-handler.patch @@ -1,7 +1,7 @@ -From fdf4774a6e80b1f94079abb346049113dfbf5241 Mon Sep 17 00:00:00 2001 +From 8112eb9d74628c12daa136f1b7d91f51eacc08a5 Mon Sep 17 00:00:00 2001 From: Nicholas Chin <nic.c3.14@gmail.com> Date: Fri, 3 May 2024 11:03:32 -0600 -Subject: [PATCH 14/48] ec/dell/mec5035: Add S3 suspend SMI handler +Subject: [PATCH 14/56] ec/dell/mec5035: Add S3 suspend SMI handler This is necessary for S3 resume to work on SNB and newer Dell Latitude laptops. If a command isn't sent, the EC cuts power to the DIMMs, diff --git a/config/module/coreboot/default/patches/0015-nb-haswell-lock-policy-regs-when-disabling-IOMMU.patch b/config/module/coreboot/default/patches/0015-nb-haswell-lock-policy-regs-when-disabling-IOMMU.patch index ac672295..a8641cce 100644 --- a/config/module/coreboot/default/patches/0015-nb-haswell-lock-policy-regs-when-disabling-IOMMU.patch +++ b/config/module/coreboot/default/patches/0015-nb-haswell-lock-policy-regs-when-disabling-IOMMU.patch @@ -1,7 +1,7 @@ -From 18216387e5c40ec3c80c63ec25e9b0c55a009cff Mon Sep 17 00:00:00 2001 +From 06a4925ea4ecb9015b1bd4007d305e26d0f61fbd Mon Sep 17 00:00:00 2001 From: Leah Rowe <info@minifree.org> Date: Sat, 4 May 2024 02:00:53 +0100 -Subject: [PATCH 15/48] nb/haswell: lock policy regs when disabling IOMMU +Subject: [PATCH 15/56] nb/haswell: lock policy regs when disabling IOMMU Angel Pons told me I should do it. See comments here: https://review.coreboot.org/c/coreboot/+/81016 @@ -22,10 +22,10 @@ Signed-off-by: Leah Rowe <info@minifree.org> 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/src/northbridge/intel/haswell/early_init.c b/src/northbridge/intel/haswell/early_init.c -index 1a7e0b1076..e9506ee830 100644 +index 5f07fa0b17..e0007f72ee 100644 --- a/src/northbridge/intel/haswell/early_init.c +++ b/src/northbridge/intel/haswell/early_init.c -@@ -160,17 +160,16 @@ static void haswell_setup_iommu(void) +@@ -83,17 +83,16 @@ static void northbridge_setup_iommu(void) const u32 capid0_a = pci_read_config32(HOST_BRIDGE, CAPID0_A); u8 enable_iommu = get_uint_option("iommu", 1); @@ -48,8 +48,8 @@ index 1a7e0b1076..e9506ee830 100644 + mchbar_write32(VTVC0BAR + 0, VTVC0_BASE_ADDRESS | 1); + } - /* Set L3HIT2PEND_DIS, lock GFXVTBAR policy config registers */ - u32 reg32; + if (cpu_is_haswell()) { + /* -- 2.47.3 diff --git a/config/module/coreboot/default/patches/0016-nb-intel-gm45-Make-DDR2-raminit-work.patch b/config/module/coreboot/default/patches/0016-nb-intel-gm45-Make-DDR2-raminit-work.patch index e7c8d0a9..f77d401b 100644 --- a/config/module/coreboot/default/patches/0016-nb-intel-gm45-Make-DDR2-raminit-work.patch +++ b/config/module/coreboot/default/patches/0016-nb-intel-gm45-Make-DDR2-raminit-work.patch @@ -1,7 +1,7 @@ -From d797b9d19c6bc3224897000756caef29e98dd266 Mon Sep 17 00:00:00 2001 +From f9153059f6f23beaefa8af7eded6ad2614da01f6 Mon Sep 17 00:00:00 2001 From: Angel Pons <th3fanbus@gmail.com> Date: Mon, 10 May 2021 22:40:59 +0200 -Subject: [PATCH 16/48] nb/intel/gm45: Make DDR2 raminit work +Subject: [PATCH 16/56] nb/intel/gm45: Make DDR2 raminit work List of changes: - Update some timing and ODT values @@ -20,7 +20,7 @@ Signed-off-by: Angel Pons <th3fanbus@gmail.com> 3 files changed, 106 insertions(+), 13 deletions(-) diff --git a/src/northbridge/intel/gm45/gm45.h b/src/northbridge/intel/gm45/gm45.h -index f68bfdee7a..b76117bc3a 100644 +index 90ab570524..d537ef82af 100644 --- a/src/northbridge/intel/gm45/gm45.h +++ b/src/northbridge/intel/gm45/gm45.h @@ -420,7 +420,7 @@ void igd_compute_ggc(sysinfo_t *const sysinfo); diff --git a/config/module/coreboot/default/patches/0017-nb-gm45-Fix-Angel-s-DDR2-RCOMP-fix-on-DDR3-boards.patch b/config/module/coreboot/default/patches/0017-nb-gm45-Fix-Angel-s-DDR2-RCOMP-fix-on-DDR3-boards.patch index 51ba3ae7..64be2c33 100644 --- a/config/module/coreboot/default/patches/0017-nb-gm45-Fix-Angel-s-DDR2-RCOMP-fix-on-DDR3-boards.patch +++ b/config/module/coreboot/default/patches/0017-nb-gm45-Fix-Angel-s-DDR2-RCOMP-fix-on-DDR3-boards.patch @@ -1,7 +1,7 @@ -From e573065ac900d4decfd4dbd0a1464d82501ac3c5 Mon Sep 17 00:00:00 2001 +From 8206e34eb1e3f4270a81d642f317471c11c5886a Mon Sep 17 00:00:00 2001 From: Leah Rowe <info@minifree.org> Date: Tue, 6 Aug 2024 00:50:24 +0100 -Subject: [PATCH 17/48] nb/gm45: Fix Angel's DDR2 RCOMP fix on DDR3 boards +Subject: [PATCH 17/56] nb/gm45: Fix Angel's DDR2 RCOMP fix on DDR3 boards We add this patch: diff --git a/config/module/coreboot/default/patches/0018-mb-dell-e6400-Use-100-MHz-reference-clock-for-displa.patch b/config/module/coreboot/default/patches/0018-mb-dell-e6400-Use-100-MHz-reference-clock-for-displa.patch index fdb225e8..991fcc79 100644 --- a/config/module/coreboot/default/patches/0018-mb-dell-e6400-Use-100-MHz-reference-clock-for-displa.patch +++ b/config/module/coreboot/default/patches/0018-mb-dell-e6400-Use-100-MHz-reference-clock-for-displa.patch @@ -1,7 +1,7 @@ -From 130a5ca25fbedb58e49b613e4a7cece715b545ae Mon Sep 17 00:00:00 2001 +From 122c32bac999cb9f1d1902f8e8505de19b9c289b Mon Sep 17 00:00:00 2001 From: Nicholas Chin <nic.c3.14@gmail.com> Date: Mon, 20 May 2024 10:24:16 -0600 -Subject: [PATCH 18/48] mb/dell/e6400: Use 100 MHz reference clock for display +Subject: [PATCH 18/56] mb/dell/e6400: Use 100 MHz reference clock for display The E6400 uses a 100 MHz reference clock for spread spectrum support on LVDS, whereas libgfxinit previously assumed a 96 MHz input clock. For diff --git a/config/module/coreboot/default/patches/0019-nb-x4x-define-INTEL_GMA_DPLL_REF_FREQ.patch b/config/module/coreboot/default/patches/0019-nb-x4x-define-INTEL_GMA_DPLL_REF_FREQ.patch index b7af55b4..a461d2a1 100644 --- a/config/module/coreboot/default/patches/0019-nb-x4x-define-INTEL_GMA_DPLL_REF_FREQ.patch +++ b/config/module/coreboot/default/patches/0019-nb-x4x-define-INTEL_GMA_DPLL_REF_FREQ.patch @@ -1,7 +1,7 @@ -From 7641a4b9b91c385223026cd566e0ffc2a2aa0d8f Mon Sep 17 00:00:00 2001 +From 527149c7ae247791e8e50c8e09d39f136a2510ec Mon Sep 17 00:00:00 2001 From: Leah Rowe <info@minifree.org> Date: Mon, 12 Aug 2024 02:15:24 +0100 -Subject: [PATCH 19/48] nb/x4x: define INTEL_GMA_DPLL_REF_FREQ +Subject: [PATCH 19/56] nb/x4x: define INTEL_GMA_DPLL_REF_FREQ set it to 96MHz. fixes the following build error when building for x4x boards e.g. gigabyte ga-g41m-es2l: diff --git a/config/module/coreboot/default/patches/0020-mb-dell-gm45_latitudes-Add-E4300-variant.patch b/config/module/coreboot/default/patches/0020-mb-dell-gm45_latitudes-Add-E4300-variant.patch index c9603f71..afb0d37c 100644 --- a/config/module/coreboot/default/patches/0020-mb-dell-gm45_latitudes-Add-E4300-variant.patch +++ b/config/module/coreboot/default/patches/0020-mb-dell-gm45_latitudes-Add-E4300-variant.patch @@ -1,7 +1,7 @@ -From 36126c093a9b9e01d41f0a68977cd09070c3c276 Mon Sep 17 00:00:00 2001 +From b6f82ec86cd3cc34264f999d6a9a5c30a72cea60 Mon Sep 17 00:00:00 2001 From: Nicholas Chin <nic.c3.14@gmail.com> Date: Thu, 26 Sep 2024 19:51:25 -0600 -Subject: [PATCH 20/48] mb/dell/gm45_latitudes: Add E4300 variant +Subject: [PATCH 20/56] mb/dell/gm45_latitudes: Add E4300 variant Change-Id: I0f2059501b11be103187e3ce1a7c04ab85ae63d2 Signed-off-by: Nicholas Chin <nic.c3.14@gmail.com> diff --git a/config/module/coreboot/default/patches/0021-mb-dell-Add-S3-SMI-handler-for-Dell-Latitudes.patch b/config/module/coreboot/default/patches/0021-mb-dell-Add-S3-SMI-handler-for-Dell-Latitudes.patch index 238e4799..ddcfc998 100644 --- a/config/module/coreboot/default/patches/0021-mb-dell-Add-S3-SMI-handler-for-Dell-Latitudes.patch +++ b/config/module/coreboot/default/patches/0021-mb-dell-Add-S3-SMI-handler-for-Dell-Latitudes.patch @@ -1,7 +1,7 @@ -From 4caca6e6e349fa1913df622081025ea53bfd136f Mon Sep 17 00:00:00 2001 +From 95028f8238873d05e5e3feb35e4faf5873e15c84 Mon Sep 17 00:00:00 2001 From: Nicholas Chin <nic.c3.14@gmail.com> Date: Fri, 3 May 2024 16:31:12 -0600 -Subject: [PATCH 21/48] mb/dell: Add S3 SMI handler for Dell Latitudes +Subject: [PATCH 21/56] mb/dell: Add S3 SMI handler for Dell Latitudes Integrate the previously added mec5035_smi_sleep() function into mainboard code to fix S3 suspend on the SNB/IVB Latitudes and the E7240. diff --git a/config/module/coreboot/default/patches/0022-Disable-compression-on-refcode-insertion.patch b/config/module/coreboot/default/patches/0022-Disable-compression-on-refcode-insertion.patch index deaefbfd..4f823461 100644 --- a/config/module/coreboot/default/patches/0022-Disable-compression-on-refcode-insertion.patch +++ b/config/module/coreboot/default/patches/0022-Disable-compression-on-refcode-insertion.patch @@ -1,7 +1,7 @@ -From 669ef0d2c72326134f64a4fe70f67220ec690c5e Mon Sep 17 00:00:00 2001 +From f8473af3c923cd7cdc0f1d5d359dc0d52882e990 Mon Sep 17 00:00:00 2001 From: Leah Rowe <info@minifree.org> Date: Tue, 31 Dec 2024 14:42:24 +0000 -Subject: [PATCH 22/48] Disable compression on refcode insertion +Subject: [PATCH 22/56] Disable compression on refcode insertion Compression is not reliably reproducible. In an lbmk release context, this means we cannot rely on vendorfile insertion. @@ -14,10 +14,10 @@ Signed-off-by: Leah Rowe <info@minifree.org> 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Makefile.mk b/Makefile.mk -index 5fccb4a52d..c40e06c453 100644 +index 7a208d041d..688ba99c14 100644 --- a/Makefile.mk +++ b/Makefile.mk -@@ -1414,7 +1414,7 @@ endif +@@ -1457,7 +1457,7 @@ endif cbfs-files-$(CONFIG_HAVE_REFCODE_BLOB) += $(CONFIG_CBFS_PREFIX)/refcode $(CONFIG_CBFS_PREFIX)/refcode-file := $(REFCODE_BLOB) $(CONFIG_CBFS_PREFIX)/refcode-type := stage diff --git a/config/module/coreboot/default/patches/0023-nb-intel-Disable-stack-overflow-debug-options.patch b/config/module/coreboot/default/patches/0023-nb-intel-Disable-stack-overflow-debug-options.patch index 3bb55c37..119a4d08 100644 --- a/config/module/coreboot/default/patches/0023-nb-intel-Disable-stack-overflow-debug-options.patch +++ b/config/module/coreboot/default/patches/0023-nb-intel-Disable-stack-overflow-debug-options.patch @@ -1,7 +1,7 @@ -From c7b136f1f4fa2bc1a783711b5a1ee82c5d9ce69f Mon Sep 17 00:00:00 2001 +From 90eb04245922aaf89f2fb8ddf579124a7978282a Mon Sep 17 00:00:00 2001 From: Leah Rowe <leah@libreboot.org> Date: Mon, 21 Apr 2025 02:58:47 +0100 -Subject: [PATCH 23/48] nb/intel/*: Disable stack overflow debug options +Subject: [PATCH 23/56] nb/intel/*: Disable stack overflow debug options Signed-off-by: Leah Rowe <leah@libreboot.org> --- @@ -52,10 +52,10 @@ index 35e89b0c88..c5456d0ddf 100644 + endif diff --git a/src/northbridge/intel/haswell/Kconfig b/src/northbridge/intel/haswell/Kconfig -index c57f1ec380..0a5181b183 100644 +index 6015c31702..d2ade2912f 100644 --- a/src/northbridge/intel/haswell/Kconfig +++ b/src/northbridge/intel/haswell/Kconfig -@@ -10,6 +10,15 @@ config NORTHBRIDGE_INTEL_HASWELL +@@ -9,6 +9,15 @@ config NORTHBRIDGE_INTEL_HASWELL if NORTHBRIDGE_INTEL_HASWELL @@ -93,10 +93,10 @@ index dbb2d7436b..5e9418b6a9 100644 + +endif diff --git a/src/northbridge/intel/i945/Kconfig b/src/northbridge/intel/i945/Kconfig -index c4e17f90bf..b12f5be091 100644 +index 5668fed4a8..a259d8e26b 100644 --- a/src/northbridge/intel/i945/Kconfig +++ b/src/northbridge/intel/i945/Kconfig -@@ -89,4 +89,13 @@ config FIXED_DMIBAR_MMIO_BASE +@@ -80,4 +80,13 @@ config FIXED_DMIBAR_MMIO_BASE config FIXED_EPBAR_MMIO_BASE default 0xfed19000 @@ -129,7 +129,7 @@ index 39566a6e5f..f46acf6937 100644 + endif diff --git a/src/northbridge/intel/pineview/Kconfig b/src/northbridge/intel/pineview/Kconfig -index a05b866dad..50e3a7cdb9 100644 +index 341f29534d..0f825781f9 100644 --- a/src/northbridge/intel/pineview/Kconfig +++ b/src/northbridge/intel/pineview/Kconfig @@ -42,4 +42,13 @@ config FIXED_EPBAR_MMIO_BASE diff --git a/config/module/coreboot/default/patches/0024-mb-dell-Add-Optiplex-780-MT-x4x-ICH10.patch b/config/module/coreboot/default/patches/0024-mb-dell-Add-Optiplex-780-MT-x4x-ICH10.patch index 22061393..60309c79 100644 --- a/config/module/coreboot/default/patches/0024-mb-dell-Add-Optiplex-780-MT-x4x-ICH10.patch +++ b/config/module/coreboot/default/patches/0024-mb-dell-Add-Optiplex-780-MT-x4x-ICH10.patch @@ -1,7 +1,7 @@ -From c15a0ef9b964e9df9a5578ed271af4f1c0419f38 Mon Sep 17 00:00:00 2001 +From 07fd30a72490b28a591714ffa092ef763e813b7c Mon Sep 17 00:00:00 2001 From: Nicholas Chin <nic.c3.14@gmail.com> Date: Mon, 30 Sep 2024 20:44:38 -0400 -Subject: [PATCH 24/48] mb/dell: Add Optiplex 780 MT (x4x/ICH10) +Subject: [PATCH 24/56] mb/dell: Add Optiplex 780 MT (x4x/ICH10) Change-Id: Idb45737ce95bfd26e978323c650de7d308b5079c Signed-off-by: Nicholas Chin <nic.c3.14@gmail.com> diff --git a/config/module/coreboot/default/patches/0025-mb-dell-optiplex_780-Add-USFF-variant.patch b/config/module/coreboot/default/patches/0025-mb-dell-optiplex_780-Add-USFF-variant.patch index c126ee58..68d01ee0 100644 --- a/config/module/coreboot/default/patches/0025-mb-dell-optiplex_780-Add-USFF-variant.patch +++ b/config/module/coreboot/default/patches/0025-mb-dell-optiplex_780-Add-USFF-variant.patch @@ -1,7 +1,7 @@ -From bfd5f6628a69d8704a84b30c4027149fe1b21efa Mon Sep 17 00:00:00 2001 +From bbab84fdcd02f2dac8b9c8a731f8ae9615074b0f Mon Sep 17 00:00:00 2001 From: Nicholas Chin <nic.c3.14@gmail.com> Date: Wed, 30 Oct 2024 20:55:25 -0600 -Subject: [PATCH 25/48] mb/dell/optiplex_780: Add USFF variant +Subject: [PATCH 25/56] mb/dell/optiplex_780: Add USFF variant Change-Id: I3aa21c743749f4a11a2501f4c121316bd2f1a103 Signed-off-by: Nicholas Chin <nic.c3.14@gmail.com> diff --git a/config/module/coreboot/default/patches/0026-src-intel-x4x-Disable-stack-overflow-debug.patch b/config/module/coreboot/default/patches/0026-src-intel-x4x-Disable-stack-overflow-debug.patch index 4c693f65..bd4c0937 100644 --- a/config/module/coreboot/default/patches/0026-src-intel-x4x-Disable-stack-overflow-debug.patch +++ b/config/module/coreboot/default/patches/0026-src-intel-x4x-Disable-stack-overflow-debug.patch @@ -1,7 +1,7 @@ -From 82f47133c20abc720f5d5fa8a54be465ebd95f28 Mon Sep 17 00:00:00 2001 +From e539f904da3abb66255a112e9441c5f6611b26e8 Mon Sep 17 00:00:00 2001 From: Leah Rowe <leah@libreboot.org> Date: Mon, 6 Jan 2025 01:53:53 +0000 -Subject: [PATCH 26/48] src/intel/x4x: Disable stack overflow debug +Subject: [PATCH 26/56] src/intel/x4x: Disable stack overflow debug Signed-off-by: Leah Rowe <leah@libreboot.org> --- diff --git a/config/module/coreboot/default/patches/0027-hp-8300cmt-remove-xhci_overcurrent_mapping.patch b/config/module/coreboot/default/patches/0027-hp-8300cmt-remove-xhci_overcurrent_mapping.patch index da5ae94d..bd6f3a64 100644 --- a/config/module/coreboot/default/patches/0027-hp-8300cmt-remove-xhci_overcurrent_mapping.patch +++ b/config/module/coreboot/default/patches/0027-hp-8300cmt-remove-xhci_overcurrent_mapping.patch @@ -1,7 +1,7 @@ -From 5c4439fb513c315ef3effff19146b331c492fa9b Mon Sep 17 00:00:00 2001 +From 4007d60d44e646bd5081827b4679c0ddf4bb99ca Mon Sep 17 00:00:00 2001 From: Leah Rowe <leah@libreboot.org> Date: Tue, 22 Apr 2025 10:21:59 +0100 -Subject: [PATCH 27/48] hp/8300cmt: remove xhci_overcurrent_mapping +Subject: [PATCH 27/56] hp/8300cmt: remove xhci_overcurrent_mapping No longer needed, as per the following commit: diff --git a/config/module/coreboot/default/patches/0028-dell-3050micro-disable-nvme-hotplug.patch b/config/module/coreboot/default/patches/0028-dell-3050micro-disable-nvme-hotplug.patch index 52b49b36..9b8b3822 100644 --- a/config/module/coreboot/default/patches/0028-dell-3050micro-disable-nvme-hotplug.patch +++ b/config/module/coreboot/default/patches/0028-dell-3050micro-disable-nvme-hotplug.patch @@ -1,7 +1,7 @@ -From 71ec1f7a6480e72b77a567f8cc0c2673a5e7905f Mon Sep 17 00:00:00 2001 +From 3ef3cc9f7089e85571480a6b7b171a7fa66cb33e Mon Sep 17 00:00:00 2001 From: Leah Rowe <info@minifree.org> Date: Wed, 11 Dec 2024 01:06:01 +0000 -Subject: [PATCH 28/48] dell/3050micro: disable nvme hotplug +Subject: [PATCH 28/56] dell/3050micro: disable nvme hotplug in my testing, when running my 3050micro for a few days, the nvme would sometimes randomly rename. diff --git a/config/module/coreboot/default/patches/0029-src-intel-skylake-Disable-stack-overflow-debug-optio.patch b/config/module/coreboot/default/patches/0029-src-intel-skylake-Disable-stack-overflow-debug-optio.patch index 78ccf785..15c866d1 100644 --- a/config/module/coreboot/default/patches/0029-src-intel-skylake-Disable-stack-overflow-debug-optio.patch +++ b/config/module/coreboot/default/patches/0029-src-intel-skylake-Disable-stack-overflow-debug-optio.patch @@ -1,7 +1,7 @@ -From 95a0af0eea56e1bddcb243ed135835448b90fa56 Mon Sep 17 00:00:00 2001 +From 007a83486f5cd2528067f18059fcd81e5f5230fa Mon Sep 17 00:00:00 2001 From: Leah Rowe <leah@libreboot.org> Date: Mon, 6 Jan 2025 01:36:23 +0000 -Subject: [PATCH 29/48] src/intel/skylake: Disable stack overflow debug options +Subject: [PATCH 29/56] src/intel/skylake: Disable stack overflow debug options The option was appearing in T480/3050micro configs of lbmk, after updating on the coreboot/next uprev for 20241206 rev8: @@ -37,10 +37,10 @@ Signed-off-by: Leah Rowe <leah@libreboot.org> 1 file changed, 9 insertions(+) diff --git a/src/soc/intel/skylake/Kconfig b/src/soc/intel/skylake/Kconfig -index 7c530f2c75..70c2a7643c 100644 +index beb6f13fee..420dbf44f8 100644 --- a/src/soc/intel/skylake/Kconfig +++ b/src/soc/intel/skylake/Kconfig -@@ -131,6 +131,15 @@ config DCACHE_RAM_SIZE +@@ -137,6 +137,15 @@ config DCACHE_RAM_SIZE The size of the cache-as-ram region required during bootblock and/or romstage. diff --git a/config/module/coreboot/default/patches/0030-soc-intel-skylake-Don-t-compress-FSP-S.patch b/config/module/coreboot/default/patches/0030-soc-intel-skylake-Don-t-compress-FSP-S.patch index e5f4987b..8e44d8ba 100644 --- a/config/module/coreboot/default/patches/0030-soc-intel-skylake-Don-t-compress-FSP-S.patch +++ b/config/module/coreboot/default/patches/0030-soc-intel-skylake-Don-t-compress-FSP-S.patch @@ -1,7 +1,7 @@ -From 7d94457ba0e2be10d781c5fd0659d895c9b558b1 Mon Sep 17 00:00:00 2001 +From 0fb7c56281be432743531c033d1bae046f2004ef Mon Sep 17 00:00:00 2001 From: Leah Rowe <info@minifree.org> Date: Thu, 26 Dec 2024 19:45:20 +0000 -Subject: [PATCH 30/48] soc/intel/skylake: Don't compress FSP-S +Subject: [PATCH 30/56] soc/intel/skylake: Don't compress FSP-S Build systems like lbmk need to reproducibly insert certain vendor files on release images. @@ -19,10 +19,10 @@ Signed-off-by: Leah Rowe <info@minifree.org> 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/soc/intel/skylake/Kconfig b/src/soc/intel/skylake/Kconfig -index 70c2a7643c..a2854923e7 100644 +index 420dbf44f8..f0b8f92c07 100644 --- a/src/soc/intel/skylake/Kconfig +++ b/src/soc/intel/skylake/Kconfig -@@ -14,7 +14,7 @@ config SOC_INTEL_COMMON_SKYLAKE_BASE +@@ -15,7 +15,7 @@ config SOC_INTEL_COMMON_SKYLAKE_BASE select DRAM_SUPPORT_DDR4 select DRIVERS_USB_ACPI select EDK2_CPU_TIMER_LIB if PAYLOAD_EDK2 diff --git a/config/module/coreboot/default/patches/0031-lenovo-Add-Kconfig-option-CONFIG_LENOVO_TBFW_BIN.patch b/config/module/coreboot/default/patches/0031-lenovo-Add-Kconfig-option-CONFIG_LENOVO_TBFW_BIN.patch index d1d47338..50a8bbee 100644 --- a/config/module/coreboot/default/patches/0031-lenovo-Add-Kconfig-option-CONFIG_LENOVO_TBFW_BIN.patch +++ b/config/module/coreboot/default/patches/0031-lenovo-Add-Kconfig-option-CONFIG_LENOVO_TBFW_BIN.patch @@ -1,7 +1,7 @@ -From 8768e53f3b2ceb00ec0c8abf0fc0af03993820b1 Mon Sep 17 00:00:00 2001 +From de812fb7f9d1a898c5a00ff61dcdf5fbbfee899d Mon Sep 17 00:00:00 2001 From: Leah Rowe <info@minifree.org> Date: Wed, 18 Dec 2024 02:06:18 +0000 -Subject: [PATCH 31/48] lenovo: Add Kconfig option CONFIG_LENOVO_TBFW_BIN +Subject: [PATCH 31/56] lenovo: Add Kconfig option CONFIG_LENOVO_TBFW_BIN This is used by lbmk to know where a tb.bin file goes, when extracting and padding TBT.bin from Lenovo ThunderBolt diff --git a/config/module/coreboot/default/patches/0032-Conditional-TBFW-setting-for-kabylake-thinkpads.patch b/config/module/coreboot/default/patches/0032-Conditional-TBFW-setting-for-kabylake-thinkpads.patch index 6ed150e7..1c5258e0 100644 --- a/config/module/coreboot/default/patches/0032-Conditional-TBFW-setting-for-kabylake-thinkpads.patch +++ b/config/module/coreboot/default/patches/0032-Conditional-TBFW-setting-for-kabylake-thinkpads.patch @@ -1,7 +1,7 @@ -From 579c60fd77517497eb18dfeca8d73cdca94c15da Mon Sep 17 00:00:00 2001 +From c3d8d9b0433c6591b25d31e65e3b60f3d5645fc4 Mon Sep 17 00:00:00 2001 From: Leah Rowe <leah@libreboot.org> Date: Mon, 21 Apr 2025 05:14:45 +0100 -Subject: [PATCH 32/48] Conditional TBFW setting for kabylake thinkpads +Subject: [PATCH 32/56] Conditional TBFW setting for kabylake thinkpads Otherwise, other boards will define it, which might trigger the vendor download script, and diff --git a/config/module/coreboot/default/patches/0033-soc-intel-alderlake-Disable-MRC_CACHE_USING_MRC_VERS.patch b/config/module/coreboot/default/patches/0033-soc-intel-alderlake-Disable-MRC_CACHE_USING_MRC_VERS.patch index 64f257e4..81e68d87 100644 --- a/config/module/coreboot/default/patches/0033-soc-intel-alderlake-Disable-MRC_CACHE_USING_MRC_VERS.patch +++ b/config/module/coreboot/default/patches/0033-soc-intel-alderlake-Disable-MRC_CACHE_USING_MRC_VERS.patch @@ -1,7 +1,7 @@ -From 23d8a97ff213f744b4e6333d92fc90e9ea97e879 Mon Sep 17 00:00:00 2001 +From aa4d0e3c165d215788f576e99493b1cb5568be9d Mon Sep 17 00:00:00 2001 From: Riku Viitanen <riku.viitanen@protonmail.com> Date: Sat, 27 Sep 2025 23:30:46 +0300 -Subject: [PATCH 33/48] soc/intel/alderlake: Disable +Subject: [PATCH 33/56] soc/intel/alderlake: Disable MRC_CACHE_USING_MRC_VERSION There's some issue with building against the FSP headers in src/vendorcode. @@ -14,7 +14,7 @@ Signed-off-by: Riku Viitanen <riku.viitanen@protonmail.com> 1 file changed, 1 deletion(-) diff --git a/src/soc/intel/alderlake/Kconfig b/src/soc/intel/alderlake/Kconfig -index 34c9baf544..e0ab6b10fd 100644 +index 57d3f34c04..f378b0d410 100644 --- a/src/soc/intel/alderlake/Kconfig +++ b/src/soc/intel/alderlake/Kconfig @@ -36,7 +36,6 @@ config SOC_INTEL_ALDERLAKE diff --git a/config/module/coreboot/default/patches/0034-Subject-PATCH-1-1-Add-a-p-option-skip-FPTR-checks.patch b/config/module/coreboot/default/patches/0034-Subject-PATCH-1-1-Add-a-p-option-skip-FPTR-checks.patch index bb6e39c0..d446d839 100644 --- a/config/module/coreboot/default/patches/0034-Subject-PATCH-1-1-Add-a-p-option-skip-FPTR-checks.patch +++ b/config/module/coreboot/default/patches/0034-Subject-PATCH-1-1-Add-a-p-option-skip-FPTR-checks.patch @@ -1,7 +1,7 @@ -From e2e070ab1f080c0ae59c43131faa57f3499fd813 Mon Sep 17 00:00:00 2001 +From 7471f231a160ed66ed003ea5b79ffd7ae65c23a8 Mon Sep 17 00:00:00 2001 From: Leah Rowe <leah@libreboot.org> Date: Sun, 28 Sep 2025 03:17:50 +0100 -Subject: [PATCH 34/48] Subject: [PATCH 1/1] Add a -p option (skip FPTR checks) +Subject: [PATCH 34/56] Subject: [PATCH 1/1] Add a -p option (skip FPTR checks) if you pass -k (keep fptr modules), don't use -r, don't use -t, you can essentially just use me_cleaner to diff --git a/config/module/coreboot/default/patches/0035-soc-intel-alderlake-Don-t-compress-FSP-S.patch b/config/module/coreboot/default/patches/0035-soc-intel-alderlake-Don-t-compress-FSP-S.patch index 2292605e..47be833a 100644 --- a/config/module/coreboot/default/patches/0035-soc-intel-alderlake-Don-t-compress-FSP-S.patch +++ b/config/module/coreboot/default/patches/0035-soc-intel-alderlake-Don-t-compress-FSP-S.patch @@ -1,7 +1,7 @@ -From fee89a6c872ec26c2ea128ecdce62d6c3abe53f1 Mon Sep 17 00:00:00 2001 +From 6f27a15dee6750784fce8b3a834ca4cf817c8b75 Mon Sep 17 00:00:00 2001 From: Leah Rowe <leah@libreboot.org> Date: Sat, 4 Oct 2025 21:57:43 +0100 -Subject: [PATCH 35/48] soc/intel/alderlake: Don't compress FSP-S +Subject: [PATCH 35/56] soc/intel/alderlake: Don't compress FSP-S Build systems like lbmk need to reproducibly insert certain vendor files on release images. @@ -18,7 +18,7 @@ Signed-off-by: Leah Rowe <leah@libreboot.org> 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/soc/intel/alderlake/Kconfig b/src/soc/intel/alderlake/Kconfig -index e0ab6b10fd..a2e7cff6f6 100644 +index f378b0d410..550da178d7 100644 --- a/src/soc/intel/alderlake/Kconfig +++ b/src/soc/intel/alderlake/Kconfig @@ -16,7 +16,7 @@ config SOC_INTEL_ALDERLAKE diff --git a/config/module/coreboot/default/patches/0036-alderlake-don-t-require-full-fsp-repo-for-fd-path.patch b/config/module/coreboot/default/patches/0036-alderlake-don-t-require-full-fsp-repo-for-fd-path.patch index a4f9068d..83df3a7e 100644 --- a/config/module/coreboot/default/patches/0036-alderlake-don-t-require-full-fsp-repo-for-fd-path.patch +++ b/config/module/coreboot/default/patches/0036-alderlake-don-t-require-full-fsp-repo-for-fd-path.patch @@ -1,7 +1,7 @@ -From abd26006eff71c9570bc90fdbce3a76f8f559cea Mon Sep 17 00:00:00 2001 +From 10c8f14db5e2cdef10131cc4a73fdb9e2b02bc03 Mon Sep 17 00:00:00 2001 From: Leah Rowe <leah@libreboot.org> Date: Sat, 4 Oct 2025 22:20:11 +0100 -Subject: [PATCH 36/48] alderlake: don't require full fsp repo for fd path +Subject: [PATCH 36/56] alderlake: don't require full fsp repo for fd path Signed-off-by: Leah Rowe <leah@libreboot.org> --- @@ -9,10 +9,10 @@ Signed-off-by: Leah Rowe <leah@libreboot.org> 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/soc/intel/alderlake/Kconfig b/src/soc/intel/alderlake/Kconfig -index a2e7cff6f6..3402c1e3d5 100644 +index 550da178d7..2535454862 100644 --- a/src/soc/intel/alderlake/Kconfig +++ b/src/soc/intel/alderlake/Kconfig -@@ -430,7 +430,14 @@ config FSP_HEADER_PATH +@@ -435,7 +435,14 @@ config FSP_HEADER_PATH config FSP_FD_PATH string diff --git a/config/module/coreboot/default/patches/0037-soc-alderlake-disable-stack-overflow-debug-option.patch b/config/module/coreboot/default/patches/0037-soc-alderlake-disable-stack-overflow-debug-option.patch index d740f7a7..a9eb4153 100644 --- a/config/module/coreboot/default/patches/0037-soc-alderlake-disable-stack-overflow-debug-option.patch +++ b/config/module/coreboot/default/patches/0037-soc-alderlake-disable-stack-overflow-debug-option.patch @@ -1,7 +1,7 @@ -From 6a4a79d82df982c2fca859101040e407623f519c Mon Sep 17 00:00:00 2001 +From d595fa2a97396aee6ab2514db74027a597328639 Mon Sep 17 00:00:00 2001 From: Leah Rowe <leah@libreboot.org> Date: Mon, 6 Oct 2025 04:47:06 +0100 -Subject: [PATCH 37/48] soc/alderlake: disable stack overflow debug option +Subject: [PATCH 37/56] soc/alderlake: disable stack overflow debug option same as on other boards. based on this commit: @@ -22,10 +22,10 @@ Signed-off-by: Leah Rowe <leah@libreboot.org> 1 file changed, 9 insertions(+) diff --git a/src/soc/intel/alderlake/Kconfig b/src/soc/intel/alderlake/Kconfig -index 3402c1e3d5..06b9199e84 100644 +index 2535454862..6236def814 100644 --- a/src/soc/intel/alderlake/Kconfig +++ b/src/soc/intel/alderlake/Kconfig -@@ -331,6 +331,15 @@ config SOC_INTEL_UFS_CLK_FREQ_HZ +@@ -336,6 +336,15 @@ config SOC_INTEL_UFS_CLK_FREQ_HZ int default 19200000 diff --git a/config/module/coreboot/default/patches/0038-ec-dell-mec5035-Add-command-to-disable-EC-initiated-.patch b/config/module/coreboot/default/patches/0038-ec-dell-mec5035-Add-command-to-disable-EC-initiated-.patch index dd5412a2..c619424c 100644 --- a/config/module/coreboot/default/patches/0038-ec-dell-mec5035-Add-command-to-disable-EC-initiated-.patch +++ b/config/module/coreboot/default/patches/0038-ec-dell-mec5035-Add-command-to-disable-EC-initiated-.patch @@ -1,7 +1,7 @@ -From bb286d13cb7702e9396deab04023cc58dcc01a15 Mon Sep 17 00:00:00 2001 +From 7c62f4dd41cf159c3021e93eb4b650c34083e06c Mon Sep 17 00:00:00 2001 From: Nicholas Chin <nic.c3.14@gmail.com> Date: Sun, 11 May 2025 15:41:22 -0600 -Subject: [PATCH 38/48] ec/dell/mec5035: Add command to disable EC-initiated +Subject: [PATCH 38/56] ec/dell/mec5035: Add command to disable EC-initiated thermal shutdown If command 0xBF isn't sent, the EC shuts down the system without warning diff --git a/config/module/coreboot/default/patches/0039-mb-dell-snb_ivb_latitude-Disable-EC-initiated-shutdo.patch b/config/module/coreboot/default/patches/0039-mb-dell-snb_ivb_latitude-Disable-EC-initiated-shutdo.patch index 1814806f..c4701463 100644 --- a/config/module/coreboot/default/patches/0039-mb-dell-snb_ivb_latitude-Disable-EC-initiated-shutdo.patch +++ b/config/module/coreboot/default/patches/0039-mb-dell-snb_ivb_latitude-Disable-EC-initiated-shutdo.patch @@ -1,7 +1,7 @@ -From a93c01173c2f88b4a09286740c030314040c39fc Mon Sep 17 00:00:00 2001 +From df24178999fbc926bb6dfd98c5972a2cad620ab7 Mon Sep 17 00:00:00 2001 From: Nicholas Chin <nic.c3.14@gmail.com> Date: Sun, 11 May 2025 16:28:23 -0600 -Subject: [PATCH 39/48] mb/dell/snb_ivb_latitude: Disable EC initiated shutdown +Subject: [PATCH 39/56] mb/dell/snb_ivb_latitude: Disable EC initiated shutdown at 87 degrees If command 0xBF isn't sent, the EC will shut down the system without diff --git a/config/module/coreboot/default/patches/0040-fix-ifdtool-build.patch b/config/module/coreboot/default/patches/0040-fix-ifdtool-build.patch index b39fbc0b..2312dadf 100644 --- a/config/module/coreboot/default/patches/0040-fix-ifdtool-build.patch +++ b/config/module/coreboot/default/patches/0040-fix-ifdtool-build.patch @@ -1,7 +1,7 @@ -From dc4036353483c5fc0c140fc269d9bddb0bb7a967 Mon Sep 17 00:00:00 2001 +From 13a26f612918aa680ed4a397efc1467e837864b6 Mon Sep 17 00:00:00 2001 From: Leah Rowe <leah@libreboot.org> Date: Sat, 20 Dec 2025 20:12:48 +0100 -Subject: [PATCH 40/48] fix ifdtool build +Subject: [PATCH 40/56] fix ifdtool build not my mistake. someone messed up. @@ -11,10 +11,10 @@ Signed-off-by: Leah Rowe <leah@libreboot.org> 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/util/ifdtool/ifdtool.c b/util/ifdtool/ifdtool.c -index cab934c3a5..d181888e0f 100644 +index ddc7c19430..9aacccb540 100644 --- a/util/ifdtool/ifdtool.c +++ b/util/ifdtool/ifdtool.c -@@ -2598,7 +2598,7 @@ int main(int argc, char *argv[]) +@@ -2623,7 +2623,7 @@ int main(int argc, char *argv[]) } mode_nuke = 1; break; diff --git a/config/module/coreboot/default/patches/0041-tests-Makefile.mk-use-3rdparty-cmocka-by-default.patch b/config/module/coreboot/default/patches/0041-tests-Makefile.mk-use-3rdparty-cmocka-by-default.patch index 8f61bcd0..9762deb7 100644 --- a/config/module/coreboot/default/patches/0041-tests-Makefile.mk-use-3rdparty-cmocka-by-default.patch +++ b/config/module/coreboot/default/patches/0041-tests-Makefile.mk-use-3rdparty-cmocka-by-default.patch @@ -1,7 +1,7 @@ -From 5b7bbc6fcc6f737f259906f1919c1e28b6628a7e Mon Sep 17 00:00:00 2001 +From 7fea0ba7f8aa7b0de008ab3c6362c2ca46d4f9df Mon Sep 17 00:00:00 2001 From: Leah Rowe <leah@libreboot.org> Date: Sat, 20 Dec 2025 22:36:18 +0100 -Subject: [PATCH 41/48] tests/Makefile.mk: use 3rdparty/cmocka by default +Subject: [PATCH 41/56] tests/Makefile.mk: use 3rdparty/cmocka by default (tests) @@ -11,7 +11,7 @@ Signed-off-by: Leah Rowe <leah@libreboot.org> 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/tests/Makefile.mk b/tests/Makefile.mk -index 9e3f86a138..a5a518cd35 100644 +index ab302634ec..7e6f260b27 100644 --- a/tests/Makefile.mk +++ b/tests/Makefile.mk @@ -25,7 +25,9 @@ TEST_LDFLAGS += --coverage @@ -23,8 +23,8 @@ index 9e3f86a138..a5a518cd35 100644 +# if you wish; upstream sets this to 1 by default, but we do 0 +USE_SYSTEM_CMOCKA ?= 0 ifeq ($(USE_SYSTEM_CMOCKA),1) - ifeq ($(shell $(HOSTPKG_CONFIG) --exists cmocka || echo 1),1) - $(warning No system cmocka, build from 3rdparty instead...) + # Only probe for Cmocka (and possibly warn that it will be built from 3rdparty) + # when the requested goals actually build or run unit tests. Otherwise every -- 2.47.3 diff --git a/config/module/coreboot/default/patches/0042-mb-dell-optiplex_780-use-legacy-HDA-verb-table.patch b/config/module/coreboot/default/patches/0042-mb-dell-optiplex_780-use-legacy-HDA-verb-table.patch index 4ce1241c..b62ed52f 100644 --- a/config/module/coreboot/default/patches/0042-mb-dell-optiplex_780-use-legacy-HDA-verb-table.patch +++ b/config/module/coreboot/default/patches/0042-mb-dell-optiplex_780-use-legacy-HDA-verb-table.patch @@ -1,7 +1,7 @@ -From ecbf5a133d839b6c8579e384e9db0a036eca939d Mon Sep 17 00:00:00 2001 +From 773efa2c4c42b949480f86db02ef2643ddece59d Mon Sep 17 00:00:00 2001 From: Leah Rowe <leah@libreboot.org> Date: Tue, 23 Dec 2025 18:41:27 +0100 -Subject: [PATCH 42/48] mb/dell/optiplex_780: use legacy HDA verb table +Subject: [PATCH 42/56] mb/dell/optiplex_780: use legacy HDA verb table See: diff --git a/config/module/coreboot/default/patches/0043-hp8300cmt-use-legacy-verb-table.patch b/config/module/coreboot/default/patches/0043-hp8300cmt-use-legacy-verb-table.patch index e5ea4f3c..3dd15668 100644 --- a/config/module/coreboot/default/patches/0043-hp8300cmt-use-legacy-verb-table.patch +++ b/config/module/coreboot/default/patches/0043-hp8300cmt-use-legacy-verb-table.patch @@ -1,7 +1,7 @@ -From 962bfe1366598145a93cf6a7ed0f78393e5e9ff7 Mon Sep 17 00:00:00 2001 +From a0a8bd018b1b4e956597b7146324a47511d132ae Mon Sep 17 00:00:00 2001 From: Leah Rowe <leah@libreboot.org> Date: Tue, 23 Dec 2025 18:46:45 +0100 -Subject: [PATCH 43/48] hp8300cmt: use legacy verb table +Subject: [PATCH 43/56] hp8300cmt: use legacy verb table same as for the 780 optiplex patch diff --git a/config/module/coreboot/default/patches/0044-topton-x2e-n150-use-old-fsp.patch b/config/module/coreboot/default/patches/0044-topton-x2e-n150-use-old-fsp.patch index ae70996f..cedce086 100644 --- a/config/module/coreboot/default/patches/0044-topton-x2e-n150-use-old-fsp.patch +++ b/config/module/coreboot/default/patches/0044-topton-x2e-n150-use-old-fsp.patch @@ -1,7 +1,7 @@ -From 88d29f792de89bb0a138e671432227cb5679b5ae Mon Sep 17 00:00:00 2001 +From 0ba99e4d9c4bdc15063a314db9fc8e73e36637bc Mon Sep 17 00:00:00 2001 From: Leah Rowe <leah@libreboot.org> Date: Tue, 6 Jan 2026 21:42:21 +0000 -Subject: [PATCH 44/48] topton x2e n150: use old fsp +Subject: [PATCH 44/56] topton x2e n150: use old fsp i added the old fsp back, so that we didn't have to mess around with vendor files in lbmk, because coreboot @@ -18,10 +18,10 @@ Signed-off-by: Leah Rowe <leah@libreboot.org> 1 file changed, 1 insertion(+) diff --git a/src/soc/intel/alderlake/Kconfig b/src/soc/intel/alderlake/Kconfig -index 06b9199e84..f260d10285 100644 +index 6236def814..919acd020e 100644 --- a/src/soc/intel/alderlake/Kconfig +++ b/src/soc/intel/alderlake/Kconfig -@@ -451,6 +451,7 @@ config FSP_FD_PATH +@@ -456,6 +456,7 @@ config FSP_FD_PATH default "3rdparty/fsp/RaptorLakeFspBinPkg/IoT/RaptorLakeS/FSP.fd" if FSP_TYPE_IOT && SOC_INTEL_RAPTORLAKE_PCH_S default "3rdparty/fsp/AlderLakeFspBinPkg/IoT/AlderLakeP/Fsp.fd" if FSP_TYPE_IOT && SOC_INTEL_ALDERLAKE_PCH_P default "3rdparty/fsp/AlderLakeFspBinPkg/IoT/AlderLakeS/Fsp.fd" if FSP_TYPE_IOT && SOC_INTEL_ALDERLAKE_PCH_S diff --git a/config/module/coreboot/default/patches/0045-mb-supermicro-x11-lga1151-series-Disable-ME-HECI-in-.patch b/config/module/coreboot/default/patches/0045-mb-supermicro-x11-lga1151-series-Disable-ME-HECI-in-.patch index e4622ce4..b830a30a 100644 --- a/config/module/coreboot/default/patches/0045-mb-supermicro-x11-lga1151-series-Disable-ME-HECI-in-.patch +++ b/config/module/coreboot/default/patches/0045-mb-supermicro-x11-lga1151-series-Disable-ME-HECI-in-.patch @@ -1,7 +1,7 @@ -From 5b52abaa8529f7493f9d4ecf402e9ee130f4f8d2 Mon Sep 17 00:00:00 2001 +From fe0e2fbff811e023d2cda01c8358c10bb1689a5e Mon Sep 17 00:00:00 2001 From: Ron Nazarov <ron@noisytoot.org> Date: Sat, 14 Feb 2026 20:13:01 +0000 -Subject: [PATCH 45/48] mb/supermicro/x11-lga1151-series: Disable ME HECI in +Subject: [PATCH 45/56] mb/supermicro/x11-lga1151-series: Disable ME HECI in devicetree Since we always use me_cleaner, this speeds up boot time by preventing @@ -14,7 +14,7 @@ Signed-off-by: Ron Nazarov <ron@noisytoot.org> 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mainboard/supermicro/x11-lga1151-series/devicetree.cb b/src/mainboard/supermicro/x11-lga1151-series/devicetree.cb -index fbf896c6ae..aa09a41f2f 100644 +index d25288420f..edbb485969 100644 --- a/src/mainboard/supermicro/x11-lga1151-series/devicetree.cb +++ b/src/mainboard/supermicro/x11-lga1151-series/devicetree.cb @@ -15,7 +15,7 @@ chip soc/intel/skylake diff --git a/config/module/coreboot/default/patches/0046-util-ifdtool-option-to-allow-region-override.patch b/config/module/coreboot/default/patches/0046-util-ifdtool-option-to-allow-region-override.patch index 45539084..95281619 100644 --- a/config/module/coreboot/default/patches/0046-util-ifdtool-option-to-allow-region-override.patch +++ b/config/module/coreboot/default/patches/0046-util-ifdtool-option-to-allow-region-override.patch @@ -1,7 +1,7 @@ -From b9cc1be6f9d591dbc4f73b1448f8fce5ea20a0b4 Mon Sep 17 00:00:00 2001 +From 172dd89a05d02f074d9e17345c5a287d4f7ac27a Mon Sep 17 00:00:00 2001 From: Leah Rowe <leah@libreboot.org> Date: Fri, 20 Feb 2026 01:23:32 +0000 -Subject: [PATCH 46/48] util/ifdtool: option to allow region override +Subject: [PATCH 46/56] util/ifdtool: option to allow region override Signed-off-by: Leah Rowe <leah@libreboot.org> --- @@ -9,7 +9,7 @@ Signed-off-by: Leah Rowe <leah@libreboot.org> 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/util/ifdtool/ifdtool.c b/util/ifdtool/ifdtool.c -index d181888e0f..dfefe316a9 100644 +index 9aacccb540..4ee1c413ae 100644 --- a/util/ifdtool/ifdtool.c +++ b/util/ifdtool/ifdtool.c @@ -78,6 +78,8 @@ static unsigned int max_regions = 0; @@ -21,7 +21,7 @@ index d181888e0f..dfefe316a9 100644 static const struct region_name region_names[MAX_REGIONS] = { { "Flash Descriptor", "fd", "flashregion_0_flashdescriptor.bin", "SI_DESC" }, { "BIOS", "bios", "flashregion_1_bios.bin", "SI_BIOS" }, -@@ -2093,7 +2095,9 @@ static void new_layout(const char *filename, char *image, int size, +@@ -2103,7 +2105,9 @@ static void new_layout(const char *filename, char *image, int size, } for (j = i + 1; j < max_regions; j++) { @@ -29,10 +29,10 @@ index d181888e0f..dfefe316a9 100644 + if (ignore_region_override) { + printf("Ignoring region overlap by user's will.\n"); + } else if (regions_collide(&new_regions[i], &new_regions[j])) { - fprintf(stderr, "Regions would overlap.\n"); - exit(EXIT_FAILURE); - } -@@ -2351,10 +2355,11 @@ int main(int argc, char *argv[]) + fprintf(stderr, "Regions would overlap:\n"); + + /* See which string is longer and make sure we pad the shorter one */ +@@ -2374,10 +2378,11 @@ int main(int argc, char *argv[]) {"newvalue", 1, NULL, 'V'}, {"topswapsize", 1, NULL, 'T'}, {"nuke", 1, NULL, 'N'}, @@ -45,7 +45,7 @@ index d181888e0f..dfefe316a9 100644 long_options, &option_index)) != EOF) { switch (opt) { case 'd': -@@ -2598,6 +2603,9 @@ int main(int argc, char *argv[]) +@@ -2623,6 +2628,9 @@ int main(int argc, char *argv[]) } mode_nuke = 1; break; diff --git a/config/module/coreboot/default/patches/0047-me_cleaner-don-t-modify-if-k-is-used.patch b/config/module/coreboot/default/patches/0047-me_cleaner-don-t-modify-if-k-is-used.patch index cfd5c6c9..5574206b 100644 --- a/config/module/coreboot/default/patches/0047-me_cleaner-don-t-modify-if-k-is-used.patch +++ b/config/module/coreboot/default/patches/0047-me_cleaner-don-t-modify-if-k-is-used.patch @@ -1,7 +1,7 @@ -From 1bc6028bf88ca6306ad89fc17fa6f31b9788b248 Mon Sep 17 00:00:00 2001 +From 26a11c48236b9c0c871d7c9f9641b6e4283a6126 Mon Sep 17 00:00:00 2001 From: Leah Rowe <leah@libreboot.org> Date: Fri, 20 Feb 2026 19:31:19 +0000 -Subject: [PATCH 47/48] me_cleaner: don't modify if -k is used +Subject: [PATCH 47/56] me_cleaner: don't modify if -k is used don't remove *anything*. in libreboot, we only ever use -k when we werely want to extract the diff --git a/config/module/coreboot/default/patches/0048-mb-lenovo-sklkbl-Add-Lenovo-Thinkpad-X270-as-a-varia.patch b/config/module/coreboot/default/patches/0048-mb-lenovo-sklkbl-Add-Lenovo-Thinkpad-X270-as-a-varia.patch index 76fc54e2..83627f16 100644 --- a/config/module/coreboot/default/patches/0048-mb-lenovo-sklkbl-Add-Lenovo-Thinkpad-X270-as-a-varia.patch +++ b/config/module/coreboot/default/patches/0048-mb-lenovo-sklkbl-Add-Lenovo-Thinkpad-X270-as-a-varia.patch @@ -1,7 +1,7 @@ -From f5f73c2539e05cf85bf5eec795e4f91da50838ba Mon Sep 17 00:00:00 2001 +From 8b45c226090d4fef2303c3b3c16a3a167aa56fba Mon Sep 17 00:00:00 2001 From: Kat Inskip <kat@inskip.me> Date: Tue, 17 Feb 2026 16:18:15 -0800 -Subject: [PATCH 48/48] mb/lenovo/sklkbl: Add Lenovo Thinkpad X270 as a variant +Subject: [PATCH 48/56] mb/lenovo/sklkbl: Add Lenovo Thinkpad X270 as a variant This machine is somewhat dissimilar from the X280 in the PCIe allocations in the overridetree. It also lacks soldered RAM, having a single SODIMM slot. @@ -28,10 +28,10 @@ An untested variety allowing for a Skylake CPU (for 20K5 and 20K6) has been incl create mode 100644 src/mainboard/lenovo/sklkbl_thinkpad/variants/x270/overridetree.cb diff --git a/src/mainboard/lenovo/sklkbl_thinkpad/Kconfig b/src/mainboard/lenovo/sklkbl_thinkpad/Kconfig -index b7cc705699..5945fe7b99 100644 +index 25c8ec6959..2a9cfba7f5 100644 --- a/src/mainboard/lenovo/sklkbl_thinkpad/Kconfig +++ b/src/mainboard/lenovo/sklkbl_thinkpad/Kconfig -@@ -58,6 +58,16 @@ config BOARD_LENOVO_X280 +@@ -62,6 +62,16 @@ config BOARD_LENOVO_X380_YOGA select SOC_INTEL_KABYLAKE select HAVE_SPD_IN_CBFS @@ -48,32 +48,32 @@ index b7cc705699..5945fe7b99 100644 if BOARD_LENOVO_SKLKBL_THINKPAD_COMMON config MAINBOARD_DIR -@@ -69,6 +79,8 @@ config VARIANT_DIR - default "t480s" if BOARD_LENOVO_T480S +@@ -74,6 +84,8 @@ config VARIANT_DIR default "t580" if BOARD_LENOVO_T580 default "x280" if BOARD_LENOVO_X280 + default "x380_yoga" if BOARD_LENOVO_X380_YOGA + default "x270" if BOARD_LENOVO_X270_20HM + default "x270" if BOARD_LENOVO_X270_20K6 config OVERRIDE_DEVICETREE default "variants/\$(CONFIG_VARIANT_DIR)/overridetree.cb" -@@ -79,6 +91,8 @@ config MAINBOARD_PART_NUMBER - default "T480s" if BOARD_LENOVO_T480S +@@ -85,6 +97,8 @@ config MAINBOARD_PART_NUMBER default "T580" if BOARD_LENOVO_T580 default "X280" if BOARD_LENOVO_X280 + default "X380 Yoga" if BOARD_LENOVO_X380_YOGA + default "X270" if BOARD_LENOVO_X270_20HM + default "X270" if BOARD_LENOVO_X270_20K6 config CBFS_SIZE default 0x900000 diff --git a/src/mainboard/lenovo/sklkbl_thinkpad/Kconfig.name b/src/mainboard/lenovo/sklkbl_thinkpad/Kconfig.name -index 1d2888840f..43f9296bc5 100644 +index 96feb31695..6fb68f44dd 100644 --- a/src/mainboard/lenovo/sklkbl_thinkpad/Kconfig.name +++ b/src/mainboard/lenovo/sklkbl_thinkpad/Kconfig.name -@@ -14,3 +14,6 @@ config BOARD_LENOVO_T580 +@@ -17,3 +17,6 @@ config BOARD_LENOVO_X280 - config BOARD_LENOVO_X280 - bool "ThinkPad X280" + config BOARD_LENOVO_X380_YOGA + bool "ThinkPad X380 Yoga" + +config BOARD_LENOVO_X270_20HM + bool "ThinkPad X270" diff --git a/config/module/coreboot/default/patches/0049-mb-lenovo-x270-Provide-correct-vbt-and-hda_verb.patch b/config/module/coreboot/default/patches/0049-mb-lenovo-x270-Provide-correct-vbt-and-hda_verb.patch index df86ee01..880775f3 100644 --- a/config/module/coreboot/default/patches/0049-mb-lenovo-x270-Provide-correct-vbt-and-hda_verb.patch +++ b/config/module/coreboot/default/patches/0049-mb-lenovo-x270-Provide-correct-vbt-and-hda_verb.patch @@ -1,7 +1,7 @@ -From 9d39437b9447ab6e6164440bddf459111bd4903f Mon Sep 17 00:00:00 2001 +From b06246d570246eb82d8019ac778106811ba3511a Mon Sep 17 00:00:00 2001 From: Kat Inskip <kat@inskip.me> Date: Sat, 21 Feb 2026 19:48:17 +0000 -Subject: [PATCH] mb/lenovo/x270: Provide correct vbt and hda_verb +Subject: [PATCH 49/56] mb/lenovo/x270: Provide correct vbt and hda_verb --- .../sklkbl_thinkpad/variants/x270/data.vbt | Bin 6144 -> 4449 bytes @@ -12,37 +12,34 @@ diff --git a/src/mainboard/lenovo/sklkbl_thinkpad/variants/x270/data.vbt b/src/m index bfb312850e0ab4ea834c535df35edb45834ed248..c6561a9c57e4e600bc0adb5f6679f2f5d6b6c640 100644 GIT binary patch delta 1043 -zcmZoLc&Ic%f;Calfx%$%L?+>h1_E+-8N?V21pmEaU`SzPl;klqFfjDYD@o1K2+~vt -z_MVtzqhMg55a6s}XrgCqqM%@?Z)B)%WMF8jpkQcVWoTw)YB_PgJ|n}#S5l0olUW%J -zmH8bQ7#aQ=F)(m2Ft9K%I51!UfyozHMC%0@m~0uDSQr@8IT+X^kQH$;FffDp4h#xl -z8bl~CurORpU|?Wi|HJ{}Gcd3-Ft9R!tPx;TV1x)UFbFU>fRs5fu(NPN#30UK;9yW- -zRA7P#ft0y`jTR8#5QD0NNii@mDnP7fU|>*S5CDk_2ry`1Q#Lt(Nn)}ATY5b+BLl;q -zDh37ys6!YT7(sx6fsfIEA&*mz!Jk=!p@x}>p^e#sL5t-Cg8-)jgE6N7gBzy+LnNmF -z!(~=3hP$j>49{7)7(TLcG5lubVqj(CV&G@vVvuCxVo+w|V$fydVlZdpVsK>RV(@0; -zVhCm9Vu)wsV#s9k=3-zgW%%=-sR0x!3=9knjO-wHGc*W7Xa)fmhCWS(hB;92IZ$!V -z4=iAHTu_?(1IuJZHeH|p|Jm6Y{{25E!SMe-hb_othYu_u&oR0{ReC^aA27|#8~~;n -z7(yWG7$Ttj|Nl2@GH+mFWY~O*Rg<|MY#YO>RjXDpFlbI;V0PwG$m9~L=HhDQQdrF; -zw3mzPIG4g(E}{QiT%6nr`rJZ}++5z=3WeN4&D>nQ+zOkyg^qG_o#$5g$}Pms!zIY0 -zV9q1t$-@=Qqfp5s)Xl>+l}BMWkI-2juIoGse|d!XdATHc73_J10(rTjc@?x9d4(qP -za?RycILs?_m6z*2uL3KdkT@TgBA<dgpHL(pS27>3mJn+L(*wrIjyy_}&vV92KFDLv -zD6u(}E1HG>1Or3FDlZ6mhk<$WLq5C7@A-r#%kwKri!pS#F)%QAGH@}3G6XQBFz7H& -kV|c;Lpl851c_M$+Bmr(DBv}6+5)=${r;WiWnGIq+0Ot0jSpWb4 +zcmcgq-Afcv6hC)nXFtw-?CgzfEwH0L<XY;iA6b&MqFA;<TNWfjpGpWJ1oe;wyAeeY +zMcY(Q_7B)gu#XWD5&2>gQ9&f-Qz1ka^prZC-JMFP=YHJZ{oQls$2s?7a?V`MjktC+ +zmIBAkE35L3T{R08;KY{a0fvRBG?I>!>>E2ha<Xn;f(Fw0W827aDAP^J*2b1rqGVGu +z4=35iOQ$2bxub1s{!x>F{QO$c=4v8Y8%=?LrDlLIKmZ^Gf5CQN1XgElP&$RejtyZ5 +z##fpUKrO{7px=4oVy};I82ZMAiwFT|EMc$(iBg6qn;Wt%1))HsoGWjGZ6rwfW9y;f +z+P1?LzVFv3072#UoFOjAux+UOm(9&6an}i+$f~@7#c_7}8xbIi0I-AuW05M@qt?NB +zRe{Uu7N`$QfgK@eiP+G~9Av)K5N4SlnO~Vdm|74a%B*D8G8>rf%r0h{d4PGCIT}nO +z1kb>tr{s#a!pI3<V`T+90M`?coAC1!em=6m55PcQ^@V_29c<|Lyif?1z2|Z8yl`i+ +za*7>%9?|1Fclp|1QdQ0P@qX6gB^>l)&nqO<`-*_VTP>kxOWk0S0g$)_YB$m-%5#X9 +zknW*;i1-ZYGfEFJqEnMDyL3$JbV`>Ob-boiL6=W;oYCpKE<*;!3~D!IpMe7goi*fD +z18*Djz>w1hzA<RYkWmvWP1<3~y(SKswDE!|T@&w`^u&~}Onh&WX2~@cR$H{wl7ki= +zx6FE}<&+P??J{cInaCmcvC%H#g%KPIM5p**le^3FJ5b#@YrFf!lJ5Fw^|}hU(#yx| +p1AZCEz%XnQci@u>jgD~h(eazMzGB3(Uim8EziUhBPY#yb{{-gtq*(v} delta 808 -zcmaE;)L<|{f|X04kilTGBa`q%0|BLr3}Oto`2W3PU`SzPl;klqFf;bdD@o1K2+~vt -z_V&^DcA6MxqiANV5a6s}XrgCqqM%@4sBdVdZ)9L-si0tBY-MU@WoSNem;S_eVvL59 -zSs4xM*_{{|8U7kE@Nlqra5!jiC`fP!xUe{=uqcSI2n09?BseG-C<yqlIOwn_$Z!Z4 -zC<sJ22t)`t2rw|2GBU9+FsN}b9IIe}0tE(x>s$;B%pfk41A_vHW&l$x4A&AE92giP -zgh70R>+B2+tPBhcP7Le<j0%ikbs*IaP-R(AWgH9)EFejC1x5uX5Cd!&m?0p*Q3Fyn -zS&>OpPyu8rNLWCCp${g?0TZ2U$Rsz}l1X5)C6gG8t_NAi%*ep-r;34r0pbFX0T9f` -zXuz<9Lk_}$k_pTw7~D7%7&18o7-~2K82UK`7&uwE7=&557-U(w7}Qz07z|mt7_3>j -z7+hJo82nke7$RA@7?N4J7;;&;7|L0>7#dl*7`j=x7^bqaaWTwi<zm?UnRx>frvL*3 -zg8+j7gW=>2Y~q^_vvD!kgT2kLYSpS$3=Eo67?>+L73OmaZRF(I&8hH^Q|L1%*I!Nr -zWiBC8E-rg6g;Xw~axSh$E`{Y>LOZ#*4s$8I<P!SL#l_04pv^60%gyD^t&qztRL{-T -z$*r)STj(G+*J*BrkK97cJY2jy3dTG_t~^}+JPM^eLhU?U6L}PrxAO>{<l(x^qwteQ -zh?|#7lvlx;SIC!_E1XxMmRG2smun{P<b19U?gn-XmIgsS1{-FB$p^Tkh5XGL78F=0 -zIT+cjV-T4mz`!86S)V(ag<n9OA!3!+2?h{(kC|oiMt+OQ`}rj%zvNex5@qOgV_;zL -yWZ+^5We8wMVbEcm#_)n!Zv(^RK!MiD2L!|>9}tk){DbW~<0kg^a6CDHNgDv8%8_CK +zcmX|<OGp)A6vxjzu6O3ljQ8{Nk(S9(BbCHE<JFt5XtK0?gjPgG5JI{rvIi7a80sQQ +zg6uLC1c5Drz(r|y5!E6?2%}X52`vJ5*`f#+6=ig;dixJQ&i|b6%=hA3C>e2Y=7&(6 +z1vl8CW+z-x@(%LgW907_fIdYjust^(YddwW|77|83Odly8SQ9J9BnF&$EbTJc{NqB +z8Y0(=dhuwr>(#T5HPpr%yse4n(Ztt0#S21;HymyT1(vJ9HuOD)Uv5yoA$IBhCY^G0 +z(d~;~pIj21x?ibNp&{7!_@YPn0@PYX)d4me@cII*iNKvl04<fOJ`e{MF*<zc1s|X% +zJC(chVSo^qn;|R|QrNAw`D<+_*4m8JpR6z`q^3-IP5>c{p;T8;tmbA>dO!%ck**r) +zYT&6wLA@%NymTDqLC|>RKbP37?tsmjG8Gpd7)9xHCH87_(8_ZjHv|kZ<BS<X$YwS& +zWsJu(GA&FObC@~C3^0StD07{;9m+tMV3S<Zrc_h#0)js;n95j}oXtROc;(nI$pWaj +z1=>ZECQLbP;tP`&Ou1y@vPq>VYZ132^`jg_97TGF@)_bR(jv;=h#`x%SaO?%yDb{9 +z<gkTf7CpA)D+}LR^xcx0jgCz*TejHPWz%_EUbQh{Q|VJ%zOnJWO}}huIhgBEqa*h^ +zc*vp4jvROJt`nTbYt~4(P9Mq2geJ`mW^jY-ijUksQ&-|wH$8%!dwj5hWYjvMM?@L) +zOt#PQ3z%&Gr0KzQq%L?F$qyDI#p`ontd(z|4G<1OH}pZJatA(ZRZ|e`6IX&6k;fD! +Re`fqpo`k>sC+JqU`~#!PkzxP< diff --git a/src/mainboard/lenovo/sklkbl_thinkpad/variants/x270/hda_verb.c b/src/mainboard/lenovo/sklkbl_thinkpad/variants/x270/hda_verb.c index 089e605eaf..60289355f8 100644 @@ -128,5 +125,5 @@ index 089e605eaf..60289355f8 100644 }; -- -2.52.0 +2.47.3 diff --git a/config/module/coreboot/default/patches/0050-mb-dell-Add-OptiPlex-3040-Micro-port.patch b/config/module/coreboot/default/patches/0050-mb-dell-Add-OptiPlex-3040-Micro-port-upstream-compat.patch index a2e5d5a2..7f2c3bb0 100644 --- a/config/module/coreboot/default/patches/0050-mb-dell-Add-OptiPlex-3040-Micro-port.patch +++ b/config/module/coreboot/default/patches/0050-mb-dell-Add-OptiPlex-3040-Micro-port-upstream-compat.patch @@ -1,7 +1,8 @@ -From 24856e5e383b1b9aa078b879064b8c2b99f4494c Mon Sep 17 00:00:00 2001 +From 621fa31a5342d01c8d199d5f08e6862909e970b5 Mon Sep 17 00:00:00 2001 From: Todd Baker <todd_baker@student.uml.edu> Date: Thu, 12 Mar 2026 13:12:04 -0400 -Subject: [PATCH] mb/dell: Add OptiPlex 3040 Micro port (upstream-compatible) +Subject: [PATCH 50/56] mb/dell: Add OptiPlex 3040 Micro port + (upstream-compatible) Based on the OptiPlex 3050 Micro (same Skylake H110 PCH-H platform). Key differences from 3050: @@ -347,32 +348,33 @@ new file mode 100644 index 0000000000000000000000000000000000000000..b503dfc20277775982256a4bdc9108c2ad96f856 GIT binary patch literal 4300 -zcmeHJU2GIp6#nLSXYbBzr$d#pV7($jx3pz;m0GlwX?H0tEiwzWuF-@o*+oezEo~tM -zf4YX6kSJy!)Szid6JN~w(!}_rMiOHr!Jldr9_@>X5=}_J_yVk%JJapDM0Z0%l!R}R -zIrp4<=DX+Id*|M>Zm4^Z?&*JOpsRly^^k^%uk_0>aU;6>cJ0|4?;7md+dZ%=)=$5~ -z-I&#{Uj)(|w@Qten<IS(Co?0ByTi1<dw>o(A5h19#EjB-JKfpSLz9t6Gqt-rd*eI% -zXydjXI}&cDcC0gQN0=IQ)OcsyjxzPZa5LT3V@D}H&^<ajF-bEAhxd(S(l<s|39-?! -zqvHpjeQuIA#=<menr2JXj6^64nZ`!P$69IE$Ozr-_)O5<nTgE!kxaT(BN_qDKoL1` -zoP?SzI9!V&Wx=)(w_sAN6HzB(%tG42poNDhCav;#bnu%wUIf;c_D}!>5CAB!m<l+8 -z6Y+ftx~?3nb9DO$4v;=M3`pQ8$0(d{Eu3dwuQRX33ko1QTt3QCe#y&i=(=*6c>#Vv -zb~=3~N1dVBi0<IJj(LwOz<L1QD)Dj#E#hxV5#`o$-9@>zTwnGQIN<6r&rpgWXJWs< -z0o#Q}ObR?+7TU2^JPXB7vC*&NF~5$4U&lF#;75tzCyC%!iQuwCa7`lc$pp1B!D^Y{ -z0hwTvOt3{Jh{*&yWr8PVf?=6JK8&jcJ_{ckJj;2q)|Jpjyb(rr*0axgcK;=3B>>{d -zfG4X(q2Tl3df}UT6beeG6M=O}1P5?&kEz#_1565n?dgNAACjJ4DELzVqKMv-x4@Xm -zIcFogC=_n@mbwBvAVN?&W<+Ft?P3S`&rfOsra)?yrR-p+&Vm$CcN%iY)qEXAYZ?B_ -zo{)1Ctp1H(@DVKdu5c$-{6AaHl<5_oCDeLY((m97O0lLF=l$6nUA#wEQfu9whMTk8 -z`;2pqD-fZ=LL9xN;}oHQ@5Pdn3ucO=v?x%(i|o!{2BoNR@9KX<V+b{vDDTeZ^Z7gw -zeiOo@gbov9f{>R8eUBI)5%L+KKNI6mLbw3k5HPj`NGw1P1dJB~<kbNEAYgnNAYTUP -z?*XF_Abyo@QjIQ^^sDrcY8+R|NtJ%68egd7Tb2Hy8a|EGYV={v=+np^jULsE*EI5$ -zMnBe!uQhT(qt`T}CP-EV>DHi;2$H9RT9YAV`9&^U8)Su!GOl95m*iC@uW<Uf3aMrT -z3WXaNrEQvX4_K87Nxm|}Tn$AexrR1o>)bhNXq)EU`bTw+^U4hARj|6S-mE{-<}%c` -zO$)3(g9-_v!_Xn%U$QWpa4G@QGRN341}6rIRb^18q)=51Q#29MExm++%Slc=RWiK4 -zX=*VMT5ly!Eyuv+Sk0$e@_ZFB^lr7xee+SvI<w3myA_Z+Bvmt$`|lgdC(vN_<h-?T -zW-`a_PA(@`GY>De=H^nN2Fs-0S~Rpxi#b1=hpexfEE+qqb7S-OTPAHP?guHy>J)WO -znyF$xyc?cdNX)D??RQod83eG>SheJ87|bT?Y-%QL)+gM0(8)r8%Cfl0J;@j}mqDUc -zWN|TsIh(FDRWr7nMJ~t~oa(0Xf5AVJtv}S>VkKLa*Fr#z8-oJ5@_!Mwkji33O4q%s -znq{FghJhY?uRVM)GxGTG^O@UI$;9oJ$<daf?OpB+SHQ+sAn(vOAerBB7PsO}lKDaz -g_%bx#h2uQ{`atjmY^2f5y^UXl)_LGW5w}J2FT+;79{>OV +zcmeHJU2GIp6h1SvzjtP~vs09^U_BzjZlPs%m0GmOY<DRwEwT%>uF-@o*+oezEo~tM +ze;7keND#9RYS0kU#1~Uvni!wdNMej6_=85_(Y}}{(ZmFdFTi^4%(PpVU{|7163*n@ +z^D}3@x%b>Ncg~9bjy~Mc^F(j5XA`<q00TbPF41^Bb#!mru``|QOYZFG-InUXui;KO +zsa?AWP!NPAO59i%@7_CB9E@&{VNXXd_VWjjyAK!%Ot<0I&Q8q5<7+U}v7sxywHu?G +zIy3PY*{KcbOx!jT+)R_1u+96)q@V=io{piR(J?IU9oRKkEL=akg*>UD;e#W4o_=Nw +zqp27s48v$n81XpTQ^wTL$Z!iL2M2LGj~T`7#nIx(fnuRWWhw(W4FQh;g5ZTZ3k0~D +zfV>GA6VfIa2rE3W$OFSB6inzd;Q@p(vwA)ni0cH=1F&-b9VCO`B@zKJfty4KAb8-L +zJZM_r&?0VUz7+txAMU3C1SFjZiA^|fN4;W4&0Gio&?_L|M*&4r>?lVetW$OrKoG#k +z@A(Y@`Kui)<cg-jw2LKkn@BY0MIkxn2<No<O0~Dzc4Di&)pjLHqUByW<k){2LxKUj +zgN?9Rio%#A!i!QHEccv&KoDVdP=iN^v&3h;489}&p7<x?OT<@+{XPa^;-$p*5w9g) +zPn;s&O8hwS0I_dBTq%nd`0ck_f-A$01kD4l#=tu1`cJz4;IDiqXnS2LyV7>nFqF%F +zKU^z+*#PBoU<03lNeGk+A?+e{xw6-ml9X}nK9amda;{x22lHem==wKC$wp>pc_BMg +zF5l{!QV(0`OOgWZ6CSYqZJu@zKRK>SFb*tCADK(KVkdgmTyzS25y$Yi&pNB+e|aau +zkAkH?i|70d&iOA3N9+He8qb-wz%`rKuuHS{ZFxHb^E0rl3(g0v63*PE1@g<CJB>Hz +zx%(-qNijeNg97yLhpzeWnbQLxcG2J5339x)D^1T-h+H1~pI>nyLLL7=|AL|ssDsh! +z0Bec}Aodza4>KHK`Y2;BFnpWo?=$u>!ylObJ7a>3t7Lt>%u+J$k@e?f_Oguc%KAq# +z`%K1PWW6l2pn_`^J*luB1@|fX5rrLB@I6KURAFB!_?x2pRTft9K~?Wo*$x#Cs`@dN +zy{_U1s{Vz_E~t1_)$2lRNeDNF^lXSd8B&{cuO-e1RybrgI)M>|&Yqm8*z&TVk@VKB +zqQBhro6>rinl8Rt1*M$0Fv4UVLOiz&qZairoElpXi(uze;m7&H2!$nJCSj$~aJ1Dy +zXlOkw+5H*qxfeVfp`CiB8?VA>f)iOVOk=p-L7+L%gIrg}y^)#_#xWbwOl=;5Q1bo_ +zgm>1C&txMj&D@E~9E6hH^C_lpx`sJ)Z8VKt(+Sf&T|w|U9gx!RttFGY@9Ce)LZi`H +za`%E~vSj}|X)3kk;rW)*WIobp8tCo?Wztik=9MyO`D<B4wB4E<p1zk5n)p+8J$OrY +zpQ229Cu*pNw_=m$vJ=aV%$tkn5G1f$W6ESL2u726CO=Uy8nRA5$ZJxfVj{ZPnzRvA +z2f>Rqtm0w>CNsF$P>fV%6(#x}?M$}W^}vh###JpoWHsz-Yc_MumA#PYEaC`sjQJM+ +zE@CF+EvV0HT9`j&?}bF?DUs6Knc0~c*jpTYbl}<It!Wg~ndY&f=Kjq|zM=(b^-JK} +zqOF45)Rr^UssHmM%T1N5NUWkYcfgTOnrSz6?vFtR3b00a1AdfRrU8!5(Ji6=0mD|k +A9{>OV literal 0 HcmV?d00001 @@ -1524,5 +1526,5 @@ index 0000000000..9d262d5787 + +#endif -- -2.53.0 +2.47.3 diff --git a/config/module/coreboot/default/patches/0051-mb-supermicro-x11-lga1151-series-Enable-SATA-hotplug.patch b/config/module/coreboot/default/patches/0051-mb-supermicro-x11-lga1151-series-Enable-SATA-hotplug.patch deleted file mode 100644 index 58c1a1d9..00000000 --- a/config/module/coreboot/default/patches/0051-mb-supermicro-x11-lga1151-series-Enable-SATA-hotplug.patch +++ /dev/null @@ -1,46 +0,0 @@ -From 88519aed6c7f305f7f2319e335c1421137df7ce3 Mon Sep 17 00:00:00 2001 -From: Ron Nazarov <ron@noisytoot.org> -Date: Mon, 23 Mar 2026 17:04:03 +0000 -Subject: [PATCH] mb/supermicro/x11-lga1151-series: Enable SATA hotplug - -Before this patch, hotplugging only worked to replace drives (if you -tried to plug a drive into a SATA port that no drive was plugged in to -at boot, it wouldn't be detected) and you'd have to manually rescan -the bus (echo "- - -" > /sys/class/scsi_host/host*/scan) to make -plugs/unplugs get detected by the operating system. - -Now, hotplugging works for all ports (tested and working on Supermicro -X11SSH-LN4F) and there's no need to manually rescan (it sometimes -takes a few seconds for unplugs to be detected, but plugs are detected -instantly). - -Change-Id: Id978a047697795ea657048fb6dc6665736c293f9 -Signed-off-by: Ron Nazarov <ron@noisytoot.org> ---- - .../supermicro/x11-lga1151-series/devicetree.cb | 10 ++++++++++ - 1 file changed, 10 insertions(+) - -diff --git a/src/mainboard/supermicro/x11-lga1151-series/devicetree.cb b/src/mainboard/supermicro/x11-lga1151-series/devicetree.cb -index fbf896c6ae..d25288420f 100644 ---- a/src/mainboard/supermicro/x11-lga1151-series/devicetree.cb -+++ b/src/mainboard/supermicro/x11-lga1151-series/devicetree.cb -@@ -28,6 +28,16 @@ chip soc/intel/skylake - [6] = 1, - [7] = 1, - }" -+ register "SataPortsHotPlug" = "{ -+ [0] = 1, -+ [1] = 1, -+ [2] = 1, -+ [3] = 1, -+ [4] = 1, -+ [5] = 1, -+ [6] = 1, -+ [7] = 1, -+ }" - end - device ref lpc_espi on - register "serirq_mode" = "SERIRQ_CONTINUOUS" --- -2.52.0 - diff --git a/config/module/coreboot/default/patches/0051-remove-Werror-tree-wide.patch b/config/module/coreboot/default/patches/0051-remove-Werror-tree-wide.patch new file mode 100644 index 00000000..bd3602df --- /dev/null +++ b/config/module/coreboot/default/patches/0051-remove-Werror-tree-wide.patch @@ -0,0 +1,718 @@ +From c01e980e06601034fc911e3c5e1fdeebaf7eb3f8 Mon Sep 17 00:00:00 2001 +From: Leah Rowe <leah@libreboot.org> +Date: Mon, 21 Sep 2026 10:46:07 +0100 +Subject: [PATCH 51/56] remove -Werror tree-wide + +Signed-off-by: Leah Rowe <leah@libreboot.org> +--- + Makefile.mk | 2 - + .../external/tint/tint-0.07_libpayload.patch | 70 +++++++++---------- + payloads/libpayload/Makefile.mk | 2 +- + payloads/libpayload/Makefile.payload | 2 +- + payloads/libpayload/sample/Makefile | 2 +- + payloads/libpayload/sample/arch_mock/Makefile | 2 +- + payloads/libpayload/tests/Makefile.mk | 2 +- + payloads/linuxcheck/Makefile | 2 +- + src/commonlib/gnat/Makefile.mk | 1 - + tests/Makefile.common | 2 +- + util/amdfwtool/Makefile.mk | 2 +- + util/archive/Makefile | 2 +- + util/bincfg/Makefile | 2 +- + util/bucts/Makefile | 2 +- + util/cbfstool/Makefile.mk | 2 +- + util/cbfstool/lz4/Makefile | 8 +-- + util/cbmem/Makefile | 2 +- + util/crossgcc/patches/gcc-15.2.0_libcpp.patch | 2 +- + util/ectool/Makefile | 2 +- + util/futility/Makefile.mk | 2 +- + util/ifdtool/Makefile.mk | 2 +- + util/intelvbttool/Makefile | 2 +- + ...fdata.c-fix-Werror-discarded-qualifi.patch | 4 +- + util/kconfig/patches/series | 2 +- + util/msrtool/configure | 2 +- + util/pmh7tool/Makefile | 2 +- + util/superiotool/Makefile | 6 +- + util/uio_usbdebug/Makefile | 2 +- + util/xcompile/xcompile | 2 +- + 29 files changed, 67 insertions(+), 70 deletions(-) + +diff --git a/Makefile.mk b/Makefile.mk +index 688ba99c14..2c39d3d632 100644 +--- a/Makefile.mk ++++ b/Makefile.mk +@@ -555,7 +555,6 @@ CFLAGS_common += -ffunction-sections + CFLAGS_common += -fdata-sections + CFLAGS_common += -fno-pie + CFLAGS_common += -Wstring-compare +-CFLAGS_common += -Werror + ifeq ($(CONFIG_COMPILER_GCC),y) + CFLAGS_common += -Wold-style-declaration + CFLAGS_common += -Wcast-function-type +@@ -581,7 +580,6 @@ endif + ADAFLAGS_common += -gnatp + ADAFLAGS_common += -Wuninitialized + ADAFLAGS_common += -Wall +-ADAFLAGS_common += -Werror + ADAFLAGS_common += -pipe + ADAFLAGS_common += -g + ADAFLAGS_common += -nostdinc +diff --git a/payloads/external/tint/tint-0.07_libpayload.patch b/payloads/external/tint/tint-0.07_libpayload.patch +index 6c9594a369..3d70539ffb 100644 +--- a/payloads/external/tint/tint-0.07_libpayload.patch ++++ b/payloads/external/tint/tint-0.07_libpayload.patch +@@ -4,7 +4,7 @@ diff -rupN tint-0.05/config.h tint/config.h + @@ -29,7 +29,15 @@ + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +- ++ + +#include <libpayload.h> + +#include <curses.h> + + +@@ -15,7 +15,7 @@ diff -rupN tint-0.05/config.h tint/config.h + +#if 0 + const char scorefile[] = SCOREFILE; + +#endif +- ++ + #endif /* #ifndef CONFIG_H */ + diff -rupN tint-0.05/engine.c tint/engine.c + --- tint-0.05/engine.c 2005-07-17 13:26:22.000000000 +0200 +@@ -23,14 +23,14 @@ diff -rupN tint-0.05/engine.c tint/engine.c + @@ -27,10 +27,13 @@ + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +- ++ + +#include "config.h" + + + +#if 0 + #include <stdlib.h> + #include <string.h> + +#endif +- ++ + -#include "typedefs.h" + #include "utils.h" + #include "io.h" +@@ -41,10 +41,10 @@ diff -rupN tint-0.05/engine.h tint/engine.h + @@ -29,7 +29,7 @@ + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +- ++ + -#include "typedefs.h" /* bool */ + +#include "curses.h" /* bool */ +- ++ + /* + * Macros + diff -rupN tint-0.05/io.c tint/io.c +@@ -53,7 +53,7 @@ diff -rupN tint-0.05/io.c tint/io.c + @@ -27,9 +27,13 @@ + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +- ++ + +#include "config.h" + + + +#if 0 +@@ -61,9 +61,9 @@ diff -rupN tint-0.05/io.c tint/io.c + #include <sys/time.h> /* gettimeofday() */ + #include <unistd.h> /* gettimeofday() */ + +#endif +- ++ + #include "io.h" +- ++ + @@ -68,7 +72,11 @@ static int in_timeleft; + /* Initialize screen */ + void io_init () +@@ -101,16 +101,16 @@ diff -rupN tint-0.05/io.c tint/io.c + +#endif + return ch; + } +- ++ + diff -rupN tint-0.05/io.h tint/io.h + --- tint-0.05/io.h 2010-06-23 14:55:03.000000000 +0100 + +++ tint/io.h 2021-02-09 08:00:00.000000000 +0200 + @@ -30,7 +30,6 @@ + */ +- ++ + #include <curses.h> + -#include <wchar.h> +- ++ + /* + * Colors + diff -rupN tint-0.05/Makefile tint/Makefile +@@ -166,7 +166,7 @@ diff -rupN tint-0.05/Makefile tint/Makefile + +HAVE_LIBPAYLOAD := $(wildcard $(LIBPAYLOAD_DIR)/lib/libpayload.a) + +LIB_CONFIG ?= configs/defconfig-tinycurses + + +-+# CFLAGS := -Wall -Werror -Os +++# CFLAGS := -Wall -Os + +CFLAGS := -Wall -g -Os + +TARGET := tint + +OBJS := $(TARGET).o engine.o io.o utils.o +@@ -234,7 +234,7 @@ diff -rupN tint-0.05/tint.c tint/tint.c + @@ -27,6 +26,7 @@ + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +- ++ + +#if 0 + #include <stdlib.h> + #include <stdio.h> +@@ -244,24 +244,24 @@ diff -rupN tint-0.05/tint.c tint/tint.c + #include <sys/types.h> + #include <unistd.h> + +#endif +- ++ + -#include "typedefs.h" + #include "utils.h" + #include "io.h" + #include "config.h" + @@ -304,7 +304,7 @@ static void showstatus (engine_t *engine + /***************************************************************************/ +- ++ + /* Header for scorefile */ + -#define SCORE_HEADER "Tint 0.02b (c) Abraham vd Merwe - Scores" + +#define SCORE_HEADER "Tint 0.05 (c) Abraham vd Merwe - Scores" +- ++ + /* Header for score title */ + static const char scoretitle[] = "\n\t TINT HIGH SCORES\n\n\tRank Score Name\n\n"; + @@ -322,6 +322,7 @@ typedef struct + time_t timestamp; + } score_t; +- ++ + +#if 0 + static void getname (char *name) + { +@@ -271,7 +271,7 @@ diff -rupN tint-0.05/tint.c tint/tint.c + } + } + +#endif +- ++ + +#if 0 + static void err1 () + { +@@ -281,7 +281,7 @@ diff -rupN tint-0.05/tint.c tint/tint.c + exit (EXIT_FAILURE); + } + +#endif +- ++ + void showplayerstats (engine_t *engine) + { + - fprintf (stderr, +@@ -292,7 +292,7 @@ diff -rupN tint-0.05/tint.c tint/tint.c + @@ -361,6 +365,7 @@ void showplayerstats (engine_t *engine) + GETSCORE (engine->score),engine->status.efficiency,GETSCORE (engine->score) / getsum ()); + } +- ++ + +#if 0 + static void createscores (int score) + { +@@ -302,7 +302,7 @@ diff -rupN tint-0.05/tint.c tint/tint.c + fprintf (stderr,"\t 1* %7d %s\n\n",score,scores[0].name); + } + +#endif +- ++ + +#if 0 + static int cmpscores (const void *a,const void *b) + { +@@ -312,7 +312,7 @@ diff -rupN tint-0.05/tint.c tint/tint.c + return 0; + } + +#endif +- ++ + +#if 0 + static void savescores (int score) + { +@@ -322,11 +322,11 @@ diff -rupN tint-0.05/tint.c tint/tint.c + fprintf (stderr,"\n"); + } + +#endif +- ++ + /***************************************************************************/ + /***************************************************************************/ + /***************************************************************************/ +- ++ + +#if 0 + static void showhelp () + { +@@ -336,7 +336,7 @@ diff -rupN tint-0.05/tint.c tint/tint.c + exit (EXIT_FAILURE); + } + +#endif +- ++ + static void parse_options (int argc,char *argv[]) + { + +#if 0 +@@ -349,12 +349,12 @@ diff -rupN tint-0.05/tint.c tint/tint.c + } + +#endif + } +- ++ + static void choose_level () + { + +#if 0 + char buf[NAMELEN]; +- ++ + do + @@ -557,6 +572,8 @@ static void choose_level () + buf[strlen (buf) - 1] = '\0'; +@@ -363,7 +363,7 @@ diff -rupN tint-0.05/tint.c tint/tint.c + +#endif + + level = 1; + } +- ++ + /***************************************************************************/ + @@ -569,6 +586,8 @@ int main (int argc,char *argv[]) + int ch; +@@ -423,14 +423,14 @@ diff -rupN tint-0.05/tint.c tint/tint.c + exit (EXIT_SUCCESS); + +#endif + } +- ++ + diff -rupN tint-0.05/utils.c tint/utils.c + --- tint-0.05/utils.c 2001-12-07 16:49:19.000000000 +0100 + +++ tint/utils.c 2021-02-09 08:00:00.000000000 +0200 + @@ -27,11 +27,13 @@ + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +- ++ + +#include "config.h" + + + +#if 0 +@@ -440,7 +440,7 @@ diff -rupN tint-0.05/utils.c tint/utils.c + - + -#include "typedefs.h" + +#endif +- ++ + /* + * Initialize random number generator + @@ -61,6 +63,7 @@ int rand_value (int range) +@@ -454,7 +454,7 @@ diff -rupN tint-0.05/utils.c tint/utils.c + @@ -69,3 +72,4 @@ bool str2int (int *i,const char *str) + return TRUE; + } +- ++ + +#endif + diff -rupN tint-0.05/utils.h tint/utils.h + --- tint-0.05/utils.h 2001-12-07 16:49:35.000000000 +0100 +@@ -462,9 +462,9 @@ diff -rupN tint-0.05/utils.h tint/utils.h + @@ -29,7 +29,7 @@ + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +- ++ + -#include "typedefs.h" + +#include <curses.h> +- ++ + /* + * Initialize random number generator +diff --git a/payloads/libpayload/Makefile.mk b/payloads/libpayload/Makefile.mk +index 0f5d1a0e11..45c2c5ad74 100644 +--- a/payloads/libpayload/Makefile.mk ++++ b/payloads/libpayload/Makefile.mk +@@ -80,7 +80,7 @@ CFLAGS += -nostdlib -fno-builtin -ffreestanding -fomit-frame-pointer + CFLAGS += -ffunction-sections -fdata-sections + CFLAGS += -Wall -Wundef -Wstrict-prototypes -Wmissing-prototypes -Wvla + CFLAGS += -Wwrite-strings -Wredundant-decls -Wimplicit-fallthrough +-CFLAGS += -Wstrict-aliasing -Wshadow -Wno-address-of-packed-member -Werror ++CFLAGS += -Wstrict-aliasing -Wshadow -Wno-address-of-packed-member + + ifeq ($(CONFIG_LP_LTO),y) + CFLAGS += -flto +diff --git a/payloads/libpayload/Makefile.payload b/payloads/libpayload/Makefile.payload +index 2eafd4bec3..c74704c58d 100644 +--- a/payloads/libpayload/Makefile.payload ++++ b/payloads/libpayload/Makefile.payload +@@ -84,7 +84,7 @@ endif + + CFLAGS = $(CFLAGS_$(ARCH)) + CFLAGS += -Os -ffreestanding +-CFLAGS += -Wall -Wextra -Wmissing-prototypes -Wvla -Werror ++CFLAGS += -Wall -Wextra -Wmissing-prototypes -Wvla + ifeq ($(CONFIG_LP_LTO),y) + CFLAGS += -flto + endif +diff --git a/payloads/libpayload/sample/Makefile b/payloads/libpayload/sample/Makefile +index 1249e9a017..269511d7df 100644 +--- a/payloads/libpayload/sample/Makefile ++++ b/payloads/libpayload/sample/Makefile +@@ -44,7 +44,7 @@ AS := $(AS_$(ARCH-y)) + LIBPAYLOAD_DIR := ../install/libpayload + XCC := CC="$(CC)" $(LIBPAYLOAD_DIR)/bin/lpgcc + XAS := AS="$(AS)" $(LIBPAYLOAD_DIR)/bin/lpas +-CFLAGS := -fno-builtin -Wall -Werror -Os ++CFLAGS := -fno-builtin -Wall -Os + TARGET := hello + OBJS := $(TARGET).o + +diff --git a/payloads/libpayload/sample/arch_mock/Makefile b/payloads/libpayload/sample/arch_mock/Makefile +index a1e748111e..a146c2b3be 100644 +--- a/payloads/libpayload/sample/arch_mock/Makefile ++++ b/payloads/libpayload/sample/arch_mock/Makefile +@@ -12,7 +12,7 @@ CC := gcc + AS := as + OBJCOPY := objcopy + LIBPAYLOAD_DIR := ../../install/libpayload +-CFLAGS := -fno-builtin -Wall -Werror -Os \ ++CFLAGS := -fno-builtin -Wall -Os \ + -include $(LIBPAYLOAD_DIR)/include/kconfig.h \ + -include $(LIBPAYLOAD_DIR)/include/compiler.h \ + -I $(LIBPAYLOAD_DIR)/include \ +diff --git a/payloads/libpayload/tests/Makefile.mk b/payloads/libpayload/tests/Makefile.mk +index 6b6c78d835..b2e7433b65 100644 +--- a/payloads/libpayload/tests/Makefile.mk ++++ b/payloads/libpayload/tests/Makefile.mk +@@ -45,7 +45,7 @@ TEST_CFLAGS += -I$(cmockasrc)/include + # Minimal subset of warnings and errors. Tests can be less strict than actual build. + TEST_CFLAGS += -Wall -Wundef -Wstrict-prototypes -Wvla + TEST_CFLAGS += -Wwrite-strings -Wno-address-of-packed-member -Wimplicit-fallthrough +-TEST_CFLAGS += -Wstrict-aliasing -Wshadow -Werror ++TEST_CFLAGS += -Wstrict-aliasing -Wshadow + TEST_CFLAGS += -Wno-unknown-warning-option -Wno-source-mgr -Wno-main-return-type + + TEST_CFLAGS += -std=gnu11 -ffunction-sections -fdata-sections -fno-builtin +diff --git a/payloads/linuxcheck/Makefile b/payloads/linuxcheck/Makefile +index 838c90df0c..a9d016db36 100644 +--- a/payloads/linuxcheck/Makefile ++++ b/payloads/linuxcheck/Makefile +@@ -3,7 +3,7 @@ XCOMPILE=$(LIBPAYLOAD_DIR)/libpayload.xcompile + # build libpayload and put .config file in $(CURDIR) instead of ../libpayload + # to avoid pollute the libpayload source directory and possible conflicts + LPOPTS=obj="$(CURDIR)/build" DESTDIR="$(CURDIR)" DOTCONFIG="$(CURDIR)/.config" +-CFLAGS += -Wall -Wvla -Werror -Os -ffreestanding -nostdinc -nostdlib ++CFLAGS += -Wall -Wvla -Os -ffreestanding -nostdinc -nostdlib + ifeq ($(CONFIG_ARCH_X86),y) + TARGETARCH = i386 + endif +diff --git a/src/commonlib/gnat/Makefile.mk b/src/commonlib/gnat/Makefile.mk +index 773615c2cc..26891690cc 100644 +--- a/src/commonlib/gnat/Makefile.mk ++++ b/src/commonlib/gnat/Makefile.mk +@@ -12,7 +12,6 @@ ADAFLAGS_libgnat-$(1) := \ + -gnatpg \ + -I$(dir) \ + $$(GCC_ADAFLAGS_$(1)) \ +- -Werror \ + -fno-pie \ + + libgnat-$(1)-y += a-unccon.ads +diff --git a/tests/Makefile.common b/tests/Makefile.common +index 14cacaeca7..c35e312a79 100644 +--- a/tests/Makefile.common ++++ b/tests/Makefile.common +@@ -46,7 +46,7 @@ TEST_INCLUDES += -I$(dir $(TEST_KCONFIG_AUTOHEADER)) + # -Wmissing-prototypes just make working with the test framework cumbersome. + # Only put conservative warnings here that really detect code that's obviously + # unintentional. +-TEST_CFLAGS += -Wall -Werror -Wundef -Wstrict-prototypes -Wno-inline-asm ++TEST_CFLAGS += -Wall -Wundef -Wstrict-prototypes -Wno-inline-asm + TEST_CFLAGS += -Wno-unknown-warning-option -Wno-source-mgr -Wno-main-return-type + TEST_CFLAGS += -Wno-array-compare -Wno-trigraphs + TEST_CFLAGS += -Wno-unused-but-set-variables +diff --git a/util/amdfwtool/Makefile.mk b/util/amdfwtool/Makefile.mk +index 1f819d918f..f7dce01b71 100644 +--- a/util/amdfwtool/Makefile.mk ++++ b/util/amdfwtool/Makefile.mk +@@ -6,7 +6,7 @@ amdfwtoolobj = amdfwtool.o data_parse.o signed_psp.o handle_file.o opts.o soc.o + amdfwreadobj = amdfwread.o + amdfwheader = amdfwtool.h + +-WERROR ?= -Werror ++WERROR = + AMDFWTOOLCFLAGS :=-O2 -Wall -Wextra -Wshadow $(WERROR) + AMDFWTOOLCFLAGS += -I $(top)/src/commonlib/bsd/include + AMDFWTOOLCFLAGS += -I $(top)/src/ +diff --git a/util/archive/Makefile b/util/archive/Makefile +index 2de6a6294a..d301017253 100644 +--- a/util/archive/Makefile ++++ b/util/archive/Makefile +@@ -1,7 +1,7 @@ + ## SPDX-License-Identifier: GPL-2.0-only + PROGRAM = archive + HOSTCC ?= gcc +-WERROR=-Werror ++WERROR= + CFLAGS=-O2 -Wall -Wextra -Wshadow ${WERROR} + + SRCS = $(PROGRAM).c +diff --git a/util/bincfg/Makefile b/util/bincfg/Makefile +index dbcbc7711c..5f97f60f34 100644 +--- a/util/bincfg/Makefile ++++ b/util/bincfg/Makefile +@@ -3,7 +3,7 @@ CC = gcc + YACC = bison + LEX = flex + TARGET=bincfg +-WERROR=-Werror ++WERROR= + CFLAGS=-O2 -Wall -Wextra -Wshadow ${WERROR} + CFLAGS+=-Wno-unused-function + LDFLAGS= -lfl +diff --git a/util/bucts/Makefile b/util/bucts/Makefile +index d32258d1ec..50da491a8a 100644 +--- a/util/bucts/Makefile ++++ b/util/bucts/Makefile +@@ -3,7 +3,7 @@ CC:=gcc + OBJ:=bucts.o + TARGET=bucts + VERSION:=$(shell git describe) +-WERROR=-Werror ++WERROR= + CFLAGS=-O2 -Wall -Wextra -Wshadow ${WERROR} + + ifeq ($(shell uname), FreeBSD) +diff --git a/util/cbfstool/Makefile.mk b/util/cbfstool/Makefile.mk +index 315a9a751a..d195e4713a 100644 +--- a/util/cbfstool/Makefile.mk ++++ b/util/cbfstool/Makefile.mk +@@ -146,7 +146,7 @@ test_obj += fmap.o + test_obj += kv_pair.o + test_obj += valstr.o + +-TOOLCFLAGS ?= -Werror -Wall -Wextra -Wshadow ++TOOLCFLAGS ?= -Wall -Wextra -Wshadow + TOOLCFLAGS += -Wcast-qual -Wmissing-prototypes -Wredundant-decls -Wshadow + TOOLCFLAGS += -Wstrict-prototypes -Wwrite-strings + TOOLCFLAGS += -O2 +diff --git a/util/cbfstool/lz4/Makefile b/util/cbfstool/lz4/Makefile +index d624e84703..be484c805f 100644 +--- a/util/cbfstool/lz4/Makefile ++++ b/util/cbfstool/lz4/Makefile +@@ -72,10 +72,10 @@ cmake: + @cd cmake_unofficial; cmake CMakeLists.txt; $(MAKE) + + gpptest: clean +- $(MAKE) all CC=g++ CFLAGS="-O3 -I../lib -Wall -Wextra -Wundef -Wshadow -Wcast-align -Werror" ++ $(MAKE) all CC=g++ CFLAGS="-O3 -I../lib -Wall -Wextra -Wundef -Wshadow -Wcast-align" + + clangtest: clean +- CFLAGS="-O3 -Werror -Wconversion -Wno-sign-conversion" $(MAKE) all CC=clang ++ CFLAGS="-O3 -Wconversion -Wno-sign-conversion" $(MAKE) all CC=clang + + sanitize: clean + CFLAGS="-O3 -g -fsanitize=undefined" $(MAKE) test CC=clang FUZZER_TIME="-T1mn" NB_LOOPS=-i1 +@@ -84,8 +84,8 @@ staticAnalyze: clean + CFLAGS=-g clang-tidy $(CLANG_TIDY_CHECKS) $(CLANG_TIDY_ARGS) $(SRCS) + + armtest: clean +- CFLAGS="-O3 -Werror" $(MAKE) -C $(LZ4DIR) all CC=arm-linux-gnueabi-gcc +- CFLAGS="-O3 -Werror" $(MAKE) -C $(PRGDIR) bins CC=arm-linux-gnueabi-gcc ++ CFLAGS="-O3" $(MAKE) -C $(LZ4DIR) all CC=arm-linux-gnueabi-gcc ++ CFLAGS="-O3" $(MAKE) -C $(PRGDIR) bins CC=arm-linux-gnueabi-gcc + + versionsTest: clean + $(MAKE) -C versionsTest +diff --git a/util/cbmem/Makefile b/util/cbmem/Makefile +index c0dfcbdc52..fe2891be6d 100644 +--- a/util/cbmem/Makefile ++++ b/util/cbmem/Makefile +@@ -9,7 +9,7 @@ CC ?= $(CROSS_COMPILE)gcc + INSTALL ?= /usr/bin/env install + PREFIX ?= /usr/local + CFLAGS ?= -O2 +-WERROR=-Werror ++WERROR= + CFLAGS += -Wall -Wextra -Wmissing-prototypes -Wshadow $(WERROR) + CFLAGS += -std=gnu23 + CPPFLAGS += -I . -I $(ROOT)/commonlib/include -I $(ROOT)/commonlib/bsd/include +diff --git a/util/crossgcc/patches/gcc-15.2.0_libcpp.patch b/util/crossgcc/patches/gcc-15.2.0_libcpp.patch +index ba60732f72..f1dc6aa2d6 100644 +--- a/util/crossgcc/patches/gcc-15.2.0_libcpp.patch ++++ b/util/crossgcc/patches/gcc-15.2.0_libcpp.patch +@@ -1,4 +1,4 @@ +-GCC with `-Wformat-security -Werror=format-security` hardening options enabled ++GCC with `-Wformat-security =format-security` hardening options enabled + by default rejects some codes in libcpp. This patch fixes them. + + --- gcc-15-20250112/libcpp/expr.cc.bak +diff --git a/util/ectool/Makefile b/util/ectool/Makefile +index a90773e5c6..5724ac6009 100644 +--- a/util/ectool/Makefile ++++ b/util/ectool/Makefile +@@ -1,7 +1,7 @@ + ## SPDX-License-Identifier: GPL-2.0-only + + CC ?= gcc +-WERROR=-Werror ++WERROR= + CFLAGS = -O2 -Wall -Wextra -Wshadow $(WERROR) + PROGRAM = ectool + INSTALL ?= /usr/bin/env install +diff --git a/util/futility/Makefile.mk b/util/futility/Makefile.mk +index a7bcee50d3..ba930a046b 100644 +--- a/util/futility/Makefile.mk ++++ b/util/futility/Makefile.mk +@@ -10,7 +10,7 @@ $(VBOOT_FUTILITY): | check-openssl-presence + unset CFLAGS LDFLAGS; $(MAKE) -C $(VBOOT_SOURCE) \ + BUILD=$(VBOOT_HOST_BUILD) \ + CC="$(HOSTCC)" \ +- WERROR="-Werror -Wno-deprecated-declarations" \ ++ WERROR=" -Wno-deprecated-declarations" \ + PKG_CONFIG="$(HOSTPKGCONFIG)" \ + V=$(V) \ + USE_FLASHROM=0 \ +diff --git a/util/ifdtool/Makefile.mk b/util/ifdtool/Makefile.mk +index 53506469d3..57d192ccb8 100644 +--- a/util/ifdtool/Makefile.mk ++++ b/util/ifdtool/Makefile.mk +@@ -2,7 +2,7 @@ + + ifdtoolobj = ifdtool.o fmap.o kv_pair.o valstr.o + +-IFDTOOLCFLAGS = -O2 -g -Wall -Wextra -Wmissing-prototypes -Werror ++IFDTOOLCFLAGS = -O2 -g -Wall -Wextra -Wmissing-prototypes + IFDTOOLCFLAGS += -I$(top)/src/commonlib/include -I$(top)/src/commonlib/bsd/include + IFDTOOLCFLAGS += -I$(top)/util/cbfstool/flashmap + IFDTOOLCFLAGS += -include $(top)/src/commonlib/bsd/include/commonlib/bsd/compiler.h +diff --git a/util/intelvbttool/Makefile b/util/intelvbttool/Makefile +index 5c770dec9e..8963263354 100644 +--- a/util/intelvbttool/Makefile ++++ b/util/intelvbttool/Makefile +@@ -6,7 +6,7 @@ CC ?= gcc + INSTALL ?= /usr/bin/env install + PREFIX ?= /usr/local + CFLAGS ?= -O2 -g +-CFLAGS += -Wall -Werror ++CFLAGS += -Wall + CFLAGS += -I../../src/commonlib/include -I ../../src/commonlib/bsd/include + + all: $(PROGRAM) +diff --git a/util/kconfig/patches/0016-util-kconfig-confdata.c-fix-Werror-discarded-qualifi.patch b/util/kconfig/patches/0016-util-kconfig-confdata.c-fix-Werror-discarded-qualifi.patch +index a367256102..401061d6c5 100644 +--- a/util/kconfig/patches/0016-util-kconfig-confdata.c-fix-Werror-discarded-qualifi.patch ++++ b/util/kconfig/patches/0016-util-kconfig-confdata.c-fix-Werror-discarded-qualifi.patch +@@ -1,7 +1,7 @@ + From 2a1a1d1b305ab276279234f70410bb6486a2049f Mon Sep 17 00:00:00 2001 + From: Mike Banon <mikebdp2@gmail.com> + Date: Tue, 10 Mar 2026 00:14:58 +0100 +-Subject: [PATCH] util/kconfig/confdata.c: fix -Werror=discarded-qualifiers ++Subject: [PATCH] util/kconfig/confdata.c: fix =discarded-qualifiers + + In conf_read_simple(), strchr() is called on 'sym_name', which is + declared const char. The function returns a char that discards the +@@ -36,6 +36,6 @@ index 0105917..ae6ae2b 100644 + int i, def_flags; + - const char *warn_unknown, *sym_name; + + const char *warn_unknown; +- ++ + warn_unknown = getenv("KCONFIG_WARN_UNKNOWN_SYMBOLS"); + if (name) { +diff --git a/util/kconfig/patches/series b/util/kconfig/patches/series +index 31d446ef81..739bee9279 100644 +--- a/util/kconfig/patches/series ++++ b/util/kconfig/patches/series +@@ -8,4 +8,4 @@ + 0013-util-kconfig-detect-ncurses-on-FreeBSD.patch + 0014-util-kconfig-Move-Kconfig-deps-back-into-build-confi.patch + 0015-fix-incorrect-spdx-strings.patch +-0016-util-kconfig-confdata.c-fix-Werror-discarded-qualifi.patch ++0016-util-kconfig-confdata.c-fix-discarded-qualifi.patch +diff --git a/util/msrtool/configure b/util/msrtool/configure +index 659cbcd66b..0415e4d9c9 100755 +--- a/util/msrtool/configure ++++ b/util/msrtool/configure +@@ -133,7 +133,7 @@ CC=`findprog "compiler" "${CC}" clang gcc cc icc` || exit + INSTALL=`findprog "install" "${INSTALL}" install ginstall` || exit + + test -n "$DEBUG" && myCFLAGS="-O2 -g" || myCFLAGS="-Os" +-CFLAGS="${CFLAGS} ${myCFLAGS} -Wall -Werror" ++CFLAGS="${CFLAGS} ${myCFLAGS} -Wall " + + cat > .config.c << EOF + #include <pci/pci.h> +diff --git a/util/pmh7tool/Makefile b/util/pmh7tool/Makefile +index 0a2ebbe147..c04d7e9bf9 100644 +--- a/util/pmh7tool/Makefile ++++ b/util/pmh7tool/Makefile +@@ -1,7 +1,7 @@ + ## SPDX-License-Identifier: GPL-2.0-only + + CC = gcc +-CFLAGS = -O2 -Wall -Wextra -Werror ++CFLAGS = -O2 -Wall -Wextra + PROGRAM = pmh7tool + INSTALL = /usr/bin/env install + PREFIX = /usr/local +diff --git a/util/superiotool/Makefile b/util/superiotool/Makefile +index 2dcfc9e929..2aad3b92e5 100644 +--- a/util/superiotool/Makefile ++++ b/util/superiotool/Makefile +@@ -12,7 +12,7 @@ PREFIX ?= /usr/local + VERSION := -D'SUPERIOTOOL_VERSION="$(shell git describe 2>/dev/null)"' + + CFLAGS += -O2 -Wall -Wstrict-prototypes -Wundef -Wstrict-aliasing \ +- -Werror-implicit-function-declaration -std=c11 -pedantic $(VERSION) \ ++ -implicit-function-declaration -std=c11 -pedantic $(VERSION) \ + -Wno-variadic-macros -I $(TOP)/src/commonlib/bsd/include + LDFLAGS += -lz + +@@ -24,8 +24,8 @@ ifeq ($(OS_ARCH), Darwin) + LIBS = -framework IOKit -framework DirectHW -lpci -lz + endif + ifeq ($(OS_ARCH), FreeBSD) +-CFLAGS = -O2 -Wall -Werror -Wstrict-prototypes -Wundef -Wstrict-aliasing \ +- -Werror-implicit-function-declaration -std=c11 $(VERSION) \ ++CFLAGS = -O2 -Wall -Wstrict-prototypes -Wundef -Wstrict-aliasing \ ++ -implicit-function-declaration -std=c11 $(VERSION) \ + -I/usr/local/include + LDFLAGS += -L/usr/local/lib + LIBS = -lz +diff --git a/util/uio_usbdebug/Makefile b/util/uio_usbdebug/Makefile +index af1cc8e1ec..8a3603c41d 100644 +--- a/util/uio_usbdebug/Makefile ++++ b/util/uio_usbdebug/Makefile +@@ -30,7 +30,7 @@ KCONFIG_H := ../../src/include/kconfig.h + + CFLAGS += \ + -m32 -g \ +- -Wall -Wextra -Werror \ ++ -Wall -Wextra \ + -Wno-unused-parameter -Wno-error=sign-compare + CPPFLAGS += \ + -Iinclude/ \ +diff --git a/util/xcompile/xcompile b/util/xcompile/xcompile +index f88da69306..02d134c8e8 100755 +--- a/util/xcompile/xcompile ++++ b/util/xcompile/xcompile +@@ -124,7 +124,7 @@ testcc() { + local tmp_o="$TMPFILE.o" + rm -f "$tmp_c" "$tmp_o" + echo "void _start(void) {}" >"$tmp_c" +- "$cc" -nostdlib -Werror $cflags -c "$tmp_c" -o "$tmp_o" >/dev/null 2>&1 ++ "$cc" -nostdlib $cflags -c "$tmp_c" -o "$tmp_o" >/dev/null 2>&1 + } + + testld() { +-- +2.47.3 + diff --git a/config/module/coreboot/default/patches/0052-Remove-KCONFIG_WERROR.patch b/config/module/coreboot/default/patches/0052-Remove-KCONFIG_WERROR.patch new file mode 100644 index 00000000..1ef4162b --- /dev/null +++ b/config/module/coreboot/default/patches/0052-Remove-KCONFIG_WERROR.patch @@ -0,0 +1,94 @@ +From a0d7318453e1b4827175de4a848df85bff097f73 Mon Sep 17 00:00:00 2001 +From: Leah Rowe <leah@libreboot.org> +Date: Mon, 21 Sep 2026 11:20:54 +0100 +Subject: [PATCH 52/56] Remove KCONFIG_WERROR + +Signed-off-by: Leah Rowe <leah@libreboot.org> +--- + Documentation/getting_started/kconfig.md | 3 --- + Makefile | 4 ---- + util/kconfig/Makefile | 4 ---- + util/kconfig/confdata.c | 2 -- + util/kconfig/symbol.c | 2 -- + 5 files changed, 15 deletions(-) + +diff --git a/Documentation/getting_started/kconfig.md b/Documentation/getting_started/kconfig.md +index 2917c53aae..6c4102ba17 100644 +--- a/Documentation/getting_started/kconfig.md ++++ b/Documentation/getting_started/kconfig.md +@@ -99,9 +99,6 @@ included in the Linux version. + - KCONFIG_SPLITCONFIG=”directory name for individual SYMBOL.h files”. + coreboot sets this to $(obj)/config. + +-- KCONFIG_WERROR=value. Define to enable warnings as errors. This is enabled +- in coreboot, and should not be changed. +- + #### Used only for ‘make menuconfig’ + - MENUCONFIG_MODE=single_menu. Set to "single_menu" to enable. All other + values disable the option. This makes submenus appear below the menu option +diff --git a/Makefile b/Makefile +index 6a36b5968f..35576f3734 100644 +--- a/Makefile ++++ b/Makefile +@@ -31,7 +31,6 @@ KCONFIG_DEPENDENCIES := $(obj)/auto.conf.cmd + KCONFIG_SPLITCONFIG := $(obj)/config/ + KCONFIG_TRISTATE := $(obj)/tristate.conf + KCONFIG_NEGATIVES := 1 +-KCONFIG_WERROR := 1 + KCONFIG_WARN_UNKNOWN_SYMBOLS := 1 + KCONFIG_PACKAGE := CB.Config + KCONFIG_MAKEFILE_REAL ?= $(objk)/Makefile.real +@@ -39,9 +38,6 @@ KCONFIG_MAKEFILE_REAL ?= $(objk)/Makefile.real + COREBOOT_EXPORTS += KCONFIG_CONFIG KCONFIG_AUTOHEADER KCONFIG_AUTOCONFIG + COREBOOT_EXPORTS += KCONFIG_DEPENDENCIES KCONFIG_SPLITCONFIG KCONFIG_TRISTATE + COREBOOT_EXPORTS += KCONFIG_NEGATIVES +-ifeq ($(filter %config,$(MAKECMDGOALS)),) +-COREBOOT_EXPORTS += KCONFIG_WERROR +-endif + COREBOOT_EXPORTS += KCONFIG_WARN_UNKNOWN_SYMBOLS + COREBOOT_EXPORTS += KCONFIG_AUTOADS KCONFIG_PACKAGE + COREBOOT_EXPORTS += KCONFIG_RUSTCCFG +diff --git a/util/kconfig/Makefile b/util/kconfig/Makefile +index 76cc2c5e2c..45366936fc 100644 +--- a/util/kconfig/Makefile ++++ b/util/kconfig/Makefile +@@ -31,10 +31,6 @@ ifneq ($(findstring c, $(KBUILD_EXTRA_WARN)),) + export KCONFIG_WARN_UNKNOWN_SYMBOLS=1 + endif + +-ifneq ($(findstring e, $(KBUILD_EXTRA_WARN)),) +-export KCONFIG_WERROR=1 +-endif +- + # We need this, in case the user has it in its environment + unexport CONFIG_ + +diff --git a/util/kconfig/confdata.c b/util/kconfig/confdata.c +index ae6ae2b3d3..fa09647f44 100644 +--- a/util/kconfig/confdata.c ++++ b/util/kconfig/confdata.c +@@ -157,8 +157,6 @@ static int conf_lineno, conf_warnings; + + bool conf_errors(void) + { +- if (conf_warnings) +- return getenv("KCONFIG_WERROR"); + return false; + } + +diff --git a/util/kconfig/symbol.c b/util/kconfig/symbol.c +index 3afe5be2d4..1a24d458cb 100644 +--- a/util/kconfig/symbol.c ++++ b/util/kconfig/symbol.c +@@ -317,8 +317,6 @@ static void sym_warn_unmet_dep(struct symbol *sym) + + bool sym_dep_errors(void) + { +- if (sym_warnings) +- return getenv("KCONFIG_WERROR"); + return false; + } + +-- +2.47.3 + diff --git a/config/module/coreboot/default/patches/0053-use-std-gnu2x.patch b/config/module/coreboot/default/patches/0053-use-std-gnu2x.patch new file mode 100644 index 00000000..a1e437b8 --- /dev/null +++ b/config/module/coreboot/default/patches/0053-use-std-gnu2x.patch @@ -0,0 +1,156 @@ +From 47a2305433ea6b123ef6baf65f496b4583e198da Mon Sep 17 00:00:00 2001 +From: Leah Rowe <leah@libreboot.org> +Date: Mon, 21 Sep 2026 13:00:09 +0100 +Subject: [PATCH 53/56] use -std=gnu2x +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +equiv to gnu23 in practise, and fixes a build error +for a user who reported: + +cc: error: unrecognized command-line option ‘-std=gnu23’; did you mean ‘-std=gnu2x’? + +when building coreboot utils + +gnu2x is gnu23 in practise, on both gcc and clang. +we can just use this, and it won't break systems +that worked. + +the user did not say what compiler and compiler version +they were using (cbutils are built using hostcc in lbmk) + +Signed-off-by: Leah Rowe <leah@libreboot.org> +--- + Makefile.mk | 2 +- + payloads/libpayload/Makefile | 2 +- + tests/Makefile.common | 2 +- + util/amdfwtool/Makefile.mk | 2 +- + util/cbfstool/Makefile.mk | 2 +- + util/cbmem/Makefile | 2 +- + util/ifdtool/Makefile.mk | 2 +- + util/sconfig/Makefile.mk | 2 +- + util/supermicro/Makefile.mk | 2 +- + 13 files changed, 599 insertions(+), 9 deletions(-) + +diff --git a/Makefile.mk b/Makefile.mk +index 2c39d3d632..12e2368a8f 100644 +--- a/Makefile.mk ++++ b/Makefile.mk +@@ -530,7 +530,7 @@ endif + CFLAGS_common += -pipe + CFLAGS_common += -g + CFLAGS_common += -nostdinc +-CFLAGS_common += -std=gnu23 ++CFLAGS_common += -std=gnu2x + CFLAGS_common += -nostdlib + CFLAGS_common += -Wall + CFLAGS_common += -Wundef +diff --git a/payloads/libpayload/Makefile b/payloads/libpayload/Makefile +index 29c3fb199f..bb7c6f600f 100644 +--- a/payloads/libpayload/Makefile ++++ b/payloads/libpayload/Makefile +@@ -218,7 +218,7 @@ STRIP := $(STRIP_$(ARCH-y)) + AR := $(AR_$(ARCH-y)) + endif + +-CFLAGS += -std=gnu23 $(CFLAGS_$(ARCH-y)) ++CFLAGS += -std=gnu2x $(CFLAGS_$(ARCH-y)) + + ifeq ($(CONFIG_LP_COMPILER_LLVM_CLANG),y) + CC:=clang +diff --git a/tests/Makefile.common b/tests/Makefile.common +index c35e312a79..5c6f8ff798 100644 +--- a/tests/Makefile.common ++++ b/tests/Makefile.common +@@ -51,7 +51,7 @@ TEST_CFLAGS += -Wno-unknown-warning-option -Wno-source-mgr -Wno-main-return-type + TEST_CFLAGS += -Wno-array-compare -Wno-trigraphs + TEST_CFLAGS += -Wno-unused-but-set-variables + +-TEST_CFLAGS += -std=gnu23 -ffunction-sections -fdata-sections -fno-builtin ++TEST_CFLAGS += -std=gnu2x -ffunction-sections -fdata-sections -fno-builtin + + ifneq ($(filter-out 0,$(DEBUG)),) + TEST_CFLAGS += -Og -ggdb3 +diff --git a/util/amdfwtool/Makefile.mk b/util/amdfwtool/Makefile.mk +index f7dce01b71..ac09d083cf 100644 +--- a/util/amdfwtool/Makefile.mk ++++ b/util/amdfwtool/Makefile.mk +@@ -11,7 +11,7 @@ AMDFWTOOLCFLAGS :=-O2 -Wall -Wextra -Wshadow $(WERROR) + AMDFWTOOLCFLAGS += -I $(top)/src/commonlib/bsd/include + AMDFWTOOLCFLAGS += -I $(top)/src/ + AMDFWTOOLCFLAGS += -D_GNU_SOURCE # memmem() from string.h +-AMDFWTOOLCFLAGS += -std=gnu23 ++AMDFWTOOLCFLAGS += -std=gnu2x + AMDFWTOOLCFLAGS += -ffunction-sections -fdata-sections + + ifneq ($(PKG_CONFIG),) +diff --git a/util/cbfstool/Makefile.mk b/util/cbfstool/Makefile.mk +index d195e4713a..75e8f1797f 100644 +--- a/util/cbfstool/Makefile.mk ++++ b/util/cbfstool/Makefile.mk +@@ -175,7 +175,7 @@ HOSTCFLAGS += -fms-extensions + TOOLCFLAGS += -mno-ms-bitfields + endif + ifeq ($(shell uname -o 2>/dev/null), Cygwin) +-TOOLCFLAGS+=-std=gnu23 ++TOOLCFLAGS+=-std=gnu2x + TOOLCPPFLAGS+=-D_GNU_SOURCE + else + TOOLCFLAGS+=-std=c11 +diff --git a/util/cbmem/Makefile b/util/cbmem/Makefile +index fe2891be6d..bb305cee77 100644 +--- a/util/cbmem/Makefile ++++ b/util/cbmem/Makefile +@@ -11,7 +11,7 @@ PREFIX ?= /usr/local + CFLAGS ?= -O2 + WERROR= + CFLAGS += -Wall -Wextra -Wmissing-prototypes -Wshadow $(WERROR) +-CFLAGS += -std=gnu23 ++CFLAGS += -std=gnu2x + CPPFLAGS += -I . -I $(ROOT)/commonlib/include -I $(ROOT)/commonlib/bsd/include + CPPFLAGS += -include $(ROOT)/commonlib/bsd/include/commonlib/bsd/compiler.h + +diff --git a/util/ifdtool/Makefile.mk b/util/ifdtool/Makefile.mk +index 57d192ccb8..58bec4739c 100644 +--- a/util/ifdtool/Makefile.mk ++++ b/util/ifdtool/Makefile.mk +@@ -7,7 +7,7 @@ IFDTOOLCFLAGS += -I$(top)/src/commonlib/include -I$(top)/src/commonlib/bsd/inclu + IFDTOOLCFLAGS += -I$(top)/util/cbfstool/flashmap + IFDTOOLCFLAGS += -include $(top)/src/commonlib/bsd/include/commonlib/bsd/compiler.h + IFDTOOLCFLAGS += -D_DEFAULT_SOURCE # for endianness converting functions +-IFDTOOLCFLAGS += -std=gnu23 ++IFDTOOLCFLAGS += -std=gnu2x + + $(objutil)/ifdtool/%.o: $(top)/util/ifdtool/%.c + $(HOSTCC) $(IFDTOOLCFLAGS) $(HOSTCFLAGS) -c -o $@ $< +diff --git a/util/sconfig/Makefile.mk b/util/sconfig/Makefile.mk +index 9dcf5b5c71..cda1d81223 100644 +--- a/util/sconfig/Makefile.mk ++++ b/util/sconfig/Makefile.mk +@@ -6,7 +6,7 @@ sconfigobj += main.o + + SCONFIGFLAGS += -I$(top)/util/sconfig -I$(objutil)/sconfig + SCONFIGFLAGS += -I$(top)/src/commonlib/include -I$(top)/src/commonlib/bsd/include +-SCONFIGFLAGS += -std=gnu23 ++SCONFIGFLAGS += -std=gnu2x + + $(objutil)/sconfig: + mkdir -p $@ +diff --git a/util/supermicro/Makefile.mk b/util/supermicro/Makefile.mk +index f627b854bd..f5e0d7012c 100644 +--- a/util/supermicro/Makefile.mk ++++ b/util/supermicro/Makefile.mk +@@ -6,7 +6,7 @@ SMCBIOSINFOTOOL:= $(objutil)/supermicro/smcbiosinfo + $(SMCBIOSINFOTOOL): $(dir)/smcbiosinfo/smcbiosinfo.c + printf " HOSTCC Creating SMCBIOSINFO tool\n" + mkdir -p $(objutil)/supermicro +- $(HOSTCC) -std=gnu23 $(TOOLCPPFLAGS) $< -o $@ ++ $(HOSTCC) -std=gnu2x $(TOOLCPPFLAGS) $< -o $@ + + ifeq ($(CONFIG_VENDOR_SUPERMICRO),y) + ifneq ($(call strip_quotes, $(CONFIG_SUPERMICRO_BOARDID)),) + +-- +2.47.3 + diff --git a/config/module/coreboot/default/patches/0054-mb-dell-sklkbl_desktops-Enable-Coffee-Lake-CPU-suppo.patch b/config/module/coreboot/default/patches/0054-mb-dell-sklkbl_desktops-Enable-Coffee-Lake-CPU-suppo.patch new file mode 100644 index 00000000..50117c68 --- /dev/null +++ b/config/module/coreboot/default/patches/0054-mb-dell-sklkbl_desktops-Enable-Coffee-Lake-CPU-suppo.patch @@ -0,0 +1,29 @@ +From 33e43d984131b5573553af857beb0c5a1b3db763 Mon Sep 17 00:00:00 2001 +From: Ron Nazarov <ron@noisytoot.org> +Date: Sun, 21 Dec 2025 17:24:09 +0000 +Subject: [PATCH 54/56] mb/dell/sklkbl_desktops: Enable Coffee Lake CPU support + +Tested and working with i3-9100 on OptiPlex 5050 SFF, should work on +3050 Micro too. + +Change-Id: Ie2f8f5d6955b7fced12275f67d2f2c45669bc0ce +Signed-off-by: Ron Nazarov <ron@noisytoot.org> +--- + src/mainboard/dell/sklkbl_desktops/Kconfig | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/mainboard/dell/sklkbl_desktops/Kconfig b/src/mainboard/dell/sklkbl_desktops/Kconfig +index 098d43dc22..0dce6a90bf 100644 +--- a/src/mainboard/dell/sklkbl_desktops/Kconfig ++++ b/src/mainboard/dell/sklkbl_desktops/Kconfig +@@ -13,6 +13,7 @@ config BOARD_DELL_SKLKBL_DESKTOPS_COMMON + select MAINBOARD_HAS_LIBGFXINIT + select MAINBOARD_SUPPORTS_KABYLAKE_CPU + select MAINBOARD_SUPPORTS_SKYLAKE_CPU ++ select MAINBOARD_SUPPORTS_COFFEELAKE_CPU + select SKYLAKE_SOC_PCH_H + select SOC_INTEL_COMMON_BLOCK_HDA_VERB + select SOC_INTEL_KABYLAKE +-- +2.47.3 + diff --git a/config/module/coreboot/default/patches/0055-mb-dell-sklkbl_desktops-Enable-legacy-8254-timer.patch b/config/module/coreboot/default/patches/0055-mb-dell-sklkbl_desktops-Enable-legacy-8254-timer.patch new file mode 100644 index 00000000..dcae827f --- /dev/null +++ b/config/module/coreboot/default/patches/0055-mb-dell-sklkbl_desktops-Enable-legacy-8254-timer.patch @@ -0,0 +1,28 @@ +From bc353bd6ea7daf10f5b5883894bed1af1d056725 Mon Sep 17 00:00:00 2001 +From: Ron Nazarov <ron@noisytoot.org> +Date: Sun, 21 Dec 2025 17:29:16 +0000 +Subject: [PATCH 55/56] mb/dell/sklkbl_desktops: Enable legacy 8254 timer + +Without this, SeaBIOS hangs. + +Change-Id: I22a5fdc566e954ace00756beb7d2de3fd6621c7b +Signed-off-by: Ron Nazarov <ron@noisytoot.org> +--- + src/mainboard/dell/sklkbl_desktops/Kconfig | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/mainboard/dell/sklkbl_desktops/Kconfig b/src/mainboard/dell/sklkbl_desktops/Kconfig +index 0dce6a90bf..1fab8b41d5 100644 +--- a/src/mainboard/dell/sklkbl_desktops/Kconfig ++++ b/src/mainboard/dell/sklkbl_desktops/Kconfig +@@ -18,6 +18,7 @@ config BOARD_DELL_SKLKBL_DESKTOPS_COMMON + select SOC_INTEL_COMMON_BLOCK_HDA_VERB + select SOC_INTEL_KABYLAKE + select SUPERIO_SMSC_SCH555x ++ select USE_LEGACY_8254_TIMER # SeaBIOS hangs without this + + config BOARD_DELL_OPTIPLEX_3050 + bool +-- +2.47.3 + diff --git a/config/module/coreboot/default/patches/0056-mb-dell-sklkbl_desktops-Add-OptiPlex-5050-SFF-varian.patch b/config/module/coreboot/default/patches/0056-mb-dell-sklkbl_desktops-Add-OptiPlex-5050-SFF-varian.patch new file mode 100644 index 00000000..41b2155d --- /dev/null +++ b/config/module/coreboot/default/patches/0056-mb-dell-sklkbl_desktops-Add-OptiPlex-5050-SFF-varian.patch @@ -0,0 +1,703 @@ +From 576d0d86086566b67b3b664024015fa6ad0162b9 Mon Sep 17 00:00:00 2001 +From: Ron Nazarov <ron@noisytoot.org> +Date: Mon, 22 Dec 2025 03:11:56 +0000 +Subject: [PATCH 56/56] mb/dell/sklkbl_desktops: Add OptiPlex 5050 SFF variant + +- Boots Linux 6.12.41-0-lts and 6.18.0-3-lts (Alpine, tested with SeaBIOS and EDK II) +- Tested with i5-6500 and i3-9100 +- All external USB ports work +- Serial port works +- PS/2 works in SeaBIOS and Linux +- Intel Gigabit Ethernet works +- All 3 SATA ports work, M.2 slot SATA untested (I don't have a + compatible SSD to test with) +- Sound works +- DisplayPort and HDMI works (however, I only tested DisplayPort with + a DP->DVI adapter as I don't have a native DisplayPort monitor, and + libgfxinit required a patch in order to correctly initialize it) +- M.2 slot (PCIe), PCIe x4 slot, and PCIe x16 slot mostly work +- VGA port and SD card reader untested, as mine does not have these +- me_cleaner works, provided you use --whitelist MFS (deguard relies + on the MFS partition, it won't boot otherwise) +- SeaBIOS hangs if compiled without USE_LEGACY_8254_TIMER + +PCIe hotplug is disabled since it apparently causes Linux to randomly +rename NVMe devices, potentially resulting in data loss. I haven't +actually tested this on a 5050 SFF myself, but this issue also affects the +OptiPlex 3050 Micro and ThinkPad T480/T480s. Libreboot disables PCIe +hotplug on those boards for this reason, but the fix doesn't seem to +have been submitted upstream. + +I say that PCIe mostly works because with one of the cards I was +testing with (Mellanox CX312C): +- With stock firmware it works in both x4 and x16 slots, but only at + 2.5GT/s for some reason. +- With coreboot it works in the x4 slot (again, at 2.5GT/s), but + doesn't even enumerate on the x16 slot. +- On another machine (OptiPlex 9020 SFF with coreboot) it works in the + x4 slot (at 5GT/s), but does not reliably work in the x16 slot (it + sometimes fails to enumerate, sometimes the driver fails to load with + different error messages). +I'm not quite sure what's going on there. There's probably a coreboot +bug involved, but it doesn't work quite right with the stock firmware +either. The other card I tested with (Intel X520-DA2) works at 5GT/s +in both slots. + +Thanks to Nicholas Chin for telling me where to find the USB +overcurrent pin mapping and helping with PS/2 and PCIe. + +Change-Id: I8dc6ed29abc6c14171ed060cea9b58a07f01bd7b +Signed-off-by: Ron Nazarov <ron@noisytoot.org> +--- + src/mainboard/dell/sklkbl_desktops/Kconfig | 8 + + .../dell/sklkbl_desktops/Kconfig.name | 3 + + .../variants/optiplex_5050sff/board_info.txt | 7 + + .../variants/optiplex_5050sff/data.vbt | Bin 0 -> 6144 bytes + .../variants/optiplex_5050sff/early_gpio.c | 15 ++ + .../optiplex_5050sff/gma-mainboard.ads | 19 ++ + .../variants/optiplex_5050sff/gpio.c | 245 ++++++++++++++++++ + .../variants/optiplex_5050sff/hda_verb.c | 90 +++++++ + .../optiplex_5050sff/include/acpi/superio.asl | 3 + + .../variants/optiplex_5050sff/overridetree.cb | 97 +++++++ + .../variants/optiplex_5050sff/romstage.c | 20 ++ + 11 files changed, 507 insertions(+) + create mode 100644 src/mainboard/dell/sklkbl_desktops/variants/optiplex_5050sff/board_info.txt + create mode 100644 src/mainboard/dell/sklkbl_desktops/variants/optiplex_5050sff/data.vbt + create mode 100644 src/mainboard/dell/sklkbl_desktops/variants/optiplex_5050sff/early_gpio.c + create mode 100644 src/mainboard/dell/sklkbl_desktops/variants/optiplex_5050sff/gma-mainboard.ads + create mode 100644 src/mainboard/dell/sklkbl_desktops/variants/optiplex_5050sff/gpio.c + create mode 100644 src/mainboard/dell/sklkbl_desktops/variants/optiplex_5050sff/hda_verb.c + create mode 100644 src/mainboard/dell/sklkbl_desktops/variants/optiplex_5050sff/include/acpi/superio.asl + create mode 100644 src/mainboard/dell/sklkbl_desktops/variants/optiplex_5050sff/overridetree.cb + create mode 100644 src/mainboard/dell/sklkbl_desktops/variants/optiplex_5050sff/romstage.c + +diff --git a/src/mainboard/dell/sklkbl_desktops/Kconfig b/src/mainboard/dell/sklkbl_desktops/Kconfig +index 1fab8b41d5..d6ac6551fb 100644 +--- a/src/mainboard/dell/sklkbl_desktops/Kconfig ++++ b/src/mainboard/dell/sklkbl_desktops/Kconfig +@@ -24,6 +24,11 @@ config BOARD_DELL_OPTIPLEX_3050 + bool + select BOARD_DELL_SKLKBL_DESKTOPS_COMMON + ++config BOARD_DELL_OPTIPLEX_5050_SFF ++ bool ++ select BOARD_DELL_SKLKBL_DESKTOPS_COMMON ++ select MAINBOARD_USES_IFD_GBE_REGION ++ + if BOARD_DELL_SKLKBL_DESKTOPS_COMMON + + config MAINBOARD_DIR +@@ -31,9 +36,11 @@ config MAINBOARD_DIR + + config MAINBOARD_PART_NUMBER + default "OptiPlex 3050 Micro" if BOARD_DELL_OPTIPLEX_3050 ++ default "OptiPlex 5050 SFF" if BOARD_DELL_OPTIPLEX_5050_SFF + + config VARIANT_DIR + default "optiplex_3050" if BOARD_DELL_OPTIPLEX_3050 ++ default "optiplex_5050sff" if BOARD_DELL_OPTIPLEX_5050_SFF + + config OVERRIDE_DEVICETREE + default "variants/\$(CONFIG_VARIANT_DIR)/overridetree.cb" +@@ -46,6 +53,7 @@ config CBFS_SIZE + + config DIMM_SPD_SIZE + default 512 if BOARD_DELL_OPTIPLEX_3050 # DDR4 ++ default 512 if BOARD_DELL_OPTIPLEX_5050_SFF # DDR4 + + # Won't boot if MFS partition is missing, deguard requires it + config ME_CLEANER_ARGS +diff --git a/src/mainboard/dell/sklkbl_desktops/Kconfig.name b/src/mainboard/dell/sklkbl_desktops/Kconfig.name +index 14eab7f52c..e856f670ba 100644 +--- a/src/mainboard/dell/sklkbl_desktops/Kconfig.name ++++ b/src/mainboard/dell/sklkbl_desktops/Kconfig.name +@@ -2,3 +2,6 @@ + + config BOARD_DELL_OPTIPLEX_3050 + bool "OptiPlex 3050 Micro" ++ ++config BOARD_DELL_OPTIPLEX_5050_SFF ++ bool "OptiPlex 5050 SFF" +diff --git a/src/mainboard/dell/sklkbl_desktops/variants/optiplex_5050sff/board_info.txt b/src/mainboard/dell/sklkbl_desktops/variants/optiplex_5050sff/board_info.txt +new file mode 100644 +index 0000000000..5554c934c0 +--- /dev/null ++++ b/src/mainboard/dell/sklkbl_desktops/variants/optiplex_5050sff/board_info.txt +@@ -0,0 +1,7 @@ ++Category: desktop ++Board URL: https://www.dell.com/support/product-details/en-uk/product/optiplex-5050-sff/overview ++ROM package: SOIC-8 ++ROM protocol: SPI ++ROM socketed: n ++Flashrom support: y ++Release year: 2017 +diff --git a/src/mainboard/dell/sklkbl_desktops/variants/optiplex_5050sff/data.vbt b/src/mainboard/dell/sklkbl_desktops/variants/optiplex_5050sff/data.vbt +new file mode 100644 +index 0000000000000000000000000000000000000000..a4e2ee4ade83e0d0e79ff8814fba96d130e2b7c6 +GIT binary patch +literal 6144 +zcmeHKU2GIp6h1SvzjtP~vs09^U_Bthw$OIAK!sXmw!4L0+S1)_txGgv3%f|;LQ7jr +z@sBmugv4m}K@A!-O?=SQmnOz1V<a&u2~p8R^i5t&lxSii#us2b^Fv!8(hc#CxM%jv +zx%b?&-@WJDzcZ@`I|ne+y{jkM-GvV2L4$9VCG@_YI+J~w-SOx^ba!V@U#uIygxldQ +z<??xeJjX4QBAOOS9-Jr?!~G2e+k?F$dxndJmUv<O(TR~!OvREI-MhC?EQ}3J6!MrE +z+#W>}Q)Zoqhl_dKdHBGd!dN>JkVe)R+1R{cBVwebm3~@e6BV`gNL%}+Ei#LD#rk?v +z$)4yyvTrB$^<zAliDoigy`4R~FxB6eNOmR%y5cgMb0an~dSq<)k^K`Gjx}H__0eR3 +zT0_Rz$k=EzMvF!4H*LnTzc5}Hd#sRemYE515_~QWfOA7l2{^da3ZMfZfD1sG>w^py +zl&>x-z;EJsGGF5ZPu;>cf)}XnBSf6jqYJ*ufui`%`)nN{yPXow_oBmD%j%+IMS{8@ +zLJoPWU{xHefZtY;@K_~{L$hm}6!>I6^$6%#iB}r*1y*=P`Ois#+`afX_2;<F0cR3G +zfYV@~zaF*=VVDqjcv{#Dt6ZnR=SNuQSKxl)H1TOSgRhCdBmR;2SK>>=UJrvH@p9t3 +ziCc)b5XXpni60~$BK91Hiw0i;ujO-zb7at#pt#`01}L3y^d}s>{}+2Em?K3;RvI|N +z@Ot60@p&B>hVMRe1Uey*+g#j1N;tB|l7f(O>H{RrSY@5MVfb@YZKdb$cncOXI}LN2 +z%`m7Vi*D7DR0}(3CkeieDHoKyn_V5iee}94z$CDsv)9N$Rl2e$EpL~+0iKZUxVOWW +z*T4VGmXLWSEdPl=<7IHhdx1Mv``;{?QB!XCM4Z4HM$jQgQ5Dq)Tor*82{`L7mGRsi +ziZ8dyZmPdI&7BX^n&dg~(`C)mb?gF(F6}rZAiAJSYU5xfsS;#nn^>v@S>|9hgaPSa +zmdfSa`hHTn0TF7<4SE9#hoA<=uQe#m5CJs21j4-xhnPCf*i#JOWa@j2eaP^8rvA<t +zC*oRB-6FD>h{K}#gvg!~@f}h9KxCha__L@QBJ)ewBB@b{bxU|iQlFLB3lhF7sUJ)1 +z3kiRdRIki}GTtMrNttD2JR+;l%j{(t-<Q?TWcH1Wmt?gjz?KDYYd}p0*h2xiQFWL2 +zb6hDHuo4~Lm_%n!mX|Dffm2AjYu3^&cm1Ta9i_|O^j1P4%P)>FU4szGuE20<i5;W* +zwxc{vm5E>;=Zhocmw_IIHCo-VHXEU??WkboXM{jAZX$G0&h+PAXpL|@4Vtcv*4hX( +z26L$pNt5nSMF^9a4k@~_0D&u8*<XbSZ?{aIONZ9z+2iwL;L29cC+VKq3dWGws%v{@ +zTXp^9Jc7s0fTTfpC6U~>a&RUM_1d<wGZ$tg%hugVL#ZSVPd1mQbD?@&LuW21lCH9q +zok}HdC0>L(O4FmWcM(G4{9Kf+JVlyzPgSrUUTc^>lb%|orCwb+haiBJ8dD@ILC_lY +zQ@N?UR+qN(K_D*#T1@78xXCqXA;>m@8!PbQd<dpfxKxw0*t{2I+K)5_GrL)QU-0dv +zx<i|r^la1oTnKa)nFw@<c^2On4LamXP@7Yfp!qMb<6wO}Nj=+AyHi643&ov72MV`l +zr4UawO^h_rN3HGMBJXw2fM<uY7P2!tPEn@**S}eI#<+&~YiRv#@a#4kXOc4a2OtG` +qSkJuzKM2jU0LSL&mMCs;zF8NEdbPP4focS*5vWF>8iD_P1pWYFD8nBB + +literal 0 +HcmV?d00001 + +diff --git a/src/mainboard/dell/sklkbl_desktops/variants/optiplex_5050sff/early_gpio.c b/src/mainboard/dell/sklkbl_desktops/variants/optiplex_5050sff/early_gpio.c +new file mode 100644 +index 0000000000..1787d556ab +--- /dev/null ++++ b/src/mainboard/dell/sklkbl_desktops/variants/optiplex_5050sff/early_gpio.c +@@ -0,0 +1,15 @@ ++/* SPDX-License-Identifier: GPL-2.0-only */ ++ ++#include <soc/gpe.h> ++#include <soc/gpio.h> ++#include "../../../include/variant/gpio.h" ++ ++static const struct pad_config early_gpio_table[] = { ++ PAD_CFG_NF(GPP_C8, NONE, DEEP, NF1), /* UART0_RXD */ ++ PAD_CFG_NF(GPP_C9, NONE, DEEP, NF1), /* UART0_TXD */ ++}; ++ ++void variant_configure_early_gpios(void) ++{ ++ gpio_configure_pads(early_gpio_table, ARRAY_SIZE(early_gpio_table)); ++} +diff --git a/src/mainboard/dell/sklkbl_desktops/variants/optiplex_5050sff/gma-mainboard.ads b/src/mainboard/dell/sklkbl_desktops/variants/optiplex_5050sff/gma-mainboard.ads +new file mode 100644 +index 0000000000..f58e61cb8b +--- /dev/null ++++ b/src/mainboard/dell/sklkbl_desktops/variants/optiplex_5050sff/gma-mainboard.ads +@@ -0,0 +1,19 @@ ++-- SPDX-License-Identifier: GPL-2.0-or-later ++ ++with HW.GFX.GMA; ++with HW.GFX.GMA.Display_Probing; ++ ++use HW.GFX.GMA; ++use HW.GFX.GMA.Display_Probing; ++ ++private package GMA.Mainboard is ++ ++ ports : constant Port_List := ++ (HDMI1, -- External HDMI ++ DP2, -- External DP (native) ++ DP3, -- External DP (native) ++ HDMI2, -- External DP (DP++) ++ HDMI3, -- External DP (DP++) ++ others => Disabled); ++ ++end GMA.Mainboard; +diff --git a/src/mainboard/dell/sklkbl_desktops/variants/optiplex_5050sff/gpio.c b/src/mainboard/dell/sklkbl_desktops/variants/optiplex_5050sff/gpio.c +new file mode 100644 +index 0000000000..9a133a35de +--- /dev/null ++++ b/src/mainboard/dell/sklkbl_desktops/variants/optiplex_5050sff/gpio.c +@@ -0,0 +1,245 @@ ++/* SPDX-License-Identifier: GPL-2.0-only */ ++ ++#include <soc/gpe.h> ++#include <soc/gpio.h> ++#include "../../../include/variant/gpio.h" ++ ++static const struct pad_config gpio_table[] = { ++ ++ /* ------- GPIO Community 0 ------- */ ++ ++ /* ------- GPIO Group GPP_A ------- */ ++ PAD_CFG_NF(GPP_A0, UP_20K, PLTRST, NF1), /* RCIN# */ ++ PAD_CFG_NF(GPP_A1, UP_20K, PLTRST, NF1), /* LAD0 */ ++ PAD_CFG_NF(GPP_A2, UP_20K, PLTRST, NF1), /* LAD1 */ ++ PAD_CFG_NF(GPP_A3, UP_20K, PLTRST, NF1), /* LAD2 */ ++ PAD_CFG_NF(GPP_A4, UP_20K, PLTRST, NF1), /* LAD3 */ ++ PAD_CFG_NF(GPP_A5, NONE, PLTRST, NF1), /* LFRAME# */ ++ PAD_CFG_NF(GPP_A6, NONE, PLTRST, NF1), /* SERIRQ */ ++ PAD_CFG_GPI_TRIG_OWN(GPP_A7, NONE, DEEP, OFF, ACPI), /* GPIO */ ++ PAD_CFG_NF(GPP_A8, NONE, DEEP, NF1), /* CLKRUN# */ ++ PAD_CFG_NF(GPP_A9, NONE, PLTRST, NF1), /* CLKOUT_LPC0 */ ++ PAD_CFG_NF(GPP_A10, NONE, PLTRST, NF1), /* CLKOUT_LPC1 */ ++ PAD_CFG_NF(GPP_A11, UP_20K, DEEP, NF1), /* PME# */ ++ PAD_CFG_GPO(GPP_A12, 0, PLTRST), /* GPIO */ ++ PAD_CFG_NF(GPP_A13, NONE, PLTRST, NF1), /* SUSWARN#/SUSPWRDNACK */ ++ PAD_CFG_GPI_TRIG_OWN(GPP_A14, NONE, PLTRST, OFF, ACPI), /* GPIO */ ++ PAD_CFG_NF(GPP_A15, UP_20K, PLTRST, NF1), /* SUS_ACK# */ ++ PAD_CFG_GPO(GPP_A16, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_A17, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_A18, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_A19, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_A20, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_A21, 1, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_A22, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_A23, 0, PLTRST), /* GPIO */ ++ ++ /* ------- GPIO Group GPP_B ------- */ ++ PAD_CFG_GPO(GPP_B0, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_B1, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_B2, 0, DEEP), /* GPIO */ ++ PAD_CFG_GPO(GPP_B3, 1, RSMRST), /* GPIO (ME_CNTL, B3 -> LOW => HDA_SDO -> HIGH) */ ++ PAD_CFG_GPI_TRIG_OWN(GPP_B4, NONE, DEEP, OFF, ACPI), /* GPIO */ ++ PAD_CFG_GPO(GPP_B5, 1, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_B6, 1, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_B7, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPI_TRIG_OWN(GPP_B8, NONE, PLTRST, OFF, ACPI), /* GPIO */ ++ PAD_CFG_GPO(GPP_B9, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_B10, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPI_TRIG_OWN(GPP_B11, NONE, PLTRST, OFF, ACPI), /* GPIO */ ++ PAD_CFG_NF(GPP_B12, NONE, PLTRST, NF1), /* SLP_S0# */ ++ PAD_CFG_NF(GPP_B13, NONE, PLTRST, NF1), /* PLTRST# */ ++ PAD_CFG_NF(GPP_B14, DN_20K, PLTRST, NF1), /* SPKR */ ++ PAD_CFG_GPO(GPP_B15, 1, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_B16, 1, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_B17, 0, PLTRST), /* GPIO */ ++ PAD_CFG_NF(GPP_B18, DN_20K, DEEP, NF1), /* GSPIO_MOSI */ ++ PAD_CFG_GPO(GPP_B19, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_B20, 1, DEEP), /* GPIO */ ++ PAD_CFG_GPO(GPP_B21, 0, DEEP), /* GPIO */ ++ PAD_CFG_NF(GPP_B22, DN_20K, DEEP, NF1), /* GSPI1_MOSI */ ++ PAD_CFG_NF(GPP_B23, DN_20K, DEEP, NF2), /* PCHHOT# */ ++ ++ /* ------- GPIO Community 1 ------- */ ++ ++ /* ------- GPIO Group GPP_C ------- */ ++ PAD_CFG_NF(GPP_C0, NONE, DEEP, NF1), /* SMBCLK */ ++ PAD_CFG_NF(GPP_C1, NONE, DEEP, NF1), /* SMBDATA */ ++ PAD_CFG_GPI_TRIG_OWN(GPP_C2, DN_20K, DEEP, OFF, ACPI), /* GPIO */ ++ PAD_CFG_NF(GPP_C3, NONE, PLTRST, NF1), /* SML0CLK */ ++ PAD_CFG_NF(GPP_C4, NONE, PLTRST, NF1), /* SML0DATA */ ++ PAD_CFG_GPI_TRIG_OWN(GPP_C5, DN_20K, DEEP, OFF, ACPI), /* GPIO */ ++ PAD_CFG_NF(GPP_C6, NONE, DEEP, NF1), /* SML1CLK */ ++ PAD_CFG_NF(GPP_C7, NONE, DEEP, NF1), /* SML1DATA */ ++ PAD_CFG_NF(GPP_C8, NONE, DEEP, NF1), /* UART0_RXD */ ++ PAD_CFG_NF(GPP_C9, NONE, DEEP, NF1), /* UART0_TXD */ ++ PAD_CFG_GPO(GPP_C10, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_C11, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_C12, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_C13, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_C14, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_C15, 0, PLTRST), /* GPIO */ ++ PAD_CFG_NF(GPP_C16, NONE, PLTRST, NF1), /* I2C0_SDA */ ++ PAD_CFG_NF(GPP_C17, NONE, PLTRST, NF1), /* I2C0_SCL */ ++ PAD_CFG_GPO(GPP_C18, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_C19, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_C20, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_C21, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_C22, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPI_SCI(GPP_C23, NONE, DEEP, EDGE_SINGLE, INVERT), /* GPIO */ ++ ++ /* ------- GPIO Group GPP_D ------- */ ++ PAD_CFG_GPO(GPP_D0, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_D1, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_D2, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_D3, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_D4, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPI_TRIG_OWN(GPP_D5, NONE, DEEP, OFF, ACPI), /* GPIO */ ++ PAD_CFG_GPO(GPP_D6, 0, DEEP), /* GPIO */ ++ PAD_CFG_GPO(GPP_D7, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_D8, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_D9, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_D10, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_D11, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_D12, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_D13, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_D14, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_D15, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_D16, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_D17, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_D18, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_D19, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_D20, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_D21, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_D22, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_D23, 0, PLTRST), /* GPIO */ ++ ++ /* ------- GPIO Group GPP_E ------- */ ++ PAD_CFG_NF(GPP_E0, NONE, DEEP, NF1), /* SATAXPCIE0 */ ++ PAD_CFG_NF(GPP_E1, NONE, DEEP, NF1), /* SATAXPCIE1 */ ++ PAD_CFG_NF(GPP_E2, NONE, DEEP, NF1), /* SATAXPCIE2 */ ++ PAD_CFG_GPO(GPP_E3, 0, DEEP), /* GPIO */ ++ PAD_CFG_GPO(GPP_E4, 0, DEEP), /* GPIO */ ++ PAD_CFG_GPO(GPP_E5, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_E6, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPI_TRIG_OWN(GPP_E7, NONE, DEEP, OFF, ACPI), /* GPIO */ ++ PAD_CFG_NF(GPP_E8, NONE, PLTRST, NF1), /* SATA_LED# */ ++ PAD_CFG_NF(GPP_E9, UP_20K, PLTRST, NF1), /* USB_OC0# */ ++ PAD_CFG_NF(GPP_E10, UP_20K, PLTRST, NF1), /* USB_OC1# */ ++ PAD_CFG_NF(GPP_E11, UP_20K, PLTRST, NF1), /* USB_OC2# */ ++ PAD_CFG_NF(GPP_E12, UP_20K, PLTRST, NF1), /* USB_OC3# */ ++ ++ /* ------- GPIO Group GPP_F ------- */ ++ PAD_CFG_NF(GPP_F0, NONE, DEEP, NF1), /* SATAXPCIE3 */ ++ PAD_CFG_NF(GPP_F1, NONE, DEEP, NF1), /* SATAXPCIE4 */ ++ PAD_CFG_NF(GPP_F2, NONE, DEEP, NF1), /* SATAXPCIE5 */ ++ PAD_CFG_NF(GPP_F3, NONE, DEEP, NF1), /* SATAXPCIE6 */ ++ PAD_CFG_NF(GPP_F4, NONE, DEEP, NF1), /* SATAXPCIE7 */ ++ PAD_CFG_GPI_TRIG_OWN(GPP_F5, NONE, PLTRST, OFF, ACPI), /* GPIO */ ++ PAD_CFG_NF(GPP_F6, NONE, RSMRST, NF1), /* SATA_DEVSLP4 */ ++ PAD_CFG_GPO(GPP_F7, 1, PLTRST), /* GPIO */ ++ PAD_CFG_GPI_TRIG_OWN(GPP_F8, NONE, DEEP, OFF, ACPI), /* GPIO */ ++ PAD_CFG_GPO(GPP_F9, 0, RSMRST), /* GPIO */ ++ PAD_CFG_GPI_TRIG_OWN(GPP_F10, NONE, DEEP, OFF, ACPI), /* GPIO */ ++ PAD_CFG_GPI_TRIG_OWN(GPP_F11, NONE, PLTRST, OFF, ACPI), /* GPIO */ ++ PAD_CFG_GPI_TRIG_OWN(GPP_F12, NONE, PLTRST, OFF, ACPI), /* GPIO */ ++ PAD_CFG_GPO(GPP_F13, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPI_TRIG_OWN(GPP_F14, NONE, DEEP, OFF, ACPI), /* GPIO */ ++ PAD_CFG_NF(GPP_F15, UP_20K, DEEP, NF1), /* USB_OC4# */ ++ PAD_CFG_NF(GPP_F16, UP_20K, DEEP, NF1), /* USB_OC5# */ ++ PAD_CFG_NF(GPP_F17, UP_20K, PLTRST, NF1), /* USB_OC6# */ ++ PAD_CFG_TERM_GPO(GPP_F18, 0, UP_20K, DEEP), /* GPIO */ ++ PAD_CFG_GPO(GPP_F19, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_F20, 1, DEEP), /* GPIO */ ++ PAD_CFG_GPO(GPP_F21, 1, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_F22, 1, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_F23, 1, RSMRST), /* GPIO */ ++ ++ /* ------- GPIO Group GPP_G ------- */ ++ PAD_CFG_GPI_TRIG_OWN(GPP_G0, NONE, PLTRST, OFF, ACPI), /* GPIO */ ++ PAD_CFG_GPI_TRIG_OWN(GPP_G1, NONE, PLTRST, OFF, ACPI), /* GPIO */ ++ PAD_CFG_GPI_TRIG_OWN(GPP_G2, NONE, PLTRST, OFF, ACPI), /* GPIO */ ++ PAD_CFG_GPI_TRIG_OWN(GPP_G3, NONE, PLTRST, OFF, ACPI), /* GPIO */ ++ PAD_CFG_GPI_TRIG_OWN(GPP_G4, NONE, PLTRST, OFF, ACPI), /* GPIO */ ++ PAD_CFG_GPI_TRIG_OWN(GPP_G5, NONE, PLTRST, OFF, ACPI), /* GPIO */ ++ PAD_CFG_GPI_TRIG_OWN(GPP_G6, NONE, PLTRST, OFF, ACPI), /* GPIO */ ++ PAD_CFG_GPI_TRIG_OWN(GPP_G7, NONE, PLTRST, OFF, ACPI), /* GPIO */ ++ PAD_CFG_GPI_TRIG_OWN(GPP_G8, NONE, PLTRST, OFF, ACPI), /* GPIO */ ++ PAD_CFG_GPO(GPP_G9, 1, PLTRST), /* GPIO */ ++ PAD_CFG_GPI_TRIG_OWN(GPP_G10, NONE, DEEP, OFF, ACPI), /* GPIO */ ++ PAD_CFG_GPI_TRIG_OWN(GPP_G11, NONE, DEEP, OFF, ACPI), /* GPIO */ ++ PAD_CFG_GPO(GPP_G12, 1, DEEP), /* GPIO */ ++ PAD_CFG_GPI_TRIG_OWN(GPP_G13, NONE, DEEP, OFF, ACPI), /* GPIO */ ++ PAD_CFG_GPO(GPP_G14, 0, DEEP), /* GPIO */ ++ PAD_CFG_GPO(GPP_G15, 1, DEEP), /* GPIO */ ++ PAD_CFG_GPO(GPP_G16, 1, DEEP), /* GPIO */ ++ PAD_CFG_GPO(GPP_G17, 1, DEEP), /* GPIO */ ++ PAD_CFG_GPO(GPP_G18, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_G19, 1, DEEP), /* GPIO */ ++ PAD_CFG_GPO(GPP_G20, 1, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_G21, 0, DEEP), /* GPIO */ ++ PAD_CFG_GPO(GPP_G22, 0, DEEP), /* GPIO */ ++ PAD_CFG_GPO(GPP_G23, 0, PLTRST), /* GPIO */ ++ ++ /* ------- GPIO Group GPP_H ------- */ ++ PAD_CFG_GPO(GPP_H0, 0, DEEP), /* GPIO */ ++ PAD_CFG_GPO(GPP_H1, 1, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_H2, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_H3, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_H4, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_H5, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_H6, 1, DEEP), /* GPIO */ ++ PAD_CFG_GPO(GPP_H7, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_H8, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_H9, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_H10, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_H11, 0, PLTRST), /* GPIO */ ++ PAD_CFG_TERM_GPO(GPP_H12, 1, DN_20K, DEEP), /* GPIO */ ++ PAD_CFG_GPO(GPP_H13, 1, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_H14, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_H15, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_H16, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_H17, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_H18, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_H19, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_H20, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_H21, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_H22, 0, PLTRST), /* GPIO */ ++ PAD_CFG_GPO(GPP_H23, 0, PLTRST), /* GPIO */ ++ ++ /* ------- GPIO Community 2 ------- */ ++ ++ /* -------- GPIO Group GPD -------- */ ++ PAD_CFG_NF(GPD0, NONE, RSMRST, NF1), /* BATLOW# */ ++ PAD_CFG_GPO(GPD1, 0, PWROK), /* GPIO */ ++ PAD_CFG_NF(GPD2, NONE, RSMRST, NF1), /* LAN_WAKE# */ ++ PAD_CFG_NF(GPD3, UP_20K, RSMRST, NF1), /* PWRBTN# */ ++ PAD_CFG_NF(GPD4, NONE, RSMRST, NF1), /* SLP_S3# */ ++ PAD_CFG_NF(GPD5, NONE, RSMRST, NF1), /* SLP_S4# */ ++ PAD_CFG_NF(GPD6, NONE, RSMRST, NF1), /* SLP_A# */ ++ PAD_CFG_GPO(GPD7, 1, RSMRST), /* GPIO */ ++ PAD_CFG_NF(GPD8, NONE, RSMRST, NF1), /* SUSCLK */ ++ PAD_CFG_NF(GPD9, NONE, RSMRST, NF1), /* SLP_WLAN# */ ++ PAD_CFG_NF(GPD10, NONE, RSMRST, NF1), /* SLP_S5# */ ++ PAD_CFG_GPO(GPD11, 1, RSMRST), /* GPIO */ ++ ++ /* ------- GPIO Community 3 ------- */ ++ ++ /* ------- GPIO Group GPP_I ------- */ ++ PAD_CFG_NF(GPP_I0, NONE, PLTRST, NF1), /* DDPB_HPD0 */ ++ PAD_CFG_NF(GPP_I1, NONE, PLTRST, NF1), /* DDPC_HPD1 */ ++ PAD_CFG_NF(GPP_I2, NONE, PLTRST, NF1), /* DDPD_HPD2 */ ++ PAD_CFG_NF(GPP_I3, NONE, PLTRST, NF1), /* DDPE_HPD3 */ ++ PAD_CFG_NF(GPP_I4, NONE, PLTRST, NF1), /* EDP_HPD */ ++ PAD_CFG_NF(GPP_I5, NONE, PLTRST, NF1), /* DDPB_CTRLCLK */ ++ PAD_CFG_NF(GPP_I6, DN_20K, PLTRST, NF1), /* DDPB_CTRLDATA */ ++ PAD_CFG_NF(GPP_I7, NONE, PLTRST, NF1), /* DDPC_CTRLCLK */ ++ PAD_CFG_NF(GPP_I8, DN_20K, PLTRST, NF1), /* DDPC_CTRLDATA */ ++ PAD_CFG_NF(GPP_I9, NONE, PLTRST, NF1), /* DDPD_CTRLCLK */ ++ PAD_CFG_NF(GPP_I10, DN_20K, PLTRST, NF1), /* DDPD_CTRLDATA */ ++}; ++ ++void variant_configure_gpios(void) ++{ ++ gpio_configure_pads(gpio_table, ARRAY_SIZE(gpio_table)); ++} +diff --git a/src/mainboard/dell/sklkbl_desktops/variants/optiplex_5050sff/hda_verb.c b/src/mainboard/dell/sklkbl_desktops/variants/optiplex_5050sff/hda_verb.c +new file mode 100644 +index 0000000000..929bcee5ad +--- /dev/null ++++ b/src/mainboard/dell/sklkbl_desktops/variants/optiplex_5050sff/hda_verb.c +@@ -0,0 +1,90 @@ ++/* SPDX-License-Identifier: GPL-2.0-only */ ++ ++#include <device/azalia_device.h> ++ ++const u32 cim_verb_data[] = { ++ /* coreboot specific header, codec 0 */ ++ 0x10ec0255, /* Realtek ALC3234 */ ++ 0x102807a2, /* Subsystem ID */ ++ 11, /* Number of entries */ ++ ++ /* Pin Widget Verb Table */ ++ ++ AZALIA_SUBVENDOR(0, 0x102807a2), ++ ++ AZALIA_PIN_CFG(0, 0x12, 0x40000000), // does not describe a jack or internal device ++ AZALIA_PIN_CFG(0, 0x14, AZALIA_PIN_DESC( ++ AZALIA_INTEGRATED, ++ AZALIA_INTERNAL, ++ AZALIA_SPEAKER, ++ AZALIA_OTHER_ANALOG, ++ AZALIA_COLOR_UNKNOWN, ++ AZALIA_NO_JACK_PRESENCE_DETECT, ++ 3, 0 ++ )), ++ AZALIA_PIN_CFG(0, 0x17, AZALIA_PIN_CFG_NC(0)), ++ AZALIA_PIN_CFG(0, 0x18, AZALIA_PIN_CFG_NC(0)), ++ AZALIA_PIN_CFG(0, 0x19, AZALIA_PIN_CFG_NC(0)), ++ AZALIA_PIN_CFG(0, 0x1a, AZALIA_PIN_CFG_NC(0)), ++ AZALIA_PIN_CFG(0, 0x1b, AZALIA_PIN_DESC( ++ AZALIA_JACK, ++ AZALIA_EXTERNAL_PRIMARY_CHASSIS | AZALIA_REAR, ++ AZALIA_LINE_OUT, ++ AZALIA_STEREO_MONO_1_8, ++ AZALIA_BLACK, ++ AZALIA_JACK_PRESENCE_DETECT, ++ 2, 0 ++ )), ++ AZALIA_PIN_CFG(0, 0x1d, 0x4054c029), // does not describe a jack or internal device ++ AZALIA_PIN_CFG(0, 0x1e, AZALIA_PIN_CFG_NC(0)), ++ AZALIA_PIN_CFG(0, 0x21, AZALIA_PIN_DESC( ++ AZALIA_JACK, ++ AZALIA_EXTERNAL_PRIMARY_CHASSIS | AZALIA_FRONT, ++ AZALIA_HP_OUT, ++ AZALIA_STEREO_MONO_1_8, ++ AZALIA_BLACK, ++ AZALIA_JACK_PRESENCE_DETECT, ++ 3, 15 ++ )), ++ ++ /* coreboot specific header, codec 2 */ ++ 0x80862809, /* Intel Skylake HDMI */ ++ 0x80860101, /* Subsystem ID */ ++ 4, /* Number of entries */ ++ ++ /* Pin Widget Verb Table */ ++ ++ AZALIA_SUBVENDOR(2, 0x80860101), ++ ++ AZALIA_PIN_CFG(2, 0x05, AZALIA_PIN_DESC( ++ AZALIA_JACK, ++ AZALIA_DIGITAL_DISPLAY, ++ AZALIA_DIGITAL_OTHER_OUT, ++ AZALIA_OTHER_DIGITAL, ++ AZALIA_COLOR_UNKNOWN, ++ AZALIA_JACK_PRESENCE_DETECT, ++ 1, 0 ++ )), ++ AZALIA_PIN_CFG(2, 0x06, AZALIA_PIN_DESC( ++ AZALIA_JACK, ++ AZALIA_DIGITAL_DISPLAY, ++ AZALIA_DIGITAL_OTHER_OUT, ++ AZALIA_OTHER_DIGITAL, ++ AZALIA_COLOR_UNKNOWN, ++ AZALIA_JACK_PRESENCE_DETECT, ++ 1, 0 ++ )), ++ AZALIA_PIN_CFG(2, 0x07, AZALIA_PIN_DESC( ++ AZALIA_JACK, ++ AZALIA_DIGITAL_DISPLAY, ++ AZALIA_DIGITAL_OTHER_OUT, ++ AZALIA_OTHER_DIGITAL, ++ AZALIA_COLOR_UNKNOWN, ++ AZALIA_JACK_PRESENCE_DETECT, ++ 1, 0 ++ )), ++}; ++ ++const u32 pc_beep_verbs[] = {}; ++ ++AZALIA_ARRAY_SIZES; +diff --git a/src/mainboard/dell/sklkbl_desktops/variants/optiplex_5050sff/include/acpi/superio.asl b/src/mainboard/dell/sklkbl_desktops/variants/optiplex_5050sff/include/acpi/superio.asl +new file mode 100644 +index 0000000000..55b1db5b11 +--- /dev/null ++++ b/src/mainboard/dell/sklkbl_desktops/variants/optiplex_5050sff/include/acpi/superio.asl +@@ -0,0 +1,3 @@ ++/* SPDX-License-Identifier: GPL-2.0-only */ ++ ++#include <drivers/pc80/pc/ps2_controller.asl> +diff --git a/src/mainboard/dell/sklkbl_desktops/variants/optiplex_5050sff/overridetree.cb b/src/mainboard/dell/sklkbl_desktops/variants/optiplex_5050sff/overridetree.cb +new file mode 100644 +index 0000000000..87c0e25b3e +--- /dev/null ++++ b/src/mainboard/dell/sklkbl_desktops/variants/optiplex_5050sff/overridetree.cb +@@ -0,0 +1,97 @@ ++## SPDX-License-Identifier: GPL-2.0-only ++ ++chip soc/intel/skylake ++ ++ device domain 0 on ++ ++ subsystemid 0x1028 0x07a2 inherit ++ ++ device ref south_xhci on ++ register "usb2_ports" = "{ ++ [0] = USB2_PORT_MID(OC0), // Back panel (black) ++ [1] = USB2_PORT_MID(OC0), // Front panel (black) ++ [2] = USB2_PORT_MID(OC2), // Front panel (black) ++ [3] = USB2_PORT_MID(OC1), // Back panel (black) ++ [4] = USB2_PORT_MID(OC1), // Back panel (blue) ++ [5] = USB2_PORT_MID(OC3), // Back panel (blue) ++ [6] = USB2_PORT_MID(OC2), // Back panel (blue) ++ [7] = USB2_PORT_MID(OC3), // Back panel (blue) ++ [8] = USB2_PORT_MID(OC4), // Front panel (blue) ++ [9] = USB2_PORT_MID(OC6), // Front panel (blue) ++ [10] = USB2_PORT_MID(OC_SKIP), // Unknown ++ [11] = USB2_PORT_MID(OC5), // Unknown ++ [12] = USB2_PORT_MID(OC5), // Unknown ++ [13] = USB2_PORT_MID(OC_SKIP), // Unknown ++ [14] = USB2_PORT_MID(OC0), // Unknown ++ [15] = USB2_PORT_MID(OC0), // Unknown ++ }" ++ register "usb3_ports" = "{ ++ [0] = USB3_PORT_DEFAULT(OC0), // Front panel (blue) ++ [1] = USB3_PORT_DEFAULT(OC0), // Front panel (blue) ++ [2] = USB3_PORT_DEFAULT(OC1), // Back panel (blue) ++ [3] = USB3_PORT_DEFAULT(OC1), // Back panel (blue) ++ [4] = USB3_PORT_DEFAULT(OC2), // Back panel (blue) ++ [5] = USB3_PORT_DEFAULT(OC2), // Back panel (blue) ++ }" ++ end ++ ++ device ref sata on ++ register "SataSalpSupport" = "1" ++ register "SataPortsEnable[0]" = "1" ++ register "SataPortsEnable[1]" = "1" ++ register "SataPortsEnable[2]" = "1" ++ register "SataPortsEnable[3]" = "1" ++ end ++ ++ # Intel Gigabit Ethernet ++ device ref gbe on ++ register "PcieRpClkReqSupport[4]" = "0" ++ register "PcieRpHotPlug[4]" = "0" ++ end ++ ++ device ref lpc_espi on ++ # SCH5553 ++ chip superio/smsc/sch555x ++ device pnp 2e.0 on # EMI ++ io 0x60 = 0xa00 ++ end ++ device pnp 2e.1 on # 8042 ++ io 0x60 = 0x60 ++ irq 0x0f = 0 ++ irq 0x70 = 1 ++ irq 0x72 = 12 ++ end ++ device pnp 2e.7 on # UART1 ++ io 0x60 = 0x3f8 ++ irq 0x0f = 2 ++ irq 0x70 = 4 ++ end ++ device pnp 2e.8 off end # UART2 ++ device pnp 2e.c on # LPC interface ++ io 0x60 = 0x2e ++ end ++ device pnp 2e.a on # Runtime registers ++ io 0x60 = 0xa40 ++ end ++ device pnp 2e.b off end # Floppy Controller ++ device pnp 2e.11 off end # Parallel Port ++ end ++ end ++ ++ # PCIe x16 ++ device ref peg0 on ++ end ++ ++ # PCIe x4 ++ device ref pcie_rp9 on ++ register "PcieRpAdvancedErrorReporting[8]" = "1" ++ register "PcieRpLtrEnable[8]" = "true" ++ end ++ ++ # M.2 SSD ++ device ref pcie_rp17 on ++ register "PcieRpAdvancedErrorReporting[16]" = "1" ++ register "PcieRpLtrEnable[16]" = "true" ++ end ++ end ++end +diff --git a/src/mainboard/dell/sklkbl_desktops/variants/optiplex_5050sff/romstage.c b/src/mainboard/dell/sklkbl_desktops/variants/optiplex_5050sff/romstage.c +new file mode 100644 +index 0000000000..1784eb9a11 +--- /dev/null ++++ b/src/mainboard/dell/sklkbl_desktops/variants/optiplex_5050sff/romstage.c +@@ -0,0 +1,20 @@ ++/* SPDX-License-Identifier: GPL-2.0-only */ ++ ++#include <soc/romstage.h> ++#include <spd_bin.h> ++ ++void mainboard_memory_init_params(FSPM_UPD *mupd) ++{ ++ struct spd_block blk = { .addr_map = { 0x50, 0x51, 0x52, 0x53, } }; ++ get_spd_smbus(&blk); ++ dump_spd_info(&blk); ++ ++ FSP_M_CONFIG *mem_cfg = &mupd->FspmConfig; ++ mem_cfg->DqPinsInterleaved = true; ++ mem_cfg->CaVrefConfig = 2; ++ mem_cfg->MemorySpdDataLen = blk.len; ++ mem_cfg->MemorySpdPtr00 = (uintptr_t)blk.spd_array[0]; ++ mem_cfg->MemorySpdPtr10 = (uintptr_t)blk.spd_array[2]; ++ mem_cfg->MemorySpdPtr01 = (uintptr_t)blk.spd_array[1]; ++ mem_cfg->MemorySpdPtr11 = (uintptr_t)blk.spd_array[3]; ++} +-- +2.47.3 + diff --git a/config/module/coreboot/default/patches/0057-5050sff-disable-hotplug-on-pcie-x4-and-m2-slot.patch b/config/module/coreboot/default/patches/0057-5050sff-disable-hotplug-on-pcie-x4-and-m2-slot.patch new file mode 100644 index 00000000..04919f58 --- /dev/null +++ b/config/module/coreboot/default/patches/0057-5050sff-disable-hotplug-on-pcie-x4-and-m2-slot.patch @@ -0,0 +1,42 @@ +From 76ee3bd2fc48cada3094798bc4f1c3f77f404a66 Mon Sep 17 00:00:00 2001 +From: Leah Rowe <leah@libreboot.org> +Date: Mon, 21 Sep 2026 19:49:34 +0100 +Subject: [PATCH 1/1] 5050sff: disable hotplug on pcie x4 and m2 slot + +hotplug is buggy with nvme ssds on these boards, when +using fsp. the device names get bumped in linux, which +can cause a crash (or if they're on a raid array, they +drop out of the array) + +ron forgot to add them here. i'm not even going to +entertain testing this board without this patch, as +turning off hotplug doesn't really affect anything +anyway, so there's no harm in doing it. + +Signed-off-by: Leah Rowe <leah@libreboot.org> +--- + .../sklkbl_desktops/variants/optiplex_5050sff/overridetree.cb | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/src/mainboard/dell/sklkbl_desktops/variants/optiplex_5050sff/overridetree.cb b/src/mainboard/dell/sklkbl_desktops/variants/optiplex_5050sff/overridetree.cb +index 87c0e25b3e..a6d7e72fd1 100644 +--- a/src/mainboard/dell/sklkbl_desktops/variants/optiplex_5050sff/overridetree.cb ++++ b/src/mainboard/dell/sklkbl_desktops/variants/optiplex_5050sff/overridetree.cb +@@ -86,12 +86,14 @@ chip soc/intel/skylake + device ref pcie_rp9 on + register "PcieRpAdvancedErrorReporting[8]" = "1" + register "PcieRpLtrEnable[8]" = "true" ++ register "PcieRpHotPlug[8]" = "0" + end + + # M.2 SSD + device ref pcie_rp17 on + register "PcieRpAdvancedErrorReporting[16]" = "1" + register "PcieRpLtrEnable[16]" = "true" ++ register "PcieRpHotPlug[16]" = "0" + end + end + end +-- +2.47.3 + diff --git a/config/module/coreboot/default/target.cfg b/config/module/coreboot/default/target.cfg index 15337647..460dc684 100644 --- a/config/module/coreboot/default/target.cfg +++ b/config/module/coreboot/default/target.cfg @@ -1,5 +1,5 @@ # SPDX-License-Identifier: GPL-3.0-or-later -rev="ed5a993f0f98a47d5e780e375e5861860019b183" +rev="8ce4c91c41da3f042979f92095149a85bc93227d" tree="default" |
