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>
Thu, 10 Oct 2019 04:38:39 +0000 (13:38 +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 50d8dc47f3bd2c87fb3ffc72c1717d3458023894..806fee8dee5175f9734b53b6f98570a865c2255c 100644 (file)
@@ -599,6 +599,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 4fa682539c6313592b8c330dcb8a09e6553623b4..d4391d20eea44ad0cd9f0df1dfed868635e98e1c 100644 (file)
@@ -3,15 +3,37 @@ 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_MISC_INIT_R=y
+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_PREBOOT="usb start"
 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_FLASH is not set
 CONFIG_CMD_GPIO=y
@@ -25,6 +47,8 @@ CONFIG_ENV_FAT_DEVICE_AND_PART="0:1"
 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
@@ -44,3 +68,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 77d2d5458a1fa83eed06279b97e34bf7153d45f5..f00e6ec27ab9595deccc5bd771e1591a25bd81af 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