Migrate to GPT

This commit is contained in:
Pascal Vizeli
2018-03-23 14:45:36 +01:00
parent 8a44103558
commit b48f4184e3
7 changed files with 110 additions and 166 deletions

View File

@@ -10,6 +10,7 @@ CONFIG_AUTO_COMPLETE=y
CONFIG_BOOTM_SHOW_TYPE=y
CONFIG_BOOTM_OFTREE=y
CONFIG_FLEXIBLE_BOOTARGS=y
# CONFIG_PARTITION_DISK_DOS is not set
CONFIG_PARTITION_DISK_EFI=y
# CONFIG_PARTITION_DISK_EFI_GPT_NO_FORCE is not set
# CONFIG_PARTITION_DISK_EFI_GPT_COMPARE is not set
@@ -29,6 +30,7 @@ CONFIG_CMD_READLINK=y
CONFIG_CMD_GETOPT=y
CONFIG_CMD_TIMEOUT=y
CONFIG_CMD_DETECT=y
CONFIG_CMD_OF_DUMP=y
CONFIG_CMD_STATE=y
CONFIG_CMD_BOOTCHOOSER=y
CONFIG_DRIVER_SERIAL_EFI=y

View File

@@ -1,54 +0,0 @@
image boot.vfat {
vfat {
extraargs = "-n boot"
file EFI/BOOT/BOOTx64.EFI {
image = "barebox.bin"
}
file EFI/barebox/state.dtb {
image = "barebox-state.dtb"
}
}
size = 32M
}
image sdcard.img {
hdimage {
align = 1M
extended-partition = 4
}
partition boot {
partition-type = 0xef
bootable = "true"
image = "boot.vfat"
}
partition system0 {
partition-type = 0x83
image = "rootfs.squashfs"
size = 256M
}
partition system1 {
partition-type = 0x83
size = 256M
}
partition bootstate {
partition-type = 0x83
size = 2M
}
partition overlay {
partition-type = 0x83
image = "overlay.ext4"
size = 64M
}
partition data {
partition-type = 0x83
image = "data.ext4"
size = 64M
}
}

View File

@@ -1,30 +1,32 @@
#!/bin/bash
set -e
SCRIPT_DIR="$BR2_EXTERNAL_HASSIO_PATH/scripts"
BOARD_DIR="$(dirname $0)"
GENIMAGE_CFG="$BOARD_DIR/genimage.cfg"
GENIMAGE_TMP="$BASE_DIR/genimage.tmp"
OVERLAY_IMG="$BINARIES_DIR/overlay.ext4"
DATA_IMG="$BINARIES_DIR/data.ext4"
BOOT_IMG="$BINARIES_DIR/boot.vfat"
rm -rf "$GENIMAGE_TMP" "$OVERLAY_IMG" "$DATA_IMG"
BOOT_DATA="$BINARIES_DIR/boot-data"
dd if=/dev/zero of="$OVERLAY_IMG" bs=4k count=16000
dd if=/dev/zero of="$DATA_IMG" bs=4k count=16000
. "$SCRIPT_DIR"/hdd_image.sh
mkfs.ext4 "$OVERLAY_IMG" && tune2fs -L "overlay" -c0 -i0 "$OVERLAY_IMG"
mkfs.ext4 "$DATA_IMG" && tune2fs -L "data" -c0 -i0 "$DATA_IMG"
rm -rf "$BOOT_DATA"
cp "$BOARD_DIR/barebox-state.dtb" "$BINARIES_DIR/"
# Init boot data
mkdir -p "$BOOT_DATA/EFI/BOOT"
mkdir -p "$BOOT_DATA/EFI/barebox"
genimage \
--rootpath "$TARGET_DIR" \
--tmppath "$GENIMAGE_TMP" \
--inputpath "$BINARIES_DIR" \
--outputpath "$BINARIES_DIR" \
--config "$GENIMAGE_CFG"
cp "$BINARIES_DIR/barebox.bin" "$BOOT_DATA/EFI/BOOT/BOOTx64.EFI"
cp "$BOARD_DIR/barebox-state.dtb" "$BOOT_DATA/EFI/barebox/state.dtb"
qemu-img resize -f raw "$BINARIES_DIR/sdcard.img" 1G
qemu-img convert -O vmdk "$BINARIES_DIR/sdcard.img" "$BINARIES_DIR/hassio-os.vmdk"
hassio_boot_image "$BOOT_DATA" "$BOOT_IMG"
hassio_overlay_image "$OVERLAY_IMG"
hassio_data_image "$DATA_IMG"
hassio_hdd_image "$BOOT_IMG" "$BINARIES_DIR/rootfs.squashfs" "$OVERLAY_IMG" "$DATA_IMG" "$BINARIES_DIR/harddisk.img"
qemu-img convert -O vmdk "$BINARIES_DIR/harddisk.img" "$BINARIES_DIR/hassio-os.vmdk"