sunxi: Add default partition scheme
authorMaxime Ripard <maxime.ripard@free-electrons.com>
Tue, 14 Nov 2017 20:24:00 +0000 (21:24 +0100)
committerMaxime Ripard <maxime.ripard@free-electrons.com>
Thu, 7 Dec 2017 15:24:32 +0000 (16:24 +0100)
The partitions variable is especially useful to create a partition table
from U-Boot, either directly from the U-Boot shell, or through flashing
tools like fastboot and its oem format command.

This is especially useful on devices with an eMMC you can't take out to
flash from another system, and booting a Linux system first to flash our
system then is not really practical.

Reviewed-by: Andre Przywara <andre.przywara@arm.com>
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
include/configs/sunxi-common.h

index 4391a8cbc82407400215695d9187c0c74b11cd97..786155f1e15e1f4090bf340d73cc23877622d671 100644 (file)
@@ -493,6 +493,20 @@ extern int soft_i2c_gpio_scl;
 #define SUNXI_MTDPARTS_DEFAULT
 #endif
 
+#define PARTS_DEFAULT \
+       "name=loader1,start=8k,size=32k,uuid=${uuid_gpt_loader1};" \
+       "name=loader2,size=984k,uuid=${uuid_gpt_loader2};" \
+       "name=esp,size=128M,bootable,uuid=${uuid_gpt_esp};" \
+       "name=system,size=-,uuid=${uuid_gpt_system};"
+
+#define UUID_GPT_ESP "c12a7328-f81f-11d2-ba4b-00a0c93ec93b"
+
+#ifdef CONFIG_ARM64
+#define UUID_GPT_SYSTEM "b921b045-1df0-41c3-af44-4c6f280d3fae"
+#else
+#define UUID_GPT_SYSTEM "69dad710-2ce4-4e3c-b16c-21a1d49abed3"
+#endif
+
 #define CONSOLE_ENV_SETTINGS \
        CONSOLE_STDIN_SETTINGS \
        CONSOLE_STDOUT_SETTINGS
@@ -511,6 +525,9 @@ extern int soft_i2c_gpio_scl;
        "console=ttyS0,115200\0" \
        SUNXI_MTDIDS_DEFAULT \
        SUNXI_MTDPARTS_DEFAULT \
+       "uuid_gpt_esp=" UUID_GPT_ESP "\0" \
+       "uuid_gpt_system=" UUID_GPT_SYSTEM "\0" \
+       "partitions=" PARTS_DEFAULT "\0" \
        BOOTCMD_SUNXI_COMPAT \
        BOOTENV