Compare commits

...

44 Commits

Author SHA1 Message Date
Leah Rowe e86af9a60a 20231021hotfix: replace x_ with err in some places
keymaps weren't being set in keymay.cfg of cbfs, due
to use of x_ in the rom script, and x_ doesn't handle
quotes or spaces in arguments well.

i'm going to remove use of x_ and xx_ (it's in my todo),
for next release.

for now, hot patch the release. i've gone through and
replaced use of x_ with || err, in some places.

not just the keymap.cfg command, but others too. in case
there are more issues we missed.

this commit is being tagged "20231021fix" and i'm using
this tag to re-build the 20231021 release. i'll just
replace the tarballs in rsync and add errata to the news
page announcing the release. all i did was break peoples
umlauts, i didn't brick their machines fortunately!

very minor bug. anyway, x_/xx_ is a great idea, but sh
isn't really designed for that style of programming. i'll
go back to using just || err in the next release.

Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-22 12:34:45 +01:00
Leah Rowe 23958f4eae Libreboot 20231021
Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-21 02:08:12 +01:00
Leah Rowe 79c8dc4655 config/git/www and www-img: import libreboot.org
it's not used by anywhere else in lbmk, but the release build
script will automatically download each project named as per
file names in config/git/

this is a stupidly simply way to prove documentation in
libreboot releases, and i've used current revisions corresponding
to the Libreboot 20231021 release, for this 20231021 release
of lbmk.

Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-21 01:22:26 +01:00
Leah Rowe a06c38ce15 change default volname in grub.cfg
it's been a while since we did encrypted /boot
and the current name sucks.

it's unlikely that anyone still uses it, but
people will soon

change the default assumed lvm name to grubcrypt
and stick to that.

Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-21 00:02:15 +01:00
Leah Rowe 5162b912b2 update/release: clean up temporary crossgcc dir
clean it up after copying the tarballs

i really hate how this logic is written, it's clunky
but it should work; the only issue is that it's quite
slow, and inefficient on use of disk space.

however, i've not yet figured out how to reproducible
add files to a tarball, once the tarball has been created,
and i rely on sorting (of file names) when creating them.

it's really not a problem because normal people won't
use this script, only i or anyone who wants to test out
the libreboot release infrastructure. this script is
largely intended to *work*

but i'm still annoyed by how crappy it is. i'll fix it
after the Libreboot 20231021 release.

Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-20 21:55:57 +01:00
Leah Rowe f0cf710f68 don't use notabug for backup git repos
notabug is unreliable, even as a backup.

why, just today, it was offline! all day.

i originally moved libreboot away from notabug,
to codeberg instead, but kept the notabug account
online, and i still push to it when it's online.

however, notabug seems to be in a terminal state
of neglect by its admins, so lbmk should not use it.

Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-20 21:30:31 +01:00
Leah Rowe e90bffff3c move git_init to the main build script
also, don't use x_ because it totally b0rks on
these commands. handle exit status directly.

Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-20 21:10:26 +01:00
Leah Rowe c7e764a3f0 update/release: confirm vdir path on exit
Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-20 12:09:31 +01:00
Leah Rowe 1c8b2114cc update/release: copy crossgcc to archive
everything downloaded, then tarballed, then built,
now crossgcc is downloaded by coreboot.

now extract, copy crossgcc tarballs, re-compress.

TODO: simply add files to the archive, without re-
compressing the whole thing.

this is still more efficient than the old way: build
everything, then clean and compress, making another
build test on the release archive necessary; with this,
there is still only one build test per release.

with this, and the previous revisions dealing with
submodules, the source archives should now be complete.

Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-20 12:08:36 +01:00
Leah Rowe 54a05fc167 always re-generate .git in lbmk
in release archives, .git is excluded but the version
and versiondate files are included. from these, the
git history is re-created with the exact date (but not
taking into account timezone, at present).

in this way, lbmk will have git history in a release
archive. some build systems, like coreboot, prefer that
there be git history available, so this is a nice
workaround on those build systems.

Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-20 11:16:25 +01:00
Leah Rowe 52c9416b19 update flashrom revision
flashrom-stable isn't really going anywhere

i'll decide at some future point what to do
with flashrom. for now, just give latest rev

Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-20 10:47:21 +01:00
Leah Rowe af1c1e10f1 add backup git repo for flashrom
Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-20 10:46:03 +01:00
Leah Rowe 18364822a2 Revert "config/git: don't download flashrom"
This reverts commit bf4ea8102a.
2023-10-20 10:45:10 +01:00
Leah Rowe ac442808ee config/git: add more backup repos
the grub backup was the same gnu server

i decided to host grub on codeberg, as backup

(gnu links as primary is ok)

Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-20 10:39:37 +01:00
Leah Rowe 759800523f git/config: don't use github on main repos
it's ok for now to use it as a backup.

where only github was specified, i mirrored each
given repository to codeberg as main repo for lbmk.

Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-20 10:31:10 +01:00
Leah Rowe bf4ea8102a config/git: don't download flashrom
it's not actually needed in lbmk

flashrom can be downloaded separately by the user,
if they want to flash their chip

Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-20 09:52:49 +01:00
Leah Rowe da3044e7d7 git/config stm32-vserprog: don't fetch libopencm3
it's downloaded by .gitmodules in stm32-vserprog

Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-20 09:52:03 +01:00
Leah Rowe 782371a59c update/release: delete *all* .git and .gitmodules
do it using find -exec

this is more robust, and it will never need to be
maintained over time (famous last words).

this is done because now we download submodules
for all git projects, so it's hard to predict.

Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-20 09:27:27 +01:00
Leah Rowe 743a425cd6 include/git: fix already-exists download message
i forgot to put the download path in printf

Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-20 09:13:49 +01:00
Leah Rowe 73145b7980 Revert "Revert "include/git: don't re-download single-trees""
This reverts commit baa3d4f217.
2023-10-20 09:12:23 +01:00
Leah Rowe 31b35bb4ce include/git: fix error caused by sh idiosyncrasy
when [] is used right at the end of a function, or
certain loops/subshells, some sh implementations will
just return a non-zero exit

Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-20 09:11:29 +01:00
Leah Rowe baa3d4f217 Revert "include/git: don't re-download single-trees"
This reverts commit 8de7bc9339.
2023-10-20 08:58:02 +01:00
Leah Rowe 8de7bc9339 include/git: don't re-download single-trees
only do it if the target source tree does not exist

Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-20 08:54:01 +01:00
Leah Rowe d1f23eca34 config/git: remove rpi-pico-tinyusb dependency
it's now downloaded automatically as a submodule,
when downloading pico-sdk (which defines this module)

Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-20 08:50:26 +01:00
Leah Rowe 97e5207ecf config/git: give pico-sdk its own file
Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-20 08:49:31 +01:00
Leah Rowe 182ee8e416 update/trees: don't run make if mode=fetch
this fixes a regression caused by a previous revision

Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-20 08:45:57 +01:00
Leah Rowe 54eb347a30 include/git: fetch submodules on one-tree projects
only fetch if .gitmodules exists

in some cases, lbmk is compiling source trees that
use submodules, without having downloaded them first.

in all cases, those submodules are either optional,
or the build system auto-fetches them (or if it can,
we sometimes disable it as with grub and gnulib).

this is a nice fallback behaviour, for situations where
we forget to put submodules as dependencies under
config/git (and disable submodules in the given project).

