net: fm: add TFABOOT support
[oweals/u-boot.git] / common / board_r.c
index 6949d4af0e319a3acd2adbc653c1fb6ae575e9d7..21d3b3c64c648806e13ff7c4937fbfb7714f48b2 100644 (file)
@@ -140,15 +140,12 @@ static int initr_reloc_global_data(void)
         */
        fixup_cpu();
 #endif
-#ifdef CONFIG_SYS_EXTRA_ENV_RELOC
+#if !defined(CONFIG_ENV_ADDR) || defined(ENV_IS_EMBEDDED)
        /*
-        * Some systems need to relocate the env_addr pointer early because the
-        * location it points to will get invalidated before env_relocate is
-        * called.  One example is on systems that might use a L2 or L3 cache
-        * in SRAM mode and initialize that cache from SRAM mode back to being
-        * a cache in cpu_init_r.
+        * Relocate the early env_addr pointer unless we know it is not inside
+        * the binary. Some systems need this and for the rest, it doesn't hurt.
         */
-       gd->env_addr += gd->relocaddr - CONFIG_SYS_MONITOR_BASE;
+       gd->env_addr += gd->reloc_off;
 #endif
 #ifdef CONFIG_OF_EMBED
        /*
@@ -454,9 +451,10 @@ static int initr_env(void)
        if (should_load_env())
                env_relocate();
        else
-               set_default_env(NULL);
+               set_default_env(NULL, 0);
 #ifdef CONFIG_OF_CONTROL
-       env_set_addr("fdtcontroladdr", gd->fdt_blob);
+       env_set_hex("fdtcontroladdr",
+                   (unsigned long)map_to_sysmem(gd->fdt_blob));
 #endif
 
        /* Initialize from environment */
@@ -553,6 +551,7 @@ static int initr_scsi(void)
 {
        puts("SCSI:  ");
        scsi_init();
+       puts("\n");
 
        return 0;
 }
@@ -689,7 +688,8 @@ static init_fnc_t init_sequence_r[] = {
 #ifdef CONFIG_DM
        initr_dm,
 #endif
-#if defined(CONFIG_ARM) || defined(CONFIG_NDS32) || defined(CONFIG_RISCV)
+#if defined(CONFIG_ARM) || defined(CONFIG_NDS32) || defined(CONFIG_RISCV) || \
+       defined(CONFIG_SANDBOX)
        board_init,     /* Setup chipselects */
 #endif
        /*
@@ -744,7 +744,7 @@ static init_fnc_t init_sequence_r[] = {
        /* initialize higher level parts of CPU like time base and timers */
        cpu_init_r,
 #endif
-#ifdef CONFIG_PPC
+#if defined(CONFIG_PPC) && !defined(CONFIG_DM_SPI)
        initr_spi,
 #endif
 #ifdef CONFIG_CMD_NAND