diff options
| author | Dalon Westergreen <dalon.westergreen@intel.com> | 2017-01-30 16:28:28 -0800 |
|---|---|---|
| committer | Khem Raj <raj.khem@gmail.com> | 2017-02-01 09:26:26 -0800 |
| commit | eda7efcf7ac2662aec1c25ef6ea005995d485774 (patch) | |
| tree | f85e0a3230cd65c0f8090ba1fe5901d576c48693 | |
| parent | 62802f73037746fc2a72a674cd34dd6b3f0b6c86 (diff) | |
| download | meta-altera-eda7efcf7ac2662aec1c25ef6ea005995d485774.tar.gz | |
Revert to old partition scheme only
The updated partition scheme has issues on windows which
for some reason requires the fat partition to be the first
partition
Signed-off-by: Dalon Westergreen <dalon.westergreen@intel.com>
| -rw-r--r-- | classes/sdcard_image-socfpga.bbclass | 29 |
1 files changed, 4 insertions, 25 deletions
diff --git a/classes/sdcard_image-socfpga.bbclass b/classes/sdcard_image-socfpga.bbclass index 672ea6d..b7d524e 100644 --- a/classes/sdcard_image-socfpga.bbclass +++ b/classes/sdcard_image-socfpga.bbclass | |||
| @@ -60,9 +60,9 @@ IMAGEDATESTAMP = "${@time.strftime('%Y.%m.%d',time.gmtime())}" | |||
| 60 | # result we need 2 different functions for creating the boot partitions just to | 60 | # result we need 2 different functions for creating the boot partitions just to |
| 61 | # change the partition creation order | 61 | # change the partition creation order |
| 62 | 62 | ||
| 63 | SOCFPGA_SDIMG_PARTITION_COMMAND ?= "generate_sdcard_partitions_v2016_05_and_earlier" | 63 | SOCFPGA_SDIMG_PARTITION_COMMAND ?= "generate_sdcard_partitions" |
| 64 | 64 | ||
| 65 | generate_sdcard_partitions_v2016_05_and_earlier () { | 65 | generate_sdcard_partitions () { |
| 66 | 66 | ||
| 67 | # Create partition table | 67 | # Create partition table |
| 68 | parted -s ${SDIMG} mklabel msdos | 68 | parted -s ${SDIMG} mklabel msdos |
| @@ -70,6 +70,8 @@ generate_sdcard_partitions_v2016_05_and_earlier () { | |||
| 70 | parted -s ${SDIMG} unit KiB mkpart primary fat32 $(expr ${IMAGE_ROOTFS_ALIGNMENT} \+ ${BOOT_SPACE_ALIGNED}) $(expr ${IMAGE_ROOTFS_ALIGNMENT} \+ ${BOOT_SPACE_ALIGNED} \+ ${FAT_SPACE_ALIGNED}) | 70 | parted -s ${SDIMG} unit KiB mkpart primary fat32 $(expr ${IMAGE_ROOTFS_ALIGNMENT} \+ ${BOOT_SPACE_ALIGNED}) $(expr ${IMAGE_ROOTFS_ALIGNMENT} \+ ${BOOT_SPACE_ALIGNED} \+ ${FAT_SPACE_ALIGNED}) |
| 71 | # P2: Linux FS partition | 71 | # P2: Linux FS partition |
| 72 | parted -s ${SDIMG} unit KiB mkpart primary $(expr ${IMAGE_ROOTFS_ALIGNMENT} \+ ${BOOT_SPACE_ALIGNED} \+ ${FAT_SPACE_ALIGNED}) $(expr ${IMAGE_ROOTFS_ALIGNMENT} \+ ${BOOT_SPACE_ALIGNED} \+ ${FAT_SPACE_ALIGNED} \+ ${ROOTFS_SIZE_ALIGNED}) | 72 | parted -s ${SDIMG} unit KiB mkpart primary $(expr ${IMAGE_ROOTFS_ALIGNMENT} \+ ${BOOT_SPACE_ALIGNED} \+ ${FAT_SPACE_ALIGNED}) $(expr ${IMAGE_ROOTFS_ALIGNMENT} \+ ${BOOT_SPACE_ALIGNED} \+ ${FAT_SPACE_ALIGNED} \+ ${ROOTFS_SIZE_ALIGNED}) |
| 73 | # set linux partition as bootable for distroboot | ||
| 74 | parted -s ${SDIMG} set 2 boot on | ||
| 73 | # P3: A2 partition for bootloader | 75 | # P3: A2 partition for bootloader |
| 74 | parted -s ${SDIMG} unit KiB mkpart primary ${IMAGE_ROOTFS_ALIGNMENT} $(expr ${BOOT_SPACE_ALIGNED} \+ ${IMAGE_ROOTFS_ALIGNMENT}) | 76 | parted -s ${SDIMG} unit KiB mkpart primary ${IMAGE_ROOTFS_ALIGNMENT} $(expr ${BOOT_SPACE_ALIGNED} \+ ${IMAGE_ROOTFS_ALIGNMENT}) |
| 75 | 77 | ||
| @@ -84,29 +86,6 @@ generate_sdcard_partitions_v2016_05_and_earlier () { | |||
| 84 | 86 | ||
| 85 | } | 87 | } |
| 86 | 88 | ||
| 87 | generate_sdcard_partitions_v2016_11_and_newer () { | ||
| 88 | |||
| 89 | # Create partition table | ||
| 90 | parted -s ${SDIMG} mklabel msdos | ||
| 91 | # P1: A2 partition for bootloader | ||
| 92 | parted -s ${SDIMG} unit KiB mkpart primary ${IMAGE_ROOTFS_ALIGNMENT} $(expr ${BOOT_SPACE_ALIGNED} \+ ${IMAGE_ROOTFS_ALIGNMENT}) | ||
| 93 | # P2: Fat partition | ||
| 94 | parted -s ${SDIMG} unit KiB mkpart primary fat32 $(expr ${IMAGE_ROOTFS_ALIGNMENT} \+ ${BOOT_SPACE_ALIGNED}) $(expr ${IMAGE_ROOTFS_ALIGNMENT} \+ ${BOOT_SPACE_ALIGNED} \+ ${FAT_SPACE_ALIGNED}) | ||
| 95 | # P3: Linux FS partition | ||
| 96 | # parted -s ${SDIMG} unit KiB mkpart primary $(expr ${IMAGE_ROOTFS_ALIGNMENT} \+ ${BOOT_SPACE_ALIGNED} \+ ${FAT_SPACE_ALIGNED}) $(expr ${BOOT_SPACE_ALIGNED} \+ ${FAT_SPACE_ALIGNED} \+ ${ROOTFS_SIZE_ALIGNED}) | ||
| 97 | parted -s ${SDIMG} unit KiB mkpart primary $(expr ${IMAGE_ROOTFS_ALIGNMENT} \+ ${BOOT_SPACE_ALIGNED} \+ ${FAT_SPACE_ALIGNED}) $(expr ${IMAGE_ROOTFS_ALIGNMENT} \+ ${BOOT_SPACE_ALIGNED} \+ ${FAT_SPACE_ALIGNED} \+ ${ROOTFS_SIZE_ALIGNED}) | ||
| 98 | |||
| 99 | # set part 1 to type a2 for spl / uboot image | ||
| 100 | # 446 to partition table, 16 bytes per entry, 4 byte offset to partition type | ||
| 101 | echo -ne "\xa2" | dd of=${SDIMG} bs=1 count=1 seek=$(expr 446 + 4) conv=notrunc && sync && sync | ||
| 102 | |||
| 103 | # Create a vfat image with boot files | ||
| 104 | FAT_BLOCKS=$(LC_ALL=C parted -s ${SDIMG} unit b print | awk '/ 2 / { print substr($4, 1, length($4 -1)) / 512 /2 }') | ||
| 105 | rm -f ${WORKDIR}/fat.img | ||
| 106 | mkfs.vfat -n "${BOOTDD_VOLUME_ID}" -S 512 -C ${WORKDIR}/fat.img $FAT_BLOCKS | ||
| 107 | |||
| 108 | } | ||
| 109 | |||
| 110 | IMAGE_CMD_socfpga-sdimg () { | 89 | IMAGE_CMD_socfpga-sdimg () { |
| 111 | 90 | ||
| 112 | # Align partitions | 91 | # Align partitions |
