grub: insert background in memdisk instead
the background is only a few kb. the whole rationale before was to limit the space used in memdisk, but this decision was made when the background was much bigger; it has since been optimised greatly, and the grub modules were heavily reduce, so it should be safe. grub's memdisk breaks when you add too much data to it. as part of simplifying the rest of lbmk, this change removes some more bloat from the rest of lbmk. handling this in the memdisk is much simpler than handling it with cbfstool. Signed-off-by: Leah Rowe <leah@libreboot.org>audit2-merge1
parent
7f5adffc02
commit
b50a588cba
|
@ -2,5 +2,4 @@ tree="i945"
|
|||
xarch="i386-elf"
|
||||
payload_seabios="y"
|
||||
payload_seabios_withgrub="y"
|
||||
grub_background="background1024x768.png"
|
||||
grub_scan_disk="ahci"
|
||||
|
|
|
@ -2,5 +2,4 @@ tree="i945"
|
|||
xarch="i386-elf"
|
||||
payload_seabios="y"
|
||||
payload_seabios_withgrub="y"
|
||||
grub_background="background1024x768.png"
|
||||
grub_scan_disk="ahci"
|
||||
|
|
|
@ -2,5 +2,4 @@ tree="i945"
|
|||
xarch="i386-elf"
|
||||
payload_seabios="y"
|
||||
payload_seabios_withgrub="y"
|
||||
grub_background="background1024x768.png"
|
||||
grub_scan_disk="ahci"
|
||||
|
|
|
@ -2,5 +2,4 @@ tree="i945"
|
|||
xarch="i386-elf"
|
||||
payload_seabios="y"
|
||||
payload_seabios_withgrub="y"
|
||||
grub_background="background1024x768.png"
|
||||
grub_scan_disk="ahci"
|
||||
|
|
|
@ -26,13 +26,14 @@ else
|
|||
gfxpayload=keep
|
||||
terminal_output --append gfxterm
|
||||
|
||||
if [ -f (cbfsdisk)/background.png ]; then
|
||||
insmod png
|
||||
background_image (cbfsdisk)/background.png
|
||||
elif [ -f (cbfsdisk)/background.jpg ]; then
|
||||
insmod jpeg
|
||||
background_image (cbfsdisk)/background.jpg
|
||||
fi
|
||||
for dt in cbfsdisk memdisk; do
|
||||
for it in png jpg; do
|
||||
if [ -f (${dt})/background.${it} ]; then
|
||||
insmod ${it}
|
||||
background_image (${dt})/background.${it}
|
||||
fi
|
||||
done
|
||||
done
|
||||
fi
|
||||
|
||||
# Keep CTRL pressed to enable default serial terminal (COM1 or the like)
|
||||
|
|
|
@ -26,13 +26,14 @@ else
|
|||
gfxpayload=keep
|
||||
terminal_output --append gfxterm
|
||||
|
||||
if [ -f (cbfsdisk)/background.png ]; then
|
||||
insmod png
|
||||
background_image (cbfsdisk)/background.png
|
||||
elif [ -f (cbfsdisk)/background.jpg ]; then
|
||||
insmod jpeg
|
||||
background_image (cbfsdisk)/background.jpg
|
||||
fi
|
||||
for dt in cbfsdisk memdisk; do
|
||||
for it in png jpg; do
|
||||
if [ -f (${dt})/background.${it} ]; then
|
||||
insmod ${it}
|
||||
background_image (${dt})/background.${it}
|
||||
fi
|
||||
done
|
||||
done
|
||||
fi
|
||||
|
||||
# Keep CTRL pressed to enable default serial terminal (COM1 or the like)
|
||||
|
|
|
@ -27,13 +27,14 @@ else
|
|||
gfxpayload=keep
|
||||
terminal_output --append gfxterm
|
||||
|
||||
if [ -f (cbfsdisk)/background.png ]; then
|
||||
insmod png
|
||||
background_image (cbfsdisk)/background.png
|
||||
elif [ -f (cbfsdisk)/background.jpg ]; then
|
||||
insmod jpeg
|
||||
background_image (cbfsdisk)/background.jpg
|
||||
fi
|
||||
for dt in cbfsdisk memdisk; do
|
||||
for it in png jpg; do
|
||||
if [ -f (${dt})/background.${it} ]; then
|
||||
insmod ${it}
|
||||
background_image (${dt})/background.${it}
|
||||
fi
|
||||
done
|
||||
done
|
||||
fi
|
||||
|
||||
# Keep CTRL pressed to enable default serial terminal (COM1 or the like)
|
||||
|
|
|
@ -11,7 +11,6 @@ set -u -e
|
|||
. "include/lib.sh"
|
||||
|
||||
seavgabiosrom="elf/seabios/default/libgfxinit/vgabios.bin"
|
||||
grub_background="background1280x800.png"
|
||||
cfgsdir="config/coreboot"
|
||||
picosrc="src/pico-serprog"
|
||||
picosdk="src/pico-sdk"
|
||||
|
@ -107,7 +106,6 @@ list_serprog_boards()
|
|||
configure_target()
|
||||
{
|
||||
eval "$(setvars "n" $pv) $(setvars "" $v)"
|
||||
grub_background="background1280x800.png"
|
||||
board="$1"
|
||||
|
||||
targetdir="$cfgsdir/$board"
|
||||
|
@ -261,13 +259,6 @@ build_grub_roms()
|
|||
# we only need insert grub.elf once, for each coreboot config:
|
||||
cbfs "$tmprom" "$grubelf" "$grub_cbfs"
|
||||
|
||||
# we only need insert background.png once, for each coreboot config:
|
||||
if [ "$displaymode" = "vesafb" ] || \
|
||||
[ "$displaymode" = "corebootfb" ]; then
|
||||
cbfs "$tmprom" "$grubdata/background/$grub_background" \
|
||||
background.png raw
|
||||
fi
|
||||
|
||||
tmpcfg="$(mktemp -t coreboot_rom.XXXXXXXXXX)"
|
||||
printf "set grub_scan_disk=\"%s\"\n" "$grub_scan_disk" > "$tmpcfg" || \
|
||||
$err "set grub_scan_disk, $grub_scan_disk, $tmpcfg"
|
||||
|
|
|
@ -284,7 +284,8 @@ mkpayload_grub()
|
|||
--fonts= --themes= --locales= --modules="$grub_modules" \
|
||||
--install-modules="$grub_install_modules" \
|
||||
"/boot/grub/grub_default.cfg=${cdir}/.config" \
|
||||
"/boot/grub/grub.cfg=$grubdata/memdisk.cfg" || \
|
||||
"/boot/grub/grub.cfg=$grubdata/memdisk.cfg" \
|
||||
"/background.png=$grubdata/background/background1280x800.png" || \
|
||||
$err "$tree: cannot build grub.elf"
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue