build/roms: remove modify_coreboot_rom()

don't handle "romtype" at all, in board target.cfg files

add /dev/null as pike2008 rom on amd boards. this serves
the same purpose, adding them as empty vga roms, to add
an empty rom in cbfs. pike2008 cards cause seabios to hang,
when their oproms are executed, so we insert a fake rom

on i945 thinkpads, use the coreboot config option:
CONFIG_INTEL_ADD_TOP_SWAP_BOOTBLOCK

when set, this enables the same bootblock copy, for use
with bucts. these two cases, namely pike2008 roms and
i945 bootblock copies, no longer need to be handled in code

Signed-off-by: Leah Rowe <leah@libreboot.org>
This commit is contained in:
Leah Rowe
2023-12-21 19:03:49 +00:00
parent 493ebdfb74
commit 92986f0c42
103 changed files with 58 additions and 134 deletions
-28
View File
@@ -419,37 +419,9 @@ moverom() {
printf "Creating target image: %s\n" "${newrom}"
[ -d "${newrom%/*}" ] || x_ mkdir -p "${newrom%/*}/"
x_ modify_coreboot_rom
x_ cp "${rompath}" "${newrom}"
}
modify_coreboot_rom()
{
tmpmvrom="$(mktemp -t rom.XXXXXXXXXX)"
x_ rm -f "${tmpmvrom}"
if [ "${romtype}" = "d8d16sas" ]; then
# pike2008 roms hang seabios. an empty rom will override
# the built-in one, thus disabling all execution of it
x_ touch "${tmpmvrom}"
for deviceID in "0072" "3050"; do
x_ "${cbfstool}" "${rompath}" add -f "${tmpmvrom}" \
-n "pci1000,${deviceID}.rom" -t raw
done
elif [ "${romtype}" = "i945 laptop" ]; then
# for bucts-based installation method from factory bios
dd if="${rompath}" of="${tmpmvrom}" bs=1 \
skip=$(($(stat -c %s "${rompath}") - 0x10000)) \
count=64k || err "modrom 1, copy bootblock"
dd if="${tmpmvrom}" of="${rompath}" bs=1 \
seek=$(($(stat -c %s "${rompath}") - 0x20000)) count=64k \
conv=notrunc || err "modrom 2, insert new bootblock"
x_ rm -f "${tmpmvrom}"
fi
x_ rm -f "${tmpmvrom}"
}
usage()
{
cat <<- EOF
+1 -2
View File
@@ -13,7 +13,7 @@ set -u -e
export LOCALVERSION="-${projectname}-${version%%-*}"
eval "$(setvars "" arch cfgsdir codedir config config_name crossgcc_ada mode \
elfdir listfile project romtype target target_dir targets tree _f target1)"
elfdir listfile project target target_dir targets tree _f target1)"
main()
{
@@ -133,7 +133,6 @@ handle_defconfig()
handle_src_tree()
{
romtype="normal"
target_dir="${cfgsdir}/${target}"
if [ "${mode}" = "fetch" ]; then
+1
View File
@@ -94,6 +94,7 @@ fetch()
dl="${2}"
dl_bkup="${3}"
dlsum="${4}"
[ "${5}" = "/dev/null" ] && return 0
[ "${5# }" = "${5}" ] || err "fetch: space not allowed in _dest: '${5}'"
[ "${5#/}" = "${5}" ] || err "fetch: absolute path not allowed: '${5}'"
_dest="${5##*../}"