arm: dra7xx: Define Android partition table
authorSam Protsenko <semen.protsenko@linaro.org>
Fri, 26 Feb 2016 19:37:52 +0000 (21:37 +0200)
committerTom Rini <trini@konsulko.com>
Mon, 29 Feb 2016 19:49:37 +0000 (14:49 -0500)
"fastboot oem format" command reuses "gpt write" command, which in turn
requires correct partitions defined in $partitions variable. This patch
adds such definition of Android partitions for DRA7XX EVM board.

By default $partitions variable contains Linux partition table. In order
to prepare Android environment one can run next commands from U-Boot
shell:

    => env set partitions $partitions_android
    => env save

After those operations one can go to fastboot mode and perform
"fastboot oem format" to create Android partition table.

While at it, enable CONFIG_RANDOM_UUID to spare user from providing
UUIDs for each partition manually.

Signed-off-by: Sam Protsenko <semen.protsenko@linaro.org>
Reviewed-by: Tom Rini <trini@konsulko.com>
include/configs/dra7xx_evm.h

index 465828301447e3615c4c52c9446c7b0b6a067854..01962807394ca6040efc27496fde8eb8175d6fb2 100644 (file)
 #ifndef CONFIG_SPL_BUILD
 /* Define the default GPT table for eMMC */
 #define PARTS_DEFAULT \
+       /* Linux partitions */ \
        "uuid_disk=${uuid_gpt_disk};" \
-       "name=rootfs,start=2MiB,size=-,uuid=${uuid_gpt_rootfs}"
+       "name=rootfs,start=2MiB,size=-,uuid=${uuid_gpt_rootfs}\0" \
+       /* Android partitions */ \
+       "partitions_android=" \
+       "uuid_disk=${uuid_gpt_disk};" \
+       "name=xloader,start=128K,size=128K,uuid=${uuid_gpt_xloader};" \
+       "name=bootloader,size=384K,uuid=${uuid_gpt_bootloader};" \
+       "name=environment,size=128K,uuid=${uuid_gpt_environment};" \
+       "name=misc,size=128K,uuid=${uuid_gpt_misc};" \
+       "name=efs,start=1280K,size=16M,uuid=${uuid_gpt_efs};" \
+       "name=crypto,size=16K,uuid=${uuid_gpt_crypto};" \
+       "name=recovery,size=10M,uuid=${uuid_gpt_recovery};" \
+       "name=boot,size=10M,uuid=${uuid_gpt_boot};" \
+       "name=system,size=768M,uuid=${uuid_gpt_system};" \
+       "name=cache,size=256M,uuid=${uuid_gpt_cache};" \
+       "name=ipu1,size=1M,uuid=${uuid_gpt_ipu1};" \
+       "name=ipu2,size=1M,uuid=${uuid_gpt_ipu2};" \
+       "name=userdata,size=-,uuid=${uuid_gpt_userdata}"
 
 #define DFU_ALT_INFO_MMC \
        "dfu_alt_info_mmc=" \
 /* Enhance our eMMC support / experience. */
 #define CONFIG_CMD_GPT
 #define CONFIG_EFI_PARTITION
+#define CONFIG_RANDOM_UUID
 #define CONFIG_HSMMC2_8BIT
 
 /* CPSW Ethernet */