ARM: bcm283x: apply SUPPORT_SPL
authoregukim <egukim@dignsys.com>
Mon, 4 Sep 2017 06:37:09 +0000 (15:37 +0900)
committerJaehoon Chung <jh80.chung@samsung.com>
Tue, 20 Oct 2020 01:39:02 +0000 (10:39 +0900)
apply SUPPORT_SPL to support spl loading atf on raspberry pi 3
with bcm2835.

Change-Id: I200a2a7673db5eceaf94abb4c68377a1912e00cb
Signed-off-by: egukim <egukim@dignsys.com>
arch/arm/Kconfig
configs/rpi_3_defconfig
include/configs/rpi.h

index 99f28f789eedec8b584e0403a7239a417f3bae84..d2e827b734ccfc09b3d2dc43fdb353aa4ef67c97 100644 (file)
@@ -635,6 +635,7 @@ config ARCH_BCM283X
        select SERIAL_SEARCH_ALL
        imply CMD_DM
        imply FAT_WRITE
+       select SUPPORT_SPL
 
 config ARCH_BCM63158
        bool "Broadcom BCM63158 family"
index 9b281a4f15dbe820497bcd6e5b18df20c6986889..4b7882805f05587c8fe605f2190e105c7b8a49e3 100644 (file)
@@ -3,16 +3,36 @@ CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_BCM283X=y
 CONFIG_SYS_TEXT_BASE=0x00080000
 CONFIG_TARGET_RPI_3=y
-CONFIG_SYS_MALLOC_F_LEN=0x2000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x4000
+CONFIG_SPL_GPIO_SUPPORT=y
+CONFIG_SPL_LIBCOMMON_SUPPORT=y
+CONFIG_SPL_LIBGENERIC_SUPPORT=y
+CONFIG_SYS_MALLOC_F_LEN=0x20000
+CONFIG_SPL_MMC_SUPPORT=y
+CONFIG_SPL_SERIAL_SUPPORT=y
+CONFIG_SPL_LIBDISK_SUPPORT=y
+CONFIG_SPL_FAT_SUPPORT=y
+CONFIG_SPL_STACK_R_ADDR=0xB000000
 CONFIG_DEFAULT_DEVICE_TREE="bcm2837-rpi-3-b"
 CONFIG_DISTRO_DEFAULTS=y
+CONFIG_FIT=y
+CONFIG_SPL_FIT=y
+CONFIG_SPL_LOAD_FIT=y
 CONFIG_OF_BOARD_SETUP=y
 CONFIG_USE_PREBOOT=y
 CONFIG_MISC_INIT_R=y
+CONFIG_SD_BOOT=y
 # CONFIG_DISPLAY_CPUINFO is not set
 # CONFIG_DISPLAY_BOARDINFO is not set
+CONFIG_SPL=y
+CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+CONFIG_SPL_STACK_R=y
+CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x200000
+CONFIG_SPL_SEPARATE_BSS=y
+CONFIG_SPL_ENV_SUPPORT=y
+CONFIG_SPL_ATF_SUPPORT=y
+CONFIG_SPL_ATF_TEXT_BASE=0x08400000
 CONFIG_SYS_PROMPT="U-Boot> "
 CONFIG_CMD_GPIO=y
 CONFIG_CMD_MMC=y
@@ -24,6 +44,8 @@ CONFIG_SYS_RELOC_GD_ENV_ADDR=y
 CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG=y
 CONFIG_DM_KEYBOARD=y
 CONFIG_DM_MMC=y
+CONFIG_SPL_OF_CONTROL=y
+CONFIG_SPL_DM=y
 CONFIG_MMC_SDHCI=y
 CONFIG_MMC_SDHCI_BCM2835=y
 CONFIG_PHYLIB=y
@@ -45,3 +67,4 @@ CONFIG_SYS_WHITE_ON_BLACK=y
 CONFIG_CONSOLE_SCROLL_LINES=10
 CONFIG_PHYS_TO_BUS=y
 CONFIG_OF_LIBFDT_OVERLAY=y
+# CONFIG_EFI_LOADER is not set
index 834f1cd23640d88663ce51ad805269530bfccdf9..2476a598c683519f14b8c77bb4923eec5f1f2e51 100644 (file)
 /* Memory layout */
 #define CONFIG_SYS_SDRAM_BASE          0x00000000
 #define CONFIG_SYS_UBOOT_BASE          CONFIG_SYS_TEXT_BASE
+
+#ifdef CONFIG_SPL_BUILD
+#define CONFIG_SPL_FRAMEWORK
+#define CONFIG_SPL_DRIVERS_MISC_SUPPORT
+#define CONFIG_SPL_BOARD_INIT
+#define CONFIG_SPL_TEXT_BASE           0x00008000
+#define CONFIG_SPL_MAX_SIZE            0x00030000
+#define CONFIG_SPL_BSS_START_ADDR      0x00380000
+#define CONFIG_SPL_BSS_MAX_SIZE                0x00040000
+#define CONFIG_SYS_MMCSD_FS_BOOT_PARTITION     1
+#define CONFIG_SPL_FS_LOAD_PAYLOAD_NAME        "u-boot.img"
+#endif
+
 /*
  * The board really has 256M. However, the VC (VideoCore co-processor) shares
  * the RAM, and uses a configurable portion at the top. We tell U-Boot that a