configs/pc: refactor to use genimage and grub.cfg
This simplifies the pc configs and respective post image scripts to use the shared genimage script and separate grub config files. Separate grub files are cleaner to maintain and easier to copy and modify, for example to support booting the pc defconfigs in qemu. Signed-off-by: Erico Nunes <nunes.erico@gmail.com> Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This commit is contained in:
parent
6393b6904b
commit
6fab243237
6
board/pc/grub-bios.cfg
Normal file
6
board/pc/grub-bios.cfg
Normal file
@ -0,0 +1,6 @@
|
||||
set default="0"
|
||||
set timeout="5"
|
||||
|
||||
menuentry "Buildroot" {
|
||||
linux /boot/bzImage root=/dev/sda1 rootwait console=tty1
|
||||
}
|
6
board/pc/grub-efi.cfg
Executable file
6
board/pc/grub-efi.cfg
Executable file
@ -0,0 +1,6 @@
|
||||
set default="0"
|
||||
set timeout="5"
|
||||
|
||||
menuentry "Buildroot" {
|
||||
linux /bzImage root=/dev/sda2 rootwait console=tty1
|
||||
}
|
@ -1,35 +1,14 @@
|
||||
#!/bin/sh
|
||||
|
||||
BOARD_DIR="$(dirname $0)"
|
||||
|
||||
# Detect boot strategy, EFI or BIOS
|
||||
if [ -f ${BINARIES_DIR}/efi-part/startup.nsh ]; then
|
||||
BOOT_TYPE=efi
|
||||
# grub.cfg needs customization for EFI since the root partition is
|
||||
# number 2, and bzImage is in the EFI partition (1)
|
||||
cat >${BINARIES_DIR}/efi-part/EFI/BOOT/grub.cfg <<__EOF__
|
||||
set default="0"
|
||||
set timeout="5"
|
||||
|
||||
menuentry "Buildroot" {
|
||||
linux /bzImage root=/dev/sda2 rootwait console=tty1
|
||||
}
|
||||
__EOF__
|
||||
cp -f ${BOARD_DIR}/grub-efi.cfg ${BINARIES_DIR}/efi-part/EFI/BOOT/grub.cfg
|
||||
else
|
||||
BOOT_TYPE=bios
|
||||
cp -f ${BOARD_DIR}/grub-bios.cfg ${TARGET_DIR}/boot/grub/grub.cfg
|
||||
# Copy grub 1st stage to binaries, required for genimage
|
||||
cp -f ${HOST_DIR}/lib/grub/i386-pc/boot.img ${BINARIES_DIR}
|
||||
fi
|
||||
|
||||
BOARD_DIR="$(dirname $0)"
|
||||
GENIMAGE_CFG="${BOARD_DIR}/genimage-${BOOT_TYPE}.cfg"
|
||||
GENIMAGE_TMP="${BUILD_DIR}/genimage.tmp"
|
||||
|
||||
rm -rf "${GENIMAGE_TMP}"
|
||||
|
||||
genimage \
|
||||
--rootpath "${TARGET_DIR}" \
|
||||
--tmppath "${GENIMAGE_TMP}" \
|
||||
--inputpath "${BINARIES_DIR}" \
|
||||
--outputpath "${BINARIES_DIR}" \
|
||||
--config "${GENIMAGE_CFG}"
|
||||
|
||||
exit $?
|
||||
|
@ -19,7 +19,8 @@ BR2_TARGET_ROOTFS_EXT2=y
|
||||
BR2_TARGET_ROOTFS_EXT2_4=y
|
||||
BR2_TARGET_ROOTFS_EXT2_SIZE="120M"
|
||||
# BR2_TARGET_ROOTFS_TAR is not set
|
||||
BR2_ROOTFS_POST_IMAGE_SCRIPT="board/pc/post-image.sh"
|
||||
BR2_ROOTFS_POST_IMAGE_SCRIPT="board/pc/post-image.sh support/scripts/genimage.sh"
|
||||
BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/pc/genimage-bios.cfg"
|
||||
|
||||
# Linux headers same as kernel, a 4.13 series
|
||||
BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_13=y
|
||||
|
@ -22,7 +22,8 @@ BR2_TARGET_ROOTFS_EXT2=y
|
||||
BR2_TARGET_ROOTFS_EXT2_4=y
|
||||
BR2_TARGET_ROOTFS_EXT2_SIZE="120M"
|
||||
# BR2_TARGET_ROOTFS_TAR is not set
|
||||
BR2_ROOTFS_POST_IMAGE_SCRIPT="board/pc/post-image.sh"
|
||||
BR2_ROOTFS_POST_IMAGE_SCRIPT="board/pc/post-image.sh support/scripts/genimage.sh"
|
||||
BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/pc/genimage-efi.cfg"
|
||||
|
||||
# Linux headers same as kernel, a 4.13 series
|
||||
BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_13=y
|
||||
|
Loading…
Reference in New Issue
Block a user