rockchip: use rockchip linux partitions layout
authorJacob Chen <jacob2.chen@rock-chips.com>
Sat, 8 Oct 2016 05:47:41 +0000 (13:47 +0800)
committerSimon Glass <sjg@chromium.org>
Sun, 30 Oct 2016 19:29:06 +0000 (13:29 -0600)
Unify the partitions of each chip then it will be more easy for us to
write scripts, tools or guides for rockchip chips.

Those extra partitions mostly are used to be compatible with our
internal loaders (such as miniloader which was same as spl,  or
android loader then we can support dual boot)

Signed-off-by: Jacob Chen <jacob2.chen@rock-chips.com>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
include/configs/rk3036_common.h
include/configs/rk3288_common.h
include/configs/rk3399_common.h
include/configs/rockchip-common.h [new file with mode: 0644]

index 724a3f4..4eef3f8 100644 (file)
@@ -7,6 +7,7 @@
 #define __CONFIG_RK3036_COMMON_H
 
 #include <asm/arch/hardware.h>
+#include "rockchip-common.h"
 
 #define CONFIG_SYS_NO_FLASH
 #define CONFIG_NR_DRAM_BANKS           1
 #define CONFIG_G_DNL_VENDOR_NUM                0x2207
 #define CONFIG_G_DNL_PRODUCT_NUM       0x310a
 
-/* Enable gpt partition table */
-#define CONFIG_CMD_GPT
-
-#include <config_distro_defaults.h>
-
 #define ENV_MEM_LAYOUT_SETTINGS \
        "scriptaddr=0x60000000\0" \
        "pxefile_addr_r=0x60100000\0" \
        "kernel_addr_r=0x62000000\0" \
        "ramdisk_addr_r=0x64000000\0"
 
-#define CONFIG_RANDOM_UUID
-#define PARTS_DEFAULT \
-       "uuid_disk=${uuid_gpt_disk};" \
-       "name=boot,start=8M,size=64M,bootable,uuid=${uuid_gpt_boot};" \
-       "name=rootfs,size=-,uuid=${uuid_gpt_rootfs};\0" \
-
-/* First try to boot from SD (index 0), then eMMC (index 1 */
-#define BOOT_TARGET_DEVICES(func) \
-       func(MMC, mmc, 0) \
-       func(MMC, mmc, 1)
-
 #include <config_distro_bootcmd.h>
 
 /* Linux fails to load the fdt if it's loaded above 512M on a evb-rk3036 board,
index af99d63..0868612 100644 (file)
@@ -8,6 +8,7 @@
 #define __CONFIG_RK3288_COMMON_H
 
 #include <asm/arch/hardware.h>
+#include "rockchip-common.h"
 
 #define CONFIG_SKIP_LOWLEVEL_INIT_ONLY
 #define CONFIG_SYS_NO_FLASH
 #define CONFIG_G_DNL_VENDOR_NUM                0x2207
 #define CONFIG_G_DNL_PRODUCT_NUM       0x320a
 
-/* Enable gpt partition table */
-#define CONFIG_CMD_GPT
-
-#include <config_distro_defaults.h>
-
 #define ENV_MEM_LAYOUT_SETTINGS \
        "scriptaddr=0x00000000\0" \
        "pxefile_addr_r=0x00100000\0" \
        "kernel_addr_r=0x02000000\0" \
        "ramdisk_addr_r=0x04000000\0"
 
-#define CONFIG_RANDOM_UUID
-#define PARTS_DEFAULT \
-       "uuid_disk=${uuid_gpt_disk};" \
-       "name=boot,start=8M,size=64M,bootable,uuid=${uuid_gpt_boot};" \
-       "name=rootfs,size=-,uuid=${uuid_gpt_rootfs};\0" \
-
-/* First try to boot from SD (index 0), then eMMC (index 1 */
-#define BOOT_TARGET_DEVICES(func) \
-       func(MMC, mmc, 0) \
-       func(MMC, mmc, 1)
-
 #include <config_distro_bootcmd.h>
 
 /* Linux fails to load the fdt if it's loaded above 256M on a Rock 2 board, so
index bec004a..d75fead 100644 (file)
@@ -7,6 +7,8 @@
 #ifndef __CONFIG_RK3399_COMMON_H
 #define __CONFIG_RK3399_COMMON_H
 
+#include "rockchip-common.h"
+
 #define CONFIG_SYS_NO_FLASH
 #define CONFIG_NR_DRAM_BANKS           1
 #define CONFIG_ENV_SIZE                        0x2000
@@ -52,7 +54,6 @@
 #define CONFIG_SF_DEFAULT_SPEED 20000000
 
 #ifndef CONFIG_SPL_BUILD
-#include <config_distro_defaults.h>
 
 #define ENV_MEM_LAYOUT_SETTINGS \
        "scriptaddr=0x00000000\0" \
        "kernel_addr_r=0x02000000\0" \
        "ramdisk_addr_r=0x04000000\0"
 
-#define CONFIG_CMD_GPT
-#define CONFIG_RANDOM_UUID
-#define CONFIG_PARTITION_UUIDS
-#define PARTS_DEFAULT \
-       "uuid_disk=${uuid_gpt_disk};" \
-       "name=boot,start=16M,size=32M,bootable;" \
-       "name=rootfs,size=-,uuid=${uuid_gpt_rootfs};\0" \
-
-/* First try to boot from SD (index 0), then eMMC (index 1) */
-#define BOOT_TARGET_DEVICES(func) \
-       func(MMC, mmc, 0) \
-       func(MMC, mmc, 1)
-
 #include <config_distro_bootcmd.h>
 #define CONFIG_EXTRA_ENV_SETTINGS \
        ENV_MEM_LAYOUT_SETTINGS \
diff --git a/include/configs/rockchip-common.h b/include/configs/rockchip-common.h
new file mode 100644 (file)
index 0000000..7ca1696
--- /dev/null
@@ -0,0 +1,35 @@
+/*
+ * (C) Copyright 2016 Rockchip Electronics Co., Ltd
+ *
+ * SPDX-License-Identifier:     GPL-2.0+
+ */
+
+#ifndef _ROCKCHIP_COMMON_H_
+#define _ROCKCHIP_COMMON_H_
+#include <linux/sizes.h>
+
+#ifndef CONFIG_SPL_BUILD
+#include <config_distro_defaults.h>
+
+/* First try to boot from SD (index 0), then eMMC (index 1 */
+#define BOOT_TARGET_DEVICES(func) \
+       func(MMC, mmc, 0) \
+       func(MMC, mmc, 1)
+
+ /* Enable gpt partition table */
+#define CONFIG_CMD_GPT
+#define CONFIG_RANDOM_UUID
+#define CONFIG_PARTITION_UUIDS
+#define PARTS_DEFAULT \
+       "uuid_disk=${uuid_gpt_disk};" \
+       "name=loader1,start=32K,size=4000K,uuid=${uuid_gpt_loader1};" \
+       "name=reserved1,size=64K,uuid=${uuid_gpt_reserved1};" \
+       "name=reserved2,size=4M,uuid=${uuid_gpt_reserved2};" \
+       "name=loader2,size=4MB,uuid=${uuid_gpt_loader2};" \
+       "name=atf,size=4M,uuid=${uuid_gpt_atf};" \
+       "name=boot,size=128M,bootable,uuid=${uuid_gpt_boot};" \
+       "name=rootfs,size=-,uuid=${uuid_gpt_rootfs};\0" \
+
+#endif
+
+#endif /* _ROCKCHIP_COMMON_H_ */