mirror of
https://codeberg.org/libreboot/lbmk.git
synced 2026-07-14 07:19:40 +02:00
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:
@@ -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
@@ -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
|
||||
|
||||
Vendored
+1
@@ -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##*../}"
|
||||
|
||||
Reference in New Issue
Block a user