From 9dc3c86ae37db781b6bc4e745a57217c3511074b Mon Sep 17 00:00:00 2001 From: Leah Rowe Date: Mon, 2 Dec 2024 06:12:59 +0000 Subject: vendor.sh: Remove T480 VGA ROM download handling Libreboot's binary blob reduction policy is crystal clear: If a blob can be avoided, it must be avoided. The ThinkPad T480 was using Intel's VGA ROM for graphics initialisation very briefly, before Mate fixed libgfxinit. Since libgfxinit is fixed, the Intel VGA ROM is obsolete, so we should not be handling this at all. Similarly, the Nvidia ROM handling has been removed, because Mate is hard-disabling that in the coreboot code anyway, since the Nvidia dGPU didn't work when tested anyway. Even if it did, Libreboot's blob policy makes it clear that Intel graphics with native init from coreboot is to be the preferred option. Signed-off-by: Leah Rowe --- config/vendor/t480/pkg.cfg | 5 ----- include/vendor.sh | 54 ++-------------------------------------------- 2 files changed, 2 insertions(+), 57 deletions(-) diff --git a/config/vendor/t480/pkg.cfg b/config/vendor/t480/pkg.cfg index c528ce02..0088b2b5 100644 --- a/config/vendor/t480/pkg.cfg +++ b/config/vendor/t480/pkg.cfg @@ -2,11 +2,6 @@ DL_hash="df735a24242792bf4150f30bf0bd4fdbdc0fb6bf0f897ea533df32567be8e084006d692 DL_url="https://dl.dell.com/FOLDER04573471M/1/Inspiron_5468_1.3.0.exe" DL_url_bkup="https://web.archive.org/web/20241110222323/https://dl.dell.com/FOLDER04573471M/1/Inspiron_5468_1.3.0.exe" -# VGA ROM, Intel VGA pci8086,5917.rom -T480_VGA_DL_hash="cedf859b95b96f09135c1a4824b25c0204f598e2b5a2d5d5adc6ef3401e8e3c4204a55ebc6c9d85c25c618c616c122d2a2239916be7164ada22c357e68136c1d" -T480_VGA_DL_url="https://download.lenovo.com/pccbbs/mobiles/n24ur39w.iso" -T480_VGA_DL_url_bkup="https://web.archive.org/web/20241005213051/https://download.lenovo.com/pccbbs/mobiles/n24ur39w.iso" - # We will use deguard to disable the Intel Boot Guard: ME11bootguard="y" ME11delta="thinkpad_t480" # subdirectory under deguard's data/delta/ diff --git a/include/vendor.sh b/include/vendor.sh index 1ee92f46..201359d7 100644 --- a/include/vendor.sh +++ b/include/vendor.sh @@ -79,34 +79,12 @@ getfiles() "$CONFIG_SMSC_SCH5545_EC_FW_FILE" [ -z "$CONFIG_KBC1126_FIRMWARE" ] || fetch kbc1126ec "$EC_url" \ "$EC_url_bkup" "$EC_hash" "$CONFIG_KBC1126_FW1" - [ -z "$CONFIG_VGA_BIOS_FILE" ] || fetch_vgarom + [ -z "$CONFIG_VGA_BIOS_FILE" ] || fetch e6400vga "$E6400_VGA_DL_url" \ + "$E6400_VGA_DL_url_bkup" "$E6400_VGA_DL_hash" "$CONFIG_VGA_BIOS_FILE" [ -z "$CONFIG_HAVE_MRC" ] || fetch "mrc" "$MRC_url" "$MRC_url_bkup" \ "$MRC_hash" "$CONFIG_MRC_FILE"; return 0 } -fetch_vgarom() -{ - if [ "$board" = "e6400_4mb" ] || [ "$board" = "e6400nvidia_4mb" ]; then - fetch_vgarom_e6400 - elif [ "$board" = "t480_fsp_16mb" ]; then - fetch_vgarom_t480 - else - $err "coreboot/$board: VGA ROM extraction not supported yet!" - fi -} - -fetch_vgarom_e6400() -{ - fetch e6400vga "$E6400_VGA_DL_url" "$E6400_VGA_DL_url_bkup" \ - "$E6400_VGA_DL_hash" "$CONFIG_VGA_BIOS_FILE" -} - -fetch_vgarom_t480() -{ - fetch t480vga "$T480_VGA_DL_url" "$T480_VGA_DL_url_bkup" \ - "$T480_VGA_DL_hash" "$CONFIG_VGA_BIOS_FILE" -} - fetch() { dl_type="$1"; dl="$2"; dl_bkup="$3"; dlsum="$4"; _dest="${5##*../}" @@ -240,34 +218,6 @@ extract_e6400vga() $err "extract_e6400vga $board: can't copy vga rom to $_dest" } -extract_t480vga() -{ - _img="$appdir/vendor.img" - _imgp1="$appdir/vendor_p1.img" - _imguefi="$appdir/update.cap" - _intelvga="$appdir/intelvga/body.bin" - _nvvga="$appdir/nvvga/body.bin" - _intelrom="pciroms/pci8086,5917.rom" - _nvrom="pciroms/pci10de,1d10.rom" - - [ -f "$_nvrom" ] && [ "$_intelrom" ] && return 0 - - x_ mkdir -p pciroms - - # extract the system rom (i.e. factory.rom) - dd skip=32 if="$appdir/vendor.img" of="$_imgp1" - mcopy -i "$_imgp1" ::/FLASH/N24ET77W/\$0AN2400.FL1 "$_imguefi" - - # extract vga roms from system rom - $uefiextract "$_imguefi" 6A5F1EF9-C478-42BA-A4DB-C7846CC7DB57 \ - -m body -t 0x19 -o "${_intelvga%/body.bin}" - $uefiextract "$_imguefi" 8B9BEF90-5FAF-46CF-A32A-7E1B7D33CC87 \ - -m body -t 0x19 -o "${_nvvga%/body.bin}" - - x_ mv "$_nvvga" "$_nvrom" - x_ mv "$_intelvga" "$_intelrom" -} - extract_sch5545ec() { # full system ROM (UEFI), to extract with UEFIExtract: -- cgit v1.2.1