configs/orangepi_zero_defconfig: switch to extlinux
Changes: * Exclude FAT partition, it is no longer needed for U-Boot. * Switch the rootfs partition from MBR to GPT for partition-uuid to work. * Switch to extlinux, this is convenient for debugging. * Create common scenarios for multiple boards to create an SD image: board/orangepi/common. Currently only orangepi_zero makes use of the common infrastructure. Signed-off-by: Sergey Kuzminov <kuzminov.sergey81@gmail.com> Reviewed-by: Giulio Benetti <giulio.benetti@benettiengineering.com> Tested-by: Giulio Benetti <giulio.benetti@benettiengineering.com> [Arnout: remove rootfs size = 63M and remount rw] Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>2022.02.x
parent
92dc22dd68
commit
c0312f71cc
|
@ -0,0 +1,4 @@
|
||||||
|
LABEL default
|
||||||
|
kernel /boot/%LINUXIMAGE%
|
||||||
|
devicetreedir /boot
|
||||||
|
append root=PARTUUID=%PARTUUID% rootwait console=${console} rootfstype=ext4 quiet panic=10
|
|
@ -0,0 +1,20 @@
|
||||||
|
image sdcard.img {
|
||||||
|
partition u-boot {
|
||||||
|
in-partition-table = false
|
||||||
|
image = "u-boot-sunxi-with-spl.bin"
|
||||||
|
offset = 8K
|
||||||
|
size = 1000K # 1MB - 8KB(offset) - 16KB(GPT)
|
||||||
|
}
|
||||||
|
|
||||||
|
hdimage {
|
||||||
|
partition-table-type = gpt
|
||||||
|
gpt-location = 1008K # 1MB - 16KB(GPT)
|
||||||
|
gpt-no-backup = true
|
||||||
|
}
|
||||||
|
|
||||||
|
partition rootfs {
|
||||||
|
offset = 1M
|
||||||
|
image = "rootfs.ext4"
|
||||||
|
partition-uuid = %PARTUUID%
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,34 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
linux_image()
|
||||||
|
{
|
||||||
|
if grep -Eq "^BR2_LINUX_KERNEL_UIMAGE=y$" ${BR2_CONFIG}; then
|
||||||
|
echo "uImage"
|
||||||
|
elif grep -Eq "^BR2_LINUX_KERNEL_IMAGE=y$" ${BR2_CONFIG}; then
|
||||||
|
echo "Image"
|
||||||
|
elif grep -Eq "^BR2_LINUX_KERNEL_IMAGEGZ=y$" ${BR2_CONFIG}; then
|
||||||
|
echo "Image.gz"
|
||||||
|
else
|
||||||
|
echo "zImage"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
generic_getty()
|
||||||
|
{
|
||||||
|
if grep -Eq "^BR2_TARGET_GENERIC_GETTY=y$" ${BR2_CONFIG}; then
|
||||||
|
echo ""
|
||||||
|
else
|
||||||
|
echo "s/\s*console=\S*//"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
PARTUUID="$($HOST_DIR/bin/uuidgen)"
|
||||||
|
|
||||||
|
install -d "$TARGET_DIR/boot/extlinux/"
|
||||||
|
|
||||||
|
sed -e "$(generic_getty)" \
|
||||||
|
-e "s/%LINUXIMAGE%/$(linux_image)/g" \
|
||||||
|
-e "s/%PARTUUID%/$PARTUUID/g" \
|
||||||
|
"board/orangepi/common/extlinux.conf" > "$TARGET_DIR/boot/extlinux/extlinux.conf"
|
||||||
|
|
||||||
|
sed "s/%PARTUUID%/$PARTUUID/g" "board/orangepi/common/genimage.cfg" > "$BINARIES_DIR/genimage.cfg"
|
|
@ -1,9 +0,0 @@
|
||||||
setenv fdt_high ffffffff
|
|
||||||
|
|
||||||
part uuid mmc 0:2 uuid
|
|
||||||
setenv bootargs console=ttyS0,115200 root=PARTUUID=${uuid} rootwait
|
|
||||||
|
|
||||||
fatload mmc 0 $kernel_addr_r zImage
|
|
||||||
fatload mmc 0 $fdt_addr_r sun8i-h2-plus-orangepi-zero.dtb
|
|
||||||
|
|
||||||
bootz $kernel_addr_r - $fdt_addr_r
|
|
|
@ -1,36 +0,0 @@
|
||||||
# Minimal SD card image for the OrangePi Zero
|
|
||||||
#
|
|
||||||
image boot.vfat {
|
|
||||||
vfat {
|
|
||||||
files = {
|
|
||||||
"zImage",
|
|
||||||
"sun8i-h2-plus-orangepi-zero.dtb",
|
|
||||||
"boot.scr"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
size = 10M
|
|
||||||
}
|
|
||||||
|
|
||||||
image sdcard.img {
|
|
||||||
hdimage {
|
|
||||||
}
|
|
||||||
|
|
||||||
partition u-boot {
|
|
||||||
in-partition-table = "no"
|
|
||||||
image = "u-boot-sunxi-with-spl.bin"
|
|
||||||
offset = 8K
|
|
||||||
size = 1016K # 1MB - 8KB
|
|
||||||
}
|
|
||||||
|
|
||||||
partition boot {
|
|
||||||
partition-type = 0xC
|
|
||||||
bootable = "true"
|
|
||||||
image = "boot.vfat"
|
|
||||||
}
|
|
||||||
|
|
||||||
partition rootfs {
|
|
||||||
partition-type = 0x83
|
|
||||||
image = "rootfs.ext4"
|
|
||||||
size = 512M
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -20,6 +20,7 @@ BR2_LINUX_KERNEL_DTS_SUPPORT=y
|
||||||
BR2_LINUX_KERNEL_INTREE_DTS_NAME="sun8i-h2-plus-orangepi-zero"
|
BR2_LINUX_KERNEL_INTREE_DTS_NAME="sun8i-h2-plus-orangepi-zero"
|
||||||
BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="board/orangepi/orangepi-zero/linux-extras.fragment"
|
BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="board/orangepi/orangepi-zero/linux-extras.fragment"
|
||||||
BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
|
BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
|
||||||
|
BR2_LINUX_KERNEL_INSTALL_TARGET=y
|
||||||
|
|
||||||
# Filesystem
|
# Filesystem
|
||||||
BR2_TARGET_ROOTFS_EXT2=y
|
BR2_TARGET_ROOTFS_EXT2=y
|
||||||
|
@ -39,16 +40,12 @@ BR2_TARGET_UBOOT_SPL=y
|
||||||
BR2_TARGET_UBOOT_SPL_NAME="u-boot-sunxi-with-spl.bin"
|
BR2_TARGET_UBOOT_SPL_NAME="u-boot-sunxi-with-spl.bin"
|
||||||
|
|
||||||
# Required tools to create the SD image
|
# Required tools to create the SD image
|
||||||
BR2_PACKAGE_HOST_UBOOT_TOOLS=y
|
|
||||||
BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT=y
|
|
||||||
BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT_SOURCE="board/orangepi/orangepi-zero/boot.cmd"
|
|
||||||
BR2_PACKAGE_HOST_DOSFSTOOLS=y
|
|
||||||
BR2_PACKAGE_HOST_GENIMAGE=y
|
BR2_PACKAGE_HOST_GENIMAGE=y
|
||||||
BR2_PACKAGE_HOST_MTOOLS=y
|
|
||||||
|
|
||||||
# Image
|
# Image
|
||||||
|
BR2_ROOTFS_POST_BUILD_SCRIPT="board/orangepi/common/post-build.sh"
|
||||||
BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh"
|
BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh"
|
||||||
BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/orangepi/orangepi-zero/genimage.cfg"
|
BR2_ROOTFS_POST_SCRIPT_ARGS="-c $(BINARIES_DIR)/genimage.cfg"
|
||||||
|
|
||||||
# Wireless driver and firmware
|
# Wireless driver and firmware
|
||||||
BR2_PACKAGE_XR819_XRADIO=y
|
BR2_PACKAGE_XR819_XRADIO=y
|
||||||
|
|
Loading…
Reference in New Issue