with this change, release archives are guaranteed to
be complete, sans crossgcc downloads in coreboot; this
will be handled in a follow-up commit.

Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-20 07:50:47 +01:00
Leah Rowe f855611c99 include/git: only download submodules if possible
Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-20 07:47:10 +01:00
Leah Rowe 0c32c1d643 update/release .git/*: delete one more level up
it couldn't hurt

Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-20 07:44:27 +01:00
Leah Rowe 0375cfaf1c update/release: don't hardcode project names
config/git has been re-arranged in a prior revision,
ensuring that each file only refers to a main source
tree defined within those files.

the erstwhile "./build clean all" functionality is now
once again possible in lbmk

Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-20 07:37:51 +01:00
Leah Rowe d245e0b1b4 consistent naming for src/pico-serprog
don't ever name it rpi-pico-serprog

Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-20 06:49:59 +01:00
Leah Rowe fac62a8c58 config/git: name files per download name
don't put multiple downloads in the same files, except
when they are dependencies that go inside the directory
of another download.

by doing this, the following functionality will become
possible: clean every project or build every project,
or maybe fetch every project, based entirely on the
names of these files.

this will be used later to simplify the release script.

Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-20 06:45:50 +01:00
Leah Rowe 0e1602f5b1 do a nice thing
Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-20 05:34:41 +01:00
Leah Rowe 7b2060086a Merge pull request 'fix_distro_dependencies - part 2' (#139) from andreamtp/lbmk:fix_distro_dependencies into master
Reviewed-on: https://codeberg.org/libreboot/lbmk/pulls/139
2023-10-20 04:30:44 +00:00
Leah Rowe 6af65ad430 error handling code cleanup and fixes
in some cases, use of x_ or xx_ can be error-prone,
due to the way $@ is handled; commands requiring
quotes, or with funny file names as arguments such
as spaces in the file name, or other special
characters, can make the x/xx functions break.

in those cases, where x/xx must not be used, the
commands use || err instead

in other cases, use of x/xx is superfluous, and has
been removed in some commands.

Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-20 05:03:16 +01:00
Leah Rowe 4e54a051ef another code cleanup
Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-20 03:29:55 +01:00
Leah Rowe 8d9aeef3de lbmk: use 2-level directory structure in script/
as opposed to the current 3-level structure.

recent build system simplifications have enabled
this change, thus:

./build fw coreboot -> ./build roms
./build fw grub -> ./build grub
./build fw serprog -> ./build serprog
./update project release -> ./update release
./update project trees -> ./update trees
./update vendor download -> ./vendor download
./update vendor inject -> ./vendor inject

alper criticised that the commands were too long,
so i made them shorter!

Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-20 01:00:38 +01:00
Leah Rowe 0b98c9b00c minor code cleanup in shell scripts
Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-19 23:36:56 +01:00
Andrea Perotti a16cd1a349 Added python-unversioned-command for Fedora38
Added python-unversioned-command as dependency to have /usr/bin/python
to call python3 in Fedora.
2023-10-19 17:04:18 +02:00
Andrea Perotti 8a063f6b4b Fix Debian/Ubuntu dependencies
Dependencies for Debian/Ubuntu and derived distros are now deduplicated and sorted.
Added target for Linux Mint as well.
2023-10-19 17:03:11 +02:00
Leah Rowe 8b6e44a104 Merge pull request 'Fix F38/Ubuntu 20.04 dependencies' (#137) from andreamtp/lbmk:fix_distro_dependencies into master
Reviewed-on: https://codeberg.org/libreboot/lbmk/pulls/137
2023-10-19 14:44:18 +00:00
Leah Rowe 9fac3c1232 Merge pull request 'Fix Void Dependencies for building Serprog' (#138) from neutrocyte/lbmk:fix_void_dependencies into master
Reviewed-on: https://codeberg.org/libreboot/lbmk/pulls/138
2023-10-19 14:43:36 +00:00
neutrocyte e63399cf25 Fixed Void Dependencies for building Serprog 2023-10-19 15:00:56 +02:00
Andrea Perotti 6758b5c85d Fix F38/Ubuntu 20.04 dependencies
Dependencies for Fedora 38 and Ubuntu 20.04 are now deduplicated and sorted.
Missing packages added and packages names updated where needed.
2023-10-19 00:04:37 +02:00
83 changed files with 611 additions and 597 deletions
+1 -1
View File
@@ -22,7 +22,7 @@
/push /push
/version /version
/versiondate /versiondate
/vendor/ /vendorfiles/
*me.bin *me.bin
*sch5545ec.bin *sch5545ec.bin
/mrc/ /mrc/
+32 -38
View File
@@ -11,7 +11,7 @@ set -u -e
. "include/err.sh" . "include/err.sh"
. "include/option.sh" . "include/option.sh"
eval "$(setvars "" mode option aur_notice tmpdir)" eval "$(setvars "" option aur_notice tmpdir)"
tmpdir_was_set="y" tmpdir_was_set="y"
set | grep TMPDIR 1>/dev/null 2>/dev/null || tmpdir_was_set="n" set | grep TMPDIR 1>/dev/null 2>/dev/null || tmpdir_was_set="n"
@@ -39,11 +39,14 @@ buildpath="./script/${linkname}"
main() main()
{ {
xx_ id -u 1>/dev/null 2>/dev/null xx_ id -u 1>/dev/null 2>/dev/null
initialise_command $@ [ $# -lt 1 ] && fail "Too few arguments. Try: ${0} help"
shift 2 [ "${1}" = "dependencies" ] && xx_ install_packages $@ && lbmk_exit 0
initialise_command $@ && shift 1
check_git check_git
check_project "fail" check_project "fail"
git_init
execute_command $@ execute_command $@
lbmk_exit 0 lbmk_exit 0
@@ -51,22 +54,13 @@ main()
initialise_command() 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" [ "$(id -u)" != "0" ] || fail "this command as root is not permitted"
[ "${mode}" = "help" ] && usage ${0} && lbmk_exit 0 case "${1}" in
if [ "${mode}" = "list" ]; then help) usage ${0} && lbmk_exit 0 ;;
listitems "${buildpath}" list) items "${buildpath}" && lbmk_exit 0 ;;
lbmk_exit 0 esac
elif [ $# -lt 2 ]; then option="${1}"
usage ${0}
lbmk_exit 1
fi
option="${2}"
} }
install_packages() install_packages()
@@ -83,23 +77,29 @@ install_packages()
. "config/dependencies/${2}" . "config/dependencies/${2}"
xx_ ${pkg_add} ${pkglist} xx_ ${pkg_add} ${pkglist}
[ "${aur_notice}" = "" ] || \ [ -z "${aur_notice}" ] && return 0
printf "You must install AUR packages: %s\n" "${aur_notice}" 1>&2 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() execute_command()
{ {
if [ "${option}" = "list" ]; then lbmkcmd="${buildpath}/${option}"
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
[ -f "${lbmkcmd}" ] || fail "Invalid command. Run: ${linkpath} help" [ -f "${lbmkcmd}" ] || fail "Invalid command. Run: ${linkpath} help"
"${lbmkcmd}" $@ || fail "execute_command: ${lbmkcmd} ${@}" "${lbmkcmd}" $@ || fail "execute_command: ${lbmkcmd} ${@}"
} }
@@ -108,16 +108,10 @@ usage()
{ {
progname=${0} progname=${0}
cat <<- EOF cat <<- EOF
USAGE: ${progname} <MODE> <OPTION> USAGE: ${progname} <OPTION>
possible values for 'mode': possible values for 'OPTION':
$(listitems "${buildpath}") $(items "${buildpath}")
For each of the above modes, you may also do:
${progname} <MODE> list
Example: ./build fw list, which would yield:
$(./build fw list)
Refer to ${projectname} documentation for more info. Refer to ${projectname} documentation for more info.
EOF EOF
@@ -149,7 +149,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
CONFIG_SPI_FLASH_WINBOND=y CONFIG_SPI_FLASH_WINBOND=y
CONFIG_DRIVERS_INTEL_WIFI=y CONFIG_DRIVERS_INTEL_WIFI=y
CONFIG_IFD_BIN_PATH="../../../config/ifd/e6430/ifd" 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_GBE_BIN_PATH="../../../config/ifd/e6430/gbe"
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000 CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
CONFIG_VBT_DATA_SIZE_KB=8 CONFIG_VBT_DATA_SIZE_KB=8
@@ -147,7 +147,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
CONFIG_SPI_FLASH_WINBOND=y CONFIG_SPI_FLASH_WINBOND=y
CONFIG_DRIVERS_INTEL_WIFI=y CONFIG_DRIVERS_INTEL_WIFI=y
CONFIG_IFD_BIN_PATH="../../../config/ifd/e6430/ifd" 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_GBE_BIN_PATH="../../../config/ifd/e6430/gbe"
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000 CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
CONFIG_VBT_DATA_SIZE_KB=8 CONFIG_VBT_DATA_SIZE_KB=8
@@ -150,7 +150,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
CONFIG_SPI_FLASH_WINBOND=y CONFIG_SPI_FLASH_WINBOND=y
CONFIG_DRIVERS_INTEL_WIFI=y CONFIG_DRIVERS_INTEL_WIFI=y
CONFIG_IFD_BIN_PATH="../../../config/ifd/hp_ivybridge/ifd" 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_GBE_BIN_PATH="../../../config/ifd/hp_ivybridge/gbe"
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000 CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
CONFIG_VBT_DATA_SIZE_KB=8 CONFIG_VBT_DATA_SIZE_KB=8
@@ -148,7 +148,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
CONFIG_SPI_FLASH_WINBOND=y CONFIG_SPI_FLASH_WINBOND=y
CONFIG_DRIVERS_INTEL_WIFI=y CONFIG_DRIVERS_INTEL_WIFI=y
CONFIG_IFD_BIN_PATH="../../../config/ifd/hp_ivybridge/ifd" 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_GBE_BIN_PATH="../../../config/ifd/hp_ivybridge/gbe"
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000 CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
CONFIG_VBT_DATA_SIZE_KB=8 CONFIG_VBT_DATA_SIZE_KB=8
@@ -148,7 +148,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
CONFIG_SPI_FLASH_WINBOND=y CONFIG_SPI_FLASH_WINBOND=y
# CONFIG_DRIVERS_INTEL_WIFI is not set # CONFIG_DRIVERS_INTEL_WIFI is not set
CONFIG_IFD_BIN_PATH="../../../config/ifd/hp_sandybridge/ifd" 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_GBE_BIN_PATH="../../../config/ifd/hp_sandybridge/gbe"
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000 CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
CONFIG_VBT_DATA_SIZE_KB=8 CONFIG_VBT_DATA_SIZE_KB=8
@@ -146,7 +146,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
CONFIG_SPI_FLASH_WINBOND=y CONFIG_SPI_FLASH_WINBOND=y
# CONFIG_DRIVERS_INTEL_WIFI is not set # CONFIG_DRIVERS_INTEL_WIFI is not set
CONFIG_IFD_BIN_PATH="../../../config/ifd/hp_sandybridge/ifd" 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_GBE_BIN_PATH="../../../config/ifd/hp_sandybridge/gbe"
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000 CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
CONFIG_VBT_DATA_SIZE_KB=8 CONFIG_VBT_DATA_SIZE_KB=8
@@ -147,7 +147,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
CONFIG_SPI_FLASH_WINBOND=y CONFIG_SPI_FLASH_WINBOND=y
# CONFIG_DRIVERS_INTEL_WIFI is not set # CONFIG_DRIVERS_INTEL_WIFI is not set
CONFIG_IFD_BIN_PATH="../../../config/ifd/hp_ivybridge/ifd" 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_GBE_BIN_PATH="../../../config/ifd/hp_ivybridge/gbe"
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000 CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
CONFIG_VBT_DATA_SIZE_KB=8 CONFIG_VBT_DATA_SIZE_KB=8
@@ -145,7 +145,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
CONFIG_SPI_FLASH_WINBOND=y CONFIG_SPI_FLASH_WINBOND=y
# CONFIG_DRIVERS_INTEL_WIFI is not set # CONFIG_DRIVERS_INTEL_WIFI is not set
CONFIG_IFD_BIN_PATH="../../../config/ifd/hp_ivybridge/ifd" 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_GBE_BIN_PATH="../../../config/ifd/hp_ivybridge/gbe"
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000 CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
CONFIG_VBT_DATA_SIZE_KB=8 CONFIG_VBT_DATA_SIZE_KB=8
@@ -148,7 +148,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
CONFIG_SPI_FLASH_WINBOND=y CONFIG_SPI_FLASH_WINBOND=y
# CONFIG_DRIVERS_INTEL_WIFI is not set # CONFIG_DRIVERS_INTEL_WIFI is not set
CONFIG_IFD_BIN_PATH="../../../config/ifd/hp8200sff/ifd_4mb" 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_GBE_BIN_PATH="../../../config/ifd/hp8200sff/gbe"
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000 CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
CONFIG_VBT_DATA_SIZE_KB=8 CONFIG_VBT_DATA_SIZE_KB=8
@@ -146,7 +146,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
CONFIG_SPI_FLASH_WINBOND=y CONFIG_SPI_FLASH_WINBOND=y
# CONFIG_DRIVERS_INTEL_WIFI is not set # CONFIG_DRIVERS_INTEL_WIFI is not set
CONFIG_IFD_BIN_PATH="../../../config/ifd/hp8200sff/ifd_4mb" 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_GBE_BIN_PATH="../../../config/ifd/hp8200sff/gbe"
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000 CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
CONFIG_VBT_DATA_SIZE_KB=8 CONFIG_VBT_DATA_SIZE_KB=8
@@ -148,7 +148,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
CONFIG_SPI_FLASH_WINBOND=y CONFIG_SPI_FLASH_WINBOND=y
# CONFIG_DRIVERS_INTEL_WIFI is not set # CONFIG_DRIVERS_INTEL_WIFI is not set
CONFIG_IFD_BIN_PATH="../../../config/ifd/hp8200sff/ifd" 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_GBE_BIN_PATH="../../../config/ifd/hp8200sff/gbe"
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000 CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
CONFIG_VBT_DATA_SIZE_KB=8 CONFIG_VBT_DATA_SIZE_KB=8
@@ -146,7 +146,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
CONFIG_SPI_FLASH_WINBOND=y CONFIG_SPI_FLASH_WINBOND=y
# CONFIG_DRIVERS_INTEL_WIFI is not set # CONFIG_DRIVERS_INTEL_WIFI is not set
CONFIG_IFD_BIN_PATH="../../../config/ifd/hp8200sff/ifd" 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_GBE_BIN_PATH="../../../config/ifd/hp8200sff/gbe"
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000 CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
CONFIG_VBT_DATA_SIZE_KB=8 CONFIG_VBT_DATA_SIZE_KB=8
@@ -148,7 +148,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
CONFIG_SPI_FLASH_WINBOND=y CONFIG_SPI_FLASH_WINBOND=y
CONFIG_DRIVERS_INTEL_WIFI=y CONFIG_DRIVERS_INTEL_WIFI=y
CONFIG_IFD_BIN_PATH="../../../config/ifd/hp8300usdt/ifd" 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_GBE_BIN_PATH="../../../config/ifd/hp8300usdt/gbe"
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000 CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
CONFIG_VBT_DATA_SIZE_KB=8 CONFIG_VBT_DATA_SIZE_KB=8
@@ -146,7 +146,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
CONFIG_SPI_FLASH_WINBOND=y CONFIG_SPI_FLASH_WINBOND=y
CONFIG_DRIVERS_INTEL_WIFI=y CONFIG_DRIVERS_INTEL_WIFI=y
CONFIG_IFD_BIN_PATH="../../../config/ifd/hp8300usdt/ifd" 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_GBE_BIN_PATH="../../../config/ifd/hp8300usdt/gbe"
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000 CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
CONFIG_VBT_DATA_SIZE_KB=8 CONFIG_VBT_DATA_SIZE_KB=8
@@ -149,7 +149,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
CONFIG_SPI_FLASH_WINBOND=y CONFIG_SPI_FLASH_WINBOND=y
CONFIG_DRIVERS_INTEL_WIFI=y CONFIG_DRIVERS_INTEL_WIFI=y
CONFIG_IFD_BIN_PATH="../../../config/ifd/hp_ivybridge/ifd" 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_GBE_BIN_PATH="../../../config/ifd/hp_ivybridge/gbe"
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000 CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
CONFIG_VBT_DATA_SIZE_KB=8 CONFIG_VBT_DATA_SIZE_KB=8
@@ -147,7 +147,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
CONFIG_SPI_FLASH_WINBOND=y CONFIG_SPI_FLASH_WINBOND=y
CONFIG_DRIVERS_INTEL_WIFI=y CONFIG_DRIVERS_INTEL_WIFI=y
CONFIG_IFD_BIN_PATH="../../../config/ifd/hp_ivybridge/ifd" 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_GBE_BIN_PATH="../../../config/ifd/hp_ivybridge/gbe"
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000 CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
CONFIG_VBT_DATA_SIZE_KB=8 CONFIG_VBT_DATA_SIZE_KB=8
@@ -148,7 +148,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
CONFIG_SPI_FLASH_WINBOND=y CONFIG_SPI_FLASH_WINBOND=y
# CONFIG_DRIVERS_INTEL_WIFI is not set # CONFIG_DRIVERS_INTEL_WIFI is not set
CONFIG_IFD_BIN_PATH="../../../config/ifd/hp_ivybridge/ifd" 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_GBE_BIN_PATH="../../../config/ifd/hp_ivybridge/gbe"
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000 CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
CONFIG_VBT_DATA_SIZE_KB=8 CONFIG_VBT_DATA_SIZE_KB=8
@@ -146,7 +146,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
CONFIG_SPI_FLASH_WINBOND=y CONFIG_SPI_FLASH_WINBOND=y
# CONFIG_DRIVERS_INTEL_WIFI is not set # CONFIG_DRIVERS_INTEL_WIFI is not set
CONFIG_IFD_BIN_PATH="../../../config/ifd/hp_ivybridge/ifd" 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_GBE_BIN_PATH="../../../config/ifd/hp_ivybridge/gbe"
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000 CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
CONFIG_VBT_DATA_SIZE_KB=8 CONFIG_VBT_DATA_SIZE_KB=8
@@ -140,7 +140,7 @@ CONFIG_TPM_PIRQ=0x0
CONFIG_BOARD_DELL_PRECISION_T1650=y CONFIG_BOARD_DELL_PRECISION_T1650=y
CONFIG_BOARD_DELL_SNB_IVB_WORKSTATIONS=y CONFIG_BOARD_DELL_SNB_IVB_WORKSTATIONS=y
CONFIG_INCLUDE_SMSC_SCH5545_EC_FW=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_BASE_ADDRESS=0xf0000000
CONFIG_ECAM_MMCONF_BUS_NUMBER=64 CONFIG_ECAM_MMCONF_BUS_NUMBER=64
CONFIG_MEMLAYOUT_LD_FILE="src/arch/x86/memlayout.ld" 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_SPI_FLASH_WINBOND=y
CONFIG_DRIVERS_INTEL_WIFI=y CONFIG_DRIVERS_INTEL_WIFI=y
CONFIG_IFD_BIN_PATH="../../../config/ifd/t1650/12_ifd" 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_GBE_BIN_PATH="../../../config/ifd/t1650/gbe"
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000 CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
CONFIG_VBT_DATA_SIZE_KB=8 CONFIG_VBT_DATA_SIZE_KB=8
@@ -150,7 +150,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
CONFIG_SPI_FLASH_WINBOND=y CONFIG_SPI_FLASH_WINBOND=y
# CONFIG_DRIVERS_INTEL_WIFI is not set # CONFIG_DRIVERS_INTEL_WIFI is not set
CONFIG_IFD_BIN_PATH="../../../config/ifd/xx20/ifd" 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_GBE_BIN_PATH="../../../config/ifd/xx20/gbe"
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000 CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
CONFIG_VBT_DATA_SIZE_KB=8 CONFIG_VBT_DATA_SIZE_KB=8
@@ -150,7 +150,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
CONFIG_SPI_FLASH_WINBOND=y CONFIG_SPI_FLASH_WINBOND=y
# CONFIG_DRIVERS_INTEL_WIFI is not set # CONFIG_DRIVERS_INTEL_WIFI is not set
CONFIG_IFD_BIN_PATH="../../../config/ifd/xx20/ifd" 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_GBE_BIN_PATH="../../../config/ifd/xx20/gbe"
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000 CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
CONFIG_VBT_DATA_SIZE_KB=8 CONFIG_VBT_DATA_SIZE_KB=8
@@ -148,7 +148,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
CONFIG_SPI_FLASH_WINBOND=y CONFIG_SPI_FLASH_WINBOND=y
# CONFIG_DRIVERS_INTEL_WIFI is not set # CONFIG_DRIVERS_INTEL_WIFI is not set
CONFIG_IFD_BIN_PATH="../../../config/ifd/xx20/ifd" 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_GBE_BIN_PATH="../../../config/ifd/xx20/gbe"
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000 CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
CONFIG_VBT_DATA_SIZE_KB=8 CONFIG_VBT_DATA_SIZE_KB=8
@@ -149,7 +149,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
CONFIG_SPI_FLASH_WINBOND=y CONFIG_SPI_FLASH_WINBOND=y
# CONFIG_DRIVERS_INTEL_WIFI is not set # CONFIG_DRIVERS_INTEL_WIFI is not set
CONFIG_IFD_BIN_PATH="../../../config/ifd/xx30/ifd" 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_GBE_BIN_PATH="../../../config/ifd/xx30/gbe"
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000 CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
CONFIG_VBT_DATA_SIZE_KB=8 CONFIG_VBT_DATA_SIZE_KB=8
@@ -147,7 +147,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
CONFIG_SPI_FLASH_WINBOND=y CONFIG_SPI_FLASH_WINBOND=y
# CONFIG_DRIVERS_INTEL_WIFI is not set # CONFIG_DRIVERS_INTEL_WIFI is not set
CONFIG_IFD_BIN_PATH="../../../config/ifd/xx30/ifd" 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_GBE_BIN_PATH="../../../config/ifd/xx30/gbe"
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000 CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
CONFIG_VBT_DATA_SIZE_KB=8 CONFIG_VBT_DATA_SIZE_KB=8
@@ -143,7 +143,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
CONFIG_SPI_FLASH_WINBOND=y CONFIG_SPI_FLASH_WINBOND=y
CONFIG_DRIVERS_INTEL_WIFI=y CONFIG_DRIVERS_INTEL_WIFI=y
CONFIG_IFD_BIN_PATH="../../../config/ifd/t440p/ifd" 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_GBE_BIN_PATH="../../../config/ifd/t440p/gbe"
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000 CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
# CONFIG_ENABLE_DDR_2X_REFRESH is not set # 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_SPI_FLASH_WINBOND=y
CONFIG_DRIVERS_INTEL_WIFI=y CONFIG_DRIVERS_INTEL_WIFI=y
CONFIG_IFD_BIN_PATH="../../../config/ifd/t440p/ifd" 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_GBE_BIN_PATH="../../../config/ifd/t440p/gbe"
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000 CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
# CONFIG_ENABLE_DDR_2X_REFRESH is not set # 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_SPI_FLASH_WINBOND=y
CONFIG_DRIVERS_INTEL_WIFI=y CONFIG_DRIVERS_INTEL_WIFI=y
CONFIG_IFD_BIN_PATH="../../../config/ifd/t440p/ifd" 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_GBE_BIN_PATH="../../../config/ifd/t440p/gbe"
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000 CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
# CONFIG_ENABLE_DDR_2X_REFRESH is not set # 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_SPI_FLASH_WINBOND=y
# CONFIG_DRIVERS_INTEL_WIFI is not set # CONFIG_DRIVERS_INTEL_WIFI is not set
CONFIG_IFD_BIN_PATH="../../../config/ifd/xx20/ifd" 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_GBE_BIN_PATH="../../../config/ifd/xx20/gbe"
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000 CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
CONFIG_VBT_DATA_SIZE_KB=8 CONFIG_VBT_DATA_SIZE_KB=8
@@ -148,7 +148,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
CONFIG_SPI_FLASH_WINBOND=y CONFIG_SPI_FLASH_WINBOND=y
# CONFIG_DRIVERS_INTEL_WIFI is not set # CONFIG_DRIVERS_INTEL_WIFI is not set
CONFIG_IFD_BIN_PATH="../../../config/ifd/xx20/ifd" 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_GBE_BIN_PATH="../../../config/ifd/xx20/gbe"
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000 CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
CONFIG_VBT_DATA_SIZE_KB=8 CONFIG_VBT_DATA_SIZE_KB=8
@@ -149,7 +149,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
CONFIG_SPI_FLASH_WINBOND=y CONFIG_SPI_FLASH_WINBOND=y
CONFIG_DRIVERS_INTEL_WIFI=y CONFIG_DRIVERS_INTEL_WIFI=y
CONFIG_IFD_BIN_PATH="../../../config/ifd/xx30/ifd" 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_GBE_BIN_PATH="../../../config/ifd/xx30/gbe"
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000 CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
CONFIG_VBT_DATA_SIZE_KB=8 CONFIG_VBT_DATA_SIZE_KB=8
@@ -147,7 +147,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
CONFIG_SPI_FLASH_WINBOND=y CONFIG_SPI_FLASH_WINBOND=y
CONFIG_DRIVERS_INTEL_WIFI=y CONFIG_DRIVERS_INTEL_WIFI=y
CONFIG_IFD_BIN_PATH="../../../config/ifd/xx30/ifd" 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_GBE_BIN_PATH="../../../config/ifd/xx30/gbe"
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000 CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
CONFIG_VBT_DATA_SIZE_KB=8 CONFIG_VBT_DATA_SIZE_KB=8
@@ -149,7 +149,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
CONFIG_SPI_FLASH_WINBOND=y CONFIG_SPI_FLASH_WINBOND=y
CONFIG_DRIVERS_INTEL_WIFI=y CONFIG_DRIVERS_INTEL_WIFI=y
CONFIG_IFD_BIN_PATH="../../../config/ifd/xx30/ifd" 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_GBE_BIN_PATH="../../../config/ifd/xx30/gbe"
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000 CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
CONFIG_VBT_DATA_SIZE_KB=8 CONFIG_VBT_DATA_SIZE_KB=8
@@ -147,7 +147,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
CONFIG_SPI_FLASH_WINBOND=y CONFIG_SPI_FLASH_WINBOND=y
CONFIG_DRIVERS_INTEL_WIFI=y CONFIG_DRIVERS_INTEL_WIFI=y
CONFIG_IFD_BIN_PATH="../../../config/ifd/xx30/ifd" 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_GBE_BIN_PATH="../../../config/ifd/xx30/gbe"
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000 CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
CONFIG_VBT_DATA_SIZE_KB=8 CONFIG_VBT_DATA_SIZE_KB=8
@@ -143,7 +143,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
CONFIG_SPI_FLASH_WINBOND=y CONFIG_SPI_FLASH_WINBOND=y
CONFIG_DRIVERS_INTEL_WIFI=y CONFIG_DRIVERS_INTEL_WIFI=y
CONFIG_IFD_BIN_PATH="../../../config/ifd/t440p/ifd" 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_GBE_BIN_PATH="../../../config/ifd/t440p/gbe"
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000 CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
# CONFIG_ENABLE_DDR_2X_REFRESH is not set # 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_SPI_FLASH_WINBOND=y
CONFIG_DRIVERS_INTEL_WIFI=y CONFIG_DRIVERS_INTEL_WIFI=y
CONFIG_IFD_BIN_PATH="../../../config/ifd/t440p/ifd" 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_GBE_BIN_PATH="../../../config/ifd/t440p/gbe"
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000 CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
# CONFIG_ENABLE_DDR_2X_REFRESH is not set # 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_SPI_FLASH_WINBOND=y
CONFIG_DRIVERS_INTEL_WIFI=y CONFIG_DRIVERS_INTEL_WIFI=y
CONFIG_IFD_BIN_PATH="../../../config/ifd/t440p/ifd" 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_GBE_BIN_PATH="../../../config/ifd/t440p/gbe"
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000 CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
# CONFIG_ENABLE_DDR_2X_REFRESH is not set # 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_SPI_FLASH_WINBOND=y
# CONFIG_DRIVERS_INTEL_WIFI is not set # CONFIG_DRIVERS_INTEL_WIFI is not set
CONFIG_IFD_BIN_PATH="../../../config/ifd/xx20/ifd" 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_GBE_BIN_PATH="../../../config/ifd/xx20/gbe"
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000 CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
CONFIG_VBT_DATA_SIZE_KB=8 CONFIG_VBT_DATA_SIZE_KB=8
@@ -149,7 +149,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
CONFIG_SPI_FLASH_WINBOND=y CONFIG_SPI_FLASH_WINBOND=y
# CONFIG_DRIVERS_INTEL_WIFI is not set # CONFIG_DRIVERS_INTEL_WIFI is not set
CONFIG_IFD_BIN_PATH="../../../config/ifd/xx20/ifd" 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_GBE_BIN_PATH="../../../config/ifd/xx20/gbe"
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000 CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
CONFIG_VBT_DATA_SIZE_KB=8 CONFIG_VBT_DATA_SIZE_KB=8
@@ -150,7 +150,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
CONFIG_SPI_FLASH_WINBOND=y CONFIG_SPI_FLASH_WINBOND=y
# CONFIG_DRIVERS_INTEL_WIFI is not set # CONFIG_DRIVERS_INTEL_WIFI is not set
CONFIG_IFD_BIN_PATH="../../../config/ifd/xx30/ifd" 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_GBE_BIN_PATH="../../../config/ifd/xx30/gbe"
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000 CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
CONFIG_VBT_DATA_SIZE_KB=8 CONFIG_VBT_DATA_SIZE_KB=8
@@ -148,7 +148,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
CONFIG_SPI_FLASH_WINBOND=y CONFIG_SPI_FLASH_WINBOND=y
# CONFIG_DRIVERS_INTEL_WIFI is not set # CONFIG_DRIVERS_INTEL_WIFI is not set
CONFIG_IFD_BIN_PATH="../../../config/ifd/xx30/ifd" 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_GBE_BIN_PATH="../../../config/ifd/xx30/gbe"
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000 CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
CONFIG_VBT_DATA_SIZE_KB=8 CONFIG_VBT_DATA_SIZE_KB=8
@@ -150,7 +150,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
CONFIG_SPI_FLASH_WINBOND=y CONFIG_SPI_FLASH_WINBOND=y
# CONFIG_DRIVERS_INTEL_WIFI is not set # CONFIG_DRIVERS_INTEL_WIFI is not set
CONFIG_IFD_BIN_PATH="../../../config/ifd/xx30/16_ifd" 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_GBE_BIN_PATH="../../../config/ifd/xx30/gbe"
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000 CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
CONFIG_VBT_DATA_SIZE_KB=8 CONFIG_VBT_DATA_SIZE_KB=8
@@ -148,7 +148,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
CONFIG_SPI_FLASH_WINBOND=y CONFIG_SPI_FLASH_WINBOND=y
# CONFIG_DRIVERS_INTEL_WIFI is not set # CONFIG_DRIVERS_INTEL_WIFI is not set
CONFIG_IFD_BIN_PATH="../../../config/ifd/xx30/16_ifd" 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_GBE_BIN_PATH="../../../config/ifd/xx30/gbe"
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000 CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
CONFIG_VBT_DATA_SIZE_KB=8 CONFIG_VBT_DATA_SIZE_KB=8
@@ -150,7 +150,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
CONFIG_SPI_FLASH_WINBOND=y CONFIG_SPI_FLASH_WINBOND=y
# CONFIG_DRIVERS_INTEL_WIFI is not set # CONFIG_DRIVERS_INTEL_WIFI is not set
CONFIG_IFD_BIN_PATH="../../../config/ifd/xx30/ifd" 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_GBE_BIN_PATH="../../../config/ifd/xx30/gbe"
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000 CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
CONFIG_VBT_DATA_SIZE_KB=8 CONFIG_VBT_DATA_SIZE_KB=8
@@ -148,7 +148,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
CONFIG_SPI_FLASH_WINBOND=y CONFIG_SPI_FLASH_WINBOND=y
# CONFIG_DRIVERS_INTEL_WIFI is not set # CONFIG_DRIVERS_INTEL_WIFI is not set
CONFIG_IFD_BIN_PATH="../../../config/ifd/xx30/ifd" 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_GBE_BIN_PATH="../../../config/ifd/xx30/gbe"
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000 CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
CONFIG_VBT_DATA_SIZE_KB=8 CONFIG_VBT_DATA_SIZE_KB=8
@@ -150,7 +150,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
CONFIG_SPI_FLASH_WINBOND=y CONFIG_SPI_FLASH_WINBOND=y
# CONFIG_DRIVERS_INTEL_WIFI is not set # CONFIG_DRIVERS_INTEL_WIFI is not set
CONFIG_IFD_BIN_PATH="../../../config/ifd/xx30/ifd" 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_GBE_BIN_PATH="../../../config/ifd/xx30/gbe"
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000 CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
CONFIG_VBT_DATA_SIZE_KB=8 CONFIG_VBT_DATA_SIZE_KB=8
@@ -148,7 +148,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
CONFIG_SPI_FLASH_WINBOND=y CONFIG_SPI_FLASH_WINBOND=y
# CONFIG_DRIVERS_INTEL_WIFI is not set # CONFIG_DRIVERS_INTEL_WIFI is not set
CONFIG_IFD_BIN_PATH="../../../config/ifd/xx30/ifd" 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_GBE_BIN_PATH="../../../config/ifd/xx30/gbe"
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000 CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
CONFIG_VBT_DATA_SIZE_KB=8 CONFIG_VBT_DATA_SIZE_KB=8
@@ -150,7 +150,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
CONFIG_SPI_FLASH_WINBOND=y CONFIG_SPI_FLASH_WINBOND=y
# CONFIG_DRIVERS_INTEL_WIFI is not set # CONFIG_DRIVERS_INTEL_WIFI is not set
CONFIG_IFD_BIN_PATH="../../../config/ifd/xx30/16_ifd" 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_GBE_BIN_PATH="../../../config/ifd/xx30/gbe"
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000 CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
CONFIG_VBT_DATA_SIZE_KB=8 CONFIG_VBT_DATA_SIZE_KB=8
@@ -148,7 +148,7 @@ CONFIG_SPI_FLASH_INCLUDE_ALL_DRIVERS=y
CONFIG_SPI_FLASH_WINBOND=y CONFIG_SPI_FLASH_WINBOND=y
# CONFIG_DRIVERS_INTEL_WIFI is not set # CONFIG_DRIVERS_INTEL_WIFI is not set
CONFIG_IFD_BIN_PATH="../../../config/ifd/xx30/16_ifd" 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_GBE_BIN_PATH="../../../config/ifd/xx30/gbe"
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000 CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
CONFIG_VBT_DATA_SIZE_KB=8 CONFIG_VBT_DATA_SIZE_KB=8
+12 -16
View File
@@ -1,19 +1,15 @@
pkg_add="apt-get -y install" pkg_add="apt-get -y install"
pkglist=" \ pkglist=" \
wget git uuid-dev nasm build-essential sharutils curl parted e2fsprogs unzip \ acpica-tools autoconf autogen automake autopoint autotools-dev bc \
pkg-config gcc-arm-linux-gnueabi \ binutils-arm-none-eabi bison build-essential cmake curl device-tree-compiler \
build-essential python3 \ doxygen e2fsprogs efitools flex fonts-unifont gawk gcc-arm-linux-gnueabi \
build-essential perl python3-setuptools libncurses5-dev doxygen iasl gdb flex \ gcc-arm-none-eabi gdb gettext git gnat help2man innoextract libdevmapper-dev \
bison build-essential git libssl-dev gnat python-is-python3 \ libfdt-dev libfont-freetype-perl libfreetype6-dev libftdi-dev libfuse-dev \
fonts-unifont libopts25 libselinux1-dev autogen m4 autoconf help2man \ libgnutls28-dev liblz4-tool liblzma-dev libncurses5-dev libncurses-dev \
libopts25-dev libfont-freetype-perl automake autotools-dev build-essential bison \ libnewlib-arm-none-eabi libopts25 libopts25-dev libpci-dev libpython3-dev \
flex libfuse-dev liblzma-dev gawk libdevmapper-dev libtool libfreetype6-dev \ libsdl2-dev libselinux1-dev libssl-dev libtool libusb-1.0 libusb-1.0-0-dev \
gettext unifont bc bison build-essential device-tree-compiler efitools flex \ libusb-dev lz4 lzma lzma-alone m4 nasm openssl p7zip p7zip-full parted pciutils \
libfdt-dev liblz4-tool libgnutls28-dev libncurses-dev libpython3-dev libsdl2-dev \ perl pkg-config python3 python3-distutils python3-pkg-resources python3-pycryptodome \
libssl-dev lz4 lzma lzma-alone openssl pkg-config python3 python3-distutils \ python3-pyelftools python3-setuptools python-is-python3 sharutils swig unar \
python3-pkg-resources python3-pycryptodome python3-pyelftools swig uuid-dev \ unifont unzip uuid-dev wget zlib1g-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 \
" "
+8 -8
View File
@@ -1,11 +1,11 @@
pkg_add="dnf -y install" pkg_add="dnf -y install"
pkglist=" \ pkglist=" \
wget git pandoc nasm perl-libwww-perl python3 subversion gcc sharutils curl \ acpica-tools arm-none-eabi-binutils arm-none-eabi-gcc arm-none-eabi-gcc-cs \
parted e2fsprogs unzip arm-none-eabi-gcc-cs gcc python3 gcc perl gcc-gnat \ arm-none-eabi-newlib autogen bison bzip2 cmake curl dejavu-fonts-all \
ncurses-devel doxygen acpica-tools gdb flex bison gcc git openssl-devel gprbuild \ device-mapper doxygen e2fsprogs flex freetype-devel fuse gawk gcc gcc-gnat \
bzip2 unifont-fonts unifont unifont-ttf-fonts autogen help2man gcc bison flex \ gdb gettext gettext-devel git gprbuild help2man innoextract intltool \
dejavu-fonts-all texinfo rsync python3 libusb xz gawk device-mapper fuse gettext \ libftdi-devel libselinux-devel libusb1 libusb1-devel nasm ncurses-devel \
freetype-devel intltool libselinux-devel gcc pciutils-devel zlib-devel \ openssl-devel p7zip p7zip-plugins pandoc parted pciutils-devel perl \
libftdi-devel gcc libusb-devel cmake innoextract p7zip p7zip-plugins unar \ perl-libwww-perl python-unversioned-command python3 rsync sharutils subversion \
arm-none-eabi-binutils arm-none-eabi-gcc arm-none-eabi-newlib cmake \ texinfo unar unifont unifont-fonts unifont-ttf-fonts unzip wget xz zlib-devel \
" "
+1
View File
@@ -0,0 +1 @@
debian
+1
View File
@@ -0,0 +1 @@
ubuntu2004
+11 -16
View File
@@ -1,19 +1,14 @@
pkg_add="apt-get -y install" pkg_add="apt-get -y install"
pkglist=" \ pkglist=" \
wget git uuid-dev nasm build-essential sharutils curl parted e2fsprogs unzip \ autoconf autogen automake autopoint autotools-dev bc binutils-arm-none-eabi \
pkg-config gcc-arm-linux-gnueabi \ bison build-essential cmake curl device-tree-compiler doxygen e2fsprogs efitools \
build-essential python3 \ flex gawk gcc-arm-linux-gnueabi gcc-arm-none-eabi gdb gettext git gnat help2man \
build-essential perl python3-setuptools libncurses5-dev doxygen iasl gdb flex \ innoextract libdevmapper-dev libfdt-dev libfont-freetype-perl libfreetype6-dev \
bison build-essential git libssl-dev gnat python-is-python3 \ libftdi-dev libfuse-dev libgnutls28-dev liblz4-tool liblzma-dev libncurses5-dev \
ttf-unifont libopts25 libselinux1-dev autogen m4 autoconf help2man \ libncurses-dev libnewlib-arm-none-eabi libopts25 libopts25-dev libpci-dev \
libopts25-dev libfont-freetype-perl automake autotools-dev build-essential bison \ libpython3-dev libsdl2-dev libselinux1-dev libssl-dev libtool libusb-1.0-0 \
flex libfuse-dev liblzma-dev gawk libdevmapper-dev libtool libfreetype6-dev \ libusb-1.0-0-dev lz4 lzma lzma-alone m4 nasm openssl p7zip p7zip-full parted \
gettext unifont bc bison build-essential device-tree-compiler efitools flex \ pciutils perl pkg-config python3 python3-distutils python3-pkg-resources \
libfdt-dev liblz4-tool libgnutls28-dev libncurses-dev libpython3-dev libsdl2-dev \ python3-pycryptodome python3-pyelftools python3-setuptools python-is-python3 \
libssl-dev lz4 lzma lzma-alone openssl pkg-config python3 python3-distutils \ sharutils swig ttf-unifont unar unifont unzip uuid-dev wget zlib1g-dev \
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 \
" "
+1 -1
View File
@@ -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 \ dejavu-fonts-ttf texinfo rsync python3 libusb xz gawk device-mapper fuse gettext \
gettext-devel freetype base-devel libpciaccess pciutils zlib libftdi1 \ gettext-devel freetype base-devel libpciaccess pciutils zlib libftdi1 \
base-devel libusb cmake innoextract p7zip unar cross-arm-none-eabi-binutils \ 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 \
" "
+1
View File
@@ -2,4 +2,5 @@
rev: 0a7bc1d71735ef97b00dfec0fd54a02fcc5d1bb0 rev: 0a7bc1d71735ef97b00dfec0fd54a02fcc5d1bb0
loc: bios_extract loc: bios_extract
url: https://review.coreboot.org/bios_extract url: https://review.coreboot.org/bios_extract
bkup_url: https://github.com/coreboot/bios_extract/
} }
+2 -1
View File
@@ -1,5 +1,6 @@
{biosutilities}{ {biosutilities}{
rev: 03ae0cf0706ede5a2a15da0986c19c776d0e6b26 rev: 03ae0cf0706ede5a2a15da0986c19c776d0e6b26
loc: biosutilities loc: biosutilities
url: https://github.com/platomav/BIOSUtilities url: https://codeberg.org/libreboot/BIOSUtilities
bkup_url: https://github.com/platomav/BIOSUtilities
} }
+2 -1
View File
@@ -1,5 +1,6 @@
{flashrom}{ {flashrom}{
rev: 11680db4e1251eb842bee11e53b6d1f0ae67767b rev: fba29da188b4a3aa8a3cf6f5a3d13c37a5d9e1d7
loc: flashrom loc: flashrom
url: https://review.coreboot.org/flashrom.git url: https://review.coreboot.org/flashrom.git
bkup_url: https://github.com/flashrom/flashrom
} }
+3 -2
View File
@@ -2,12 +2,13 @@
rev: e58b870ff926415e23fc386af41ff81b2f588763 rev: e58b870ff926415e23fc386af41ff81b2f588763
loc: grub loc: grub
url: git://git.savannah.gnu.org/grub.git 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 depend: gnulib
} }
{gnulib}{ {gnulib}{
rev: 9f48fb992a3d7e96610c4ce8be969cff2d61a01b rev: 9f48fb992a3d7e96610c4ce8be969cff2d61a01b
loc: grub/gnulib 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
View 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
}
+2 -1
View File
@@ -1,5 +1,6 @@
{memtest86plus}{ {memtest86plus}{
rev: 5dcd424ea7afb857c1171e747ef064d98d26afeb rev: 5dcd424ea7afb857c1171e747ef064d98d26afeb
loc: memtest86plus loc: memtest86plus
url: https://github.com/memtest86plus/memtest86plus.git url: https://codeberg.org/libreboot/memtest86plus
bkup_url: https://github.com/memtest86plus/memtest86plus.git
} }
+6
View 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
View 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
}
-34
View File
@@ -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
View 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
}
+2 -1
View File
@@ -1,5 +1,6 @@
{uefitool}{ {uefitool}{
rev: 4a41c33596e9bc3ae812e763965d91ac57553e02 rev: 4a41c33596e9bc3ae812e763965d91ac57553e02
loc: uefitool loc: uefitool
url: https://github.com/LongSoft/UEFITool url: https://codeberg.org/libreboot/UEFITool
bkup_url: https://github.com/LongSoft/UEFITool
} }
+6
View File
@@ -0,0 +1,6 @@
{www}{
rev: f3001eae5724ef38fe512a378148a2d619a0ff24
loc: www
url: https://codeberg.org/libreboot/lbwww
bkup_url: https://git.disroot.org/libreboot/lbwww
}
+1 -1
View File
@@ -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 # TODO: add more strings, based on what distros set up when
# the user select auto-partitioning on those installers # 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" 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); grub_term_cls (term);
- msg_formatted = grub_xasprintf (_("GNU GRUB version %s"), PACKAGE_VERSION); - 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) if (!msg_formatted)
return; return;
+1 -1
View File
@@ -1,7 +1,7 @@
# SPDX-License-Identifier: MIT # SPDX-License-Identifier: MIT
# SPDX-FileCopyrightText: 2022, 2023 Leah Rowe <leah@libreboot.org> # SPDX-FileCopyrightText: 2022, 2023 Leah Rowe <leah@libreboot.org>
version=""; versiondate=""; projectname="" version=""; versiondate=""; projectname=""; _nogit=""
x_() { x_() {
[ $# -lt 1 ] || ${@} || err_exit err ${@} [ $# -lt 1 ] || ${@} || err_exit err ${@}
+38 -32
View File
@@ -4,8 +4,7 @@
# This file is only used by update/project/trees # This file is only used by update/project/trees
eval "$(setvars "" _target rev _xm)" eval "$(setvars "" _target rev _xm loc url bkup_url depend)"
eval "$(setvars "" loc url bkup_url depend)"
tmp_git_dir="${PWD}/tmp/gitclone" tmp_git_dir="${PWD}/tmp/gitclone"
fetch_project_trees() fetch_project_trees()
@@ -14,10 +13,11 @@ fetch_project_trees()
[ -d "src/${project}/${project}" ] || fetch_from_upstream [ -d "src/${project}/${project}" ] || fetch_from_upstream
fetch_config fetch_config
[ -z "${rev}" ] && err "fetch_project_trees $target: undefined rev" [ -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" \ printf "download/%s %s (%s): exists\n" \
"${project}" "${tree}" "${_target}" 1>&2 && \ "${project}" "${tree}" "${_target}" 1>&2
return 1 return 0
fi
prepare_new_tree prepare_new_tree
} }
@@ -26,12 +26,12 @@ fetch_from_upstream()
[ -d "src/${project}/${project}" ] && return 0 [ -d "src/${project}/${project}" ] && return 0
x_ mkdir -p "src/${project}" x_ mkdir -p "src/${project}"
x_ fetch_project_repo "${project}" fetch_project_repo "${project}"
} }
fetch_config() fetch_config()
{ {
x_ rm -f "${cfgsdir}/"*/seen rm -f "${cfgsdir}/"*/seen || err "fetch_config ${cfgsdir}: !rm seen"
while true; do while true; do
eval "$(setvars "" rev tree)" eval "$(setvars "" rev tree)"
_xm="fetch_config ${project}/${_target}" _xm="fetch_config ${project}/${_target}"
@@ -51,7 +51,7 @@ load_target_config()
. "${cfgsdir}/${1}/target.cfg" || \ . "${cfgsdir}/${1}/target.cfg" || \
err "load_target_config ${cfgsdir}/${1}: cannot load config" 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() prepare_new_tree()
@@ -59,14 +59,15 @@ prepare_new_tree()
printf "Creating %s tree %s (%s)\n" "${project}" "${tree}" "${_target}" printf "Creating %s tree %s (%s)\n" "${project}" "${tree}" "${_target}"
x_ cp -R "src/${project}/${project}" "src/${project}/${tree}" 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}" x_ cd "src/${project}/${tree}"
git submodule update --init --checkout || \ if [ -f ".gitmodules" ]; then
err "prepare_new_tree ${project}/${tree}: can't update git modules" git submodule update --init --checkout || \
err "prepare_new_tree ${project}/${tree}: !submodules"
fi
) )
git_am_patches "${PWD}/src/${project}/${tree}" \ git_am_patches "$PWD/src/$project/$tree" "$PWD/$cfgsdir/$tree/patches"
"${PWD}/${cfgsdir}/${tree}/patches"
} }
fetch_project_repo() fetch_project_repo()
@@ -75,10 +76,10 @@ fetch_project_repo()
verify_config verify_config
clone_project clone_project
[ "${depend}" = "" ] || for d in ${depend} ; do [ -z "${depend}" ] || for d in ${depend} ; do
x_ ./update project trees -f ${d} x_ ./update trees -f ${d}
done done
x_ rm -Rf "${tmp_git_dir}" rm -Rf "${tmp_git_dir}" || err "fetch_repo: !rm -Rf ${tmp_git_dir}"
} }
verify_config() verify_config()
@@ -91,33 +92,39 @@ verify_config()
clone_project() clone_project()
{ {
x_ rm -Rf "${tmp_git_dir}" rm -Rf "${tmp_git_dir}" || err "clone_project: !rm -Rf ${tmp_git_dir}"
x_ mkdir -p "${tmp_git_dir%/*}" mkdir -p "${tmp_git_dir%/*}" || \
err "clone_project: !mkdir -p ${tmp_git_dir%/*}"
loc="${loc#src/}" loc="${loc#src/}"
loc="src/${loc}" 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 ${url} "${tmp_git_dir}" || \
git clone ${bkup_url} "${tmp_git_dir}" || \ git clone ${bkup_url} "${tmp_git_dir}" || \
err "clone_project: could not download ${project}" err "clone_project: could not download ${project}"
git_reset_rev "${tmp_git_dir}" "${rev}" || \ git_reset_rev "${tmp_git_dir}" "${rev}"
err "clone_project ${loc}/: cannot reset <- ${rev}" git_am_patches "${tmp_git_dir}" "${PWD}/config/${project}/patches"
git_am_patches "${tmp_git_dir}" "${PWD}/config/${project}/patches" || \
err "clone_project ${loc}/: cannot apply patches"
x_ rm -Rf "${loc}" x_ rm -Rf "${loc}"
[ "${loc}" = "${loc%/*}" ] || x_ mkdir -p ${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() git_reset_rev()
{ {
sdir="${1}"
_rev="${2}"
( (
x_ cd "${sdir}" cd "${1}" || err "git_reset_rev: !cd ${1}"
git reset --hard ${_rev} || \ git reset --hard ${2} || err "!git reset ${1} <- ${2}"
err "cannot git reset ${sdir} <- ${rev}" 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 sdir="${1}" # assumed to be absolute path
patchdir="${2}" # ditto patchdir="${2}" # ditto
( (
x_ cd "${sdir}" cd "${sdir}" || err "git_am_patches: !cd ${sdir}"
for patch in "${patchdir}/"*; do for patch in "${patchdir}/"*; do
[ -L "${patch}" ] && continue [ -L "${patch}" ] && continue
[ -f "${patch}" ] || continue [ -f "${patch}" ] || continue
@@ -138,8 +145,7 @@ git_am_patches()
) )
for patches in "${patchdir}/"*; do for patches in "${patchdir}/"*; do
[ -L "${patches}" ] && continue [ -L "${patches}" ] && continue
[ ! -d "${patches}" ] || \ [ ! -d "${patches}" ] && continue
git_am_patches "${sdir}" "${patches}" err || \ git_am_patches "${sdir}" "${patches}"
err "apply_patches: !${sdir}/ ${patches}/"
done done
} }
+18 -20
View File
@@ -4,7 +4,7 @@
# Modifications in this version are Copyright 2021 and 2023 Leah Rowe. # Modifications in this version are Copyright 2021 and 2023 Leah Rowe.
# Original copyright detailed in repo: https://review.coreboot.org/coreboot/ # 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() extract_mrc()
{ {
@@ -12,25 +12,25 @@ extract_mrc()
[ -z "${CONFIG_MRC_FILE}" ] && \ [ -z "${CONFIG_MRC_FILE}" ] && \
err "extract_mrc $MRC_hash: CONFIG_MRC_FILE not set" err "extract_mrc $MRC_hash: CONFIG_MRC_FILE not set"
_file="${MRC_url##*/}" ROOTFS="root-a.ext2"
_file="${_file%.zip}" SHELLBALL="chromeos-firmwareupdate-${MRC_board}"
( (
x_ cd "${appdir}" x_ cd "${appdir}"
extract_partition ROOT-A "${_file}" root-a.ext2 extract_partition
extract_shellball root-a.ext2 chromeos-firmwareupdate-${MRC_board} extract_shellball
extract_coreboot chromeos-firmwareupdate-${MRC_board} extract_coreboot
) )
x_ "${cbfstool}" "${appdir}/"coreboot-*.bin extract -n mrc.bin \ "${cbfstool}" "${appdir}/"coreboot-*.bin extract -n mrc.bin \
-f "${_dest}" -r RO_SECTION -f "${_dest}" -r RO_SECTION || err "extract_mrc: cbfstool ${_dest}"
} }
extract_partition() extract_partition()
{ {
NAME=${1} NAME="ROOT-A"
FILE=${2} FILE="${MRC_url##*/}"
ROOTFS=${3} FILE="${FILE%.zip}"
_bs=1024 _bs=1024
printf "Extracting ROOT-A partition\n" printf "Extracting ROOT-A partition\n"
@@ -40,15 +40,13 @@ extract_partition()
START=$(( $( echo ${ROOTP} | cut -f2 -d\ | tr -d "B" ) )) START=$(( $( echo ${ROOTP} | cut -f2 -d\ | tr -d "B" ) ))
SIZE=$(( $( echo ${ROOTP} | cut -f4 -d\ | tr -d "B" ) )) SIZE=$(( $( echo ${ROOTP} | cut -f4 -d\ | tr -d "B" ) ))
x_ dd if="${FILE}" of="${ROOTFS}" bs=${_bs} \ dd if="${FILE}" of="${ROOTFS}" bs=${_bs} \
skip=$(( ${START} / ${_bs} )) count=$(( ${SIZE} / ${_bs} )) skip=$(( ${START} / ${_bs} )) count=$(( ${SIZE} / ${_bs} )) || \
err "extract_partition, dd ${FILE}, ${ROOTFS}"
} }
extract_shellball() extract_shellball()
{ {
ROOTFS=${1}
SHELLBALL=${2}
printf "Extracting chromeos-firmwareupdate\n" printf "Extracting chromeos-firmwareupdate\n"
printf "cd /usr/sbin\ndump chromeos-firmwareupdate ${SHELLBALL}\nquit" \ printf "cd /usr/sbin\ndump chromeos-firmwareupdate ${SHELLBALL}\nquit" \
| debugfs "${ROOTFS}" || err "extract_shellball: debugfs" | debugfs "${ROOTFS}" || err "extract_shellball: debugfs"
@@ -56,13 +54,12 @@ extract_shellball()
extract_coreboot() extract_coreboot()
{ {
_shellball=${1}
_unpacked=$( mktemp -d ) _unpacked=$( mktemp -d )
printf "Extracting coreboot image\n" printf "Extracting coreboot image\n"
[ -f "${_shellball}" ] || \ [ -f "${SHELLBALL}" ] || \
err "extract_coreboot: shellball missing in google cros image" 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. # TODO: audit the f* out of that shellball, for each mrc version.
# it has to be updated for each mrc update. we should ideally # 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: | \ _version=$( cat "${_unpacked}/VERSION" | grep BIOS\ version: | \
cut -f2 -d: | tr -d \ ) 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"
} }
+9 -10
View File
@@ -3,7 +3,7 @@
# SPDX-FileCopyrightText: 2022 Ferass El Hafidi <vitali64pmemail@protonmail.com> # SPDX-FileCopyrightText: 2022 Ferass El Hafidi <vitali64pmemail@protonmail.com>
# SPDX-FileCopyrightText: 2023 Leah Rowe <leah@libreboot.org> # SPDX-FileCopyrightText: 2023 Leah Rowe <leah@libreboot.org>
vendir="vendor" vendir="vendorfiles"
appdir="${vendir}/app" appdir="${vendir}/app"
cbdir="src/coreboot/default" cbdir="src/coreboot/default"
cbcfgsdir="config/coreboot" 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_INCLUDE_SMSC_SCH5545_EC_FW CONFIG_SMSC_SCH5545_EC_FW_FILE \
CONFIG_IFD_BIN_PATH CONFIG_MRC_FILE _dest board boarddir)" CONFIG_IFD_BIN_PATH CONFIG_MRC_FILE _dest board boarddir)"
listitems() items()
{ {
rval=1 rval=1
[ ! -d "${1}" ] && \ [ ! -d "${1}" ] && \
printf "listitems: directory '%s' doesn't exist" "${1}" && \ printf "items: directory '%s' doesn't exist" "${1}" && \
return 1 return 1
for x in "${1}/"*; do for x in "${1}/"*; do
# -e used because this is for files *or* directories # -e used because this is for files *or* directories
@@ -62,13 +62,12 @@ check_defconfig()
handle_coreboot_utils() handle_coreboot_utils()
{ {
for util in cbfstool ifdtool; do 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}" ] && \ [ -z "${mode}" ] && [ ! -f "cbutils/${1}/${util}" ] && \
x_ mkdir -p "cbutils/${1}" && \ x_ mkdir -p "cbutils/${1}" && \
x_ cp "src/coreboot/${1}/util/${util}/${util}" \ x_ cp "src/coreboot/${1}/util/${util}/${util}" \
"cbutils/${1}" "cbutils/${1}"
[ -z "${mode}" ] || \ [ -z "${mode}" ] || x_ rm -Rf "cbutils/${1}"
x_ rm -Rf "cbutils/${1}"
done done
} }
@@ -90,12 +89,12 @@ modify_coreboot_rom()
done done
elif [ "${romtype}" = "i945 laptop" ]; then elif [ "${romtype}" = "i945 laptop" ]; then
# for bucts-based installation method from factory bios # 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)) \ skip=$(($(stat -c %s "${rompath}") - 0x10000)) \
count=64k count=64k || err "modrom 1, dd, ${rompath}"
x_ dd if="${tmprom}" of="${rompath}" bs=1 \ dd if="${tmprom}" of="${rompath}" bs=1 \
seek=$(($(stat -c %s "${rompath}") - 0x20000)) \ seek=$(($(stat -c %s "${rompath}") - 0x20000)) \
count=64k conv=notrunc count=64k conv=notrunc || err "modrom 2, dd, ${rompath}"
fi fi
x_ rm -f "${tmprom}" x_ rm -f "${tmprom}"
} }
+5 -5
View File
@@ -23,10 +23,10 @@ main()
handle_dependencies() 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 [ -f "src/grub/grub-mkstandalone" ] || build_grub_utils
x_ mkdir -p "${elfdir}" x_ mkdir -p "${elfdir}"
x_ rm -f "${elfdir}/"* rm -f "${elfdir}/"* || err "!rm elf, handle_, ${elfdir}/"
} }
build_grub_utils() build_grub_utils()
@@ -37,7 +37,7 @@ build_grub_utils()
x_ ./bootstrap --gnulib-srcdir=gnulib/ --no-git x_ ./bootstrap --gnulib-srcdir=gnulib/ --no-git
x_ ./autogen.sh x_ ./autogen.sh
x_ ./configure --with-platform=coreboot 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 [ -f "${keylayoutfile}" ] || continue
keymap="${keylayoutfile##${grubcfgsdir}/keymap/}" keymap="${keylayoutfile##${grubcfgsdir}/keymap/}"
keymap="${keymap%.gkb}" keymap="${keymap%.gkb}"
x_ printf "keymap %s\n" "${keymap}" > \ printf "keymap %s\n" "${keymap}" > \
"${elfdir}/keymap_${keymap}.cfg" "${elfdir}/keymap_${keymap}.cfg" || err "!insert keymap"
done done
} }
+28 -32
View File
@@ -25,15 +25,14 @@ pv="${pv} payload_seabios_withgrub payload_uboot memtest_bin"
v="romdir cbrom initmode displaymode cbcfg targetdir tree arch" v="romdir cbrom initmode displaymode cbcfg targetdir tree arch"
v="${v} grub_timeout ubdir vendorfiles board grub_scan_disk uboot_config" v="${v} grub_timeout ubdir vendorfiles board grub_scan_disk uboot_config"
eval "$(setvars "n" ${pv})" eval "$(setvars "n" ${pv})"
eval "$(setvars "" ${v})" eval "$(setvars "" ${v} boards _displaymode _payload _keyboard all targets)"
eval "$(setvars "" boards _displaymode _payload _keyboard all targets)"
main() main()
{ {
while [ $# -gt 0 ]; do while [ $# -gt 0 ]; do
case ${1} in case ${1} in
help) usage && exit 0 ;; help) usage && exit 0 ;;
list) listitems config/coreboot && exit 0 ;; list) items config/coreboot && exit 0 ;;
-d) _displaymode="${2}" ;; -d) _displaymode="${2}" ;;
-p) _payload="${2}" ;; -p) _payload="${2}" ;;
-k) _keyboard="${2}" ;; -k) _keyboard="${2}" ;;
@@ -45,7 +44,7 @@ main()
shift 2 shift 2
done done
[ "${all}" != "y" ] || boards=$(listitems config/coreboot) || \ [ "${all}" != "y" ] || boards=$(items config/coreboot) || \
err "Cannot generate list of boards for building" err "Cannot generate list of boards for building"
for x in ${boards}; do for x in ${boards}; do
@@ -63,11 +62,7 @@ main()
printf "\nROM images available in these directories:\n" printf "\nROM images available in these directories:\n"
printf "${targets}^^ ROM images available in these directories.\n\n" printf "${targets}^^ ROM images available in these directories.\n\n"
printf "WARNING!!!!!!! PLEASE READ:\n\n" printf "DO NOT flash ROM images from elf/ - please use bin/ instead.\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"
} }
check_target() check_target()
@@ -133,15 +128,15 @@ prepare_target()
cbrom="${cbdir}/build/coreboot.rom" cbrom="${cbdir}/build/coreboot.rom"
[ -f "${cbfstool}" ] || \ [ -f "${cbfstool}" ] || \
x_ ./update project trees -b coreboot utils ${tree} x_ ./update trees -b coreboot utils ${tree}
build_dependency_seabios build_dependency_seabios
memtest_bin="memtest86plus/build64/memtest.bin" memtest_bin="memtest86plus/build64/memtest.bin"
[ "${payload_memtest}" != "y" ] || [ -f "src/${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_grub
build_dependency_uboot build_dependency_uboot
@@ -151,13 +146,12 @@ prepare_target()
build_dependency_seabios() build_dependency_seabios()
{ {
[ "${payload_seabios}" = "y" ] || return 0 [ "${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}" ] \ x_ ./update trees -b seabios
|| [ ! -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
} }
build_dependency_grub() build_dependency_grub()
@@ -177,14 +171,14 @@ build_dependency_grub()
rebuild_grub="y" && break rebuild_grub="y" && break
done done
[ "${rebuild_grub}" = "y" ] || return 0 [ "${rebuild_grub}" = "y" ] || return 0
x_ ./build fw grub x_ ./build grub
} }
build_dependency_uboot() build_dependency_uboot()
{ {
[ "${payload_uboot}" = "y" ] || return 0 [ "${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}" ubdir="elf/u-boot/${board}/${uboot_config}"
ubootelf="${ubdir}/u-boot.elf" ubootelf="${ubdir}/u-boot.elf"
[ ! -f "${ubootelf}" ] && [ -f "${ubdir}/u-boot" ] && \ [ ! -f "${ubootelf}" ] && [ -f "${ubdir}/u-boot" ] && \
@@ -221,7 +215,7 @@ build_roms()
"${cbcfg}" "${board}" "${displaymode}" "${initmode}" \ "${cbcfg}" "${board}" "${displaymode}" "${initmode}" \
1>&2 && return 0 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}" _cbrom="elf/coreboot_nopayload_DO_NOT_FLASH/${board}/${initmode}_${displaymode}"
[ "${initmode}" = "normal" ] && \ [ "${initmode}" = "normal" ] && \
@@ -280,15 +274,17 @@ build_grub_roms()
if [ "${displaymode}" = "vesafb" ] || \ if [ "${displaymode}" = "vesafb" ] || \
[ "${displaymode}" = "corebootfb" ]; then [ "${displaymode}" = "corebootfb" ]; then
backgroundfile="config/grub/background/${grub_background}" backgroundfile="config/grub/background/${grub_background}"
x_ "${cbfstool}" "${tmprom}" add -f ${backgroundfile} \ "${cbfstool}" "${tmprom}" add -f ${backgroundfile} \
-n background.png -t raw -n background.png -t raw || err "insert background, ${backgroundfile}"
fi fi
tmpcfg=$(mktemp -t coreboot_rom.XXXXXXXXXX) 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" ] || \ [ "${grub_scan_disk}" = "both" ] || \
x_ "${cbfstool}" "${tmprom}" add -f "${tmpcfg}" -n scan.cfg -t raw 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 \ [ -z "${grub_timeout}" ] || x_ "${cbfstool}" "${tmprom}" add \
-f "${tmpcfg}" -n timeout.cfg -t raw -f "${tmpcfg}" -n timeout.cfg -t raw
x_ rm -f "${tmpcfg}" x_ rm -f "${tmpcfg}"
@@ -397,9 +393,9 @@ moverom() {
usage() usage()
{ {
cat <<- EOF cat <<- EOF
USAGE: ./build fw coreboot targetname USAGE: ./build roms targetname
To build *all* boards, do this: ./build fw coreboot all To build *all* boards, do this: ./build roms all
To list *all* boards, do this: ./build fw coreboot list To list *all* boards, do this: ./build roms list
Optional Flags: Optional Flags:
-d: displaymode -d: displaymode
@@ -408,12 +404,12 @@ usage()
Example commands: Example commands:
./build fw coreboot x60 ./build roms x60
./build fw coreboot x200_8mb x60 ./build roms x200_8mb x60
./build fw coreboot x60 -p grub -d corebootfb -k usqwerty ./build roms x60 -p grub -d corebootfb -k usqwerty
possible values for 'target': possible values for 'target':
$(listitems "config/coreboot") $(items "config/coreboot")
Refer to the ${projectname} documentation for more information. Refer to the ${projectname} documentation for more information.
EOF EOF
@@ -22,12 +22,12 @@ main()
platform="rp2040" platform="rp2040"
boards_dir=${pico_sdk_dir}/src/boards/include/boards boards_dir=${pico_sdk_dir}/src/boards/include/boards
[ -d "${pico_src_dir}/" ] || \ [ -d "${pico_src_dir}/" ] || \
x_ ./update project trees -f "rpi-pico-serprog" x_ ./update trees -f "pico-serprog"
elif [ "${1}" = "stm32" ]; then elif [ "${1}" = "stm32" ]; then
platform="stm32" platform="stm32"
boards_dir=${stm32_src_dir}/boards boards_dir=${stm32_src_dir}/boards
[ -d "${stm32_src_dir}/" ] || \ [ -d "${stm32_src_dir}/" ] || \
x_ ./update project trees -f "stm32-vserprog" x_ ./update trees -f "stm32-vserprog"
else else
err "${usage}" err "${usage}"
fi fi
-247
View File
@@ -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
View 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 \ eval "$(setvars "" arch cfgsdir codedir config config_name crossgcc_ada mode \
elfdir listfile project romtype target target_dir targets tree _f target1)" elfdir listfile project romtype target target_dir targets tree _f target1)"
tmpclean="$(mktemp -d -t makeclean.XXXXXXXXXX)"
main() main()
{ {
while getopts f:b:m:u:c:x:s:l:n: option while getopts f:b:m:u:c:x:s:l:n: option; do
do
_f="${1}" _f="${1}"
case "${1}" in case "${1}" in
-b) : ;; -b) : ;;
@@ -37,19 +34,16 @@ main()
esac esac
shift; project="${OPTARG#src/}"; shift shift; project="${OPTARG#src/}"; shift
done 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" [ -z "${project}" ] && err "project name not specified"
if [ ! -f "config/${project}/build.list" ]; then [ -f "config/${project}/build.list" ] && build_targets $@ && return 0
build_projects $@ build_projects $@
else
build_targets $@
fi
} }
build_projects() build_projects()
{ {
[ $# -gt 0 ] && x_ ./update project trees ${_f} ${@} [ $# -gt 0 ] && x_ ./update trees ${_f} ${@}
if [ "${mode}" = "fetch" ]; then if [ "${mode}" = "fetch" ]; then
fetch_project_repo fetch_project_repo
@@ -57,7 +51,7 @@ build_projects()
fi fi
codedir="src/${project}" codedir="src/${project}"
[ -d "${codedir}" ] || x_ ./update project trees -f "${project}" [ -d "${codedir}" ] || x_ ./update trees -f "${project}"
if [ "${project}" = "uefitool" ]; then if [ "${project}" = "uefitool" ]; then
( (
@@ -87,7 +81,7 @@ build_targets()
[ $# -gt 0 ] && target1="${1}" [ $# -gt 0 ] && target1="${1}"
[ "${target1}" = "utils" ] && [ "${project}" = "coreboot" ] && \ [ "${target1}" = "utils" ] && [ "${project}" = "coreboot" ] && \
shift 1 shift 1
targets=$(listitems "${cfgsdir}") || \ targets=$(items "${cfgsdir}") || \
err "Cannot get options for ${cfgsdir}" err "Cannot get options for ${cfgsdir}"
[ $# -gt 0 ] && targets=$@ [ $# -gt 0 ] && targets=$@
@@ -103,7 +97,7 @@ handle_targets()
printf "Running 'make %s' for project '%s, target '%s''\n" \ printf "Running 'make %s' for project '%s, target '%s''\n" \
"${mode}" "${project}" "${target}" "${mode}" "${project}" "${target}"
[ "${project}" != "coreboot" ] || [ ! -z ${mode} ] || \ [ "${project}" != "coreboot" ] || [ ! -z ${mode} ] || \
x_ ./update vendor download ${target} x_ ./vendor download ${target}
x_ handle_defconfig x_ handle_defconfig
done done
@@ -151,10 +145,8 @@ handle_src_tree()
. "${target_dir}/target.cfg" || \ . "${target_dir}/target.cfg" || \
err "handle_src_tree ${target_dir}: cannot load target.cfg" err "handle_src_tree ${target_dir}: cannot load target.cfg"
[ -z "${tree}" ] && \ [ -z "${arch}" ] && err "handle_src_tree $project/$tree: arch unset"
err "handle_src_tree: ${target_dir}: tree undefined" [ -z "${tree}" ] && err "handle_src_tree $project/$tree: tree unset"
[ -z "${arch}" ] && \
err "handle_src_tree: ${target_dir}: undefined cpu type"
codedir="src/${project}/${tree}" codedir="src/${project}/${tree}"
@@ -165,23 +157,15 @@ handle_src_tree()
"${codedir}" 1>&2 "${codedir}" 1>&2
return 1 return 1
fi fi
x_ ./update project trees -f "${project}" "${target}" x_ ./update trees -f "${project}" "${target}"
elif [ "${mode}" = "distclean" ] || \
[ "${mode}" = "crossgcc-clean" ]; then
[ -f "${tmpclean}/${tree}" ] && return 1
touch "${tmpclean}/${tree}"
fi fi
[ "${target1}" = "utils" ] && [ "${project}" = "coreboot" ] && return 0 [ "${target1}" = "utils" ] && [ "${project}" = "coreboot" ] && return 0
[ "$project" != "coreboot" ] && [ "$project" != "u-boot" ] && return 0
# u-boot and coreboot are both compiled with coreboot's crossgcc # u-boot and coreboot are both compiled with coreboot's crossgcc
if [ "${project}" = "coreboot" ] || [ "${project}" = "u-boot" ]; then [ -z "${mode}" ] || return 0
[ ! -z ${mode} ] || check_cross_compiler || \ 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
} }
# set up cross-compiler (coreboot crossgcc) for u-boot and coreboot # 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}" = "n" ] || \
crossgcc_ada="y" crossgcc_ada="y"
[ "${crossgcc_ada}" != "y" ] && \ [ "${crossgcc_ada}" = "y" ] || export BUILD_LANGUAGES=c
export BUILD_LANGUAGES=c
cbdir="src/coreboot/${tree}" cbdir="src/coreboot/${tree}"
[ "${project}" != "coreboot" ] && \ [ "${project}" != "coreboot" ] && cbdir="src/coreboot/default"
cbdir="src/coreboot/default"
# only true if not building coreboot: # only true if not building coreboot:
ctarget="${cbdir#src/coreboot/}" ctarget="${cbdir#src/coreboot/}"
[ -d "${cbdir}" ] || \ [ -d "${cbdir}" ] || x_ ./update trees -f coreboot ${ctarget}
x_ ./update project trees -f coreboot ${ctarget}
if [ "${arch}" = "x86_32" ] || [ "${arch}" = "x86_64" ]; then if [ "${arch}" = "x86_32" ] || [ "${arch}" = "x86_64" ]; then
[ -d "${cbdir}/util/crossgcc/xgcc/i386-elf/" ] || \ [ -d "${cbdir}/util/crossgcc/xgcc/i386-elf/" ] || \
make -C "${cbdir}" crossgcc-i386 CPUS=$(nproc) || \ x_ make -C "${cbdir}" crossgcc-i386 CPUS=$(nproc)
return 1
case "$(uname -m)" in case "$(uname -m)" in
x86*|i*86|amd64) : ;; x86*|i*86|amd64) : ;;
*) export CROSS_COMPILE=i386-elf- ;; *) export CROSS_COMPILE=i386-elf- ;;
esac esac
elif [ "${arch}" = "ARMv7" ]; then elif [ "${arch}" = "ARMv7" ]; then
[ -d "${cbdir}/util/crossgcc/xgcc/arm-eabi/" ] || \ [ -d "${cbdir}/util/crossgcc/xgcc/arm-eabi/" ] || \
make -C "${cbdir}" crossgcc-arm CPUS=$(nproc) || \ x_ make -C "${cbdir}" crossgcc-arm CPUS=$(nproc)
return 1
case "$(uname -m)" in case "$(uname -m)" in
arm|arm32|armv6*|armv7*) : ;; arm|arm32|armv6*|armv7*) : ;;
*) export CROSS_COMPILE=arm-eabi- ;; *) export CROSS_COMPILE=arm-eabi- ;;
esac esac
elif [ "${arch}" = "AArch64" ]; then elif [ "${arch}" = "AArch64" ]; then
[ -d "${cbdir}/util/crossgcc/xgcc/aarch64-elf/" ] || \ [ -d "${cbdir}/util/crossgcc/xgcc/aarch64-elf/" ] || \
make -C "${cbdir}" crossgcc-aarch64 CPUS=$(nproc) || \ x_ make -C "${cbdir}" crossgcc-aarch64 CPUS=$(nproc)
return 1
# aarch64 also needs armv7 toolchain for arm-trusted-firmware # aarch64 also needs armv7 toolchain for arm-trusted-firmware
[ -d "${cbdir}/util/crossgcc/xgcc/arm-eabi/" ] || \ [ -d "${cbdir}/util/crossgcc/xgcc/arm-eabi/" ] || \
make -C "${cbdir}" crossgcc-arm CPUS=$(nproc) || \ x_ make -C "${cbdir}" crossgcc-arm CPUS=$(nproc)
return 1
case "$(uname -m)" in case "$(uname -m)" in
arm64|aarch64) : ;; arm64|aarch64) : ;;
*) export CROSS_COMPILE=aarch64-elf- ;; *) export CROSS_COMPILE=aarch64-elf- ;;
@@ -233,7 +210,7 @@ check_cross_compiler()
fi fi
# we *must* ensure that u-boot's build system uses crossgcc first # 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() check_config()
@@ -279,6 +256,7 @@ run_make_command()
x_ printf "%s\n" "${version%%-*}" >"${codedir}/.coreboot-version" x_ printf "%s\n" "${version%%-*}" >"${codedir}/.coreboot-version"
x_ make ${mode} -j$(nproc) -C "${codedir}" x_ make ${mode} -j$(nproc) -C "${codedir}"
[ "${mode}" != "clean" ] && return 0 [ "${mode}" != "clean" ] && return 0
make -C "${codedir}" distclean 2>/dev/null || : make -C "${codedir}" distclean 2>/dev/null || :
} }
+12 -12
View File
@@ -54,18 +54,17 @@ detect_firmware()
build_dependencies() build_dependencies()
{ {
[ -d ${cbdir} ] || \ [ -d ${cbdir} ] || \
x_ ./update project trees -f coreboot ${cbdir##*/} x_ ./update trees -f coreboot ${cbdir##*/}
for d in uefitool biosutilities bios_extract; do for d in uefitool biosutilities bios_extract; do
[ -d "src/${d}" ] && continue [ -d "src/${d}" ] && continue
x_ ./update project trees -f "${d}" x_ ./update trees -f "${d}"
done done
[ -f "${uefiextract}" ] || \ [ -f "${uefiextract}" ] || \
x_ ./update project trees -b uefitool x_ ./update trees -b uefitool
[ -f "${kbc1126_ec_dump}" ] || \ [ -f "${kbc1126_ec_dump}" ] || \
x_ make -C "${cbdir}/util/kbc1126" x_ make -C "${cbdir}/util/kbc1126"
if [ ! -f "${cbfstool}" ] || [ ! -f "${ifdtool}" ]; then [ -f "${cbfstool}" ] && [ -f "${ifdtool}" ] && return 0
x_ ./update project trees -b coreboot utils default x_ ./update trees -b coreboot utils default
fi
} }
download_vendorfiles() download_vendorfiles()
@@ -85,8 +84,7 @@ download_vendorfiles()
"${E6400_VGA_DL_url_bkup}" "${E6400_VGA_DL_hash}" \ "${E6400_VGA_DL_url_bkup}" "${E6400_VGA_DL_hash}" \
"${CONFIG_VGA_BIOS_FILE}" "${CONFIG_VGA_BIOS_FILE}"
[ -z "${CONFIG_HAVE_MRC}" ] && return 0 [ -z "${CONFIG_HAVE_MRC}" ] && return 0
fetch "mrc" "${MRC_url}" "${MRC_url_bkup}" "${MRC_hash}" \ fetch "mrc" "$MRC_url" "$MRC_url_bkup" "$MRC_hash" "$CONFIG_MRC_FILE"
"${CONFIG_MRC_FILE}"
} }
fetch() fetch()
@@ -136,7 +134,7 @@ mkdirs()
{ {
[ -f "${1}" ] && \ [ -f "${1}" ] && \
printf "mkdirs ${1} ${2}: already downloaded\n" 1>&2 && return 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_ rm -Rf "${appdir}"
x_ mkdir -p "${appdir}/" x_ mkdir -p "${appdir}/"
extract_archive "${_dl}" "${appdir}" || \ extract_archive "${_dl}" "${appdir}" || \
@@ -192,7 +190,7 @@ extract_kbc1126ec()
mv Rompaq/68*.BIN ec.bin || : mv Rompaq/68*.BIN ec.bin || :
if [ ! -f ec.bin ]; then if [ ! -f ec.bin ]; then
unar -D ROM.CAB Rom.bin || unar -D Rom.CAB Rom.bin || \ 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 x_ mv Rom.bin ec.bin
fi fi
[ -f ec.bin ] || err "extract_kbc1126_ec ${board}: can't extract" [ -f ec.bin ] || err "extract_kbc1126_ec ${board}: can't extract"
@@ -205,7 +203,8 @@ extract_kbc1126ec()
done done
[ "${ec_ex}" = "y" ] || \ [ "${ec_ex}" = "y" ] || \
err "extract_kbc1126_ec ${board}: didn't extract ecfw1/2.bin" 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() extract_e6400vga()
@@ -223,7 +222,8 @@ extract_e6400vga()
[ -f "${E6400_VGA_romname}" ] || \ [ -f "${E6400_VGA_romname}" ] || \
err "extract_e6400vga: can't extract vga rom from bios.bin" 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() extract_sch5545ec()
+31 -20
View File
@@ -15,7 +15,7 @@ main()
{ {
[ $# -lt 1 ] && err "No options specified." [ $# -lt 1 ] && err "No options specified."
[ "${1}" = "listboards" ] && \ [ "${1}" = "listboards" ] && \
listitems config/coreboot && exit 0 items config/coreboot && exit 0
archive="${1}" archive="${1}"
@@ -78,7 +78,7 @@ detect_board()
_stripped_prefix=${filename#*_} _stripped_prefix=${filename#*_}
board="${_stripped_prefix%.tar.xz}" ;; board="${_stripped_prefix%.tar.xz}" ;;
*) *)
err "detect_board: could not detect board type" err "detect_board $filename: could not detect board type"
esac esac
[ -d "${boarddir}/" ] || \ [ -d "${boarddir}/" ] || \
err "detect_board: dir, ${boarddir}, doesn't exist" err "detect_board: dir, ${boarddir}, doesn't exist"
@@ -87,18 +87,21 @@ detect_board()
build_dependencies() 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 if [ ! -f "${cbfstool}" ] || [ ! -f "${ifdtool}" ]; then
x_ ./update project trees -b coreboot utils default x_ ./update trees -b coreboot utils default
fi fi
[ -z "${new_mac}" ] || [ -f "${nvmutil}" ] || x_ make -C util/nvmutil [ -z "${new_mac}" ] || [ -f "${nvmutil}" ] || x_ make -C util/nvmutil
[ "${nukemode}" = "nuke" ] && return 0 [ "${nukemode}" = "nuke" ] && return 0
x_ ./update vendor download ${board} x_ ./vendor download ${board}
} }
inject_vendorfiles() 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" printf "patching release images\n"
patch_release_roms patch_release_roms
} }
@@ -108,22 +111,24 @@ patch_release_roms()
_tmpdir="tmp/romdir" _tmpdir="tmp/romdir"
x_ rm -Rf "${_tmpdir}" x_ rm -Rf "${_tmpdir}"
x_ mkdir -p "${_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 for x in "${_tmpdir}"/bin/*/*.rom ; do
printf "patching rom: %s\n" "$x" printf "patching rom: %s\n" "$x"
x_ patch_rom "${x}" patch_rom "${x}"
done done
for x in "${_tmpdir}"/bin/*/*_nomicrocode.rom ; do for x in "${_tmpdir}"/bin/*/*_nomicrocode.rom ; do
[ -f "${x}" ] || continue [ -f "${x}" ] || continue
[ -f "${x%_nomicrocode.rom}.rom" ] || 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 x_ "${cbfstool}" "${x}" remove -n cpu_microcode_blob.bin
done 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 # NOTE: For compatibility with older rom releases, defer to sha1
[ "${nukemode}" = "nuke" ] || \ [ "${nukemode}" = "nuke" ] || \
@@ -211,22 +216,28 @@ inject()
if [ "${_t}" = "GbE" ]; then if [ "${_t}" = "GbE" ]; then
x_ mkdir -p tmp 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" _dest="tmp/gbe.bin"
x_ "${nvmutil}" "${_dest}" setmac "${new_mac}" "${nvmutil}" "${_dest}" setmac "${new_mac}" || \
err "inject ${_dest}: can't change mac address"
fi fi
if [ "${cbfsname}" = "IFD" ]; then if [ "${cbfsname}" = "IFD" ]; then
if [ "${nukemode}" != "nuke" ]; 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 else
x_ "${ifdtool}" --nuke ${_t} "${rom}" -O "${rom}" "${ifdtool}" --nuke ${_t} "${rom}" -O "${rom}" || \
err "inject ${rom}: can't nuke ${_t} in IFD"
fi fi
else else
if [ "${nukemode}" != "nuke" ]; then if [ "${nukemode}" != "nuke" ]; then
x_ "${cbfstool}" "${rom}" add -f "${_dest}" \ "${cbfstool}" "${rom}" add -f "${_dest}" \
-n "${cbfsname}" -t ${_t} ${_offset} -n "${cbfsname}" -t ${_t} ${_offset} || \
err "inject $rom: can't insert $_t file $_dest"
else else
x_ "${cbfstool}" "${rom}" remove -n "${cbfsname}" "${cbfstool}" "${rom}" remove -n "${cbfsname}" || \
err "inject $rom: can't remove ${cbfsname}"
fi fi
fi fi
@@ -235,13 +246,13 @@ inject()
usage() usage()
{ {
cat <<- EOF cat <<- EOF
USAGE: ./update vendor inject -r [rom path] -b [boardname] -m [macaddress] USAGE: ./vendor inject -r [rom path] -b [boardname] -m [macaddress]
Example: ./update vendor inject -r x230_12mb.rom -b x230_12mb Example: ./vendor inject -r x230_12mb.rom -b x230_12mb
Adding a macadress to the gbe is optional. Adding a macadress to the gbe is optional.
If the [-m] parameter is left blank, the gbe will not be touched. 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 EOF
} }
Symlink
+1
View File
@@ -0,0 +1 @@
build