mirror of
https://codeberg.org/libreboot/lbmk.git
synced 2026-03-25 21:39:03 +02:00
Compare commits
44 Commits
testxz
...
20231021fi
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e86af9a60a | ||
|
|
23958f4eae | ||
|
|
79c8dc4655 | ||
|
|
a06c38ce15 | ||
|
|
5162b912b2 | ||
|
|
f0cf710f68 | ||
|
|
e90bffff3c | ||
|
|
c7e764a3f0 | ||
|
|
1c8b2114cc | ||
|
|
54a05fc167 | ||
|
|
52c9416b19 | ||
|
|
af1c1e10f1 | ||
|
|
18364822a2 | ||
|
|
ac442808ee | ||
|
|
759800523f | ||
|
|
bf4ea8102a | ||
|
|
da3044e7d7 | ||
|
|
782371a59c | ||
|
|
743a425cd6 | ||
|
|
73145b7980 | ||
|
|
31b35bb4ce | ||
|
|
baa3d4f217 | ||
|
|
8de7bc9339 | ||
|
|
d1f23eca34 | ||
|
|
97e5207ecf | ||
|
|
182ee8e416 | ||
|
|
54eb347a30 | ||
|
|
f855611c99 | ||
|
|
0c32c1d643 | ||
|
|
0375cfaf1c | ||
|
|
d245e0b1b4 | ||
|
|
fac62a8c58 | ||
|
|
0e1602f5b1 | ||
|
|
7b2060086a | ||
|
|
6af65ad430 | ||
|
|
4e54a051ef | ||
|
|
8d9aeef3de | ||
|
|
0b98c9b00c | ||
|
|
a16cd1a349 | ||
|
|
8a063f6b4b | ||
|
|
8b6e44a104 | ||
|
|
9fac3c1232 | ||
|
|
e63399cf25 | ||
|
|
6758b5c85d |
2
.gitignore
vendored
2
.gitignore
vendored
@@ -22,7 +22,7 @@
|
||||
/push
|
||||
/version
|
||||
/versiondate
|
||||
/vendor/
|
||||
/vendorfiles/
|
||||
*me.bin
|
||||
*sch5545ec.bin
|
||||
/mrc/
|
||||
|
||||
70
build
70
build
@@ -11,7 +11,7 @@ set -u -e
|
||||
. "include/err.sh"
|
||||
. "include/option.sh"
|
||||
|
||||
eval "$(setvars "" mode option aur_notice tmpdir)"
|
||||
eval "$(setvars "" option aur_notice tmpdir)"
|
||||
|
||||
tmpdir_was_set="y"
|
||||
set | grep TMPDIR 1>/dev/null 2>/dev/null || tmpdir_was_set="n"
|
||||
@@ -39,11 +39,14 @@ buildpath="./script/${linkname}"
|
||||
main()
|
||||
{
|
||||
xx_ id -u 1>/dev/null 2>/dev/null
|
||||
initialise_command $@
|
||||
shift 2
|
||||
[ $# -lt 1 ] && fail "Too few arguments. Try: ${0} help"
|
||||
[ "${1}" = "dependencies" ] && xx_ install_packages $@ && lbmk_exit 0
|
||||
|
||||
initialise_command $@ && shift 1
|
||||
|
||||
check_git
|
||||
check_project "fail"
|
||||
git_init
|
||||
|
||||
execute_command $@
|
||||
lbmk_exit 0
|
||||
@@ -51,22 +54,13 @@ main()
|
||||
|
||||
initialise_command()
|
||||
{
|
||||
[ $# -lt 1 ] && fail "Too few arguments. Try: ${0} help"
|
||||
|
||||
mode="${1}"
|
||||
[ "${mode}" != "dependencies" ] || xx_ install_packages $@
|
||||
[ "$(id -u)" != "0" ] || fail "this command as root is not permitted"
|
||||
|
||||
[ "${mode}" = "help" ] && usage ${0} && lbmk_exit 0
|
||||
if [ "${mode}" = "list" ]; then
|
||||
listitems "${buildpath}"
|
||||
lbmk_exit 0
|
||||
elif [ $# -lt 2 ]; then
|
||||
usage ${0}
|
||||
lbmk_exit 1
|
||||
fi
|
||||
|
||||
option="${2}"
|
||||
case "${1}" in
|
||||
help) usage ${0} && lbmk_exit 0 ;;
|
||||
list) items "${buildpath}" && lbmk_exit 0 ;;
|
||||
esac
|
||||
option="${1}"
|
||||
}
|
||||
|
||||
install_packages()
|
||||
@@ -83,23 +77,29 @@ install_packages()
|
||||
. "config/dependencies/${2}"
|
||||
|
||||
xx_ ${pkg_add} ${pkglist}
|
||||
[ "${aur_notice}" = "" ] || \
|
||||
printf "You must install AUR packages: %s\n" "${aur_notice}" 1>&2
|
||||
[ -z "${aur_notice}" ] && return 0
|
||||
printf "You must install AUR packages: %s\n" "${aur_notice}" 1>&2
|
||||
}
|
||||
|
||||
lbmk_exit 0
|
||||
# release archives contain .gitignore, but not .git.
|
||||
# lbmk can be run from lbmk.git, or an archive.
|
||||
git_init()
|
||||
{
|
||||
[ -L ".git" ] && fail "Reference .git is a symlink"
|
||||
[ -e ".git" ] && return 0
|
||||
eval "$(setvars "$(date -Rd @${versiondate})" cdate _nogit)"
|
||||
|
||||
git init || fail "${PWD}: cannot initialise Git repository"
|
||||
git add -A . || fail "${PWD}: cannot add files to Git repository"
|
||||
git commit -m "${projectname} ${version}" --date "${cdate}" || \
|
||||
fail "${PWD}: can't commit ${projectname}/${version}, date ${cdate}"
|
||||
git tag -a "${version}" -m "${projectname} ${version}" || \
|
||||
fail "${PWD}: cannot git-tag ${projectname}/${version}"
|
||||
}
|
||||
|
||||
execute_command()
|
||||
{
|
||||
if [ "${option}" = "list" ]; then
|
||||
xx_ listitems "${buildpath}/${mode}"
|
||||
lbmk_exit 0
|
||||
fi
|
||||
lbmkcmd="${buildpath}/${mode}/${option}"
|
||||
[ "${lbmkcmd}" = "./script/build/boot/roms" ] && \
|
||||
printf "NOTE: ./build boot roms now: ./build fw coreboot\n" 1>&2
|
||||
[ "${lbmkcmd%/*}" = "./script/update/blobs" ] && \
|
||||
printf "NOTE: ./update blobs is now: ./update vendor\n" 1>&2
|
||||
lbmkcmd="${buildpath}/${option}"
|
||||
[ -f "${lbmkcmd}" ] || fail "Invalid command. Run: ${linkpath} help"
|
||||
"${lbmkcmd}" $@ || fail "execute_command: ${lbmkcmd} ${@}"
|
||||
}
|
||||
@@ -108,16 +108,10 @@ usage()
|
||||
{
|
||||
progname=${0}
|
||||
cat <<- EOF
|
||||
USAGE: ${progname} <MODE> <OPTION>
|
||||
USAGE: ${progname} <OPTION>
|
||||
|
||||
possible values for 'mode':
|
||||
$(listitems "${buildpath}")
|
||||
|
||||
For each of the above modes, you may also do:
|
||||
${progname} <MODE> list
|
||||
|
||||
Example: ./build fw list, which would yield:
|
||||
$(./build fw list)
|
||||
possible values for 'OPTION':
|
||||
$(items "${buildpath}")
|
||||
|
||||
Refer to ${projectname} documentation for more info.
|
||||
EOF
|
||||
|
||||
@@ -149,7 +149,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
|
||||
CONFIG_SPI_FLASH_WINBOND=y
|
||||
CONFIG_DRIVERS_INTEL_WIFI=y
|
||||
CONFIG_IFD_BIN_PATH="../../../config/ifd/e6430/ifd"
|
||||
CONFIG_ME_BIN_PATH="../../../vendor/e6430/me.bin"
|
||||
CONFIG_ME_BIN_PATH="../../../vendorfiles/e6430/me.bin"
|
||||
CONFIG_GBE_BIN_PATH="../../../config/ifd/e6430/gbe"
|
||||
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
|
||||
CONFIG_VBT_DATA_SIZE_KB=8
|
||||
|
||||
@@ -147,7 +147,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
|
||||
CONFIG_SPI_FLASH_WINBOND=y
|
||||
CONFIG_DRIVERS_INTEL_WIFI=y
|
||||
CONFIG_IFD_BIN_PATH="../../../config/ifd/e6430/ifd"
|
||||
CONFIG_ME_BIN_PATH="../../../vendor/e6430/me.bin"
|
||||
CONFIG_ME_BIN_PATH="../../../vendorfiles/e6430/me.bin"
|
||||
CONFIG_GBE_BIN_PATH="../../../config/ifd/e6430/gbe"
|
||||
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
|
||||
CONFIG_VBT_DATA_SIZE_KB=8
|
||||
|
||||
@@ -150,7 +150,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
|
||||
CONFIG_SPI_FLASH_WINBOND=y
|
||||
CONFIG_DRIVERS_INTEL_WIFI=y
|
||||
CONFIG_IFD_BIN_PATH="../../../config/ifd/hp_ivybridge/ifd"
|
||||
CONFIG_ME_BIN_PATH="../../../vendor/hp_ivybridge/me.bin"
|
||||
CONFIG_ME_BIN_PATH="../../../vendorfiles/hp_ivybridge/me.bin"
|
||||
CONFIG_GBE_BIN_PATH="../../../config/ifd/hp_ivybridge/gbe"
|
||||
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
|
||||
CONFIG_VBT_DATA_SIZE_KB=8
|
||||
|
||||
@@ -148,7 +148,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
|
||||
CONFIG_SPI_FLASH_WINBOND=y
|
||||
CONFIG_DRIVERS_INTEL_WIFI=y
|
||||
CONFIG_IFD_BIN_PATH="../../../config/ifd/hp_ivybridge/ifd"
|
||||
CONFIG_ME_BIN_PATH="../../../vendor/hp_ivybridge/me.bin"
|
||||
CONFIG_ME_BIN_PATH="../../../vendorfiles/hp_ivybridge/me.bin"
|
||||
CONFIG_GBE_BIN_PATH="../../../config/ifd/hp_ivybridge/gbe"
|
||||
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
|
||||
CONFIG_VBT_DATA_SIZE_KB=8
|
||||
|
||||
@@ -148,7 +148,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
|
||||
CONFIG_SPI_FLASH_WINBOND=y
|
||||
# CONFIG_DRIVERS_INTEL_WIFI is not set
|
||||
CONFIG_IFD_BIN_PATH="../../../config/ifd/hp_sandybridge/ifd"
|
||||
CONFIG_ME_BIN_PATH="../../../vendor/hp_sandybridge/me.bin"
|
||||
CONFIG_ME_BIN_PATH="../../../vendorfiles/hp_sandybridge/me.bin"
|
||||
CONFIG_GBE_BIN_PATH="../../../config/ifd/hp_sandybridge/gbe"
|
||||
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
|
||||
CONFIG_VBT_DATA_SIZE_KB=8
|
||||
|
||||
@@ -146,7 +146,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
|
||||
CONFIG_SPI_FLASH_WINBOND=y
|
||||
# CONFIG_DRIVERS_INTEL_WIFI is not set
|
||||
CONFIG_IFD_BIN_PATH="../../../config/ifd/hp_sandybridge/ifd"
|
||||
CONFIG_ME_BIN_PATH="../../../vendor/hp_sandybridge/me.bin"
|
||||
CONFIG_ME_BIN_PATH="../../../vendorfiles/hp_sandybridge/me.bin"
|
||||
CONFIG_GBE_BIN_PATH="../../../config/ifd/hp_sandybridge/gbe"
|
||||
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
|
||||
CONFIG_VBT_DATA_SIZE_KB=8
|
||||
|
||||
@@ -147,7 +147,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
|
||||
CONFIG_SPI_FLASH_WINBOND=y
|
||||
# CONFIG_DRIVERS_INTEL_WIFI is not set
|
||||
CONFIG_IFD_BIN_PATH="../../../config/ifd/hp_ivybridge/ifd"
|
||||
CONFIG_ME_BIN_PATH="../../../vendor/hp_ivybridge/me.bin"
|
||||
CONFIG_ME_BIN_PATH="../../../vendorfiles/hp_ivybridge/me.bin"
|
||||
CONFIG_GBE_BIN_PATH="../../../config/ifd/hp_ivybridge/gbe"
|
||||
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
|
||||
CONFIG_VBT_DATA_SIZE_KB=8
|
||||
|
||||
@@ -145,7 +145,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
|
||||
CONFIG_SPI_FLASH_WINBOND=y
|
||||
# CONFIG_DRIVERS_INTEL_WIFI is not set
|
||||
CONFIG_IFD_BIN_PATH="../../../config/ifd/hp_ivybridge/ifd"
|
||||
CONFIG_ME_BIN_PATH="../../../vendor/hp_ivybridge/me.bin"
|
||||
CONFIG_ME_BIN_PATH="../../../vendorfiles/hp_ivybridge/me.bin"
|
||||
CONFIG_GBE_BIN_PATH="../../../config/ifd/hp_ivybridge/gbe"
|
||||
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
|
||||
CONFIG_VBT_DATA_SIZE_KB=8
|
||||
|
||||
@@ -148,7 +148,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
|
||||
CONFIG_SPI_FLASH_WINBOND=y
|
||||
# CONFIG_DRIVERS_INTEL_WIFI is not set
|
||||
CONFIG_IFD_BIN_PATH="../../../config/ifd/hp8200sff/ifd_4mb"
|
||||
CONFIG_ME_BIN_PATH="../../../vendor/hp8200sff/me.bin"
|
||||
CONFIG_ME_BIN_PATH="../../../vendorfiles/hp8200sff/me.bin"
|
||||
CONFIG_GBE_BIN_PATH="../../../config/ifd/hp8200sff/gbe"
|
||||
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
|
||||
CONFIG_VBT_DATA_SIZE_KB=8
|
||||
|
||||
@@ -146,7 +146,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
|
||||
CONFIG_SPI_FLASH_WINBOND=y
|
||||
# CONFIG_DRIVERS_INTEL_WIFI is not set
|
||||
CONFIG_IFD_BIN_PATH="../../../config/ifd/hp8200sff/ifd_4mb"
|
||||
CONFIG_ME_BIN_PATH="../../../vendor/hp8200sff/me.bin"
|
||||
CONFIG_ME_BIN_PATH="../../../vendorfiles/hp8200sff/me.bin"
|
||||
CONFIG_GBE_BIN_PATH="../../../config/ifd/hp8200sff/gbe"
|
||||
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
|
||||
CONFIG_VBT_DATA_SIZE_KB=8
|
||||
|
||||
@@ -148,7 +148,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
|
||||
CONFIG_SPI_FLASH_WINBOND=y
|
||||
# CONFIG_DRIVERS_INTEL_WIFI is not set
|
||||
CONFIG_IFD_BIN_PATH="../../../config/ifd/hp8200sff/ifd"
|
||||
CONFIG_ME_BIN_PATH="../../../vendor/hp8200sff/me.bin"
|
||||
CONFIG_ME_BIN_PATH="../../../vendorfiles/hp8200sff/me.bin"
|
||||
CONFIG_GBE_BIN_PATH="../../../config/ifd/hp8200sff/gbe"
|
||||
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
|
||||
CONFIG_VBT_DATA_SIZE_KB=8
|
||||
|
||||
@@ -146,7 +146,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
|
||||
CONFIG_SPI_FLASH_WINBOND=y
|
||||
# CONFIG_DRIVERS_INTEL_WIFI is not set
|
||||
CONFIG_IFD_BIN_PATH="../../../config/ifd/hp8200sff/ifd"
|
||||
CONFIG_ME_BIN_PATH="../../../vendor/hp8200sff/me.bin"
|
||||
CONFIG_ME_BIN_PATH="../../../vendorfiles/hp8200sff/me.bin"
|
||||
CONFIG_GBE_BIN_PATH="../../../config/ifd/hp8200sff/gbe"
|
||||
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
|
||||
CONFIG_VBT_DATA_SIZE_KB=8
|
||||
|
||||
@@ -148,7 +148,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
|
||||
CONFIG_SPI_FLASH_WINBOND=y
|
||||
CONFIG_DRIVERS_INTEL_WIFI=y
|
||||
CONFIG_IFD_BIN_PATH="../../../config/ifd/hp8300usdt/ifd"
|
||||
CONFIG_ME_BIN_PATH="../../../vendor/hp8300usdt/me.bin"
|
||||
CONFIG_ME_BIN_PATH="../../../vendorfiles/hp8300usdt/me.bin"
|
||||
CONFIG_GBE_BIN_PATH="../../../config/ifd/hp8300usdt/gbe"
|
||||
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
|
||||
CONFIG_VBT_DATA_SIZE_KB=8
|
||||
|
||||
@@ -146,7 +146,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
|
||||
CONFIG_SPI_FLASH_WINBOND=y
|
||||
CONFIG_DRIVERS_INTEL_WIFI=y
|
||||
CONFIG_IFD_BIN_PATH="../../../config/ifd/hp8300usdt/ifd"
|
||||
CONFIG_ME_BIN_PATH="../../../vendor/hp8300usdt/me.bin"
|
||||
CONFIG_ME_BIN_PATH="../../../vendorfiles/hp8300usdt/me.bin"
|
||||
CONFIG_GBE_BIN_PATH="../../../config/ifd/hp8300usdt/gbe"
|
||||
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
|
||||
CONFIG_VBT_DATA_SIZE_KB=8
|
||||
|
||||
@@ -149,7 +149,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
|
||||
CONFIG_SPI_FLASH_WINBOND=y
|
||||
CONFIG_DRIVERS_INTEL_WIFI=y
|
||||
CONFIG_IFD_BIN_PATH="../../../config/ifd/hp_ivybridge/ifd"
|
||||
CONFIG_ME_BIN_PATH="../../../vendor/hp_ivybridge/me.bin"
|
||||
CONFIG_ME_BIN_PATH="../../../vendorfiles/hp_ivybridge/me.bin"
|
||||
CONFIG_GBE_BIN_PATH="../../../config/ifd/hp_ivybridge/gbe"
|
||||
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
|
||||
CONFIG_VBT_DATA_SIZE_KB=8
|
||||
|
||||
@@ -147,7 +147,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
|
||||
CONFIG_SPI_FLASH_WINBOND=y
|
||||
CONFIG_DRIVERS_INTEL_WIFI=y
|
||||
CONFIG_IFD_BIN_PATH="../../../config/ifd/hp_ivybridge/ifd"
|
||||
CONFIG_ME_BIN_PATH="../../../vendor/hp_ivybridge/me.bin"
|
||||
CONFIG_ME_BIN_PATH="../../../vendorfiles/hp_ivybridge/me.bin"
|
||||
CONFIG_GBE_BIN_PATH="../../../config/ifd/hp_ivybridge/gbe"
|
||||
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
|
||||
CONFIG_VBT_DATA_SIZE_KB=8
|
||||
|
||||
@@ -148,7 +148,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
|
||||
CONFIG_SPI_FLASH_WINBOND=y
|
||||
# CONFIG_DRIVERS_INTEL_WIFI is not set
|
||||
CONFIG_IFD_BIN_PATH="../../../config/ifd/hp_ivybridge/ifd"
|
||||
CONFIG_ME_BIN_PATH="../../../vendor/hp_ivybridge/me.bin"
|
||||
CONFIG_ME_BIN_PATH="../../../vendorfiles/hp_ivybridge/me.bin"
|
||||
CONFIG_GBE_BIN_PATH="../../../config/ifd/hp_ivybridge/gbe"
|
||||
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
|
||||
CONFIG_VBT_DATA_SIZE_KB=8
|
||||
|
||||
@@ -146,7 +146,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
|
||||
CONFIG_SPI_FLASH_WINBOND=y
|
||||
# CONFIG_DRIVERS_INTEL_WIFI is not set
|
||||
CONFIG_IFD_BIN_PATH="../../../config/ifd/hp_ivybridge/ifd"
|
||||
CONFIG_ME_BIN_PATH="../../../vendor/hp_ivybridge/me.bin"
|
||||
CONFIG_ME_BIN_PATH="../../../vendorfiles/hp_ivybridge/me.bin"
|
||||
CONFIG_GBE_BIN_PATH="../../../config/ifd/hp_ivybridge/gbe"
|
||||
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
|
||||
CONFIG_VBT_DATA_SIZE_KB=8
|
||||
|
||||
@@ -140,7 +140,7 @@ CONFIG_TPM_PIRQ=0x0
|
||||
CONFIG_BOARD_DELL_PRECISION_T1650=y
|
||||
CONFIG_BOARD_DELL_SNB_IVB_WORKSTATIONS=y
|
||||
CONFIG_INCLUDE_SMSC_SCH5545_EC_FW=y
|
||||
CONFIG_SMSC_SCH5545_EC_FW_FILE="../../../vendor/t1650/sch5545ec.bin"
|
||||
CONFIG_SMSC_SCH5545_EC_FW_FILE="../../../vendorfiles/t1650/sch5545ec.bin"
|
||||
CONFIG_ECAM_MMCONF_BASE_ADDRESS=0xf0000000
|
||||
CONFIG_ECAM_MMCONF_BUS_NUMBER=64
|
||||
CONFIG_MEMLAYOUT_LD_FILE="src/arch/x86/memlayout.ld"
|
||||
@@ -155,7 +155,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
|
||||
CONFIG_SPI_FLASH_WINBOND=y
|
||||
CONFIG_DRIVERS_INTEL_WIFI=y
|
||||
CONFIG_IFD_BIN_PATH="../../../config/ifd/t1650/12_ifd"
|
||||
CONFIG_ME_BIN_PATH="../../../vendor/t1650/me.bin"
|
||||
CONFIG_ME_BIN_PATH="../../../vendorfiles/t1650/me.bin"
|
||||
CONFIG_GBE_BIN_PATH="../../../config/ifd/t1650/gbe"
|
||||
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
|
||||
CONFIG_VBT_DATA_SIZE_KB=8
|
||||
|
||||
@@ -150,7 +150,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
|
||||
CONFIG_SPI_FLASH_WINBOND=y
|
||||
# CONFIG_DRIVERS_INTEL_WIFI is not set
|
||||
CONFIG_IFD_BIN_PATH="../../../config/ifd/xx20/ifd"
|
||||
CONFIG_ME_BIN_PATH="../../../vendor/xx20/me.bin"
|
||||
CONFIG_ME_BIN_PATH="../../../vendorfiles/xx20/me.bin"
|
||||
CONFIG_GBE_BIN_PATH="../../../config/ifd/xx20/gbe"
|
||||
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
|
||||
CONFIG_VBT_DATA_SIZE_KB=8
|
||||
|
||||
@@ -150,7 +150,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
|
||||
CONFIG_SPI_FLASH_WINBOND=y
|
||||
# CONFIG_DRIVERS_INTEL_WIFI is not set
|
||||
CONFIG_IFD_BIN_PATH="../../../config/ifd/xx20/ifd"
|
||||
CONFIG_ME_BIN_PATH="../../../vendor/xx20/me.bin"
|
||||
CONFIG_ME_BIN_PATH="../../../vendorfiles/xx20/me.bin"
|
||||
CONFIG_GBE_BIN_PATH="../../../config/ifd/xx20/gbe"
|
||||
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
|
||||
CONFIG_VBT_DATA_SIZE_KB=8
|
||||
|
||||
@@ -148,7 +148,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
|
||||
CONFIG_SPI_FLASH_WINBOND=y
|
||||
# CONFIG_DRIVERS_INTEL_WIFI is not set
|
||||
CONFIG_IFD_BIN_PATH="../../../config/ifd/xx20/ifd"
|
||||
CONFIG_ME_BIN_PATH="../../../vendor/xx20/me.bin"
|
||||
CONFIG_ME_BIN_PATH="../../../vendorfiles/xx20/me.bin"
|
||||
CONFIG_GBE_BIN_PATH="../../../config/ifd/xx20/gbe"
|
||||
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
|
||||
CONFIG_VBT_DATA_SIZE_KB=8
|
||||
|
||||
@@ -149,7 +149,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
|
||||
CONFIG_SPI_FLASH_WINBOND=y
|
||||
# CONFIG_DRIVERS_INTEL_WIFI is not set
|
||||
CONFIG_IFD_BIN_PATH="../../../config/ifd/xx30/ifd"
|
||||
CONFIG_ME_BIN_PATH="../../../vendor/xx30/me.bin"
|
||||
CONFIG_ME_BIN_PATH="../../../vendorfiles/xx30/me.bin"
|
||||
CONFIG_GBE_BIN_PATH="../../../config/ifd/xx30/gbe"
|
||||
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
|
||||
CONFIG_VBT_DATA_SIZE_KB=8
|
||||
|
||||
@@ -147,7 +147,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
|
||||
CONFIG_SPI_FLASH_WINBOND=y
|
||||
# CONFIG_DRIVERS_INTEL_WIFI is not set
|
||||
CONFIG_IFD_BIN_PATH="../../../config/ifd/xx30/ifd"
|
||||
CONFIG_ME_BIN_PATH="../../../vendor/xx30/me.bin"
|
||||
CONFIG_ME_BIN_PATH="../../../vendorfiles/xx30/me.bin"
|
||||
CONFIG_GBE_BIN_PATH="../../../config/ifd/xx30/gbe"
|
||||
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
|
||||
CONFIG_VBT_DATA_SIZE_KB=8
|
||||
|
||||
@@ -143,7 +143,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
|
||||
CONFIG_SPI_FLASH_WINBOND=y
|
||||
CONFIG_DRIVERS_INTEL_WIFI=y
|
||||
CONFIG_IFD_BIN_PATH="../../../config/ifd/t440p/ifd"
|
||||
CONFIG_ME_BIN_PATH="../../../vendor/t440p/me.bin"
|
||||
CONFIG_ME_BIN_PATH="../../../vendorfiles/t440p/me.bin"
|
||||
CONFIG_GBE_BIN_PATH="../../../config/ifd/t440p/gbe"
|
||||
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
|
||||
# CONFIG_ENABLE_DDR_2X_REFRESH is not set
|
||||
|
||||
@@ -146,7 +146,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
|
||||
CONFIG_SPI_FLASH_WINBOND=y
|
||||
CONFIG_DRIVERS_INTEL_WIFI=y
|
||||
CONFIG_IFD_BIN_PATH="../../../config/ifd/t440p/ifd"
|
||||
CONFIG_ME_BIN_PATH="../../../vendor/t440p/me.bin"
|
||||
CONFIG_ME_BIN_PATH="../../../vendorfiles/t440p/me.bin"
|
||||
CONFIG_GBE_BIN_PATH="../../../config/ifd/t440p/gbe"
|
||||
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
|
||||
# CONFIG_ENABLE_DDR_2X_REFRESH is not set
|
||||
|
||||
@@ -144,7 +144,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
|
||||
CONFIG_SPI_FLASH_WINBOND=y
|
||||
CONFIG_DRIVERS_INTEL_WIFI=y
|
||||
CONFIG_IFD_BIN_PATH="../../../config/ifd/t440p/ifd"
|
||||
CONFIG_ME_BIN_PATH="../../../vendor/t440p/me.bin"
|
||||
CONFIG_ME_BIN_PATH="../../../vendorfiles/t440p/me.bin"
|
||||
CONFIG_GBE_BIN_PATH="../../../config/ifd/t440p/gbe"
|
||||
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
|
||||
# CONFIG_ENABLE_DDR_2X_REFRESH is not set
|
||||
|
||||
@@ -150,7 +150,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
|
||||
CONFIG_SPI_FLASH_WINBOND=y
|
||||
# CONFIG_DRIVERS_INTEL_WIFI is not set
|
||||
CONFIG_IFD_BIN_PATH="../../../config/ifd/xx20/ifd"
|
||||
CONFIG_ME_BIN_PATH="../../../vendor/xx20/me.bin"
|
||||
CONFIG_ME_BIN_PATH="../../../vendorfiles/xx20/me.bin"
|
||||
CONFIG_GBE_BIN_PATH="../../../config/ifd/xx20/gbe"
|
||||
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
|
||||
CONFIG_VBT_DATA_SIZE_KB=8
|
||||
|
||||
@@ -148,7 +148,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
|
||||
CONFIG_SPI_FLASH_WINBOND=y
|
||||
# CONFIG_DRIVERS_INTEL_WIFI is not set
|
||||
CONFIG_IFD_BIN_PATH="../../../config/ifd/xx20/ifd"
|
||||
CONFIG_ME_BIN_PATH="../../../vendor/xx20/me.bin"
|
||||
CONFIG_ME_BIN_PATH="../../../vendorfiles/xx20/me.bin"
|
||||
CONFIG_GBE_BIN_PATH="../../../config/ifd/xx20/gbe"
|
||||
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
|
||||
CONFIG_VBT_DATA_SIZE_KB=8
|
||||
|
||||
@@ -149,7 +149,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
|
||||
CONFIG_SPI_FLASH_WINBOND=y
|
||||
CONFIG_DRIVERS_INTEL_WIFI=y
|
||||
CONFIG_IFD_BIN_PATH="../../../config/ifd/xx30/ifd"
|
||||
CONFIG_ME_BIN_PATH="../../../vendor/xx30/me.bin"
|
||||
CONFIG_ME_BIN_PATH="../../../vendorfiles/xx30/me.bin"
|
||||
CONFIG_GBE_BIN_PATH="../../../config/ifd/xx30/gbe"
|
||||
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
|
||||
CONFIG_VBT_DATA_SIZE_KB=8
|
||||
|
||||
@@ -147,7 +147,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
|
||||
CONFIG_SPI_FLASH_WINBOND=y
|
||||
CONFIG_DRIVERS_INTEL_WIFI=y
|
||||
CONFIG_IFD_BIN_PATH="../../../config/ifd/xx30/ifd"
|
||||
CONFIG_ME_BIN_PATH="../../../vendor/xx30/me.bin"
|
||||
CONFIG_ME_BIN_PATH="../../../vendorfiles/xx30/me.bin"
|
||||
CONFIG_GBE_BIN_PATH="../../../config/ifd/xx30/gbe"
|
||||
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
|
||||
CONFIG_VBT_DATA_SIZE_KB=8
|
||||
|
||||
@@ -149,7 +149,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
|
||||
CONFIG_SPI_FLASH_WINBOND=y
|
||||
CONFIG_DRIVERS_INTEL_WIFI=y
|
||||
CONFIG_IFD_BIN_PATH="../../../config/ifd/xx30/ifd"
|
||||
CONFIG_ME_BIN_PATH="../../../vendor/xx30/me.bin"
|
||||
CONFIG_ME_BIN_PATH="../../../vendorfiles/xx30/me.bin"
|
||||
CONFIG_GBE_BIN_PATH="../../../config/ifd/xx30/gbe"
|
||||
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
|
||||
CONFIG_VBT_DATA_SIZE_KB=8
|
||||
|
||||
@@ -147,7 +147,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
|
||||
CONFIG_SPI_FLASH_WINBOND=y
|
||||
CONFIG_DRIVERS_INTEL_WIFI=y
|
||||
CONFIG_IFD_BIN_PATH="../../../config/ifd/xx30/ifd"
|
||||
CONFIG_ME_BIN_PATH="../../../vendor/xx30/me.bin"
|
||||
CONFIG_ME_BIN_PATH="../../../vendorfiles/xx30/me.bin"
|
||||
CONFIG_GBE_BIN_PATH="../../../config/ifd/xx30/gbe"
|
||||
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
|
||||
CONFIG_VBT_DATA_SIZE_KB=8
|
||||
|
||||
@@ -143,7 +143,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
|
||||
CONFIG_SPI_FLASH_WINBOND=y
|
||||
CONFIG_DRIVERS_INTEL_WIFI=y
|
||||
CONFIG_IFD_BIN_PATH="../../../config/ifd/t440p/ifd"
|
||||
CONFIG_ME_BIN_PATH="../../../vendor/t440p/me.bin"
|
||||
CONFIG_ME_BIN_PATH="../../../vendorfiles/t440p/me.bin"
|
||||
CONFIG_GBE_BIN_PATH="../../../config/ifd/t440p/gbe"
|
||||
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
|
||||
# CONFIG_ENABLE_DDR_2X_REFRESH is not set
|
||||
|
||||
@@ -146,7 +146,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
|
||||
CONFIG_SPI_FLASH_WINBOND=y
|
||||
CONFIG_DRIVERS_INTEL_WIFI=y
|
||||
CONFIG_IFD_BIN_PATH="../../../config/ifd/t440p/ifd"
|
||||
CONFIG_ME_BIN_PATH="../../../vendor/t440p/me.bin"
|
||||
CONFIG_ME_BIN_PATH="../../../vendorfiles/t440p/me.bin"
|
||||
CONFIG_GBE_BIN_PATH="../../../config/ifd/t440p/gbe"
|
||||
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
|
||||
# CONFIG_ENABLE_DDR_2X_REFRESH is not set
|
||||
|
||||
@@ -144,7 +144,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
|
||||
CONFIG_SPI_FLASH_WINBOND=y
|
||||
CONFIG_DRIVERS_INTEL_WIFI=y
|
||||
CONFIG_IFD_BIN_PATH="../../../config/ifd/t440p/ifd"
|
||||
CONFIG_ME_BIN_PATH="../../../vendor/t440p/me.bin"
|
||||
CONFIG_ME_BIN_PATH="../../../vendorfiles/t440p/me.bin"
|
||||
CONFIG_GBE_BIN_PATH="../../../config/ifd/t440p/gbe"
|
||||
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
|
||||
# CONFIG_ENABLE_DDR_2X_REFRESH is not set
|
||||
|
||||
@@ -151,7 +151,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
|
||||
CONFIG_SPI_FLASH_WINBOND=y
|
||||
# CONFIG_DRIVERS_INTEL_WIFI is not set
|
||||
CONFIG_IFD_BIN_PATH="../../../config/ifd/xx20/ifd"
|
||||
CONFIG_ME_BIN_PATH="../../../vendor/xx20/me.bin"
|
||||
CONFIG_ME_BIN_PATH="../../../vendorfiles/xx20/me.bin"
|
||||
CONFIG_GBE_BIN_PATH="../../../config/ifd/xx20/gbe"
|
||||
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
|
||||
CONFIG_VBT_DATA_SIZE_KB=8
|
||||
|
||||
@@ -149,7 +149,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
|
||||
CONFIG_SPI_FLASH_WINBOND=y
|
||||
# CONFIG_DRIVERS_INTEL_WIFI is not set
|
||||
CONFIG_IFD_BIN_PATH="../../../config/ifd/xx20/ifd"
|
||||
CONFIG_ME_BIN_PATH="../../../vendor/xx20/me.bin"
|
||||
CONFIG_ME_BIN_PATH="../../../vendorfiles/xx20/me.bin"
|
||||
CONFIG_GBE_BIN_PATH="../../../config/ifd/xx20/gbe"
|
||||
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
|
||||
CONFIG_VBT_DATA_SIZE_KB=8
|
||||
|
||||
@@ -150,7 +150,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
|
||||
CONFIG_SPI_FLASH_WINBOND=y
|
||||
# CONFIG_DRIVERS_INTEL_WIFI is not set
|
||||
CONFIG_IFD_BIN_PATH="../../../config/ifd/xx30/ifd"
|
||||
CONFIG_ME_BIN_PATH="../../../vendor/xx30/me.bin"
|
||||
CONFIG_ME_BIN_PATH="../../../vendorfiles/xx30/me.bin"
|
||||
CONFIG_GBE_BIN_PATH="../../../config/ifd/xx30/gbe"
|
||||
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
|
||||
CONFIG_VBT_DATA_SIZE_KB=8
|
||||
|
||||
@@ -148,7 +148,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
|
||||
CONFIG_SPI_FLASH_WINBOND=y
|
||||
# CONFIG_DRIVERS_INTEL_WIFI is not set
|
||||
CONFIG_IFD_BIN_PATH="../../../config/ifd/xx30/ifd"
|
||||
CONFIG_ME_BIN_PATH="../../../vendor/xx30/me.bin"
|
||||
CONFIG_ME_BIN_PATH="../../../vendorfiles/xx30/me.bin"
|
||||
CONFIG_GBE_BIN_PATH="../../../config/ifd/xx30/gbe"
|
||||
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
|
||||
CONFIG_VBT_DATA_SIZE_KB=8
|
||||
|
||||
@@ -150,7 +150,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
|
||||
CONFIG_SPI_FLASH_WINBOND=y
|
||||
# CONFIG_DRIVERS_INTEL_WIFI is not set
|
||||
CONFIG_IFD_BIN_PATH="../../../config/ifd/xx30/16_ifd"
|
||||
CONFIG_ME_BIN_PATH="../../../vendor/xx30/me.bin"
|
||||
CONFIG_ME_BIN_PATH="../../../vendorfiles/xx30/me.bin"
|
||||
CONFIG_GBE_BIN_PATH="../../../config/ifd/xx30/gbe"
|
||||
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
|
||||
CONFIG_VBT_DATA_SIZE_KB=8
|
||||
|
||||
@@ -148,7 +148,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
|
||||
CONFIG_SPI_FLASH_WINBOND=y
|
||||
# CONFIG_DRIVERS_INTEL_WIFI is not set
|
||||
CONFIG_IFD_BIN_PATH="../../../config/ifd/xx30/16_ifd"
|
||||
CONFIG_ME_BIN_PATH="../../../vendor/xx30/me.bin"
|
||||
CONFIG_ME_BIN_PATH="../../../vendorfiles/xx30/me.bin"
|
||||
CONFIG_GBE_BIN_PATH="../../../config/ifd/xx30/gbe"
|
||||
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
|
||||
CONFIG_VBT_DATA_SIZE_KB=8
|
||||
|
||||
@@ -150,7 +150,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
|
||||
CONFIG_SPI_FLASH_WINBOND=y
|
||||
# CONFIG_DRIVERS_INTEL_WIFI is not set
|
||||
CONFIG_IFD_BIN_PATH="../../../config/ifd/xx30/ifd"
|
||||
CONFIG_ME_BIN_PATH="../../../vendor/xx30/me.bin"
|
||||
CONFIG_ME_BIN_PATH="../../../vendorfiles/xx30/me.bin"
|
||||
CONFIG_GBE_BIN_PATH="../../../config/ifd/xx30/gbe"
|
||||
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
|
||||
CONFIG_VBT_DATA_SIZE_KB=8
|
||||
|
||||
@@ -148,7 +148,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
|
||||
CONFIG_SPI_FLASH_WINBOND=y
|
||||
# CONFIG_DRIVERS_INTEL_WIFI is not set
|
||||
CONFIG_IFD_BIN_PATH="../../../config/ifd/xx30/ifd"
|
||||
CONFIG_ME_BIN_PATH="../../../vendor/xx30/me.bin"
|
||||
CONFIG_ME_BIN_PATH="../../../vendorfiles/xx30/me.bin"
|
||||
CONFIG_GBE_BIN_PATH="../../../config/ifd/xx30/gbe"
|
||||
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
|
||||
CONFIG_VBT_DATA_SIZE_KB=8
|
||||
|
||||
@@ -150,7 +150,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
|
||||
CONFIG_SPI_FLASH_WINBOND=y
|
||||
# CONFIG_DRIVERS_INTEL_WIFI is not set
|
||||
CONFIG_IFD_BIN_PATH="../../../config/ifd/xx30/ifd"
|
||||
CONFIG_ME_BIN_PATH="../../../vendor/xx30/me.bin"
|
||||
CONFIG_ME_BIN_PATH="../../../vendorfiles/xx30/me.bin"
|
||||
CONFIG_GBE_BIN_PATH="../../../config/ifd/xx30/gbe"
|
||||
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
|
||||
CONFIG_VBT_DATA_SIZE_KB=8
|
||||
|
||||
@@ -148,7 +148,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
|
||||
CONFIG_SPI_FLASH_WINBOND=y
|
||||
# CONFIG_DRIVERS_INTEL_WIFI is not set
|
||||
CONFIG_IFD_BIN_PATH="../../../config/ifd/xx30/ifd"
|
||||
CONFIG_ME_BIN_PATH="../../../vendor/xx30/me.bin"
|
||||
CONFIG_ME_BIN_PATH="../../../vendorfiles/xx30/me.bin"
|
||||
CONFIG_GBE_BIN_PATH="../../../config/ifd/xx30/gbe"
|
||||
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
|
||||
CONFIG_VBT_DATA_SIZE_KB=8
|
||||
|
||||
@@ -150,7 +150,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
|
||||
CONFIG_SPI_FLASH_WINBOND=y
|
||||
# CONFIG_DRIVERS_INTEL_WIFI is not set
|
||||
CONFIG_IFD_BIN_PATH="../../../config/ifd/xx30/16_ifd"
|
||||
CONFIG_ME_BIN_PATH="../../../vendor/xx30/me.bin"
|
||||
CONFIG_ME_BIN_PATH="../../../vendorfiles/xx30/me.bin"
|
||||
CONFIG_GBE_BIN_PATH="../../../config/ifd/xx30/gbe"
|
||||
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
|
||||
CONFIG_VBT_DATA_SIZE_KB=8
|
||||
|
||||
@@ -148,7 +148,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
|
||||
CONFIG_SPI_FLASH_WINBOND=y
|
||||
# CONFIG_DRIVERS_INTEL_WIFI is not set
|
||||
CONFIG_IFD_BIN_PATH="../../../config/ifd/xx30/16_ifd"
|
||||
CONFIG_ME_BIN_PATH="../../../vendor/xx30/me.bin"
|
||||
CONFIG_ME_BIN_PATH="../../../vendorfiles/xx30/me.bin"
|
||||
CONFIG_GBE_BIN_PATH="../../../config/ifd/xx30/gbe"
|
||||
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
|
||||
CONFIG_VBT_DATA_SIZE_KB=8
|
||||
|
||||
@@ -1,19 +1,15 @@
|
||||
pkg_add="apt-get -y install"
|
||||
pkglist=" \
|
||||
wget git uuid-dev nasm build-essential sharutils curl parted e2fsprogs unzip \
|
||||
pkg-config gcc-arm-linux-gnueabi \
|
||||
build-essential python3 \
|
||||
build-essential perl python3-setuptools libncurses5-dev doxygen iasl gdb flex \
|
||||
bison build-essential git libssl-dev gnat python-is-python3 \
|
||||
fonts-unifont libopts25 libselinux1-dev autogen m4 autoconf help2man \
|
||||
libopts25-dev libfont-freetype-perl automake autotools-dev build-essential bison \
|
||||
flex libfuse-dev liblzma-dev gawk libdevmapper-dev libtool libfreetype6-dev \
|
||||
gettext unifont bc bison build-essential device-tree-compiler efitools flex \
|
||||
libfdt-dev liblz4-tool libgnutls28-dev libncurses-dev libpython3-dev libsdl2-dev \
|
||||
libssl-dev lz4 lzma lzma-alone openssl pkg-config python3 python3-distutils \
|
||||
python3-pkg-resources python3-pycryptodome python3-pyelftools swig uuid-dev \
|
||||
build-essential libpci-dev pciutils zlib1g-dev libftdi-dev build-essential \
|
||||
libusb-1.0-0-dev libusb-1.0 libusb-1.0-0-dev libusb-dev cmake \
|
||||
innoextract p7zip p7zip-full unar autopoint \
|
||||
binutils-arm-none-eabi gcc-arm-none-eabi libnewlib-arm-none-eabi cmake \
|
||||
acpica-tools autoconf autogen automake autopoint autotools-dev bc \
|
||||
binutils-arm-none-eabi bison build-essential cmake curl device-tree-compiler \
|
||||
doxygen e2fsprogs efitools flex fonts-unifont gawk gcc-arm-linux-gnueabi \
|
||||
gcc-arm-none-eabi gdb gettext git gnat help2man innoextract libdevmapper-dev \
|
||||
libfdt-dev libfont-freetype-perl libfreetype6-dev libftdi-dev libfuse-dev \
|
||||
libgnutls28-dev liblz4-tool liblzma-dev libncurses5-dev libncurses-dev \
|
||||
libnewlib-arm-none-eabi libopts25 libopts25-dev libpci-dev libpython3-dev \
|
||||
libsdl2-dev libselinux1-dev libssl-dev libtool libusb-1.0 libusb-1.0-0-dev \
|
||||
libusb-dev lz4 lzma lzma-alone m4 nasm openssl p7zip p7zip-full parted pciutils \
|
||||
perl pkg-config python3 python3-distutils python3-pkg-resources python3-pycryptodome \
|
||||
python3-pyelftools python3-setuptools python-is-python3 sharutils swig unar \
|
||||
unifont unzip uuid-dev wget zlib1g-dev \
|
||||
"
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
pkg_add="dnf -y install"
|
||||
pkglist=" \
|
||||
wget git pandoc nasm perl-libwww-perl python3 subversion gcc sharutils curl \
|
||||
parted e2fsprogs unzip arm-none-eabi-gcc-cs gcc python3 gcc perl gcc-gnat \
|
||||
ncurses-devel doxygen acpica-tools gdb flex bison gcc git openssl-devel gprbuild \
|
||||
bzip2 unifont-fonts unifont unifont-ttf-fonts autogen help2man gcc bison flex \
|
||||
dejavu-fonts-all texinfo rsync python3 libusb xz gawk device-mapper fuse gettext \
|
||||
freetype-devel intltool libselinux-devel gcc pciutils-devel zlib-devel \
|
||||
libftdi-devel gcc libusb-devel cmake innoextract p7zip p7zip-plugins unar \
|
||||
arm-none-eabi-binutils arm-none-eabi-gcc arm-none-eabi-newlib cmake \
|
||||
acpica-tools arm-none-eabi-binutils arm-none-eabi-gcc arm-none-eabi-gcc-cs \
|
||||
arm-none-eabi-newlib autogen bison bzip2 cmake curl dejavu-fonts-all \
|
||||
device-mapper doxygen e2fsprogs flex freetype-devel fuse gawk gcc gcc-gnat \
|
||||
gdb gettext gettext-devel git gprbuild help2man innoextract intltool \
|
||||
libftdi-devel libselinux-devel libusb1 libusb1-devel nasm ncurses-devel \
|
||||
openssl-devel p7zip p7zip-plugins pandoc parted pciutils-devel perl \
|
||||
perl-libwww-perl python-unversioned-command python3 rsync sharutils subversion \
|
||||
texinfo unar unifont unifont-fonts unifont-ttf-fonts unzip wget xz zlib-devel \
|
||||
"
|
||||
|
||||
1
config/dependencies/mint
Symbolic link
1
config/dependencies/mint
Symbolic link
@@ -0,0 +1 @@
|
||||
debian
|
||||
1
config/dependencies/trisquel
Symbolic link
1
config/dependencies/trisquel
Symbolic link
@@ -0,0 +1 @@
|
||||
ubuntu2004
|
||||
@@ -1,19 +1,14 @@
|
||||
pkg_add="apt-get -y install"
|
||||
pkglist=" \
|
||||
wget git uuid-dev nasm build-essential sharutils curl parted e2fsprogs unzip \
|
||||
pkg-config gcc-arm-linux-gnueabi \
|
||||
build-essential python3 \
|
||||
build-essential perl python3-setuptools libncurses5-dev doxygen iasl gdb flex \
|
||||
bison build-essential git libssl-dev gnat python-is-python3 \
|
||||
ttf-unifont libopts25 libselinux1-dev autogen m4 autoconf help2man \
|
||||
libopts25-dev libfont-freetype-perl automake autotools-dev build-essential bison \
|
||||
flex libfuse-dev liblzma-dev gawk libdevmapper-dev libtool libfreetype6-dev \
|
||||
gettext unifont bc bison build-essential device-tree-compiler efitools flex \
|
||||
libfdt-dev liblz4-tool libgnutls28-dev libncurses-dev libpython3-dev libsdl2-dev \
|
||||
libssl-dev lz4 lzma lzma-alone openssl pkg-config python3 python3-distutils \
|
||||
python3-pkg-resources python3-pycryptodome python3-pyelftools swig uuid-dev \
|
||||
build-essential libpci-dev pciutils zlib1g-dev libftdi-dev build-essential \
|
||||
libusb-1.0-0-dev libusb-1.0 libusb-1.0-0-dev libusb-dev cmake \
|
||||
innoextract p7zip p7zip-full unar \
|
||||
binutils-arm-none-eabi gcc-arm-none-eabi libnewlib-arm-none-eabi cmake \
|
||||
autoconf autogen automake autopoint autotools-dev bc binutils-arm-none-eabi \
|
||||
bison build-essential cmake curl device-tree-compiler doxygen e2fsprogs efitools \
|
||||
flex gawk gcc-arm-linux-gnueabi gcc-arm-none-eabi gdb gettext git gnat help2man \
|
||||
innoextract libdevmapper-dev libfdt-dev libfont-freetype-perl libfreetype6-dev \
|
||||
libftdi-dev libfuse-dev libgnutls28-dev liblz4-tool liblzma-dev libncurses5-dev \
|
||||
libncurses-dev libnewlib-arm-none-eabi libopts25 libopts25-dev libpci-dev \
|
||||
libpython3-dev libsdl2-dev libselinux1-dev libssl-dev libtool libusb-1.0-0 \
|
||||
libusb-1.0-0-dev lz4 lzma lzma-alone m4 nasm openssl p7zip p7zip-full parted \
|
||||
pciutils perl pkg-config python3 python3-distutils python3-pkg-resources \
|
||||
python3-pycryptodome python3-pyelftools python3-setuptools python-is-python3 \
|
||||
sharutils swig ttf-unifont unar unifont unzip uuid-dev wget zlib1g-dev \
|
||||
"
|
||||
|
||||
@@ -7,5 +7,5 @@ ncurses-devel font-unifont-bdf autogen help2man base-devel bison flex \
|
||||
dejavu-fonts-ttf texinfo rsync python3 libusb xz gawk device-mapper fuse gettext \
|
||||
gettext-devel freetype base-devel libpciaccess pciutils zlib libftdi1 \
|
||||
base-devel libusb cmake innoextract p7zip unar cross-arm-none-eabi-binutils \
|
||||
cross-arm-none-eabi-gcc cross-arm-none-eabi-newlib cmake \
|
||||
cross-arm-none-eabi-gcc cross-arm-none-eabi-newlib cross-arm-none-eabi-libstdc++ cmake \
|
||||
"
|
||||
|
||||
@@ -2,4 +2,5 @@
|
||||
rev: 0a7bc1d71735ef97b00dfec0fd54a02fcc5d1bb0
|
||||
loc: bios_extract
|
||||
url: https://review.coreboot.org/bios_extract
|
||||
bkup_url: https://github.com/coreboot/bios_extract/
|
||||
}
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
{biosutilities}{
|
||||
rev: 03ae0cf0706ede5a2a15da0986c19c776d0e6b26
|
||||
loc: biosutilities
|
||||
url: https://github.com/platomav/BIOSUtilities
|
||||
url: https://codeberg.org/libreboot/BIOSUtilities
|
||||
bkup_url: https://github.com/platomav/BIOSUtilities
|
||||
}
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
{flashrom}{
|
||||
rev: 11680db4e1251eb842bee11e53b6d1f0ae67767b
|
||||
rev: fba29da188b4a3aa8a3cf6f5a3d13c37a5d9e1d7
|
||||
loc: flashrom
|
||||
url: https://review.coreboot.org/flashrom.git
|
||||
bkup_url: https://github.com/flashrom/flashrom
|
||||
}
|
||||
|
||||
@@ -2,12 +2,13 @@
|
||||
rev: e58b870ff926415e23fc386af41ff81b2f588763
|
||||
loc: grub
|
||||
url: git://git.savannah.gnu.org/grub.git
|
||||
bkup_url: http://git.savannah.gnu.org/r/grub.git
|
||||
bkup_url: https://codeberg.org/libreboot/grub
|
||||
depend: gnulib
|
||||
}
|
||||
|
||||
{gnulib}{
|
||||
rev: 9f48fb992a3d7e96610c4ce8be969cff2d61a01b
|
||||
loc: grub/gnulib
|
||||
url: git://git.sv.gnu.org/gnulib
|
||||
url: git://git.sv.gnu.org/gnulib
|
||||
bkup_url: https://codeberg.org/libreboot/gnulib
|
||||
}
|
||||
|
||||
6
config/git/img
Normal file
6
config/git/img
Normal file
@@ -0,0 +1,6 @@
|
||||
{img}{
|
||||
rev: 918c0ba07cf45f07836fa8c312fc51b48db32e0a
|
||||
loc: img
|
||||
url: https://codeberg.org/libreboot/lbwww-img
|
||||
bkup_url: https://git.disroot.org/libreboot/lbwww-img
|
||||
}
|
||||
@@ -1,5 +1,6 @@
|
||||
{memtest86plus}{
|
||||
rev: 5dcd424ea7afb857c1171e747ef064d98d26afeb
|
||||
loc: memtest86plus
|
||||
url: https://github.com/memtest86plus/memtest86plus.git
|
||||
url: https://codeberg.org/libreboot/memtest86plus
|
||||
bkup_url: https://github.com/memtest86plus/memtest86plus.git
|
||||
}
|
||||
|
||||
6
config/git/pico-sdk
Normal file
6
config/git/pico-sdk
Normal file
@@ -0,0 +1,6 @@
|
||||
{pico-sdk}{
|
||||
rev: 6a7db34ff63345a7badec79ebea3aaef1712f374
|
||||
loc: pico-sdk
|
||||
url: https://codeberg.org/libreboot/pico-sdk
|
||||
bkup_url: https://github.com/raspberrypi/pico-sdk
|
||||
}
|
||||
7
config/git/pico-serprog
Normal file
7
config/git/pico-serprog
Normal file
@@ -0,0 +1,7 @@
|
||||
{pico-serprog}{
|
||||
rev: c8c16e9c11fe9e5b7230ff358f79de3f1951e1d9
|
||||
loc: pico-serprog
|
||||
url: https://codeberg.org/libreboot/pico-serprog
|
||||
bkup_url: https://git.disroot.org/libreboot/pico-serprog
|
||||
depend: pico-sdk
|
||||
}
|
||||
@@ -1,34 +0,0 @@
|
||||
{rpi-pico-serprog}{
|
||||
rev: c8c16e9c11fe9e5b7230ff358f79de3f1951e1d9
|
||||
loc: pico-serprog
|
||||
url: https://codeberg.org/libreboot/pico-serprog
|
||||
bkup_url: https://notabug.org/libreboot/pico-serprog
|
||||
depend: rpi-pico-sdk
|
||||
depend: rpi-pico-tinyusb
|
||||
}
|
||||
|
||||
{rpi-pico-sdk}{
|
||||
rev: 6a7db34ff63345a7badec79ebea3aaef1712f374
|
||||
loc: pico-sdk
|
||||
url: https://github.com/raspberrypi/pico-sdk
|
||||
}
|
||||
|
||||
{rpi-pico-tinyusb}{
|
||||
rev: 86c416d4c0fb38432460b3e11b08b9de76941bf5
|
||||
loc: pico-sdk/lib/tinyusb
|
||||
url: https://github.com/hathach/tinyusb.git
|
||||
}
|
||||
|
||||
{stm32-vserprog}{
|
||||
rev: 8fcf0a4d41800631b571fa7bbd1d8b251f0a2111
|
||||
loc: stm32-vserprog
|
||||
url: https://codeberg.org/libreboot/stm32-vserprog
|
||||
bkup_url: https://notabug.org/libreboot/stm32-vserprog
|
||||
depend: libopencm3
|
||||
}
|
||||
|
||||
{libopencm3}{
|
||||
rev: 458250dc6147dc807eec9e4d5a6caf38a699ecb1
|
||||
loc: stm32-vserprog/libopencm3
|
||||
url: https://github.com/libopencm3/libopencm3
|
||||
}
|
||||
6
config/git/stm32-vserprog
Normal file
6
config/git/stm32-vserprog
Normal file
@@ -0,0 +1,6 @@
|
||||
{stm32-vserprog}{
|
||||
rev: 8fcf0a4d41800631b571fa7bbd1d8b251f0a2111
|
||||
loc: stm32-vserprog
|
||||
url: https://codeberg.org/libreboot/stm32-vserprog
|
||||
bkup_url: https://git.disroot.org/libreboot/stm32-vserprog
|
||||
}
|
||||
@@ -1,5 +1,6 @@
|
||||
{uefitool}{
|
||||
rev: 4a41c33596e9bc3ae812e763965d91ac57553e02
|
||||
loc: uefitool
|
||||
url: https://github.com/LongSoft/UEFITool
|
||||
url: https://codeberg.org/libreboot/UEFITool
|
||||
bkup_url: https://github.com/LongSoft/UEFITool
|
||||
}
|
||||
|
||||
6
config/git/www
Normal file
6
config/git/www
Normal file
@@ -0,0 +1,6 @@
|
||||
{www}{
|
||||
rev: f3001eae5724ef38fe512a378148a2d619a0ff24
|
||||
loc: www
|
||||
url: https://codeberg.org/libreboot/lbwww
|
||||
bkup_url: https://git.disroot.org/libreboot/lbwww
|
||||
}
|
||||
@@ -101,7 +101,7 @@ menuentry 'Load Operating System (incl. fully encrypted disks) [o]' --hotkey='o
|
||||
|
||||
# TODO: add more strings, based on what distros set up when
|
||||
# the user select auto-partitioning on those installers
|
||||
lvmvol="lvm/matrix-bootvol lvm/matrix-rootvol"
|
||||
lvmvol="lvm/grubcrypt-bootvol lvm/grubcrypt-rootvol"
|
||||
|
||||
raidvol="md/0 md/1 md/2 md/3 md/4 md/5 md/6 md/7 md/8 md/9"
|
||||
|
||||
|
||||
@@ -16,7 +16,7 @@ index bd4431000..31308e16a 100644
|
||||
grub_term_cls (term);
|
||||
|
||||
- msg_formatted = grub_xasprintf (_("GNU GRUB version %s"), PACKAGE_VERSION);
|
||||
+ msg_formatted = grub_xasprintf (_("libreboot firmware, based on coreboot. https://libreboot.org/"));
|
||||
+ msg_formatted = grub_xasprintf (_("Libreboot 20231021 release, based on coreboot. https://libreboot.org/"));
|
||||
if (!msg_formatted)
|
||||
return;
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# SPDX-FileCopyrightText: 2022, 2023 Leah Rowe <leah@libreboot.org>
|
||||
|
||||
version=""; versiondate=""; projectname=""
|
||||
version=""; versiondate=""; projectname=""; _nogit=""
|
||||
|
||||
x_() {
|
||||
[ $# -lt 1 ] || ${@} || err_exit err ${@}
|
||||
|
||||
@@ -4,8 +4,7 @@
|
||||
|
||||
# This file is only used by update/project/trees
|
||||
|
||||
eval "$(setvars "" _target rev _xm)"
|
||||
eval "$(setvars "" loc url bkup_url depend)"
|
||||
eval "$(setvars "" _target rev _xm loc url bkup_url depend)"
|
||||
tmp_git_dir="${PWD}/tmp/gitclone"
|
||||
|
||||
fetch_project_trees()
|
||||
@@ -14,10 +13,11 @@ fetch_project_trees()
|
||||
[ -d "src/${project}/${project}" ] || fetch_from_upstream
|
||||
fetch_config
|
||||
[ -z "${rev}" ] && err "fetch_project_trees $target: undefined rev"
|
||||
[ -d "src/${project}/${tree}" ] && \
|
||||
if [ -d "src/${project}/${tree}" ]; then
|
||||
printf "download/%s %s (%s): exists\n" \
|
||||
"${project}" "${tree}" "${_target}" 1>&2 && \
|
||||
return 1
|
||||
"${project}" "${tree}" "${_target}" 1>&2
|
||||
return 0
|
||||
fi
|
||||
prepare_new_tree
|
||||
}
|
||||
|
||||
@@ -26,12 +26,12 @@ fetch_from_upstream()
|
||||
[ -d "src/${project}/${project}" ] && return 0
|
||||
|
||||
x_ mkdir -p "src/${project}"
|
||||
x_ fetch_project_repo "${project}"
|
||||
fetch_project_repo "${project}"
|
||||
}
|
||||
|
||||
fetch_config()
|
||||
{
|
||||
x_ rm -f "${cfgsdir}/"*/seen
|
||||
rm -f "${cfgsdir}/"*/seen || err "fetch_config ${cfgsdir}: !rm seen"
|
||||
while true; do
|
||||
eval "$(setvars "" rev tree)"
|
||||
_xm="fetch_config ${project}/${_target}"
|
||||
@@ -51,7 +51,7 @@ load_target_config()
|
||||
. "${cfgsdir}/${1}/target.cfg" || \
|
||||
err "load_target_config ${cfgsdir}/${1}: cannot load config"
|
||||
|
||||
x_ touch "${cfgsdir}/${1}/seen"
|
||||
touch "${cfgsdir}/${1}/seen" || err "load_config $cfgsdir/$1: !mk seen"
|
||||
}
|
||||
|
||||
prepare_new_tree()
|
||||
@@ -59,14 +59,15 @@ prepare_new_tree()
|
||||
printf "Creating %s tree %s (%s)\n" "${project}" "${tree}" "${_target}"
|
||||
|
||||
x_ cp -R "src/${project}/${project}" "src/${project}/${tree}"
|
||||
x_ git_reset_rev "src/${project}/${tree}" "${rev}"
|
||||
git_reset_rev "src/${project}/${tree}" "${rev}"
|
||||
(
|
||||
x_ cd "src/${project}/${tree}"
|
||||
git submodule update --init --checkout || \
|
||||
err "prepare_new_tree ${project}/${tree}: can't update git modules"
|
||||
if [ -f ".gitmodules" ]; then
|
||||
git submodule update --init --checkout || \
|
||||
err "prepare_new_tree ${project}/${tree}: !submodules"
|
||||
fi
|
||||
)
|
||||
git_am_patches "${PWD}/src/${project}/${tree}" \
|
||||
"${PWD}/${cfgsdir}/${tree}/patches"
|
||||
git_am_patches "$PWD/src/$project/$tree" "$PWD/$cfgsdir/$tree/patches"
|
||||
}
|
||||
|
||||
fetch_project_repo()
|
||||
@@ -75,10 +76,10 @@ fetch_project_repo()
|
||||
verify_config
|
||||
|
||||
clone_project
|
||||
[ "${depend}" = "" ] || for d in ${depend} ; do
|
||||
x_ ./update project trees -f ${d}
|
||||
[ -z "${depend}" ] || for d in ${depend} ; do
|
||||
x_ ./update trees -f ${d}
|
||||
done
|
||||
x_ rm -Rf "${tmp_git_dir}"
|
||||
rm -Rf "${tmp_git_dir}" || err "fetch_repo: !rm -Rf ${tmp_git_dir}"
|
||||
}
|
||||
|
||||
verify_config()
|
||||
@@ -91,33 +92,39 @@ verify_config()
|
||||
|
||||
clone_project()
|
||||
{
|
||||
x_ rm -Rf "${tmp_git_dir}"
|
||||
x_ mkdir -p "${tmp_git_dir%/*}"
|
||||
rm -Rf "${tmp_git_dir}" || err "clone_project: !rm -Rf ${tmp_git_dir}"
|
||||
mkdir -p "${tmp_git_dir%/*}" || \
|
||||
err "clone_project: !mkdir -p ${tmp_git_dir%/*}"
|
||||
|
||||
loc="${loc#src/}"
|
||||
loc="src/${loc}"
|
||||
if [ -d "${loc}" ]; then
|
||||
printf "%s already exists, so skipping download\n" "$loc" 1>&2
|
||||
return 0
|
||||
fi
|
||||
|
||||
git clone ${url} "${tmp_git_dir}" || \
|
||||
git clone ${bkup_url} "${tmp_git_dir}" || \
|
||||
err "clone_project: could not download ${project}"
|
||||
git_reset_rev "${tmp_git_dir}" "${rev}" || \
|
||||
err "clone_project ${loc}/: cannot reset <- ${rev}"
|
||||
git_am_patches "${tmp_git_dir}" "${PWD}/config/${project}/patches" || \
|
||||
err "clone_project ${loc}/: cannot apply patches"
|
||||
git_reset_rev "${tmp_git_dir}" "${rev}"
|
||||
git_am_patches "${tmp_git_dir}" "${PWD}/config/${project}/patches"
|
||||
|
||||
x_ rm -Rf "${loc}"
|
||||
[ "${loc}" = "${loc%/*}" ] || x_ mkdir -p ${loc%/*}
|
||||
x_ mv "${tmp_git_dir}" "${loc}"
|
||||
mv "${tmp_git_dir}" "${loc}" || \
|
||||
err "clone_project: !mv ${tmp_git_dir} ${loc}"
|
||||
}
|
||||
|
||||
git_reset_rev()
|
||||
{
|
||||
sdir="${1}"
|
||||
_rev="${2}"
|
||||
(
|
||||
x_ cd "${sdir}"
|
||||
git reset --hard ${_rev} || \
|
||||
err "cannot git reset ${sdir} <- ${rev}"
|
||||
cd "${1}" || err "git_reset_rev: !cd ${1}"
|
||||
git reset --hard ${2} || err "!git reset ${1} <- ${2}"
|
||||
if [ "${project}" != "coreboot" ] && [ "${project}" != "u-boot" ] && \
|
||||
[ -f ".gitmodules" ]; then
|
||||
git submodule update --init --checkout || \
|
||||
err "git_reset_rev ${1}: can't download submodules"
|
||||
fi
|
||||
)
|
||||
}
|
||||
|
||||
@@ -126,7 +133,7 @@ git_am_patches()
|
||||
sdir="${1}" # assumed to be absolute path
|
||||
patchdir="${2}" # ditto
|
||||
(
|
||||
x_ cd "${sdir}"
|
||||
cd "${sdir}" || err "git_am_patches: !cd ${sdir}"
|
||||
for patch in "${patchdir}/"*; do
|
||||
[ -L "${patch}" ] && continue
|
||||
[ -f "${patch}" ] || continue
|
||||
@@ -138,8 +145,7 @@ git_am_patches()
|
||||
)
|
||||
for patches in "${patchdir}/"*; do
|
||||
[ -L "${patches}" ] && continue
|
||||
[ ! -d "${patches}" ] || \
|
||||
git_am_patches "${sdir}" "${patches}" err || \
|
||||
err "apply_patches: !${sdir}/ ${patches}/"
|
||||
[ ! -d "${patches}" ] && continue
|
||||
git_am_patches "${sdir}" "${patches}"
|
||||
done
|
||||
}
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
# Modifications in this version are Copyright 2021 and 2023 Leah Rowe.
|
||||
# Original copyright detailed in repo: https://review.coreboot.org/coreboot/
|
||||
|
||||
eval "$(setvars "" MRC_url MRC_url_bkup MRC_hash MRC_board)"
|
||||
eval "$(setvars "" MRC_url MRC_url_bkup MRC_hash MRC_board ROOTFS SHELLBALL)"
|
||||
|
||||
extract_mrc()
|
||||
{
|
||||
@@ -12,25 +12,25 @@ extract_mrc()
|
||||
[ -z "${CONFIG_MRC_FILE}" ] && \
|
||||
err "extract_mrc $MRC_hash: CONFIG_MRC_FILE not set"
|
||||
|
||||
_file="${MRC_url##*/}"
|
||||
_file="${_file%.zip}"
|
||||
ROOTFS="root-a.ext2"
|
||||
SHELLBALL="chromeos-firmwareupdate-${MRC_board}"
|
||||
|
||||
(
|
||||
x_ cd "${appdir}"
|
||||
extract_partition ROOT-A "${_file}" root-a.ext2
|
||||
extract_shellball root-a.ext2 chromeos-firmwareupdate-${MRC_board}
|
||||
extract_coreboot chromeos-firmwareupdate-${MRC_board}
|
||||
extract_partition
|
||||
extract_shellball
|
||||
extract_coreboot
|
||||
)
|
||||
|
||||
x_ "${cbfstool}" "${appdir}/"coreboot-*.bin extract -n mrc.bin \
|
||||
-f "${_dest}" -r RO_SECTION
|
||||
"${cbfstool}" "${appdir}/"coreboot-*.bin extract -n mrc.bin \
|
||||
-f "${_dest}" -r RO_SECTION || err "extract_mrc: cbfstool ${_dest}"
|
||||
}
|
||||
|
||||
extract_partition()
|
||||
{
|
||||
NAME=${1}
|
||||
FILE=${2}
|
||||
ROOTFS=${3}
|
||||
NAME="ROOT-A"
|
||||
FILE="${MRC_url##*/}"
|
||||
FILE="${FILE%.zip}"
|
||||
_bs=1024
|
||||
|
||||
printf "Extracting ROOT-A partition\n"
|
||||
@@ -40,15 +40,13 @@ extract_partition()
|
||||
START=$(( $( echo ${ROOTP} | cut -f2 -d\ | tr -d "B" ) ))
|
||||
SIZE=$(( $( echo ${ROOTP} | cut -f4 -d\ | tr -d "B" ) ))
|
||||
|
||||
x_ dd if="${FILE}" of="${ROOTFS}" bs=${_bs} \
|
||||
skip=$(( ${START} / ${_bs} )) count=$(( ${SIZE} / ${_bs} ))
|
||||
dd if="${FILE}" of="${ROOTFS}" bs=${_bs} \
|
||||
skip=$(( ${START} / ${_bs} )) count=$(( ${SIZE} / ${_bs} )) || \
|
||||
err "extract_partition, dd ${FILE}, ${ROOTFS}"
|
||||
}
|
||||
|
||||
extract_shellball()
|
||||
{
|
||||
ROOTFS=${1}
|
||||
SHELLBALL=${2}
|
||||
|
||||
printf "Extracting chromeos-firmwareupdate\n"
|
||||
printf "cd /usr/sbin\ndump chromeos-firmwareupdate ${SHELLBALL}\nquit" \
|
||||
| debugfs "${ROOTFS}" || err "extract_shellball: debugfs"
|
||||
@@ -56,13 +54,12 @@ extract_shellball()
|
||||
|
||||
extract_coreboot()
|
||||
{
|
||||
_shellball=${1}
|
||||
_unpacked=$( mktemp -d )
|
||||
|
||||
printf "Extracting coreboot image\n"
|
||||
[ -f "${_shellball}" ] || \
|
||||
[ -f "${SHELLBALL}" ] || \
|
||||
err "extract_coreboot: shellball missing in google cros image"
|
||||
x_ sh "${_shellball}" --unpack "${_unpacked}"
|
||||
sh "${SHELLBALL}" --unpack "${_unpacked}" || err "shellball, ${SHELLBALL}"
|
||||
|
||||
# TODO: audit the f* out of that shellball, for each mrc version.
|
||||
# it has to be updated for each mrc update. we should ideally
|
||||
@@ -74,5 +71,6 @@ extract_coreboot()
|
||||
_version=$( cat "${_unpacked}/VERSION" | grep BIOS\ version: | \
|
||||
cut -f2 -d: | tr -d \ )
|
||||
|
||||
x_ cp "${_unpacked}/bios.bin" "coreboot-${_version}.bin"
|
||||
cp "${_unpacked}/bios.bin" "coreboot-${_version}.bin" || \
|
||||
err "!cp unpacked, ${_unpacked}/bios.bin, coreboot-${_version}.rom"
|
||||
}
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
# SPDX-FileCopyrightText: 2022 Ferass El Hafidi <vitali64pmemail@protonmail.com>
|
||||
# SPDX-FileCopyrightText: 2023 Leah Rowe <leah@libreboot.org>
|
||||
|
||||
vendir="vendor"
|
||||
vendir="vendorfiles"
|
||||
appdir="${vendir}/app"
|
||||
cbdir="src/coreboot/default"
|
||||
cbcfgsdir="config/coreboot"
|
||||
@@ -17,11 +17,11 @@ eval "$(setvars "" CONFIG_BOARD_DELL_E6400 CONFIG_HAVE_MRC CONFIG_HAVE_ME_BIN \
|
||||
CONFIG_INCLUDE_SMSC_SCH5545_EC_FW CONFIG_SMSC_SCH5545_EC_FW_FILE \
|
||||
CONFIG_IFD_BIN_PATH CONFIG_MRC_FILE _dest board boarddir)"
|
||||
|
||||
listitems()
|
||||
items()
|
||||
{
|
||||
rval=1
|
||||
[ ! -d "${1}" ] && \
|
||||
printf "listitems: directory '%s' doesn't exist" "${1}" && \
|
||||
printf "items: directory '%s' doesn't exist" "${1}" && \
|
||||
return 1
|
||||
for x in "${1}/"*; do
|
||||
# -e used because this is for files *or* directories
|
||||
@@ -62,13 +62,12 @@ check_defconfig()
|
||||
handle_coreboot_utils()
|
||||
{
|
||||
for util in cbfstool ifdtool; do
|
||||
x_ ./update project trees ${_f} "src/coreboot/${1}/util/${util}"
|
||||
x_ ./update trees ${_f} "src/coreboot/${1}/util/${util}"
|
||||
[ -z "${mode}" ] && [ ! -f "cbutils/${1}/${util}" ] && \
|
||||
x_ mkdir -p "cbutils/${1}" && \
|
||||
x_ cp "src/coreboot/${1}/util/${util}/${util}" \
|
||||
"cbutils/${1}"
|
||||
[ -z "${mode}" ] || \
|
||||
x_ rm -Rf "cbutils/${1}"
|
||||
[ -z "${mode}" ] || x_ rm -Rf "cbutils/${1}"
|
||||
done
|
||||
}
|
||||
|
||||
@@ -90,12 +89,12 @@ modify_coreboot_rom()
|
||||
done
|
||||
elif [ "${romtype}" = "i945 laptop" ]; then
|
||||
# for bucts-based installation method from factory bios
|
||||
x_ dd if="${rompath}" of="${tmprom}" bs=1 \
|
||||
dd if="${rompath}" of="${tmprom}" bs=1 \
|
||||
skip=$(($(stat -c %s "${rompath}") - 0x10000)) \
|
||||
count=64k
|
||||
x_ dd if="${tmprom}" of="${rompath}" bs=1 \
|
||||
count=64k || err "modrom 1, dd, ${rompath}"
|
||||
dd if="${tmprom}" of="${rompath}" bs=1 \
|
||||
seek=$(($(stat -c %s "${rompath}") - 0x20000)) \
|
||||
count=64k conv=notrunc
|
||||
count=64k conv=notrunc || err "modrom 2, dd, ${rompath}"
|
||||
fi
|
||||
x_ rm -f "${tmprom}"
|
||||
}
|
||||
|
||||
@@ -23,10 +23,10 @@ main()
|
||||
|
||||
handle_dependencies()
|
||||
{
|
||||
[ -d "src/grub" ] || x_ ./update project trees -f grub
|
||||
[ -d "src/grub" ] || x_ ./update trees -f grub
|
||||
[ -f "src/grub/grub-mkstandalone" ] || build_grub_utils
|
||||
x_ mkdir -p "${elfdir}"
|
||||
x_ rm -f "${elfdir}/"*
|
||||
rm -f "${elfdir}/"* || err "!rm elf, handle_, ${elfdir}/"
|
||||
}
|
||||
|
||||
build_grub_utils()
|
||||
@@ -37,7 +37,7 @@ build_grub_utils()
|
||||
x_ ./bootstrap --gnulib-srcdir=gnulib/ --no-git
|
||||
x_ ./autogen.sh
|
||||
x_ ./configure --with-platform=coreboot
|
||||
x_ make -j$(nproc) FS_PAYLOAD_MODULES=""
|
||||
make -j$(nproc) FS_PAYLOAD_MODULES="" || err "!mk grub utils"
|
||||
)
|
||||
}
|
||||
|
||||
@@ -47,8 +47,8 @@ build_keymap_configs()
|
||||
[ -f "${keylayoutfile}" ] || continue
|
||||
keymap="${keylayoutfile##${grubcfgsdir}/keymap/}"
|
||||
keymap="${keymap%.gkb}"
|
||||
x_ printf "keymap %s\n" "${keymap}" > \
|
||||
"${elfdir}/keymap_${keymap}.cfg"
|
||||
printf "keymap %s\n" "${keymap}" > \
|
||||
"${elfdir}/keymap_${keymap}.cfg" || err "!insert keymap"
|
||||
done
|
||||
}
|
||||
|
||||
@@ -25,15 +25,14 @@ pv="${pv} payload_seabios_withgrub payload_uboot memtest_bin"
|
||||
v="romdir cbrom initmode displaymode cbcfg targetdir tree arch"
|
||||
v="${v} grub_timeout ubdir vendorfiles board grub_scan_disk uboot_config"
|
||||
eval "$(setvars "n" ${pv})"
|
||||
eval "$(setvars "" ${v})"
|
||||
eval "$(setvars "" boards _displaymode _payload _keyboard all targets)"
|
||||
eval "$(setvars "" ${v} boards _displaymode _payload _keyboard all targets)"
|
||||
|
||||
main()
|
||||
{
|
||||
while [ $# -gt 0 ]; do
|
||||
case ${1} in
|
||||
help) usage && exit 0 ;;
|
||||
list) listitems config/coreboot && exit 0 ;;
|
||||
list) items config/coreboot && exit 0 ;;
|
||||
-d) _displaymode="${2}" ;;
|
||||
-p) _payload="${2}" ;;
|
||||
-k) _keyboard="${2}" ;;
|
||||
@@ -45,7 +44,7 @@ main()
|
||||
shift 2
|
||||
done
|
||||
|
||||
[ "${all}" != "y" ] || boards=$(listitems config/coreboot) || \
|
||||
[ "${all}" != "y" ] || boards=$(items config/coreboot) || \
|
||||
err "Cannot generate list of boards for building"
|
||||
|
||||
for x in ${boards}; do
|
||||
@@ -63,11 +62,7 @@ main()
|
||||
printf "\nROM images available in these directories:\n"
|
||||
printf "${targets}^^ ROM images available in these directories.\n\n"
|
||||
|
||||
printf "WARNING!!!!!!! PLEASE READ:\n\n"
|
||||
|
||||
printf "DO NOT flash ROM images contained under elf/, because they lack"
|
||||
printf " payloads and will BRICK your machine. Please flash ROM images"
|
||||
printf " contained under bin/ instead. YOU HAVE BEEN WARNED.\n\n"
|
||||
printf "DO NOT flash ROM images from elf/ - please use bin/ instead.\n"
|
||||
}
|
||||
|
||||
check_target()
|
||||
@@ -133,15 +128,15 @@ prepare_target()
|
||||
cbrom="${cbdir}/build/coreboot.rom"
|
||||
|
||||
[ -f "${cbfstool}" ] || \
|
||||
x_ ./update project trees -b coreboot utils ${tree}
|
||||
x_ ./update trees -b coreboot utils ${tree}
|
||||
|
||||
build_dependency_seabios
|
||||
|
||||
memtest_bin="memtest86plus/build64/memtest.bin"
|
||||
[ "${payload_memtest}" != "y" ] || [ -f "src/${memtest_bin}" ] || \
|
||||
x_ ./update project trees -b memtest86plus
|
||||
x_ ./update trees -b memtest86plus
|
||||
|
||||
x_ rm -f "${romdir}/"*
|
||||
rm -f "${romdir}/"* || err "!prepare, rm files, ${romdir}"
|
||||
|
||||
build_dependency_grub
|
||||
build_dependency_uboot
|
||||
@@ -151,13 +146,12 @@ prepare_target()
|
||||
build_dependency_seabios()
|
||||
{
|
||||
[ "${payload_seabios}" = "y" ] || return 0
|
||||
[ -f "${seavgabiosrom}" ] && \
|
||||
[ -f elf/seabios/default/libgfxinit/bios.bin.elf ] && \
|
||||
[ -f elf/seabios/default/vgarom/bios.bin.elf ] && \
|
||||
[ -f elf/seabios/default/normal/bios.bin.elf ] && return 0
|
||||
|
||||
if [ ! -f "${seavgabiosrom}" ] \
|
||||
|| [ ! -f elf/seabios/default/libgfxinit/bios.bin.elf ] \
|
||||
|| [ ! -f elf/seabios/default/vgarom/bios.bin.elf ] \
|
||||
|| [ ! -f elf/seabios/default/normal/bios.bin.elf ]; then
|
||||
x_ ./update project trees -b seabios
|
||||
fi
|
||||
x_ ./update trees -b seabios
|
||||
}
|
||||
|
||||
build_dependency_grub()
|
||||
@@ -177,14 +171,14 @@ build_dependency_grub()
|
||||
rebuild_grub="y" && break
|
||||
done
|
||||
[ "${rebuild_grub}" = "y" ] || return 0
|
||||
x_ ./build fw grub
|
||||
x_ ./build grub
|
||||
}
|
||||
|
||||
build_dependency_uboot()
|
||||
{
|
||||
[ "${payload_uboot}" = "y" ] || return 0
|
||||
|
||||
x_ ./update project trees -b u-boot ${board}
|
||||
x_ ./update trees -b u-boot ${board}
|
||||
ubdir="elf/u-boot/${board}/${uboot_config}"
|
||||
ubootelf="${ubdir}/u-boot.elf"
|
||||
[ ! -f "${ubootelf}" ] && [ -f "${ubdir}/u-boot" ] && \
|
||||
@@ -221,7 +215,7 @@ build_roms()
|
||||
"${cbcfg}" "${board}" "${displaymode}" "${initmode}" \
|
||||
1>&2 && return 0
|
||||
|
||||
x_ ./update project trees -b coreboot ${board}
|
||||
x_ ./update trees -b coreboot ${board}
|
||||
|
||||
_cbrom="elf/coreboot_nopayload_DO_NOT_FLASH/${board}/${initmode}_${displaymode}"
|
||||
[ "${initmode}" = "normal" ] && \
|
||||
@@ -280,15 +274,17 @@ build_grub_roms()
|
||||
if [ "${displaymode}" = "vesafb" ] || \
|
||||
[ "${displaymode}" = "corebootfb" ]; then
|
||||
backgroundfile="config/grub/background/${grub_background}"
|
||||
x_ "${cbfstool}" "${tmprom}" add -f ${backgroundfile} \
|
||||
-n background.png -t raw
|
||||
"${cbfstool}" "${tmprom}" add -f ${backgroundfile} \
|
||||
-n background.png -t raw || err "insert background, ${backgroundfile}"
|
||||
fi
|
||||
|
||||
tmpcfg=$(mktemp -t coreboot_rom.XXXXXXXXXX)
|
||||
x_ printf "set grub_scan_disk=\"%s\"\n" "${grub_scan_disk}" >"${tmpcfg}"
|
||||
printf "set grub_scan_disk=\"%s\"\n" "${grub_scan_disk}" >"${tmpcfg}" \
|
||||
|| err "set grub_scandisk, ${grub_scan_disk}, ${tmpcfg}"
|
||||
[ "${grub_scan_disk}" = "both" ] || \
|
||||
x_ "${cbfstool}" "${tmprom}" add -f "${tmpcfg}" -n scan.cfg -t raw
|
||||
x_ printf "set timeout=%s\n" "${grub_timeout}" > "${tmpcfg}"
|
||||
printf "set timeout=%s\n" "${grub_timeout}" > "${tmpcfg}" || \
|
||||
err "set timeout, ${grub_timeout}, ${tmpcfg}"
|
||||
[ -z "${grub_timeout}" ] || x_ "${cbfstool}" "${tmprom}" add \
|
||||
-f "${tmpcfg}" -n timeout.cfg -t raw
|
||||
x_ rm -f "${tmpcfg}"
|
||||
@@ -397,9 +393,9 @@ moverom() {
|
||||
usage()
|
||||
{
|
||||
cat <<- EOF
|
||||
USAGE: ./build fw coreboot targetname
|
||||
To build *all* boards, do this: ./build fw coreboot all
|
||||
To list *all* boards, do this: ./build fw coreboot list
|
||||
USAGE: ./build roms targetname
|
||||
To build *all* boards, do this: ./build roms all
|
||||
To list *all* boards, do this: ./build roms list
|
||||
|
||||
Optional Flags:
|
||||
-d: displaymode
|
||||
@@ -408,12 +404,12 @@ usage()
|
||||
|
||||
Example commands:
|
||||
|
||||
./build fw coreboot x60
|
||||
./build fw coreboot x200_8mb x60
|
||||
./build fw coreboot x60 -p grub -d corebootfb -k usqwerty
|
||||
./build roms x60
|
||||
./build roms x200_8mb x60
|
||||
./build roms x60 -p grub -d corebootfb -k usqwerty
|
||||
|
||||
possible values for 'target':
|
||||
$(listitems "config/coreboot")
|
||||
$(items "config/coreboot")
|
||||
|
||||
Refer to the ${projectname} documentation for more information.
|
||||
EOF
|
||||
@@ -22,12 +22,12 @@ main()
|
||||
platform="rp2040"
|
||||
boards_dir=${pico_sdk_dir}/src/boards/include/boards
|
||||
[ -d "${pico_src_dir}/" ] || \
|
||||
x_ ./update project trees -f "rpi-pico-serprog"
|
||||
x_ ./update trees -f "pico-serprog"
|
||||
elif [ "${1}" = "stm32" ]; then
|
||||
platform="stm32"
|
||||
boards_dir=${stm32_src_dir}/boards
|
||||
[ -d "${stm32_src_dir}/" ] || \
|
||||
x_ ./update project trees -f "stm32-vserprog"
|
||||
x_ ./update trees -f "stm32-vserprog"
|
||||
else
|
||||
err "${usage}"
|
||||
fi
|
||||
@@ -1,247 +0,0 @@
|
||||
#!/usr/bin/env sh
|
||||
# SPDX-License-Identifier: MIT
|
||||
# SPDX-FileCopyrightText: 2020-2023 Leah Rowe <leah@libreboot.org>
|
||||
|
||||
[ "x${DEBUG+set}" = 'xset' ] && set -v
|
||||
set -u -e
|
||||
|
||||
. "include/err.sh"
|
||||
. "include/option.sh"
|
||||
|
||||
eval "$(setvars "" vdir relname src_dirname srcdir _nogit _xm target romdir \
|
||||
microcode_required mode)"
|
||||
|
||||
_f="coreboot u-boot seabios flashrom grub memtest86plus uefitool"
|
||||
_f="${_f} bios_extract biosutilities pico-serprog stm32-vserprog"
|
||||
_f="${_f} rpi-pico-serprog"
|
||||
|
||||
main()
|
||||
{
|
||||
vdir="release"
|
||||
while getopts d:m: option; do
|
||||
[ -z "${OPTARG}" ] && err "Empty argument not allowed"
|
||||
case "${option}" in
|
||||
d) vdir="${OPTARG}" ;;
|
||||
m) mode="${OPTARG}" ;;
|
||||
*) err "Invalid option" ;;
|
||||
esac
|
||||
done
|
||||
|
||||
vdir="${vdir}/${version}"
|
||||
relname="${projectname}-${version}"
|
||||
src_dirname="${relname}_src"
|
||||
srcdir="${vdir}/${src_dirname}"
|
||||
|
||||
[ -e "${vdir}" ] && err "already exists: \"${vdir}\""
|
||||
|
||||
mkvdir
|
||||
build_release
|
||||
}
|
||||
|
||||
mkvdir()
|
||||
{
|
||||
mkdir -p "${vdir}" || err "mkvdir: !mkdir -p \"${vdir}\""
|
||||
|
||||
git_init || err "mkvdir: !git_init \"${vdir}\""
|
||||
git clone . "${srcdir}" || err "mkdir: !gitclone \"${srcdir}\""
|
||||
[ -z "${_nogit}" ] || x_ rm -Rf ".git"
|
||||
|
||||
rm -Rf "${srcdir}/.git"
|
||||
insert_version_files "${srcdir}" || err "mkvdir ${srcdir}: versionfile"
|
||||
}
|
||||
|
||||
# release archives contain .gitignore, but not .git.
|
||||
# this script can be run from lbmk.git, or an archive.
|
||||
git_init()
|
||||
{
|
||||
[ -L ".git" ] && err "Reference .git is a symlink"
|
||||
[ -e ".git" ] && return 0
|
||||
eval "$(setvars "$(date -Rd @${versiondate})" cdate _nogit)"
|
||||
|
||||
git init || return 1
|
||||
git add -A . || return 1
|
||||
git commit -m "${projectname} ${version}" --date "${cdate}" || return 1
|
||||
git tag -a "${version}" -m "${projectname} ${version}" || return 1
|
||||
}
|
||||
|
||||
build_release()
|
||||
{
|
||||
_xm="build_release ${vdir}"
|
||||
(
|
||||
cd "${srcdir}" || err "${_xm}: !cd \"${srcdir}\""
|
||||
fetch_trees
|
||||
)
|
||||
(
|
||||
cd "${srcdir%/*}" || err "${_xm}: mktarball \"${srcdir}\""
|
||||
mktarball "${srcdir##*/}" "${srcdir##*/}.tar.xz" || err "${_xm}: mksrc"
|
||||
)
|
||||
if [ "${mode}" != "src" ]; then
|
||||
(
|
||||
cd "${srcdir}" || err "${_xm}: 2 !cd \"${srcdir}\""
|
||||
mkrom_images
|
||||
)
|
||||
fi
|
||||
rm -Rf "${srcdir}" || err "${_xm}: !rm -Rf \"${srcdir}\""
|
||||
}
|
||||
|
||||
fetch_trees()
|
||||
{
|
||||
for x in ${_f}; do
|
||||
./update project trees -f "${x}" || err "${_xm}: fetch ${x}"
|
||||
done
|
||||
for x in config/*/build.list; do
|
||||
[ -f "${x}" ] || continue
|
||||
xp="${x#*/}"; xp="${xp%/*}"
|
||||
[ -L "${xp}" ] || x_ rm -Rf "src/${xp}/${xp}"
|
||||
done
|
||||
rm -Rf */.git* */*/.git* */*/*/.git* */*/*/*/.git* */*/*/*/*/.git* \
|
||||
*/*/*/*/*/*/.git* */*/*/*/*/*/*/.git* */*/*/*/*/*/*/*/.git* \
|
||||
.git tmp || err "${_xm}: rm-dotgit"
|
||||
}
|
||||
|
||||
mkrom_images()
|
||||
{
|
||||
./build fw coreboot all || err "${_xm}: roms-all"
|
||||
./build fw serprog rp2040 || err "${_xm}: rp2040"
|
||||
./build fw serprog stm32 || err "${_xm}: stm32"
|
||||
|
||||
for rombuild in bin/*; do
|
||||
[ -d "${rombuild}" ] || continue
|
||||
handle_rom_archive "${rombuild}"
|
||||
done
|
||||
|
||||
mv "release/${version}/roms/" ../roms || err "${_xm}: copy roms/"
|
||||
}
|
||||
|
||||
handle_rom_archive()
|
||||
{
|
||||
builddir="${1}"
|
||||
romdir="tmp/romdir"
|
||||
x_ rm -Rf "${romdir}"
|
||||
target="${builddir##*/}"
|
||||
|
||||
if [ ! -f "config/coreboot/${target}/target.cfg" ]; then
|
||||
# No config, just make a tarball
|
||||
tarball="release/${version}/roms/${relname}_${target}.tar.xz"
|
||||
insert_copying_files "${builddir}"
|
||||
mktarball "${builddir}" "${tarball}"
|
||||
return 0
|
||||
fi
|
||||
|
||||
romdir="${romdir}/bin/${target}"
|
||||
x_ mkdir -p "${romdir}"
|
||||
x_ cp "${builddir}/"* "${romdir}"
|
||||
|
||||
nukerom
|
||||
|
||||
printf "Generating release/%s/roms/%s-%s_%s.tar.xz\n" \
|
||||
"${version}" "${projectname}" "${version}" "${target##*/}"
|
||||
insert_version_files "${romdir}" || \
|
||||
err "mkrom_tarball ${romdir}: versionfile"
|
||||
|
||||
insert_copying_files "${romdir}"
|
||||
mkrom_tarball
|
||||
}
|
||||
|
||||
nukerom()
|
||||
{
|
||||
microcode_required="y"
|
||||
. "config/coreboot/${target}/target.cfg"
|
||||
if [ "${microcode_required}" != "y" ] && \
|
||||
[ "${microcode_required}" != "n" ]; then microcode_required="y"; fi
|
||||
if [ "${microcode_required}" = "n" ]; then
|
||||
for romfile in "${romdir}"/*.rom; do
|
||||
[ -f "${romfile}" ] || continue
|
||||
strip_ucode "${romfile}"
|
||||
done
|
||||
for romfile in "${romdir}"/*.tmprom; do
|
||||
[ -f "${romfile}" ] || continue
|
||||
x_ mv "${romfile}" "${romfile%.tmprom}.rom"
|
||||
done
|
||||
fi
|
||||
|
||||
# Hash the images before removing vendor files
|
||||
# which ./update vendor inject uses for verification
|
||||
x_ rm -f "${romdir}/vendorhashes"
|
||||
x_ touch "${romdir}/vendorhashes"
|
||||
(
|
||||
x_ cd "${romdir}"
|
||||
x_ sha512sum *.rom >> vendorhashes
|
||||
)
|
||||
|
||||
for romfile in "${romdir}"/*.rom; do
|
||||
[ -f "${romfile}" ] || continue
|
||||
x_ ./update vendor inject -r "${romfile}" -b ${target} -n nuke
|
||||
done
|
||||
}
|
||||
|
||||
strip_ucode()
|
||||
{
|
||||
romfile=${1}
|
||||
_newrom_b="${romfile%.rom}_nomicrocode.tmprom"
|
||||
x_ cp "${romfile}" "${_newrom_b}"
|
||||
microcode_present="y"
|
||||
"${cbfstool}" "${_newrom_b}" remove -n \
|
||||
cpu_microcode_blob.bin 2>/dev/null || microcode_present="n"
|
||||
[ "${microcode_present}" = "n" ] || return 0
|
||||
printf "REMARK: '%s' already lacks microcode\n" "${romfile}" 1>&2
|
||||
printf "Renaming default ROM file instead.\n" 1>&2
|
||||
x_ mv "${romfile}" "${_newrom_b}"
|
||||
}
|
||||
|
||||
insert_copying_files()
|
||||
{
|
||||
x_ rm -Rf "${1}/licenses"
|
||||
x_ mkdir -p "${1}/licenses"
|
||||
l="${1}/licenses"
|
||||
# copy licenses to rom image archive, for completion
|
||||
x_ cp "src/grub/COPYING" "${l}/COPYING.grub"
|
||||
x_ cp "src/coreboot/default/COPYING" "${l}/COPYING.coreboot"
|
||||
x_ cp -R "src/coreboot/default/LICENSES" "${l}/LICENSES.coreboot"
|
||||
x_ cp "src/seabios/default/COPYING" "${l}/COPYING.coreboot"
|
||||
x_ cp "src/seabios/default/COPYING.LESSER" "${l}/COPYING.LESSER.seabios"
|
||||
x_ cp -R "src/u-boot/default/Licenses" "${l}/COPYING.u-boot"
|
||||
}
|
||||
|
||||
mkrom_tarball()
|
||||
{
|
||||
archivename="${relname}_${target##*/}"
|
||||
f="release/${version}/roms/${archivename}"
|
||||
x_ mkdir -p "${f%/*}"
|
||||
(
|
||||
x_ cd "${romdir%/bin/${target}}"
|
||||
mktarball "bin/${target}" "${archivename}.tar.xz"
|
||||
)
|
||||
x_ mv "${romdir%/bin/${target}}/${archivename}.tar.xz"* "${f%/*}"
|
||||
|
||||
printf "Created ROM archive: ${f%/*}/${archivename}.tar.xz"
|
||||
}
|
||||
|
||||
insert_version_files()
|
||||
{
|
||||
printf "%s\n" "${version}" > "${1}/version" || return 1
|
||||
printf "%s\n" "${versiondate}" > "${1}/versiondate" || return 1
|
||||
printf "%s\n" "${projectname}" > "${1}/projectname" || return 1
|
||||
}
|
||||
|
||||
mktarball()
|
||||
{
|
||||
# preserve timestamps for reproducible tarballs
|
||||
tar_implementation=$(tar --version | head -n1) || :
|
||||
|
||||
[ "${2%/*}" = "${2}" ] || x_ mkdir -p "${2%/*}"
|
||||
if [ "${tar_implementation% *}" = "tar (GNU tar)" ]; then
|
||||
tar --sort=name --owner=root:0 --group=root:0 \
|
||||
--mtime="UTC 2023-10-14" -c "${1}" | xz -T0 -9e > "${2}" || \
|
||||
err "mktarball 1, ${1}"
|
||||
else
|
||||
# TODO: reproducible tarballs on non-GNU systems
|
||||
tar -c "${1}" | xz -T0 -9e > "${2}" || err "mktarball 2, ${1}"
|
||||
fi
|
||||
(
|
||||
[ "${2%/*}" != "${2}" ] && x_ cd "${2%/*}"
|
||||
x_ sha512sum "${2##*/}" > "${2##*/}.sha512"
|
||||
)
|
||||
}
|
||||
|
||||
main $@
|
||||
282
script/update/release
Executable file
282
script/update/release
Executable file
@@ -0,0 +1,282 @@
|
||||
#!/usr/bin/env sh
|
||||
# SPDX-License-Identifier: MIT
|
||||
# SPDX-FileCopyrightText: 2020-2023 Leah Rowe <leah@libreboot.org>
|
||||
|
||||
[ "x${DEBUG+set}" = 'xset' ] && set -v
|
||||
set -u -e
|
||||
|
||||
. "include/err.sh"
|
||||
. "include/option.sh"
|
||||
|
||||
eval "$(setvars "" vdir relname src_dirname srcdir _xm target romdir \
|
||||
microcode_required mode)"
|
||||
|
||||
main()
|
||||
{
|
||||
vdir="release"
|
||||
while getopts d:m: option; do
|
||||
[ -z "${OPTARG}" ] && err "Empty argument not allowed"
|
||||
case "${option}" in
|
||||
d) vdir="${OPTARG}" ;;
|
||||
m) mode="${OPTARG}" ;;
|
||||
*) err "Invalid option" ;;
|
||||
esac
|
||||
done
|
||||
|
||||
vdir="${vdir}/${version}"
|
||||
relname="${projectname}-${version}"
|
||||
src_dirname="${relname}_src"
|
||||
srcdir="${vdir}/${src_dirname}"
|
||||
|
||||
[ -e "${vdir}" ] && err "already exists: \"${vdir}\""
|
||||
|
||||
mkvdir
|
||||
build_release
|
||||
|
||||
printf "DONE! Check release files under %s\n" "${vdir}"
|
||||
}
|
||||
|
||||
mkvdir()
|
||||
{
|
||||
mkdir -p "${vdir}" || err "mkvdir: !mkdir -p \"${vdir}\""
|
||||
git clone . "${srcdir}" || err "mkdir: !gitclone \"${srcdir}\""
|
||||
insert_version_files "${srcdir}" || err "mkvdir ${srcdir}: versionfile"
|
||||
}
|
||||
|
||||
build_release()
|
||||
{
|
||||
_xm="build_release ${vdir}"
|
||||
(
|
||||
cd "${srcdir}" || err "${_xm}: !cd \"${srcdir}\""
|
||||
fetch_trees
|
||||
)
|
||||
(
|
||||
cd "${srcdir%/*}" || err "${_xm}: mktarball \"${srcdir}\""
|
||||
mktarball "${srcdir##*/}" "${srcdir##*/}.tar.xz" || err "${_xm}: mksrc"
|
||||
)
|
||||
[ "${mode}" = "src" ] && return 0 # for src mode, xgcc tarballs are
|
||||
# not included in the src archive
|
||||
|
||||
# now build roms, then copy crossgcc to src and re-compress
|
||||
# while compressing rom images too.
|
||||
|
||||
(
|
||||
cd "${srcdir}" || err "${_xm}: 2 !cd \"${srcdir}\""
|
||||
mkrom_images
|
||||
)
|
||||
for _cbd in "${srcdir}/src/coreboot/"*; do
|
||||
[ -d "${_cbd}/util/crossgcc/tarballs" ] || continue
|
||||
_xgccdir="${vdir}/crossgcc/${_cbd##*/}"
|
||||
mkdir -p "${_xgccdir}" || \
|
||||
err "build_release: !mkdir -p ${_xgccdir}"
|
||||
cp -R "${_cbd}/util/crossgcc/tarballs/"* "${_xgccdir}" || \
|
||||
err "build_gcc: !copy xgcc ${_cbd}"
|
||||
done
|
||||
rm -Rf "${srcdir}" || err "build_release: !rm -Rf ${srcdir}"
|
||||
(
|
||||
cd "${srcdir%/*}" || err "${_xm} 2: mktarball \"${srcdir}\""
|
||||
tar -xf "${srcdir##*/}.tar.xz" || err "!extract ${srcdir##*/}.tar.xz"
|
||||
rm -f "${srcdir##*/}.tar.xz" || err "!rm -f ${srcdir##*/}.tar.xz"
|
||||
)
|
||||
for _xgcc in "${vdir}/crossgcc/"*; do
|
||||
[ -d "${_xgcc}" ] || continue
|
||||
mkdir -p "${srcdir}/src/coreboot/${_xgcc##*/}/util/crossgcc/tarballs" || \
|
||||
err "!mkdir src/coreboot/${_xgcc##*/}/util/crossgcc/tarballs"
|
||||
mv "${_xgcc}/"* \
|
||||
"${srcdir}/src/coreboot/${_xgcc##*/}/util/crossgcc/tarballs/" \
|
||||
|| err "!move xgcc tarballs to ${srcdir}/xgcc/${_xgcc##*/}"
|
||||
done
|
||||
rm -Rf "${vdir}/crossgcc" || err "!rm -Rf \"${vdir}/crossgcc\""
|
||||
(
|
||||
cd "${srcdir%/*}" || err "${_xm}: mktarball \"${srcdir}\""
|
||||
mktarball "${srcdir##*/}" "${srcdir##*/}.tar.xz" || err "${_xm}: mksrc"
|
||||
)
|
||||
|
||||
# now test the vendor insert script, using the release archive:
|
||||
(
|
||||
cd "${srcdir}" || err "!cd ${srcdir}"
|
||||
for vrom in ../roms/*.tar.xz; do
|
||||
[ -f "${vrom}" ] || continue
|
||||
case "${vrom}" in
|
||||
*serprog*) continue ;;
|
||||
esac
|
||||
./vendor inject "${vrom}" || \
|
||||
err "TESTFAIL: inject: ${vrom##*/}"
|
||||
continue
|
||||
done
|
||||
)
|
||||
|
||||
rm -Rf "${srcdir}" || err "!rm -Rf ${srcdir}"
|
||||
}
|
||||
|
||||
fetch_trees()
|
||||
{
|
||||
for x in config/git/*; do
|
||||
[ ! -f "${x}" ] || ./update trees -f "${x#config/git/}" || \
|
||||
err "${_xm}: fetch ${x#config/git/}"
|
||||
done
|
||||
for x in config/*/build.list; do
|
||||
[ -f "${x}" ] || continue
|
||||
xp="${x#*/}"; xp="${xp%/*}"
|
||||
[ -L "${xp}" ] || rm -Rf "src/${xp}/${xp}" || \
|
||||
err "!rm -Rf \"src/${xp}/${xp}\""
|
||||
done
|
||||
|
||||
find . -name ".git" -exec rm -Rf {} + || err "${_xm}: rm .git"
|
||||
find . -name ".gitmodules" -exec rm -Rf {} + || err "${_xm}: rm .gitmod"
|
||||
x_ rm -Rf tmp .git
|
||||
}
|
||||
|
||||
mkrom_images()
|
||||
{
|
||||
./build roms all || err "${_xm}: roms-all"
|
||||
./build serprog rp2040 || err "${_xm}: rp2040"
|
||||
./build serprog stm32 || err "${_xm}: stm32"
|
||||
|
||||
for rombuild in bin/*; do
|
||||
[ -d "${rombuild}" ] || continue
|
||||
handle_rom_archive "${rombuild}"
|
||||
done
|
||||
|
||||
mv "release/${version}/roms/" ../roms || err "${_xm}: copy roms/"
|
||||
}
|
||||
|
||||
handle_rom_archive()
|
||||
{
|
||||
builddir="${1}"
|
||||
romdir="tmp/romdir"
|
||||
rm -Rf "${romdir}" || err "!rm romdir, handle_rom_archive"
|
||||
target="${builddir##*/}"
|
||||
|
||||
if [ ! -f "config/coreboot/${target}/target.cfg" ]; then
|
||||
# No config, just make a tarball
|
||||
tarball="release/${version}/roms/${relname}_${target}.tar.xz"
|
||||
insert_copying_files "${builddir}" || \
|
||||
err "!insert copy, handle, ${builddir}"
|
||||
mktarball "${builddir}" "${tarball}"
|
||||
return 0
|
||||
fi
|
||||
|
||||
romdir="${romdir}/bin/${target}"
|
||||
mkdir -p "${romdir}" || err "!mkdir -p romdir, handle_rom_archive"
|
||||
cp "${builddir}/"* "${romdir}" || err "!cp romdir, handle_rom_archive"
|
||||
|
||||
nukerom
|
||||
|
||||
printf "Generating release/%s/roms/%s-%s_%s.tar.xz\n" \
|
||||
"${version}" "${projectname}" "${version}" "${target##*/}"
|
||||
insert_version_files "${romdir}" || \
|
||||
err "mkrom_tarball ${romdir}: versionfile"
|
||||
|
||||
insert_copying_files "${romdir}" || err "!insert copy, handle 2, ${romdir}"
|
||||
mkrom_tarball
|
||||
}
|
||||
|
||||
nukerom()
|
||||
{
|
||||
microcode_required="y"
|
||||
. "config/coreboot/${target}/target.cfg"
|
||||
if [ "${microcode_required}" != "y" ] && \
|
||||
[ "${microcode_required}" != "n" ]; then microcode_required="y"; fi
|
||||
if [ "${microcode_required}" = "n" ]; then
|
||||
for romfile in "${romdir}"/*.rom; do
|
||||
[ -f "${romfile}" ] || continue
|
||||
strip_ucode "${romfile}"
|
||||
done
|
||||
for romfile in "${romdir}"/*.tmprom; do
|
||||
[ -f "${romfile}" ] || continue
|
||||
mv "${romfile}" "${romfile%.tmprom}.rom" || \
|
||||
err "!mv romfile, nukerom"
|
||||
done
|
||||
fi
|
||||
|
||||
# Hash the images before removing vendor files
|
||||
# which "./vendor inject" uses for verification
|
||||
rm -f "${romdir}/vendorhashes" || err "!rm ${romdir}/vendorhashes"
|
||||
touch "${romdir}/vendorhashes" || err "!touch ${romdir}/vendorhashes"
|
||||
(
|
||||
cd "${romdir}" || err "!cd romdir ${romdir}, nukerom"
|
||||
sha512sum *.rom >> vendorhashes || err "!create vendorhashes, nukerom"
|
||||
)
|
||||
|
||||
for romfile in "${romdir}"/*.rom; do
|
||||
[ -f "${romfile}" ] || continue
|
||||
./vendor inject -r "${romfile}" -b ${target} -n nuke || \
|
||||
err "!vendor inject (nuke) ${romfile}, nukerom"
|
||||
done
|
||||
}
|
||||
|
||||
strip_ucode()
|
||||
{
|
||||
romfile=${1}
|
||||
_newrom_b="${romfile%.rom}_nomicrocode.tmprom"
|
||||
cp "${romfile}" "${_newrom_b}" || err "!cp romfile ${romfile}, strip_u"
|
||||
microcode_present="y"
|
||||
"${cbfstool}" "${_newrom_b}" remove -n \
|
||||
cpu_microcode_blob.bin 2>/dev/null || microcode_present="n"
|
||||
[ "${microcode_present}" = "n" ] || return 0
|
||||
printf "REMARK: '%s' already lacks microcode\n" "${romfile}" 1>&2
|
||||
printf "Renaming default ROM file instead.\n" 1>&2
|
||||
mv "${romfile}" "${_newrom_b}" || err "!mv romfile ${romfile}, strip_u"
|
||||
}
|
||||
|
||||
insert_copying_files()
|
||||
{
|
||||
rm -Rf "${1}/licenses" || return 1
|
||||
mkdir -p "${1}/licenses" || return 1
|
||||
l="${1}/licenses"
|
||||
# copy licenses to rom image archive, for completion
|
||||
cp "src/grub/COPYING" "${l}/COPYING.grub" || return 1
|
||||
cp "src/coreboot/default/COPYING" "${l}/COPYING.coreboot" || return 1
|
||||
cp -R "src/coreboot/default/LICENSES" "${l}/LICENSES.coreboot" || return 1
|
||||
cp "src/seabios/default/COPYING" "${l}/COPYING.coreboot" || return 1
|
||||
cp "src/seabios/default/COPYING.LESSER" "${l}/COPYING.LESSER.seabios" || return 1
|
||||
cp -R "src/u-boot/default/Licenses" "${l}/COPYING.u-boot" || return 1
|
||||
printf "Multiple licenses. Check corresponding %s source archive\n" \
|
||||
"${projectname}" > "${1}/COPYING" || return 1
|
||||
}
|
||||
|
||||
mkrom_tarball()
|
||||
{
|
||||
archivename="${relname}_${target##*/}"
|
||||
f="release/${version}/roms/${archivename}"
|
||||
mkdir -p "${f%/*}" || err "mkrom_tarball: !mkdir -p ${f%/*}"
|
||||
(
|
||||
cd "${romdir%/bin/${target}}" || err "!cd ${romdir%/bin/${target}}"
|
||||
mktarball "bin/${target}" "${archivename}.tar.xz"
|
||||
)
|
||||
mv "${romdir%/bin/${target}}/${archivename}.tar.xz"* "${f%/*}" || \
|
||||
err "!mktarball, rom, ${f%/*}/${romdir%/bin/${target}}/${archivename}.tar.xz"
|
||||
|
||||
printf "Created ROM archive: ${f%/*}/${archivename}.tar.xz"
|
||||
}
|
||||
|
||||
insert_version_files()
|
||||
{
|
||||
printf "%s\n" "${version}" > "${1}/version" || return 1
|
||||
printf "%s\n" "${versiondate}" > "${1}/versiondate" || return 1
|
||||
printf "%s\n" "${projectname}" > "${1}/projectname" || return 1
|
||||
}
|
||||
|
||||
mktarball()
|
||||
{
|
||||
# preserve timestamps for reproducible tarballs
|
||||
tar_implementation=$(tar --version | head -n1) || :
|
||||
|
||||
[ "${2%/*}" = "${2}" ] || mkdir -p "${2%/*}" || err "mk, !mkdir -p \"${2%/*}\""
|
||||
if [ "${tar_implementation% *}" = "tar (GNU tar)" ]; then
|
||||
tar --sort=name --owner=root:0 --group=root:0 \
|
||||
--mtime="UTC 2023-10-21" -c "${1}" | xz -T0 -9e > "${2}" || \
|
||||
err "mktarball 1, ${1}"
|
||||
else
|
||||
# TODO: reproducible tarballs on non-GNU systems
|
||||
tar -c "${1}" | xz -T0 -9e > "${2}" || err "mktarball 2, ${1}"
|
||||
fi
|
||||
(
|
||||
[ "${2%/*}" != "${2}" ] && x_ cd "${2%/*}"
|
||||
sha512sum "${2##*/}" > "${2##*/}.sha512" || \
|
||||
err "!sha512sum \"${2##*/}\" > \"${2##*/}.sha512\""
|
||||
)
|
||||
}
|
||||
|
||||
main $@
|
||||
@@ -16,12 +16,9 @@ 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)"
|
||||
|
||||
tmpclean="$(mktemp -d -t makeclean.XXXXXXXXXX)"
|
||||
|
||||
main()
|
||||
{
|
||||
while getopts f:b:m:u:c:x:s:l:n: option
|
||||
do
|
||||
while getopts f:b:m:u:c:x:s:l:n: option; do
|
||||
_f="${1}"
|
||||
case "${1}" in
|
||||
-b) : ;;
|
||||
@@ -37,19 +34,16 @@ main()
|
||||
esac
|
||||
shift; project="${OPTARG#src/}"; shift
|
||||
done
|
||||
[ -z "${_f}" ] && err "flag not specified (-m, -u, -b, -c, -x, -f, -s, -l or -n)"
|
||||
[ -z "${_f}" ] && err "missing flag (-m/-u/-b/-c/-x/-f/-s/-l/-n)"
|
||||
[ -z "${project}" ] && err "project name not specified"
|
||||
|
||||
if [ ! -f "config/${project}/build.list" ]; then
|
||||
build_projects $@
|
||||
else
|
||||
build_targets $@
|
||||
fi
|
||||
[ -f "config/${project}/build.list" ] && build_targets $@ && return 0
|
||||
build_projects $@
|
||||
}
|
||||
|
||||
build_projects()
|
||||
{
|
||||
[ $# -gt 0 ] && x_ ./update project trees ${_f} ${@}
|
||||
[ $# -gt 0 ] && x_ ./update trees ${_f} ${@}
|
||||
|
||||
if [ "${mode}" = "fetch" ]; then
|
||||
fetch_project_repo
|
||||
@@ -57,7 +51,7 @@ build_projects()
|
||||
fi
|
||||
|
||||
codedir="src/${project}"
|
||||
[ -d "${codedir}" ] || x_ ./update project trees -f "${project}"
|
||||
[ -d "${codedir}" ] || x_ ./update trees -f "${project}"
|
||||
|
||||
if [ "${project}" = "uefitool" ]; then
|
||||
(
|
||||
@@ -87,7 +81,7 @@ build_targets()
|
||||
[ $# -gt 0 ] && target1="${1}"
|
||||
[ "${target1}" = "utils" ] && [ "${project}" = "coreboot" ] && \
|
||||
shift 1
|
||||
targets=$(listitems "${cfgsdir}") || \
|
||||
targets=$(items "${cfgsdir}") || \
|
||||
err "Cannot get options for ${cfgsdir}"
|
||||
[ $# -gt 0 ] && targets=$@
|
||||
|
||||
@@ -103,7 +97,7 @@ handle_targets()
|
||||
printf "Running 'make %s' for project '%s, target '%s''\n" \
|
||||
"${mode}" "${project}" "${target}"
|
||||
[ "${project}" != "coreboot" ] || [ ! -z ${mode} ] || \
|
||||
x_ ./update vendor download ${target}
|
||||
x_ ./vendor download ${target}
|
||||
x_ handle_defconfig
|
||||
done
|
||||
|
||||
@@ -151,10 +145,8 @@ handle_src_tree()
|
||||
. "${target_dir}/target.cfg" || \
|
||||
err "handle_src_tree ${target_dir}: cannot load target.cfg"
|
||||
|
||||
[ -z "${tree}" ] && \
|
||||
err "handle_src_tree: ${target_dir}: tree undefined"
|
||||
[ -z "${arch}" ] && \
|
||||
err "handle_src_tree: ${target_dir}: undefined cpu type"
|
||||
[ -z "${arch}" ] && err "handle_src_tree $project/$tree: arch unset"
|
||||
[ -z "${tree}" ] && err "handle_src_tree $project/$tree: tree unset"
|
||||
|
||||
codedir="src/${project}/${tree}"
|
||||
|
||||
@@ -165,23 +157,15 @@ handle_src_tree()
|
||||
"${codedir}" 1>&2
|
||||
return 1
|
||||
fi
|
||||
x_ ./update project trees -f "${project}" "${target}"
|
||||
elif [ "${mode}" = "distclean" ] || \
|
||||
[ "${mode}" = "crossgcc-clean" ]; then
|
||||
[ -f "${tmpclean}/${tree}" ] && return 1
|
||||
touch "${tmpclean}/${tree}"
|
||||
x_ ./update trees -f "${project}" "${target}"
|
||||
fi
|
||||
|
||||
[ "${target1}" = "utils" ] && [ "${project}" = "coreboot" ] && return 0
|
||||
[ "$project" != "coreboot" ] && [ "$project" != "u-boot" ] && return 0
|
||||
|
||||
# u-boot and coreboot are both compiled with coreboot's crossgcc
|
||||
if [ "${project}" = "coreboot" ] || [ "${project}" = "u-boot" ]; then
|
||||
[ ! -z ${mode} ] || check_cross_compiler || \
|
||||
err "handle_src_tree ${project}/${target}: crossgcc"
|
||||
cbfstool="cbutils/${tree}/cbfstool"
|
||||
[ -f "${cbfstool}" ] || \
|
||||
x_ ./update project trees -b coreboot utils "${tree}"
|
||||
fi
|
||||
[ -z "${mode}" ] || return 0
|
||||
check_cross_compiler
|
||||
}
|
||||
|
||||
# set up cross-compiler (coreboot crossgcc) for u-boot and coreboot
|
||||
@@ -190,42 +174,35 @@ check_cross_compiler()
|
||||
{
|
||||
[ "${crossgcc_ada}" = "y" ] || [ "${crossgcc_ada}" = "n" ] || \
|
||||
crossgcc_ada="y"
|
||||
[ "${crossgcc_ada}" != "y" ] && \
|
||||
export BUILD_LANGUAGES=c
|
||||
[ "${crossgcc_ada}" = "y" ] || export BUILD_LANGUAGES=c
|
||||
|
||||
cbdir="src/coreboot/${tree}"
|
||||
[ "${project}" != "coreboot" ] && \
|
||||
cbdir="src/coreboot/default"
|
||||
[ "${project}" != "coreboot" ] && cbdir="src/coreboot/default"
|
||||
|
||||
# only true if not building coreboot:
|
||||
ctarget="${cbdir#src/coreboot/}"
|
||||
[ -d "${cbdir}" ] || \
|
||||
x_ ./update project trees -f coreboot ${ctarget}
|
||||
[ -d "${cbdir}" ] || x_ ./update trees -f coreboot ${ctarget}
|
||||
|
||||
if [ "${arch}" = "x86_32" ] || [ "${arch}" = "x86_64" ]; then
|
||||
[ -d "${cbdir}/util/crossgcc/xgcc/i386-elf/" ] || \
|
||||
make -C "${cbdir}" crossgcc-i386 CPUS=$(nproc) || \
|
||||
return 1
|
||||
x_ make -C "${cbdir}" crossgcc-i386 CPUS=$(nproc)
|
||||
case "$(uname -m)" in
|
||||
x86*|i*86|amd64) : ;;
|
||||
*) export CROSS_COMPILE=i386-elf- ;;
|
||||
esac
|
||||
elif [ "${arch}" = "ARMv7" ]; then
|
||||
[ -d "${cbdir}/util/crossgcc/xgcc/arm-eabi/" ] || \
|
||||
make -C "${cbdir}" crossgcc-arm CPUS=$(nproc) || \
|
||||
return 1
|
||||
x_ make -C "${cbdir}" crossgcc-arm CPUS=$(nproc)
|
||||
case "$(uname -m)" in
|
||||
arm|arm32|armv6*|armv7*) : ;;
|
||||
*) export CROSS_COMPILE=arm-eabi- ;;
|
||||
esac
|
||||
elif [ "${arch}" = "AArch64" ]; then
|
||||
[ -d "${cbdir}/util/crossgcc/xgcc/aarch64-elf/" ] || \
|
||||
make -C "${cbdir}" crossgcc-aarch64 CPUS=$(nproc) || \
|
||||
return 1
|
||||
x_ make -C "${cbdir}" crossgcc-aarch64 CPUS=$(nproc)
|
||||
# aarch64 also needs armv7 toolchain for arm-trusted-firmware
|
||||
[ -d "${cbdir}/util/crossgcc/xgcc/arm-eabi/" ] || \
|
||||
make -C "${cbdir}" crossgcc-arm CPUS=$(nproc) || \
|
||||
return 1
|
||||
x_ make -C "${cbdir}" crossgcc-arm CPUS=$(nproc)
|
||||
case "$(uname -m)" in
|
||||
arm64|aarch64) : ;;
|
||||
*) export CROSS_COMPILE=aarch64-elf- ;;
|
||||
@@ -233,7 +210,7 @@ check_cross_compiler()
|
||||
fi
|
||||
|
||||
# we *must* ensure that u-boot's build system uses crossgcc first
|
||||
export PATH="$(pwd)/${cbdir}/util/crossgcc/xgcc/bin:$PATH"
|
||||
export PATH="${PWD}/${cbdir}/util/crossgcc/xgcc/bin:$PATH"
|
||||
}
|
||||
|
||||
check_config()
|
||||
@@ -279,6 +256,7 @@ run_make_command()
|
||||
x_ printf "%s\n" "${version%%-*}" >"${codedir}/.coreboot-version"
|
||||
|
||||
x_ make ${mode} -j$(nproc) -C "${codedir}"
|
||||
|
||||
[ "${mode}" != "clean" ] && return 0
|
||||
make -C "${codedir}" distclean 2>/dev/null || :
|
||||
}
|
||||
@@ -54,18 +54,17 @@ detect_firmware()
|
||||
build_dependencies()
|
||||
{
|
||||
[ -d ${cbdir} ] || \
|
||||
x_ ./update project trees -f coreboot ${cbdir##*/}
|
||||
x_ ./update trees -f coreboot ${cbdir##*/}
|
||||
for d in uefitool biosutilities bios_extract; do
|
||||
[ -d "src/${d}" ] && continue
|
||||
x_ ./update project trees -f "${d}"
|
||||
x_ ./update trees -f "${d}"
|
||||
done
|
||||
[ -f "${uefiextract}" ] || \
|
||||
x_ ./update project trees -b uefitool
|
||||
x_ ./update trees -b uefitool
|
||||
[ -f "${kbc1126_ec_dump}" ] || \
|
||||
x_ make -C "${cbdir}/util/kbc1126"
|
||||
if [ ! -f "${cbfstool}" ] || [ ! -f "${ifdtool}" ]; then
|
||||
x_ ./update project trees -b coreboot utils default
|
||||
fi
|
||||
[ -f "${cbfstool}" ] && [ -f "${ifdtool}" ] && return 0
|
||||
x_ ./update trees -b coreboot utils default
|
||||
}
|
||||
|
||||
download_vendorfiles()
|
||||
@@ -85,8 +84,7 @@ download_vendorfiles()
|
||||
"${E6400_VGA_DL_url_bkup}" "${E6400_VGA_DL_hash}" \
|
||||
"${CONFIG_VGA_BIOS_FILE}"
|
||||
[ -z "${CONFIG_HAVE_MRC}" ] && return 0
|
||||
fetch "mrc" "${MRC_url}" "${MRC_url_bkup}" "${MRC_hash}" \
|
||||
"${CONFIG_MRC_FILE}"
|
||||
fetch "mrc" "$MRC_url" "$MRC_url_bkup" "$MRC_hash" "$CONFIG_MRC_FILE"
|
||||
}
|
||||
|
||||
fetch()
|
||||
@@ -136,7 +134,7 @@ mkdirs()
|
||||
{
|
||||
[ -f "${1}" ] && \
|
||||
printf "mkdirs ${1} ${2}: already downloaded\n" 1>&2 && return 1
|
||||
x_ mkdir -p "${1%/*}"
|
||||
mkdir -p "${1%/*}" || err "mkdirs: !mkdir -p ${1%/*}"
|
||||
x_ rm -Rf "${appdir}"
|
||||
x_ mkdir -p "${appdir}/"
|
||||
extract_archive "${_dl}" "${appdir}" || \
|
||||
@@ -192,7 +190,7 @@ extract_kbc1126ec()
|
||||
mv Rompaq/68*.BIN ec.bin || :
|
||||
if [ ! -f ec.bin ]; then
|
||||
unar -D ROM.CAB Rom.bin || unar -D Rom.CAB Rom.bin || \
|
||||
x_ unar -D 68*.CAB Rom.bin
|
||||
unar -D 68*.CAB Rom.bin || err "can't extract Rom.bin"
|
||||
x_ mv Rom.bin ec.bin
|
||||
fi
|
||||
[ -f ec.bin ] || err "extract_kbc1126_ec ${board}: can't extract"
|
||||
@@ -205,7 +203,8 @@ extract_kbc1126ec()
|
||||
done
|
||||
[ "${ec_ex}" = "y" ] || \
|
||||
err "extract_kbc1126_ec ${board}: didn't extract ecfw1/2.bin"
|
||||
x_ cp "${appdir}/"ec.bin.fw* "${_dest%/*}/"
|
||||
cp "${appdir}/"ec.bin.fw* "${_dest%/*}/" || \
|
||||
err "extract_kbc1126_ec ${board}: can't copy ec binaries"
|
||||
}
|
||||
|
||||
extract_e6400vga()
|
||||
@@ -223,7 +222,8 @@ extract_e6400vga()
|
||||
[ -f "${E6400_VGA_romname}" ] || \
|
||||
err "extract_e6400vga: can't extract vga rom from bios.bin"
|
||||
)
|
||||
x_ cp "${appdir}/${E6400_VGA_romname}" "${_dest}"
|
||||
cp "${appdir}/${E6400_VGA_romname}" "${_dest}" || \
|
||||
err "extract_e6400vga ${board}: can't copy vga rom to ${_dest}"
|
||||
}
|
||||
|
||||
extract_sch5545ec()
|
||||
@@ -15,7 +15,7 @@ main()
|
||||
{
|
||||
[ $# -lt 1 ] && err "No options specified."
|
||||
[ "${1}" = "listboards" ] && \
|
||||
listitems config/coreboot && exit 0
|
||||
items config/coreboot && exit 0
|
||||
|
||||
archive="${1}"
|
||||
|
||||
@@ -78,7 +78,7 @@ detect_board()
|
||||
_stripped_prefix=${filename#*_}
|
||||
board="${_stripped_prefix%.tar.xz}" ;;
|
||||
*)
|
||||
err "detect_board: could not detect board type"
|
||||
err "detect_board $filename: could not detect board type"
|
||||
esac
|
||||
[ -d "${boarddir}/" ] || \
|
||||
err "detect_board: dir, ${boarddir}, doesn't exist"
|
||||
@@ -87,18 +87,21 @@ detect_board()
|
||||
|
||||
build_dependencies()
|
||||
{
|
||||
[ -d "${cbdir}" ] || x_ ./update project trees -f coreboot default
|
||||
[ -d "${cbdir}" ] || x_ ./update trees -f coreboot default
|
||||
if [ ! -f "${cbfstool}" ] || [ ! -f "${ifdtool}" ]; then
|
||||
x_ ./update project trees -b coreboot utils default
|
||||
x_ ./update trees -b coreboot utils default
|
||||
fi
|
||||
[ -z "${new_mac}" ] || [ -f "${nvmutil}" ] || x_ make -C util/nvmutil
|
||||
[ "${nukemode}" = "nuke" ] && return 0
|
||||
x_ ./update vendor download ${board}
|
||||
x_ ./vendor download ${board}
|
||||
}
|
||||
|
||||
inject_vendorfiles()
|
||||
{
|
||||
[ "${release}" != "y" ] && x_ patch_rom "${rom}" && return 0
|
||||
if [ "${release}" != "y" ]; then
|
||||
patch_rom "${rom}"
|
||||
return 0
|
||||
fi
|
||||
printf "patching release images\n"
|
||||
patch_release_roms
|
||||
}
|
||||
@@ -108,22 +111,24 @@ patch_release_roms()
|
||||
_tmpdir="tmp/romdir"
|
||||
x_ rm -Rf "${_tmpdir}"
|
||||
x_ mkdir -p "${_tmpdir}"
|
||||
x_ tar -xf "${archive}" -C "${_tmpdir}"
|
||||
tar -xf "${archive}" -C "${_tmpdir}" || \
|
||||
err "patch_release_roms: !tar -xf \"${archive}\" -C \"${_tmpdir}\""
|
||||
|
||||
for x in "${_tmpdir}"/bin/*/*.rom ; do
|
||||
printf "patching rom: %s\n" "$x"
|
||||
x_ patch_rom "${x}"
|
||||
patch_rom "${x}"
|
||||
done
|
||||
for x in "${_tmpdir}"/bin/*/*_nomicrocode.rom ; do
|
||||
[ -f "${x}" ] || continue
|
||||
[ -f "${x%_nomicrocode.rom}.rom" ] || continue
|
||||
|
||||
x_ cp "${x%_nomicrocode.rom}.rom" "${x}"
|
||||
cp "${x%_nomicrocode.rom}.rom" "${x}" || \
|
||||
err "patch_r: !cp \"${x%_nomicrocode.rom}.rom\" \"${x}\""
|
||||
x_ "${cbfstool}" "${x}" remove -n cpu_microcode_blob.bin
|
||||
done
|
||||
|
||||
(
|
||||
x_ cd "${_tmpdir}/bin/"*
|
||||
x_ cd "${_tmpdir}/bin/"* # TODO: very dodgy, re-write accordingly
|
||||
|
||||
# NOTE: For compatibility with older rom releases, defer to sha1
|
||||
[ "${nukemode}" = "nuke" ] || \
|
||||
@@ -211,22 +216,28 @@ inject()
|
||||
|
||||
if [ "${_t}" = "GbE" ]; then
|
||||
x_ mkdir -p tmp
|
||||
x_ cp "${_dest}" "tmp/gbe.bin"
|
||||
cp "${_dest}" "tmp/gbe.bin" || \
|
||||
err "inject: !cp \"${_dest}\" \"tmp/gbe.bin\""
|
||||
_dest="tmp/gbe.bin"
|
||||
x_ "${nvmutil}" "${_dest}" setmac "${new_mac}"
|
||||
"${nvmutil}" "${_dest}" setmac "${new_mac}" || \
|
||||
err "inject ${_dest}: can't change mac address"
|
||||
fi
|
||||
if [ "${cbfsname}" = "IFD" ]; then
|
||||
if [ "${nukemode}" != "nuke" ]; then
|
||||
x_ "${ifdtool}" -i ${_t}:${_dest} "${rom}" -O "$rom"
|
||||
"${ifdtool}" -i ${_t}:${_dest} "${rom}" -O "$rom" || \
|
||||
err "inject: can't insert $_t ($dest) into $rom"
|
||||
else
|
||||
x_ "${ifdtool}" --nuke ${_t} "${rom}" -O "${rom}"
|
||||
"${ifdtool}" --nuke ${_t} "${rom}" -O "${rom}" || \
|
||||
err "inject ${rom}: can't nuke ${_t} in IFD"
|
||||
fi
|
||||
else
|
||||
if [ "${nukemode}" != "nuke" ]; then
|
||||
x_ "${cbfstool}" "${rom}" add -f "${_dest}" \
|
||||
-n "${cbfsname}" -t ${_t} ${_offset}
|
||||
"${cbfstool}" "${rom}" add -f "${_dest}" \
|
||||
-n "${cbfsname}" -t ${_t} ${_offset} || \
|
||||
err "inject $rom: can't insert $_t file $_dest"
|
||||
else
|
||||
x_ "${cbfstool}" "${rom}" remove -n "${cbfsname}"
|
||||
"${cbfstool}" "${rom}" remove -n "${cbfsname}" || \
|
||||
err "inject $rom: can't remove ${cbfsname}"
|
||||
fi
|
||||
|
||||
fi
|
||||
@@ -235,13 +246,13 @@ inject()
|
||||
usage()
|
||||
{
|
||||
cat <<- EOF
|
||||
USAGE: ./update vendor inject -r [rom path] -b [boardname] -m [macaddress]
|
||||
Example: ./update vendor inject -r x230_12mb.rom -b x230_12mb
|
||||
USAGE: ./vendor inject -r [rom path] -b [boardname] -m [macaddress]
|
||||
Example: ./vendor inject -r x230_12mb.rom -b x230_12mb
|
||||
|
||||
Adding a macadress to the gbe is optional.
|
||||
If the [-m] parameter is left blank, the gbe will not be touched.
|
||||
|
||||
Type './update vendor inject listboards' to get a list of valid boards
|
||||
Type './vendor inject listboards' to get a list of valid boards
|
||||
EOF
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user