All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 01/20] Convert CONFIG_SPL_STACK to Kconfig
@ 2022-05-29 16:55 Tom Rini
  2022-05-29 16:55 ` [PATCH 02/20] imx6: Update CONFIG_SPL_STACK defaults in Kconfig Tom Rini
                   ` (20 more replies)
  0 siblings, 21 replies; 27+ messages in thread
From: Tom Rini @ 2022-05-29 16:55 UTC (permalink / raw)
  To: u-boot

This converts the following to Kconfig:
   CONFIG_SPL_STACK

Signed-off-by: Tom Rini <trini@konsulko.com>
---
 README                                        | 32 -------------------
 arch/microblaze/cpu/start.S                   |  2 +-
 common/spl/Kconfig                            | 18 +++++++++++
 configs/A10-OLinuXino-Lime_defconfig          |  1 +
 configs/A10s-OLinuXino-M_defconfig            |  1 +
 configs/A13-OLinuXinoM_defconfig              |  1 +
 configs/A13-OLinuXino_defconfig               |  1 +
 configs/A20-OLinuXino-Lime2-eMMC_defconfig    |  1 +
 configs/A20-OLinuXino-Lime2_defconfig         |  1 +
 configs/A20-OLinuXino-Lime_defconfig          |  1 +
 configs/A20-OLinuXino_MICRO-eMMC_defconfig    |  1 +
 configs/A20-OLinuXino_MICRO_defconfig         |  1 +
 configs/A20-Olimex-SOM-EVB_defconfig          |  1 +
 configs/A20-Olimex-SOM204-EVB-eMMC_defconfig  |  1 +
 configs/A20-Olimex-SOM204-EVB_defconfig       |  1 +
 configs/A33-OLinuXino_defconfig               |  1 +
 configs/Ainol_AW1_defconfig                   |  1 +
 configs/Ampe_A76_defconfig                    |  1 +
 configs/Auxtek-T003_defconfig                 |  1 +
 configs/Auxtek-T004_defconfig                 |  1 +
 configs/Bananapi_M2_Ultra_defconfig           |  1 +
 configs/Bananapi_defconfig                    |  1 +
 configs/Bananapi_m2m_defconfig                |  1 +
 configs/Bananapro_defconfig                   |  1 +
 configs/CHIP_defconfig                        |  1 +
 configs/CHIP_pro_defconfig                    |  1 +
 configs/CSQ_CS908_defconfig                   |  1 +
 configs/Chuwi_V7_CW0825_defconfig             |  1 +
 configs/Colombus_defconfig                    |  1 +
 configs/Cubieboard2_defconfig                 |  1 +
 configs/Cubieboard4_defconfig                 |  1 +
 configs/Cubieboard_defconfig                  |  1 +
 configs/Cubietruck_defconfig                  |  1 +
 configs/Cubietruck_plus_defconfig             |  1 +
 configs/Empire_electronix_d709_defconfig      |  1 +
 configs/Empire_electronix_m712_defconfig      |  1 +
 configs/Hummingbird_A31_defconfig             |  1 +
 configs/Hyundai_A7HD_defconfig                |  1 +
 configs/Itead_Ibox_A20_defconfig              |  1 +
 configs/Lamobo_R1_defconfig                   |  1 +
 configs/LicheePi_Zero_defconfig               |  1 +
 configs/Linksprite_pcDuino3_Nano_defconfig    |  1 +
 configs/Linksprite_pcDuino3_defconfig         |  1 +
 configs/Linksprite_pcDuino_defconfig          |  1 +
 configs/MK808C_defconfig                      |  1 +
 configs/MSI_Primo73_defconfig                 |  1 +
 configs/MSI_Primo81_defconfig                 |  1 +
 configs/Marsboard_A10_defconfig               |  1 +
 configs/Mele_A1000G_quad_defconfig            |  1 +
 configs/Mele_A1000_defconfig                  |  1 +
 configs/Mele_I7_defconfig                     |  1 +
 configs/Mele_M3_defconfig                     |  1 +
 configs/Mele_M5_defconfig                     |  1 +
 configs/Mele_M9_defconfig                     |  1 +
 configs/Merrii_A80_Optimus_defconfig          |  1 +
 configs/Mini-X_defconfig                      |  1 +
 .../Nintendo_NES_Classic_Edition_defconfig    |  1 +
 configs/Orangepi_defconfig                    |  1 +
 configs/Orangepi_mini_defconfig               |  1 +
 configs/Sinlinx_SinA31s_defconfig             |  1 +
 configs/Sinlinx_SinA33_defconfig              |  1 +
 configs/Sinovoip_BPI_M2_defconfig             |  1 +
 configs/Sinovoip_BPI_M3_defconfig             |  1 +
 configs/Sunchip_CX-A99_defconfig              |  1 +
 configs/UTOO_P66_defconfig                    |  1 +
 configs/Wexler_TAB7200_defconfig              |  1 +
 configs/Wits_Pro_A20_DKT_defconfig            |  1 +
 configs/Wobo_i5_defconfig                     |  1 +
 configs/Yones_Toptech_BD1078_defconfig        |  1 +
 configs/Yones_Toptech_BS1078_V2_defconfig     |  1 +
 configs/a64-olinuxino-emmc_defconfig          |  1 +
 configs/a64-olinuxino_defconfig               |  1 +
 configs/alt_defconfig                         |  2 ++
 configs/amarula_a64_relic_defconfig           |  1 +
 configs/apalis-tk1_defconfig                  |  2 ++
 configs/apalis_imx6_defconfig                 |  2 ++
 configs/apalis_t30_defconfig                  |  2 ++
 ...edev_cc_v1_0_ultrazedev_som_v1_0_defconfig |  2 ++
 configs/axm_defconfig                         |  2 ++
 configs/ba10_tv_box_defconfig                 |  1 +
 configs/bananapi_m1_plus_defconfig            |  1 +
 configs/bananapi_m2_berry_defconfig           |  1 +
 configs/bananapi_m2_plus_h3_defconfig         |  1 +
 configs/bananapi_m2_plus_h5_defconfig         |  1 +
 configs/bananapi_m2_zero_defconfig            |  1 +
 configs/bananapi_m64_defconfig                |  1 +
 configs/beaver_defconfig                      |  2 ++
 configs/beelink_gs1_defconfig                 |  1 +
 configs/beelink_x2_defconfig                  |  1 +
 configs/bitmain_antminer_s9_defconfig         |  2 ++
 configs/brppt2_defconfig                      |  2 ++
 configs/cardhu_defconfig                      |  2 ++
 configs/cei-tk1-som_defconfig                 |  2 ++
 configs/cgtqmx8_defconfig                     |  2 ++
 configs/chromebit_mickey_defconfig            |  2 ++
 configs/chromebook_bob_defconfig              |  2 ++
 configs/chromebook_jerry_defconfig            |  2 ++
 configs/chromebook_kevin_defconfig            |  2 ++
 configs/chromebook_minnie_defconfig           |  2 ++
 configs/chromebook_speedy_defconfig           |  2 ++
 configs/ci20_mmc_defconfig                    |  2 ++
 configs/cl-som-imx7_defconfig                 |  2 ++
 configs/clearfog_defconfig                    |  2 ++
 configs/cm_fx6_defconfig                      |  2 ++
 configs/colibri_imx6_defconfig                |  2 ++
 configs/colibri_t20_defconfig                 |  2 ++
 configs/colibri_t30_defconfig                 |  2 ++
 configs/colorfly_e708_q1_defconfig            |  1 +
 configs/controlcenterdc_defconfig             |  2 ++
 configs/corvus_defconfig                      |  2 ++
 configs/da850evm_defconfig                    |  2 ++
 configs/da850evm_nand_defconfig               |  2 ++
 configs/dalmore_defconfig                     |  2 ++
 configs/db-88f6720_defconfig                  |  2 ++
 configs/db-88f6820-amc_defconfig              |  2 ++
 configs/db-88f6820-gp_defconfig               |  2 ++
 configs/db-mv784mp-gp_defconfig               |  2 ++
 configs/deneb_defconfig                       |  2 ++
 configs/devkit3250_defconfig                  |  2 ++
 configs/dh_imx6_defconfig                     |  2 ++
 configs/difrnce_dit4350_defconfig             |  1 +
 configs/display5_defconfig                    |  2 ++
 configs/display5_factory_defconfig            |  2 ++
 configs/ds414_defconfig                       |  2 ++
 configs/dserve_dsrv9703c_defconfig            |  1 +
 configs/edminiv2_defconfig                    |  2 ++
 configs/emlid_neutis_n5_devboard_defconfig    |  1 +
 configs/evb-px30_defconfig                    |  2 ++
 configs/evb-px5_defconfig                     |  2 ++
 configs/evb-rk3288_defconfig                  |  2 ++
 configs/evb-rk3308_defconfig                  |  2 ++
 configs/evb-rk3328_defconfig                  |  2 ++
 configs/evb-rk3399_defconfig                  |  2 ++
 configs/evb-rk3568_defconfig                  |  2 ++
 configs/ficus-rk3399_defconfig                |  2 ++
 configs/firefly-px30_defconfig                |  2 ++
 configs/firefly-rk3288_defconfig              |  2 ++
 configs/firefly-rk3399_defconfig              |  2 ++
 configs/ga10h_v1_1_defconfig                  |  1 +
 .../gardena-smart-gateway-at91sam_defconfig   |  2 ++
 configs/ge_b1x5v2_defconfig                   |  2 ++
 configs/giedi_defconfig                       |  2 ++
 configs/gose_defconfig                        |  2 ++
 configs/gt90h_v4_defconfig                    |  1 +
 configs/gwventana_emmc_defconfig              |  2 ++
 configs/gwventana_gw5904_defconfig            |  2 ++
 configs/gwventana_nand_defconfig              |  2 ++
 configs/h8_homlet_v2_defconfig                |  1 +
 configs/harmony_defconfig                     |  2 ++
 configs/helios4_defconfig                     |  2 ++
 configs/i12-tvbox_defconfig                   |  1 +
 configs/iNet_3F_defconfig                     |  1 +
 configs/iNet_3W_defconfig                     |  1 +
 configs/iNet_86VS_defconfig                   |  1 +
 configs/iNet_D978_rev2_defconfig              |  1 +
 configs/icnova-a20-swac_defconfig             |  1 +
 configs/imx28_xea_defconfig                   |  2 ++
 configs/imx6dl_icore_nand_defconfig           |  2 ++
 configs/imx6dl_mamoj_defconfig                |  2 ++
 configs/imx6q_bosch_acc_defconfig             |  2 ++
 configs/imx6q_icore_nand_defconfig            |  2 ++
 configs/imx6q_logic_defconfig                 |  2 ++
 configs/imx6qdl_icore_mipi_defconfig          |  2 ++
 configs/imx6qdl_icore_mmc_defconfig           |  2 ++
 configs/imx6qdl_icore_nand_defconfig          |  2 ++
 configs/imx6qdl_icore_rqs_defconfig           |  2 ++
 configs/imx6ul_geam_mmc_defconfig             |  2 ++
 configs/imx6ul_geam_nand_defconfig            |  2 ++
 configs/imx6ul_isiot_emmc_defconfig           |  2 ++
 configs/imx6ul_isiot_nand_defconfig           |  2 ++
 configs/imx7_cm_defconfig                     |  2 ++
 configs/imx8mm-cl-iot-gate-optee_defconfig    |  2 ++
 configs/imx8mm-cl-iot-gate_defconfig          |  2 ++
 configs/imx8mm-icore-mx8mm-ctouch2_defconfig  |  2 ++
 configs/imx8mm-icore-mx8mm-edimm2.2_defconfig |  2 ++
 configs/imx8mm-mx8menlo_defconfig             |  2 ++
 configs/imx8mm_beacon_defconfig               |  2 ++
 configs/imx8mm_data_modul_edm_sbc_defconfig   |  2 ++
 configs/imx8mm_evk_defconfig                  |  2 ++
 configs/imx8mm_venice_defconfig               |  2 ++
 configs/imx8mn_beacon_2g_defconfig            |  2 ++
 configs/imx8mn_beacon_defconfig               |  2 ++
 configs/imx8mn_bsh_smm_s2_defconfig           |  2 ++
 configs/imx8mn_bsh_smm_s2pro_defconfig        |  2 ++
 configs/imx8mn_ddr4_evk_defconfig             |  2 ++
 configs/imx8mn_evk_defconfig                  |  2 ++
 configs/imx8mn_var_som_defconfig              |  2 ++
 configs/imx8mn_venice_defconfig               |  2 ++
 configs/imx8mp_dhcom_pdk2_defconfig           |  2 ++
 configs/imx8mp_evk_defconfig                  |  2 ++
 configs/imx8mp_rsb3720a1_4G_defconfig         |  2 ++
 configs/imx8mp_rsb3720a1_6G_defconfig         |  2 ++
 configs/imx8mp_venice_defconfig               |  2 ++
 configs/imx8mq_cm_defconfig                   |  2 ++
 configs/imx8mq_evk_defconfig                  |  2 ++
 configs/imx8mq_phanbell_defconfig             |  2 ++
 configs/imx8qm_mek_defconfig                  |  2 ++
 configs/imx8qxp_mek_defconfig                 |  2 ++
 configs/imx8ulp_evk_defconfig                 |  2 ++
 configs/inet1_defconfig                       |  1 +
 configs/inet86dz_defconfig                    |  1 +
 configs/inet97fv2_defconfig                   |  1 +
 configs/inet98v_rev2_defconfig                |  1 +
 configs/inet9f_rev03_defconfig                |  1 +
 configs/inet_q972_defconfig                   |  1 +
 configs/jesurun_q5_defconfig                  |  1 +
 configs/jetson-tk1_defconfig                  |  2 ++
 configs/k2e_evm_defconfig                     |  2 ++
 configs/k2g_evm_defconfig                     |  2 ++
 configs/k2hk_evm_defconfig                    |  2 ++
 configs/k2l_evm_defconfig                     |  2 ++
 configs/khadas-edge-captain-rk3399_defconfig  |  2 ++
 configs/khadas-edge-rk3399_defconfig          |  2 ++
 configs/khadas-edge-v-rk3399_defconfig        |  2 ++
 configs/koelsch_defconfig                     |  2 ++
 configs/kontron-sl-mx6ul_defconfig            |  2 ++
 configs/kontron-sl-mx8mm_defconfig            |  2 ++
 configs/kontron_pitx_imx8m_defconfig          |  2 ++
 configs/kontron_sl28_defconfig                |  2 ++
 configs/kp_imx6q_tpc_defconfig                |  2 ++
 configs/lager_defconfig                       |  2 ++
 configs/leez-rk3399_defconfig                 |  2 ++
 configs/libretech_all_h3_cc_h2_plus_defconfig |  1 +
 configs/libretech_all_h3_cc_h3_defconfig      |  1 +
 configs/libretech_all_h3_cc_h5_defconfig      |  1 +
 configs/libretech_all_h3_it_h5_defconfig      |  1 +
 configs/libretech_all_h5_cc_h5_defconfig      |  1 +
 configs/licheepi_nano_defconfig               |  1 +
 configs/lion-rk3368_defconfig                 |  2 ++
 configs/liteboard_defconfig                   |  2 ++
 configs/ls1021aiot_sdcard_defconfig           |  2 ++
 configs/ls1021aqds_nand_defconfig             |  2 ++
 configs/ls1021aqds_sdcard_ifc_defconfig       |  2 ++
 configs/ls1021aqds_sdcard_qspi_defconfig      |  2 ++
 configs/ls1021atsn_sdcard_defconfig           |  2 ++
 ...s1021atwr_sdcard_ifc_SECURE_BOOT_defconfig |  2 ++
 configs/ls1021atwr_sdcard_ifc_defconfig       |  2 ++
 configs/ls1021atwr_sdcard_qspi_defconfig      |  2 ++
 configs/ls1043aqds_nand_defconfig             |  2 ++
 configs/ls1043aqds_sdcard_ifc_defconfig       |  2 ++
 configs/ls1043aqds_sdcard_qspi_defconfig      |  2 ++
 configs/ls1043ardb_nand_SECURE_BOOT_defconfig |  2 ++
 configs/ls1043ardb_nand_defconfig             |  2 ++
 .../ls1043ardb_sdcard_SECURE_BOOT_defconfig   |  2 ++
 configs/ls1043ardb_sdcard_defconfig           |  2 ++
 configs/ls1046aqds_nand_defconfig             |  2 ++
 configs/ls1046aqds_sdcard_ifc_defconfig       |  2 ++
 configs/ls1046aqds_sdcard_qspi_defconfig      |  2 ++
 configs/ls1046ardb_emmc_defconfig             |  2 ++
 configs/ls1046ardb_qspi_spl_defconfig         |  2 ++
 .../ls1046ardb_sdcard_SECURE_BOOT_defconfig   |  2 ++
 configs/ls1046ardb_sdcard_defconfig           |  2 ++
 configs/ls1088aqds_sdcard_ifc_defconfig       |  2 ++
 configs/ls1088aqds_sdcard_qspi_defconfig      |  2 ++
 ...1088ardb_sdcard_qspi_SECURE_BOOT_defconfig |  2 ++
 configs/ls1088ardb_sdcard_qspi_defconfig      |  2 ++
 configs/ls2080aqds_nand_defconfig             |  2 ++
 configs/ls2080aqds_sdcard_defconfig           |  2 ++
 configs/ls2080ardb_nand_defconfig             |  2 ++
 configs/m53menlo_defconfig                    |  2 ++
 configs/maxbcm_defconfig                      |  2 ++
 configs/mccmon6_nor_defconfig                 |  2 ++
 configs/mccmon6_sd_defconfig                  |  2 ++
 configs/medcom-wide_defconfig                 |  2 ++
 configs/microblaze-generic_defconfig          |  2 ++
 configs/miqi-rk3288_defconfig                 |  2 ++
 configs/mixtile_loftq_defconfig               |  1 +
 configs/mk802_a10s_defconfig                  |  1 +
 configs/mk802_defconfig                       |  1 +
 configs/mk802ii_defconfig                     |  1 +
 configs/mk808_defconfig                       |  2 ++
 configs/mt7629_rfb_defconfig                  |  2 ++
 configs/mx6cuboxi_defconfig                   |  2 ++
 configs/mx6memcal_defconfig                   |  2 ++
 configs/mx6sabreauto_defconfig                |  2 ++
 configs/mx6sabresd_defconfig                  |  2 ++
 configs/mx6slevk_spl_defconfig                |  2 ++
 configs/mx6ul_14x14_evk_defconfig             |  2 ++
 configs/mx6ul_9x9_evk_defconfig               |  2 ++
 configs/myir_mys_6ulx_defconfig               |  2 ++
 configs/nanopc-t4-rk3399_defconfig            |  2 ++
 configs/nanopi-m4-2gb-rk3399_defconfig        |  2 ++
 configs/nanopi-m4-rk3399_defconfig            |  2 ++
 configs/nanopi-m4b-rk3399_defconfig           |  2 ++
 configs/nanopi-neo4-rk3399_defconfig          |  2 ++
 configs/nanopi-r2s-rk3328_defconfig           |  2 ++
 configs/nanopi-r4s-rk3399_defconfig           |  2 ++
 configs/nanopi_a64_defconfig                  |  1 +
 configs/nanopi_m1_defconfig                   |  1 +
 configs/nanopi_m1_plus_defconfig              |  1 +
 configs/nanopi_neo2_defconfig                 |  1 +
 configs/nanopi_neo_air_defconfig              |  1 +
 configs/nanopi_neo_defconfig                  |  1 +
 configs/nanopi_neo_plus2_defconfig            |  1 +
 configs/nanopi_r1s_h5_defconfig               |  1 +
 configs/novena_defconfig                      |  2 ++
 configs/nyan-big_defconfig                    |  2 ++
 configs/oceanic_5205_5inmfd_defconfig         |  1 +
 configs/odroid-go2_defconfig                  |  2 ++
 configs/omapl138_lcdk_defconfig               |  2 ++
 configs/openpiton_riscv64_spl_defconfig       |  2 ++
 configs/opos6uldev_defconfig                  |  2 ++
 configs/orangepi-rk3399_defconfig             |  2 ++
 configs/orangepi_2_defconfig                  |  1 +
 configs/orangepi_3_defconfig                  |  1 +
 configs/orangepi_lite2_defconfig              |  1 +
 configs/orangepi_lite_defconfig               |  1 +
 configs/orangepi_one_defconfig                |  1 +
 configs/orangepi_one_plus_defconfig           |  1 +
 configs/orangepi_pc2_defconfig                |  1 +
 configs/orangepi_pc_defconfig                 |  1 +
 configs/orangepi_pc_plus_defconfig            |  1 +
 configs/orangepi_plus2e_defconfig             |  1 +
 configs/orangepi_plus_defconfig               |  1 +
 configs/orangepi_prime_defconfig              |  1 +
 configs/orangepi_r1_defconfig                 |  1 +
 configs/orangepi_win_defconfig                |  1 +
 configs/orangepi_zero2_defconfig              |  1 +
 configs/orangepi_zero_defconfig               |  1 +
 configs/orangepi_zero_plus2_defconfig         |  1 +
 configs/orangepi_zero_plus2_h3_defconfig      |  1 +
 configs/orangepi_zero_plus_defconfig          |  1 +
 configs/parrot_r16_defconfig                  |  1 +
 configs/paz00_defconfig                       |  2 ++
 configs/pcm058_defconfig                      |  2 ++
 configs/phycore-imx8mm_defconfig              |  2 ++
 configs/phycore-imx8mp_defconfig              |  2 ++
 configs/phycore-rk3288_defconfig              |  2 ++
 configs/phycore_pcl063_defconfig              |  2 ++
 configs/phycore_pcl063_ull_defconfig          |  2 ++
 configs/pico-dwarf-imx6ul_defconfig           |  2 ++
 configs/pico-dwarf-imx7d_defconfig            |  2 ++
 configs/pico-hobbit-imx6ul_defconfig          |  2 ++
 configs/pico-hobbit-imx7d_defconfig           |  2 ++
 configs/pico-imx6_defconfig                   |  2 ++
 configs/pico-imx6ul_defconfig                 |  2 ++
 configs/pico-imx7d_bl33_defconfig             |  2 ++
 configs/pico-imx7d_defconfig                  |  2 ++
 configs/pico-imx8mq_defconfig                 |  2 ++
 configs/pico-nymph-imx7d_defconfig            |  2 ++
 configs/pico-pi-imx6ul_defconfig              |  2 ++
 configs/pico-pi-imx7d_defconfig               |  2 ++
 configs/pine64-lts_defconfig                  |  1 +
 configs/pine64_plus_defconfig                 |  1 +
 configs/pine_h64_defconfig                    |  1 +
 configs/pinebook-pro-rk3399_defconfig         |  2 ++
 configs/pinebook_defconfig                    |  1 +
 configs/pinecube_defconfig                    |  1 +
 configs/pinephone_defconfig                   |  1 +
 configs/pinetab_defconfig                     |  1 +
 configs/plutux_defconfig                      |  2 ++
 configs/polaroid_mid2407pxe03_defconfig       |  1 +
 configs/polaroid_mid2809pxe04_defconfig       |  1 +
 configs/popmetal-rk3288_defconfig             |  2 ++
 configs/porter_defconfig                      |  2 ++
 configs/pov_protab2_ips9_defconfig            |  1 +
 configs/puma-rk3399_defconfig                 |  2 ++
 configs/px30-core-ctouch2-of10-px30_defconfig |  2 ++
 configs/px30-core-ctouch2-px30_defconfig      |  2 ++
 configs/px30-core-edimm2.2-px30_defconfig     |  2 ++
 configs/q8_a13_tablet_defconfig               |  1 +
 configs/q8_a23_tablet_800x480_defconfig       |  1 +
 configs/q8_a33_tablet_1024x600_defconfig      |  1 +
 configs/q8_a33_tablet_800x480_defconfig       |  1 +
 configs/r7-tv-dongle_defconfig                |  1 +
 configs/r8a77970_eagle_defconfig              |  2 ++
 configs/r8a77980_condor_defconfig             |  2 ++
 configs/r8a77990_ebisu_defconfig              |  2 ++
 configs/r8a77995_draak_defconfig              |  2 ++
 configs/r8a779a0_falcon_defconfig             |  2 ++
 configs/rcar3_salvator-x_defconfig            |  2 ++
 configs/rcar3_ulcb_defconfig                  |  2 ++
 configs/riotboard_defconfig                   |  2 ++
 configs/roc-cc-rk3308_defconfig               |  2 ++
 configs/roc-cc-rk3328_defconfig               |  2 ++
 configs/roc-pc-mezzanine-rk3399_defconfig     |  2 ++
 configs/roc-pc-rk3399_defconfig               |  2 ++
 configs/rock-pi-4-rk3399_defconfig            |  2 ++
 configs/rock-pi-4c-rk3399_defconfig           |  2 ++
 configs/rock-pi-e-rk3328_defconfig            |  2 ++
 configs/rock-pi-n10-rk3399pro_defconfig       |  2 ++
 configs/rock-pi-n8-rk3288_defconfig           |  2 ++
 configs/rock2_defconfig                       |  2 ++
 configs/rock64-rk3328_defconfig               |  2 ++
 configs/rock960-rk3399_defconfig              |  2 ++
 configs/rock_defconfig                        |  2 ++
 configs/rockpro64-rk3399_defconfig            |  2 ++
 configs/sama5d27_giantboard_defconfig         |  2 ++
 configs/sama5d27_som1_ek_mmc1_defconfig       |  2 ++
 configs/sama5d27_som1_ek_mmc_defconfig        |  2 ++
 configs/sama5d27_som1_ek_qspiflash_defconfig  |  2 ++
 configs/sama5d27_wlsom1_ek_mmc_defconfig      |  2 ++
 .../sama5d27_wlsom1_ek_qspiflash_defconfig    |  2 ++
 configs/sama5d2_icp_mmc_defconfig             |  2 ++
 configs/sama5d2_xplained_emmc_defconfig       |  2 ++
 configs/sama5d2_xplained_mmc_defconfig        |  2 ++
 configs/sama5d2_xplained_qspiflash_defconfig  |  2 ++
 configs/sama5d2_xplained_spiflash_defconfig   |  2 ++
 configs/sama5d3_xplained_mmc_defconfig        |  2 ++
 configs/sama5d3_xplained_nandflash_defconfig  |  2 ++
 configs/sama5d3xek_mmc_defconfig              |  2 ++
 configs/sama5d3xek_nandflash_defconfig        |  2 ++
 configs/sama5d3xek_spiflash_defconfig         |  2 ++
 configs/sama5d4_xplained_mmc_defconfig        |  2 ++
 configs/sama5d4_xplained_nandflash_defconfig  |  2 ++
 configs/sama5d4_xplained_spiflash_defconfig   |  2 ++
 configs/sama5d4ek_mmc_defconfig               |  2 ++
 configs/sama5d4ek_nandflash_defconfig         |  2 ++
 configs/sama5d4ek_spiflash_defconfig          |  2 ++
 configs/seaboard_defconfig                    |  2 ++
 configs/seeed_npi_imx6ull_defconfig           |  2 ++
 configs/sifive_unleashed_defconfig            |  2 ++
 configs/sifive_unmatched_defconfig            |  2 ++
 configs/silinux_ek874_defconfig               |  2 ++
 configs/silk_defconfig                        |  2 ++
 configs/smartweb_defconfig                    |  2 ++
 configs/sniper_defconfig                      |  2 ++
 configs/socfpga_agilex_atf_defconfig          |  2 ++
 configs/socfpga_agilex_defconfig              |  2 ++
 configs/socfpga_agilex_vab_defconfig          |  2 ++
 configs/socfpga_arria10_defconfig             |  2 ++
 configs/socfpga_arria5_defconfig              |  2 ++
 configs/socfpga_cyclone5_defconfig            |  2 ++
 configs/socfpga_dbm_soc1_defconfig            |  2 ++
 configs/socfpga_de0_nano_soc_defconfig        |  2 ++
 configs/socfpga_de10_nano_defconfig           |  2 ++
 configs/socfpga_de1_soc_defconfig             |  2 ++
 configs/socfpga_is1_defconfig                 |  2 ++
 configs/socfpga_mcvevk_defconfig              |  2 ++
 configs/socfpga_n5x_atf_defconfig             |  2 ++
 configs/socfpga_n5x_defconfig                 |  2 ++
 configs/socfpga_n5x_vab_defconfig             |  2 ++
 configs/socfpga_secu1_defconfig               |  2 ++
 configs/socfpga_sockit_defconfig              |  2 ++
 configs/socfpga_socrates_defconfig            |  2 ++
 configs/socfpga_sr1500_defconfig              |  2 ++
 configs/socfpga_stratix10_atf_defconfig       |  2 ++
 configs/socfpga_stratix10_defconfig           |  2 ++
 configs/socfpga_vining_fpga_defconfig         |  2 ++
 configs/sopine_baseboard_defconfig            |  1 +
 ...stm32mp15-icore-stm32mp1-ctouch2_defconfig |  2 ++
 ...tm32mp15-icore-stm32mp1-edimm2.2_defconfig |  2 ++
 ...-microgea-stm32mp1-microdev2-of7_defconfig |  2 ++
 ...mp15-microgea-stm32mp1-microdev2_defconfig |  2 ++
 configs/stm32mp15_basic_defconfig             |  2 ++
 configs/stm32mp15_dhcom_basic_defconfig       |  2 ++
 configs/stm32mp15_dhcor_basic_defconfig       |  2 ++
 configs/stout_defconfig                       |  2 ++
 configs/sun8i_a23_evb_defconfig               |  1 +
 configs/sunxi_Gemei_G9_defconfig              |  1 +
 configs/syzygy_hub_defconfig                  |  2 ++
 configs/tanix_tx6_defconfig                   |  1 +
 configs/taurus_defconfig                      |  2 ++
 configs/tbs_a711_defconfig                    |  1 +
 configs/tec-ng_defconfig                      |  2 ++
 configs/tec_defconfig                         |  2 ++
 configs/teres_i_defconfig                     |  1 +
 configs/theadorable_debug_defconfig           |  2 ++
 configs/tinker-rk3288_defconfig               |  2 ++
 configs/tinker-s-rk3288_defconfig             |  2 ++
 configs/topic_miami_defconfig                 |  2 ++
 configs/topic_miamilite_defconfig             |  2 ++
 configs/topic_miamiplus_defconfig             |  2 ++
 configs/trimslice_defconfig                   |  2 ++
 configs/turris_omnia_defconfig                |  2 ++
 configs/udoo_defconfig                        |  2 ++
 configs/udoo_neo_defconfig                    |  2 ++
 configs/uniphier_ld4_sld8_defconfig           |  2 ++
 configs/uniphier_v7_defconfig                 |  2 ++
 configs/variscite_dart6ul_defconfig           |  2 ++
 configs/venice2_defconfig                     |  2 ++
 configs/ventana_defconfig                     |  2 ++
 configs/verdin-imx8mm_defconfig               |  2 ++
 configs/verdin-imx8mp_defconfig               |  2 ++
 configs/vining_2000_defconfig                 |  2 ++
 configs/vyasa-rk3288_defconfig                |  2 ++
 configs/wandboard_defconfig                   |  2 ++
 configs/work_92105_defconfig                  |  2 ++
 configs/x530_defconfig                        |  2 ++
 configs/xilinx_zynq_virt_defconfig            |  2 ++
 configs/xilinx_zynqmp_mini_emmc0_defconfig    |  2 ++
 configs/xilinx_zynqmp_mini_emmc1_defconfig    |  2 ++
 configs/xilinx_zynqmp_mini_qspi_defconfig     |  2 ++
 configs/xilinx_zynqmp_virt_defconfig          |  2 ++
 configs/zeropi_defconfig                      |  1 +
 configs/zynq_cse_nand_defconfig               |  2 ++
 configs/zynq_cse_nor_defconfig                |  2 ++
 configs/zynq_cse_qspi_defconfig               |  2 ++
 include/configs/alt.h                         |  3 --
 include/configs/at91sam9m10g45ek.h            |  3 --
 include/configs/at91sam9n12ek.h               |  1 -
 include/configs/at91sam9x5ek.h                |  1 -
 include/configs/capricorn-common.h            |  1 -
 include/configs/cgtqmx8.h                     |  1 -
 include/configs/ci20.h                        |  1 -
 include/configs/clearfog.h                    |  2 --
 include/configs/controlcenterdc.h             |  2 --
 include/configs/corvus.h                      |  1 -
 include/configs/da850evm.h                    |  1 -
 include/configs/db-88f6720.h                  |  2 --
 include/configs/db-88f6820-amc.h              |  2 --
 include/configs/db-88f6820-gp.h               |  2 --
 include/configs/db-mv784mp-gp.h               |  2 --
 include/configs/devkit3250.h                  | 12 -------
 include/configs/ds414.h                       |  2 --
 include/configs/edminiv2.h                    |  1 -
 include/configs/espresso7420.h                |  1 -
 .../configs/gardena-smart-gateway-at91sam.h   |  1 -
 include/configs/gose.h                        |  3 --
 include/configs/helios4.h                     |  2 --
 include/configs/imx6_spl.h                    |  2 --
 include/configs/imx7_spl.h                    |  1 -
 include/configs/imx8mm-cl-iot-gate.h          |  1 -
 include/configs/imx8mm_beacon.h               |  1 -
 include/configs/imx8mm_data_modul_edm_sbc.h   |  1 -
 include/configs/imx8mm_evk.h                  |  1 -
 include/configs/imx8mm_icore_mx8mm.h          |  1 -
 include/configs/imx8mm_venice.h               |  1 -
 include/configs/imx8mn_beacon.h               |  1 -
 include/configs/imx8mn_bsh_smm_s2_common.h    |  1 -
 include/configs/imx8mn_evk.h                  |  1 -
 include/configs/imx8mn_var_som.h              |  1 -
 include/configs/imx8mn_venice.h               |  1 -
 include/configs/imx8mp_dhcom_pdk2.h           |  1 -
 include/configs/imx8mp_evk.h                  |  1 -
 include/configs/imx8mp_rsb3720.h              |  1 -
 include/configs/imx8mp_venice.h               |  1 -
 include/configs/imx8mq_cm.h                   |  1 -
 include/configs/imx8mq_evk.h                  |  1 -
 include/configs/imx8mq_phanbell.h             |  1 -
 include/configs/imx8qm_mek.h                  |  1 -
 include/configs/imx8qxp_mek.h                 |  1 -
 include/configs/imx8ulp_evk.h                 |  1 -
 include/configs/koelsch.h                     |  1 -
 include/configs/kontron-sl-mx8mm.h            |  1 -
 include/configs/kontron_pitx_imx8m.h          |  1 -
 include/configs/kontron_sl28.h                |  1 -
 include/configs/lager.h                       |  1 -
 include/configs/ls1021aiot.h                  |  2 --
 include/configs/ls1021aqds.h                  |  4 ---
 include/configs/ls1021atsn.h                  |  2 --
 include/configs/ls1021atwr.h                  |  2 --
 include/configs/ls1043a_common.h              |  4 ---
 include/configs/ls1046a_common.h              |  3 --
 include/configs/ls1088a_common.h              |  1 -
 include/configs/ls2080a_common.h              |  1 -
 include/configs/m53menlo.h                    |  1 -
 include/configs/maxbcm.h                      |  2 --
 include/configs/microblaze-generic.h          |  3 --
 include/configs/mt7629.h                      |  1 -
 include/configs/omapl138_lcdk.h               |  1 -
 include/configs/openpiton-riscv64.h           |  2 --
 include/configs/phycore_imx8mm.h              |  1 -
 include/configs/phycore_imx8mp.h              |  1 -
 include/configs/pico-imx8mq.h                 |  1 -
 include/configs/pm9g45.h                      |  1 -
 include/configs/porter.h                      |  1 -
 include/configs/px30_common.h                 |  1 -
 include/configs/rcar-gen3-common.h            |  1 -
 include/configs/rk3036_common.h               |  2 --
 include/configs/rk3066_common.h               |  2 --
 include/configs/rk3188_common.h               |  2 --
 include/configs/rk3288_common.h               |  2 --
 include/configs/rk3308_common.h               |  1 -
 include/configs/rk3328_common.h               |  1 -
 include/configs/rk3368_common.h               |  1 -
 include/configs/rk3399_common.h               |  2 --
 include/configs/rk3568_common.h               |  1 -
 include/configs/sam9x60_curiosity.h           |  2 --
 include/configs/sama5d27_som1_ek.h            |  1 -
 include/configs/sama5d27_wlsom1_ek.h          |  1 -
 include/configs/sama5d2_icp.h                 |  2 --
 include/configs/sama5d2_xplained.h            |  1 -
 include/configs/sama5d3_xplained.h            |  2 --
 include/configs/sama5d3xek.h                  |  2 --
 include/configs/sama5d4_xplained.h            |  2 --
 include/configs/sama5d4ek.h                   |  2 --
 include/configs/sama7g5ek.h                   |  2 --
 include/configs/sifive-unleashed.h            |  3 --
 include/configs/sifive-unmatched.h            |  3 --
 include/configs/silk.h                        |  1 -
 include/configs/smartweb.h                    |  1 -
 include/configs/sniper.h                      |  1 -
 include/configs/socfpga_common.h              |  4 ---
 include/configs/socfpga_soc64_common.h        |  3 --
 include/configs/stm32mp15_common.h            |  2 --
 include/configs/stout.h                       |  1 -
 include/configs/sunxi-common.h                |  2 --
 include/configs/taurus.h                      |  1 -
 include/configs/tegra114-common.h             |  1 -
 include/configs/tegra124-common.h             |  1 -
 include/configs/tegra20-common.h              |  1 -
 include/configs/tegra30-common.h              |  1 -
 include/configs/theadorable.h                 |  2 --
 include/configs/ti_armv7_keystone2.h          |  4 ---
 include/configs/turris_omnia.h                |  2 --
 include/configs/uniphier.h                    |  1 -
 include/configs/verdin-imx8mm.h               |  1 -
 include/configs/verdin-imx8mp.h               |  1 -
 include/configs/work_92105.h                  |  1 -
 include/configs/x530.h                        |  2 --
 include/configs/xea.h                         |  1 -
 include/configs/xilinx_zynqmp.h               |  2 --
 include/configs/zynq-common.h                 |  1 -
 604 files changed, 829 insertions(+), 220 deletions(-)

diff --git a/README b/README
index 02a2a3ff8824..360d357bfbc1 100644
--- a/README
+++ b/README
@@ -293,33 +293,6 @@ board_init_r():
 
 	SPL-specific notes:
 	- stack is optionally in SDRAM, if CONFIG_SPL_STACK_R is defined and
-		CONFIG_SPL_STACK_R_ADDR points into SDRAM
-	- preloader_console_init() can be called here - typically this is
-		done by selecting CONFIG_SPL_BOARD_INIT and then supplying a
-		spl_board_init() function containing this call
-	- loads U-Boot or (in falcon mode) Linux
-
-
-Configuration Options:
-----------------------
-
-Configuration depends on the combination of board and CPU type; all
-such information is kept in a configuration file
-"include/configs/<board_name>.h".
-
-Example: For a TQM823L module, all configuration settings are in
-"include/configs/TQM823L.h".
-
-
-Many of the options are named exactly as the corresponding Linux
-kernel configuration options. The intention is to make it easier to
-build a config tool - later.
-
-- ARM Platform Bus Type(CCI):
-		CoreLink Cache Coherent Interconnect (CCI) is ARM BUS which
-		provides full cache coherency between two clusters of multi-core
-		CPUs and I/O coherency for devices and I/O masters
-
 		CONFIG_SYS_FSL_HAS_CCI400
 
 		Defined For SoC that has cache coherent interconnect
@@ -1659,9 +1632,6 @@ The following options need to be configured:
 		CONFIG_SPL_BSS_START_ADDR
 		Link address for the BSS within the SPL binary.
 
-		CONFIG_SPL_STACK
-		Adress of the start of the stack SPL will use
-
 		CONFIG_SPL_PANIC_ON_RAW_IMAGE
 		When defined, SPL will panic() if the image it has
 		loaded does not have a signature.
@@ -1675,8 +1645,6 @@ The following options need to be configured:
 		CONFIG_SPL_RELOC_STACK
 		Adress of the start of the stack SPL will use after
 		relocation.  If unspecified, this is equal to
-		CONFIG_SPL_STACK.
-
 		CONFIG_SYS_SPL_MALLOC_START
 		Starting address of the malloc pool used in SPL.
 		When this option is set the full malloc is used in SPL and
diff --git a/arch/microblaze/cpu/start.S b/arch/microblaze/cpu/start.S
index 645f7cb0389d..25e9968e4c65 100644
--- a/arch/microblaze/cpu/start.S
+++ b/arch/microblaze/cpu/start.S
@@ -19,7 +19,7 @@ _start:
 	mts	rslr, r8
 
 #if defined(CONFIG_SPL_BUILD)
-	addi	r1, r0, CONFIG_SPL_STACK_ADDR
+	addi	r1, r0, CONFIG_SPL_STACK
 #else
 	addi	r1, r0, CONFIG_SYS_INIT_SP_OFFSET
 #endif
diff --git a/common/spl/Kconfig b/common/spl/Kconfig
index 3cee3c323e84..89288797513f 100644
--- a/common/spl/Kconfig
+++ b/common/spl/Kconfig
@@ -357,6 +357,24 @@ config TPL_SYS_MALLOC_SIMPLE
 	  this will make the TPL binary smaller at the cost of more heap
 	  usage as the *_simple malloc functions do not re-use free-ed mem.
 
+config SPL_SHARES_INIT_SP_ADDR
+	bool "SPL and U-Boot use the same initial stack pointer location"
+	depends on (ARM || ARCH_JZ47XX || MICROBLAZE || RISCV) && SPL_FRAMEWORK
+	default n if ARCH_SUNXI
+	default y
+	help
+	  In many cases, we can use the same initial stack pointer address for
+	  both SPL and U-Boot itself.  If you need to specify a different address
+	  however, say N here and then set a different value in CONFIG_SPL_STACK.
+
+config SPL_STACK
+	hex "Initial stack pointer location"
+	depends on (ARM || ARCH_JZ47XX || MICROBLAZE || RISCV) && SPL_FRAMEWORK
+	depends on !SPL_SHARES_INIT_SP_ADDR
+	help
+	  Address of the start of the stack SPL will use before SDRAM is
+	  initialized.
+
 config SPL_STACK_R
 	bool "Enable SDRAM location for SPL stack"
 	help
diff --git a/configs/A10-OLinuXino-Lime_defconfig b/configs/A10-OLinuXino-Lime_defconfig
index 07e6e3f00993..026668b0bd06 100644
--- a/configs/A10-OLinuXino-Lime_defconfig
+++ b/configs/A10-OLinuXino-Lime_defconfig
@@ -11,6 +11,7 @@ CONFIG_I2C1_ENABLE=y
 CONFIG_SATAPWR="PC3"
 CONFIG_AHCI=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SCSI_AHCI=y
diff --git a/configs/A10s-OLinuXino-M_defconfig b/configs/A10s-OLinuXino-M_defconfig
index 2aeaffacd0c8..7e9b92ee5ee4 100644
--- a/configs/A10s-OLinuXino-M_defconfig
+++ b/configs/A10s-OLinuXino-M_defconfig
@@ -9,6 +9,7 @@ CONFIG_MMC1_CD_PIN="PG13"
 CONFIG_MMC_SUNXI_SLOT_EXTRA=1
 CONFIG_USB1_VBUS_PIN="PB10"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SYS_I2C_MVTWSI=y
diff --git a/configs/A13-OLinuXinoM_defconfig b/configs/A13-OLinuXinoM_defconfig
index 4f39d70f8156..625a331e4456 100644
--- a/configs/A13-OLinuXinoM_defconfig
+++ b/configs/A13-OLinuXinoM_defconfig
@@ -13,6 +13,7 @@ CONFIG_VIDEO_VGA_VIA_LCD_FORCE_SYNC_ACTIVE_HIGH=y
 CONFIG_VIDEO_LCD_POWER="PB10"
 CONFIG_VIDEO_LCD_BL_PWM="PB2"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SYS_I2C_MVTWSI=y
 CONFIG_SYS_I2C_SLAVE=0x7f
diff --git a/configs/A13-OLinuXino_defconfig b/configs/A13-OLinuXino_defconfig
index 0746061317bc..5e0396c150fa 100644
--- a/configs/A13-OLinuXino_defconfig
+++ b/configs/A13-OLinuXino_defconfig
@@ -15,6 +15,7 @@ CONFIG_VIDEO_VGA_VIA_LCD_FORCE_SYNC_ACTIVE_HIGH=y
 CONFIG_VIDEO_LCD_POWER="AXP0-0"
 CONFIG_VIDEO_LCD_BL_PWM="PB2"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_CMD_DFU=y
diff --git a/configs/A20-OLinuXino-Lime2-eMMC_defconfig b/configs/A20-OLinuXino-Lime2-eMMC_defconfig
index 45f9e9e07d04..e0db1e673882 100644
--- a/configs/A20-OLinuXino-Lime2-eMMC_defconfig
+++ b/configs/A20-OLinuXino-Lime2-eMMC_defconfig
@@ -13,6 +13,7 @@ CONFIG_SATAPWR="PC3"
 CONFIG_SPL_SPI_SUNXI=y
 CONFIG_AHCI=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_CMD_DFU=y
diff --git a/configs/A20-OLinuXino-Lime2_defconfig b/configs/A20-OLinuXino-Lime2_defconfig
index 187d8a5e6b6d..a78cbfb1391a 100644
--- a/configs/A20-OLinuXino-Lime2_defconfig
+++ b/configs/A20-OLinuXino-Lime2_defconfig
@@ -11,6 +11,7 @@ CONFIG_I2C1_ENABLE=y
 CONFIG_SATAPWR="PC3"
 CONFIG_AHCI=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_CMD_DFU=y
diff --git a/configs/A20-OLinuXino-Lime_defconfig b/configs/A20-OLinuXino-Lime_defconfig
index 1964fb6aa3de..da3532ccc463 100644
--- a/configs/A20-OLinuXino-Lime_defconfig
+++ b/configs/A20-OLinuXino-Lime_defconfig
@@ -9,6 +9,7 @@ CONFIG_I2C1_ENABLE=y
 CONFIG_SATAPWR="PC3"
 CONFIG_AHCI=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SCSI_AHCI=y
diff --git a/configs/A20-OLinuXino_MICRO-eMMC_defconfig b/configs/A20-OLinuXino_MICRO-eMMC_defconfig
index e4892cc5176e..0563a5188e65 100644
--- a/configs/A20-OLinuXino_MICRO-eMMC_defconfig
+++ b/configs/A20-OLinuXino_MICRO-eMMC_defconfig
@@ -11,6 +11,7 @@ CONFIG_VIDEO_VGA=y
 CONFIG_SATAPWR="PB8"
 CONFIG_AHCI=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SCSI_AHCI=y
diff --git a/configs/A20-OLinuXino_MICRO_defconfig b/configs/A20-OLinuXino_MICRO_defconfig
index e491e73ccba8..4993cf7d2d71 100644
--- a/configs/A20-OLinuXino_MICRO_defconfig
+++ b/configs/A20-OLinuXino_MICRO_defconfig
@@ -12,6 +12,7 @@ CONFIG_VIDEO_VGA=y
 CONFIG_SATAPWR="PB8"
 CONFIG_AHCI=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SCSI_AHCI=y
diff --git a/configs/A20-Olimex-SOM-EVB_defconfig b/configs/A20-Olimex-SOM-EVB_defconfig
index 3685a93ca50a..0db97ae8415a 100644
--- a/configs/A20-Olimex-SOM-EVB_defconfig
+++ b/configs/A20-Olimex-SOM-EVB_defconfig
@@ -12,6 +12,7 @@ CONFIG_USB0_VBUS_DET="PH5"
 CONFIG_SATAPWR="PC3"
 CONFIG_AHCI=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SCSI_AHCI=y
diff --git a/configs/A20-Olimex-SOM204-EVB-eMMC_defconfig b/configs/A20-Olimex-SOM204-EVB-eMMC_defconfig
index 24294daaaf8b..91d29e44469b 100644
--- a/configs/A20-Olimex-SOM204-EVB-eMMC_defconfig
+++ b/configs/A20-Olimex-SOM204-EVB-eMMC_defconfig
@@ -13,6 +13,7 @@ CONFIG_SATAPWR="PC3"
 CONFIG_GMAC_TX_DELAY=4
 CONFIG_AHCI=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SCSI_AHCI=y
diff --git a/configs/A20-Olimex-SOM204-EVB_defconfig b/configs/A20-Olimex-SOM204-EVB_defconfig
index 5dd6f77b7b6b..893f2e627d5c 100644
--- a/configs/A20-Olimex-SOM204-EVB_defconfig
+++ b/configs/A20-Olimex-SOM204-EVB_defconfig
@@ -12,6 +12,7 @@ CONFIG_SATAPWR="PC3"
 CONFIG_GMAC_TX_DELAY=4
 CONFIG_AHCI=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SCSI_AHCI=y
diff --git a/configs/A33-OLinuXino_defconfig b/configs/A33-OLinuXino_defconfig
index 786fc6cf376b..c9eec1f88790 100644
--- a/configs/A33-OLinuXino_defconfig
+++ b/configs/A33-OLinuXino_defconfig
@@ -16,6 +16,7 @@ CONFIG_VIDEO_LCD_DCLK_PHASE=0
 CONFIG_VIDEO_LCD_BL_EN="PB2"
 CONFIG_VIDEO_LCD_BL_PWM="PH0"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_AXP_DCDC1_VOLT=3300
 CONFIG_USB_MUSB_HOST=y
diff --git a/configs/Ainol_AW1_defconfig b/configs/Ainol_AW1_defconfig
index 89cad5d6c784..8cd38f7905bb 100644
--- a/configs/Ainol_AW1_defconfig
+++ b/configs/Ainol_AW1_defconfig
@@ -14,6 +14,7 @@ CONFIG_VIDEO_LCD_POWER="PH8"
 CONFIG_VIDEO_LCD_BL_EN="PH7"
 CONFIG_VIDEO_LCD_BL_PWM="PB2"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SYS_I2C_MVTWSI=y
diff --git a/configs/Ampe_A76_defconfig b/configs/Ampe_A76_defconfig
index b00392437094..68707ed3e951 100644
--- a/configs/Ampe_A76_defconfig
+++ b/configs/Ampe_A76_defconfig
@@ -15,6 +15,7 @@ CONFIG_VIDEO_LCD_POWER="AXP0-0"
 CONFIG_VIDEO_LCD_BL_EN="AXP0-1"
 CONFIG_VIDEO_LCD_BL_PWM="PB2"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SYS_I2C_MVTWSI=y
diff --git a/configs/Auxtek-T003_defconfig b/configs/Auxtek-T003_defconfig
index 0f38a85f9f8c..703df186b27f 100644
--- a/configs/Auxtek-T003_defconfig
+++ b/configs/Auxtek-T003_defconfig
@@ -8,6 +8,7 @@ CONFIG_DRAM_EMR1=0
 CONFIG_USB1_VBUS_PIN="PB10"
 CONFIG_VIDEO_COMPOSITE=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SYS_I2C_MVTWSI=y
diff --git a/configs/Auxtek-T004_defconfig b/configs/Auxtek-T004_defconfig
index f201bd108197..a8d236eaf9d9 100644
--- a/configs/Auxtek-T004_defconfig
+++ b/configs/Auxtek-T004_defconfig
@@ -6,6 +6,7 @@ CONFIG_MACH_SUN5I=y
 CONFIG_DRAM_CLK=432
 CONFIG_USB1_VBUS_PIN="PG13"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SYS_I2C_MVTWSI=y
diff --git a/configs/Bananapi_M2_Ultra_defconfig b/configs/Bananapi_M2_Ultra_defconfig
index 79eb3ede7725..7d9c688171d4 100644
--- a/configs/Bananapi_M2_Ultra_defconfig
+++ b/configs/Bananapi_M2_Ultra_defconfig
@@ -12,6 +12,7 @@ CONFIG_USB2_VBUS_PIN="PH23"
 # CONFIG_HAS_ARMV7_SECURE_BASE is not set
 CONFIG_AHCI=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SCSI_AHCI=y
diff --git a/configs/Bananapi_defconfig b/configs/Bananapi_defconfig
index f1b0b6da8f2f..6cc2d5b64720 100644
--- a/configs/Bananapi_defconfig
+++ b/configs/Bananapi_defconfig
@@ -9,6 +9,7 @@ CONFIG_VIDEO_COMPOSITE=y
 CONFIG_GMAC_TX_DELAY=3
 CONFIG_AHCI=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_NETCONSOLE=y
diff --git a/configs/Bananapi_m2m_defconfig b/configs/Bananapi_m2m_defconfig
index ba26aa1861a3..6a07f26c02c4 100644
--- a/configs/Bananapi_m2m_defconfig
+++ b/configs/Bananapi_m2m_defconfig
@@ -10,6 +10,7 @@ CONFIG_MMC0_CD_PIN="PB4"
 CONFIG_MMC_SUNXI_SLOT_EXTRA=2
 CONFIG_USB0_ID_DET="PH8"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_FASTBOOT_CMD_OEM_FORMAT=y
 CONFIG_USB_EHCI_HCD=y
diff --git a/configs/Bananapro_defconfig b/configs/Bananapro_defconfig
index 9214a9b69604..19b644613a6c 100644
--- a/configs/Bananapro_defconfig
+++ b/configs/Bananapro_defconfig
@@ -11,6 +11,7 @@ CONFIG_VIDEO_COMPOSITE=y
 CONFIG_GMAC_TX_DELAY=3
 CONFIG_AHCI=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_NETCONSOLE=y
diff --git a/configs/CHIP_defconfig b/configs/CHIP_defconfig
index be092cd0949d..40d2c5b668af 100644
--- a/configs/CHIP_defconfig
+++ b/configs/CHIP_defconfig
@@ -7,6 +7,7 @@ CONFIG_DRAM_TIMINGS_DDR3_800E_1066G_1333J=y
 CONFIG_USB0_VBUS_PIN="PB10"
 CONFIG_VIDEO_COMPOSITE=y
 CONFIG_CHIP_DIP_SCAN=y
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_CMD_DFU=y
diff --git a/configs/CHIP_pro_defconfig b/configs/CHIP_pro_defconfig
index 16456c1dea54..90168010bb8e 100644
--- a/configs/CHIP_pro_defconfig
+++ b/configs/CHIP_pro_defconfig
@@ -5,6 +5,7 @@ CONFIG_SPL=y
 CONFIG_MACH_SUN5I=y
 CONFIG_DRAM_TIMINGS_DDR3_800E_1066G_1333J=y
 CONFIG_USB0_VBUS_PIN="PB10"
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 # CONFIG_CMD_FLASH is not set
diff --git a/configs/CSQ_CS908_defconfig b/configs/CSQ_CS908_defconfig
index f79bc78f24d6..49be3fc4a2d2 100644
--- a/configs/CSQ_CS908_defconfig
+++ b/configs/CSQ_CS908_defconfig
@@ -7,6 +7,7 @@ CONFIG_DRAM_CLK=432
 CONFIG_USB1_VBUS_PIN=""
 CONFIG_USB2_VBUS_PIN=""
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_PHY_REALTEK=y
 CONFIG_ETH_DESIGNWARE=y
diff --git a/configs/Chuwi_V7_CW0825_defconfig b/configs/Chuwi_V7_CW0825_defconfig
index d517ab9a7ca4..b59d1786e6ef 100644
--- a/configs/Chuwi_V7_CW0825_defconfig
+++ b/configs/Chuwi_V7_CW0825_defconfig
@@ -14,6 +14,7 @@ CONFIG_VIDEO_LCD_BL_EN="PH7"
 CONFIG_VIDEO_LCD_BL_PWM="PB2"
 CONFIG_VIDEO_LCD_PANEL_HITACHI_TX18D42VM=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SYS_I2C_MVTWSI=y
diff --git a/configs/Colombus_defconfig b/configs/Colombus_defconfig
index 5f1946061218..24b55bfa8cc9 100644
--- a/configs/Colombus_defconfig
+++ b/configs/Colombus_defconfig
@@ -15,6 +15,7 @@ CONFIG_VIDEO_LCD_BL_EN="PM1"
 CONFIG_VIDEO_LCD_BL_PWM="PH13"
 CONFIG_VIDEO_LCD_PANEL_EDP_4_LANE_1620M_VIA_ANX9804=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SPL_SYS_I2C_LEGACY=y
 CONFIG_SYS_I2C_MVTWSI=y
diff --git a/configs/Cubieboard2_defconfig b/configs/Cubieboard2_defconfig
index 0be8a07aa62c..794d6668d2f8 100644
--- a/configs/Cubieboard2_defconfig
+++ b/configs/Cubieboard2_defconfig
@@ -8,6 +8,7 @@ CONFIG_MMC0_CD_PIN="PH1"
 CONFIG_SATAPWR="PB8"
 CONFIG_AHCI=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SCSI_AHCI=y
diff --git a/configs/Cubieboard4_defconfig b/configs/Cubieboard4_defconfig
index 82b3ac10f965..928299e8a513 100644
--- a/configs/Cubieboard4_defconfig
+++ b/configs/Cubieboard4_defconfig
@@ -12,6 +12,7 @@ CONFIG_USB0_ID_DET="PH16"
 CONFIG_USB1_VBUS_PIN="PH14"
 CONFIG_USB3_VBUS_PIN="PH15"
 CONFIG_AXP_GPIO=y
+CONFIG_SPL_STACK=0x18000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SYS_I2C_SUN8I_RSB=y
 CONFIG_AXP809_POWER=y
diff --git a/configs/Cubieboard_defconfig b/configs/Cubieboard_defconfig
index 31d4fb4709fb..1027c5e3bf95 100644
--- a/configs/Cubieboard_defconfig
+++ b/configs/Cubieboard_defconfig
@@ -8,6 +8,7 @@ CONFIG_MMC0_CD_PIN="PH1"
 CONFIG_SATAPWR="PB8"
 CONFIG_AHCI=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SCSI_AHCI=y
diff --git a/configs/Cubietruck_defconfig b/configs/Cubietruck_defconfig
index fc692ff761a7..560248dc5b17 100644
--- a/configs/Cubietruck_defconfig
+++ b/configs/Cubietruck_defconfig
@@ -13,6 +13,7 @@ CONFIG_SATAPWR="PH12"
 CONFIG_GMAC_TX_DELAY=1
 CONFIG_AHCI=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_CMD_DFU=y
diff --git a/configs/Cubietruck_plus_defconfig b/configs/Cubietruck_plus_defconfig
index cbd77cfc0294..8119b8b9cf6b 100644
--- a/configs/Cubietruck_plus_defconfig
+++ b/configs/Cubietruck_plus_defconfig
@@ -16,6 +16,7 @@ CONFIG_I2C0_ENABLE=y
 CONFIG_AXP_GPIO=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_CONSOLE_MUX=y
+CONFIG_SPL_STACK=0x8000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SPL_SYS_I2C_LEGACY=y
 CONFIG_SYS_I2C_MVTWSI=y
diff --git a/configs/Empire_electronix_d709_defconfig b/configs/Empire_electronix_d709_defconfig
index d1b76663fbcc..0187b896f873 100644
--- a/configs/Empire_electronix_d709_defconfig
+++ b/configs/Empire_electronix_d709_defconfig
@@ -16,6 +16,7 @@ CONFIG_VIDEO_LCD_POWER="AXP0-0"
 CONFIG_VIDEO_LCD_BL_EN="AXP0-1"
 CONFIG_VIDEO_LCD_BL_PWM="PB2"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SYS_I2C_MVTWSI=y
diff --git a/configs/Empire_electronix_m712_defconfig b/configs/Empire_electronix_m712_defconfig
index e2d8a21a64a5..6570b97ca4c6 100644
--- a/configs/Empire_electronix_m712_defconfig
+++ b/configs/Empire_electronix_m712_defconfig
@@ -15,6 +15,7 @@ CONFIG_VIDEO_LCD_POWER="AXP0-0"
 CONFIG_VIDEO_LCD_BL_EN="AXP0-1"
 CONFIG_VIDEO_LCD_BL_PWM="PB2"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SYS_I2C_MVTWSI=y
diff --git a/configs/Hummingbird_A31_defconfig b/configs/Hummingbird_A31_defconfig
index 20144b230287..3afe4c56ae4d 100644
--- a/configs/Hummingbird_A31_defconfig
+++ b/configs/Hummingbird_A31_defconfig
@@ -9,6 +9,7 @@ CONFIG_USB2_VBUS_PIN=""
 CONFIG_VIDEO_VGA_VIA_LCD=y
 CONFIG_VIDEO_VGA_EXTERNAL_DAC_EN="PH25"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_PHY_REALTEK=y
 CONFIG_ETH_DESIGNWARE=y
diff --git a/configs/Hyundai_A7HD_defconfig b/configs/Hyundai_A7HD_defconfig
index 0c655b24e76c..8bf7d1efba61 100644
--- a/configs/Hyundai_A7HD_defconfig
+++ b/configs/Hyundai_A7HD_defconfig
@@ -15,6 +15,7 @@ CONFIG_VIDEO_LCD_BL_PWM="PB2"
 # CONFIG_VIDEO_LCD_BL_PWM_ACTIVE_LOW is not set
 CONFIG_VIDEO_LCD_PANEL_LVDS=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SYS_I2C_MVTWSI=y
diff --git a/configs/Itead_Ibox_A20_defconfig b/configs/Itead_Ibox_A20_defconfig
index b8f1350c8789..42cb24e88ef7 100644
--- a/configs/Itead_Ibox_A20_defconfig
+++ b/configs/Itead_Ibox_A20_defconfig
@@ -8,6 +8,7 @@ CONFIG_MMC0_CD_PIN="PH1"
 CONFIG_SATAPWR="PB8"
 CONFIG_AHCI=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SCSI_AHCI=y
diff --git a/configs/Lamobo_R1_defconfig b/configs/Lamobo_R1_defconfig
index 8b25863b30c8..d4692f8184a5 100644
--- a/configs/Lamobo_R1_defconfig
+++ b/configs/Lamobo_R1_defconfig
@@ -10,6 +10,7 @@ CONFIG_SATAPWR="PB3"
 CONFIG_GMAC_TX_DELAY=4
 CONFIG_AHCI=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SCSI_AHCI=y
diff --git a/configs/LicheePi_Zero_defconfig b/configs/LicheePi_Zero_defconfig
index 5bc36f29680a..2e0b0b71e140 100644
--- a/configs/LicheePi_Zero_defconfig
+++ b/configs/LicheePi_Zero_defconfig
@@ -5,5 +5,6 @@ CONFIG_SPL=y
 CONFIG_MACH_SUN8I_V3S=y
 CONFIG_DRAM_CLK=360
 # CONFIG_HAS_ARMV7_SECURE_BASE is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SYS_PBSIZE=1024
 # CONFIG_NETDEVICES is not set
diff --git a/configs/Linksprite_pcDuino3_Nano_defconfig b/configs/Linksprite_pcDuino3_Nano_defconfig
index 37726bedf89b..dbafdd5bd80c 100644
--- a/configs/Linksprite_pcDuino3_Nano_defconfig
+++ b/configs/Linksprite_pcDuino3_Nano_defconfig
@@ -10,6 +10,7 @@ CONFIG_SATAPWR="PH2"
 CONFIG_GMAC_TX_DELAY=3
 CONFIG_AHCI=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SCSI_AHCI=y
diff --git a/configs/Linksprite_pcDuino3_defconfig b/configs/Linksprite_pcDuino3_defconfig
index 4545bdcd999d..ff6a4e8b3794 100644
--- a/configs/Linksprite_pcDuino3_defconfig
+++ b/configs/Linksprite_pcDuino3_defconfig
@@ -8,6 +8,7 @@ CONFIG_DRAM_ZQ=122
 CONFIG_SATAPWR="PH2"
 CONFIG_AHCI=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SCSI_AHCI=y
diff --git a/configs/Linksprite_pcDuino_defconfig b/configs/Linksprite_pcDuino_defconfig
index c671bab2e7ae..279641551b30 100644
--- a/configs/Linksprite_pcDuino_defconfig
+++ b/configs/Linksprite_pcDuino_defconfig
@@ -6,6 +6,7 @@ CONFIG_MACH_SUN4I=y
 CONFIG_USB1_VBUS_PIN=""
 CONFIG_USB2_VBUS_PIN=""
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SYS_I2C_MVTWSI=y
diff --git a/configs/MK808C_defconfig b/configs/MK808C_defconfig
index f4d31b392405..4e678bdf051f 100644
--- a/configs/MK808C_defconfig
+++ b/configs/MK808C_defconfig
@@ -5,6 +5,7 @@ CONFIG_SPL=y
 CONFIG_MACH_SUN7I=y
 CONFIG_DRAM_CLK=384
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SYS_I2C_MVTWSI=y
diff --git a/configs/MSI_Primo73_defconfig b/configs/MSI_Primo73_defconfig
index 5a43945596a6..7a4b224bf2a1 100644
--- a/configs/MSI_Primo73_defconfig
+++ b/configs/MSI_Primo73_defconfig
@@ -10,6 +10,7 @@ CONFIG_VIDEO_LCD_POWER="PH8"
 CONFIG_VIDEO_LCD_BL_EN="PH7"
 CONFIG_VIDEO_LCD_BL_PWM="PB2"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SYS_I2C_MVTWSI=y
diff --git a/configs/MSI_Primo81_defconfig b/configs/MSI_Primo81_defconfig
index de1b6884b8f9..bb820fd0a39f 100644
--- a/configs/MSI_Primo81_defconfig
+++ b/configs/MSI_Primo81_defconfig
@@ -13,6 +13,7 @@ CONFIG_VIDEO_LCD_BL_EN="PA25"
 CONFIG_VIDEO_LCD_BL_PWM="PH13"
 CONFIG_VIDEO_LCD_PANEL_MIPI_4_LANE_513_MBPS_VIA_SSD2828=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_AXP_DLDO1_VOLT=3300
 # CONFIG_REQUIRE_SERIAL_CONSOLE is not set
diff --git a/configs/Marsboard_A10_defconfig b/configs/Marsboard_A10_defconfig
index 8ba587db9cbd..c88cfd6aa321 100644
--- a/configs/Marsboard_A10_defconfig
+++ b/configs/Marsboard_A10_defconfig
@@ -5,6 +5,7 @@ CONFIG_SPL=y
 CONFIG_MACH_SUN4I=y
 CONFIG_AHCI=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SCSI_AHCI=y
 CONFIG_SYS_I2C_MVTWSI=y
diff --git a/configs/Mele_A1000G_quad_defconfig b/configs/Mele_A1000G_quad_defconfig
index 13f418fb0cc3..8ee6791408a0 100644
--- a/configs/Mele_A1000G_quad_defconfig
+++ b/configs/Mele_A1000G_quad_defconfig
@@ -8,6 +8,7 @@ CONFIG_INITIAL_USB_SCAN_DELAY=2000
 CONFIG_USB1_VBUS_PIN="PC27"
 CONFIG_USB2_VBUS_PIN=""
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_PHY_REALTEK=y
 CONFIG_ETH_DESIGNWARE=y
diff --git a/configs/Mele_A1000_defconfig b/configs/Mele_A1000_defconfig
index a62ca5d2f18c..429baf3faf29 100644
--- a/configs/Mele_A1000_defconfig
+++ b/configs/Mele_A1000_defconfig
@@ -8,6 +8,7 @@ CONFIG_VIDEO_VGA=y
 CONFIG_VIDEO_COMPOSITE=y
 CONFIG_AHCI=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SCSI_AHCI=y
diff --git a/configs/Mele_I7_defconfig b/configs/Mele_I7_defconfig
index 62cb674d2950..48dad606b884 100644
--- a/configs/Mele_I7_defconfig
+++ b/configs/Mele_I7_defconfig
@@ -7,6 +7,7 @@ CONFIG_DRAM_ZQ=120
 CONFIG_USB1_VBUS_PIN="PC27"
 CONFIG_USB2_VBUS_PIN=""
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_PHY_REALTEK=y
 CONFIG_ETH_DESIGNWARE=y
diff --git a/configs/Mele_M3_defconfig b/configs/Mele_M3_defconfig
index fce30278d496..ce962395a253 100644
--- a/configs/Mele_M3_defconfig
+++ b/configs/Mele_M3_defconfig
@@ -9,6 +9,7 @@ CONFIG_MMC_SUNXI_SLOT_EXTRA=2
 CONFIG_VIDEO_VGA=y
 CONFIG_VIDEO_COMPOSITE=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SYS_I2C_MVTWSI=y
diff --git a/configs/Mele_M5_defconfig b/configs/Mele_M5_defconfig
index 79ea3f0db29b..a426729700e9 100644
--- a/configs/Mele_M5_defconfig
+++ b/configs/Mele_M5_defconfig
@@ -9,6 +9,7 @@ CONFIG_MMC0_CD_PIN="PH1"
 CONFIG_VIDEO_COMPOSITE=y
 CONFIG_AHCI=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SCSI_AHCI=y
diff --git a/configs/Mele_M9_defconfig b/configs/Mele_M9_defconfig
index 1338e0973dbe..b84a2aebe206 100644
--- a/configs/Mele_M9_defconfig
+++ b/configs/Mele_M9_defconfig
@@ -7,6 +7,7 @@ CONFIG_DRAM_ZQ=120
 CONFIG_USB1_VBUS_PIN="PC27"
 CONFIG_USB2_VBUS_PIN=""
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_PHY_REALTEK=y
 CONFIG_ETH_DESIGNWARE=y
diff --git a/configs/Merrii_A80_Optimus_defconfig b/configs/Merrii_A80_Optimus_defconfig
index 5f008a206e76..3709a11ec036 100644
--- a/configs/Merrii_A80_Optimus_defconfig
+++ b/configs/Merrii_A80_Optimus_defconfig
@@ -12,6 +12,7 @@ CONFIG_USB0_ID_DET="PH3"
 CONFIG_USB1_VBUS_PIN="PH4"
 CONFIG_USB3_VBUS_PIN="PH5"
 CONFIG_AXP_GPIO=y
+CONFIG_SPL_STACK=0x18000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SYS_I2C_SUN8I_RSB=y
 CONFIG_AXP809_POWER=y
diff --git a/configs/Mini-X_defconfig b/configs/Mini-X_defconfig
index 61f880e15d95..76b6b7d2bce7 100644
--- a/configs/Mini-X_defconfig
+++ b/configs/Mini-X_defconfig
@@ -6,6 +6,7 @@ CONFIG_MACH_SUN4I=y
 CONFIG_USB0_VBUS_PIN="PB9"
 CONFIG_VIDEO_COMPOSITE=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SYS_I2C_MVTWSI=y
diff --git a/configs/Nintendo_NES_Classic_Edition_defconfig b/configs/Nintendo_NES_Classic_Edition_defconfig
index a26695ca1675..1a939d8e0e01 100644
--- a/configs/Nintendo_NES_Classic_Edition_defconfig
+++ b/configs/Nintendo_NES_Classic_Edition_defconfig
@@ -9,6 +9,7 @@ CONFIG_DRAM_ODT_EN=y
 CONFIG_USB0_VBUS_DET="AXP0-VBUS-DETECT"
 CONFIG_AXP_GPIO=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SYS_PBSIZE=1024
 # CONFIG_CMD_FLASH is not set
 CONFIG_CMD_MTDPARTS=y
diff --git a/configs/Orangepi_defconfig b/configs/Orangepi_defconfig
index eed986aa15c2..e7cf38ac7d1f 100644
--- a/configs/Orangepi_defconfig
+++ b/configs/Orangepi_defconfig
@@ -12,6 +12,7 @@ CONFIG_VIDEO_COMPOSITE=y
 CONFIG_GMAC_TX_DELAY=3
 CONFIG_AHCI=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SCSI_AHCI=y
diff --git a/configs/Orangepi_mini_defconfig b/configs/Orangepi_mini_defconfig
index 974826baed0c..494edf0625ea 100644
--- a/configs/Orangepi_mini_defconfig
+++ b/configs/Orangepi_mini_defconfig
@@ -14,6 +14,7 @@ CONFIG_VIDEO_COMPOSITE=y
 CONFIG_GMAC_TX_DELAY=3
 CONFIG_AHCI=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SCSI_AHCI=y
diff --git a/configs/Sinlinx_SinA31s_defconfig b/configs/Sinlinx_SinA31s_defconfig
index 4495b806ceb5..2d33331f3d3d 100644
--- a/configs/Sinlinx_SinA31s_defconfig
+++ b/configs/Sinlinx_SinA31s_defconfig
@@ -10,6 +10,7 @@ CONFIG_MMC_SUNXI_SLOT_EXTRA=3
 CONFIG_USB1_VBUS_PIN=""
 CONFIG_USB2_VBUS_PIN=""
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_PHY_REALTEK=y
 CONFIG_ETH_DESIGNWARE=y
diff --git a/configs/Sinlinx_SinA33_defconfig b/configs/Sinlinx_SinA33_defconfig
index 0f30dfc1dc98..fcee14b5462b 100644
--- a/configs/Sinlinx_SinA33_defconfig
+++ b/configs/Sinlinx_SinA33_defconfig
@@ -13,6 +13,7 @@ CONFIG_VIDEO_LCD_DCLK_PHASE=0
 CONFIG_VIDEO_LCD_BL_EN="PH6"
 CONFIG_VIDEO_LCD_BL_PWM="PH0"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_CMD_DFU=y
 CONFIG_DFU_RAM=y
diff --git a/configs/Sinovoip_BPI_M2_defconfig b/configs/Sinovoip_BPI_M2_defconfig
index ebb9e3522644..c080a247105e 100644
--- a/configs/Sinovoip_BPI_M2_defconfig
+++ b/configs/Sinovoip_BPI_M2_defconfig
@@ -7,6 +7,7 @@ CONFIG_DRAM_CLK=432
 CONFIG_USB1_VBUS_PIN=""
 CONFIG_USB2_VBUS_PIN=""
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_PHY_REALTEK=y
 CONFIG_ETH_DESIGNWARE=y
diff --git a/configs/Sinovoip_BPI_M3_defconfig b/configs/Sinovoip_BPI_M3_defconfig
index 23240a138c43..32ec5deca7d8 100644
--- a/configs/Sinovoip_BPI_M3_defconfig
+++ b/configs/Sinovoip_BPI_M3_defconfig
@@ -17,6 +17,7 @@ CONFIG_AXP_GPIO=y
 CONFIG_SATAPWR="PD25"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_CONSOLE_MUX=y
+CONFIG_SPL_STACK=0x8000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_PHY_REALTEK=y
 CONFIG_SUN8I_EMAC=y
diff --git a/configs/Sunchip_CX-A99_defconfig b/configs/Sunchip_CX-A99_defconfig
index ee0c15b9c0a6..749bf1cff9db 100644
--- a/configs/Sunchip_CX-A99_defconfig
+++ b/configs/Sunchip_CX-A99_defconfig
@@ -12,4 +12,5 @@ CONFIG_USB0_VBUS_PIN="PH15"
 CONFIG_USB1_VBUS_PIN="PL7"
 CONFIG_USB3_VBUS_PIN="PL8"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x18000
 CONFIG_SYS_PBSIZE=1024
diff --git a/configs/UTOO_P66_defconfig b/configs/UTOO_P66_defconfig
index 64ab3821890c..4e6652db18f6 100644
--- a/configs/UTOO_P66_defconfig
+++ b/configs/UTOO_P66_defconfig
@@ -20,6 +20,7 @@ CONFIG_VIDEO_LCD_BL_EN="AXP0-1"
 CONFIG_VIDEO_LCD_BL_PWM="PB2"
 CONFIG_VIDEO_LCD_TL059WV5C0=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SYS_I2C_MVTWSI=y
diff --git a/configs/Wexler_TAB7200_defconfig b/configs/Wexler_TAB7200_defconfig
index 9ecb64b3d565..f63d18c327fa 100644
--- a/configs/Wexler_TAB7200_defconfig
+++ b/configs/Wexler_TAB7200_defconfig
@@ -13,6 +13,7 @@ CONFIG_VIDEO_LCD_POWER="PH8"
 CONFIG_VIDEO_LCD_BL_EN="PH7"
 CONFIG_VIDEO_LCD_BL_PWM="PB2"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SYS_I2C_MVTWSI=y
diff --git a/configs/Wits_Pro_A20_DKT_defconfig b/configs/Wits_Pro_A20_DKT_defconfig
index 7deea8af63e3..09608dd1cc2a 100644
--- a/configs/Wits_Pro_A20_DKT_defconfig
+++ b/configs/Wits_Pro_A20_DKT_defconfig
@@ -12,6 +12,7 @@ CONFIG_VIDEO_LCD_BL_PWM="PB2"
 CONFIG_VIDEO_LCD_PANEL_LVDS=y
 CONFIG_AHCI=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SCSI_AHCI=y
diff --git a/configs/Wobo_i5_defconfig b/configs/Wobo_i5_defconfig
index 95279c3ccc92..ab919c0795a8 100644
--- a/configs/Wobo_i5_defconfig
+++ b/configs/Wobo_i5_defconfig
@@ -7,6 +7,7 @@ CONFIG_DRAM_CLK=432
 CONFIG_MMC0_CD_PIN="PB3"
 CONFIG_USB1_VBUS_PIN="PG12"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SYS_I2C_MVTWSI=y
diff --git a/configs/Yones_Toptech_BD1078_defconfig b/configs/Yones_Toptech_BD1078_defconfig
index 89196e8ba28c..1117e147cc17 100644
--- a/configs/Yones_Toptech_BD1078_defconfig
+++ b/configs/Yones_Toptech_BD1078_defconfig
@@ -19,6 +19,7 @@ CONFIG_VIDEO_LCD_BL_PWM="PB2"
 # CONFIG_VIDEO_LCD_BL_PWM_ACTIVE_LOW is not set
 CONFIG_VIDEO_LCD_PANEL_LVDS=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SYS_I2C_MVTWSI=y
diff --git a/configs/Yones_Toptech_BS1078_V2_defconfig b/configs/Yones_Toptech_BS1078_V2_defconfig
index a14881b32933..ef30aee82815 100644
--- a/configs/Yones_Toptech_BS1078_V2_defconfig
+++ b/configs/Yones_Toptech_BS1078_V2_defconfig
@@ -16,6 +16,7 @@ CONFIG_VIDEO_LCD_BL_EN="PA25"
 CONFIG_VIDEO_LCD_BL_PWM="PH13"
 CONFIG_VIDEO_LCD_PANEL_LVDS=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_AXP_DLDO1_VOLT=3300
 CONFIG_USB_MUSB_HOST=y
diff --git a/configs/a64-olinuxino-emmc_defconfig b/configs/a64-olinuxino-emmc_defconfig
index 6a1289758aae..7d8e7649f2a5 100644
--- a/configs/a64-olinuxino-emmc_defconfig
+++ b/configs/a64-olinuxino-emmc_defconfig
@@ -6,6 +6,7 @@ CONFIG_MACH_SUN50I=y
 CONFIG_RESERVE_ALLWINNER_BOOT0_HEADER=y
 CONFIG_MMC_SUNXI_SLOT_EXTRA=2
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x54000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SUPPORT_EMMC_BOOT=y
 CONFIG_SUN8I_EMAC=y
diff --git a/configs/a64-olinuxino_defconfig b/configs/a64-olinuxino_defconfig
index 89618ac6a701..06f51a8f8d31 100644
--- a/configs/a64-olinuxino_defconfig
+++ b/configs/a64-olinuxino_defconfig
@@ -6,6 +6,7 @@ CONFIG_MACH_SUN50I=y
 CONFIG_RESERVE_ALLWINNER_BOOT0_HEADER=y
 CONFIG_MMC_SUNXI_SLOT_EXTRA=2
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x54000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SUN8I_EMAC=y
 CONFIG_USB_EHCI_HCD=y
diff --git a/configs/alt_defconfig b/configs/alt_defconfig
index 897b3a230e2e..4e73e6af7d74 100644
--- a/configs/alt_defconfig
+++ b/configs/alt_defconfig
@@ -34,6 +34,8 @@ CONFIG_SPL_MAX_SIZE=0x4000
 CONFIG_SPL_NO_BSS_LIMIT=y
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xe6340000
 CONFIG_SPL_RAM_SUPPORT=y
 CONFIG_SPL_RAM_DEVICE=y
 CONFIG_SPL_SPI_LOAD=y
diff --git a/configs/amarula_a64_relic_defconfig b/configs/amarula_a64_relic_defconfig
index 2811667c5115..0e173c28c12a 100644
--- a/configs/amarula_a64_relic_defconfig
+++ b/configs/amarula_a64_relic_defconfig
@@ -7,6 +7,7 @@ CONFIG_RESERVE_ALLWINNER_BOOT0_HEADER=y
 CONFIG_MMC_SUNXI_SLOT_EXTRA=2
 # CONFIG_VIDEO_DE2 is not set
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x54000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_USB_EHCI_HCD=y
 CONFIG_USB_OHCI_HCD=y
diff --git a/configs/apalis-tk1_defconfig b/configs/apalis-tk1_defconfig
index 548ff2e21523..3c004695897d 100644
--- a/configs/apalis-tk1_defconfig
+++ b/configs/apalis-tk1_defconfig
@@ -23,6 +23,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_ARCH_MISC_INIT=y
 CONFIG_SPL_FOOTPRINT_LIMIT=y
 CONFIG_SPL_MAX_FOOTPRINT=0x8000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x800ffffc
 CONFIG_SYS_PROMPT="Apalis TK1 # "
 CONFIG_SYS_MAXARGS=32
 CONFIG_SYS_CBSIZE=1024
diff --git a/configs/apalis_imx6_defconfig b/configs/apalis_imx6_defconfig
index 11ee2f3d34a9..96483af9442c 100644
--- a/configs/apalis_imx6_defconfig
+++ b/configs/apalis_imx6_defconfig
@@ -36,6 +36,8 @@ CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
 CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_MISC_INIT_R=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_DMA=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_USB_HOST=y
diff --git a/configs/apalis_t30_defconfig b/configs/apalis_t30_defconfig
index b665ca2f4b44..5b31d4c9943c 100644
--- a/configs/apalis_t30_defconfig
+++ b/configs/apalis_t30_defconfig
@@ -19,6 +19,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_ARCH_MISC_INIT=y
 CONFIG_SPL_FOOTPRINT_LIMIT=y
 CONFIG_SPL_MAX_FOOTPRINT=0x8000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x800ffffc
 CONFIG_SYS_PROMPT="Apalis T30 # "
 CONFIG_SYS_MAXARGS=32
 CONFIG_SYS_CBSIZE=1024
diff --git a/configs/avnet_ultrazedev_cc_v1_0_ultrazedev_som_v1_0_defconfig b/configs/avnet_ultrazedev_cc_v1_0_ultrazedev_som_v1_0_defconfig
index 8f610c42e045..d9330d049dda 100644
--- a/configs/avnet_ultrazedev_cc_v1_0_ultrazedev_som_v1_0_defconfig
+++ b/configs/avnet_ultrazedev_cc_v1_0_ultrazedev_som_v1_0_defconfig
@@ -30,6 +30,8 @@ CONFIG_BOOTDELAY=0
 CONFIG_CLOCKS=y
 CONFIG_SPL_MAX_SIZE=0x40000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xfffffffc
 CONFIG_SPL_FS_LOAD_KERNEL_NAME="atf-uboot.ub"
 CONFIG_SPL_FS_LOAD_ARGS_NAME="u-boot.bin"
 CONFIG_SPL_OS_BOOT=y
diff --git a/configs/axm_defconfig b/configs/axm_defconfig
index 1d49c196f3f9..2a5458b5214b 100644
--- a/configs/axm_defconfig
+++ b/configs/axm_defconfig
@@ -40,6 +40,8 @@ CONFIG_SPL_PAD_TO=0x20000
 CONFIG_SPL_BSS_MAX_SIZE=0x600
 # CONFIG_SPL_LEGACY_IMAGE_FORMAT is not set
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x304000
 CONFIG_SPL_CRC32=y
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_SPL_NAND_RAW_ONLY=y
diff --git a/configs/ba10_tv_box_defconfig b/configs/ba10_tv_box_defconfig
index b14731554b78..66c444fc7507 100644
--- a/configs/ba10_tv_box_defconfig
+++ b/configs/ba10_tv_box_defconfig
@@ -9,6 +9,7 @@ CONFIG_USB0_VBUS_PIN="PB9"
 CONFIG_USB2_VBUS_PIN="PH12"
 CONFIG_VIDEO_COMPOSITE=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SYS_I2C_MVTWSI=y
diff --git a/configs/bananapi_m1_plus_defconfig b/configs/bananapi_m1_plus_defconfig
index 1b5f6ba4d39c..955a60ddc34d 100644
--- a/configs/bananapi_m1_plus_defconfig
+++ b/configs/bananapi_m1_plus_defconfig
@@ -9,6 +9,7 @@ CONFIG_VIDEO_COMPOSITE=y
 CONFIG_GMAC_TX_DELAY=3
 CONFIG_AHCI=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_NETCONSOLE=y
diff --git a/configs/bananapi_m2_berry_defconfig b/configs/bananapi_m2_berry_defconfig
index d7d7ced9d9bf..08f7683233cf 100644
--- a/configs/bananapi_m2_berry_defconfig
+++ b/configs/bananapi_m2_berry_defconfig
@@ -9,6 +9,7 @@ CONFIG_USB1_VBUS_PIN="PH23"
 # CONFIG_HAS_ARMV7_SECURE_BASE is not set
 CONFIG_AHCI=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SCSI_AHCI=y
diff --git a/configs/bananapi_m2_plus_h3_defconfig b/configs/bananapi_m2_plus_h3_defconfig
index d706c9a4e17f..d0981f6481af 100644
--- a/configs/bananapi_m2_plus_h3_defconfig
+++ b/configs/bananapi_m2_plus_h3_defconfig
@@ -7,6 +7,7 @@ CONFIG_DRAM_CLK=672
 CONFIG_MACPWR="PD6"
 CONFIG_MMC_SUNXI_SLOT_EXTRA=2
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SUN8I_EMAC=y
 CONFIG_USB_EHCI_HCD=y
diff --git a/configs/bananapi_m2_plus_h5_defconfig b/configs/bananapi_m2_plus_h5_defconfig
index 111e037ee57e..0fb1bda1c6ef 100644
--- a/configs/bananapi_m2_plus_h5_defconfig
+++ b/configs/bananapi_m2_plus_h5_defconfig
@@ -7,6 +7,7 @@ CONFIG_DRAM_CLK=672
 CONFIG_MACPWR="PD6"
 CONFIG_MMC_SUNXI_SLOT_EXTRA=2
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x54000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SUN8I_EMAC=y
 CONFIG_USB_EHCI_HCD=y
diff --git a/configs/bananapi_m2_zero_defconfig b/configs/bananapi_m2_zero_defconfig
index 74c164c27c56..6a3594c0938d 100644
--- a/configs/bananapi_m2_zero_defconfig
+++ b/configs/bananapi_m2_zero_defconfig
@@ -6,4 +6,5 @@ CONFIG_MACH_SUN8I_H3=y
 CONFIG_DRAM_CLK=408
 CONFIG_MMC0_CD_PIN=""
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SYS_PBSIZE=1024
diff --git a/configs/bananapi_m64_defconfig b/configs/bananapi_m64_defconfig
index 6c1aa1ae7432..5d1d10a0918c 100644
--- a/configs/bananapi_m64_defconfig
+++ b/configs/bananapi_m64_defconfig
@@ -7,6 +7,7 @@ CONFIG_RESERVE_ALLWINNER_BOOT0_HEADER=y
 CONFIG_MMC0_CD_PIN="PH13"
 CONFIG_MMC_SUNXI_SLOT_EXTRA=2
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x54000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SUPPORT_EMMC_BOOT=y
 CONFIG_SUN8I_EMAC=y
diff --git a/configs/beaver_defconfig b/configs/beaver_defconfig
index d61f25376f53..e0e4393d3904 100644
--- a/configs/beaver_defconfig
+++ b/configs/beaver_defconfig
@@ -16,6 +16,8 @@ CONFIG_CONSOLE_MUX=y
 CONFIG_SYS_STDIO_DEREGISTER=y
 CONFIG_SPL_FOOTPRINT_LIMIT=y
 CONFIG_SPL_MAX_FOOTPRINT=0x8000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x800ffffc
 CONFIG_SYS_PROMPT="Tegra30 (Beaver) # "
 CONFIG_SYS_MAXARGS=64
 CONFIG_SYS_PBSIZE=2084
diff --git a/configs/beelink_gs1_defconfig b/configs/beelink_gs1_defconfig
index 339e6c9e3c9c..6453a72a7d78 100644
--- a/configs/beelink_gs1_defconfig
+++ b/configs/beelink_gs1_defconfig
@@ -8,6 +8,7 @@ CONFIG_MMC0_CD_PIN="PF6"
 CONFIG_MMC_SUNXI_SLOT_EXTRA=2
 # CONFIG_PSCI_RESET is not set
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x118000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_LED=y
 CONFIG_LED_GPIO=y
diff --git a/configs/beelink_x2_defconfig b/configs/beelink_x2_defconfig
index 432079a6ad35..4065e64d523f 100644
--- a/configs/beelink_x2_defconfig
+++ b/configs/beelink_x2_defconfig
@@ -6,6 +6,7 @@ CONFIG_MACH_SUN8I_H3=y
 CONFIG_DRAM_CLK=567
 CONFIG_MMC_SUNXI_SLOT_EXTRA=2
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SUN8I_EMAC=y
 CONFIG_USB_EHCI_HCD=y
diff --git a/configs/bitmain_antminer_s9_defconfig b/configs/bitmain_antminer_s9_defconfig
index be5b8a0a3291..02a8435fbcd5 100644
--- a/configs/bitmain_antminer_s9_defconfig
+++ b/configs/bitmain_antminer_s9_defconfig
@@ -29,6 +29,8 @@ CONFIG_USE_PREBOOT=y
 CONFIG_CLOCKS=y
 CONFIG_SPL_MAX_SIZE=0x30000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xfffffe00
 CONFIG_SPL_STACK_R=y
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_PROMPT="antminer> "
diff --git a/configs/brppt2_defconfig b/configs/brppt2_defconfig
index b9f3587bdaaf..af91188b69c4 100644
--- a/configs/brppt2_defconfig
+++ b/configs/brppt2_defconfig
@@ -32,6 +32,8 @@ CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="run b_default"
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_SPL_BOARD_INIT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x91ffb8
 # CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR is not set
 CONFIG_SPL_I2C=y
 CONFIG_SPL_DM_SPI_FLASH=y
diff --git a/configs/cardhu_defconfig b/configs/cardhu_defconfig
index 92729c3179f0..2b73fa22d8a9 100644
--- a/configs/cardhu_defconfig
+++ b/configs/cardhu_defconfig
@@ -15,6 +15,8 @@ CONFIG_CONSOLE_MUX=y
 CONFIG_SYS_STDIO_DEREGISTER=y
 CONFIG_SPL_FOOTPRINT_LIMIT=y
 CONFIG_SPL_MAX_FOOTPRINT=0x8000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x800ffffc
 CONFIG_SYS_PROMPT="Tegra30 (Cardhu) # "
 CONFIG_SYS_MAXARGS=64
 CONFIG_SYS_PBSIZE=2084
diff --git a/configs/cei-tk1-som_defconfig b/configs/cei-tk1-som_defconfig
index 0e583194a13a..7bf45bae4e5a 100644
--- a/configs/cei-tk1-som_defconfig
+++ b/configs/cei-tk1-som_defconfig
@@ -17,6 +17,8 @@ CONFIG_CONSOLE_MUX=y
 CONFIG_SYS_STDIO_DEREGISTER=y
 CONFIG_SPL_FOOTPRINT_LIMIT=y
 CONFIG_SPL_MAX_FOOTPRINT=0x8000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x800ffffc
 CONFIG_SYS_PROMPT="Tegra124 (TK1-SOM) # "
 CONFIG_SYS_MAXARGS=64
 CONFIG_SYS_PBSIZE=2086
diff --git a/configs/cgtqmx8_defconfig b/configs/cgtqmx8_defconfig
index 112a9860d833..d60437884c9c 100644
--- a/configs/cgtqmx8_defconfig
+++ b/configs/cgtqmx8_defconfig
@@ -31,6 +31,8 @@ CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_SPL_MAX_SIZE=0x1f000
 CONFIG_SPL_BSS_MAX_SIZE=0x1000
 CONFIG_SPL_BOARD_INIT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x13e000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x800
 CONFIG_SYS_MMCSD_FS_BOOT_PARTITION=0
diff --git a/configs/chromebit_mickey_defconfig b/configs/chromebit_mickey_defconfig
index 0225e108b537..862b37d0fb64 100644
--- a/configs/chromebit_mickey_defconfig
+++ b/configs/chromebit_mickey_defconfig
@@ -28,6 +28,8 @@ CONFIG_BOARD_EARLY_INIT_R=y
 CONFIG_SPL_PAD_TO=0x7f8000
 CONFIG_SPL_NO_BSS_LIMIT=y
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xff718000
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x2000
 # CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR is not set
diff --git a/configs/chromebook_bob_defconfig b/configs/chromebook_bob_defconfig
index d5676b5ea7a1..21943010f4ed 100644
--- a/configs/chromebook_bob_defconfig
+++ b/configs/chromebook_bob_defconfig
@@ -33,6 +33,8 @@ CONFIG_SPL_PAD_TO=0x7f8000
 CONFIG_SPL_BSS_MAX_SIZE=0x10000
 CONFIG_HANDOFF=y
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xff8effff
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x4000
 CONFIG_SPL_SPI_LOAD=y
diff --git a/configs/chromebook_jerry_defconfig b/configs/chromebook_jerry_defconfig
index 89990e51b783..a0f15f6e7b2d 100644
--- a/configs/chromebook_jerry_defconfig
+++ b/configs/chromebook_jerry_defconfig
@@ -29,6 +29,8 @@ CONFIG_BOARD_EARLY_INIT_R=y
 CONFIG_SPL_PAD_TO=0x7f8000
 CONFIG_SPL_NO_BSS_LIMIT=y
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xff718000
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x2000
 # CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR is not set
diff --git a/configs/chromebook_kevin_defconfig b/configs/chromebook_kevin_defconfig
index 5d95c9e68a6e..7f773fcf90ca 100644
--- a/configs/chromebook_kevin_defconfig
+++ b/configs/chromebook_kevin_defconfig
@@ -34,6 +34,8 @@ CONFIG_SPL_PAD_TO=0x7f8000
 CONFIG_SPL_BSS_MAX_SIZE=0x10000
 CONFIG_HANDOFF=y
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xff8effff
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x4000
 CONFIG_SPL_SPI_LOAD=y
diff --git a/configs/chromebook_minnie_defconfig b/configs/chromebook_minnie_defconfig
index 7542d4fb21b1..513e5f85e9cb 100644
--- a/configs/chromebook_minnie_defconfig
+++ b/configs/chromebook_minnie_defconfig
@@ -29,6 +29,8 @@ CONFIG_BOARD_EARLY_INIT_R=y
 CONFIG_SPL_PAD_TO=0x7f8000
 CONFIG_SPL_NO_BSS_LIMIT=y
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xff718000
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x2000
 # CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR is not set
diff --git a/configs/chromebook_speedy_defconfig b/configs/chromebook_speedy_defconfig
index 2aaa997ef81a..7fc505ee4e36 100644
--- a/configs/chromebook_speedy_defconfig
+++ b/configs/chromebook_speedy_defconfig
@@ -29,6 +29,8 @@ CONFIG_BOARD_EARLY_INIT_R=y
 CONFIG_SPL_PAD_TO=0x7f8000
 CONFIG_SPL_NO_BSS_LIMIT=y
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xff718000
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x2000
 # CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR is not set
diff --git a/configs/ci20_mmc_defconfig b/configs/ci20_mmc_defconfig
index e8bcc0b7f99b..a1c2fa732c12 100644
--- a/configs/ci20_mmc_defconfig
+++ b/configs/ci20_mmc_defconfig
@@ -25,6 +25,8 @@ CONFIG_MISC_INIT_R=y
 CONFIG_SYS_MALLOC_BOOTPARAMS=y
 CONFIG_SPL_MAX_SIZE=0x2e00
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xf4008000
 # CONFIG_SPL_BANNER_PRINT is not set
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x1c
diff --git a/configs/cl-som-imx7_defconfig b/configs/cl-som-imx7_defconfig
index af7fb37afccd..67b70d9523d8 100644
--- a/configs/cl-som-imx7_defconfig
+++ b/configs/cl-som-imx7_defconfig
@@ -28,6 +28,8 @@ CONFIG_BOARD_LATE_INIT=y
 CONFIG_SPL_MAX_SIZE=0xe000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
 CONFIG_SPL_BOARD_INIT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x946bb8
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x80
 CONFIG_SPL_I2C=y
 CONFIG_SPL_SPI_LOAD=y
diff --git a/configs/clearfog_defconfig b/configs/clearfog_defconfig
index fc7aaba37dd6..bbb475e97907 100644
--- a/configs/clearfog_defconfig
+++ b/configs/clearfog_defconfig
@@ -29,6 +29,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_SPL_MAX_SIZE=0x22fd0
 CONFIG_SPL_BSS_MAX_SIZE=0x4000
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x4002c000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_MAXARGS=32
 CONFIG_CMD_TLV_EEPROM=y
diff --git a/configs/cm_fx6_defconfig b/configs/cm_fx6_defconfig
index bb63d5f7756e..d1f8c494ae4e 100644
--- a/configs/cm_fx6_defconfig
+++ b/configs/cm_fx6_defconfig
@@ -30,6 +30,8 @@ CONFIG_BOOTCOMMAND="run findfdt; run distro_bootcmd; run legacy_bootcmd"
 CONFIG_USE_PREBOOT=y
 CONFIG_PREBOOT="usb start;sf probe"
 CONFIG_MISC_INIT_R=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x80
 CONFIG_SPL_I2C=y
 CONFIG_SPL_SPI_LOAD=y
diff --git a/configs/colibri_imx6_defconfig b/configs/colibri_imx6_defconfig
index 1873581e7555..9436f9f0a389 100644
--- a/configs/colibri_imx6_defconfig
+++ b/configs/colibri_imx6_defconfig
@@ -35,6 +35,8 @@ CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
 CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_MISC_INIT_R=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_DMA=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_USB_HOST=y
diff --git a/configs/colibri_t20_defconfig b/configs/colibri_t20_defconfig
index 76eb9e12c29c..1f616af3c52c 100644
--- a/configs/colibri_t20_defconfig
+++ b/configs/colibri_t20_defconfig
@@ -18,6 +18,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_ARCH_MISC_INIT=y
 CONFIG_SPL_FOOTPRINT_LIMIT=y
 CONFIG_SPL_MAX_FOOTPRINT=0x8000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xffffc
 CONFIG_SYS_PROMPT="Colibri T20 # "
 CONFIG_SYS_MAXARGS=32
 CONFIG_SYS_CBSIZE=1024
diff --git a/configs/colibri_t30_defconfig b/configs/colibri_t30_defconfig
index c9f8a5e65e4e..b9012f025827 100644
--- a/configs/colibri_t30_defconfig
+++ b/configs/colibri_t30_defconfig
@@ -19,6 +19,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_ARCH_MISC_INIT=y
 CONFIG_SPL_FOOTPRINT_LIMIT=y
 CONFIG_SPL_MAX_FOOTPRINT=0x8000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x800ffffc
 CONFIG_SYS_PROMPT="Colibri T30 # "
 CONFIG_SYS_MAXARGS=32
 CONFIG_SYS_CBSIZE=1024
diff --git a/configs/colorfly_e708_q1_defconfig b/configs/colorfly_e708_q1_defconfig
index 304ae18a857d..f17083310a27 100644
--- a/configs/colorfly_e708_q1_defconfig
+++ b/configs/colorfly_e708_q1_defconfig
@@ -16,6 +16,7 @@ CONFIG_VIDEO_LCD_BL_EN="PA25"
 CONFIG_VIDEO_LCD_BL_PWM="PH13"
 CONFIG_VIDEO_LCD_PANEL_LVDS=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_AXP_DLDO1_VOLT=3300
 CONFIG_AXP_DLDO2_VOLT=1800
diff --git a/configs/controlcenterdc_defconfig b/configs/controlcenterdc_defconfig
index fd8cbe577dea..9b5380960809 100644
--- a/configs/controlcenterdc_defconfig
+++ b/configs/controlcenterdc_defconfig
@@ -38,6 +38,8 @@ CONFIG_SPL_MAX_SIZE=0x27fd0
 CONFIG_SPL_BSS_MAX_SIZE=0x4000
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x40031000
 CONFIG_SPL_I2C=y
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_MAXARGS=32
diff --git a/configs/corvus_defconfig b/configs/corvus_defconfig
index 9683c662f9dd..e7db00a21223 100644
--- a/configs/corvus_defconfig
+++ b/configs/corvus_defconfig
@@ -36,6 +36,8 @@ CONFIG_SPL_MAX_SIZE=0x3000
 CONFIG_SPL_PAD_TO=0x20000
 CONFIG_SPL_BSS_MAX_SIZE=0x800
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x4000
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_SPL_NAND_RAW_ONLY=y
 CONFIG_SPL_NAND_DRIVERS=y
diff --git a/configs/da850evm_defconfig b/configs/da850evm_defconfig
index 8ddde6a80b59..a4bc7e41265a 100644
--- a/configs/da850evm_defconfig
+++ b/configs/da850evm_defconfig
@@ -39,6 +39,8 @@ CONFIG_SPL_PAD_TO=0x8000
 CONFIG_SPL_FOOTPRINT_LIMIT=y
 CONFIG_SPL_MAX_FOOTPRINT=0x8000
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x8001ff00
 # CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR is not set
 CONFIG_SPL_DM_SPI_FLASH=y
 CONFIG_SPL_SPI_LOAD=y
diff --git a/configs/da850evm_nand_defconfig b/configs/da850evm_nand_defconfig
index 4e3ff7021445..ef180e686431 100644
--- a/configs/da850evm_nand_defconfig
+++ b/configs/da850evm_nand_defconfig
@@ -36,6 +36,8 @@ CONFIG_SPL_PAD_TO=0x8000
 CONFIG_SPL_FOOTPRINT_LIMIT=y
 CONFIG_SPL_MAX_FOOTPRINT=0x8000
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x8001ff00
 # CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR is not set
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_SPL_NAND_DRIVERS=y
diff --git a/configs/dalmore_defconfig b/configs/dalmore_defconfig
index 1a0ad00a3195..7811ef83db86 100644
--- a/configs/dalmore_defconfig
+++ b/configs/dalmore_defconfig
@@ -16,6 +16,8 @@ CONFIG_CONSOLE_MUX=y
 CONFIG_SYS_STDIO_DEREGISTER=y
 CONFIG_SPL_FOOTPRINT_LIMIT=y
 CONFIG_SPL_MAX_FOOTPRINT=0x8000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x800ffffc
 CONFIG_SYS_PROMPT="Tegra114 (Dalmore) # "
 CONFIG_SYS_MAXARGS=64
 CONFIG_SYS_PBSIZE=2086
diff --git a/configs/db-88f6720_defconfig b/configs/db-88f6720_defconfig
index cf7bd174a589..77e0bbc858ae 100644
--- a/configs/db-88f6720_defconfig
+++ b/configs/db-88f6720_defconfig
@@ -28,6 +28,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_SPL_MAX_SIZE=0x1ffd0
 CONFIG_SPL_BSS_MAX_SIZE=0x4000
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x4002c000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_MAXARGS=32
 CONFIG_CMD_I2C=y
diff --git a/configs/db-88f6820-amc_defconfig b/configs/db-88f6820-amc_defconfig
index fc2cd98f9419..5d52c1fcc604 100644
--- a/configs/db-88f6820-amc_defconfig
+++ b/configs/db-88f6820-amc_defconfig
@@ -29,6 +29,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_SPL_MAX_SIZE=0x22fd0
 CONFIG_SPL_BSS_MAX_SIZE=0x4000
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x4002c000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_MAXARGS=96
 # CONFIG_CMD_FLASH is not set
diff --git a/configs/db-88f6820-gp_defconfig b/configs/db-88f6820-gp_defconfig
index 8243a49fba72..04a07e0e812a 100644
--- a/configs/db-88f6820-gp_defconfig
+++ b/configs/db-88f6820-gp_defconfig
@@ -28,6 +28,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_SPL_MAX_SIZE=0x22fd0
 CONFIG_SPL_BSS_MAX_SIZE=0x4000
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x4002c000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_MAXARGS=32
 CONFIG_CMD_I2C=y
diff --git a/configs/db-mv784mp-gp_defconfig b/configs/db-mv784mp-gp_defconfig
index 2f5a3215d990..a1e072545373 100644
--- a/configs/db-mv784mp-gp_defconfig
+++ b/configs/db-mv784mp-gp_defconfig
@@ -28,6 +28,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_SPL_MAX_SIZE=0x1bfd0
 CONFIG_SPL_BSS_MAX_SIZE=0x4000
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x4002c000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_MAXARGS=32
 # CONFIG_CMD_FLASH is not set
diff --git a/configs/deneb_defconfig b/configs/deneb_defconfig
index 42f4d40d9e63..21dfc26c1e06 100644
--- a/configs/deneb_defconfig
+++ b/configs/deneb_defconfig
@@ -40,6 +40,8 @@ CONFIG_SPL_MAX_SIZE=0x1f000
 CONFIG_SPL_BSS_MAX_SIZE=0x1000
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x13e000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x800
 CONFIG_SPL_POWER_DOMAIN=y
diff --git a/configs/devkit3250_defconfig b/configs/devkit3250_defconfig
index f447aecf8b03..5290ac5e82e1 100644
--- a/configs/devkit3250_defconfig
+++ b/configs/devkit3250_defconfig
@@ -29,6 +29,8 @@ CONFIG_SPL_MAX_SIZE=0x20000
 CONFIG_SPL_NO_BSS_LIMIT=y
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xfff8
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_SPL_NAND_RAW_ONLY=y
 CONFIG_SPL_NAND_DRIVERS=y
diff --git a/configs/dh_imx6_defconfig b/configs/dh_imx6_defconfig
index 8c0b9b3d4565..05b9eb8cbf3d 100644
--- a/configs/dh_imx6_defconfig
+++ b/configs/dh_imx6_defconfig
@@ -35,6 +35,8 @@ CONFIG_SPL_FIT=y
 CONFIG_BOOTDELAY=3
 # CONFIG_USE_BOOTCOMMAND is not set
 CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x11400
 CONFIG_SYS_MAXARGS=32
diff --git a/configs/difrnce_dit4350_defconfig b/configs/difrnce_dit4350_defconfig
index 29d9978cb32f..a3917eaf1794 100644
--- a/configs/difrnce_dit4350_defconfig
+++ b/configs/difrnce_dit4350_defconfig
@@ -15,6 +15,7 @@ CONFIG_VIDEO_LCD_POWER="AXP0-0"
 CONFIG_VIDEO_LCD_BL_EN="AXP0-1"
 CONFIG_VIDEO_LCD_BL_PWM="PB2"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SYS_I2C_MVTWSI=y
diff --git a/configs/display5_defconfig b/configs/display5_defconfig
index 2b92ed95b4b7..b39b4de2c153 100644
--- a/configs/display5_defconfig
+++ b/configs/display5_defconfig
@@ -37,6 +37,8 @@ CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="if run check_em_pad; then run recovery;else if test ${BOOT_FROM} = FACTORY; then run factory_nfs;else run boot_mmc;fi;fi"
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_BOOTCOUNT_LIMIT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x91ffb8
 # CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR is not set
 CONFIG_SPL_DMA=y
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/display5_factory_defconfig b/configs/display5_factory_defconfig
index 9c3965c0a6f5..163737cb5db2 100644
--- a/configs/display5_factory_defconfig
+++ b/configs/display5_factory_defconfig
@@ -34,6 +34,8 @@ CONFIG_BOOTDELAY=3
 CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="echo SDP Display5 recovery"
 CONFIG_MISC_INIT_R=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x91ffb8
 # CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR is not set
 CONFIG_SPL_DMA=y
 CONFIG_SPL_I2C=y
diff --git a/configs/ds414_defconfig b/configs/ds414_defconfig
index 73907b3e3896..b0288f57b0d1 100644
--- a/configs/ds414_defconfig
+++ b/configs/ds414_defconfig
@@ -36,6 +36,8 @@ CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x1bfd0
 CONFIG_SPL_BSS_MAX_SIZE=0x4000
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x4002c000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_MAXARGS=32
 # CONFIG_CMD_FLASH is not set
diff --git a/configs/dserve_dsrv9703c_defconfig b/configs/dserve_dsrv9703c_defconfig
index dfc270ccc52a..c737cdb4d99c 100644
--- a/configs/dserve_dsrv9703c_defconfig
+++ b/configs/dserve_dsrv9703c_defconfig
@@ -14,6 +14,7 @@ CONFIG_VIDEO_LCD_BL_EN="PH7"
 CONFIG_VIDEO_LCD_BL_PWM="PB2"
 CONFIG_VIDEO_LCD_PANEL_LVDS=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SYS_I2C_MVTWSI=y
diff --git a/configs/edminiv2_defconfig b/configs/edminiv2_defconfig
index ace1f768c214..dd6118bf2129 100644
--- a/configs/edminiv2_defconfig
+++ b/configs/edminiv2_defconfig
@@ -25,6 +25,8 @@ CONFIG_RESET_PHY_R=y
 CONFIG_SPL_MAX_SIZE=0xfff0
 CONFIG_SPL_BSS_MAX_SIZE=0x1ffff
 CONFIG_SPL_BOARD_INIT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x20000
 CONFIG_SPL_NOR_SUPPORT=y
 CONFIG_HUSH_PARSER=y
 # CONFIG_AUTO_COMPLETE is not set
diff --git a/configs/emlid_neutis_n5_devboard_defconfig b/configs/emlid_neutis_n5_devboard_defconfig
index e54f4aa75245..d9272eae168f 100644
--- a/configs/emlid_neutis_n5_devboard_defconfig
+++ b/configs/emlid_neutis_n5_devboard_defconfig
@@ -8,5 +8,6 @@ CONFIG_DRAM_ZQ=3881977
 # CONFIG_DRAM_ODT_EN is not set
 CONFIG_MMC_SUNXI_SLOT_EXTRA=2
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x54000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SUPPORT_EMMC_BOOT=y
diff --git a/configs/evb-px30_defconfig b/configs/evb-px30_defconfig
index 019e9422192e..7b1138ee63fb 100644
--- a/configs/evb-px30_defconfig
+++ b/configs/evb-px30_defconfig
@@ -35,6 +35,8 @@ CONFIG_SPL_PAD_TO=0x7f8000
 CONFIG_SPL_BSS_MAX_SIZE=0x4000
 CONFIG_SPL_BOOTROM_SUPPORT=y
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x400000
 CONFIG_SPL_STACK_R=y
 # CONFIG_TPL_BANNER_PRINT is not set
 CONFIG_SPL_ATF=y
diff --git a/configs/evb-px5_defconfig b/configs/evb-px5_defconfig
index 238ef9a9e8db..753e6edc35d6 100644
--- a/configs/evb-px5_defconfig
+++ b/configs/evb-px5_defconfig
@@ -40,6 +40,8 @@ CONFIG_SPL_BSS_MAX_SIZE=0x20000
 CONFIG_SPL_BOOTROM_SUPPORT=y
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
 CONFIG_TPL_SYS_MALLOC_SIMPLE=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x188000
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_ATF=y
 CONFIG_SPL_ATF_NO_PLATFORM_PARAM=y
diff --git a/configs/evb-rk3288_defconfig b/configs/evb-rk3288_defconfig
index 7c91aacabd67..6587c19c36a1 100644
--- a/configs/evb-rk3288_defconfig
+++ b/configs/evb-rk3288_defconfig
@@ -28,6 +28,8 @@ CONFIG_SILENT_CONSOLE=y
 CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_SPL_PAD_TO=0x7f8000
 CONFIG_SPL_NO_BSS_LIMIT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xff718000
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x10000
 CONFIG_SPL_OPTEE_IMAGE=y
diff --git a/configs/evb-rk3308_defconfig b/configs/evb-rk3308_defconfig
index 8d9ca36cdde7..e871ba1b8e76 100644
--- a/configs/evb-rk3308_defconfig
+++ b/configs/evb-rk3308_defconfig
@@ -27,6 +27,8 @@ CONFIG_SYS_CONSOLE_INFO_QUIET=y
 CONFIG_SPL_MAX_SIZE=0x20000
 CONFIG_SPL_PAD_TO=0x7f8000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x400000
 CONFIG_SPL_STACK_R=y
 # CONFIG_CMD_BDI is not set
 # CONFIG_CMD_CONSOLE is not set
diff --git a/configs/evb-rk3328_defconfig b/configs/evb-rk3328_defconfig
index 3aa1ce733c8c..f247f692a0c7 100644
--- a/configs/evb-rk3328_defconfig
+++ b/configs/evb-rk3328_defconfig
@@ -32,6 +32,8 @@ CONFIG_SPL_PAD_TO=0x7f8000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
 CONFIG_TPL_SYS_MALLOC_SIMPLE=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x400000
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x10000
 CONFIG_SPL_ATF=y
diff --git a/configs/evb-rk3399_defconfig b/configs/evb-rk3399_defconfig
index 186ecd1f9d53..a2f0698525b5 100644
--- a/configs/evb-rk3399_defconfig
+++ b/configs/evb-rk3399_defconfig
@@ -20,6 +20,8 @@ CONFIG_SPL_MAX_SIZE=0x2e000
 CONFIG_SPL_PAD_TO=0x7f8000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x400000
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x10000
 CONFIG_TPL=y
diff --git a/configs/evb-rk3568_defconfig b/configs/evb-rk3568_defconfig
index 8d1e45391ddd..6afd5d6d70fc 100644
--- a/configs/evb-rk3568_defconfig
+++ b/configs/evb-rk3568_defconfig
@@ -30,6 +30,8 @@ CONFIG_SPL_MAX_SIZE=0x20000
 CONFIG_SPL_PAD_TO=0x7f8000
 CONFIG_SPL_BSS_MAX_SIZE=0x4000
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x400000
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_ATF=y
 CONFIG_CMD_GPT=y
diff --git a/configs/ficus-rk3399_defconfig b/configs/ficus-rk3399_defconfig
index fac88892d662..7012c02f28eb 100644
--- a/configs/ficus-rk3399_defconfig
+++ b/configs/ficus-rk3399_defconfig
@@ -20,6 +20,8 @@ CONFIG_SPL_MAX_SIZE=0x2e000
 CONFIG_SPL_PAD_TO=0x7f8000
 CONFIG_SPL_BSS_MAX_SIZE=0x10000
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xff8effff
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x4000
 CONFIG_CMD_BOOTZ=y
diff --git a/configs/firefly-px30_defconfig b/configs/firefly-px30_defconfig
index 4330885a306e..31374c55d8c3 100644
--- a/configs/firefly-px30_defconfig
+++ b/configs/firefly-px30_defconfig
@@ -36,6 +36,8 @@ CONFIG_SPL_PAD_TO=0x7f8000
 CONFIG_SPL_BSS_MAX_SIZE=0x4000
 CONFIG_SPL_BOOTROM_SUPPORT=y
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x400000
 CONFIG_SPL_STACK_R=y
 # CONFIG_TPL_BANNER_PRINT is not set
 CONFIG_SPL_ATF=y
diff --git a/configs/firefly-rk3288_defconfig b/configs/firefly-rk3288_defconfig
index 6351ba1715f1..c2b3a0e315de 100644
--- a/configs/firefly-rk3288_defconfig
+++ b/configs/firefly-rk3288_defconfig
@@ -24,6 +24,8 @@ CONFIG_SILENT_CONSOLE=y
 CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_SPL_PAD_TO=0x7f8000
 CONFIG_SPL_NO_BSS_LIMIT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xff718000
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x2000
 CONFIG_CMD_GPIO=y
diff --git a/configs/firefly-rk3399_defconfig b/configs/firefly-rk3399_defconfig
index 2be11295243f..2f7cb97aa653 100644
--- a/configs/firefly-rk3399_defconfig
+++ b/configs/firefly-rk3399_defconfig
@@ -21,6 +21,8 @@ CONFIG_SPL_MAX_SIZE=0x2e000
 CONFIG_SPL_PAD_TO=0x7f8000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x400000
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x10000
 CONFIG_TPL=y
diff --git a/configs/ga10h_v1_1_defconfig b/configs/ga10h_v1_1_defconfig
index 440a263c191c..7cdb6c56755b 100644
--- a/configs/ga10h_v1_1_defconfig
+++ b/configs/ga10h_v1_1_defconfig
@@ -17,6 +17,7 @@ CONFIG_VIDEO_LCD_BL_EN="PH6"
 CONFIG_VIDEO_LCD_BL_PWM="PH0"
 CONFIG_VIDEO_LCD_PANEL_LVDS=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_AXP_DLDO1_VOLT=3300
 CONFIG_CONS_INDEX=5
diff --git a/configs/gardena-smart-gateway-at91sam_defconfig b/configs/gardena-smart-gateway-at91sam_defconfig
index 8e509f699daf..42d700b6cd58 100644
--- a/configs/gardena-smart-gateway-at91sam_defconfig
+++ b/configs/gardena-smart-gateway-at91sam_defconfig
@@ -38,6 +38,8 @@ CONFIG_SPL_MAX_SIZE=0x7000
 CONFIG_SPL_PAD_TO=0x40000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x308000
 # CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR is not set
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_SPL_NAND_RAW_ONLY=y
diff --git a/configs/ge_b1x5v2_defconfig b/configs/ge_b1x5v2_defconfig
index fd1f3e37de33..5966870df2d7 100644
--- a/configs/ge_b1x5v2_defconfig
+++ b/configs/ge_b1x5v2_defconfig
@@ -37,6 +37,8 @@ CONFIG_LOG_MAX_LEVEL=8
 CONFIG_LOG_DEFAULT_LEVEL=4
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_MISC_INIT_R=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x11400
 CONFIG_SPL_USB_HOST=y
diff --git a/configs/giedi_defconfig b/configs/giedi_defconfig
index ae05c9a71929..ec6082a92c6a 100644
--- a/configs/giedi_defconfig
+++ b/configs/giedi_defconfig
@@ -40,6 +40,8 @@ CONFIG_SPL_MAX_SIZE=0x1f000
 CONFIG_SPL_BSS_MAX_SIZE=0x1000
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x13e000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x800
 CONFIG_SPL_POWER_DOMAIN=y
diff --git a/configs/gose_defconfig b/configs/gose_defconfig
index 9099f5dc9880..350c4ec3f0ec 100644
--- a/configs/gose_defconfig
+++ b/configs/gose_defconfig
@@ -34,6 +34,8 @@ CONFIG_SPL_MAX_SIZE=0x4000
 CONFIG_SPL_NO_BSS_LIMIT=y
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xe6340000
 CONFIG_SPL_RAM_SUPPORT=y
 CONFIG_SPL_RAM_DEVICE=y
 CONFIG_SPL_SPI_LOAD=y
diff --git a/configs/gt90h_v4_defconfig b/configs/gt90h_v4_defconfig
index 929d93c88997..c81f0f6c5eb9 100644
--- a/configs/gt90h_v4_defconfig
+++ b/configs/gt90h_v4_defconfig
@@ -16,6 +16,7 @@ CONFIG_VIDEO_LCD_POWER="PH7"
 CONFIG_VIDEO_LCD_BL_EN="PH6"
 CONFIG_VIDEO_LCD_BL_PWM="PH0"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_AXP_DLDO1_VOLT=3300
 CONFIG_CONS_INDEX=5
diff --git a/configs/gwventana_emmc_defconfig b/configs/gwventana_emmc_defconfig
index f0e720463b67..ef4829c54780 100644
--- a/configs/gwventana_emmc_defconfig
+++ b/configs/gwventana_emmc_defconfig
@@ -40,6 +40,8 @@ CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_MISC_INIT_R=y
 CONFIG_PCI_INIT_R=y
 CONFIG_SPL_BOARD_INIT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_FIT_IMAGE_TINY=y
 CONFIG_SPL_DMA=y
diff --git a/configs/gwventana_gw5904_defconfig b/configs/gwventana_gw5904_defconfig
index 53d5bddd6197..e070dc88b331 100644
--- a/configs/gwventana_gw5904_defconfig
+++ b/configs/gwventana_gw5904_defconfig
@@ -40,6 +40,8 @@ CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_MISC_INIT_R=y
 CONFIG_PCI_INIT_R=y
 CONFIG_SPL_BOARD_INIT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_FIT_IMAGE_TINY=y
 CONFIG_SPL_DMA=y
diff --git a/configs/gwventana_nand_defconfig b/configs/gwventana_nand_defconfig
index e0225278582a..a279935c124e 100644
--- a/configs/gwventana_nand_defconfig
+++ b/configs/gwventana_nand_defconfig
@@ -40,6 +40,8 @@ CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_MISC_INIT_R=y
 CONFIG_PCI_INIT_R=y
 CONFIG_SPL_BOARD_INIT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_FIT_IMAGE_TINY=y
 CONFIG_SPL_DMA=y
diff --git a/configs/h8_homlet_v2_defconfig b/configs/h8_homlet_v2_defconfig
index 795de6f3ee96..8af0b3c33324 100644
--- a/configs/h8_homlet_v2_defconfig
+++ b/configs/h8_homlet_v2_defconfig
@@ -11,6 +11,7 @@ CONFIG_USB1_VBUS_PIN="PL6"
 CONFIG_AXP_GPIO=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_CONSOLE_MUX=y
+CONFIG_SPL_STACK=0x8000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_AXP_DLDO4_VOLT=3300
 CONFIG_USB_EHCI_HCD=y
diff --git a/configs/harmony_defconfig b/configs/harmony_defconfig
index 6497d41f97c2..50a210703d47 100644
--- a/configs/harmony_defconfig
+++ b/configs/harmony_defconfig
@@ -14,6 +14,8 @@ CONFIG_OF_SYSTEM_SETUP=y
 CONFIG_SYS_STDIO_DEREGISTER=y
 CONFIG_SPL_FOOTPRINT_LIMIT=y
 CONFIG_SPL_MAX_FOOTPRINT=0x8000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xffffc
 CONFIG_SYS_PROMPT="Tegra20 (Harmony) # "
 CONFIG_SYS_MAXARGS=64
 CONFIG_SYS_PBSIZE=2085
diff --git a/configs/helios4_defconfig b/configs/helios4_defconfig
index d52d07a87ef1..9384aa50fb7e 100644
--- a/configs/helios4_defconfig
+++ b/configs/helios4_defconfig
@@ -29,6 +29,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_SPL_MAX_SIZE=0x22fd0
 CONFIG_SPL_BSS_MAX_SIZE=0x4000
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x4002c000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_MAXARGS=32
 CONFIG_CMD_TLV_EEPROM=y
diff --git a/configs/i12-tvbox_defconfig b/configs/i12-tvbox_defconfig
index a336dd47f052..29cea180201c 100644
--- a/configs/i12-tvbox_defconfig
+++ b/configs/i12-tvbox_defconfig
@@ -7,6 +7,7 @@ CONFIG_DRAM_CLK=384
 CONFIG_MACPWR="PH21"
 CONFIG_VIDEO_COMPOSITE=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SYS_I2C_MVTWSI=y
diff --git a/configs/iNet_3F_defconfig b/configs/iNet_3F_defconfig
index 88d48610b25f..8b6936497fd5 100644
--- a/configs/iNet_3F_defconfig
+++ b/configs/iNet_3F_defconfig
@@ -14,6 +14,7 @@ CONFIG_VIDEO_LCD_BL_EN="PH7"
 CONFIG_VIDEO_LCD_BL_PWM="PB2"
 CONFIG_VIDEO_LCD_PANEL_LVDS=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SYS_I2C_MVTWSI=y
diff --git a/configs/iNet_3W_defconfig b/configs/iNet_3W_defconfig
index 91b7807e2ae6..a05876a18f3f 100644
--- a/configs/iNet_3W_defconfig
+++ b/configs/iNet_3W_defconfig
@@ -14,6 +14,7 @@ CONFIG_VIDEO_LCD_POWER="PH8"
 CONFIG_VIDEO_LCD_BL_EN="PH7"
 CONFIG_VIDEO_LCD_BL_PWM="PB2"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SYS_I2C_MVTWSI=y
diff --git a/configs/iNet_86VS_defconfig b/configs/iNet_86VS_defconfig
index f4943012e21c..3a9f30877b03 100644
--- a/configs/iNet_86VS_defconfig
+++ b/configs/iNet_86VS_defconfig
@@ -13,6 +13,7 @@ CONFIG_VIDEO_LCD_POWER="AXP0-0"
 CONFIG_VIDEO_LCD_BL_EN="AXP0-1"
 CONFIG_VIDEO_LCD_BL_PWM="PB2"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SYS_I2C_MVTWSI=y
diff --git a/configs/iNet_D978_rev2_defconfig b/configs/iNet_D978_rev2_defconfig
index 339e9f6d12d4..664745c9f135 100644
--- a/configs/iNet_D978_rev2_defconfig
+++ b/configs/iNet_D978_rev2_defconfig
@@ -17,6 +17,7 @@ CONFIG_VIDEO_LCD_BL_EN="PH6"
 CONFIG_VIDEO_LCD_BL_PWM="PH0"
 CONFIG_VIDEO_LCD_PANEL_LVDS=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_AXP_DLDO1_VOLT=3300
 # CONFIG_REQUIRE_SERIAL_CONSOLE is not set
diff --git a/configs/icnova-a20-swac_defconfig b/configs/icnova-a20-swac_defconfig
index 44080b998658..afe5b28e66b9 100644
--- a/configs/icnova-a20-swac_defconfig
+++ b/configs/icnova-a20-swac_defconfig
@@ -19,6 +19,7 @@ CONFIG_VIDEO_LCD_MODE="x:800,y:480,depth:24,pclk_khz:33000,le:45,ri:209,up:22,lo
 CONFIG_VIDEO_LCD_POWER="PH22"
 CONFIG_VIDEO_LCD_PANEL_LVDS=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_CMD_UNZIP=y
diff --git a/configs/imx28_xea_defconfig b/configs/imx28_xea_defconfig
index 8388cd631f25..f460a01e8cef 100644
--- a/configs/imx28_xea_defconfig
+++ b/configs/imx28_xea_defconfig
@@ -36,6 +36,8 @@ CONFIG_SPL_NO_BSS_LIMIT=y
 CONFIG_SPL_BOARD_INIT=y
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x20000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x0
 CONFIG_SUPPORT_EMMC_BOOT_OVERRIDE_PART_CONFIG=y
diff --git a/configs/imx6dl_icore_nand_defconfig b/configs/imx6dl_icore_nand_defconfig
index c98a5cc735a8..48e075345354 100644
--- a/configs/imx6dl_icore_nand_defconfig
+++ b/configs/imx6dl_icore_nand_defconfig
@@ -24,6 +24,8 @@ CONFIG_LEGACY_IMAGE_FORMAT=y
 CONFIG_BOOTDELAY=3
 CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="run $modeboot"
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_DMA=y
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_SPL_WATCHDOG=y
diff --git a/configs/imx6dl_mamoj_defconfig b/configs/imx6dl_mamoj_defconfig
index 6f249dbe2fcd..0595dccaea7c 100644
--- a/configs/imx6dl_mamoj_defconfig
+++ b/configs/imx6dl_mamoj_defconfig
@@ -17,6 +17,8 @@ CONFIG_SYS_MEMTEST_END=0x88000000
 CONFIG_LTO=y
 CONFIG_DISTRO_DEFAULTS=y
 CONFIG_BOOTDELAY=3
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_OS_BOOT=y
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1000
diff --git a/configs/imx6q_bosch_acc_defconfig b/configs/imx6q_bosch_acc_defconfig
index 4b75e5794e99..a052193cb760 100644
--- a/configs/imx6q_bosch_acc_defconfig
+++ b/configs/imx6q_bosch_acc_defconfig
@@ -34,6 +34,8 @@ CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="run mmc_mmc_fit"
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_RAW_IMAGE_SUPPORT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0xaa
 # CONFIG_SPL_CRC32 is not set
 # CONFIG_SPL_CRYPTO is not set
diff --git a/configs/imx6q_icore_nand_defconfig b/configs/imx6q_icore_nand_defconfig
index 278bc98cbc17..340766919d65 100644
--- a/configs/imx6q_icore_nand_defconfig
+++ b/configs/imx6q_icore_nand_defconfig
@@ -25,6 +25,8 @@ CONFIG_SUPPORT_RAW_INITRD=y
 CONFIG_BOOTDELAY=3
 CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="run $modeboot"
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_DMA=y
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_SPL_WATCHDOG=y
diff --git a/configs/imx6q_logic_defconfig b/configs/imx6q_logic_defconfig
index c5ad6dcdd1f2..2d8b83c9f1b4 100644
--- a/configs/imx6q_logic_defconfig
+++ b/configs/imx6q_logic_defconfig
@@ -27,6 +27,8 @@ CONFIG_BOOTCOMMAND="run autoboot"
 CONFIG_SYS_CONSOLE_IS_IN_ENV=y
 CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
 CONFIG_SPL_RAW_IMAGE_SUPPORT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x93ffb8
 # CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR is not set
 CONFIG_SPL_DMA=y
 CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot-dtb.img"
diff --git a/configs/imx6qdl_icore_mipi_defconfig b/configs/imx6qdl_icore_mipi_defconfig
index a2f1abe1aa6e..d1136ff97175 100644
--- a/configs/imx6qdl_icore_mipi_defconfig
+++ b/configs/imx6qdl_icore_mipi_defconfig
@@ -33,6 +33,8 @@ CONFIG_BOOTDELAY=3
 CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="run $modeboot"
 CONFIG_SPL_RAW_IMAGE_SUPPORT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_OS_BOOT=y
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1000
diff --git a/configs/imx6qdl_icore_mmc_defconfig b/configs/imx6qdl_icore_mmc_defconfig
index 91b32e4a0353..7f60a1290b7e 100644
--- a/configs/imx6qdl_icore_mmc_defconfig
+++ b/configs/imx6qdl_icore_mmc_defconfig
@@ -36,6 +36,8 @@ CONFIG_BOOTDELAY=3
 CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="run $modeboot"
 CONFIG_SPL_RAW_IMAGE_SUPPORT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_OS_BOOT=y
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1000
diff --git a/configs/imx6qdl_icore_nand_defconfig b/configs/imx6qdl_icore_nand_defconfig
index 278bc98cbc17..340766919d65 100644
--- a/configs/imx6qdl_icore_nand_defconfig
+++ b/configs/imx6qdl_icore_nand_defconfig
@@ -25,6 +25,8 @@ CONFIG_SUPPORT_RAW_INITRD=y
 CONFIG_BOOTDELAY=3
 CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="run $modeboot"
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_DMA=y
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_SPL_WATCHDOG=y
diff --git a/configs/imx6qdl_icore_rqs_defconfig b/configs/imx6qdl_icore_rqs_defconfig
index cfd35608cfcc..f4ce0bdc33a0 100644
--- a/configs/imx6qdl_icore_rqs_defconfig
+++ b/configs/imx6qdl_icore_rqs_defconfig
@@ -30,6 +30,8 @@ CONFIG_BOOTDELAY=3
 CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="run $modeboot"
 CONFIG_SPL_RAW_IMAGE_SUPPORT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_OS_BOOT=y
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1000
diff --git a/configs/imx6ul_geam_mmc_defconfig b/configs/imx6ul_geam_mmc_defconfig
index a84547feddd9..dc517d8bdc96 100644
--- a/configs/imx6ul_geam_mmc_defconfig
+++ b/configs/imx6ul_geam_mmc_defconfig
@@ -28,6 +28,8 @@ CONFIG_BOOTDELAY=3
 CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="run $modeboot"
 CONFIG_SPL_RAW_IMAGE_SUPPORT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_WATCHDOG=y
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_PROMPT="geam6ul> "
diff --git a/configs/imx6ul_geam_nand_defconfig b/configs/imx6ul_geam_nand_defconfig
index 8bd4360efd2e..ad7c821ebaf5 100644
--- a/configs/imx6ul_geam_nand_defconfig
+++ b/configs/imx6ul_geam_nand_defconfig
@@ -25,6 +25,8 @@ CONFIG_SUPPORT_RAW_INITRD=y
 CONFIG_BOOTDELAY=3
 CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="run $modeboot"
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_DMA=y
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_SPL_WATCHDOG=y
diff --git a/configs/imx6ul_isiot_emmc_defconfig b/configs/imx6ul_isiot_emmc_defconfig
index 9262055f1da5..0a451618e78e 100644
--- a/configs/imx6ul_isiot_emmc_defconfig
+++ b/configs/imx6ul_isiot_emmc_defconfig
@@ -28,6 +28,8 @@ CONFIG_BOOTDELAY=3
 CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="run $modeboot"
 CONFIG_SPL_RAW_IMAGE_SUPPORT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_WATCHDOG=y
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_PROMPT="isiotmx6ul> "
diff --git a/configs/imx6ul_isiot_nand_defconfig b/configs/imx6ul_isiot_nand_defconfig
index d1da6da311c8..dd8543d5f5c2 100644
--- a/configs/imx6ul_isiot_nand_defconfig
+++ b/configs/imx6ul_isiot_nand_defconfig
@@ -25,6 +25,8 @@ CONFIG_SUPPORT_RAW_INITRD=y
 CONFIG_BOOTDELAY=3
 CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="run $modeboot"
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_DMA=y
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_SPL_WATCHDOG=y
diff --git a/configs/imx7_cm_defconfig b/configs/imx7_cm_defconfig
index 351d47fe552e..8b05ee2f6df5 100644
--- a/configs/imx7_cm_defconfig
+++ b/configs/imx7_cm_defconfig
@@ -26,6 +26,8 @@ CONFIG_DEFAULT_FDT_FILE="ask"
 # CONFIG_BOARD_EARLY_INIT_F is not set
 CONFIG_SPL_MAX_SIZE=0xe000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x946bb8
 CONFIG_SPL_I2C=y
 CONFIG_SPL_USB_HOST=y
 CONFIG_SPL_USB_GADGET=y
diff --git a/configs/imx8mm-cl-iot-gate-optee_defconfig b/configs/imx8mm-cl-iot-gate-optee_defconfig
index f2ce0a712dbf..64d2befc98c6 100644
--- a/configs/imx8mm-cl-iot-gate-optee_defconfig
+++ b/configs/imx8mm-cl-iot-gate-optee_defconfig
@@ -26,6 +26,8 @@ CONFIG_BOARD_LATE_INIT=y
 CONFIG_SPL_MAX_SIZE=0x25000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_BOARD_INIT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x920000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_I2C=y
diff --git a/configs/imx8mm-cl-iot-gate_defconfig b/configs/imx8mm-cl-iot-gate_defconfig
index add2687779e0..2494d1a79b0e 100644
--- a/configs/imx8mm-cl-iot-gate_defconfig
+++ b/configs/imx8mm-cl-iot-gate_defconfig
@@ -28,6 +28,8 @@ CONFIG_BOARD_LATE_INIT=y
 CONFIG_SPL_MAX_SIZE=0x25000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_BOARD_INIT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x920000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_I2C=y
diff --git a/configs/imx8mm-icore-mx8mm-ctouch2_defconfig b/configs/imx8mm-icore-mx8mm-ctouch2_defconfig
index 6e3cb0601e11..5196f6f0ea2c 100644
--- a/configs/imx8mm-icore-mx8mm-ctouch2_defconfig
+++ b/configs/imx8mm-icore-mx8mm-ctouch2_defconfig
@@ -26,6 +26,8 @@ CONFIG_DEFAULT_FDT_FILE="imx8mm-icore-mx8mm-ctouch2.dtb"
 CONFIG_SPL_MAX_SIZE=0x25000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_BOARD_INIT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x920000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_POWER=y
diff --git a/configs/imx8mm-icore-mx8mm-edimm2.2_defconfig b/configs/imx8mm-icore-mx8mm-edimm2.2_defconfig
index 3a2259515e07..cf385a625b3f 100644
--- a/configs/imx8mm-icore-mx8mm-edimm2.2_defconfig
+++ b/configs/imx8mm-icore-mx8mm-edimm2.2_defconfig
@@ -26,6 +26,8 @@ CONFIG_DEFAULT_FDT_FILE="imx8mm-icore-mx8mm-edimm2.2.dtb"
 CONFIG_SPL_MAX_SIZE=0x25000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_BOARD_INIT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x920000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_POWER=y
diff --git a/configs/imx8mm-mx8menlo_defconfig b/configs/imx8mm-mx8menlo_defconfig
index 1eb00e1a745d..f104dada533a 100644
--- a/configs/imx8mm-mx8menlo_defconfig
+++ b/configs/imx8mm-mx8menlo_defconfig
@@ -37,6 +37,8 @@ CONFIG_BOARD_LATE_INIT=y
 CONFIG_SPL_MAX_SIZE=0x25000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_BOARD_INIT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x920000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_I2C=y
diff --git a/configs/imx8mm_beacon_defconfig b/configs/imx8mm_beacon_defconfig
index d11671f0346e..3481aff6d55f 100644
--- a/configs/imx8mm_beacon_defconfig
+++ b/configs/imx8mm_beacon_defconfig
@@ -28,6 +28,8 @@ CONFIG_DEFAULT_FDT_FILE="imx8mm-beacon-kit.dtb"
 CONFIG_SPL_MAX_SIZE=0x25000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_BOARD_INIT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x920000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_I2C=y
diff --git a/configs/imx8mm_data_modul_edm_sbc_defconfig b/configs/imx8mm_data_modul_edm_sbc_defconfig
index b76f4c44e316..3e141aef6c37 100644
--- a/configs/imx8mm_data_modul_edm_sbc_defconfig
+++ b/configs/imx8mm_data_modul_edm_sbc_defconfig
@@ -46,6 +46,8 @@ CONFIG_SPL_BSS_MAX_SIZE=0x2000
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
 CONFIG_SPL_LEGACY_IMAGE_FORMAT=y
 CONFIG_SPL_LEGACY_IMAGE_CRC_CHECK=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x920000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_I2C=y
diff --git a/configs/imx8mm_evk_defconfig b/configs/imx8mm_evk_defconfig
index 00f605804df4..2d73d2454dea 100644
--- a/configs/imx8mm_evk_defconfig
+++ b/configs/imx8mm_evk_defconfig
@@ -26,6 +26,8 @@ CONFIG_BOARD_LATE_INIT=y
 CONFIG_SPL_MAX_SIZE=0x25000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_BOARD_INIT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x920000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_I2C=y
diff --git a/configs/imx8mm_venice_defconfig b/configs/imx8mm_venice_defconfig
index 1db032f39ec8..3f8662ac7155 100644
--- a/configs/imx8mm_venice_defconfig
+++ b/configs/imx8mm_venice_defconfig
@@ -33,6 +33,8 @@ CONFIG_PREBOOT="gsc wd-disable"
 CONFIG_BOARD_LATE_INIT=y
 CONFIG_SPL_MAX_SIZE=0x25000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x920000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_I2C=y
diff --git a/configs/imx8mn_beacon_2g_defconfig b/configs/imx8mn_beacon_2g_defconfig
index 905d3e502abd..bb503652362e 100644
--- a/configs/imx8mn_beacon_2g_defconfig
+++ b/configs/imx8mn_beacon_2g_defconfig
@@ -36,6 +36,8 @@ CONFIG_SPL_MAX_SIZE=0x25000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_BOOTROM_SUPPORT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x187ff0
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_I2C=y
diff --git a/configs/imx8mn_beacon_defconfig b/configs/imx8mn_beacon_defconfig
index f4b61c1aa5de..95e4cc432ada 100644
--- a/configs/imx8mn_beacon_defconfig
+++ b/configs/imx8mn_beacon_defconfig
@@ -35,6 +35,8 @@ CONFIG_SPL_MAX_SIZE=0x25000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_BOOTROM_SUPPORT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x187ff0
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_I2C=y
diff --git a/configs/imx8mn_bsh_smm_s2_defconfig b/configs/imx8mn_bsh_smm_s2_defconfig
index 2e27dd98c566..9a4609dd8239 100644
--- a/configs/imx8mn_bsh_smm_s2_defconfig
+++ b/configs/imx8mn_bsh_smm_s2_defconfig
@@ -30,6 +30,8 @@ CONFIG_SPL_MAX_SIZE=0x25000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_BOOTROM_SUPPORT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x980000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_I2C=y
diff --git a/configs/imx8mn_bsh_smm_s2pro_defconfig b/configs/imx8mn_bsh_smm_s2pro_defconfig
index 706beb9e6532..66586ba96a23 100644
--- a/configs/imx8mn_bsh_smm_s2pro_defconfig
+++ b/configs/imx8mn_bsh_smm_s2pro_defconfig
@@ -31,6 +31,8 @@ CONFIG_SPL_MAX_SIZE=0x25000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_BOOTROM_SUPPORT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x980000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_I2C=y
diff --git a/configs/imx8mn_ddr4_evk_defconfig b/configs/imx8mn_ddr4_evk_defconfig
index 222554188631..16f217cd5a75 100644
--- a/configs/imx8mn_ddr4_evk_defconfig
+++ b/configs/imx8mn_ddr4_evk_defconfig
@@ -29,6 +29,8 @@ CONFIG_SPL_MAX_SIZE=0x25000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_BOOTROM_SUPPORT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x980000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_I2C=y
diff --git a/configs/imx8mn_evk_defconfig b/configs/imx8mn_evk_defconfig
index beb89a7523ef..ead7f6d21a82 100644
--- a/configs/imx8mn_evk_defconfig
+++ b/configs/imx8mn_evk_defconfig
@@ -33,6 +33,8 @@ CONFIG_SPL_BOOTROM_SUPPORT=y
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
 CONFIG_SPL_LEGACY_IMAGE_FORMAT=y
 CONFIG_SPL_LEGACY_IMAGE_CRC_CHECK=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x980000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_I2C=y
diff --git a/configs/imx8mn_var_som_defconfig b/configs/imx8mn_var_som_defconfig
index c79168917271..a1f9cee1e193 100644
--- a/configs/imx8mn_var_som_defconfig
+++ b/configs/imx8mn_var_som_defconfig
@@ -31,6 +31,8 @@ CONFIG_SPL_MAX_SIZE=0x25000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_BOOTROM_SUPPORT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x980000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_I2C=y
diff --git a/configs/imx8mn_venice_defconfig b/configs/imx8mn_venice_defconfig
index 2ca467871bd8..f2ddb98a1c0b 100644
--- a/configs/imx8mn_venice_defconfig
+++ b/configs/imx8mn_venice_defconfig
@@ -35,6 +35,8 @@ CONFIG_BOARD_LATE_INIT=y
 CONFIG_SPL_MAX_SIZE=0x25000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_BOOTROM_SUPPORT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x980000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_I2C=y
diff --git a/configs/imx8mp_dhcom_pdk2_defconfig b/configs/imx8mp_dhcom_pdk2_defconfig
index 6507b9d8b191..cc815ac2fe04 100644
--- a/configs/imx8mp_dhcom_pdk2_defconfig
+++ b/configs/imx8mp_dhcom_pdk2_defconfig
@@ -49,6 +49,8 @@ CONFIG_SPL_MAX_SIZE=0x25000
 CONFIG_SPL_BSS_MAX_SIZE=0x400
 CONFIG_SPL_BOOTROM_SUPPORT=y
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x96fc00
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_I2C=y
diff --git a/configs/imx8mp_evk_defconfig b/configs/imx8mp_evk_defconfig
index 55dce14294e6..1f4bf537c407 100644
--- a/configs/imx8mp_evk_defconfig
+++ b/configs/imx8mp_evk_defconfig
@@ -33,6 +33,8 @@ CONFIG_SPL_BSS_MAX_SIZE=0x400
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_BOOTROM_SUPPORT=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x960000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_I2C=y
diff --git a/configs/imx8mp_rsb3720a1_4G_defconfig b/configs/imx8mp_rsb3720a1_4G_defconfig
index 152b0bae091f..e8c1bc511918 100644
--- a/configs/imx8mp_rsb3720a1_4G_defconfig
+++ b/configs/imx8mp_rsb3720a1_4G_defconfig
@@ -39,6 +39,8 @@ CONFIG_SPL_BSS_MAX_SIZE=0x400
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_BOOTROM_SUPPORT=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x960000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_I2C=y
diff --git a/configs/imx8mp_rsb3720a1_6G_defconfig b/configs/imx8mp_rsb3720a1_6G_defconfig
index 223767bb7d7b..323f5fb3356a 100644
--- a/configs/imx8mp_rsb3720a1_6G_defconfig
+++ b/configs/imx8mp_rsb3720a1_6G_defconfig
@@ -39,6 +39,8 @@ CONFIG_SPL_BSS_MAX_SIZE=0x400
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_BOOTROM_SUPPORT=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x960000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_I2C=y
diff --git a/configs/imx8mp_venice_defconfig b/configs/imx8mp_venice_defconfig
index c44eadae6020..2485ae21ee7c 100644
--- a/configs/imx8mp_venice_defconfig
+++ b/configs/imx8mp_venice_defconfig
@@ -35,6 +35,8 @@ CONFIG_BOARD_LATE_INIT=y
 CONFIG_SPL_MAX_SIZE=0x26000
 CONFIG_SPL_BSS_MAX_SIZE=0x400
 CONFIG_SPL_BOOTROM_SUPPORT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x960000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_I2C=y
diff --git a/configs/imx8mq_cm_defconfig b/configs/imx8mq_cm_defconfig
index a9cc11c22fee..a67c82ac3c34 100644
--- a/configs/imx8mq_cm_defconfig
+++ b/configs/imx8mq_cm_defconfig
@@ -30,6 +30,8 @@ CONFIG_BOARD_LATE_INIT=y
 CONFIG_SPL_MAX_SIZE=0x1f000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_BOARD_INIT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x187ff0
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_I2C=y
diff --git a/configs/imx8mq_evk_defconfig b/configs/imx8mq_evk_defconfig
index 7ac45288632e..da03518af2b2 100644
--- a/configs/imx8mq_evk_defconfig
+++ b/configs/imx8mq_evk_defconfig
@@ -32,6 +32,8 @@ CONFIG_BOARD_LATE_INIT=y
 CONFIG_SPL_MAX_SIZE=0x1f000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_BOARD_INIT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x187ff0
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_I2C=y
diff --git a/configs/imx8mq_phanbell_defconfig b/configs/imx8mq_phanbell_defconfig
index 83485648a577..6ef649b1646f 100644
--- a/configs/imx8mq_phanbell_defconfig
+++ b/configs/imx8mq_phanbell_defconfig
@@ -34,6 +34,8 @@ CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_SPL_MAX_SIZE=0x2b000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_BOARD_INIT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x187ff0
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_I2C=y
diff --git a/configs/imx8qm_mek_defconfig b/configs/imx8qm_mek_defconfig
index 0bd0dbeb6e2a..5fc2e7a414ef 100644
--- a/configs/imx8qm_mek_defconfig
+++ b/configs/imx8qm_mek_defconfig
@@ -34,6 +34,8 @@ CONFIG_SPL_MAX_SIZE=0x1f000
 CONFIG_SPL_BSS_MAX_SIZE=0x1000
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x13e000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x800
 CONFIG_SPL_POWER_DOMAIN=y
diff --git a/configs/imx8qxp_mek_defconfig b/configs/imx8qxp_mek_defconfig
index 5603bbf1a31d..8b382156006f 100644
--- a/configs/imx8qxp_mek_defconfig
+++ b/configs/imx8qxp_mek_defconfig
@@ -34,6 +34,8 @@ CONFIG_SPL_MAX_SIZE=0x1f000
 CONFIG_SPL_BSS_MAX_SIZE=0x1000
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x13e000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x800
 CONFIG_SPL_POWER_DOMAIN=y
diff --git a/configs/imx8ulp_evk_defconfig b/configs/imx8ulp_evk_defconfig
index 778766cd9799..5d3c8395aeef 100644
--- a/configs/imx8ulp_evk_defconfig
+++ b/configs/imx8ulp_evk_defconfig
@@ -31,6 +31,8 @@ CONFIG_SPL_MAX_SIZE=0x25000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_BOOTROM_SUPPORT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x22050000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_WATCHDOG=y
diff --git a/configs/inet1_defconfig b/configs/inet1_defconfig
index 13fd425d5e22..dae6b23a936e 100644
--- a/configs/inet1_defconfig
+++ b/configs/inet1_defconfig
@@ -14,6 +14,7 @@ CONFIG_VIDEO_LCD_BL_EN="PH7"
 CONFIG_VIDEO_LCD_BL_PWM="PB2"
 CONFIG_VIDEO_LCD_PANEL_LVDS=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SYS_I2C_MVTWSI=y
diff --git a/configs/inet86dz_defconfig b/configs/inet86dz_defconfig
index 2b824983ac70..0382a4a05411 100644
--- a/configs/inet86dz_defconfig
+++ b/configs/inet86dz_defconfig
@@ -16,6 +16,7 @@ CONFIG_VIDEO_LCD_POWER="PH7"
 CONFIG_VIDEO_LCD_BL_EN="PH6"
 CONFIG_VIDEO_LCD_BL_PWM="PH0"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_AXP_DLDO1_VOLT=3300
 CONFIG_CONS_INDEX=5
diff --git a/configs/inet97fv2_defconfig b/configs/inet97fv2_defconfig
index 4b9946f92dbd..f3e374c2e345 100644
--- a/configs/inet97fv2_defconfig
+++ b/configs/inet97fv2_defconfig
@@ -13,6 +13,7 @@ CONFIG_VIDEO_LCD_POWER="PH8"
 CONFIG_VIDEO_LCD_BL_EN="PH7"
 CONFIG_VIDEO_LCD_BL_PWM="PB2"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SYS_I2C_MVTWSI=y
diff --git a/configs/inet98v_rev2_defconfig b/configs/inet98v_rev2_defconfig
index f068de4b57f9..c392fc2bb871 100644
--- a/configs/inet98v_rev2_defconfig
+++ b/configs/inet98v_rev2_defconfig
@@ -15,6 +15,7 @@ CONFIG_VIDEO_LCD_POWER="AXP0-0"
 CONFIG_VIDEO_LCD_BL_EN="AXP0-1"
 CONFIG_VIDEO_LCD_BL_PWM="PB2"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SYS_I2C_MVTWSI=y
diff --git a/configs/inet9f_rev03_defconfig b/configs/inet9f_rev03_defconfig
index 08efec27097d..81a1c9940fd8 100644
--- a/configs/inet9f_rev03_defconfig
+++ b/configs/inet9f_rev03_defconfig
@@ -13,6 +13,7 @@ CONFIG_VIDEO_LCD_POWER="PH8"
 CONFIG_VIDEO_LCD_BL_EN="PH7"
 CONFIG_VIDEO_LCD_BL_PWM="PB2"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SYS_I2C_MVTWSI=y
diff --git a/configs/inet_q972_defconfig b/configs/inet_q972_defconfig
index 73700b12297a..a4a828c70a3a 100644
--- a/configs/inet_q972_defconfig
+++ b/configs/inet_q972_defconfig
@@ -15,6 +15,7 @@ CONFIG_VIDEO_LCD_DCLK_PHASE=0
 CONFIG_VIDEO_LCD_BL_EN="PA25"
 CONFIG_VIDEO_LCD_BL_PWM="PH13"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_AXP_DLDO1_VOLT=3300
 CONFIG_USB_EHCI_HCD=y
diff --git a/configs/jesurun_q5_defconfig b/configs/jesurun_q5_defconfig
index d5b0da01edf6..5fce5836c9c5 100644
--- a/configs/jesurun_q5_defconfig
+++ b/configs/jesurun_q5_defconfig
@@ -8,6 +8,7 @@ CONFIG_MACPWR="PH19"
 CONFIG_USB0_VBUS_PIN="PB9"
 CONFIG_VIDEO_COMPOSITE=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SYS_I2C_MVTWSI=y
diff --git a/configs/jetson-tk1_defconfig b/configs/jetson-tk1_defconfig
index 20fed61ec7aa..e0f32a5d63f2 100644
--- a/configs/jetson-tk1_defconfig
+++ b/configs/jetson-tk1_defconfig
@@ -16,6 +16,8 @@ CONFIG_CONSOLE_MUX=y
 CONFIG_SYS_STDIO_DEREGISTER=y
 CONFIG_SPL_FOOTPRINT_LIMIT=y
 CONFIG_SPL_MAX_FOOTPRINT=0x8000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x800ffffc
 CONFIG_SYS_PROMPT="Tegra124 (Jetson TK1) # "
 CONFIG_SYS_MAXARGS=64
 CONFIG_SYS_PBSIZE=2089
diff --git a/configs/k2e_evm_defconfig b/configs/k2e_evm_defconfig
index 9c34a0ddc6ae..ed6e96dac690 100644
--- a/configs/k2e_evm_defconfig
+++ b/configs/k2e_evm_defconfig
@@ -31,6 +31,8 @@ CONFIG_SYS_CONSOLE_INFO_QUIET=y
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_SPL_MAX_SIZE=0xfff8
 CONFIG_SPL_BSS_MAX_SIZE=0x8000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xc1223f4
 CONFIG_SPL_I2C=y
 CONFIG_SPL_NAND_DRIVERS=y
 CONFIG_SPL_NAND_ECC=y
diff --git a/configs/k2g_evm_defconfig b/configs/k2g_evm_defconfig
index 0469e4f11492..1ec8dd042e21 100644
--- a/configs/k2g_evm_defconfig
+++ b/configs/k2g_evm_defconfig
@@ -30,6 +30,8 @@ CONFIG_SYS_CONSOLE_INFO_QUIET=y
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_SPL_MAX_SIZE=0xfff8
 CONFIG_SPL_BSS_MAX_SIZE=0x8000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xc0c23f4
 CONFIG_SPL_I2C=y
 CONFIG_SPL_NAND_DRIVERS=y
 CONFIG_SPL_NAND_ECC=y
diff --git a/configs/k2hk_evm_defconfig b/configs/k2hk_evm_defconfig
index 543810905cd6..2238aed03e5f 100644
--- a/configs/k2hk_evm_defconfig
+++ b/configs/k2hk_evm_defconfig
@@ -31,6 +31,8 @@ CONFIG_SYS_CONSOLE_INFO_QUIET=y
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_SPL_MAX_SIZE=0xfff8
 CONFIG_SPL_BSS_MAX_SIZE=0x8000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xc2223f4
 CONFIG_SPL_I2C=y
 CONFIG_SPL_NAND_DRIVERS=y
 CONFIG_SPL_NAND_ECC=y
diff --git a/configs/k2l_evm_defconfig b/configs/k2l_evm_defconfig
index 1a68b45197fb..d96b8084ee45 100644
--- a/configs/k2l_evm_defconfig
+++ b/configs/k2l_evm_defconfig
@@ -31,6 +31,8 @@ CONFIG_SYS_CONSOLE_INFO_QUIET=y
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_SPL_MAX_SIZE=0xfff8
 CONFIG_SPL_BSS_MAX_SIZE=0x8000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xc1223f4
 CONFIG_SPL_I2C=y
 CONFIG_SPL_NAND_DRIVERS=y
 CONFIG_SPL_NAND_ECC=y
diff --git a/configs/khadas-edge-captain-rk3399_defconfig b/configs/khadas-edge-captain-rk3399_defconfig
index 24fa9b016532..085c6b667321 100644
--- a/configs/khadas-edge-captain-rk3399_defconfig
+++ b/configs/khadas-edge-captain-rk3399_defconfig
@@ -20,6 +20,8 @@ CONFIG_SPL_MAX_SIZE=0x2e000
 CONFIG_SPL_PAD_TO=0x7f8000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x400000
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x10000
 CONFIG_TPL=y
diff --git a/configs/khadas-edge-rk3399_defconfig b/configs/khadas-edge-rk3399_defconfig
index 78ac8ade5889..b66301877e2a 100644
--- a/configs/khadas-edge-rk3399_defconfig
+++ b/configs/khadas-edge-rk3399_defconfig
@@ -20,6 +20,8 @@ CONFIG_SPL_MAX_SIZE=0x2e000
 CONFIG_SPL_PAD_TO=0x7f8000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x400000
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x10000
 CONFIG_TPL=y
diff --git a/configs/khadas-edge-v-rk3399_defconfig b/configs/khadas-edge-v-rk3399_defconfig
index 2ae99a15b522..5438d0a32264 100644
--- a/configs/khadas-edge-v-rk3399_defconfig
+++ b/configs/khadas-edge-v-rk3399_defconfig
@@ -20,6 +20,8 @@ CONFIG_SPL_MAX_SIZE=0x2e000
 CONFIG_SPL_PAD_TO=0x7f8000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x400000
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x10000
 CONFIG_TPL=y
diff --git a/configs/koelsch_defconfig b/configs/koelsch_defconfig
index 186200f02819..467b44c3e6b0 100644
--- a/configs/koelsch_defconfig
+++ b/configs/koelsch_defconfig
@@ -34,6 +34,8 @@ CONFIG_SPL_MAX_SIZE=0x4000
 CONFIG_SPL_NO_BSS_LIMIT=y
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xe6340000
 CONFIG_SPL_RAM_SUPPORT=y
 CONFIG_SPL_RAM_DEVICE=y
 CONFIG_SPL_SPI_LOAD=y
diff --git a/configs/kontron-sl-mx6ul_defconfig b/configs/kontron-sl-mx6ul_defconfig
index 1ba4d1fca841..904e953ce0fa 100644
--- a/configs/kontron-sl-mx6ul_defconfig
+++ b/configs/kontron-sl-mx6ul_defconfig
@@ -28,6 +28,8 @@ CONFIG_BOARD_TYPES=y
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_SPL_LEGACY_IMAGE_FORMAT=y
 CONFIG_SPL_LEGACY_IMAGE_CRC_CHECK=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_USB_HOST=y
 CONFIG_SPL_USB_GADGET=y
 CONFIG_SPL_WATCHDOG=y
diff --git a/configs/kontron-sl-mx8mm_defconfig b/configs/kontron-sl-mx8mm_defconfig
index db69cf53c8cd..cd96210c6bbf 100644
--- a/configs/kontron-sl-mx8mm_defconfig
+++ b/configs/kontron-sl-mx8mm_defconfig
@@ -29,6 +29,8 @@ CONFIG_BOARD_TYPES=y
 CONFIG_SPL_MAX_SIZE=0x25000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_BOARD_INIT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x91fff0
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 # CONFIG_SPL_FIT_IMAGE_TINY is not set
diff --git a/configs/kontron_pitx_imx8m_defconfig b/configs/kontron_pitx_imx8m_defconfig
index f8e11f581f02..4660e98e5aeb 100644
--- a/configs/kontron_pitx_imx8m_defconfig
+++ b/configs/kontron_pitx_imx8m_defconfig
@@ -32,6 +32,8 @@ CONFIG_BOARD_LATE_INIT=y
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x1f000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x187ff0
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_I2C=y
diff --git a/configs/kontron_sl28_defconfig b/configs/kontron_sl28_defconfig
index 9f4be1ac9d01..345db0314896 100644
--- a/configs/kontron_sl28_defconfig
+++ b/configs/kontron_sl28_defconfig
@@ -40,6 +40,8 @@ CONFIG_PCI_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x20000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
 CONFIG_SPL_BOARD_INIT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x18009ff0
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x230000
diff --git a/configs/kp_imx6q_tpc_defconfig b/configs/kp_imx6q_tpc_defconfig
index 012a5c492ed1..4ec988e3133c 100644
--- a/configs/kp_imx6q_tpc_defconfig
+++ b/configs/kp_imx6q_tpc_defconfig
@@ -27,6 +27,8 @@ CONFIG_AUTOBOOT_STOP_STR="."
 # CONFIG_USE_BOOTCOMMAND is not set
 CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
 CONFIG_SPL_RAW_IMAGE_SUPPORT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_POWER=y
 CONFIG_SPL_WATCHDOG=y
 CONFIG_SYS_MAXARGS=32
diff --git a/configs/lager_defconfig b/configs/lager_defconfig
index d13b75de412e..c9ec38d711ff 100644
--- a/configs/lager_defconfig
+++ b/configs/lager_defconfig
@@ -34,6 +34,8 @@ CONFIG_SPL_MAX_SIZE=0x4000
 CONFIG_SPL_NO_BSS_LIMIT=y
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xe6340000
 CONFIG_SPL_RAM_SUPPORT=y
 CONFIG_SPL_RAM_DEVICE=y
 CONFIG_SPL_SPI_LOAD=y
diff --git a/configs/leez-rk3399_defconfig b/configs/leez-rk3399_defconfig
index c8e462867e1b..d524e4546c81 100644
--- a/configs/leez-rk3399_defconfig
+++ b/configs/leez-rk3399_defconfig
@@ -19,6 +19,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_SPL_MAX_SIZE=0x2e000
 CONFIG_SPL_PAD_TO=0x7f8000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x400000
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x10000
 CONFIG_TPL=y
diff --git a/configs/libretech_all_h3_cc_h2_plus_defconfig b/configs/libretech_all_h3_cc_h2_plus_defconfig
index d720dd5c8bd7..ca995568024d 100644
--- a/configs/libretech_all_h3_cc_h2_plus_defconfig
+++ b/configs/libretech_all_h3_cc_h2_plus_defconfig
@@ -6,6 +6,7 @@ CONFIG_MACH_SUN8I_H3=y
 CONFIG_DRAM_CLK=672
 CONFIG_MMC_SUNXI_SLOT_EXTRA=2
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SUN8I_EMAC=y
 CONFIG_USB_EHCI_HCD=y
diff --git a/configs/libretech_all_h3_cc_h3_defconfig b/configs/libretech_all_h3_cc_h3_defconfig
index 6b9faddb901c..7ca312c8fbcd 100644
--- a/configs/libretech_all_h3_cc_h3_defconfig
+++ b/configs/libretech_all_h3_cc_h3_defconfig
@@ -6,6 +6,7 @@ CONFIG_MACH_SUN8I_H3=y
 CONFIG_DRAM_CLK=672
 CONFIG_MMC_SUNXI_SLOT_EXTRA=2
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SUN8I_EMAC=y
 CONFIG_USB_EHCI_HCD=y
diff --git a/configs/libretech_all_h3_cc_h5_defconfig b/configs/libretech_all_h3_cc_h5_defconfig
index a20d43f0fed6..524138aa2e17 100644
--- a/configs/libretech_all_h3_cc_h5_defconfig
+++ b/configs/libretech_all_h3_cc_h5_defconfig
@@ -6,6 +6,7 @@ CONFIG_MACH_SUN50I_H5=y
 CONFIG_DRAM_CLK=672
 CONFIG_MMC_SUNXI_SLOT_EXTRA=2
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x54000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SUN8I_EMAC=y
 CONFIG_USB_EHCI_HCD=y
diff --git a/configs/libretech_all_h3_it_h5_defconfig b/configs/libretech_all_h3_it_h5_defconfig
index 5bc923a68f46..1b0833358632 100644
--- a/configs/libretech_all_h3_it_h5_defconfig
+++ b/configs/libretech_all_h3_it_h5_defconfig
@@ -7,6 +7,7 @@ CONFIG_DRAM_CLK=672
 CONFIG_MMC_SUNXI_SLOT_EXTRA=2
 CONFIG_SPL_SPI_SUNXI=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x54000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SPI_FLASH_XMC=y
 CONFIG_SPI=y
diff --git a/configs/libretech_all_h5_cc_h5_defconfig b/configs/libretech_all_h5_cc_h5_defconfig
index 987393d168e9..e0734f96735a 100644
--- a/configs/libretech_all_h5_cc_h5_defconfig
+++ b/configs/libretech_all_h5_cc_h5_defconfig
@@ -7,6 +7,7 @@ CONFIG_DRAM_CLK=672
 CONFIG_MMC_SUNXI_SLOT_EXTRA=2
 CONFIG_SPL_SPI_SUNXI=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x54000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SPI_FLASH_XMC=y
 CONFIG_SUN8I_EMAC=y
diff --git a/configs/licheepi_nano_defconfig b/configs/licheepi_nano_defconfig
index 8502cf3e8d22..0252763c7762 100644
--- a/configs/licheepi_nano_defconfig
+++ b/configs/licheepi_nano_defconfig
@@ -10,5 +10,6 @@ CONFIG_DRAM_CLK=156
 CONFIG_DRAM_ZQ=0
 # CONFIG_VIDEO_SUNXI is not set
 CONFIG_SPL_SPI_SUNXI=y
+CONFIG_SPL_STACK=0x8000
 CONFIG_SYS_PBSIZE=1024
 # CONFIG_SYSRESET is not set
diff --git a/configs/lion-rk3368_defconfig b/configs/lion-rk3368_defconfig
index c03eecabcaca..c700115aecc6 100644
--- a/configs/lion-rk3368_defconfig
+++ b/configs/lion-rk3368_defconfig
@@ -38,6 +38,8 @@ CONFIG_SPL_BSS_MAX_SIZE=0x20000
 CONFIG_SPL_BOOTROM_SUPPORT=y
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
 CONFIG_TPL_SYS_MALLOC_SIMPLE=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x188000
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x4000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x200
diff --git a/configs/liteboard_defconfig b/configs/liteboard_defconfig
index 334b22ac8ab2..9832654fa460 100644
--- a/configs/liteboard_defconfig
+++ b/configs/liteboard_defconfig
@@ -24,6 +24,8 @@ CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="mmc dev ${mmcdev};if mmc rescan; then if run loadbootscript; then run bootscript; else if run loadimage; then run mmcboot; else run netboot; fi; fi; else run netboot; fi"
 CONFIG_DEFAULT_FDT_FILE="imx6ul-liteboard.dtb"
 CONFIG_BOARD_EARLY_INIT_F=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_WATCHDOG=y
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_MAXARGS=32
diff --git a/configs/ls1021aiot_sdcard_defconfig b/configs/ls1021aiot_sdcard_defconfig
index 85b0c937cdb3..74d5e7ce2f25 100644
--- a/configs/ls1021aiot_sdcard_defconfig
+++ b/configs/ls1021aiot_sdcard_defconfig
@@ -35,6 +35,8 @@ CONFIG_SPL_MAX_SIZE=0x1a000
 CONFIG_SPL_PAD_TO=0x1c000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_FSL_PBL=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x1001d000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0xe8
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/ls1021aqds_nand_defconfig b/configs/ls1021aqds_nand_defconfig
index 4ec86e736d25..57eefa684948 100644
--- a/configs/ls1021aqds_nand_defconfig
+++ b/configs/ls1021aqds_nand_defconfig
@@ -45,6 +45,8 @@ CONFIG_SPL_MAX_SIZE=0x1a000
 CONFIG_SPL_PAD_TO=0x1c000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_FSL_PBL=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x1001d000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0xe8
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/ls1021aqds_sdcard_ifc_defconfig b/configs/ls1021aqds_sdcard_ifc_defconfig
index 079b19ab5e7f..a2b39eb38438 100644
--- a/configs/ls1021aqds_sdcard_ifc_defconfig
+++ b/configs/ls1021aqds_sdcard_ifc_defconfig
@@ -44,6 +44,8 @@ CONFIG_SPL_MAX_SIZE=0x1a000
 CONFIG_SPL_PAD_TO=0x1c000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_FSL_PBL=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x1001d000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0xe8
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/ls1021aqds_sdcard_qspi_defconfig b/configs/ls1021aqds_sdcard_qspi_defconfig
index a6a4be372eec..62100e447479 100644
--- a/configs/ls1021aqds_sdcard_qspi_defconfig
+++ b/configs/ls1021aqds_sdcard_qspi_defconfig
@@ -43,6 +43,8 @@ CONFIG_SPL_MAX_SIZE=0x1a000
 CONFIG_SPL_PAD_TO=0x1c000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_FSL_PBL=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x1001d000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0xe8
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/ls1021atsn_sdcard_defconfig b/configs/ls1021atsn_sdcard_defconfig
index b97c0a0035ae..85ba389ff6b1 100644
--- a/configs/ls1021atsn_sdcard_defconfig
+++ b/configs/ls1021atsn_sdcard_defconfig
@@ -37,6 +37,8 @@ CONFIG_SPL_MAX_SIZE=0x1a000
 CONFIG_SPL_PAD_TO=0x1c000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_FSL_PBL=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x1001d000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0xe8
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/ls1021atwr_sdcard_ifc_SECURE_BOOT_defconfig b/configs/ls1021atwr_sdcard_ifc_SECURE_BOOT_defconfig
index 772737ff5620..13d46e47194e 100644
--- a/configs/ls1021atwr_sdcard_ifc_SECURE_BOOT_defconfig
+++ b/configs/ls1021atwr_sdcard_ifc_SECURE_BOOT_defconfig
@@ -44,6 +44,8 @@ CONFIG_SPL_MAX_SIZE=0x1a000
 CONFIG_SPL_PAD_TO=0x1c000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_FSL_PBL=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x1001d000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0xe8
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/ls1021atwr_sdcard_ifc_defconfig b/configs/ls1021atwr_sdcard_ifc_defconfig
index d04a0b6f0f83..6dab204210d7 100644
--- a/configs/ls1021atwr_sdcard_ifc_defconfig
+++ b/configs/ls1021atwr_sdcard_ifc_defconfig
@@ -45,6 +45,8 @@ CONFIG_SPL_MAX_SIZE=0x1a000
 CONFIG_SPL_PAD_TO=0x1c000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_FSL_PBL=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x1001d000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0xe8
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/ls1021atwr_sdcard_qspi_defconfig b/configs/ls1021atwr_sdcard_qspi_defconfig
index 3b1e5d9df88d..bdc279b646ea 100644
--- a/configs/ls1021atwr_sdcard_qspi_defconfig
+++ b/configs/ls1021atwr_sdcard_qspi_defconfig
@@ -46,6 +46,8 @@ CONFIG_SPL_MAX_SIZE=0x1a000
 CONFIG_SPL_PAD_TO=0x1c000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_FSL_PBL=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x1001d000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0xe8
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/ls1043aqds_nand_defconfig b/configs/ls1043aqds_nand_defconfig
index 87696444a272..ec60f8edfddc 100644
--- a/configs/ls1043aqds_nand_defconfig
+++ b/configs/ls1043aqds_nand_defconfig
@@ -51,6 +51,8 @@ CONFIG_SPL_MAX_SIZE=0x1a000
 CONFIG_SPL_PAD_TO=0x20000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_FSL_PBL=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x1001d000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0xf0
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/ls1043aqds_sdcard_ifc_defconfig b/configs/ls1043aqds_sdcard_ifc_defconfig
index 140ca826af9e..ad8fce935897 100644
--- a/configs/ls1043aqds_sdcard_ifc_defconfig
+++ b/configs/ls1043aqds_sdcard_ifc_defconfig
@@ -52,6 +52,8 @@ CONFIG_SPL_MAX_SIZE=0x17000
 CONFIG_SPL_PAD_TO=0x1d000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_FSL_PBL=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x1001e000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0xf0
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/ls1043aqds_sdcard_qspi_defconfig b/configs/ls1043aqds_sdcard_qspi_defconfig
index b13156a573d2..4464284f3375 100644
--- a/configs/ls1043aqds_sdcard_qspi_defconfig
+++ b/configs/ls1043aqds_sdcard_qspi_defconfig
@@ -52,6 +52,8 @@ CONFIG_SPL_MAX_SIZE=0x17000
 CONFIG_SPL_PAD_TO=0x1d000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_FSL_PBL=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x1001e000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0xf0
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/ls1043ardb_nand_SECURE_BOOT_defconfig b/configs/ls1043ardb_nand_SECURE_BOOT_defconfig
index 33320c24bc1a..5c51cd5b8c3b 100644
--- a/configs/ls1043ardb_nand_SECURE_BOOT_defconfig
+++ b/configs/ls1043ardb_nand_SECURE_BOOT_defconfig
@@ -35,6 +35,8 @@ CONFIG_SPL_MAX_SIZE=0x1a000
 CONFIG_SPL_PAD_TO=0x20000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_FSL_PBL=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x1001d000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0xf0
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/ls1043ardb_nand_defconfig b/configs/ls1043ardb_nand_defconfig
index f47c019745ab..bb0f3e6cb505 100644
--- a/configs/ls1043ardb_nand_defconfig
+++ b/configs/ls1043ardb_nand_defconfig
@@ -41,6 +41,8 @@ CONFIG_SPL_PAD_TO=0x20000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_FSL_PBL=y
 CONFIG_SPL_BOARD_INIT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x1001d000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0xf0
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/ls1043ardb_sdcard_SECURE_BOOT_defconfig b/configs/ls1043ardb_sdcard_SECURE_BOOT_defconfig
index 40f794001d08..2042b44fe4e8 100644
--- a/configs/ls1043ardb_sdcard_SECURE_BOOT_defconfig
+++ b/configs/ls1043ardb_sdcard_SECURE_BOOT_defconfig
@@ -36,6 +36,8 @@ CONFIG_SPL_MAX_SIZE=0x17000
 CONFIG_SPL_PAD_TO=0x1d000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_FSL_PBL=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x1001e000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x110
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/ls1043ardb_sdcard_defconfig b/configs/ls1043ardb_sdcard_defconfig
index 94e7b9617f27..f51d76c67571 100644
--- a/configs/ls1043ardb_sdcard_defconfig
+++ b/configs/ls1043ardb_sdcard_defconfig
@@ -42,6 +42,8 @@ CONFIG_SPL_PAD_TO=0x1d000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_FSL_PBL=y
 CONFIG_SPL_BOARD_INIT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x1001e000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0xf0
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/ls1046aqds_nand_defconfig b/configs/ls1046aqds_nand_defconfig
index dba986d729fe..322a352669f8 100644
--- a/configs/ls1046aqds_nand_defconfig
+++ b/configs/ls1046aqds_nand_defconfig
@@ -52,6 +52,8 @@ CONFIG_SPL_PAD_TO=0x40000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_FSL_PBL=y
 CONFIG_SPL_BOARD_INIT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x1001f000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x110
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/ls1046aqds_sdcard_ifc_defconfig b/configs/ls1046aqds_sdcard_ifc_defconfig
index 0dfbf4225165..4f4cdf1d05ca 100644
--- a/configs/ls1046aqds_sdcard_ifc_defconfig
+++ b/configs/ls1046aqds_sdcard_ifc_defconfig
@@ -53,6 +53,8 @@ CONFIG_SPL_PAD_TO=0x21000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_FSL_PBL=y
 CONFIG_SPL_BOARD_INIT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x10020000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x110
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/ls1046aqds_sdcard_qspi_defconfig b/configs/ls1046aqds_sdcard_qspi_defconfig
index 52d826fb0614..89d52aa33ccb 100644
--- a/configs/ls1046aqds_sdcard_qspi_defconfig
+++ b/configs/ls1046aqds_sdcard_qspi_defconfig
@@ -53,6 +53,8 @@ CONFIG_SPL_PAD_TO=0x21000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_FSL_PBL=y
 CONFIG_SPL_BOARD_INIT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x10020000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x110
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/ls1046ardb_emmc_defconfig b/configs/ls1046ardb_emmc_defconfig
index 6e0ce4dade06..11725e5aa0c4 100644
--- a/configs/ls1046ardb_emmc_defconfig
+++ b/configs/ls1046ardb_emmc_defconfig
@@ -43,6 +43,8 @@ CONFIG_SPL_PAD_TO=0x21000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_FSL_PBL=y
 CONFIG_SPL_BOARD_INIT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x10020000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x110
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/ls1046ardb_qspi_spl_defconfig b/configs/ls1046ardb_qspi_spl_defconfig
index 39e38e479788..ae7d0b32694e 100644
--- a/configs/ls1046ardb_qspi_spl_defconfig
+++ b/configs/ls1046ardb_qspi_spl_defconfig
@@ -46,6 +46,8 @@ CONFIG_SPL_MAX_SIZE=0x1f000
 CONFIG_SPL_PAD_TO=0x20000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_BOARD_INIT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x10020000
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
diff --git a/configs/ls1046ardb_sdcard_SECURE_BOOT_defconfig b/configs/ls1046ardb_sdcard_SECURE_BOOT_defconfig
index 852824eeff5b..ea8588c86ae8 100644
--- a/configs/ls1046ardb_sdcard_SECURE_BOOT_defconfig
+++ b/configs/ls1046ardb_sdcard_SECURE_BOOT_defconfig
@@ -40,6 +40,8 @@ CONFIG_SPL_MAX_SIZE=0x1f000
 CONFIG_SPL_PAD_TO=0x21000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_FSL_PBL=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x10020000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x110
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/ls1046ardb_sdcard_defconfig b/configs/ls1046ardb_sdcard_defconfig
index 85a8ec9b1085..ed87dbaffd9a 100644
--- a/configs/ls1046ardb_sdcard_defconfig
+++ b/configs/ls1046ardb_sdcard_defconfig
@@ -43,6 +43,8 @@ CONFIG_SPL_PAD_TO=0x21000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_FSL_PBL=y
 CONFIG_SPL_BOARD_INIT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x10020000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x110
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/ls1088aqds_sdcard_ifc_defconfig b/configs/ls1088aqds_sdcard_ifc_defconfig
index ca634fd39861..8b03ff8062b8 100644
--- a/configs/ls1088aqds_sdcard_ifc_defconfig
+++ b/configs/ls1088aqds_sdcard_ifc_defconfig
@@ -43,6 +43,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_RESET_PHY_R=y
 CONFIG_SPL_MAX_SIZE=0x16000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x18009ff0
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x8b0
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/ls1088aqds_sdcard_qspi_defconfig b/configs/ls1088aqds_sdcard_qspi_defconfig
index b21ce6794bd3..5cd2ca27087c 100644
--- a/configs/ls1088aqds_sdcard_qspi_defconfig
+++ b/configs/ls1088aqds_sdcard_qspi_defconfig
@@ -44,6 +44,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_RESET_PHY_R=y
 CONFIG_SPL_MAX_SIZE=0x16000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x18009ff0
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x8b0
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/ls1088ardb_sdcard_qspi_SECURE_BOOT_defconfig b/configs/ls1088ardb_sdcard_qspi_SECURE_BOOT_defconfig
index e8397fcd4ed2..e7500e14eaf7 100644
--- a/configs/ls1088ardb_sdcard_qspi_SECURE_BOOT_defconfig
+++ b/configs/ls1088ardb_sdcard_qspi_SECURE_BOOT_defconfig
@@ -44,6 +44,8 @@ CONFIG_MISC_INIT_R=y
 CONFIG_RESET_PHY_R=y
 CONFIG_SPL_MAX_SIZE=0x16000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x18009ff0
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x8b0
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/ls1088ardb_sdcard_qspi_defconfig b/configs/ls1088ardb_sdcard_qspi_defconfig
index 283dcccc905e..db65a7c05683 100644
--- a/configs/ls1088ardb_sdcard_qspi_defconfig
+++ b/configs/ls1088ardb_sdcard_qspi_defconfig
@@ -45,6 +45,8 @@ CONFIG_MISC_INIT_R=y
 CONFIG_RESET_PHY_R=y
 CONFIG_SPL_MAX_SIZE=0x16000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x18009ff0
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x8b0
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/ls2080aqds_nand_defconfig b/configs/ls2080aqds_nand_defconfig
index 0c57920b4877..08f9536d22a2 100644
--- a/configs/ls2080aqds_nand_defconfig
+++ b/configs/ls2080aqds_nand_defconfig
@@ -36,6 +36,8 @@ CONFIG_RESET_PHY_R=y
 CONFIG_SPL_MAX_SIZE=0x16000
 CONFIG_SPL_PAD_TO=0x20000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x18009ff0
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
diff --git a/configs/ls2080aqds_sdcard_defconfig b/configs/ls2080aqds_sdcard_defconfig
index 23c20203ba75..f8978da43ca9 100644
--- a/configs/ls2080aqds_sdcard_defconfig
+++ b/configs/ls2080aqds_sdcard_defconfig
@@ -36,6 +36,8 @@ CONFIG_BOOTCOMMAND="mmc read 0x80200000 0x6800 0x800; fsl_mc apply dpl 0x8020000
 CONFIG_RESET_PHY_R=y
 CONFIG_SPL_MAX_SIZE=0x16000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x18009ff0
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x8b0
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/ls2080ardb_nand_defconfig b/configs/ls2080ardb_nand_defconfig
index e703a8cba860..7304c4d02467 100644
--- a/configs/ls2080ardb_nand_defconfig
+++ b/configs/ls2080ardb_nand_defconfig
@@ -42,6 +42,8 @@ CONFIG_RESET_PHY_R=y
 CONFIG_SPL_MAX_SIZE=0x16000
 CONFIG_SPL_PAD_TO=0x80000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x18009ff0
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
diff --git a/configs/m53menlo_defconfig b/configs/m53menlo_defconfig
index 336ba0180e72..455f19617aca 100644
--- a/configs/m53menlo_defconfig
+++ b/configs/m53menlo_defconfig
@@ -34,6 +34,8 @@ CONFIG_BOARD_LATE_INIT=y
 CONFIG_SPL_PAD_TO=0x8000
 CONFIG_SPL_NO_BSS_LIMIT=y
 CONFIG_SPL_BOARD_INIT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x70004000
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_MAXARGS=32
diff --git a/configs/maxbcm_defconfig b/configs/maxbcm_defconfig
index 9c22966d8847..457e56919d05 100644
--- a/configs/maxbcm_defconfig
+++ b/configs/maxbcm_defconfig
@@ -27,6 +27,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_SPL_MAX_SIZE=0x1bfd0
 CONFIG_SPL_BSS_MAX_SIZE=0x4000
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x4002c000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_MAXARGS=32
 CONFIG_CMD_I2C=y
diff --git a/configs/mccmon6_nor_defconfig b/configs/mccmon6_nor_defconfig
index 3718d08b6700..cef2bb0ba5bc 100644
--- a/configs/mccmon6_nor_defconfig
+++ b/configs/mccmon6_nor_defconfig
@@ -24,6 +24,8 @@ CONFIG_SPL_LOAD_FIT=y
 # CONFIG_USE_BOOTCOMMAND is not set
 CONFIG_BOARD_LATE_INIT=y
 CONFIG_SPL_BOARD_INIT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_FIT_IMAGE_TINY=y
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_NOR_SUPPORT=y
diff --git a/configs/mccmon6_sd_defconfig b/configs/mccmon6_sd_defconfig
index 3228050dd206..8f3b4ecfc9d3 100644
--- a/configs/mccmon6_sd_defconfig
+++ b/configs/mccmon6_sd_defconfig
@@ -25,6 +25,8 @@ CONFIG_SPL_LOAD_FIT=y
 # CONFIG_USE_BOOTCOMMAND is not set
 CONFIG_BOARD_LATE_INIT=y
 CONFIG_SPL_BOARD_INIT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_NOR_SUPPORT=y
 CONFIG_SYS_MAXARGS=32
diff --git a/configs/medcom-wide_defconfig b/configs/medcom-wide_defconfig
index 4b2e305c1070..855b88b75a60 100644
--- a/configs/medcom-wide_defconfig
+++ b/configs/medcom-wide_defconfig
@@ -15,6 +15,8 @@ CONFIG_OF_SYSTEM_SETUP=y
 CONFIG_SYS_STDIO_DEREGISTER=y
 CONFIG_SPL_FOOTPRINT_LIMIT=y
 CONFIG_SPL_MAX_FOOTPRINT=0x8000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xffffc
 CONFIG_SYS_PROMPT="Tegra20 (Medcom-Wide) # "
 CONFIG_SYS_MAXARGS=64
 CONFIG_SYS_PBSIZE=2089
diff --git a/configs/microblaze-generic_defconfig b/configs/microblaze-generic_defconfig
index a7698ac1ec10..86bda86b72f2 100644
--- a/configs/microblaze-generic_defconfig
+++ b/configs/microblaze-generic_defconfig
@@ -28,6 +28,8 @@ CONFIG_SPL_FOOTPRINT_LIMIT=y
 CONFIG_SPL_MAX_FOOTPRINT=0xffb00
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x100000
 CONFIG_SPL_NOR_SUPPORT=y
 CONFIG_SPL_OS_BOOT=y
 CONFIG_SYS_OS_BASE=0x2c060000
diff --git a/configs/miqi-rk3288_defconfig b/configs/miqi-rk3288_defconfig
index c1151d13b602..7000b89311a2 100644
--- a/configs/miqi-rk3288_defconfig
+++ b/configs/miqi-rk3288_defconfig
@@ -24,6 +24,8 @@ CONFIG_SILENT_CONSOLE=y
 CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_SPL_PAD_TO=0x7f8000
 CONFIG_SPL_NO_BSS_LIMIT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xff718000
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x2000
 CONFIG_CMD_GPIO=y
diff --git a/configs/mixtile_loftq_defconfig b/configs/mixtile_loftq_defconfig
index 0cd94d7b4381..11e3dfcf4bab 100644
--- a/configs/mixtile_loftq_defconfig
+++ b/configs/mixtile_loftq_defconfig
@@ -9,6 +9,7 @@ CONFIG_MMC_SUNXI_SLOT_EXTRA=2
 CONFIG_USB1_VBUS_PIN="PH24"
 CONFIG_USB2_VBUS_PIN=""
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_PHY_REALTEK=y
 CONFIG_ETH_DESIGNWARE=y
diff --git a/configs/mk802_a10s_defconfig b/configs/mk802_a10s_defconfig
index 1fa1f0031b06..3ce7e5f1d68a 100644
--- a/configs/mk802_a10s_defconfig
+++ b/configs/mk802_a10s_defconfig
@@ -7,6 +7,7 @@ CONFIG_DRAM_CLK=432
 CONFIG_DRAM_EMR1=0
 CONFIG_USB1_VBUS_PIN="PB10"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SYS_I2C_MVTWSI=y
diff --git a/configs/mk802_defconfig b/configs/mk802_defconfig
index 281130a43e29..0fd8d3adbd21 100644
--- a/configs/mk802_defconfig
+++ b/configs/mk802_defconfig
@@ -5,6 +5,7 @@ CONFIG_SPL=y
 CONFIG_MACH_SUN4I=y
 CONFIG_USB2_VBUS_PIN="PH12"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SYS_I2C_MVTWSI=y
 CONFIG_SYS_I2C_SLAVE=0x7f
diff --git a/configs/mk802ii_defconfig b/configs/mk802ii_defconfig
index 8123d900d934..942911bddbaf 100644
--- a/configs/mk802ii_defconfig
+++ b/configs/mk802ii_defconfig
@@ -4,6 +4,7 @@ CONFIG_DEFAULT_DEVICE_TREE="sun4i-a10-mk802ii"
 CONFIG_SPL=y
 CONFIG_MACH_SUN4I=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SYS_I2C_MVTWSI=y
diff --git a/configs/mk808_defconfig b/configs/mk808_defconfig
index fadea658eb25..7df44fb81f11 100644
--- a/configs/mk808_defconfig
+++ b/configs/mk808_defconfig
@@ -36,6 +36,8 @@ CONFIG_BOARD_LATE_INIT=y
 CONFIG_SPL_MAX_SIZE=0x32000
 CONFIG_SPL_PAD_TO=0x7f8000
 CONFIG_SPL_NO_BSS_LIMIT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x1008ffff
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x200000
 CONFIG_SPL_SEPARATE_BSS=y
diff --git a/configs/mt7629_rfb_defconfig b/configs/mt7629_rfb_defconfig
index 3ee77f39a3db..f5e3c26d66ce 100644
--- a/configs/mt7629_rfb_defconfig
+++ b/configs/mt7629_rfb_defconfig
@@ -28,6 +28,8 @@ CONFIG_SPL_MAX_SIZE=0x10000
 CONFIG_SPL_FOOTPRINT_LIMIT=y
 CONFIG_SPL_MAX_FOOTPRINT=0x10000
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x106000
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_NOR_SUPPORT=y
 CONFIG_SPL_WATCHDOG=y
diff --git a/configs/mx6cuboxi_defconfig b/configs/mx6cuboxi_defconfig
index 41122ade90e1..016a54f7cb35 100644
--- a/configs/mx6cuboxi_defconfig
+++ b/configs/mx6cuboxi_defconfig
@@ -26,6 +26,8 @@ CONFIG_BOOTCOMMAND="run findfdt; run finduuid; run distro_bootcmd"
 CONFIG_USE_PREBOOT=y
 CONFIG_PREBOOT="if hdmidet; then usb start; setenv stdin  serial,usbkbd; setenv stdout serial,vidconsole; setenv stderr serial,vidconsole; else setenv stdin  serial; setenv stdout serial; setenv stderr serial; fi;"
 CONFIG_BOARD_EARLY_INIT_F=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_FS_EXT4=y
 CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot-dtb.img"
 CONFIG_SPL_I2C=y
diff --git a/configs/mx6memcal_defconfig b/configs/mx6memcal_defconfig
index d555dbf7b1be..cf807d8f3db5 100644
--- a/configs/mx6memcal_defconfig
+++ b/configs/mx6memcal_defconfig
@@ -15,6 +15,8 @@ CONFIG_SPL=y
 CONFIG_SYS_MEMTEST_START=0x10000000
 CONFIG_SYS_MEMTEST_END=0x20000000
 CONFIG_SUPPORT_RAW_INITRD=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_USB_HOST=y
 CONFIG_SPL_WATCHDOG=y
 CONFIG_HUSH_PARSER=y
diff --git a/configs/mx6sabreauto_defconfig b/configs/mx6sabreauto_defconfig
index 3d2e906f934b..016898f9ab11 100644
--- a/configs/mx6sabreauto_defconfig
+++ b/configs/mx6sabreauto_defconfig
@@ -33,6 +33,8 @@ CONFIG_BOOTCOMMAND="run findfdt;mmc dev ${mmcdev};if mmc rescan; then if run loa
 CONFIG_SYS_CONSOLE_IS_IN_ENV=y
 CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
 CONFIG_SPL_LEGACY_IMAGE_FORMAT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_FIT_IMAGE_TINY=y
 CONFIG_SPL_FS_EXT4=y
 CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot-dtb.img"
diff --git a/configs/mx6sabresd_defconfig b/configs/mx6sabresd_defconfig
index 33d8db9dff23..072617681dba 100644
--- a/configs/mx6sabresd_defconfig
+++ b/configs/mx6sabresd_defconfig
@@ -32,6 +32,8 @@ CONFIG_BOOTCOMMAND="run findfdt;mmc dev ${mmcdev};if mmc rescan; then if run loa
 CONFIG_SYS_CONSOLE_IS_IN_ENV=y
 CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
 CONFIG_SPL_LEGACY_IMAGE_FORMAT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_FIT_IMAGE_TINY=y
 CONFIG_SPL_USB_HOST=y
 CONFIG_SPL_USB_GADGET=y
diff --git a/configs/mx6slevk_spl_defconfig b/configs/mx6slevk_spl_defconfig
index 24407c113d65..a5ccf579029a 100644
--- a/configs/mx6slevk_spl_defconfig
+++ b/configs/mx6slevk_spl_defconfig
@@ -25,6 +25,8 @@ CONFIG_SUPPORT_RAW_INITRD=y
 CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="mmc dev ${mmcdev}; if mmc rescan; then if run loadbootscript; then run bootscript; else if run loadimage; then run mmcboot; else run netboot; fi; fi; else run netboot; fi"
 CONFIG_BOARD_EARLY_INIT_F=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_FS_EXT4=y
 CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot-dtb.img"
 CONFIG_SPL_I2C=y
diff --git a/configs/mx6ul_14x14_evk_defconfig b/configs/mx6ul_14x14_evk_defconfig
index 065ead0a7ad2..8d182478164c 100644
--- a/configs/mx6ul_14x14_evk_defconfig
+++ b/configs/mx6ul_14x14_evk_defconfig
@@ -27,6 +27,8 @@ CONFIG_BOOTCOMMAND="run findfdt;mmc dev ${mmcdev};mmc dev ${mmcdev}; if mmc resc
 # CONFIG_CONSOLE_MUX is not set
 CONFIG_SYS_CONSOLE_IS_IN_ENV=y
 CONFIG_BOARD_EARLY_INIT_F=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_FS_EXT4=y
 CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot-dtb.img"
 CONFIG_SPL_I2C=y
diff --git a/configs/mx6ul_9x9_evk_defconfig b/configs/mx6ul_9x9_evk_defconfig
index 2f46b68cbe97..65c1c7785998 100644
--- a/configs/mx6ul_9x9_evk_defconfig
+++ b/configs/mx6ul_9x9_evk_defconfig
@@ -27,6 +27,8 @@ CONFIG_BOOTCOMMAND="run findfdt;mmc dev ${mmcdev};mmc dev ${mmcdev}; if mmc resc
 # CONFIG_CONSOLE_MUX is not set
 CONFIG_SYS_CONSOLE_IS_IN_ENV=y
 CONFIG_BOARD_EARLY_INIT_F=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_FS_EXT4=y
 CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot-dtb.img"
 CONFIG_SPL_I2C=y
diff --git a/configs/myir_mys_6ulx_defconfig b/configs/myir_mys_6ulx_defconfig
index f5ccf669f292..fdd7d024ae87 100644
--- a/configs/myir_mys_6ulx_defconfig
+++ b/configs/myir_mys_6ulx_defconfig
@@ -19,6 +19,8 @@ CONFIG_DISTRO_DEFAULTS=y
 CONFIG_FIT=y
 CONFIG_BOOTDELAY=3
 CONFIG_BOARD_EARLY_INIT_F=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_DMA=y
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_SPL_USB_HOST=y
diff --git a/configs/nanopc-t4-rk3399_defconfig b/configs/nanopc-t4-rk3399_defconfig
index a1d66c51b5c3..6c023fbe4055 100644
--- a/configs/nanopc-t4-rk3399_defconfig
+++ b/configs/nanopc-t4-rk3399_defconfig
@@ -20,6 +20,8 @@ CONFIG_SPL_MAX_SIZE=0x2e000
 CONFIG_SPL_PAD_TO=0x7f8000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x400000
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x10000
 CONFIG_TPL=y
diff --git a/configs/nanopi-m4-2gb-rk3399_defconfig b/configs/nanopi-m4-2gb-rk3399_defconfig
index c3ecb9946069..390cfbb60f15 100644
--- a/configs/nanopi-m4-2gb-rk3399_defconfig
+++ b/configs/nanopi-m4-2gb-rk3399_defconfig
@@ -20,6 +20,8 @@ CONFIG_SPL_MAX_SIZE=0x2e000
 CONFIG_SPL_PAD_TO=0x7f8000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x400000
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x10000
 CONFIG_TPL=y
diff --git a/configs/nanopi-m4-rk3399_defconfig b/configs/nanopi-m4-rk3399_defconfig
index 608bed247c93..37d91e53912a 100644
--- a/configs/nanopi-m4-rk3399_defconfig
+++ b/configs/nanopi-m4-rk3399_defconfig
@@ -20,6 +20,8 @@ CONFIG_SPL_MAX_SIZE=0x2e000
 CONFIG_SPL_PAD_TO=0x7f8000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x400000
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x10000
 CONFIG_TPL=y
diff --git a/configs/nanopi-m4b-rk3399_defconfig b/configs/nanopi-m4b-rk3399_defconfig
index 125c3ee30e35..7bf1ca299d59 100644
--- a/configs/nanopi-m4b-rk3399_defconfig
+++ b/configs/nanopi-m4b-rk3399_defconfig
@@ -20,6 +20,8 @@ CONFIG_SPL_MAX_SIZE=0x2e000
 CONFIG_SPL_PAD_TO=0x7f8000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x400000
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x10000
 CONFIG_TPL=y
diff --git a/configs/nanopi-neo4-rk3399_defconfig b/configs/nanopi-neo4-rk3399_defconfig
index 3d159ff488ad..69174b951223 100644
--- a/configs/nanopi-neo4-rk3399_defconfig
+++ b/configs/nanopi-neo4-rk3399_defconfig
@@ -20,6 +20,8 @@ CONFIG_SPL_MAX_SIZE=0x2e000
 CONFIG_SPL_PAD_TO=0x7f8000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x400000
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x10000
 CONFIG_TPL=y
diff --git a/configs/nanopi-r2s-rk3328_defconfig b/configs/nanopi-r2s-rk3328_defconfig
index 0049655be380..b1e2a6d3bfee 100644
--- a/configs/nanopi-r2s-rk3328_defconfig
+++ b/configs/nanopi-r2s-rk3328_defconfig
@@ -33,6 +33,8 @@ CONFIG_SPL_PAD_TO=0x7f8000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
 CONFIG_TPL_SYS_MALLOC_SIMPLE=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x400000
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_POWER=y
diff --git a/configs/nanopi-r4s-rk3399_defconfig b/configs/nanopi-r4s-rk3399_defconfig
index cd7a521d84e2..ca10940e79b8 100644
--- a/configs/nanopi-r4s-rk3399_defconfig
+++ b/configs/nanopi-r4s-rk3399_defconfig
@@ -20,6 +20,8 @@ CONFIG_SPL_MAX_SIZE=0x2e000
 CONFIG_SPL_PAD_TO=0x7f8000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x400000
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x10000
 CONFIG_TPL=y
diff --git a/configs/nanopi_a64_defconfig b/configs/nanopi_a64_defconfig
index 042689e933cb..8f3c242a7a93 100644
--- a/configs/nanopi_a64_defconfig
+++ b/configs/nanopi_a64_defconfig
@@ -5,6 +5,7 @@ CONFIG_SPL=y
 CONFIG_MACH_SUN50I=y
 CONFIG_RESERVE_ALLWINNER_BOOT0_HEADER=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x54000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SUN8I_EMAC=y
 CONFIG_USB_EHCI_HCD=y
diff --git a/configs/nanopi_m1_defconfig b/configs/nanopi_m1_defconfig
index 547c20358f25..47a6b7804e37 100644
--- a/configs/nanopi_m1_defconfig
+++ b/configs/nanopi_m1_defconfig
@@ -5,6 +5,7 @@ CONFIG_SPL=y
 CONFIG_MACH_SUN8I_H3=y
 CONFIG_DRAM_CLK=408
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_USB_EHCI_HCD=y
 CONFIG_USB_OHCI_HCD=y
diff --git a/configs/nanopi_m1_plus_defconfig b/configs/nanopi_m1_plus_defconfig
index 5ce046cd3f70..c71d721f743a 100644
--- a/configs/nanopi_m1_plus_defconfig
+++ b/configs/nanopi_m1_plus_defconfig
@@ -8,6 +8,7 @@ CONFIG_MACPWR="PD6"
 CONFIG_MMC0_CD_PIN="PH13"
 CONFIG_MMC_SUNXI_SLOT_EXTRA=2
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SUN8I_EMAC=y
 CONFIG_USB_EHCI_HCD=y
diff --git a/configs/nanopi_neo2_defconfig b/configs/nanopi_neo2_defconfig
index f994fceffd4a..66df94b33b9f 100644
--- a/configs/nanopi_neo2_defconfig
+++ b/configs/nanopi_neo2_defconfig
@@ -7,6 +7,7 @@ CONFIG_DRAM_CLK=672
 CONFIG_DRAM_ZQ=3881977
 # CONFIG_DRAM_ODT_EN is not set
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x54000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SUN8I_EMAC=y
 CONFIG_USB_EHCI_HCD=y
diff --git a/configs/nanopi_neo_air_defconfig b/configs/nanopi_neo_air_defconfig
index 23c1527e9cd2..b83b6a3499dd 100644
--- a/configs/nanopi_neo_air_defconfig
+++ b/configs/nanopi_neo_air_defconfig
@@ -7,6 +7,7 @@ CONFIG_DRAM_CLK=408
 # CONFIG_VIDEO_DE2 is not set
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_CONSOLE_MUX=y
+CONFIG_SPL_STACK=0x8000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_USB_EHCI_HCD=y
 CONFIG_USB_OHCI_HCD=y
diff --git a/configs/nanopi_neo_defconfig b/configs/nanopi_neo_defconfig
index e46e5b810594..f8377535e97d 100644
--- a/configs/nanopi_neo_defconfig
+++ b/configs/nanopi_neo_defconfig
@@ -7,6 +7,7 @@ CONFIG_DRAM_CLK=408
 # CONFIG_VIDEO_DE2 is not set
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_CONSOLE_MUX=y
+CONFIG_SPL_STACK=0x8000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SUN8I_EMAC=y
 CONFIG_USB_EHCI_HCD=y
diff --git a/configs/nanopi_neo_plus2_defconfig b/configs/nanopi_neo_plus2_defconfig
index 8eb370ab6a4d..60f26318429b 100644
--- a/configs/nanopi_neo_plus2_defconfig
+++ b/configs/nanopi_neo_plus2_defconfig
@@ -9,6 +9,7 @@ CONFIG_DRAM_ZQ=3881977
 CONFIG_MACPWR="PD6"
 CONFIG_MMC_SUNXI_SLOT_EXTRA=2
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x54000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SUN8I_EMAC=y
 CONFIG_USB_EHCI_HCD=y
diff --git a/configs/nanopi_r1s_h5_defconfig b/configs/nanopi_r1s_h5_defconfig
index 9d0a4d7e5009..06c564ec8cd8 100644
--- a/configs/nanopi_r1s_h5_defconfig
+++ b/configs/nanopi_r1s_h5_defconfig
@@ -9,6 +9,7 @@ CONFIG_DRAM_ZQ=3881977
 CONFIG_MACPWR="PD6"
 CONFIG_MMC_SUNXI_SLOT_EXTRA=2
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x54000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SUN8I_EMAC=y
 CONFIG_USB_EHCI_HCD=y
diff --git a/configs/novena_defconfig b/configs/novena_defconfig
index 215aaa605b52..3faeaf150d5f 100644
--- a/configs/novena_defconfig
+++ b/configs/novena_defconfig
@@ -31,6 +31,8 @@ CONFIG_BOOTARGS="console=ttymxc1,115200 "
 CONFIG_BOOTCOMMAND="run distro_bootcmd ; run net_nfs"
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_MISC_INIT_R=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_FS_EXT4=y
 CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot-dtb.img"
 CONFIG_SPL_I2C=y
diff --git a/configs/nyan-big_defconfig b/configs/nyan-big_defconfig
index 4433b65644f8..1ffddbe35e36 100644
--- a/configs/nyan-big_defconfig
+++ b/configs/nyan-big_defconfig
@@ -25,6 +25,8 @@ CONFIG_SYS_STDIO_DEREGISTER=y
 CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_SPL_FOOTPRINT_LIMIT=y
 CONFIG_SPL_MAX_FOOTPRINT=0xef8100
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x800ffffc
 CONFIG_SYS_PROMPT="Tegra124 (Nyan-big) # "
 CONFIG_SYS_MAXARGS=64
 CONFIG_SYS_PBSIZE=2087
diff --git a/configs/oceanic_5205_5inmfd_defconfig b/configs/oceanic_5205_5inmfd_defconfig
index 5392e3485f57..21468c426b52 100644
--- a/configs/oceanic_5205_5inmfd_defconfig
+++ b/configs/oceanic_5205_5inmfd_defconfig
@@ -10,6 +10,7 @@ CONFIG_DRAM_ZQ=3881949
 CONFIG_MMC0_CD_PIN=""
 CONFIG_SPL_SPI_SUNXI=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x54000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SUN8I_EMAC=y
 CONFIG_SPI=y
diff --git a/configs/odroid-go2_defconfig b/configs/odroid-go2_defconfig
index 2990b65347e9..6925c26bc106 100644
--- a/configs/odroid-go2_defconfig
+++ b/configs/odroid-go2_defconfig
@@ -39,6 +39,8 @@ CONFIG_SPL_PAD_TO=0x7f8000
 CONFIG_SPL_BSS_MAX_SIZE=0x4000
 CONFIG_SPL_BOOTROM_SUPPORT=y
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x400000
 CONFIG_SPL_STACK_R=y
 # CONFIG_TPL_BANNER_PRINT is not set
 CONFIG_SPL_I2C=y
diff --git a/configs/omapl138_lcdk_defconfig b/configs/omapl138_lcdk_defconfig
index 8b3796dfb636..5669c355e93e 100644
--- a/configs/omapl138_lcdk_defconfig
+++ b/configs/omapl138_lcdk_defconfig
@@ -37,6 +37,8 @@ CONFIG_SPL_PAD_TO=0x8000
 CONFIG_SPL_FOOTPRINT_LIMIT=y
 CONFIG_SPL_MAX_FOOTPRINT=0x8000
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x8001ff00
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0xb5
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_SPL_NAND_DRIVERS=y
diff --git a/configs/openpiton_riscv64_spl_defconfig b/configs/openpiton_riscv64_spl_defconfig
index 8d2ddedb54c8..e041de4b2b1c 100644
--- a/configs/openpiton_riscv64_spl_defconfig
+++ b/configs/openpiton_riscv64_spl_defconfig
@@ -25,6 +25,8 @@ CONFIG_BOOTCOMMAND="fdt addr ${fdtcontroladdr}; fdt move ${fdtcontroladdr} ${fdt
 CONFIG_SPL_MAX_SIZE=0x100000
 # CONFIG_SPL_LEGACY_IMAGE_FORMAT is not set
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x83fffe80
 # CONFIG_SPL_BANNER_PRINT is not set
 CONFIG_SPL_CPU=y
 CONFIG_SPL_FS_EXT4=y
diff --git a/configs/opos6uldev_defconfig b/configs/opos6uldev_defconfig
index 8b0b4c33e140..ddf879d19eb3 100644
--- a/configs/opos6uldev_defconfig
+++ b/configs/opos6uldev_defconfig
@@ -31,6 +31,8 @@ CONFIG_DEFAULT_FDT_FILE="imx6ul-opos6uldev.dtb"
 # CONFIG_CONSOLE_MUX is not set
 CONFIG_SYS_CONSOLE_IS_IN_ENV=y
 CONFIG_SPL_BOARD_INIT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_WATCHDOG=y
 CONFIG_SPL_YMODEM_SUPPORT=y
diff --git a/configs/orangepi-rk3399_defconfig b/configs/orangepi-rk3399_defconfig
index 6a8e33321104..790936dff340 100644
--- a/configs/orangepi-rk3399_defconfig
+++ b/configs/orangepi-rk3399_defconfig
@@ -20,6 +20,8 @@ CONFIG_SPL_MAX_SIZE=0x2e000
 CONFIG_SPL_PAD_TO=0x7f8000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x400000
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x10000
 CONFIG_TPL=y
diff --git a/configs/orangepi_2_defconfig b/configs/orangepi_2_defconfig
index f1e260317ded..e18b8610847c 100644
--- a/configs/orangepi_2_defconfig
+++ b/configs/orangepi_2_defconfig
@@ -7,6 +7,7 @@ CONFIG_MACH_SUN8I_H3=y
 CONFIG_DRAM_CLK=672
 CONFIG_USB1_VBUS_PIN="PG13"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SPL_SYS_I2C_LEGACY=y
diff --git a/configs/orangepi_3_defconfig b/configs/orangepi_3_defconfig
index 59e85bb24e84..824f017dae45 100644
--- a/configs/orangepi_3_defconfig
+++ b/configs/orangepi_3_defconfig
@@ -8,6 +8,7 @@ CONFIG_MMC0_CD_PIN="PF6"
 CONFIG_MMC_SUNXI_SLOT_EXTRA=2
 CONFIG_BLUETOOTH_DT_DEVICE_FIXUP="brcm,bcm4345c5"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x118000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_PHY_SUN50I_USB3=y
 CONFIG_USB_XHCI_HCD=y
diff --git a/configs/orangepi_lite2_defconfig b/configs/orangepi_lite2_defconfig
index e7e18effd16d..cfce6cb0d478 100644
--- a/configs/orangepi_lite2_defconfig
+++ b/configs/orangepi_lite2_defconfig
@@ -7,6 +7,7 @@ CONFIG_SUNXI_DRAM_H6_LPDDR3=y
 CONFIG_MMC0_CD_PIN="PF6"
 # CONFIG_PSCI_RESET is not set
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x118000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_USB_EHCI_HCD=y
 CONFIG_USB_OHCI_HCD=y
diff --git a/configs/orangepi_lite_defconfig b/configs/orangepi_lite_defconfig
index 4f48ef1b5f5c..c7174170dbf2 100644
--- a/configs/orangepi_lite_defconfig
+++ b/configs/orangepi_lite_defconfig
@@ -5,6 +5,7 @@ CONFIG_SPL=y
 CONFIG_MACH_SUN8I_H3=y
 CONFIG_DRAM_CLK=672
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_USB_EHCI_HCD=y
 CONFIG_USB_OHCI_HCD=y
diff --git a/configs/orangepi_one_defconfig b/configs/orangepi_one_defconfig
index ee9d8f397b2e..112ff5e5b6ac 100644
--- a/configs/orangepi_one_defconfig
+++ b/configs/orangepi_one_defconfig
@@ -5,6 +5,7 @@ CONFIG_SPL=y
 CONFIG_MACH_SUN8I_H3=y
 CONFIG_DRAM_CLK=672
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SUN8I_EMAC=y
 CONFIG_USB_EHCI_HCD=y
diff --git a/configs/orangepi_one_plus_defconfig b/configs/orangepi_one_plus_defconfig
index e13a32041ae5..63d3addbdd38 100644
--- a/configs/orangepi_one_plus_defconfig
+++ b/configs/orangepi_one_plus_defconfig
@@ -7,6 +7,7 @@ CONFIG_SUNXI_DRAM_H6_LPDDR3=y
 CONFIG_MMC0_CD_PIN="PF6"
 # CONFIG_PSCI_RESET is not set
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x118000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_USB_EHCI_HCD=y
 CONFIG_USB_OHCI_HCD=y
diff --git a/configs/orangepi_pc2_defconfig b/configs/orangepi_pc2_defconfig
index 6a6b81fa3936..7b12bf00ff24 100644
--- a/configs/orangepi_pc2_defconfig
+++ b/configs/orangepi_pc2_defconfig
@@ -8,6 +8,7 @@ CONFIG_DRAM_ZQ=3881977
 CONFIG_MACPWR="PD6"
 CONFIG_SPL_SPI_SUNXI=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x54000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SPL_SYS_I2C_LEGACY=y
diff --git a/configs/orangepi_pc_defconfig b/configs/orangepi_pc_defconfig
index 2ef2a962f413..28107ad5f7a2 100644
--- a/configs/orangepi_pc_defconfig
+++ b/configs/orangepi_pc_defconfig
@@ -5,6 +5,7 @@ CONFIG_SPL=y
 CONFIG_MACH_SUN8I_H3=y
 CONFIG_DRAM_CLK=624
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SPL_SYS_I2C_LEGACY=y
diff --git a/configs/orangepi_pc_plus_defconfig b/configs/orangepi_pc_plus_defconfig
index 8457b78a39c9..30638679bc6e 100644
--- a/configs/orangepi_pc_plus_defconfig
+++ b/configs/orangepi_pc_plus_defconfig
@@ -6,6 +6,7 @@ CONFIG_MACH_SUN8I_H3=y
 CONFIG_DRAM_CLK=624
 CONFIG_MMC_SUNXI_SLOT_EXTRA=2
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SPL_SYS_I2C_LEGACY=y
diff --git a/configs/orangepi_plus2e_defconfig b/configs/orangepi_plus2e_defconfig
index f33b75d5e3db..85b25ddd1677 100644
--- a/configs/orangepi_plus2e_defconfig
+++ b/configs/orangepi_plus2e_defconfig
@@ -7,6 +7,7 @@ CONFIG_DRAM_CLK=672
 CONFIG_MACPWR="PD6"
 CONFIG_MMC_SUNXI_SLOT_EXTRA=2
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SPL_SYS_I2C_LEGACY=y
diff --git a/configs/orangepi_plus_defconfig b/configs/orangepi_plus_defconfig
index e8fda9a5f113..dff0a2fd6e98 100644
--- a/configs/orangepi_plus_defconfig
+++ b/configs/orangepi_plus_defconfig
@@ -9,6 +9,7 @@ CONFIG_MMC_SUNXI_SLOT_EXTRA=2
 CONFIG_USB1_VBUS_PIN="PG13"
 CONFIG_SATAPWR="PG11"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SPL_SYS_I2C_LEGACY=y
diff --git a/configs/orangepi_prime_defconfig b/configs/orangepi_prime_defconfig
index 29ef1b8553ab..8c4cb57ef0f9 100644
--- a/configs/orangepi_prime_defconfig
+++ b/configs/orangepi_prime_defconfig
@@ -7,6 +7,7 @@ CONFIG_DRAM_CLK=672
 CONFIG_DRAM_ZQ=3881977
 # CONFIG_DRAM_ODT_EN is not set
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x54000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SUN8I_EMAC=y
 CONFIG_USB_EHCI_HCD=y
diff --git a/configs/orangepi_r1_defconfig b/configs/orangepi_r1_defconfig
index 6b68f77833df..e15069c048e8 100644
--- a/configs/orangepi_r1_defconfig
+++ b/configs/orangepi_r1_defconfig
@@ -8,6 +8,7 @@ CONFIG_DRAM_CLK=624
 CONFIG_SPL_SPI_SUNXI=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_CONSOLE_MUX=y
+CONFIG_SPL_STACK=0x8000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SPI_FLASH_WINBOND=y
 CONFIG_SUN8I_EMAC=y
diff --git a/configs/orangepi_win_defconfig b/configs/orangepi_win_defconfig
index 9fce313eb9e5..830cbbaaeba3 100644
--- a/configs/orangepi_win_defconfig
+++ b/configs/orangepi_win_defconfig
@@ -7,6 +7,7 @@ CONFIG_RESERVE_ALLWINNER_BOOT0_HEADER=y
 CONFIG_MACPWR="PD14"
 CONFIG_SPL_SPI_SUNXI=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x54000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SPI_FLASH_WINBOND=y
 CONFIG_PHY_REALTEK=y
diff --git a/configs/orangepi_zero2_defconfig b/configs/orangepi_zero2_defconfig
index d9c89c88a97d..62117548e2bc 100644
--- a/configs/orangepi_zero2_defconfig
+++ b/configs/orangepi_zero2_defconfig
@@ -11,6 +11,7 @@ CONFIG_MMC0_CD_PIN="PF6"
 CONFIG_R_I2C_ENABLE=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL_MAX_SIZE=0xbfa0
+CONFIG_SPL_STACK=0x58000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SPL_SYS_I2C_LEGACY=y
diff --git a/configs/orangepi_zero_defconfig b/configs/orangepi_zero_defconfig
index e6af0fb8e7d6..b5ff84aaf67c 100644
--- a/configs/orangepi_zero_defconfig
+++ b/configs/orangepi_zero_defconfig
@@ -8,6 +8,7 @@ CONFIG_DRAM_CLK=624
 CONFIG_SPL_SPI_SUNXI=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_CONSOLE_MUX=y
+CONFIG_SPL_STACK=0x8000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SPI_FLASH_WINBOND=y
 CONFIG_SUN8I_EMAC=y
diff --git a/configs/orangepi_zero_plus2_defconfig b/configs/orangepi_zero_plus2_defconfig
index 623dd040835e..79040125dcc3 100644
--- a/configs/orangepi_zero_plus2_defconfig
+++ b/configs/orangepi_zero_plus2_defconfig
@@ -9,6 +9,7 @@ CONFIG_DRAM_ZQ=3881977
 CONFIG_MMC0_CD_PIN="PH13"
 CONFIG_MMC_SUNXI_SLOT_EXTRA=2
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x54000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SUN8I_EMAC=y
 CONFIG_USB_EHCI_HCD=y
diff --git a/configs/orangepi_zero_plus2_h3_defconfig b/configs/orangepi_zero_plus2_h3_defconfig
index ff73e84a58d3..b2d4f3f8e07d 100644
--- a/configs/orangepi_zero_plus2_h3_defconfig
+++ b/configs/orangepi_zero_plus2_h3_defconfig
@@ -8,6 +8,7 @@ CONFIG_DRAM_CLK=672
 CONFIG_MMC0_CD_PIN="PH13"
 CONFIG_MMC_SUNXI_SLOT_EXTRA=2
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SUN8I_EMAC=y
 CONFIG_USB_EHCI_HCD=y
diff --git a/configs/orangepi_zero_plus_defconfig b/configs/orangepi_zero_plus_defconfig
index e7d6b5d32cad..008384e46014 100644
--- a/configs/orangepi_zero_plus_defconfig
+++ b/configs/orangepi_zero_plus_defconfig
@@ -7,6 +7,7 @@ CONFIG_DRAM_CLK=624
 CONFIG_DRAM_ZQ=3881977
 # CONFIG_DRAM_ODT_EN is not set
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x54000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SUN8I_EMAC=y
 CONFIG_USB_EHCI_HCD=y
diff --git a/configs/parrot_r16_defconfig b/configs/parrot_r16_defconfig
index 5922e645075c..14e9b455feb7 100644
--- a/configs/parrot_r16_defconfig
+++ b/configs/parrot_r16_defconfig
@@ -11,6 +11,7 @@ CONFIG_USB0_ID_DET="PD10"
 CONFIG_USB1_VBUS_PIN="PD12"
 CONFIG_AXP_GPIO=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_FASTBOOT_CMD_OEM_FORMAT=y
 CONFIG_CONS_INDEX=5
diff --git a/configs/paz00_defconfig b/configs/paz00_defconfig
index 08106e981117..091c9a2b4846 100644
--- a/configs/paz00_defconfig
+++ b/configs/paz00_defconfig
@@ -14,6 +14,8 @@ CONFIG_OF_SYSTEM_SETUP=y
 CONFIG_SYS_STDIO_DEREGISTER=y
 CONFIG_SPL_FOOTPRINT_LIMIT=y
 CONFIG_SPL_MAX_FOOTPRINT=0x8000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xffffc
 CONFIG_SYS_PROMPT="Tegra20 (Paz00) MOD # "
 CONFIG_SYS_MAXARGS=64
 CONFIG_SYS_PBSIZE=2087
diff --git a/configs/pcm058_defconfig b/configs/pcm058_defconfig
index 54bef4e062e3..f66589948824 100644
--- a/configs/pcm058_defconfig
+++ b/configs/pcm058_defconfig
@@ -30,6 +30,8 @@ CONFIG_BOOTDELAY=3
 CONFIG_BOOTCOMMAND="run mmcboot;run nandboot"
 CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_SPL_BOARD_INIT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x93ffb8
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x18a
 CONFIG_SPL_DMA=y
 CONFIG_SPL_FS_EXT4=y
diff --git a/configs/phycore-imx8mm_defconfig b/configs/phycore-imx8mm_defconfig
index 492451da0441..8450d2fc31ec 100644
--- a/configs/phycore-imx8mm_defconfig
+++ b/configs/phycore-imx8mm_defconfig
@@ -29,6 +29,8 @@ CONFIG_BOARD_LATE_INIT=y
 CONFIG_SPL_MAX_SIZE=0x25000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_BOARD_INIT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x920000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_I2C=y
diff --git a/configs/phycore-imx8mp_defconfig b/configs/phycore-imx8mp_defconfig
index bc2fe25545e7..8d783d30cc32 100644
--- a/configs/phycore-imx8mp_defconfig
+++ b/configs/phycore-imx8mp_defconfig
@@ -32,6 +32,8 @@ CONFIG_SPL_BSS_MAX_SIZE=0x400
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_BOOTROM_SUPPORT=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x960000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_I2C=y
diff --git a/configs/phycore-rk3288_defconfig b/configs/phycore-rk3288_defconfig
index 522dd6679d72..d791e9dcf8d4 100644
--- a/configs/phycore-rk3288_defconfig
+++ b/configs/phycore-rk3288_defconfig
@@ -25,6 +25,8 @@ CONFIG_CONSOLE_MUX=y
 CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_SPL_PAD_TO=0x7f8000
 CONFIG_SPL_NO_BSS_LIMIT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xff718000
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x2000
 CONFIG_CMD_GPIO=y
diff --git a/configs/phycore_pcl063_defconfig b/configs/phycore_pcl063_defconfig
index 6dcb789609f0..442dcc75ee04 100644
--- a/configs/phycore_pcl063_defconfig
+++ b/configs/phycore_pcl063_defconfig
@@ -18,6 +18,8 @@ CONFIG_SYS_MEMTEST_END=0x90000000
 CONFIG_DISTRO_DEFAULTS=y
 CONFIG_BOOTDELAY=3
 CONFIG_BOARD_EARLY_INIT_F=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_USB_HOST=y
 CONFIG_SPL_WATCHDOG=y
 CONFIG_SYS_MAXARGS=32
diff --git a/configs/phycore_pcl063_ull_defconfig b/configs/phycore_pcl063_ull_defconfig
index e40ca07b7c08..96ea32747053 100644
--- a/configs/phycore_pcl063_ull_defconfig
+++ b/configs/phycore_pcl063_ull_defconfig
@@ -18,6 +18,8 @@ CONFIG_FIT=y
 CONFIG_BOOTDELAY=3
 CONFIG_BOOTCOMMAND="run mmc_mmc_fit"
 CONFIG_BOARD_EARLY_INIT_F=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_USB_HOST=y
 CONFIG_SPL_WATCHDOG=y
 CONFIG_SYS_MAXARGS=32
diff --git a/configs/pico-dwarf-imx6ul_defconfig b/configs/pico-dwarf-imx6ul_defconfig
index 15dc2098ad44..298865bb2b9f 100644
--- a/configs/pico-dwarf-imx6ul_defconfig
+++ b/configs/pico-dwarf-imx6ul_defconfig
@@ -25,6 +25,8 @@ CONFIG_BOOTDELAY=3
 CONFIG_BOOTCOMMAND="run findfdt; run finduuid; run distro_bootcmd"
 CONFIG_DEFAULT_FDT_FILE="imx6ul-pico-dwarf.dtb"
 CONFIG_BOARD_EARLY_INIT_F=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_USB_HOST=y
 CONFIG_SPL_USB_GADGET=y
 CONFIG_SPL_USB_SDP_SUPPORT=y
diff --git a/configs/pico-dwarf-imx7d_defconfig b/configs/pico-dwarf-imx7d_defconfig
index 00067d2e46d9..e1d0e3438ddb 100644
--- a/configs/pico-dwarf-imx7d_defconfig
+++ b/configs/pico-dwarf-imx7d_defconfig
@@ -27,6 +27,8 @@ CONFIG_BOOTCOMMAND="run findfdt; run finduuid; run distro_bootcmd"
 CONFIG_DEFAULT_FDT_FILE="imx7d-pico-dwarf.dtb"
 CONFIG_SPL_MAX_SIZE=0xe000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x946bb8
 CONFIG_SPL_I2C=y
 CONFIG_SPL_USB_HOST=y
 CONFIG_SPL_USB_GADGET=y
diff --git a/configs/pico-hobbit-imx6ul_defconfig b/configs/pico-hobbit-imx6ul_defconfig
index eeb95d431dbc..15fe0df9c00c 100644
--- a/configs/pico-hobbit-imx6ul_defconfig
+++ b/configs/pico-hobbit-imx6ul_defconfig
@@ -26,6 +26,8 @@ CONFIG_BOOTDELAY=3
 CONFIG_BOOTCOMMAND="run findfdt; run finduuid; run distro_bootcmd"
 CONFIG_DEFAULT_FDT_FILE="imx6ul-pico-hobbit.dtb"
 CONFIG_BOARD_EARLY_INIT_F=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_USB_HOST=y
 CONFIG_SPL_USB_GADGET=y
 CONFIG_SPL_USB_SDP_SUPPORT=y
diff --git a/configs/pico-hobbit-imx7d_defconfig b/configs/pico-hobbit-imx7d_defconfig
index 64c2ca4b189f..4ccbcf90a618 100644
--- a/configs/pico-hobbit-imx7d_defconfig
+++ b/configs/pico-hobbit-imx7d_defconfig
@@ -27,6 +27,8 @@ CONFIG_BOOTCOMMAND="run findfdt; run finduuid; run distro_bootcmd"
 CONFIG_DEFAULT_FDT_FILE="imx7d-pico-hobbit.dtb"
 CONFIG_SPL_MAX_SIZE=0xe000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x946bb8
 CONFIG_SPL_I2C=y
 CONFIG_SPL_USB_HOST=y
 CONFIG_SPL_USB_GADGET=y
diff --git a/configs/pico-imx6_defconfig b/configs/pico-imx6_defconfig
index 09809542606d..bc20d4253327 100644
--- a/configs/pico-imx6_defconfig
+++ b/configs/pico-imx6_defconfig
@@ -27,6 +27,8 @@ CONFIG_SPL_LOAD_FIT=y
 CONFIG_BOOTCOMMAND="run default_boot"
 CONFIG_DEFAULT_FDT_FILE="ask"
 CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_FIT_IMAGE_TINY=y
 CONFIG_SPL_FS_EXT4=y
 CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot-dtb.img"
diff --git a/configs/pico-imx6ul_defconfig b/configs/pico-imx6ul_defconfig
index 7e923d0bc027..37cbc96dc0ed 100644
--- a/configs/pico-imx6ul_defconfig
+++ b/configs/pico-imx6ul_defconfig
@@ -26,6 +26,8 @@ CONFIG_BOOTDELAY=3
 CONFIG_BOOTCOMMAND="run findfdt; run finduuid; run distro_bootcmd"
 CONFIG_DEFAULT_FDT_FILE="ask"
 CONFIG_BOARD_EARLY_INIT_F=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_USB_HOST=y
 CONFIG_SPL_USB_GADGET=y
 CONFIG_SPL_USB_SDP_SUPPORT=y
diff --git a/configs/pico-imx7d_bl33_defconfig b/configs/pico-imx7d_bl33_defconfig
index d13336d0548c..3d342d78186b 100644
--- a/configs/pico-imx7d_bl33_defconfig
+++ b/configs/pico-imx7d_bl33_defconfig
@@ -28,6 +28,8 @@ CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="run distro_bootcmd"
 CONFIG_SPL_MAX_SIZE=0xe000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x946bb8
 CONFIG_SPL_I2C=y
 CONFIG_SPL_USB_HOST=y
 CONFIG_SPL_USB_GADGET=y
diff --git a/configs/pico-imx7d_defconfig b/configs/pico-imx7d_defconfig
index a6ee5cebfe26..df57fa13321a 100644
--- a/configs/pico-imx7d_defconfig
+++ b/configs/pico-imx7d_defconfig
@@ -27,6 +27,8 @@ CONFIG_BOOTCOMMAND="run findfdt; run finduuid; run distro_bootcmd"
 CONFIG_DEFAULT_FDT_FILE="ask"
 CONFIG_SPL_MAX_SIZE=0xe000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x946bb8
 CONFIG_SPL_I2C=y
 CONFIG_SPL_USB_HOST=y
 CONFIG_SPL_USB_GADGET=y
diff --git a/configs/pico-imx8mq_defconfig b/configs/pico-imx8mq_defconfig
index b706b80874f2..1a8f2015b8a8 100644
--- a/configs/pico-imx8mq_defconfig
+++ b/configs/pico-imx8mq_defconfig
@@ -33,6 +33,8 @@ CONFIG_BOARD_LATE_INIT=y
 CONFIG_SPL_MAX_SIZE=0x1f000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_BOARD_INIT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x187ff0
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_I2C=y
diff --git a/configs/pico-nymph-imx7d_defconfig b/configs/pico-nymph-imx7d_defconfig
index 00067d2e46d9..e1d0e3438ddb 100644
--- a/configs/pico-nymph-imx7d_defconfig
+++ b/configs/pico-nymph-imx7d_defconfig
@@ -27,6 +27,8 @@ CONFIG_BOOTCOMMAND="run findfdt; run finduuid; run distro_bootcmd"
 CONFIG_DEFAULT_FDT_FILE="imx7d-pico-dwarf.dtb"
 CONFIG_SPL_MAX_SIZE=0xe000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x946bb8
 CONFIG_SPL_I2C=y
 CONFIG_SPL_USB_HOST=y
 CONFIG_SPL_USB_GADGET=y
diff --git a/configs/pico-pi-imx6ul_defconfig b/configs/pico-pi-imx6ul_defconfig
index 2cc6d4f8bed5..c3613d5745f6 100644
--- a/configs/pico-pi-imx6ul_defconfig
+++ b/configs/pico-pi-imx6ul_defconfig
@@ -26,6 +26,8 @@ CONFIG_BOOTDELAY=3
 CONFIG_BOOTCOMMAND="run findfdt; run finduuid; run distro_bootcmd"
 CONFIG_DEFAULT_FDT_FILE="imx6ul-pico-pi.dtb"
 CONFIG_BOARD_EARLY_INIT_F=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_USB_HOST=y
 CONFIG_SPL_USB_GADGET=y
 CONFIG_SPL_USB_SDP_SUPPORT=y
diff --git a/configs/pico-pi-imx7d_defconfig b/configs/pico-pi-imx7d_defconfig
index b74b2582cb95..c799968944c6 100644
--- a/configs/pico-pi-imx7d_defconfig
+++ b/configs/pico-pi-imx7d_defconfig
@@ -27,6 +27,8 @@ CONFIG_BOOTCOMMAND="run findfdt; run finduuid; run distro_bootcmd"
 CONFIG_DEFAULT_FDT_FILE="imx7d-pico-pi.dtb"
 CONFIG_SPL_MAX_SIZE=0xe000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x946bb8
 CONFIG_SPL_I2C=y
 CONFIG_SPL_USB_HOST=y
 CONFIG_SPL_USB_GADGET=y
diff --git a/configs/pine64-lts_defconfig b/configs/pine64-lts_defconfig
index 94c03f16a8c3..c6b4f7bf1438 100644
--- a/configs/pine64-lts_defconfig
+++ b/configs/pine64-lts_defconfig
@@ -10,6 +10,7 @@ CONFIG_MMC0_CD_PIN=""
 CONFIG_MMC_SUNXI_SLOT_EXTRA=2
 CONFIG_SPL_SPI_SUNXI=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x54000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SUPPORT_EMMC_BOOT=y
 CONFIG_SPI_FLASH_WINBOND=y
diff --git a/configs/pine64_plus_defconfig b/configs/pine64_plus_defconfig
index dc02ca10d7e8..7dbe061790cd 100644
--- a/configs/pine64_plus_defconfig
+++ b/configs/pine64_plus_defconfig
@@ -6,6 +6,7 @@ CONFIG_MACH_SUN50I=y
 CONFIG_RESERVE_ALLWINNER_BOOT0_HEADER=y
 CONFIG_PINE64_DT_SELECTION=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x54000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_OF_LIST="sun50i-a64-pine64 sun50i-a64-pine64-plus"
 CONFIG_PHY_REALTEK=y
diff --git a/configs/pine_h64_defconfig b/configs/pine_h64_defconfig
index 7466c3b2c5fd..2cddcf58301e 100644
--- a/configs/pine_h64_defconfig
+++ b/configs/pine_h64_defconfig
@@ -11,6 +11,7 @@ CONFIG_USB3_VBUS_PIN="PL5"
 CONFIG_SPL_SPI_SUNXI=y
 # CONFIG_PSCI_RESET is not set
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x118000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SUPPORT_EMMC_BOOT=y
 CONFIG_SPI_FLASH_WINBOND=y
diff --git a/configs/pinebook-pro-rk3399_defconfig b/configs/pinebook-pro-rk3399_defconfig
index 5f763acfcefb..c831830656c7 100644
--- a/configs/pinebook-pro-rk3399_defconfig
+++ b/configs/pinebook-pro-rk3399_defconfig
@@ -25,6 +25,8 @@ CONFIG_SPL_MAX_SIZE=0x2e000
 CONFIG_SPL_PAD_TO=0x7f8000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x400000
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x10000
 CONFIG_SPL_MTD_SUPPORT=y
diff --git a/configs/pinebook_defconfig b/configs/pinebook_defconfig
index 1bdfcf27be03..bf070aab8b34 100644
--- a/configs/pinebook_defconfig
+++ b/configs/pinebook_defconfig
@@ -8,6 +8,7 @@ CONFIG_DRAM_CLK=552
 CONFIG_DRAM_ZQ=3881949
 CONFIG_MMC_SUNXI_SLOT_EXTRA=2
 CONFIG_R_I2C_ENABLE=y
+CONFIG_SPL_STACK=0x54000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SPL_SYS_I2C_LEGACY=y
 CONFIG_SYS_I2C_MVTWSI=y
diff --git a/configs/pinecube_defconfig b/configs/pinecube_defconfig
index 1259b85361d0..531cf0f83b62 100644
--- a/configs/pinecube_defconfig
+++ b/configs/pinecube_defconfig
@@ -8,6 +8,7 @@ CONFIG_DRAM_CLK=504
 CONFIG_DRAM_ODT_EN=y
 CONFIG_I2C0_ENABLE=y
 # CONFIG_HAS_ARMV7_SECURE_BASE is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SPL_SYS_I2C_LEGACY=y
diff --git a/configs/pinephone_defconfig b/configs/pinephone_defconfig
index ae60943e95ab..d882c0cc8802 100644
--- a/configs/pinephone_defconfig
+++ b/configs/pinephone_defconfig
@@ -10,6 +10,7 @@ CONFIG_DRAM_ZQ=3881949
 CONFIG_MMC_SUNXI_SLOT_EXTRA=2
 CONFIG_PINEPHONE_DT_SELECTION=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x54000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_OF_LIST="sun50i-a64-pinephone-1.1 sun50i-a64-pinephone-1.2"
 CONFIG_LED_STATUS=y
diff --git a/configs/pinetab_defconfig b/configs/pinetab_defconfig
index 4ecd241b52f1..f90cb0d1f818 100644
--- a/configs/pinetab_defconfig
+++ b/configs/pinetab_defconfig
@@ -8,4 +8,5 @@ CONFIG_DRAM_CLK=552
 CONFIG_DRAM_ZQ=3881949
 CONFIG_MMC_SUNXI_SLOT_EXTRA=2
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x54000
 CONFIG_SYS_PBSIZE=1024
diff --git a/configs/plutux_defconfig b/configs/plutux_defconfig
index 95b251627779..fe59c10b1920 100644
--- a/configs/plutux_defconfig
+++ b/configs/plutux_defconfig
@@ -16,6 +16,8 @@ CONFIG_CONSOLE_MUX=y
 CONFIG_SYS_STDIO_DEREGISTER=y
 CONFIG_SPL_FOOTPRINT_LIMIT=y
 CONFIG_SPL_MAX_FOOTPRINT=0x8000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xffffc
 CONFIG_SYS_PROMPT="Tegra20 (Plutux) # "
 CONFIG_SYS_MAXARGS=64
 CONFIG_SYS_PBSIZE=2084
diff --git a/configs/polaroid_mid2407pxe03_defconfig b/configs/polaroid_mid2407pxe03_defconfig
index ed8b780b01e1..74ffaf1d0117 100644
--- a/configs/polaroid_mid2407pxe03_defconfig
+++ b/configs/polaroid_mid2407pxe03_defconfig
@@ -16,6 +16,7 @@ CONFIG_VIDEO_LCD_POWER="PH7"
 CONFIG_VIDEO_LCD_BL_EN="PH6"
 CONFIG_VIDEO_LCD_BL_PWM="PH0"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_AXP_DLDO1_VOLT=3300
 CONFIG_CONS_INDEX=5
diff --git a/configs/polaroid_mid2809pxe04_defconfig b/configs/polaroid_mid2809pxe04_defconfig
index 5953344491c7..10057ade9a5a 100644
--- a/configs/polaroid_mid2809pxe04_defconfig
+++ b/configs/polaroid_mid2809pxe04_defconfig
@@ -16,6 +16,7 @@ CONFIG_VIDEO_LCD_POWER="PH7"
 CONFIG_VIDEO_LCD_BL_EN="PH6"
 CONFIG_VIDEO_LCD_BL_PWM="PH0"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_AXP_DLDO1_VOLT=3300
 CONFIG_CONS_INDEX=5
diff --git a/configs/popmetal-rk3288_defconfig b/configs/popmetal-rk3288_defconfig
index 35ec663b3e6e..5b5039e290be 100644
--- a/configs/popmetal-rk3288_defconfig
+++ b/configs/popmetal-rk3288_defconfig
@@ -25,6 +25,8 @@ CONFIG_CONSOLE_MUX=y
 CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_SPL_PAD_TO=0x7f8000
 CONFIG_SPL_NO_BSS_LIMIT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xff718000
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x2000
 CONFIG_CMD_GPIO=y
diff --git a/configs/porter_defconfig b/configs/porter_defconfig
index c176051cbd09..568ec18049d9 100644
--- a/configs/porter_defconfig
+++ b/configs/porter_defconfig
@@ -34,6 +34,8 @@ CONFIG_SPL_MAX_SIZE=0x4000
 CONFIG_SPL_NO_BSS_LIMIT=y
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xe6340000
 CONFIG_SPL_RAM_SUPPORT=y
 CONFIG_SPL_RAM_DEVICE=y
 CONFIG_SPL_SPI_LOAD=y
diff --git a/configs/pov_protab2_ips9_defconfig b/configs/pov_protab2_ips9_defconfig
index cf7f57574e04..523de63fc27a 100644
--- a/configs/pov_protab2_ips9_defconfig
+++ b/configs/pov_protab2_ips9_defconfig
@@ -14,6 +14,7 @@ CONFIG_VIDEO_LCD_BL_EN="PH7"
 CONFIG_VIDEO_LCD_BL_PWM="PB2"
 CONFIG_VIDEO_LCD_PANEL_LVDS=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SYS_I2C_MVTWSI=y
diff --git a/configs/puma-rk3399_defconfig b/configs/puma-rk3399_defconfig
index f7431ddf3ec5..e859172c5cd7 100644
--- a/configs/puma-rk3399_defconfig
+++ b/configs/puma-rk3399_defconfig
@@ -26,6 +26,8 @@ CONFIG_SPL_MAX_SIZE=0x2e000
 CONFIG_SPL_PAD_TO=0x7f8000
 CONFIG_SPL_BSS_MAX_SIZE=0x10000
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xff8effff
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x4000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x200
diff --git a/configs/px30-core-ctouch2-of10-px30_defconfig b/configs/px30-core-ctouch2-of10-px30_defconfig
index 66d2ca7c28cb..d0bada7bae70 100644
--- a/configs/px30-core-ctouch2-of10-px30_defconfig
+++ b/configs/px30-core-ctouch2-of10-px30_defconfig
@@ -36,6 +36,8 @@ CONFIG_SPL_PAD_TO=0x7f8000
 CONFIG_SPL_BSS_MAX_SIZE=0x4000
 CONFIG_SPL_BOOTROM_SUPPORT=y
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x400000
 CONFIG_SPL_STACK_R=y
 # CONFIG_TPL_BANNER_PRINT is not set
 CONFIG_SPL_ATF=y
diff --git a/configs/px30-core-ctouch2-px30_defconfig b/configs/px30-core-ctouch2-px30_defconfig
index 90fb411d551a..8e4de8e8b78d 100644
--- a/configs/px30-core-ctouch2-px30_defconfig
+++ b/configs/px30-core-ctouch2-px30_defconfig
@@ -36,6 +36,8 @@ CONFIG_SPL_PAD_TO=0x7f8000
 CONFIG_SPL_BSS_MAX_SIZE=0x4000
 CONFIG_SPL_BOOTROM_SUPPORT=y
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x400000
 CONFIG_SPL_STACK_R=y
 # CONFIG_TPL_BANNER_PRINT is not set
 CONFIG_SPL_ATF=y
diff --git a/configs/px30-core-edimm2.2-px30_defconfig b/configs/px30-core-edimm2.2-px30_defconfig
index cc2d5cbeacc5..3a4dbb60ebf1 100644
--- a/configs/px30-core-edimm2.2-px30_defconfig
+++ b/configs/px30-core-edimm2.2-px30_defconfig
@@ -36,6 +36,8 @@ CONFIG_SPL_PAD_TO=0x7f8000
 CONFIG_SPL_BSS_MAX_SIZE=0x4000
 CONFIG_SPL_BOOTROM_SUPPORT=y
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x400000
 CONFIG_SPL_STACK_R=y
 # CONFIG_TPL_BANNER_PRINT is not set
 CONFIG_SPL_ATF=y
diff --git a/configs/q8_a13_tablet_defconfig b/configs/q8_a13_tablet_defconfig
index 08be8810d8ce..83981d3ac749 100644
--- a/configs/q8_a13_tablet_defconfig
+++ b/configs/q8_a13_tablet_defconfig
@@ -15,6 +15,7 @@ CONFIG_VIDEO_LCD_POWER="AXP0-0"
 CONFIG_VIDEO_LCD_BL_EN="AXP0-1"
 CONFIG_VIDEO_LCD_BL_PWM="PB2"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SYS_I2C_MVTWSI=y
diff --git a/configs/q8_a23_tablet_800x480_defconfig b/configs/q8_a23_tablet_800x480_defconfig
index 6053587dddf4..11d208a34a05 100644
--- a/configs/q8_a23_tablet_800x480_defconfig
+++ b/configs/q8_a23_tablet_800x480_defconfig
@@ -16,6 +16,7 @@ CONFIG_VIDEO_LCD_POWER="PH7"
 CONFIG_VIDEO_LCD_BL_EN="PH6"
 CONFIG_VIDEO_LCD_BL_PWM="PH0"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_AXP_DLDO1_VOLT=3300
 CONFIG_CONS_INDEX=5
diff --git a/configs/q8_a33_tablet_1024x600_defconfig b/configs/q8_a33_tablet_1024x600_defconfig
index 0870d234e864..c848e62d73c9 100644
--- a/configs/q8_a33_tablet_1024x600_defconfig
+++ b/configs/q8_a33_tablet_1024x600_defconfig
@@ -16,6 +16,7 @@ CONFIG_VIDEO_LCD_POWER="PH7"
 CONFIG_VIDEO_LCD_BL_EN="PH6"
 CONFIG_VIDEO_LCD_BL_PWM="PH0"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_AXP_DLDO1_VOLT=3300
 CONFIG_CONS_INDEX=5
diff --git a/configs/q8_a33_tablet_800x480_defconfig b/configs/q8_a33_tablet_800x480_defconfig
index 3b99004fb9a3..ee5654185b16 100644
--- a/configs/q8_a33_tablet_800x480_defconfig
+++ b/configs/q8_a33_tablet_800x480_defconfig
@@ -16,6 +16,7 @@ CONFIG_VIDEO_LCD_POWER="PH7"
 CONFIG_VIDEO_LCD_BL_EN="PH6"
 CONFIG_VIDEO_LCD_BL_PWM="PH0"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_AXP_DLDO1_VOLT=3300
 CONFIG_CONS_INDEX=5
diff --git a/configs/r7-tv-dongle_defconfig b/configs/r7-tv-dongle_defconfig
index a8452ba3b742..f5adbd3686cb 100644
--- a/configs/r7-tv-dongle_defconfig
+++ b/configs/r7-tv-dongle_defconfig
@@ -6,6 +6,7 @@ CONFIG_MACH_SUN5I=y
 CONFIG_DRAM_CLK=384
 CONFIG_USB1_VBUS_PIN="PG13"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SYS_I2C_MVTWSI=y
diff --git a/configs/r8a77970_eagle_defconfig b/configs/r8a77970_eagle_defconfig
index b42e13bb5588..dfb4adf6654a 100644
--- a/configs/r8a77970_eagle_defconfig
+++ b/configs/r8a77970_eagle_defconfig
@@ -23,6 +23,8 @@ CONFIG_BOOTCOMMAND="tftp 0x48080000 Image; tftp 0x48000000 Image-r8a77970-eagle.
 CONFIG_DEFAULT_FDT_FILE="r8a77970-eagle.dtb"
 CONFIG_SYS_MALLOC_BOOTPARAMS=y
 CONFIG_SPL_BSS_MAX_SIZE=0x1000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xe6304000
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_MAXARGS=64
 CONFIG_SYS_PBSIZE=2068
diff --git a/configs/r8a77980_condor_defconfig b/configs/r8a77980_condor_defconfig
index f05590f7b3d8..d24204d41380 100644
--- a/configs/r8a77980_condor_defconfig
+++ b/configs/r8a77980_condor_defconfig
@@ -24,6 +24,8 @@ CONFIG_DEFAULT_FDT_FILE="r8a77980-condor.dtb"
 # CONFIG_BOARD_EARLY_INIT_F is not set
 CONFIG_SYS_MALLOC_BOOTPARAMS=y
 CONFIG_SPL_BSS_MAX_SIZE=0x1000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xe6304000
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_MAXARGS=64
 CONFIG_SYS_PBSIZE=2068
diff --git a/configs/r8a77990_ebisu_defconfig b/configs/r8a77990_ebisu_defconfig
index a2349c03dd56..33c277472196 100644
--- a/configs/r8a77990_ebisu_defconfig
+++ b/configs/r8a77990_ebisu_defconfig
@@ -25,6 +25,8 @@ CONFIG_DEFAULT_FDT_FILE="r8a77990-ebisu.dtb"
 CONFIG_SYS_MALLOC_BOOTPARAMS=y
 CONFIG_UPDATE_TFTP=y
 CONFIG_SPL_BSS_MAX_SIZE=0x1000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xe6304000
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_MAXARGS=64
 CONFIG_SYS_PBSIZE=2068
diff --git a/configs/r8a77995_draak_defconfig b/configs/r8a77995_draak_defconfig
index 1fe0d2abc589..f1fd84a4bd2d 100644
--- a/configs/r8a77995_draak_defconfig
+++ b/configs/r8a77995_draak_defconfig
@@ -24,6 +24,8 @@ CONFIG_DEFAULT_FDT_FILE="r8a77995-draak.dtb"
 CONFIG_SYS_MALLOC_BOOTPARAMS=y
 CONFIG_UPDATE_TFTP=y
 CONFIG_SPL_BSS_MAX_SIZE=0x1000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xe6304000
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_MAXARGS=64
 CONFIG_SYS_PBSIZE=2068
diff --git a/configs/r8a779a0_falcon_defconfig b/configs/r8a779a0_falcon_defconfig
index 67e9aa3be7b4..8477127e12b8 100644
--- a/configs/r8a779a0_falcon_defconfig
+++ b/configs/r8a779a0_falcon_defconfig
@@ -26,6 +26,8 @@ CONFIG_BOOTCOMMAND="tftp 0x48080000 Image; tftp 0x48000000 Image-r8a779a0-falcon
 CONFIG_DEFAULT_FDT_FILE="r8a779a0-falcon.dtb"
 CONFIG_SYS_MALLOC_BOOTPARAMS=y
 CONFIG_SPL_BSS_MAX_SIZE=0x1000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xe6304000
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_MAXARGS=64
 CONFIG_SYS_PBSIZE=2068
diff --git a/configs/rcar3_salvator-x_defconfig b/configs/rcar3_salvator-x_defconfig
index ab865bcc9403..ce22f8b9ecc0 100644
--- a/configs/rcar3_salvator-x_defconfig
+++ b/configs/rcar3_salvator-x_defconfig
@@ -24,6 +24,8 @@ CONFIG_DEFAULT_FDT_FILE="r8a77950-salvator-x.dtb"
 CONFIG_SYS_MALLOC_BOOTPARAMS=y
 CONFIG_UPDATE_TFTP=y
 CONFIG_SPL_BSS_MAX_SIZE=0x1000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xe6304000
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_MAXARGS=64
 CONFIG_SYS_PBSIZE=2068
diff --git a/configs/rcar3_ulcb_defconfig b/configs/rcar3_ulcb_defconfig
index 0b512765331d..2b7c2eace4cd 100644
--- a/configs/rcar3_ulcb_defconfig
+++ b/configs/rcar3_ulcb_defconfig
@@ -24,6 +24,8 @@ CONFIG_DEFAULT_FDT_FILE="r8a77950-ulcb.dtb"
 CONFIG_SYS_MALLOC_BOOTPARAMS=y
 CONFIG_UPDATE_TFTP=y
 CONFIG_SPL_BSS_MAX_SIZE=0x1000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xe6304000
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_MAXARGS=64
 CONFIG_SYS_PBSIZE=2068
diff --git a/configs/riotboard_defconfig b/configs/riotboard_defconfig
index 8e74a1f087f9..a14f9a409e04 100644
--- a/configs/riotboard_defconfig
+++ b/configs/riotboard_defconfig
@@ -28,6 +28,8 @@ CONFIG_SYS_CONSOLE_IS_IN_ENV=y
 CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_SPL_RAW_IMAGE_SUPPORT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_FS_EXT4=y
 CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot-dtb.img"
 CONFIG_SPL_FS_LOAD_ARGS_NAME="imx6dl-riotboard.dtb"
diff --git a/configs/roc-cc-rk3308_defconfig b/configs/roc-cc-rk3308_defconfig
index e0464a3f2cff..a35326f9ec8f 100644
--- a/configs/roc-cc-rk3308_defconfig
+++ b/configs/roc-cc-rk3308_defconfig
@@ -27,6 +27,8 @@ CONFIG_SYS_CONSOLE_INFO_QUIET=y
 CONFIG_SPL_MAX_SIZE=0x20000
 CONFIG_SPL_PAD_TO=0x7f8000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x400000
 CONFIG_SPL_STACK_R=y
 # CONFIG_CMD_BDI is not set
 # CONFIG_CMD_CONSOLE is not set
diff --git a/configs/roc-cc-rk3328_defconfig b/configs/roc-cc-rk3328_defconfig
index fdaf633f60fd..1b4fc3381cce 100644
--- a/configs/roc-cc-rk3328_defconfig
+++ b/configs/roc-cc-rk3328_defconfig
@@ -33,6 +33,8 @@ CONFIG_SPL_PAD_TO=0x7f8000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
 CONFIG_TPL_SYS_MALLOC_SIMPLE=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x400000
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_POWER=y
diff --git a/configs/roc-pc-mezzanine-rk3399_defconfig b/configs/roc-pc-mezzanine-rk3399_defconfig
index fbcac4cbdb2b..1748b7d8702a 100644
--- a/configs/roc-pc-mezzanine-rk3399_defconfig
+++ b/configs/roc-pc-mezzanine-rk3399_defconfig
@@ -26,6 +26,8 @@ CONFIG_SPL_MAX_SIZE=0x2e000
 CONFIG_SPL_PAD_TO=0x7f8000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x400000
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x20000
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/roc-pc-rk3399_defconfig b/configs/roc-pc-rk3399_defconfig
index b053f7e58466..7b086a1cc1dd 100644
--- a/configs/roc-pc-rk3399_defconfig
+++ b/configs/roc-pc-rk3399_defconfig
@@ -26,6 +26,8 @@ CONFIG_SPL_MAX_SIZE=0x2e000
 CONFIG_SPL_PAD_TO=0x7f8000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x400000
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x20000
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/rock-pi-4-rk3399_defconfig b/configs/rock-pi-4-rk3399_defconfig
index 89566cdc7571..d9d5f5e5efca 100644
--- a/configs/rock-pi-4-rk3399_defconfig
+++ b/configs/rock-pi-4-rk3399_defconfig
@@ -22,6 +22,8 @@ CONFIG_SPL_MAX_SIZE=0x2e000
 CONFIG_SPL_PAD_TO=0x7f8000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x400000
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x10000
 CONFIG_TPL=y
diff --git a/configs/rock-pi-4c-rk3399_defconfig b/configs/rock-pi-4c-rk3399_defconfig
index 1820b7695ec0..220b2af00881 100644
--- a/configs/rock-pi-4c-rk3399_defconfig
+++ b/configs/rock-pi-4c-rk3399_defconfig
@@ -22,6 +22,8 @@ CONFIG_SPL_MAX_SIZE=0x2e000
 CONFIG_SPL_PAD_TO=0x7f8000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x400000
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x10000
 CONFIG_TPL=y
diff --git a/configs/rock-pi-e-rk3328_defconfig b/configs/rock-pi-e-rk3328_defconfig
index e1e50396d328..e231593bd566 100644
--- a/configs/rock-pi-e-rk3328_defconfig
+++ b/configs/rock-pi-e-rk3328_defconfig
@@ -34,6 +34,8 @@ CONFIG_SPL_PAD_TO=0x7f8000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
 CONFIG_TPL_SYS_MALLOC_SIMPLE=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x400000
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x10000
 CONFIG_SPL_I2C=y
diff --git a/configs/rock-pi-n10-rk3399pro_defconfig b/configs/rock-pi-n10-rk3399pro_defconfig
index c468d7d1ab38..e283476bb9a5 100644
--- a/configs/rock-pi-n10-rk3399pro_defconfig
+++ b/configs/rock-pi-n10-rk3399pro_defconfig
@@ -24,6 +24,8 @@ CONFIG_SPL_MAX_SIZE=0x2e000
 CONFIG_SPL_PAD_TO=0x7f8000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x400000
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x10000
 CONFIG_TPL=y
diff --git a/configs/rock-pi-n8-rk3288_defconfig b/configs/rock-pi-n8-rk3288_defconfig
index 66258f02c801..7abb343ad698 100644
--- a/configs/rock-pi-n8-rk3288_defconfig
+++ b/configs/rock-pi-n8-rk3288_defconfig
@@ -24,6 +24,8 @@ CONFIG_SILENT_CONSOLE=y
 CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_SPL_PAD_TO=0x7f8000
 CONFIG_SPL_NO_BSS_LIMIT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xff718000
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x2000
 CONFIG_CMD_SPL=y
diff --git a/configs/rock2_defconfig b/configs/rock2_defconfig
index ffc11625e140..c06ab641c300 100644
--- a/configs/rock2_defconfig
+++ b/configs/rock2_defconfig
@@ -25,6 +25,8 @@ CONFIG_SILENT_CONSOLE=y
 CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_SPL_PAD_TO=0x7f8000
 CONFIG_SPL_NO_BSS_LIMIT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xff718000
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x2000
 CONFIG_CMD_GPIO=y
diff --git a/configs/rock64-rk3328_defconfig b/configs/rock64-rk3328_defconfig
index 7026b6f4d920..aa4cdde4872c 100644
--- a/configs/rock64-rk3328_defconfig
+++ b/configs/rock64-rk3328_defconfig
@@ -33,6 +33,8 @@ CONFIG_SPL_PAD_TO=0x7f8000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
 CONFIG_TPL_SYS_MALLOC_SIMPLE=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x400000
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_POWER=y
diff --git a/configs/rock960-rk3399_defconfig b/configs/rock960-rk3399_defconfig
index 788adb83e2dc..5e9f2cff33f3 100644
--- a/configs/rock960-rk3399_defconfig
+++ b/configs/rock960-rk3399_defconfig
@@ -21,6 +21,8 @@ CONFIG_SPL_MAX_SIZE=0x2e000
 CONFIG_SPL_PAD_TO=0x7f8000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x400000
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x10000
 CONFIG_TPL=y
diff --git a/configs/rock_defconfig b/configs/rock_defconfig
index dfc9257225fc..e99272ef2268 100644
--- a/configs/rock_defconfig
+++ b/configs/rock_defconfig
@@ -27,6 +27,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_SPL_MAX_SIZE=0x7800
 CONFIG_SPL_PAD_TO=0x7f8000
 CONFIG_SPL_NO_BSS_LIMIT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x10087fff
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x2000
 CONFIG_RANDOM_UUID=y
diff --git a/configs/rockpro64-rk3399_defconfig b/configs/rockpro64-rk3399_defconfig
index 8a66931edd0f..fff00fba6d91 100644
--- a/configs/rockpro64-rk3399_defconfig
+++ b/configs/rockpro64-rk3399_defconfig
@@ -25,6 +25,8 @@ CONFIG_SPL_MAX_SIZE=0x2e000
 CONFIG_SPL_PAD_TO=0x7f8000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x400000
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x10000
 CONFIG_SPL_SPI_LOAD=y
diff --git a/configs/sama5d27_giantboard_defconfig b/configs/sama5d27_giantboard_defconfig
index 4dec17850bd1..50f5cacbdde9 100644
--- a/configs/sama5d27_giantboard_defconfig
+++ b/configs/sama5d27_giantboard_defconfig
@@ -40,6 +40,8 @@ CONFIG_BOOTCOMMAND="fatload mmc 0 0x22000000 at91-sama5d27_giantboard.dtb; fatlo
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x10000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x218000
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_CBSIZE=256
 CONFIG_SYS_PBSIZE=276
diff --git a/configs/sama5d27_som1_ek_mmc1_defconfig b/configs/sama5d27_som1_ek_mmc1_defconfig
index 2d617200e9e9..76af9fc8cb1b 100644
--- a/configs/sama5d27_som1_ek_mmc1_defconfig
+++ b/configs/sama5d27_som1_ek_mmc1_defconfig
@@ -36,6 +36,8 @@ CONFIG_BOOTCOMMAND="fatload mmc 1 0x22000000 at91-sama5d27_som1_ek.dtb; fatload
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x10000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x218000
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_CBSIZE=256
 CONFIG_SYS_PBSIZE=276
diff --git a/configs/sama5d27_som1_ek_mmc_defconfig b/configs/sama5d27_som1_ek_mmc_defconfig
index 5bbae1299ad2..3852754ceb37 100644
--- a/configs/sama5d27_som1_ek_mmc_defconfig
+++ b/configs/sama5d27_som1_ek_mmc_defconfig
@@ -37,6 +37,8 @@ CONFIG_BOOTCOMMAND="fatload mmc 0 0x22000000 at91-sama5d27_som1_ek.dtb; fatload
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x10000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x218000
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_CBSIZE=256
 CONFIG_SYS_PBSIZE=276
diff --git a/configs/sama5d27_som1_ek_qspiflash_defconfig b/configs/sama5d27_som1_ek_qspiflash_defconfig
index c671328e0c48..35eefb780b5b 100644
--- a/configs/sama5d27_som1_ek_qspiflash_defconfig
+++ b/configs/sama5d27_som1_ek_qspiflash_defconfig
@@ -35,6 +35,8 @@ CONFIG_BOOTARGS="console=ttyS0,115200 earlyprintk root=/dev/mmcblk0p2 rw rootwai
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x10000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x218000
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_CBSIZE=256
 CONFIG_SYS_PBSIZE=276
diff --git a/configs/sama5d27_wlsom1_ek_mmc_defconfig b/configs/sama5d27_wlsom1_ek_mmc_defconfig
index 78a6ba6f48ca..6ea16c679948 100644
--- a/configs/sama5d27_wlsom1_ek_mmc_defconfig
+++ b/configs/sama5d27_wlsom1_ek_mmc_defconfig
@@ -36,6 +36,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x10000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x218000
 CONFIG_SPL_DISPLAY_PRINT=y
 # CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR is not set
 CONFIG_SPL_AT91_MCK_BYPASS=y
diff --git a/configs/sama5d27_wlsom1_ek_qspiflash_defconfig b/configs/sama5d27_wlsom1_ek_qspiflash_defconfig
index b3490e940c13..394a7ab64fb1 100644
--- a/configs/sama5d27_wlsom1_ek_qspiflash_defconfig
+++ b/configs/sama5d27_wlsom1_ek_qspiflash_defconfig
@@ -36,6 +36,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x10000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x218000
 CONFIG_SPL_DISPLAY_PRINT=y
 # CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR is not set
 CONFIG_SPL_DM_SPI_FLASH=y
diff --git a/configs/sama5d2_icp_mmc_defconfig b/configs/sama5d2_icp_mmc_defconfig
index 9a44370efc72..3772626e4b91 100644
--- a/configs/sama5d2_icp_mmc_defconfig
+++ b/configs/sama5d2_icp_mmc_defconfig
@@ -35,6 +35,8 @@ CONFIG_BOOTCOMMAND="fatload mmc 0:1 0x21000000 at91-sama5d2_icp.dtb; fatload mmc
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x10000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x218000
 CONFIG_SPL_DISPLAY_PRINT=y
 # CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR is not set
 CONFIG_SPL_RAM_SUPPORT=y
diff --git a/configs/sama5d2_xplained_emmc_defconfig b/configs/sama5d2_xplained_emmc_defconfig
index 3865c66f9d23..f80fca265ee9 100644
--- a/configs/sama5d2_xplained_emmc_defconfig
+++ b/configs/sama5d2_xplained_emmc_defconfig
@@ -35,6 +35,8 @@ CONFIG_BOOTCOMMAND="fatload mmc 0:1 0x22000000 at91-sama5d2_xplained.dtb; fatloa
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_SPL_MAX_SIZE=0x10000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x218000
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_CBSIZE=256
 CONFIG_SYS_PBSIZE=276
diff --git a/configs/sama5d2_xplained_mmc_defconfig b/configs/sama5d2_xplained_mmc_defconfig
index 10e28fadc6ec..f4a7f2c6a8d2 100644
--- a/configs/sama5d2_xplained_mmc_defconfig
+++ b/configs/sama5d2_xplained_mmc_defconfig
@@ -37,6 +37,8 @@ CONFIG_BOOTCOMMAND="fatload mmc 1:1 0x22000000 at91-sama5d2_xplained.dtb; fatloa
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x10000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x218000
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_CBSIZE=256
 CONFIG_SYS_PBSIZE=276
diff --git a/configs/sama5d2_xplained_qspiflash_defconfig b/configs/sama5d2_xplained_qspiflash_defconfig
index 7e92c29e87dd..bd13e926611d 100644
--- a/configs/sama5d2_xplained_qspiflash_defconfig
+++ b/configs/sama5d2_xplained_qspiflash_defconfig
@@ -38,6 +38,8 @@ CONFIG_BOOTCOMMAND="sf probe 1:0; sf read 0x22000000 0x180000 0x80000; sf read 0
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x10000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x218000
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_CBSIZE=256
 CONFIG_SYS_PBSIZE=276
diff --git a/configs/sama5d2_xplained_spiflash_defconfig b/configs/sama5d2_xplained_spiflash_defconfig
index 6a81c728e71b..32e2ea213dcb 100644
--- a/configs/sama5d2_xplained_spiflash_defconfig
+++ b/configs/sama5d2_xplained_spiflash_defconfig
@@ -39,6 +39,8 @@ CONFIG_BOOTCOMMAND="ext4load mmc 0:1 0x22000000 /boot/at91-sama5d2_xplained.dtb;
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x10000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x218000
 CONFIG_SPL_DM_SPI_FLASH=y
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x10000
diff --git a/configs/sama5d3_xplained_mmc_defconfig b/configs/sama5d3_xplained_mmc_defconfig
index 4f4860e89846..3ed976053a3e 100644
--- a/configs/sama5d3_xplained_mmc_defconfig
+++ b/configs/sama5d3_xplained_mmc_defconfig
@@ -36,6 +36,8 @@ CONFIG_BOOTCOMMAND="if test ! -n ${dtb_name}; then setenv dtb_name at91-${board_
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_SPL_MAX_SIZE=0x18000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x318000
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_CBSIZE=256
 CONFIG_SYS_PBSIZE=276
diff --git a/configs/sama5d3_xplained_nandflash_defconfig b/configs/sama5d3_xplained_nandflash_defconfig
index 66381750ce99..6e9ba1b490d7 100644
--- a/configs/sama5d3_xplained_nandflash_defconfig
+++ b/configs/sama5d3_xplained_nandflash_defconfig
@@ -33,6 +33,8 @@ CONFIG_BOOTCOMMAND="nand read 0x21000000 0x180000 0x80000;nand read 0x22000000 0
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_SPL_MAX_SIZE=0x18000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x318000
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_SPL_NAND_DRIVERS=y
 CONFIG_SPL_NAND_BASE=y
diff --git a/configs/sama5d3xek_mmc_defconfig b/configs/sama5d3xek_mmc_defconfig
index 741ab76b3f1f..4c7a79496829 100644
--- a/configs/sama5d3xek_mmc_defconfig
+++ b/configs/sama5d3xek_mmc_defconfig
@@ -38,6 +38,8 @@ CONFIG_SYS_CONSOLE_IS_IN_ENV=y
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_SPL_MAX_SIZE=0x18000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x318000
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_CBSIZE=256
 CONFIG_SYS_PBSIZE=276
diff --git a/configs/sama5d3xek_nandflash_defconfig b/configs/sama5d3xek_nandflash_defconfig
index 751f1f5904ae..6d6a12c6179f 100644
--- a/configs/sama5d3xek_nandflash_defconfig
+++ b/configs/sama5d3xek_nandflash_defconfig
@@ -35,6 +35,8 @@ CONFIG_SYS_CONSOLE_IS_IN_ENV=y
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_SPL_MAX_SIZE=0x18000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x318000
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_SPL_NAND_DRIVERS=y
 CONFIG_SPL_NAND_BASE=y
diff --git a/configs/sama5d3xek_spiflash_defconfig b/configs/sama5d3xek_spiflash_defconfig
index 952f65ba5b53..ab681fdda9d7 100644
--- a/configs/sama5d3xek_spiflash_defconfig
+++ b/configs/sama5d3xek_spiflash_defconfig
@@ -38,6 +38,8 @@ CONFIG_BOOTCOMMAND="sf probe 0; sf read 0x21000000 0x60000 0xc000; sf read 0x220
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_SPL_MAX_SIZE=0x18000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x318000
 CONFIG_SPL_DM_SPI_FLASH=y
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x10000
diff --git a/configs/sama5d4_xplained_mmc_defconfig b/configs/sama5d4_xplained_mmc_defconfig
index a11d260057d2..d43e86a31fe0 100644
--- a/configs/sama5d4_xplained_mmc_defconfig
+++ b/configs/sama5d4_xplained_mmc_defconfig
@@ -37,6 +37,8 @@ CONFIG_BOOTCOMMAND="if test ! -n ${dtb_name}; then setenv dtb_name at91-${board_
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x18000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x218000
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_CBSIZE=256
 CONFIG_SYS_PBSIZE=276
diff --git a/configs/sama5d4_xplained_nandflash_defconfig b/configs/sama5d4_xplained_nandflash_defconfig
index 715b59b4fb94..10cfb06f4339 100644
--- a/configs/sama5d4_xplained_nandflash_defconfig
+++ b/configs/sama5d4_xplained_nandflash_defconfig
@@ -34,6 +34,8 @@ CONFIG_BOOTCOMMAND="nand read 0x21000000 0x180000 0x80000;nand read 0x22000000 0
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x18000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x218000
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_SPL_NAND_DRIVERS=y
 CONFIG_SPL_NAND_BASE=y
diff --git a/configs/sama5d4_xplained_spiflash_defconfig b/configs/sama5d4_xplained_spiflash_defconfig
index e42b6f7cd9de..b41c6c7d06ed 100644
--- a/configs/sama5d4_xplained_spiflash_defconfig
+++ b/configs/sama5d4_xplained_spiflash_defconfig
@@ -39,6 +39,8 @@ CONFIG_BOOTCOMMAND="sf probe 0; sf read 0x21000000 0x60000 0xc000; sf read 0x220
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x18000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x218000
 CONFIG_SPL_DM_SPI_FLASH=y
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x10000
diff --git a/configs/sama5d4ek_mmc_defconfig b/configs/sama5d4ek_mmc_defconfig
index e0c10e0f2409..3d5eb6894841 100644
--- a/configs/sama5d4ek_mmc_defconfig
+++ b/configs/sama5d4ek_mmc_defconfig
@@ -38,6 +38,8 @@ CONFIG_SYS_CONSOLE_IS_IN_ENV=y
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_SPL_MAX_SIZE=0x18000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x218000
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_CBSIZE=256
 CONFIG_SYS_PBSIZE=276
diff --git a/configs/sama5d4ek_nandflash_defconfig b/configs/sama5d4ek_nandflash_defconfig
index dc6c3c4c580d..8e5295aafe10 100644
--- a/configs/sama5d4ek_nandflash_defconfig
+++ b/configs/sama5d4ek_nandflash_defconfig
@@ -35,6 +35,8 @@ CONFIG_SYS_CONSOLE_IS_IN_ENV=y
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_SPL_MAX_SIZE=0x18000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x218000
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_SPL_NAND_DRIVERS=y
 CONFIG_SPL_NAND_BASE=y
diff --git a/configs/sama5d4ek_spiflash_defconfig b/configs/sama5d4ek_spiflash_defconfig
index b73a35c8a744..13708da1654a 100644
--- a/configs/sama5d4ek_spiflash_defconfig
+++ b/configs/sama5d4ek_spiflash_defconfig
@@ -38,6 +38,8 @@ CONFIG_BOOTCOMMAND="sf probe 0; sf read 0x21000000 0x60000 0xc000; sf read 0x220
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_SPL_MAX_SIZE=0x18000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x218000
 CONFIG_SPL_DM_SPI_FLASH=y
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x10000
diff --git a/configs/seaboard_defconfig b/configs/seaboard_defconfig
index fb67ce6e1558..ea97dcf57a40 100644
--- a/configs/seaboard_defconfig
+++ b/configs/seaboard_defconfig
@@ -14,6 +14,8 @@ CONFIG_OF_SYSTEM_SETUP=y
 CONFIG_USE_PREBOOT=y
 CONFIG_SPL_FOOTPRINT_LIMIT=y
 CONFIG_SPL_MAX_FOOTPRINT=0x8000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xffffc
 CONFIG_SYS_PROMPT="Tegra20 (SeaBoard) # "
 CONFIG_SYS_MAXARGS=64
 CONFIG_SYS_PBSIZE=2086
diff --git a/configs/seeed_npi_imx6ull_defconfig b/configs/seeed_npi_imx6ull_defconfig
index 8fb5590c1ebd..860c98a4ad40 100644
--- a/configs/seeed_npi_imx6ull_defconfig
+++ b/configs/seeed_npi_imx6ull_defconfig
@@ -20,6 +20,8 @@ CONFIG_DISTRO_DEFAULTS=y
 CONFIG_FIT=y
 CONFIG_BOOTDELAY=3
 CONFIG_BOARD_EARLY_INIT_F=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_DMA=y
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_SPL_USB_HOST=y
diff --git a/configs/sifive_unleashed_defconfig b/configs/sifive_unleashed_defconfig
index f49fd9fba52a..326bca72bb58 100644
--- a/configs/sifive_unleashed_defconfig
+++ b/configs/sifive_unleashed_defconfig
@@ -25,6 +25,8 @@ CONFIG_DISPLAY_CPUINFO=y
 CONFIG_DISPLAY_BOARDINFO=y
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x100000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x81cfe70
 CONFIG_SPL_DM_SPI_FLASH=y
 CONFIG_SPL_DM_RESET=y
 CONFIG_SPL_SPI_LOAD=y
diff --git a/configs/sifive_unmatched_defconfig b/configs/sifive_unmatched_defconfig
index af8cc68cf625..989029b586ea 100644
--- a/configs/sifive_unmatched_defconfig
+++ b/configs/sifive_unmatched_defconfig
@@ -29,6 +29,8 @@ CONFIG_DISPLAY_BOARDINFO=y
 CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_ID_EEPROM=y
 CONFIG_SPL_MAX_SIZE=0x100000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x81cfe60
 CONFIG_SPL_DM_SPI_FLASH=y
 CONFIG_SPL_DM_RESET=y
 CONFIG_SPL_SPI_LOAD=y
diff --git a/configs/silinux_ek874_defconfig b/configs/silinux_ek874_defconfig
index e728cb22269e..ce211a9a1aad 100644
--- a/configs/silinux_ek874_defconfig
+++ b/configs/silinux_ek874_defconfig
@@ -25,6 +25,8 @@ CONFIG_DEFAULT_FDT_FILE="r8a774c0-ek874.dtb"
 # CONFIG_BOARD_EARLY_INIT_F is not set
 CONFIG_SYS_MALLOC_BOOTPARAMS=y
 CONFIG_SPL_BSS_MAX_SIZE=0x1000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xe6304000
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_MAXARGS=64
 CONFIG_SYS_PBSIZE=2068
diff --git a/configs/silk_defconfig b/configs/silk_defconfig
index 684e36f33d10..ac827ff2027a 100644
--- a/configs/silk_defconfig
+++ b/configs/silk_defconfig
@@ -34,6 +34,8 @@ CONFIG_SPL_MAX_SIZE=0x4000
 CONFIG_SPL_NO_BSS_LIMIT=y
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xe6340000
 CONFIG_SPL_RAM_SUPPORT=y
 CONFIG_SPL_RAM_DEVICE=y
 CONFIG_SPL_SPI_LOAD=y
diff --git a/configs/smartweb_defconfig b/configs/smartweb_defconfig
index 8a11e7b12f41..95048f8c4b1c 100644
--- a/configs/smartweb_defconfig
+++ b/configs/smartweb_defconfig
@@ -35,6 +35,8 @@ CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_SPL_MAX_SIZE=0x1000
 CONFIG_SPL_PAD_TO=0x20000
 CONFIG_SPL_BSS_MAX_SIZE=0x4000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x301000
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_SPL_NAND_RAW_ONLY=y
 CONFIG_SPL_NAND_DRIVERS=y
diff --git a/configs/sniper_defconfig b/configs/sniper_defconfig
index 4dbe4f1964d1..2f77a39c3227 100644
--- a/configs/sniper_defconfig
+++ b/configs/sniper_defconfig
@@ -14,6 +14,8 @@ CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0x4020ff00
 CONFIG_BOOTCOMMAND="setenv boot_mmc_part ${kernel_mmc_part}; if test reboot-${reboot-mode} = reboot-r; then echo recovery; setenv boot_mmc_part ${recovery_mmc_part}; fi; if test reboot-${reboot-mode} = reboot-b; then echo fastboot; fastboot 0; fi; part start mmc ${boot_mmc_dev} ${boot_mmc_part} boot_mmc_start; part size mmc ${boot_mmc_dev} ${boot_mmc_part} boot_mmc_size; mmc dev ${boot_mmc_dev}; mmc read ${kernel_addr_r} ${boot_mmc_start} ${boot_mmc_size} && bootm ${kernel_addr_r};"
 CONFIG_SYS_CONSOLE_IS_IN_ENV=y
 CONFIG_SPL_MAX_SIZE=0xec00
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x4020fffc
 # CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR is not set
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION=2
diff --git a/configs/socfpga_agilex_atf_defconfig b/configs/socfpga_agilex_atf_defconfig
index 10f3947b5db4..869305fefbe6 100644
--- a/configs/socfpga_agilex_atf_defconfig
+++ b/configs/socfpga_agilex_atf_defconfig
@@ -29,6 +29,8 @@ CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="run fatscript; run mmcfitload; run mmcfitboot"
 CONFIG_SPL_MAX_SIZE=0x40000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xffe3f000
 CONFIG_SPL_CRC32=y
 CONFIG_SPL_CACHE=y
 CONFIG_SPL_SPI_LOAD=y
diff --git a/configs/socfpga_agilex_defconfig b/configs/socfpga_agilex_defconfig
index 23e1d7874353..11a4a544ac49 100644
--- a/configs/socfpga_agilex_defconfig
+++ b/configs/socfpga_agilex_defconfig
@@ -26,6 +26,8 @@ CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="run fatscript; run mmcload; run linux_qspi_enable; run mmcboot"
 CONFIG_SPL_MAX_SIZE=0x40000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xffe3f000
 CONFIG_SPL_CACHE=y
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x3c00000
diff --git a/configs/socfpga_agilex_vab_defconfig b/configs/socfpga_agilex_vab_defconfig
index c775ecbdcca9..85ec9094a53b 100644
--- a/configs/socfpga_agilex_vab_defconfig
+++ b/configs/socfpga_agilex_vab_defconfig
@@ -30,6 +30,8 @@ CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="run fatscript; run mmcfitload; run mmcfitboot"
 CONFIG_SPL_MAX_SIZE=0x40000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xffe3f000
 CONFIG_SPL_CRC32=y
 CONFIG_SPL_CACHE=y
 CONFIG_SPL_SPI_LOAD=y
diff --git a/configs/socfpga_arria10_defconfig b/configs/socfpga_arria10_defconfig
index d326a3fb82db..8b8d7e4968eb 100644
--- a/configs/socfpga_arria10_defconfig
+++ b/configs/socfpga_arria10_defconfig
@@ -28,6 +28,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_CLOCKS=y
 CONFIG_SPL_PAD_TO=0x40000
 CONFIG_SPL_NO_BSS_LIMIT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xffe2b000
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_FPGA=y
 CONFIG_SYS_MAXARGS=32
diff --git a/configs/socfpga_arria5_defconfig b/configs/socfpga_arria5_defconfig
index 62913f6702e4..24c21090b196 100644
--- a/configs/socfpga_arria5_defconfig
+++ b/configs/socfpga_arria5_defconfig
@@ -22,6 +22,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_CLOCKS=y
 CONFIG_SPL_PAD_TO=0x10000
 CONFIG_SPL_NO_BSS_LIMIT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x0
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x40000
 CONFIG_SYS_MAXARGS=32
diff --git a/configs/socfpga_cyclone5_defconfig b/configs/socfpga_cyclone5_defconfig
index 7809b57ab7c0..d010b54240dd 100644
--- a/configs/socfpga_cyclone5_defconfig
+++ b/configs/socfpga_cyclone5_defconfig
@@ -22,6 +22,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_CLOCKS=y
 CONFIG_SPL_PAD_TO=0x10000
 CONFIG_SPL_NO_BSS_LIMIT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x0
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x40000
 CONFIG_SYS_MAXARGS=32
diff --git a/configs/socfpga_dbm_soc1_defconfig b/configs/socfpga_dbm_soc1_defconfig
index d6b2e6639896..a1574b6a5d7c 100644
--- a/configs/socfpga_dbm_soc1_defconfig
+++ b/configs/socfpga_dbm_soc1_defconfig
@@ -25,6 +25,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_CLOCKS=y
 CONFIG_SPL_PAD_TO=0x10000
 CONFIG_SPL_NO_BSS_LIMIT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x0
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x40000
 CONFIG_HUSH_PARSER=y
diff --git a/configs/socfpga_de0_nano_soc_defconfig b/configs/socfpga_de0_nano_soc_defconfig
index 036fdcc19af9..ec7355d2cc43 100644
--- a/configs/socfpga_de0_nano_soc_defconfig
+++ b/configs/socfpga_de0_nano_soc_defconfig
@@ -23,6 +23,8 @@ CONFIG_CLOCKS=y
 CONFIG_SPL_PAD_TO=0x10000
 CONFIG_SPL_NO_BSS_LIMIT=y
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x0
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x40000
 CONFIG_SYS_MAXARGS=32
diff --git a/configs/socfpga_de10_nano_defconfig b/configs/socfpga_de10_nano_defconfig
index 71c9eaba7a3e..b62f02996287 100644
--- a/configs/socfpga_de10_nano_defconfig
+++ b/configs/socfpga_de10_nano_defconfig
@@ -22,6 +22,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_CLOCKS=y
 CONFIG_SPL_PAD_TO=0x10000
 CONFIG_SPL_NO_BSS_LIMIT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x0
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x40000
 CONFIG_SYS_MAXARGS=32
diff --git a/configs/socfpga_de1_soc_defconfig b/configs/socfpga_de1_soc_defconfig
index b800f2762d87..749ec540b4fd 100644
--- a/configs/socfpga_de1_soc_defconfig
+++ b/configs/socfpga_de1_soc_defconfig
@@ -23,6 +23,8 @@ CONFIG_CLOCKS=y
 CONFIG_SPL_PAD_TO=0x10000
 CONFIG_SPL_NO_BSS_LIMIT=y
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x0
 CONFIG_SPL_YMODEM_SUPPORT=y
 CONFIG_SYS_MAXARGS=32
 CONFIG_CMD_ASKENV=y
diff --git a/configs/socfpga_is1_defconfig b/configs/socfpga_is1_defconfig
index c9a8650c91ab..c3b6368f6171 100644
--- a/configs/socfpga_is1_defconfig
+++ b/configs/socfpga_is1_defconfig
@@ -25,6 +25,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_CLOCKS=y
 CONFIG_SPL_PAD_TO=0x10000
 CONFIG_SPL_NO_BSS_LIMIT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xfffffff8
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x40000
 CONFIG_SYS_MAXARGS=32
diff --git a/configs/socfpga_mcvevk_defconfig b/configs/socfpga_mcvevk_defconfig
index 4f703cf3d0ba..18e125f5bdf9 100644
--- a/configs/socfpga_mcvevk_defconfig
+++ b/configs/socfpga_mcvevk_defconfig
@@ -23,6 +23,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_CLOCKS=y
 CONFIG_SPL_PAD_TO=0x10000
 CONFIG_SPL_NO_BSS_LIMIT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x0
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x40000
 CONFIG_SYS_MAXARGS=32
diff --git a/configs/socfpga_n5x_atf_defconfig b/configs/socfpga_n5x_atf_defconfig
index 7c7f90146d68..88763d1e5ab1 100644
--- a/configs/socfpga_n5x_atf_defconfig
+++ b/configs/socfpga_n5x_atf_defconfig
@@ -28,6 +28,8 @@ CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="run fatscript; run mmcfitload; run mmcfitboot"
 CONFIG_SPL_MAX_SIZE=0x40000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xffe3f000
 CONFIG_SPL_CRC32=y
 CONFIG_SPL_CACHE=y
 CONFIG_SPL_SPI_LOAD=y
diff --git a/configs/socfpga_n5x_defconfig b/configs/socfpga_n5x_defconfig
index 8f851e80e29f..a07a338f108d 100644
--- a/configs/socfpga_n5x_defconfig
+++ b/configs/socfpga_n5x_defconfig
@@ -23,6 +23,8 @@ CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="run fatscript; run mmcload; run linux_qspi_enable; run mmcboot"
 CONFIG_SPL_MAX_SIZE=0x40000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xffe3f000
 CONFIG_SPL_CACHE=y
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x3c00000
diff --git a/configs/socfpga_n5x_vab_defconfig b/configs/socfpga_n5x_vab_defconfig
index 82a4f980b899..8efdab84e149 100644
--- a/configs/socfpga_n5x_vab_defconfig
+++ b/configs/socfpga_n5x_vab_defconfig
@@ -29,6 +29,8 @@ CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="run fatscript; run mmcfitload; run mmcfitboot"
 CONFIG_SPL_MAX_SIZE=0x40000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xffe3f000
 CONFIG_SPL_CRC32=y
 CONFIG_SPL_CACHE=y
 CONFIG_SPL_SPI_LOAD=y
diff --git a/configs/socfpga_secu1_defconfig b/configs/socfpga_secu1_defconfig
index d59e841f7611..72cf0d1bc88b 100644
--- a/configs/socfpga_secu1_defconfig
+++ b/configs/socfpga_secu1_defconfig
@@ -36,6 +36,8 @@ CONFIG_MISC_INIT_R=y
 CONFIG_SPL_PAD_TO=0x10000
 CONFIG_SPL_NO_BSS_LIMIT=y
 CONFIG_SPL_LEGACY_IMAGE_CRC_CHECK=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x0
 # CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR is not set
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION=0x1
 # CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION_TYPE is not set
diff --git a/configs/socfpga_sockit_defconfig b/configs/socfpga_sockit_defconfig
index 999e696aa7a7..2a02f1dbfaa6 100644
--- a/configs/socfpga_sockit_defconfig
+++ b/configs/socfpga_sockit_defconfig
@@ -22,6 +22,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_CLOCKS=y
 CONFIG_SPL_PAD_TO=0x10000
 CONFIG_SPL_NO_BSS_LIMIT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x0
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x40000
 CONFIG_SYS_MAXARGS=32
diff --git a/configs/socfpga_socrates_defconfig b/configs/socfpga_socrates_defconfig
index 82549a80af54..3d0c48d76623 100644
--- a/configs/socfpga_socrates_defconfig
+++ b/configs/socfpga_socrates_defconfig
@@ -21,6 +21,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_CLOCKS=y
 CONFIG_SPL_PAD_TO=0x10000
 CONFIG_SPL_NO_BSS_LIMIT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x0
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x40000
 CONFIG_SYS_MAXARGS=32
diff --git a/configs/socfpga_sr1500_defconfig b/configs/socfpga_sr1500_defconfig
index cbb751e5a20b..53d6b82972f9 100644
--- a/configs/socfpga_sr1500_defconfig
+++ b/configs/socfpga_sr1500_defconfig
@@ -29,6 +29,8 @@ CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_CLOCKS=y
 CONFIG_SPL_PAD_TO=0x10000
 CONFIG_SPL_NO_BSS_LIMIT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xfffffff8
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x40000
 CONFIG_SYS_MAXARGS=32
diff --git a/configs/socfpga_stratix10_atf_defconfig b/configs/socfpga_stratix10_atf_defconfig
index 52f99dad7548..9969ac00be3a 100644
--- a/configs/socfpga_stratix10_atf_defconfig
+++ b/configs/socfpga_stratix10_atf_defconfig
@@ -29,6 +29,8 @@ CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="run fatscript; run mmcfitload; run mmcfitboot"
 CONFIG_SPL_MAX_SIZE=0x40000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xffe3f000
 CONFIG_SPL_CRC32=y
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x02000000
diff --git a/configs/socfpga_stratix10_defconfig b/configs/socfpga_stratix10_defconfig
index 23050c7f663c..a90e404b4407 100644
--- a/configs/socfpga_stratix10_defconfig
+++ b/configs/socfpga_stratix10_defconfig
@@ -28,6 +28,8 @@ CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="run fatscript; run mmcload; run linux_qspi_enable; run mmcboot"
 CONFIG_SPL_MAX_SIZE=0x40000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xffe3f000
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x3C00000
 CONFIG_HUSH_PARSER=y
diff --git a/configs/socfpga_vining_fpga_defconfig b/configs/socfpga_vining_fpga_defconfig
index 37aae07fd645..0f4aa9051477 100644
--- a/configs/socfpga_vining_fpga_defconfig
+++ b/configs/socfpga_vining_fpga_defconfig
@@ -29,6 +29,8 @@ CONFIG_CLOCKS=y
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_PAD_TO=0x10000
 CONFIG_SPL_NO_BSS_LIMIT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x0
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x40000
 CONFIG_CMDLINE_PS_SUPPORT=y
diff --git a/configs/sopine_baseboard_defconfig b/configs/sopine_baseboard_defconfig
index f2220465f39b..576e86493a24 100644
--- a/configs/sopine_baseboard_defconfig
+++ b/configs/sopine_baseboard_defconfig
@@ -11,6 +11,7 @@ CONFIG_MMC0_CD_PIN=""
 CONFIG_MMC_SUNXI_SLOT_EXTRA=2
 CONFIG_SPL_SPI_SUNXI=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x54000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SUPPORT_EMMC_BOOT=y
 CONFIG_SPI_FLASH_WINBOND=y
diff --git a/configs/stm32mp15-icore-stm32mp1-ctouch2_defconfig b/configs/stm32mp15-icore-stm32mp1-ctouch2_defconfig
index 5c131252a5de..fe722ce507bf 100644
--- a/configs/stm32mp15-icore-stm32mp1-ctouch2_defconfig
+++ b/configs/stm32mp15-icore-stm32mp1-ctouch2_defconfig
@@ -19,6 +19,8 @@ CONFIG_FIT=y
 CONFIG_BOOTCOMMAND="run bootcmd_stm32mp"
 CONFIG_SPL_FOOTPRINT_LIMIT=y
 CONFIG_SPL_MAX_FOOTPRINT=0x3db00
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x30000000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION=3
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/stm32mp15-icore-stm32mp1-edimm2.2_defconfig b/configs/stm32mp15-icore-stm32mp1-edimm2.2_defconfig
index 688c9344d177..f47bc1b23411 100644
--- a/configs/stm32mp15-icore-stm32mp1-edimm2.2_defconfig
+++ b/configs/stm32mp15-icore-stm32mp1-edimm2.2_defconfig
@@ -19,6 +19,8 @@ CONFIG_FIT=y
 CONFIG_BOOTCOMMAND="run bootcmd_stm32mp"
 CONFIG_SPL_FOOTPRINT_LIMIT=y
 CONFIG_SPL_MAX_FOOTPRINT=0x3db00
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x30000000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION=3
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/stm32mp15-microgea-stm32mp1-microdev2-of7_defconfig b/configs/stm32mp15-microgea-stm32mp1-microdev2-of7_defconfig
index f6d67f3cc822..9ddd585ecf0c 100644
--- a/configs/stm32mp15-microgea-stm32mp1-microdev2-of7_defconfig
+++ b/configs/stm32mp15-microgea-stm32mp1-microdev2-of7_defconfig
@@ -19,6 +19,8 @@ CONFIG_FIT=y
 CONFIG_BOOTCOMMAND="run bootcmd_stm32mp"
 CONFIG_SPL_FOOTPRINT_LIMIT=y
 CONFIG_SPL_MAX_FOOTPRINT=0x3db00
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x30000000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION=3
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/stm32mp15-microgea-stm32mp1-microdev2_defconfig b/configs/stm32mp15-microgea-stm32mp1-microdev2_defconfig
index 39c2f295701b..86d55478f5aa 100644
--- a/configs/stm32mp15-microgea-stm32mp1-microdev2_defconfig
+++ b/configs/stm32mp15-microgea-stm32mp1-microdev2_defconfig
@@ -19,6 +19,8 @@ CONFIG_FIT=y
 CONFIG_BOOTCOMMAND="run bootcmd_stm32mp"
 CONFIG_SPL_FOOTPRINT_LIMIT=y
 CONFIG_SPL_MAX_FOOTPRINT=0x3db00
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x30000000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION=3
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/stm32mp15_basic_defconfig b/configs/stm32mp15_basic_defconfig
index b607c7256e51..be49a8e77127 100644
--- a/configs/stm32mp15_basic_defconfig
+++ b/configs/stm32mp15_basic_defconfig
@@ -29,6 +29,8 @@ CONFIG_SPL_LOG=y
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_SPL_FOOTPRINT_LIMIT=y
 CONFIG_SPL_MAX_FOOTPRINT=0x3db00
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x30000000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION=3
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/stm32mp15_dhcom_basic_defconfig b/configs/stm32mp15_dhcom_basic_defconfig
index 16dcc4ad56f7..fa3cff00cea2 100644
--- a/configs/stm32mp15_dhcom_basic_defconfig
+++ b/configs/stm32mp15_dhcom_basic_defconfig
@@ -30,6 +30,8 @@ CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_SPL_FOOTPRINT_LIMIT=y
 CONFIG_SPL_MAX_FOOTPRINT=0x3db00
 CONFIG_SPL_LEGACY_IMAGE_FORMAT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x30000000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION=3
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/stm32mp15_dhcor_basic_defconfig b/configs/stm32mp15_dhcor_basic_defconfig
index 9a7266229be7..9f32d2c4e815 100644
--- a/configs/stm32mp15_dhcor_basic_defconfig
+++ b/configs/stm32mp15_dhcor_basic_defconfig
@@ -28,6 +28,8 @@ CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_SPL_FOOTPRINT_LIMIT=y
 CONFIG_SPL_MAX_FOOTPRINT=0x3db00
 CONFIG_SPL_LEGACY_IMAGE_FORMAT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x30000000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION=3
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/stout_defconfig b/configs/stout_defconfig
index 9ef96bafc99b..4f0cda9c897a 100644
--- a/configs/stout_defconfig
+++ b/configs/stout_defconfig
@@ -34,6 +34,8 @@ CONFIG_SPL_MAX_SIZE=0x4000
 CONFIG_SPL_NO_BSS_LIMIT=y
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xe6340000
 CONFIG_SPL_RAM_SUPPORT=y
 CONFIG_SPL_RAM_DEVICE=y
 CONFIG_SPL_SPI_LOAD=y
diff --git a/configs/sun8i_a23_evb_defconfig b/configs/sun8i_a23_evb_defconfig
index 21ea2ba66ef9..59315cdb05d5 100644
--- a/configs/sun8i_a23_evb_defconfig
+++ b/configs/sun8i_a23_evb_defconfig
@@ -9,6 +9,7 @@ CONFIG_USB0_VBUS_PIN="axp_drivebus"
 CONFIG_USB0_VBUS_DET="axp_vbus_detect"
 CONFIG_USB1_VBUS_PIN="PH7"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_CONS_INDEX=5
 CONFIG_USB_EHCI_HCD=y
diff --git a/configs/sunxi_Gemei_G9_defconfig b/configs/sunxi_Gemei_G9_defconfig
index 8b8a880d45ec..b77c4e7a3cb0 100644
--- a/configs/sunxi_Gemei_G9_defconfig
+++ b/configs/sunxi_Gemei_G9_defconfig
@@ -11,6 +11,7 @@ CONFIG_VIDEO_LCD_BL_EN="PH7"
 CONFIG_VIDEO_LCD_BL_PWM="PB2"
 CONFIG_VIDEO_LCD_PANEL_LVDS=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SYS_I2C_MVTWSI=y
diff --git a/configs/syzygy_hub_defconfig b/configs/syzygy_hub_defconfig
index a9dc04cdfb97..d9e61aee3df8 100644
--- a/configs/syzygy_hub_defconfig
+++ b/configs/syzygy_hub_defconfig
@@ -27,6 +27,8 @@ CONFIG_USE_PREBOOT=y
 CONFIG_CLOCKS=y
 CONFIG_SPL_MAX_SIZE=0x30000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xfffffe00
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_FS_LOAD_ARGS_NAME="system.dtb"
 CONFIG_SPL_OS_BOOT=y
diff --git a/configs/tanix_tx6_defconfig b/configs/tanix_tx6_defconfig
index cf34b508a732..d1f12fba9bb0 100644
--- a/configs/tanix_tx6_defconfig
+++ b/configs/tanix_tx6_defconfig
@@ -8,4 +8,5 @@ CONFIG_DRAM_CLK=648
 CONFIG_MMC0_CD_PIN="PF6"
 CONFIG_MMC_SUNXI_SLOT_EXTRA=2
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x118000
 CONFIG_SYS_PBSIZE=1024
diff --git a/configs/taurus_defconfig b/configs/taurus_defconfig
index 79ceebe2db00..471feed3dfb5 100644
--- a/configs/taurus_defconfig
+++ b/configs/taurus_defconfig
@@ -44,6 +44,8 @@ CONFIG_SPL_PAD_TO=0x20000
 CONFIG_SPL_BSS_MAX_SIZE=0x600
 # CONFIG_SPL_LEGACY_IMAGE_FORMAT is not set
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x304000
 CONFIG_SPL_CRC32=y
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_SPL_NAND_RAW_ONLY=y
diff --git a/configs/tbs_a711_defconfig b/configs/tbs_a711_defconfig
index a8a9b855cc36..3dd9252a7423 100644
--- a/configs/tbs_a711_defconfig
+++ b/configs/tbs_a711_defconfig
@@ -13,6 +13,7 @@ CONFIG_USB0_VBUS_DET="AXP0-VBUS-DETECT"
 CONFIG_USB0_ID_DET="PH11"
 CONFIG_AXP_GPIO=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_SPL_STACK=0x8000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_FASTBOOT_CMD_OEM_FORMAT=y
 CONFIG_AXP_DCDC5_VOLT=1200
diff --git a/configs/tec-ng_defconfig b/configs/tec-ng_defconfig
index e305b5bcb102..cb80b10aecf7 100644
--- a/configs/tec-ng_defconfig
+++ b/configs/tec-ng_defconfig
@@ -16,6 +16,8 @@ CONFIG_CONSOLE_MUX=y
 CONFIG_SYS_STDIO_DEREGISTER=y
 CONFIG_SPL_FOOTPRINT_LIMIT=y
 CONFIG_SPL_MAX_FOOTPRINT=0x8000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x800ffffc
 CONFIG_SYS_PROMPT="Tegra30 (TEC-NG) # "
 CONFIG_SYS_MAXARGS=64
 CONFIG_SYS_PBSIZE=2084
diff --git a/configs/tec_defconfig b/configs/tec_defconfig
index 9c644e682200..80fbdda5d1c5 100644
--- a/configs/tec_defconfig
+++ b/configs/tec_defconfig
@@ -15,6 +15,8 @@ CONFIG_OF_SYSTEM_SETUP=y
 CONFIG_SYS_STDIO_DEREGISTER=y
 CONFIG_SPL_FOOTPRINT_LIMIT=y
 CONFIG_SPL_MAX_FOOTPRINT=0x8000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xffffc
 CONFIG_SYS_PROMPT="Tegra20 (TEC) # "
 CONFIG_SYS_MAXARGS=64
 CONFIG_SYS_PBSIZE=2081
diff --git a/configs/teres_i_defconfig b/configs/teres_i_defconfig
index 12e91a58936a..cd6d825715e8 100644
--- a/configs/teres_i_defconfig
+++ b/configs/teres_i_defconfig
@@ -9,6 +9,7 @@ CONFIG_MMC_SUNXI_SLOT_EXTRA=2
 CONFIG_USB1_VBUS_PIN="PL7"
 CONFIG_I2C0_ENABLE=y
 CONFIG_PREBOOT="setenv usb_pgood_delay 2000; usb start"
+CONFIG_SPL_STACK=0x54000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SPL_SYS_I2C_LEGACY=y
 CONFIG_SYS_I2C_MVTWSI=y
diff --git a/configs/theadorable_debug_defconfig b/configs/theadorable_debug_defconfig
index b830d75dba6d..f858d732abd4 100644
--- a/configs/theadorable_debug_defconfig
+++ b/configs/theadorable_debug_defconfig
@@ -32,6 +32,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_SPL_MAX_SIZE=0x1bfd0
 CONFIG_SPL_BSS_MAX_SIZE=0x4000
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x4002c000
 CONFIG_SPL_I2C=y
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_MAXARGS=32
diff --git a/configs/tinker-rk3288_defconfig b/configs/tinker-rk3288_defconfig
index 32afbebc545a..ce12b79ac471 100644
--- a/configs/tinker-rk3288_defconfig
+++ b/configs/tinker-rk3288_defconfig
@@ -25,6 +25,8 @@ CONFIG_SILENT_CONSOLE=y
 CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_SPL_PAD_TO=0x7f8000
 CONFIG_SPL_NO_BSS_LIMIT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xff718000
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x2000
 CONFIG_SPL_I2C=y
diff --git a/configs/tinker-s-rk3288_defconfig b/configs/tinker-s-rk3288_defconfig
index 072012e066be..8dede27efcc9 100644
--- a/configs/tinker-s-rk3288_defconfig
+++ b/configs/tinker-s-rk3288_defconfig
@@ -25,6 +25,8 @@ CONFIG_SILENT_CONSOLE=y
 CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_SPL_PAD_TO=0x7f8000
 CONFIG_SPL_NO_BSS_LIMIT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xff718000
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x300000
 CONFIG_SPL_I2C=y
diff --git a/configs/topic_miami_defconfig b/configs/topic_miami_defconfig
index ed6ac3b7ae8c..11d6e450276d 100644
--- a/configs/topic_miami_defconfig
+++ b/configs/topic_miami_defconfig
@@ -27,6 +27,8 @@ CONFIG_USE_PREBOOT=y
 CONFIG_CLOCKS=y
 CONFIG_SPL_MAX_SIZE=0x30000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xfffffe00
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x20000
diff --git a/configs/topic_miamilite_defconfig b/configs/topic_miamilite_defconfig
index a80ee2243205..32dc5478dddd 100644
--- a/configs/topic_miamilite_defconfig
+++ b/configs/topic_miamilite_defconfig
@@ -27,6 +27,8 @@ CONFIG_USE_PREBOOT=y
 CONFIG_CLOCKS=y
 CONFIG_SPL_MAX_SIZE=0x30000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xfffffe00
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x20000
diff --git a/configs/topic_miamiplus_defconfig b/configs/topic_miamiplus_defconfig
index a402478f64c8..2de1e96bdf88 100644
--- a/configs/topic_miamiplus_defconfig
+++ b/configs/topic_miamiplus_defconfig
@@ -27,6 +27,8 @@ CONFIG_USE_PREBOOT=y
 CONFIG_CLOCKS=y
 CONFIG_SPL_MAX_SIZE=0x30000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xfffffe00
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x20000
diff --git a/configs/trimslice_defconfig b/configs/trimslice_defconfig
index 7d79ea3ec530..b9d465c0e575 100644
--- a/configs/trimslice_defconfig
+++ b/configs/trimslice_defconfig
@@ -16,6 +16,8 @@ CONFIG_CONSOLE_MUX=y
 CONFIG_SYS_STDIO_DEREGISTER=y
 CONFIG_SPL_FOOTPRINT_LIMIT=y
 CONFIG_SPL_MAX_FOOTPRINT=0x8000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xffffc
 CONFIG_SYS_PROMPT="Tegra20 (TrimSlice) # "
 CONFIG_SYS_MAXARGS=64
 CONFIG_SYS_PBSIZE=2087
diff --git a/configs/turris_omnia_defconfig b/configs/turris_omnia_defconfig
index a5087581a4ed..c3ab35e9646c 100644
--- a/configs/turris_omnia_defconfig
+++ b/configs/turris_omnia_defconfig
@@ -41,6 +41,8 @@ CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x22fd0
 CONFIG_SPL_BSS_MAX_SIZE=0x4000
 CONFIG_SPL_BOARD_INIT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x4002c000
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SYS_MAXARGS=32
diff --git a/configs/udoo_defconfig b/configs/udoo_defconfig
index e21945116c03..03875f9039d9 100644
--- a/configs/udoo_defconfig
+++ b/configs/udoo_defconfig
@@ -22,6 +22,8 @@ CONFIG_DISTRO_DEFAULTS=y
 CONFIG_BOOTDELAY=3
 CONFIG_BOOTCOMMAND="run findfdt; run distro_bootcmd"
 CONFIG_BOARD_EARLY_INIT_F=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_FS_EXT4=y
 CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot-dtb.img"
 CONFIG_SPL_I2C=y
diff --git a/configs/udoo_neo_defconfig b/configs/udoo_neo_defconfig
index fff11bb10e97..1b9b5a5b6270 100644
--- a/configs/udoo_neo_defconfig
+++ b/configs/udoo_neo_defconfig
@@ -22,6 +22,8 @@ CONFIG_SPL_LIBDISK_SUPPORT=y
 CONFIG_DISTRO_DEFAULTS=y
 CONFIG_BOOTCOMMAND="run findfdt; run distro_bootcmd"
 CONFIG_BOARD_EARLY_INIT_F=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_FS_EXT4=y
 CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot-dtb.img"
diff --git a/configs/uniphier_ld4_sld8_defconfig b/configs/uniphier_ld4_sld8_defconfig
index 10f00b53aae1..ceb50835f53c 100644
--- a/configs/uniphier_ld4_sld8_defconfig
+++ b/configs/uniphier_ld4_sld8_defconfig
@@ -21,6 +21,8 @@ CONFIG_LOGLEVEL=6
 CONFIG_SPL_MAX_SIZE=0x10000
 CONFIG_SPL_PAD_TO=0x20000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x100000
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_SPL_NOR_SUPPORT=y
 CONFIG_CMD_CONFIG=y
diff --git a/configs/uniphier_v7_defconfig b/configs/uniphier_v7_defconfig
index 4a79b6563e86..a2ea3a98d09e 100644
--- a/configs/uniphier_v7_defconfig
+++ b/configs/uniphier_v7_defconfig
@@ -21,6 +21,8 @@ CONFIG_LOGLEVEL=6
 CONFIG_SPL_MAX_SIZE=0x10000
 CONFIG_SPL_PAD_TO=0x20000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x100000
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_SPL_NOR_SUPPORT=y
 CONFIG_CMD_CONFIG=y
diff --git a/configs/variscite_dart6ul_defconfig b/configs/variscite_dart6ul_defconfig
index 7322b12bd17c..e100185743c0 100644
--- a/configs/variscite_dart6ul_defconfig
+++ b/configs/variscite_dart6ul_defconfig
@@ -18,6 +18,8 @@ CONFIG_DISTRO_DEFAULTS=y
 CONFIG_FIT=y
 CONFIG_BOOTDELAY=3
 CONFIG_BOOTCOMMAND="run mmc_mmc_fit"
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_USB_HOST=y
 CONFIG_SPL_WATCHDOG=y
 CONFIG_SYS_MAXARGS=32
diff --git a/configs/venice2_defconfig b/configs/venice2_defconfig
index 0ad69b3e678c..cb5fcfbb2362 100644
--- a/configs/venice2_defconfig
+++ b/configs/venice2_defconfig
@@ -16,6 +16,8 @@ CONFIG_CONSOLE_MUX=y
 CONFIG_SYS_STDIO_DEREGISTER=y
 CONFIG_SPL_FOOTPRINT_LIMIT=y
 CONFIG_SPL_MAX_FOOTPRINT=0x8000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x800ffffc
 CONFIG_SYS_PROMPT="Tegra124 (Venice2) # "
 CONFIG_SYS_MAXARGS=64
 CONFIG_SYS_PBSIZE=2086
diff --git a/configs/ventana_defconfig b/configs/ventana_defconfig
index 0b1d0f728eeb..f3389b0f7bce 100644
--- a/configs/ventana_defconfig
+++ b/configs/ventana_defconfig
@@ -14,6 +14,8 @@ CONFIG_OF_SYSTEM_SETUP=y
 CONFIG_USE_PREBOOT=y
 CONFIG_SPL_FOOTPRINT_LIMIT=y
 CONFIG_SPL_MAX_FOOTPRINT=0x8000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xffffc
 CONFIG_SYS_PROMPT="Tegra20 (Ventana) # "
 CONFIG_SYS_MAXARGS=64
 CONFIG_SYS_PBSIZE=2085
diff --git a/configs/verdin-imx8mm_defconfig b/configs/verdin-imx8mm_defconfig
index f25d12609c32..97afc211bf5a 100644
--- a/configs/verdin-imx8mm_defconfig
+++ b/configs/verdin-imx8mm_defconfig
@@ -35,6 +35,8 @@ CONFIG_BOARD_LATE_INIT=y
 CONFIG_SPL_MAX_SIZE=0x25000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_BOARD_INIT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x920000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_I2C=y
diff --git a/configs/verdin-imx8mp_defconfig b/configs/verdin-imx8mp_defconfig
index afe6bbaf429c..2107047c1d70 100644
--- a/configs/verdin-imx8mp_defconfig
+++ b/configs/verdin-imx8mp_defconfig
@@ -45,6 +45,8 @@ CONFIG_SPL_BSS_MAX_SIZE=0x400
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_BOOTROM_SUPPORT=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x960000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_I2C=y
diff --git a/configs/vining_2000_defconfig b/configs/vining_2000_defconfig
index a8c3d907d1d4..0559b2864dee 100644
--- a/configs/vining_2000_defconfig
+++ b/configs/vining_2000_defconfig
@@ -31,6 +31,8 @@ CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="run distro_bootcmd"
 CONFIG_SYS_CONSOLE_IS_IN_ENV=y
 CONFIG_BOARD_EARLY_INIT_F=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_FS_EXT4=y
 CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot-dtb.img"
 CONFIG_SPL_I2C=y
diff --git a/configs/vyasa-rk3288_defconfig b/configs/vyasa-rk3288_defconfig
index 99c8379ac892..27c704f8a225 100644
--- a/configs/vyasa-rk3288_defconfig
+++ b/configs/vyasa-rk3288_defconfig
@@ -24,6 +24,8 @@ CONFIG_SILENT_CONSOLE=y
 CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_SPL_PAD_TO=0x7f8000
 CONFIG_SPL_NO_BSS_LIMIT=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xff718000
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x2000
 CONFIG_SPL_OS_BOOT=y
diff --git a/configs/wandboard_defconfig b/configs/wandboard_defconfig
index fadc8af36eb5..43af07f07daa 100644
--- a/configs/wandboard_defconfig
+++ b/configs/wandboard_defconfig
@@ -33,6 +33,8 @@ CONFIG_SYS_CONSOLE_IS_IN_ENV=y
 CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_BOARD_EARLY_INIT_F=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_FIT_IMAGE_TINY=y
 CONFIG_SPL_FS_EXT4=y
 CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot-dtb.img"
diff --git a/configs/work_92105_defconfig b/configs/work_92105_defconfig
index 2261853d0161..7eb23907ebcd 100644
--- a/configs/work_92105_defconfig
+++ b/configs/work_92105_defconfig
@@ -32,6 +32,8 @@ CONFIG_SPL_PAD_TO=0x20000
 CONFIG_SPL_NO_BSS_LIMIT=y
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xfff8
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_SPL_NAND_DRIVERS=y
 CONFIG_SPL_NAND_BASE=y
diff --git a/configs/x530_defconfig b/configs/x530_defconfig
index fa385fcb24d6..ac418dad1501 100644
--- a/configs/x530_defconfig
+++ b/configs/x530_defconfig
@@ -32,6 +32,8 @@ CONFIG_SPL_MAX_SIZE=0x22fd0
 CONFIG_SPL_BSS_MAX_SIZE=0x4000
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0x4002c000
 CONFIG_SPL_WATCHDOG=y
 CONFIG_SYS_CBSIZE=256
 CONFIG_SYS_PBSIZE=276
diff --git a/configs/xilinx_zynq_virt_defconfig b/configs/xilinx_zynq_virt_defconfig
index fd8fd1ddfda8..49210f86c4b8 100644
--- a/configs/xilinx_zynq_virt_defconfig
+++ b/configs/xilinx_zynq_virt_defconfig
@@ -30,6 +30,8 @@ CONFIG_USE_PREBOOT=y
 CONFIG_CLOCKS=y
 CONFIG_SPL_MAX_SIZE=0x30000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xfffffe00
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot.img"
 CONFIG_SPL_FS_LOAD_ARGS_NAME="system.dtb"
diff --git a/configs/xilinx_zynqmp_mini_emmc0_defconfig b/configs/xilinx_zynqmp_mini_emmc0_defconfig
index 44816eb25f0c..2f4b320c811e 100644
--- a/configs/xilinx_zynqmp_mini_emmc0_defconfig
+++ b/configs/xilinx_zynqmp_mini_emmc0_defconfig
@@ -26,6 +26,8 @@ CONFIG_BOARD_EARLY_INIT_R=y
 CONFIG_CLOCKS=y
 CONFIG_SPL_MAX_SIZE=0x40000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xfffffffc
 # CONFIG_CMDLINE_EDITING is not set
 # CONFIG_AUTO_COMPLETE is not set
 CONFIG_SYS_MAXARGS=64
diff --git a/configs/xilinx_zynqmp_mini_emmc1_defconfig b/configs/xilinx_zynqmp_mini_emmc1_defconfig
index d6672ff3c12a..001246fd9846 100644
--- a/configs/xilinx_zynqmp_mini_emmc1_defconfig
+++ b/configs/xilinx_zynqmp_mini_emmc1_defconfig
@@ -26,6 +26,8 @@ CONFIG_BOARD_EARLY_INIT_R=y
 CONFIG_CLOCKS=y
 CONFIG_SPL_MAX_SIZE=0x40000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xfffffffc
 # CONFIG_CMDLINE_EDITING is not set
 # CONFIG_AUTO_COMPLETE is not set
 CONFIG_SYS_MAXARGS=64
diff --git a/configs/xilinx_zynqmp_mini_qspi_defconfig b/configs/xilinx_zynqmp_mini_qspi_defconfig
index 336ca289bd39..9657093c6a33 100644
--- a/configs/xilinx_zynqmp_mini_qspi_defconfig
+++ b/configs/xilinx_zynqmp_mini_qspi_defconfig
@@ -25,6 +25,8 @@ CONFIG_REMAKE_ELF=y
 CONFIG_CLOCKS=y
 CONFIG_SPL_MAX_SIZE=0x40000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xfffffffc
 # CONFIG_CMDLINE_EDITING is not set
 # CONFIG_AUTO_COMPLETE is not set
 # CONFIG_SYS_LONGHELP is not set
diff --git a/configs/xilinx_zynqmp_virt_defconfig b/configs/xilinx_zynqmp_virt_defconfig
index 40c9c28e139b..88d5fec201f7 100644
--- a/configs/xilinx_zynqmp_virt_defconfig
+++ b/configs/xilinx_zynqmp_virt_defconfig
@@ -33,6 +33,8 @@ CONFIG_BOARD_EARLY_INIT_R=y
 CONFIG_CLOCKS=y
 CONFIG_SPL_MAX_SIZE=0x40000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xfffffffc
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_FS_LOAD_KERNEL_NAME="atf-uboot.ub"
 CONFIG_SPL_FS_LOAD_ARGS_NAME="u-boot.bin"
diff --git a/configs/zeropi_defconfig b/configs/zeropi_defconfig
index dd0dbc96ef69..7d45440c0cc5 100644
--- a/configs/zeropi_defconfig
+++ b/configs/zeropi_defconfig
@@ -8,6 +8,7 @@ CONFIG_MACPWR="PD6"
 # CONFIG_VIDEO_DE2 is not set
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_CONSOLE_MUX=y
+CONFIG_SPL_STACK=0x8000
 CONFIG_SYS_PBSIZE=1024
 CONFIG_SUN8I_EMAC=y
 CONFIG_USB_EHCI_HCD=y
diff --git a/configs/zynq_cse_nand_defconfig b/configs/zynq_cse_nand_defconfig
index cb7181324e87..f63a2bbab9a8 100644
--- a/configs/zynq_cse_nand_defconfig
+++ b/configs/zynq_cse_nand_defconfig
@@ -23,6 +23,8 @@ CONFIG_USE_PREBOOT=y
 CONFIG_CLOCKS=y
 CONFIG_SPL_MAX_SIZE=0x30000
 CONFIG_SPL_BSS_MAX_SIZE=0x8000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xfffffe00
 CONFIG_SPL_STACK_R=y
 # CONFIG_CMDLINE_EDITING is not set
 # CONFIG_AUTO_COMPLETE is not set
diff --git a/configs/zynq_cse_nor_defconfig b/configs/zynq_cse_nor_defconfig
index da7b9d037c3f..d38b8f16f2e2 100644
--- a/configs/zynq_cse_nor_defconfig
+++ b/configs/zynq_cse_nor_defconfig
@@ -23,6 +23,8 @@ CONFIG_USE_PREBOOT=y
 CONFIG_CLOCKS=y
 CONFIG_SPL_MAX_SIZE=0x30000
 CONFIG_SPL_BSS_MAX_SIZE=0x8000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xfffffe00
 CONFIG_SPL_STACK_R=y
 # CONFIG_CMDLINE_EDITING is not set
 # CONFIG_AUTO_COMPLETE is not set
diff --git a/configs/zynq_cse_qspi_defconfig b/configs/zynq_cse_qspi_defconfig
index 2f32f9d9a82d..241bf0c922c2 100644
--- a/configs/zynq_cse_qspi_defconfig
+++ b/configs/zynq_cse_qspi_defconfig
@@ -30,6 +30,8 @@ CONFIG_USE_PREBOOT=y
 CONFIG_CLOCKS=y
 CONFIG_SPL_MAX_SIZE=0x30000
 CONFIG_SPL_BSS_MAX_SIZE=0x8000
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SPL_STACK=0xfffffe00
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x100000
diff --git a/include/configs/alt.h b/include/configs/alt.h
index 081e2a93b8ef..fe303fda78a0 100644
--- a/include/configs/alt.h
+++ b/include/configs/alt.h
@@ -37,7 +37,4 @@
 	"bootm_size=0x10000000\0"	\
 	"usb_pgood_delay=2000\0"
 
-/* SPL support */
-#define CONFIG_SPL_STACK		0xe6340000
-
 #endif /* __ALT_H */
diff --git a/include/configs/at91sam9m10g45ek.h b/include/configs/at91sam9m10g45ek.h
index 9e43c0e7aa63..85732e3f9dc2 100644
--- a/include/configs/at91sam9m10g45ek.h
+++ b/include/configs/at91sam9m10g45ek.h
@@ -37,9 +37,6 @@
 
 #endif
 
-/* Defines for SPL */
-#define CONFIG_SPL_STACK		0x310000
-
 #define CONFIG_SYS_MONITOR_LEN		0x80000
 
 #ifdef CONFIG_SD_BOOT
diff --git a/include/configs/at91sam9n12ek.h b/include/configs/at91sam9n12ek.h
index 141540bd889f..b6346ae1df20 100644
--- a/include/configs/at91sam9n12ek.h
+++ b/include/configs/at91sam9n12ek.h
@@ -52,7 +52,6 @@
 #endif
 
 /* SPL */
-#define CONFIG_SPL_STACK		0x308000
 
 #define CONFIG_SPL_BSS_START_ADDR	0x20000000
 #define CONFIG_SYS_SPL_MALLOC_START	0x20080000
diff --git a/include/configs/at91sam9x5ek.h b/include/configs/at91sam9x5ek.h
index 12a349f867c0..446c5e1d3f24 100644
--- a/include/configs/at91sam9x5ek.h
+++ b/include/configs/at91sam9x5ek.h
@@ -52,7 +52,6 @@
 #endif
 
 /* SPL */
-#define CONFIG_SPL_STACK		0x308000
 
 #define CONFIG_SPL_BSS_START_ADDR	0x20000000
 #define CONFIG_SYS_SPL_MALLOC_START	0x20080000
diff --git a/include/configs/capricorn-common.h b/include/configs/capricorn-common.h
index 454dac4ad6bc..b22fc6c5ddcc 100644
--- a/include/configs/capricorn-common.h
+++ b/include/configs/capricorn-common.h
@@ -17,7 +17,6 @@
 
 #define CONFIG_SYS_MONITOR_LEN		(1024 * 1024)
 
-#define CONFIG_SPL_STACK		0x013E000
 #define CONFIG_SPL_BSS_START_ADDR	0x00128000
 #define CONFIG_SYS_SPL_MALLOC_START	0x00120000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	0x3000	/* 12 KB */
diff --git a/include/configs/cgtqmx8.h b/include/configs/cgtqmx8.h
index 2553d9aad63e..d12feda16a47 100644
--- a/include/configs/cgtqmx8.h
+++ b/include/configs/cgtqmx8.h
@@ -14,7 +14,6 @@
 #ifdef CONFIG_SPL_BUILD
 #define CONFIG_SYS_MONITOR_LEN				(1024 * 1024)
 
-#define CONFIG_SPL_STACK		0x013E000
 #define CONFIG_SPL_BSS_START_ADDR	0x00128000
 #define CONFIG_SYS_SPL_MALLOC_START	0x00120000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	0x3000	/* 12 KB */
diff --git a/include/configs/ci20.h b/include/configs/ci20.h
index 33de2b7864ab..f0497407afcc 100644
--- a/include/configs/ci20.h
+++ b/include/configs/ci20.h
@@ -31,7 +31,6 @@
 #define CONFIG_SYS_BOOTM_LEN		(64 << 20)
 
 /* SPL */
-#define CONFIG_SPL_STACK		0xf4008000 /* only max. 2KB spare! */
 
 #define CONFIG_SPL_BSS_START_ADDR	0xf4004000
 
diff --git a/include/configs/clearfog.h b/include/configs/clearfog.h
index 6cf44877601f..03f7ceb2f427 100644
--- a/include/configs/clearfog.h
+++ b/include/configs/clearfog.h
@@ -47,8 +47,6 @@
 
 #define CONFIG_SPL_BSS_START_ADDR	(0x40000000 + CONFIG_SPL_SIZE)
 
-#define CONFIG_SPL_STACK		(0x40000000 + ((192 - 16) << 10))
-
 #if defined(CONFIG_MVEBU_SPL_BOOT_DEVICE_MMC) || defined(CONFIG_MVEBU_SPL_BOOT_DEVICE_SATA)
 /* SPL related MMC defines */
 #ifdef CONFIG_SPL_BUILD
diff --git a/include/configs/controlcenterdc.h b/include/configs/controlcenterdc.h
index 78b7d4f17f29..62465acc97cf 100644
--- a/include/configs/controlcenterdc.h
+++ b/include/configs/controlcenterdc.h
@@ -39,8 +39,6 @@
 
 #define CONFIG_SPL_BSS_START_ADDR	(0x40000000 + CONFIG_SPL_SIZE)
 
-#define CONFIG_SPL_STACK		(0x40000000 + ((212 - 16) << 10))
-
 #if CONFIG_SPL_BOOT_DEVICE == SPL_BOOT_SDIO_MMC_CARD
 /* SPL related MMC defines */
 #ifdef CONFIG_SPL_BUILD
diff --git a/include/configs/corvus.h b/include/configs/corvus.h
index 99c8cd311100..f15e15822e52 100644
--- a/include/configs/corvus.h
+++ b/include/configs/corvus.h
@@ -54,7 +54,6 @@
 /* bootstrap + u-boot + env in nandflash */
 
 /* Defines for SPL */
-#define CONFIG_SPL_STACK		(SZ_16K)
 
 #define CONFIG_SPL_BSS_START_ADDR	CONFIG_SPL_MAX_SIZE
 
diff --git a/include/configs/da850evm.h b/include/configs/da850evm.h
index fd58b1a194e8..209a1423c1c0 100644
--- a/include/configs/da850evm.h
+++ b/include/configs/da850evm.h
@@ -182,7 +182,6 @@
 #define CONFIG_SYS_SPL_MALLOC_START	(CONFIG_SYS_TEXT_BASE - \
 						CONFIG_SYS_MALLOC_LEN)
 #define CONFIG_SYS_SPL_MALLOC_SIZE	CONFIG_SYS_MALLOC_LEN
-#define CONFIG_SPL_STACK	0x8001ff00
 
 #endif
 
diff --git a/include/configs/db-88f6720.h b/include/configs/db-88f6720.h
index eeaae1fdabcb..e97ff21360e3 100644
--- a/include/configs/db-88f6720.h
+++ b/include/configs/db-88f6720.h
@@ -37,6 +37,4 @@
 
 #define CONFIG_SPL_BSS_START_ADDR	(0x40000000 + (128 << 10))
 
-#define CONFIG_SPL_STACK		(0x40000000 + ((192 - 16) << 10))
-
 #endif /* _CONFIG_DB_88F6720_H */
diff --git a/include/configs/db-88f6820-amc.h b/include/configs/db-88f6820-amc.h
index cb2050015e00..727756dbba7d 100644
--- a/include/configs/db-88f6820-amc.h
+++ b/include/configs/db-88f6820-amc.h
@@ -44,8 +44,6 @@
 
 #define CONFIG_SPL_BSS_START_ADDR	(0x40000000 + CONFIG_SPL_SIZE)
 
-#define CONFIG_SPL_STACK		(0x40000000 + ((192 - 16) << 10))
-
 /*
  * mv-common.h should be defined after CMD configs since it used them
  * to enable certain macros
diff --git a/include/configs/db-88f6820-gp.h b/include/configs/db-88f6820-gp.h
index e1a97daeac8b..c6ce784b4b20 100644
--- a/include/configs/db-88f6820-gp.h
+++ b/include/configs/db-88f6820-gp.h
@@ -44,8 +44,6 @@
 
 #define CONFIG_SPL_BSS_START_ADDR	(0x40000000 + CONFIG_SPL_SIZE)
 
-#define CONFIG_SPL_STACK		(0x40000000 + ((192 - 16) << 10))
-
 #if CONFIG_SPL_BOOT_DEVICE == SPL_BOOT_SDIO_MMC_CARD
 /* SPL related MMC defines */
 #ifdef CONFIG_SPL_BUILD
diff --git a/include/configs/db-mv784mp-gp.h b/include/configs/db-mv784mp-gp.h
index 2ec9afe8e843..cade78b85d3c 100644
--- a/include/configs/db-mv784mp-gp.h
+++ b/include/configs/db-mv784mp-gp.h
@@ -56,8 +56,6 @@
 
 #define CONFIG_SPL_BSS_START_ADDR	(0x40000000 + (128 << 10))
 
-#define CONFIG_SPL_STACK		(0x40000000 + ((192 - 16) << 10))
-
 /* Enable DDR support in SPL (DDR3 training from Marvell bin_hdr) */
 #define CONFIG_SPD_EEPROM		0x4e
 
diff --git a/include/configs/devkit3250.h b/include/configs/devkit3250.h
index 53c67c706c3d..15160db276d7 100644
--- a/include/configs/devkit3250.h
+++ b/include/configs/devkit3250.h
@@ -82,18 +82,6 @@
  * U-Boot Commands
  */
 
-/*
- * SPL specific defines
- */
-/* SPL will be executed at offset 0 */
-
-/* SPL will use SRAM as stack */
-#define CONFIG_SPL_STACK		0x0000FFF8
-
-/* Use the framework and generic lib */
-
-/* SPL will use serial */
-
 /* U-Boot will be 0x60000 bytes, loaded and run at CONFIG_SYS_TEXT_BASE */
 #define CONFIG_SYS_NAND_U_BOOT_SIZE	0x60000
 
diff --git a/include/configs/ds414.h b/include/configs/ds414.h
index 3eff94f116ea..16d59ed014cc 100644
--- a/include/configs/ds414.h
+++ b/include/configs/ds414.h
@@ -48,8 +48,6 @@
 
 #define CONFIG_SPL_BSS_START_ADDR	(0x40000000 + (128 << 10))
 
-#define CONFIG_SPL_STACK		(0x40000000 + ((192 - 16) << 10))
-
 /* Default Environment */
 
 #define CONFIG_EXTRA_ENV_SETTINGS				\
diff --git a/include/configs/edminiv2.h b/include/configs/edminiv2.h
index c0923883acf3..2bc9c9923191 100644
--- a/include/configs/edminiv2.h
+++ b/include/configs/edminiv2.h
@@ -15,7 +15,6 @@
  * SPL
  */
 
-#define CONFIG_SPL_STACK		0x00020000
 #define CONFIG_SPL_BSS_START_ADDR	0x00020000
 #define CONFIG_SYS_SPL_MALLOC_START	0x00040000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	0x0001ffff
diff --git a/include/configs/espresso7420.h b/include/configs/espresso7420.h
index 9632319e126a..660d1a080495 100644
--- a/include/configs/espresso7420.h
+++ b/include/configs/espresso7420.h
@@ -13,7 +13,6 @@
 #define CONFIG_ESPRESSO7420
 
 #define CONFIG_SYS_SDRAM_BASE		0x40000000
-#define CONFIG_SPL_STACK		CONFIG_IRAM_END
 
 /* DRAM Memory Banks */
 #define SDRAM_BANK_SIZE		(256UL << 20UL)	/* 256 MB */
diff --git a/include/configs/gardena-smart-gateway-at91sam.h b/include/configs/gardena-smart-gateway-at91sam.h
index 940b61b6dd13..380622c9c79e 100644
--- a/include/configs/gardena-smart-gateway-at91sam.h
+++ b/include/configs/gardena-smart-gateway-at91sam.h
@@ -33,7 +33,6 @@
 #define CONFIG_SYS_NAND_READY_PIN	AT91_PIN_PD5
 
 /* SPL */
-#define CONFIG_SPL_STACK		0x308000
 
 #define CONFIG_SPL_BSS_START_ADDR	0x20000000
 #define CONFIG_SYS_SPL_MALLOC_START	0x20080000
diff --git a/include/configs/gose.h b/include/configs/gose.h
index a0af98dd9805..d1fe375a2c1f 100644
--- a/include/configs/gose.h
+++ b/include/configs/gose.h
@@ -32,7 +32,4 @@
 #define CONFIG_EXTRA_ENV_SETTINGS	\
 	"bootm_size=0x10000000\0"
 
-/* SPL support */
-#define CONFIG_SPL_STACK		0xe6340000
-
 #endif	/* __GOSE_H */
diff --git a/include/configs/helios4.h b/include/configs/helios4.h
index e90cea374b24..86d441b11b20 100644
--- a/include/configs/helios4.h
+++ b/include/configs/helios4.h
@@ -47,8 +47,6 @@
 
 #define CONFIG_SPL_BSS_START_ADDR	(0x40000000 + CONFIG_SPL_SIZE)
 
-#define CONFIG_SPL_STACK		(0x40000000 + ((192 - 16) << 10))
-
 #if defined(CONFIG_MVEBU_SPL_BOOT_DEVICE_MMC) || defined(CONFIG_MVEBU_SPL_BOOT_DEVICE_SATA)
 /* SPL related MMC defines */
 #ifdef CONFIG_SPL_BUILD
diff --git a/include/configs/imx6_spl.h b/include/configs/imx6_spl.h
index ad6bbd802b55..86e192fb0c89 100644
--- a/include/configs/imx6_spl.h
+++ b/include/configs/imx6_spl.h
@@ -21,7 +21,6 @@
  *    and some padding thus 'our' max size is really 0x00908000 - 0x00938000
  *    or 192KB
  */
-#define CONFIG_SPL_STACK		0x0093FFB8
 /*
  * Pad SPL to 196KB (4KB header + 192KB max size). This allows to write the
  * SPL/U-Boot combination generated with u-boot-with-spl.imx directly to a
@@ -40,7 +39,6 @@
  *    and some padding thus 'our' max size is really 0x00908000 - 0x00918000
  *    or 64KB
  */
-#define CONFIG_SPL_STACK		0x0091FFB8
 /*
  * Pad SPL to 68KB (4KB header + 64KB max size). This allows to write the
  * SPL/U-Boot combination generated with u-boot-with-spl.imx directly to a
diff --git a/include/configs/imx7_spl.h b/include/configs/imx7_spl.h
index 33a6185ef94c..019ed5e203a9 100644
--- a/include/configs/imx7_spl.h
+++ b/include/configs/imx7_spl.h
@@ -26,7 +26,6 @@
  *    CONFIG_SPL_TEXT_BASE could be moved to 0x00911000 to gain 4KB of space
  *    for the SPL, but 56KB should be more than enough for the SPL.
  */
-#define CONFIG_SPL_STACK		0x00946BB8
 /*
  * Pad SPL to 68KB (4KB header + 56KB max size + 8KB extra padding)
  * The extra padding could be removed, but this value was used historically
diff --git a/include/configs/imx8mm-cl-iot-gate.h b/include/configs/imx8mm-cl-iot-gate.h
index 114c8c1a800e..0e16d14f8b6f 100644
--- a/include/configs/imx8mm-cl-iot-gate.h
+++ b/include/configs/imx8mm-cl-iot-gate.h
@@ -17,7 +17,6 @@
 	(QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512)
 
 #ifdef CONFIG_SPL_BUILD
-#define CONFIG_SPL_STACK		0x920000
 #define CONFIG_SPL_BSS_START_ADDR	0x910000
 #define CONFIG_SYS_SPL_MALLOC_START	0x42200000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_512K	/* 512 KB */
diff --git a/include/configs/imx8mm_beacon.h b/include/configs/imx8mm_beacon.h
index 0151e81630f5..d28774cddbf3 100644
--- a/include/configs/imx8mm_beacon.h
+++ b/include/configs/imx8mm_beacon.h
@@ -14,7 +14,6 @@
 	(QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512)
 
 #ifdef CONFIG_SPL_BUILD
-#define CONFIG_SPL_STACK		0x920000
 #define CONFIG_SPL_BSS_START_ADDR	0x910000
 #define CONFIG_SYS_SPL_MALLOC_START	0x42200000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_512K	/* 512 KB */
diff --git a/include/configs/imx8mm_data_modul_edm_sbc.h b/include/configs/imx8mm_data_modul_edm_sbc.h
index 9487fe001043..ed819e392abd 100644
--- a/include/configs/imx8mm_data_modul_edm_sbc.h
+++ b/include/configs/imx8mm_data_modul_edm_sbc.h
@@ -14,7 +14,6 @@
 
 #define CONFIG_SYS_MONITOR_LEN		SZ_1M
 
-#define CONFIG_SPL_STACK		0x920000
 #ifdef CONFIG_SPL_BUILD
 #define CONFIG_SPL_BSS_START_ADDR	0x910000
 #define CONFIG_SYS_SPL_MALLOC_START	0x42200000
diff --git a/include/configs/imx8mm_evk.h b/include/configs/imx8mm_evk.h
index 24345d41a9a7..b6dda3331764 100644
--- a/include/configs/imx8mm_evk.h
+++ b/include/configs/imx8mm_evk.h
@@ -16,7 +16,6 @@
 	(QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512)
 
 #ifdef CONFIG_SPL_BUILD
-#define CONFIG_SPL_STACK		0x920000
 #define CONFIG_SPL_BSS_START_ADDR	0x910000
 #define CONFIG_SYS_SPL_MALLOC_START	0x42200000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_512K	/* 512 KB */
diff --git a/include/configs/imx8mm_icore_mx8mm.h b/include/configs/imx8mm_icore_mx8mm.h
index 505ef8beb31a..ffe88f7027b7 100644
--- a/include/configs/imx8mm_icore_mx8mm.h
+++ b/include/configs/imx8mm_icore_mx8mm.h
@@ -15,7 +15,6 @@
 	(QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512)
 
 #ifdef CONFIG_SPL_BUILD
-# define CONFIG_SPL_STACK		0x920000
 # define CONFIG_SPL_BSS_START_ADDR	0x910000
 # define CONFIG_SYS_SPL_MALLOC_START	0x42200000
 # define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_512K
diff --git a/include/configs/imx8mm_venice.h b/include/configs/imx8mm_venice.h
index 560a876b2ff7..eb30ed1b950c 100644
--- a/include/configs/imx8mm_venice.h
+++ b/include/configs/imx8mm_venice.h
@@ -14,7 +14,6 @@
 	(QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512)
 
 #ifdef CONFIG_SPL_BUILD
-#define CONFIG_SPL_STACK		0x920000
 #define CONFIG_SPL_BSS_START_ADDR	0x910000
 #define CONFIG_SYS_SPL_MALLOC_START	0x42200000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_1M
diff --git a/include/configs/imx8mn_beacon.h b/include/configs/imx8mn_beacon.h
index 0118ca32a961..3b99ba41bda7 100644
--- a/include/configs/imx8mn_beacon.h
+++ b/include/configs/imx8mn_beacon.h
@@ -14,7 +14,6 @@
 	(QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512)
 
 #ifdef CONFIG_SPL_BUILD
-#define CONFIG_SPL_STACK		0x187FF0
 #define CONFIG_SPL_BSS_START_ADDR	0x0095e000
 #define CONFIG_SYS_SPL_MALLOC_START	0x42200000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_512K
diff --git a/include/configs/imx8mn_bsh_smm_s2_common.h b/include/configs/imx8mn_bsh_smm_s2_common.h
index 91418e677846..60faedb76e67 100644
--- a/include/configs/imx8mn_bsh_smm_s2_common.h
+++ b/include/configs/imx8mn_bsh_smm_s2_common.h
@@ -16,7 +16,6 @@
 #define CONFIG_SYS_UBOOT_BASE	\
 	(QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512)
 
-#define CONFIG_SPL_STACK		0x980000
 #define CONFIG_SPL_BSS_START_ADDR	0x950000
 #define CONFIG_SYS_SPL_MALLOC_START	0x42200000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_512K
diff --git a/include/configs/imx8mn_evk.h b/include/configs/imx8mn_evk.h
index b828a5b6349d..fac2c26146d6 100644
--- a/include/configs/imx8mn_evk.h
+++ b/include/configs/imx8mn_evk.h
@@ -17,7 +17,6 @@
 	(QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512)
 
 #ifdef CONFIG_SPL_BUILD
-#define CONFIG_SPL_STACK		0x980000
 #define CONFIG_SPL_BSS_START_ADDR	0x950000
 #define CONFIG_SYS_SPL_MALLOC_START	0x42200000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_512K	/* 512 KB */
diff --git a/include/configs/imx8mn_var_som.h b/include/configs/imx8mn_var_som.h
index acfc2834a951..699a51c1eb41 100644
--- a/include/configs/imx8mn_var_som.h
+++ b/include/configs/imx8mn_var_som.h
@@ -16,7 +16,6 @@
 #define CONFIG_SYS_UBOOT_BASE	\
 	(QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512)
 
-#define CONFIG_SPL_STACK		0x980000
 #define CONFIG_SPL_BSS_START_ADDR	0x950000
 #define CONFIG_SYS_SPL_MALLOC_START	0x42200000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_512K
diff --git a/include/configs/imx8mn_venice.h b/include/configs/imx8mn_venice.h
index 56b3fe117f2c..5807da5ac4b9 100644
--- a/include/configs/imx8mn_venice.h
+++ b/include/configs/imx8mn_venice.h
@@ -14,7 +14,6 @@
 	(QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512)
 
 #ifdef CONFIG_SPL_BUILD
-#define CONFIG_SPL_STACK		0x980000
 #define CONFIG_SPL_BSS_START_ADDR	0x950000
 #define CONFIG_SYS_SPL_MALLOC_START	0x42200000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_512K	/* 512 KB */
diff --git a/include/configs/imx8mp_dhcom_pdk2.h b/include/configs/imx8mp_dhcom_pdk2.h
index f641f4902dc0..abe245748f19 100644
--- a/include/configs/imx8mp_dhcom_pdk2.h
+++ b/include/configs/imx8mp_dhcom_pdk2.h
@@ -15,7 +15,6 @@
 #define CONFIG_SYS_MONITOR_LEN		SZ_1M
 
 #ifdef CONFIG_SPL_BUILD
-#define CONFIG_SPL_STACK		0x96FC00
 #define CONFIG_SPL_BSS_START_ADDR	0x0096FC00
 #define CONFIG_SYS_SPL_MALLOC_START	0x4c000000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_512K	/* 512 kiB */
diff --git a/include/configs/imx8mp_evk.h b/include/configs/imx8mp_evk.h
index f066bb00bf26..1cfd63d78c6a 100644
--- a/include/configs/imx8mp_evk.h
+++ b/include/configs/imx8mp_evk.h
@@ -17,7 +17,6 @@
 
 #ifdef CONFIG_SPL_BUILD
 /*#define CONFIG_ENABLE_DDR_TRAINING_DEBUG*/
-#define CONFIG_SPL_STACK		0x960000
 #define CONFIG_SPL_BSS_START_ADDR	0x0098FC00
 #define CONFIG_SYS_SPL_MALLOC_START	0x42200000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_512K	/* 512 KB */
diff --git a/include/configs/imx8mp_rsb3720.h b/include/configs/imx8mp_rsb3720.h
index b9122d4667fe..97f66bddbc9c 100644
--- a/include/configs/imx8mp_rsb3720.h
+++ b/include/configs/imx8mp_rsb3720.h
@@ -27,7 +27,6 @@
 		 0x5f, 0xd3, 0x6b, 0x9b, 0xe5, 0xb9)
 
 #ifdef CONFIG_SPL_BUILD
-#define CONFIG_SPL_STACK		0x960000
 #define CONFIG_SPL_BSS_START_ADDR	0x0098FC00
 #define CONFIG_SYS_SPL_MALLOC_START	0x42200000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_512K	/* 512 KB */
diff --git a/include/configs/imx8mp_venice.h b/include/configs/imx8mp_venice.h
index 1e8b1ba06e1b..074f5b08fc1a 100644
--- a/include/configs/imx8mp_venice.h
+++ b/include/configs/imx8mp_venice.h
@@ -14,7 +14,6 @@
 	(QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512)
 
 #ifdef CONFIG_SPL_BUILD
-#define CONFIG_SPL_STACK		0x960000
 #define CONFIG_SPL_BSS_START_ADDR	0x0098FC00
 #define CONFIG_SYS_SPL_MALLOC_START	0x42200000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_512K	/* 512 KB */
diff --git a/include/configs/imx8mq_cm.h b/include/configs/imx8mq_cm.h
index 48fa596eee6e..fc4b1c5bf780 100644
--- a/include/configs/imx8mq_cm.h
+++ b/include/configs/imx8mq_cm.h
@@ -15,7 +15,6 @@
 #define CONFIG_SYS_MONITOR_LEN		(512 * 1024)
 
 #ifdef CONFIG_SPL_BUILD
-#define CONFIG_SPL_STACK		0x187FF0
 #define CONFIG_SPL_BSS_START_ADDR      0x00180000
 #define CONFIG_SYS_SPL_MALLOC_START    0x42200000
 #define CONFIG_SYS_SPL_MALLOC_SIZE    0x80000	/* 512 KB */
diff --git a/include/configs/imx8mq_evk.h b/include/configs/imx8mq_evk.h
index 416c83b49024..179c5123d724 100644
--- a/include/configs/imx8mq_evk.h
+++ b/include/configs/imx8mq_evk.h
@@ -16,7 +16,6 @@
 
 #ifdef CONFIG_SPL_BUILD
 /*#define CONFIG_ENABLE_DDR_TRAINING_DEBUG*/
-#define CONFIG_SPL_STACK		0x187FF0
 #define CONFIG_SPL_BSS_START_ADDR      0x00180000
 #define CONFIG_SYS_SPL_MALLOC_START    0x42200000
 #define CONFIG_SYS_SPL_MALLOC_SIZE    0x80000	/* 512 KB */
diff --git a/include/configs/imx8mq_phanbell.h b/include/configs/imx8mq_phanbell.h
index 84774eed8eee..bc749538d8cc 100644
--- a/include/configs/imx8mq_phanbell.h
+++ b/include/configs/imx8mq_phanbell.h
@@ -13,7 +13,6 @@
 
 #ifdef CONFIG_SPL_BUILD
 /*#define CONFIG_ENABLE_DDR_TRAINING_DEBUG*/
-#define CONFIG_SPL_STACK		0x187FF0
 #define CONFIG_SPL_BSS_START_ADDR      0x00180000
 #define CONFIG_SYS_SPL_MALLOC_START    0x42200000
 #define CONFIG_SYS_SPL_MALLOC_SIZE    0x80000	/* 512 KB */
diff --git a/include/configs/imx8qm_mek.h b/include/configs/imx8qm_mek.h
index 0fa5fe581551..4f3e004f388b 100644
--- a/include/configs/imx8qm_mek.h
+++ b/include/configs/imx8qm_mek.h
@@ -15,7 +15,6 @@
 #ifdef CONFIG_SPL_BUILD
 #define CONFIG_SYS_MONITOR_LEN				(1024 * 1024)
 
-#define CONFIG_SPL_STACK		0x013E000
 #define CONFIG_SPL_BSS_START_ADDR	0x00128000
 #define CONFIG_SYS_SPL_MALLOC_START	0x00120000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	0x3000	/* 12 KB */
diff --git a/include/configs/imx8qxp_mek.h b/include/configs/imx8qxp_mek.h
index fd4d2c9669f0..7afc64800eb3 100644
--- a/include/configs/imx8qxp_mek.h
+++ b/include/configs/imx8qxp_mek.h
@@ -13,7 +13,6 @@
 #ifdef CONFIG_SPL_BUILD
 #define CONFIG_SYS_MONITOR_LEN				(1024 * 1024)
 
-#define CONFIG_SPL_STACK		0x013E000
 #define CONFIG_SPL_BSS_START_ADDR	0x00128000
 #define CONFIG_SYS_SPL_MALLOC_START	0x00120000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	0x3000	/* 12 KB */
diff --git a/include/configs/imx8ulp_evk.h b/include/configs/imx8ulp_evk.h
index 8fe54f674cd4..55b1795634ab 100644
--- a/include/configs/imx8ulp_evk.h
+++ b/include/configs/imx8ulp_evk.h
@@ -14,7 +14,6 @@
 #define CONFIG_SYS_UBOOT_BASE	(QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512)
 
 #ifdef CONFIG_SPL_BUILD
-#define CONFIG_SPL_STACK		0x22050000
 #define CONFIG_SPL_BSS_START_ADDR	0x22048000
 #define CONFIG_SYS_SPL_MALLOC_START	0x22040000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	0x8000	/* 32 KB */
diff --git a/include/configs/koelsch.h b/include/configs/koelsch.h
index 3e46f9d5851f..736865ad80af 100644
--- a/include/configs/koelsch.h
+++ b/include/configs/koelsch.h
@@ -33,6 +33,5 @@
 	"bootm_size=0x10000000\0"
 
 /* SPL support */
-#define CONFIG_SPL_STACK		0xe6340000
 
 #endif	/* __KOELSCH_H */
diff --git a/include/configs/kontron-sl-mx8mm.h b/include/configs/kontron-sl-mx8mm.h
index c731b04b8e79..b2c826b6f134 100644
--- a/include/configs/kontron-sl-mx8mm.h
+++ b/include/configs/kontron-sl-mx8mm.h
@@ -55,7 +55,6 @@
 #define CONFIG_SYS_BOOTM_LEN		SZ_64M
 
 #ifdef CONFIG_SPL_BUILD
-#define CONFIG_SPL_STACK		0x91fff0
 #define CONFIG_SPL_BSS_START_ADDR	0x910000
 #define CONFIG_SYS_SPL_MALLOC_START	0x42200000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_512K
diff --git a/include/configs/kontron_pitx_imx8m.h b/include/configs/kontron_pitx_imx8m.h
index 5e51f4fd4770..08c6b80abb9a 100644
--- a/include/configs/kontron_pitx_imx8m.h
+++ b/include/configs/kontron_pitx_imx8m.h
@@ -17,7 +17,6 @@
 		 0x40, 0xd4, 0x5c, 0xca, 0x13, 0x99)
 
 #ifdef CONFIG_SPL_BUILD
-#define CONFIG_SPL_STACK		0x187FF0
 #define CONFIG_SPL_BSS_START_ADDR       0x00180000
 #define CONFIG_SYS_SPL_MALLOC_START     0x42200000
 #define CONFIG_SYS_SPL_MALLOC_SIZE      SZ_512K
diff --git a/include/configs/kontron_sl28.h b/include/configs/kontron_sl28.h
index 129bd7ed1748..52778dd02b93 100644
--- a/include/configs/kontron_sl28.h
+++ b/include/configs/kontron_sl28.h
@@ -42,7 +42,6 @@
 
 /* SPL */
 #define CONFIG_SPL_BSS_START_ADDR	0x80100000
-#define CONFIG_SPL_STACK		(CONFIG_SYS_FSL_OCRAM_BASE + 0x9ff0)
 
 #define CONFIG_SYS_SPL_MALLOC_SIZE	0x00100000
 #define CONFIG_SYS_SPL_MALLOC_START	0x80200000
diff --git a/include/configs/lager.h b/include/configs/lager.h
index 98c82a0e5710..f3feaa539fcc 100644
--- a/include/configs/lager.h
+++ b/include/configs/lager.h
@@ -34,6 +34,5 @@
 	"bootm_size=0x10000000\0"
 
 /* SPL support */
-#define CONFIG_SPL_STACK		0xe6340000
 
 #endif	/* __LAGER_H */
diff --git a/include/configs/ls1021aiot.h b/include/configs/ls1021aiot.h
index e8827157256b..614b399af508 100644
--- a/include/configs/ls1021aiot.h
+++ b/include/configs/ls1021aiot.h
@@ -42,8 +42,6 @@
 #define SDRAM_CFG_BI			0x00000001
 
 #ifdef CONFIG_SD_BOOT
-#define CONFIG_SPL_STACK		0x1001d000
-
 #define CONFIG_SYS_SPL_MALLOC_START	(CONFIG_SYS_TEXT_BASE + \
 		CONFIG_SYS_MONITOR_LEN)
 #define CONFIG_SYS_SPL_MALLOC_SIZE	0x100000
diff --git a/include/configs/ls1021aqds.h b/include/configs/ls1021aqds.h
index d2e0f5f93623..fb50c82a653f 100644
--- a/include/configs/ls1021aqds.h
+++ b/include/configs/ls1021aqds.h
@@ -11,8 +11,6 @@
 #define CONFIG_SYS_INIT_RAM_SIZE	OCRAM_SIZE
 
 #ifdef CONFIG_SD_BOOT
-#define CONFIG_SPL_STACK		0x1001d000
-
 #define CONFIG_SYS_SPL_MALLOC_START	(CONFIG_SYS_TEXT_BASE + \
 		CONFIG_SYS_MONITOR_LEN)
 #define CONFIG_SYS_SPL_MALLOC_SIZE	0x100000
@@ -21,8 +19,6 @@
 #endif
 
 #ifdef CONFIG_NAND_BOOT
-#define CONFIG_SPL_STACK		0x1001d000
-
 #define CONFIG_SYS_NAND_U_BOOT_SIZE	(400 << 10)
 #define CONFIG_SYS_NAND_U_BOOT_DST	CONFIG_SYS_TEXT_BASE
 #define CONFIG_SYS_NAND_U_BOOT_START	CONFIG_SYS_TEXT_BASE
diff --git a/include/configs/ls1021atsn.h b/include/configs/ls1021atsn.h
index 35156a00b3a8..3e9175f50451 100644
--- a/include/configs/ls1021atsn.h
+++ b/include/configs/ls1021atsn.h
@@ -44,8 +44,6 @@
 #define CONFIG_U_BOOT_HDR_SIZE		(16 << 10)
 #endif /* ifdef CONFIG_NXP_ESBC */
 
-#define CONFIG_SPL_STACK		0x1001d000
-
 #define CONFIG_SYS_SPL_MALLOC_START	(CONFIG_SYS_TEXT_BASE + \
 		CONFIG_SYS_MONITOR_LEN)
 #define CONFIG_SYS_SPL_MALLOC_SIZE	0x100000
diff --git a/include/configs/ls1021atwr.h b/include/configs/ls1021atwr.h
index afff8fc3e2c8..4470d974ca97 100644
--- a/include/configs/ls1021atwr.h
+++ b/include/configs/ls1021atwr.h
@@ -46,8 +46,6 @@
 #define CONFIG_U_BOOT_HDR_SIZE				(16 << 10)
 #endif /* ifdef CONFIG_NXP_ESBC */
 
-#define CONFIG_SPL_STACK		0x1001d000
-
 #define CONFIG_SYS_SPL_MALLOC_START	(CONFIG_SYS_TEXT_BASE + \
 		CONFIG_SYS_MONITOR_LEN)
 #define CONFIG_SYS_SPL_MALLOC_SIZE	0x100000
diff --git a/include/configs/ls1043a_common.h b/include/configs/ls1043a_common.h
index 710708398262..a09486a4170e 100644
--- a/include/configs/ls1043a_common.h
+++ b/include/configs/ls1043a_common.h
@@ -46,9 +46,6 @@
 
 /* SD boot SPL */
 #ifdef CONFIG_SD_BOOT
-
-#define CONFIG_SPL_STACK		0x1001e000
-
 #define CONFIG_SYS_SPL_MALLOC_START	(CONFIG_SPL_BSS_START_ADDR + \
 					CONFIG_SPL_BSS_MAX_SIZE)
 #define CONFIG_SYS_SPL_MALLOC_SIZE	0x100000
@@ -70,7 +67,6 @@
 
 /* NAND SPL */
 #ifdef CONFIG_NAND_BOOT
-#define CONFIG_SPL_STACK		0x1001d000
 #define CONFIG_SYS_NAND_U_BOOT_DST	CONFIG_SYS_TEXT_BASE
 #define CONFIG_SYS_NAND_U_BOOT_START	CONFIG_SYS_TEXT_BASE
 #define CONFIG_SYS_SPL_MALLOC_START	0x80200000
diff --git a/include/configs/ls1046a_common.h b/include/configs/ls1046a_common.h
index bf808d15efa9..92fcc453f165 100644
--- a/include/configs/ls1046a_common.h
+++ b/include/configs/ls1046a_common.h
@@ -46,7 +46,6 @@
 
 /* SD boot SPL */
 #ifdef CONFIG_SD_BOOT
-#define CONFIG_SPL_STACK		0x10020000
 #define CONFIG_SPL_BSS_START_ADDR	0x8f000000
 #define CONFIG_SYS_SPL_MALLOC_START	(CONFIG_SPL_BSS_START_ADDR + \
 					CONFIG_SPL_BSS_MAX_SIZE)
@@ -68,7 +67,6 @@
 
 #if defined(CONFIG_QSPI_BOOT) && defined(CONFIG_SPL)
 #define CONFIG_SPL_TARGET		"spl/u-boot-spl.pbl"
-#define CONFIG_SPL_STACK		0x10020000
 #define CONFIG_SPL_BSS_START_ADDR	0x8f000000
 #define CONFIG_SYS_SPL_MALLOC_START	(CONFIG_SPL_BSS_START_ADDR + \
 					CONFIG_SPL_BSS_MAX_SIZE)
@@ -78,7 +76,6 @@
 
 /* NAND SPL */
 #ifdef CONFIG_NAND_BOOT
-#define CONFIG_SPL_STACK		0x1001f000
 #define CONFIG_SYS_NAND_U_BOOT_DST	CONFIG_SYS_TEXT_BASE
 #define CONFIG_SYS_NAND_U_BOOT_START	CONFIG_SYS_TEXT_BASE
 
diff --git a/include/configs/ls1088a_common.h b/include/configs/ls1088a_common.h
index 6ed180984e5b..1b8180f6f10b 100644
--- a/include/configs/ls1088a_common.h
+++ b/include/configs/ls1088a_common.h
@@ -145,7 +145,6 @@ unsigned long long get_qixis_addr(void);
 
 #ifdef CONFIG_SPL
 #define CONFIG_SPL_BSS_START_ADDR      0x80100000
-#define CONFIG_SPL_STACK               (CONFIG_SYS_FSL_OCRAM_BASE + 0x9ff0)
 #define CONFIG_SPL_TARGET              "u-boot-with-spl.bin"
 
 #define CONFIG_SYS_SPL_MALLOC_SIZE     0x00100000
diff --git a/include/configs/ls2080a_common.h b/include/configs/ls2080a_common.h
index 5d2b8ebea0d4..f33e369847c3 100644
--- a/include/configs/ls2080a_common.h
+++ b/include/configs/ls2080a_common.h
@@ -138,7 +138,6 @@ unsigned long long get_qixis_addr(void);
 	" 0x580e00000 \0"
 
 #define CONFIG_SPL_BSS_START_ADDR	0x80100000
-#define CONFIG_SPL_STACK		(CONFIG_SYS_FSL_OCRAM_BASE + 0x9ff0)
 #define CONFIG_SPL_TARGET		"u-boot-with-spl.bin"
 
 #ifdef CONFIG_NAND_BOOT
diff --git a/include/configs/m53menlo.h b/include/configs/m53menlo.h
index 58d6418b02e9..433952c9d72c 100644
--- a/include/configs/m53menlo.h
+++ b/include/configs/m53menlo.h
@@ -109,7 +109,6 @@
  * NAND SPL
  */
 #define CONFIG_SPL_TARGET		"u-boot-with-nand-spl.imx"
-#define CONFIG_SPL_STACK		0x70004000
 
 #define CONFIG_SYS_NAND_SIZE		(256 * 1024 * 1024)
 
diff --git a/include/configs/maxbcm.h b/include/configs/maxbcm.h
index 939046f6de85..d728c1fc11b2 100644
--- a/include/configs/maxbcm.h
+++ b/include/configs/maxbcm.h
@@ -51,8 +51,6 @@
 
 #define CONFIG_SPL_BSS_START_ADDR	(0x40000000 + (128 << 10))
 
-#define CONFIG_SPL_STACK		(0x40000000 + ((192 - 16) << 10))
-
 /* SPL related SPI defines */
 
 /* Enable DDR support in SPL (DDR3 training from Marvell bin_hdr) */
diff --git a/include/configs/microblaze-generic.h b/include/configs/microblaze-generic.h
index 37bd47854922..e9c9bf9281ce 100644
--- a/include/configs/microblaze-generic.h
+++ b/include/configs/microblaze-generic.h
@@ -128,9 +128,6 @@
 /* BRAM size - will be generated */
 #define CONFIG_SYS_INIT_RAM_SIZE	0x100000
 
-# define CONFIG_SPL_STACK_ADDR		(CONFIG_SYS_INIT_RAM_ADDR + \
-					 CONFIG_SYS_INIT_RAM_SIZE)
-
 /* Just for sure that there is a space for stack */
 #define CONFIG_SPL_STACK_SIZE		0x100
 
diff --git a/include/configs/mt7629.h b/include/configs/mt7629.h
index 64263ce2e637..246836a077b9 100644
--- a/include/configs/mt7629.h
+++ b/include/configs/mt7629.h
@@ -20,7 +20,6 @@
 /* Environment */
 
 /* Defines for SPL */
-#define CONFIG_SPL_STACK		0x106000
 
 #define CONFIG_SPI_ADDR			0x30000000
 #define CONFIG_SYS_UBOOT_BASE		(CONFIG_SPI_ADDR + CONFIG_SPL_PAD_TO)
diff --git a/include/configs/omapl138_lcdk.h b/include/configs/omapl138_lcdk.h
index dbb87b9642e2..6fefb1eab900 100644
--- a/include/configs/omapl138_lcdk.h
+++ b/include/configs/omapl138_lcdk.h
@@ -174,7 +174,6 @@
 #define CONFIG_SYS_SPL_MALLOC_START	(CONFIG_SYS_TEXT_BASE - \
 						CONFIG_SYS_MALLOC_LEN)
 #define CONFIG_SYS_SPL_MALLOC_SIZE	CONFIG_SYS_MALLOC_LEN
-#define CONFIG_SPL_STACK	0x8001ff00
 
 /* additions for new relocation code, must added to all boards */
 #define CONFIG_SYS_SDRAM_BASE		0xc0000000
diff --git a/include/configs/openpiton-riscv64.h b/include/configs/openpiton-riscv64.h
index 006ec360ab34..e194fbaeecf7 100644
--- a/include/configs/openpiton-riscv64.h
+++ b/include/configs/openpiton-riscv64.h
@@ -22,8 +22,6 @@
 #define CONFIG_SYS_SPL_MALLOC_START (CONFIG_SPL_BSS_START_ADDR + \
 		CONFIG_SPL_BSS_MAX_SIZE)
 #define CONFIG_SYS_SPL_MALLOC_SIZE  0x0100000
-#define CONFIG_SPL_STACK    (0x80000000 + 0x04000000 - \
-		GENERATED_GBL_DATA_SIZE)
 
 #define CONFIG_SPL_GD_ADDR 0x85000000
 #endif
diff --git a/include/configs/phycore_imx8mm.h b/include/configs/phycore_imx8mm.h
index 0366933cea26..284891414e22 100644
--- a/include/configs/phycore_imx8mm.h
+++ b/include/configs/phycore_imx8mm.h
@@ -17,7 +17,6 @@
 		(QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512)
 
 #ifdef CONFIG_SPL_BUILD
-#define CONFIG_SPL_STACK		0x920000
 #define CONFIG_SPL_BSS_START_ADDR	0x910000
 #define CONFIG_SYS_SPL_MALLOC_START	0x42200000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_512K
diff --git a/include/configs/phycore_imx8mp.h b/include/configs/phycore_imx8mp.h
index 8434156998aa..99aecdad4ef6 100644
--- a/include/configs/phycore_imx8mp.h
+++ b/include/configs/phycore_imx8mp.h
@@ -17,7 +17,6 @@
 		(QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512)
 
 #ifdef CONFIG_SPL_BUILD
-#define CONFIG_SPL_STACK		0x960000
 #define CONFIG_SPL_BSS_START_ADDR	0x98FC00
 #define CONFIG_SYS_SPL_MALLOC_START	0x42200000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_512K
diff --git a/include/configs/pico-imx8mq.h b/include/configs/pico-imx8mq.h
index c8dab24f90a2..10e3e23e8dc8 100644
--- a/include/configs/pico-imx8mq.h
+++ b/include/configs/pico-imx8mq.h
@@ -13,7 +13,6 @@
 
 #ifdef CONFIG_SPL_BUILD
 /*#define CONFIG_ENABLE_DDR_TRAINING_DEBUG*/
-#define CONFIG_SPL_STACK		0x187FF0
 #define CONFIG_SPL_BSS_START_ADDR	0x00180000
 #define CONFIG_SYS_SPL_MALLOC_START	0x42200000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	0x80000	/* 512 KB */
diff --git a/include/configs/pm9g45.h b/include/configs/pm9g45.h
index 56d2459b9786..6f49568484d9 100644
--- a/include/configs/pm9g45.h
+++ b/include/configs/pm9g45.h
@@ -43,7 +43,6 @@
 #endif
 
 /* Defines for SPL */
-#define CONFIG_SPL_STACK		0x310000
 
 #define CONFIG_SYS_MONITOR_LEN		0x80000
 
diff --git a/include/configs/porter.h b/include/configs/porter.h
index d8c4ea105759..88fa65e0ffc1 100644
--- a/include/configs/porter.h
+++ b/include/configs/porter.h
@@ -38,6 +38,5 @@
 	"bootm_size=0x10000000\0"
 
 /* SPL support */
-#define CONFIG_SPL_STACK		0xe6340000
 
 #endif /* __PORTER_H */
diff --git a/include/configs/px30_common.h b/include/configs/px30_common.h
index 7b36cd765ea4..1cf239f8a634 100644
--- a/include/configs/px30_common.h
+++ b/include/configs/px30_common.h
@@ -13,7 +13,6 @@
 /* FIXME: ff020000 is pmu_mem (10k), while ff0e0000 is regular int_mem */
 #define CONFIG_IRAM_BASE		0xff020000
 
-#define CONFIG_SPL_STACK		0x00400000
 #define CONFIG_SPL_BSS_START_ADDR	0x4000000
 #define CONFIG_SYS_BOOTM_LEN		(64 << 20)	/* 64M */
 
diff --git a/include/configs/rcar-gen3-common.h b/include/configs/rcar-gen3-common.h
index 8b4c5c0f105e..6cda69159b45 100644
--- a/include/configs/rcar-gen3-common.h
+++ b/include/configs/rcar-gen3-common.h
@@ -49,6 +49,5 @@
 #else
 #define CONFIG_SPL_BSS_START_ADDR	0xe631f000
 #endif
-#define CONFIG_SPL_STACK		0xe6304000
 
 #endif	/* __RCAR_GEN3_COMMON_H */
diff --git a/include/configs/rk3036_common.h b/include/configs/rk3036_common.h
index 0eded1838c2a..2f3260e449c1 100644
--- a/include/configs/rk3036_common.h
+++ b/include/configs/rk3036_common.h
@@ -10,8 +10,6 @@
 
 #define CONFIG_SYS_HZ_CLOCK		24000000
 
-#define CONFIG_SPL_STACK		0x10081fff
-
 #define CONFIG_ROCKCHIP_MAX_INIT_SIZE	(4 << 10)
 #define CONFIG_ROCKCHIP_CHIP_TAG	"RK30"
 
diff --git a/include/configs/rk3066_common.h b/include/configs/rk3066_common.h
index dd33d30e9e54..41e0d18f88c6 100644
--- a/include/configs/rk3066_common.h
+++ b/include/configs/rk3066_common.h
@@ -11,8 +11,6 @@
 
 #define CONFIG_IRAM_BASE		0x10080000
 
-#define CONFIG_SPL_STACK		0x1008FFFF
-
 #define CONFIG_SYS_SDRAM_BASE		0x60000000
 #define SDRAM_BANK_SIZE			(1024UL << 20UL)
 #define SDRAM_MAX_SIZE			CONFIG_NR_DRAM_BANKS * SDRAM_BANK_SIZE
diff --git a/include/configs/rk3188_common.h b/include/configs/rk3188_common.h
index 466b0e748597..c1d66845412f 100644
--- a/include/configs/rk3188_common.h
+++ b/include/configs/rk3188_common.h
@@ -15,8 +15,6 @@
 
 /* spl size 32kb sram - 2kb bootrom */
 
-#define CONFIG_SPL_STACK		0x10087fff
-
 #define CONFIG_SYS_SDRAM_BASE		0x60000000
 #define SDRAM_BANK_SIZE			(2UL << 30)
 #define SDRAM_MAX_SIZE			0x80000000
diff --git a/include/configs/rk3288_common.h b/include/configs/rk3288_common.h
index abeb6535ce35..844c154217bd 100644
--- a/include/configs/rk3288_common.h
+++ b/include/configs/rk3288_common.h
@@ -13,8 +13,6 @@
 
 #define CONFIG_SYS_HZ_CLOCK		24000000
 
-#define CONFIG_SPL_STACK		0xff718000
-
 #define CONFIG_IRAM_BASE		0xff700000
 
 /* RAW SD card / eMMC locations. */
diff --git a/include/configs/rk3308_common.h b/include/configs/rk3308_common.h
index 2433ea836529..2b0b367df785 100644
--- a/include/configs/rk3308_common.h
+++ b/include/configs/rk3308_common.h
@@ -13,7 +13,6 @@
 #define CONFIG_SYS_NS16550_MEM32
 
 #define CONFIG_IRAM_BASE		0xfff80000
-#define CONFIG_SPL_STACK		0x00400000
 #define CONFIG_SYS_BOOTM_LEN		(64 << 20)	/* 64M */
 
 
diff --git a/include/configs/rk3328_common.h b/include/configs/rk3328_common.h
index 5141c48de787..25e2c6590014 100644
--- a/include/configs/rk3328_common.h
+++ b/include/configs/rk3328_common.h
@@ -10,7 +10,6 @@
 
 #define CONFIG_IRAM_BASE		0xff090000
 
-#define CONFIG_SPL_STACK		0x00400000
 #define CONFIG_SPL_BSS_START_ADDR	0x2000000
 
 #define CONFIG_SYS_BOOTM_LEN	(64 << 20)	/* 64M */
diff --git a/include/configs/rk3368_common.h b/include/configs/rk3368_common.h
index 77817a7e73c2..1bdc8cf187b0 100644
--- a/include/configs/rk3368_common.h
+++ b/include/configs/rk3368_common.h
@@ -17,7 +17,6 @@
 #define CONFIG_IRAM_BASE		0xff8c0000
 
 #define CONFIG_SPL_BSS_START_ADDR       0x400000
-#define CONFIG_SPL_STACK                0x00188000
 
 #define CONFIG_SYS_BOOTM_LEN	(64 << 20)	/* 64M */
 
diff --git a/include/configs/rk3399_common.h b/include/configs/rk3399_common.h
index 4582d34af859..112b8639ad75 100644
--- a/include/configs/rk3399_common.h
+++ b/include/configs/rk3399_common.h
@@ -11,10 +11,8 @@
 #define CONFIG_IRAM_BASE		0xff8c0000
 
 #if defined(CONFIG_SPL_BUILD) && defined(CONFIG_TPL_BOOTROM_SUPPORT)
-#define CONFIG_SPL_STACK		0x00400000
 #define CONFIG_SPL_BSS_START_ADDR	0x00400000
 #else
-#define CONFIG_SPL_STACK		0xff8effff
 /*  BSS setup */
 #define CONFIG_SPL_BSS_START_ADDR       0xff8e0000
 #endif
diff --git a/include/configs/rk3568_common.h b/include/configs/rk3568_common.h
index 2e726b00c96a..c0721aa1afb9 100644
--- a/include/configs/rk3568_common.h
+++ b/include/configs/rk3568_common.h
@@ -10,7 +10,6 @@
 
 #define CONFIG_IRAM_BASE		0xfdcc0000
 
-#define CONFIG_SPL_STACK		0x00400000
 #define CONFIG_SPL_BSS_START_ADDR	0x4000000
 
 #define CONFIG_SYS_BOOTM_LEN		(64 << 20)	/* 64M */
diff --git a/include/configs/sam9x60_curiosity.h b/include/configs/sam9x60_curiosity.h
index 896697bf4152..afb1e3d0f105 100644
--- a/include/configs/sam9x60_curiosity.h
+++ b/include/configs/sam9x60_curiosity.h
@@ -20,6 +20,4 @@
 #define CONFIG_SYS_SDRAM_BASE		0x20000000
 #define CONFIG_SYS_SDRAM_SIZE		0x8000000	/* 128 MB */
 
-#define CONFIG_SPL_STACK         0x218000
-
 #endif
diff --git a/include/configs/sama5d27_som1_ek.h b/include/configs/sama5d27_som1_ek.h
index 2bb71e4f42f4..dd5f8d8c8018 100644
--- a/include/configs/sama5d27_som1_ek.h
+++ b/include/configs/sama5d27_som1_ek.h
@@ -15,7 +15,6 @@
 #define CONFIG_SYS_AT91_MAIN_CLOCK      24000000 /* from 24 MHz crystal */
 
 /* SPL */
-#define CONFIG_SPL_STACK		0x218000
 #define CONFIG_SPL_BSS_START_ADDR	0x20000000
 #define CONFIG_SYS_SPL_MALLOC_START	0x20080000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	0x80000
diff --git a/include/configs/sama5d27_wlsom1_ek.h b/include/configs/sama5d27_wlsom1_ek.h
index 86f7c2bade82..728dc9fb98b6 100644
--- a/include/configs/sama5d27_wlsom1_ek.h
+++ b/include/configs/sama5d27_wlsom1_ek.h
@@ -20,7 +20,6 @@
 #define CONFIG_SYS_SDRAM_SIZE		0x10000000
 
 /* SPL */
-#define CONFIG_SPL_STACK		0x218000
 #define CONFIG_SPL_BSS_START_ADDR	0x20000000
 #define CONFIG_SYS_SPL_MALLOC_START	0x20080000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	0x80000
diff --git a/include/configs/sama5d2_icp.h b/include/configs/sama5d2_icp.h
index f7f746e9b3e3..0645c21b6185 100644
--- a/include/configs/sama5d2_icp.h
+++ b/include/configs/sama5d2_icp.h
@@ -18,8 +18,6 @@
 #define CONFIG_SYS_SDRAM_BASE		0x20000000
 #define CONFIG_SYS_SDRAM_SIZE		0x20000000
 
-#define CONFIG_SPL_STACK		0x218000
-
 #ifdef CONFIG_SD_BOOT
 /* u-boot env in sd/mmc card */
 #define FAT_ENV_INTERFACE	"mmc"
diff --git a/include/configs/sama5d2_xplained.h b/include/configs/sama5d2_xplained.h
index b7cc8d05ce59..8481b0262c4a 100644
--- a/include/configs/sama5d2_xplained.h
+++ b/include/configs/sama5d2_xplained.h
@@ -12,7 +12,6 @@
 #include "at91-sama5_common.h"
 
 /* SPL */
-#define CONFIG_SPL_STACK		0x218000
 #define CONFIG_SPL_BSS_START_ADDR	0x20000000
 #define CONFIG_SYS_SPL_MALLOC_START	0x20080000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	0x80000
diff --git a/include/configs/sama5d3_xplained.h b/include/configs/sama5d3_xplained.h
index 384e8d6e613b..23ffab226b1a 100644
--- a/include/configs/sama5d3_xplained.h
+++ b/include/configs/sama5d3_xplained.h
@@ -27,8 +27,6 @@
 #define CONFIG_SYS_SDRAM_BASE           0x20000000
 #define CONFIG_SYS_SDRAM_SIZE		0x10000000
 
-#define CONFIG_SPL_STACK		0x318000
-
 /* NAND flash */
 #ifdef CONFIG_CMD_NAND
 #define CONFIG_SYS_MAX_NAND_DEVICE	1
diff --git a/include/configs/sama5d3xek.h b/include/configs/sama5d3xek.h
index 161914294c87..e293002f39d2 100644
--- a/include/configs/sama5d3xek.h
+++ b/include/configs/sama5d3xek.h
@@ -38,8 +38,6 @@
 #define CONFIG_SYS_SDRAM_BASE           0x20000000
 #define CONFIG_SYS_SDRAM_SIZE		0x20000000
 
-#define CONFIG_SPL_STACK		0x318000
-
 /* SerialFlash */
 
 /* NAND flash */
diff --git a/include/configs/sama5d4_xplained.h b/include/configs/sama5d4_xplained.h
index 6328450b995f..825925c114ab 100644
--- a/include/configs/sama5d4_xplained.h
+++ b/include/configs/sama5d4_xplained.h
@@ -15,8 +15,6 @@
 #define CONFIG_SYS_SDRAM_BASE           0x20000000
 #define CONFIG_SYS_SDRAM_SIZE		0x20000000
 
-#define CONFIG_SPL_STACK		0x218000
-
 /* NAND flash */
 #ifdef CONFIG_CMD_NAND
 #define CONFIG_SYS_MAX_NAND_DEVICE	1
diff --git a/include/configs/sama5d4ek.h b/include/configs/sama5d4ek.h
index a00d2851bd03..d2466da6fcd8 100644
--- a/include/configs/sama5d4ek.h
+++ b/include/configs/sama5d4ek.h
@@ -15,8 +15,6 @@
 #define CONFIG_SYS_SDRAM_BASE           0x20000000
 #define CONFIG_SYS_SDRAM_SIZE		0x20000000
 
-#define CONFIG_SPL_STACK		0x218000
-
 /* NAND flash */
 #ifdef CONFIG_CMD_NAND
 #define CONFIG_SYS_MAX_NAND_DEVICE	1
diff --git a/include/configs/sama7g5ek.h b/include/configs/sama7g5ek.h
index 97bac63ddde1..78347373fca9 100644
--- a/include/configs/sama7g5ek.h
+++ b/include/configs/sama7g5ek.h
@@ -16,6 +16,4 @@
 #define CONFIG_SYS_SDRAM_BASE		0x60000000
 #define CONFIG_SYS_SDRAM_SIZE		0x20000000
 
-#define CONFIG_SPL_STACK		0x218000
-
 #endif
diff --git a/include/configs/sifive-unleashed.h b/include/configs/sifive-unleashed.h
index 31787310c343..58d70922e4e7 100644
--- a/include/configs/sifive-unleashed.h
+++ b/include/configs/sifive-unleashed.h
@@ -18,9 +18,6 @@
 					 CONFIG_SPL_BSS_MAX_SIZE)
 #define CONFIG_SYS_SPL_MALLOC_SIZE	0x00100000
 
-#define CONFIG_SPL_STACK	(0x08000000 + 0x001D0000 - \
-				 GENERATED_GBL_DATA_SIZE)
-
 #endif
 
 #define CONFIG_SYS_SDRAM_BASE		0x80000000
diff --git a/include/configs/sifive-unmatched.h b/include/configs/sifive-unmatched.h
index 54b41494f6f1..a88debddca2f 100644
--- a/include/configs/sifive-unmatched.h
+++ b/include/configs/sifive-unmatched.h
@@ -18,9 +18,6 @@
 					 CONFIG_SPL_BSS_MAX_SIZE)
 #define CONFIG_SYS_SPL_MALLOC_SIZE	0x00100000
 
-#define CONFIG_SPL_STACK	(0x08000000 + 0x001D0000 - \
-				 GENERATED_GBL_DATA_SIZE)
-
 #endif
 
 #define CONFIG_SYS_SDRAM_BASE		0x80000000
diff --git a/include/configs/silk.h b/include/configs/silk.h
index a300ae86fc9a..58613effaf47 100644
--- a/include/configs/silk.h
+++ b/include/configs/silk.h
@@ -38,6 +38,5 @@
 	"bootm_size=0x10000000\0"
 
 /* SPL support */
-#define CONFIG_SPL_STACK		0xe6340000
 
 #endif /* __SILK_H */
diff --git a/include/configs/smartweb.h b/include/configs/smartweb.h
index 533129f311b0..d84a2c262efa 100644
--- a/include/configs/smartweb.h
+++ b/include/configs/smartweb.h
@@ -114,7 +114,6 @@
 
 /* Defines for SPL */
 
-#define CONFIG_SPL_STACK		0x301000
 #define CONFIG_SPL_BSS_START_ADDR	CONFIG_SYS_SDRAM_BASE
 #define CONFIG_SYS_SPL_MALLOC_START     (CONFIG_SPL_BSS_START_ADDR + \
 					CONFIG_SPL_BSS_MAX_SIZE)
diff --git a/include/configs/sniper.h b/include/configs/sniper.h
index 01697a5c82a1..923da0ef99f9 100644
--- a/include/configs/sniper.h
+++ b/include/configs/sniper.h
@@ -51,7 +51,6 @@
 #define CONFIG_SPL_BSS_START_ADDR	0x80000000
 #define CONFIG_SYS_SPL_MALLOC_START	0x80208000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	(1024 * 1024)
-#define CONFIG_SPL_STACK		LOW_LEVEL_SRAM_STACK
 
 /*
  * Serial
diff --git a/include/configs/socfpga_common.h b/include/configs/socfpga_common.h
index bdcb872cd064..441e3545aa4d 100644
--- a/include/configs/socfpga_common.h
+++ b/include/configs/socfpga_common.h
@@ -35,10 +35,6 @@
 #if ((CONFIG_SYS_BOOTCOUNT_ADDR > CONFIG_SYS_INIT_RAM_ADDR) &&	\
      (CONFIG_SYS_BOOTCOUNT_ADDR < (CONFIG_SYS_INIT_RAM_ADDR +	\
 				   CONFIG_SYS_INIT_RAM_SIZE)))
-#define CONFIG_SPL_STACK		CONFIG_SYS_BOOTCOUNT_ADDR
-#else
-#define CONFIG_SPL_STACK			\
-	(CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_RAM_SIZE)
 #endif
 
 /*
diff --git a/include/configs/socfpga_soc64_common.h b/include/configs/socfpga_soc64_common.h
index c4ba1d14f931..b73ce9176097 100644
--- a/include/configs/socfpga_soc64_common.h
+++ b/include/configs/socfpga_soc64_common.h
@@ -144,9 +144,6 @@ unsigned int cm_get_l4_sys_free_clk_hz(void);
  *
  */
 #define CONFIG_SPL_TARGET		"spl/u-boot-spl-dtb.hex"
-#define CONFIG_SPL_STACK		(CONFIG_SYS_INIT_RAM_ADDR  \
-					+ CONFIG_SYS_INIT_RAM_SIZE \
-					- SOC64_HANDOFF_SIZE)
 #define CONFIG_SPL_BSS_START_ADDR	(PHYS_SDRAM_1 + PHYS_SDRAM_1_SIZE \
 					- CONFIG_SPL_BSS_MAX_SIZE)
 #define CONFIG_SYS_SPL_MALLOC_SIZE	(CONFIG_SYS_MALLOC_LEN)
diff --git a/include/configs/stm32mp15_common.h b/include/configs/stm32mp15_common.h
index ead3b91e67a2..588d4c1f31f1 100644
--- a/include/configs/stm32mp15_common.h
+++ b/include/configs/stm32mp15_common.h
@@ -36,8 +36,6 @@
 
 /* Restrict SPL to fit within SYSRAM */
 #define STM32_SYSRAM_END		(STM32_SYSRAM_BASE + STM32_SYSRAM_SIZE)
-#define CONFIG_SPL_STACK		(STM32_SYSRAM_BASE + \
-					 STM32_SYSRAM_SIZE)
 #endif /* #ifdef CONFIG_SPL */
 /*MMC SD*/
 #define CONFIG_SYS_MMC_MAX_DEVICE	3
diff --git a/include/configs/stout.h b/include/configs/stout.h
index 4f7fc23dd2d8..f49e88cb17cb 100644
--- a/include/configs/stout.h
+++ b/include/configs/stout.h
@@ -42,6 +42,5 @@
 	"bootm_size=0x10000000\0"
 
 /* SPL support */
-#define CONFIG_SPL_STACK		0xe6340000
 
 #endif	/* __STOUT_H */
diff --git a/include/configs/sunxi-common.h b/include/configs/sunxi-common.h
index 35a2a41d2281..3431366bcda3 100644
--- a/include/configs/sunxi-common.h
+++ b/include/configs/sunxi-common.h
@@ -125,8 +125,6 @@
 #define LOW_LEVEL_SRAM_STACK		0x00008000	/* End of sram */
 #endif
 
-#define CONFIG_SPL_STACK		LOW_LEVEL_SRAM_STACK
-
 /* Ethernet support */
 
 #ifdef CONFIG_USB_EHCI_HCD
diff --git a/include/configs/taurus.h b/include/configs/taurus.h
index 238074bff4c9..d7dba72db4c2 100644
--- a/include/configs/taurus.h
+++ b/include/configs/taurus.h
@@ -142,7 +142,6 @@
 #endif /* #ifndef CONFIG_SPL_BUILD */
 
 /* Defines for SPL */
-#define	CONFIG_SPL_STACK		(ATMEL_BASE_SRAM1 + SZ_16K)
 #define CONFIG_SYS_SPL_MALLOC_START     (CONFIG_SYS_TEXT_BASE - \
 					CONFIG_SYS_MALLOC_LEN)
 #define CONFIG_SYS_SPL_MALLOC_SIZE      CONFIG_SYS_MALLOC_LEN
diff --git a/include/configs/tegra114-common.h b/include/configs/tegra114-common.h
index 09737211803b..fae00e88fe59 100644
--- a/include/configs/tegra114-common.h
+++ b/include/configs/tegra114-common.h
@@ -55,7 +55,6 @@
 
 /* Defines for SPL */
 #define CONFIG_SYS_SPL_MALLOC_START	0x80090000
-#define CONFIG_SPL_STACK		0x800ffffc
 
 /* For USB EHCI controller */
 #define CONFIG_USB_EHCI_TXFIFO_THRESH	0x10
diff --git a/include/configs/tegra124-common.h b/include/configs/tegra124-common.h
index df688dabd1ab..05f6bf0b471b 100644
--- a/include/configs/tegra124-common.h
+++ b/include/configs/tegra124-common.h
@@ -57,7 +57,6 @@
 
 /* Defines for SPL */
 #define CONFIG_SYS_SPL_MALLOC_START	0x80090000
-#define CONFIG_SPL_STACK		0x800ffffc
 
 /* For USB EHCI controller */
 #define CONFIG_USB_EHCI_TXFIFO_THRESH	0x10
diff --git a/include/configs/tegra20-common.h b/include/configs/tegra20-common.h
index fac869272857..97c1f5a2453d 100644
--- a/include/configs/tegra20-common.h
+++ b/include/configs/tegra20-common.h
@@ -56,7 +56,6 @@
 
 /* Defines for SPL */
 #define CONFIG_SYS_SPL_MALLOC_START	0x00090000
-#define CONFIG_SPL_STACK		0x000ffffc
 
 /* Align LCD to 1MB boundary */
 #define CONFIG_LCD_ALIGNMENT	MMU_SECTION_SIZE
diff --git a/include/configs/tegra30-common.h b/include/configs/tegra30-common.h
index b878b1a9e699..7107c06b9a7f 100644
--- a/include/configs/tegra30-common.h
+++ b/include/configs/tegra30-common.h
@@ -52,7 +52,6 @@
 
 /* Defines for SPL */
 #define CONFIG_SYS_SPL_MALLOC_START	0x80090000
-#define CONFIG_SPL_STACK		0x800ffffc
 
 /* For USB EHCI controller */
 #define CONFIG_USB_EHCI_TXFIFO_THRESH	0x10
diff --git a/include/configs/theadorable.h b/include/configs/theadorable.h
index 626261d0742f..e5e21ef3bbc9 100644
--- a/include/configs/theadorable.h
+++ b/include/configs/theadorable.h
@@ -76,8 +76,6 @@
 
 #define CONFIG_SPL_BSS_START_ADDR	(0x40000000 + (128 << 10))
 
-#define CONFIG_SPL_STACK		(0x40000000 + ((192 - 16) << 10))
-
 /* Enable DDR support in SPL (DDR3 training from Marvell bin_hdr) */
 #define CONFIG_SYS_SDRAM_SIZE		SZ_2G
 
diff --git a/include/configs/ti_armv7_keystone2.h b/include/configs/ti_armv7_keystone2.h
index b804bf3a716b..1cc593fdea29 100644
--- a/include/configs/ti_armv7_keystone2.h
+++ b/include/configs/ti_armv7_keystone2.h
@@ -31,10 +31,6 @@
 					CONFIG_SPL_BSS_MAX_SIZE)
 #define CONFIG_SYS_SPL_MALLOC_SIZE	(32 * 1024)
 #define KEYSTONE_SPL_STACK_SIZE		(8 * 1024)
-#define CONFIG_SPL_STACK		(CONFIG_SYS_SPL_MALLOC_START + \
-					CONFIG_SYS_SPL_MALLOC_SIZE + \
-					SPL_MALLOC_F_SIZE + \
-					KEYSTONE_SPL_STACK_SIZE - 4)
 
 /* SRAM scratch space entries  */
 #define SRAM_SCRATCH_SPACE_ADDR		0xc0c23fc
diff --git a/include/configs/turris_omnia.h b/include/configs/turris_omnia.h
index 089828fa3d18..4dc27a31a4e5 100644
--- a/include/configs/turris_omnia.h
+++ b/include/configs/turris_omnia.h
@@ -31,8 +31,6 @@
 
 #define CONFIG_SPL_BSS_START_ADDR	(0x40000000 + CONFIG_SPL_SIZE)
 
-#define CONFIG_SPL_STACK		(0x40000000 + ((192 - 16) << 10))
-
 #ifdef CONFIG_MVEBU_SPL_BOOT_DEVICE_MMC
 /* SPL related MMC defines */
 # ifdef CONFIG_SPL_BUILD
diff --git a/include/configs/uniphier.h b/include/configs/uniphier.h
index f5e096f38da5..6493569888d2 100644
--- a/include/configs/uniphier.h
+++ b/include/configs/uniphier.h
@@ -174,7 +174,6 @@
 #define CONFIG_SYS_BOOTMAPSZ			0x20000000
 
 /* only for SPL */
-#define CONFIG_SPL_STACK		(0x00100000)
 
 /* subtract sizeof(struct image_header) */
 #define CONFIG_SYS_UBOOT_BASE			(0x130000 - 0x40)
diff --git a/include/configs/verdin-imx8mm.h b/include/configs/verdin-imx8mm.h
index ef7ef022ce19..de796917820f 100644
--- a/include/configs/verdin-imx8mm.h
+++ b/include/configs/verdin-imx8mm.h
@@ -16,7 +16,6 @@
 #define CONFIG_SYS_BOOTM_LEN           SZ_64M
 
 #ifdef CONFIG_SPL_BUILD
-#define CONFIG_SPL_STACK		0x920000
 #define CONFIG_SPL_BSS_START_ADDR	0x910000
 #define CONFIG_SYS_SPL_MALLOC_START	0x42200000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_512K	/* 512 KB */
diff --git a/include/configs/verdin-imx8mp.h b/include/configs/verdin-imx8mp.h
index daff4ccadfc6..e6eb986466cb 100644
--- a/include/configs/verdin-imx8mp.h
+++ b/include/configs/verdin-imx8mp.h
@@ -15,7 +15,6 @@
 
 #ifdef CONFIG_SPL_BUILD
 /*#define CONFIG_ENABLE_DDR_TRAINING_DEBUG*/
-#define CONFIG_SPL_STACK		0x960000
 #define CONFIG_SPL_BSS_START_ADDR	0x0098fc00
 #define CONFIG_SYS_SPL_MALLOC_START	0x42200000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_512K
diff --git a/include/configs/work_92105.h b/include/configs/work_92105.h
index 4df58c77bebb..8d1eee2fcac8 100644
--- a/include/configs/work_92105.h
+++ b/include/configs/work_92105.h
@@ -60,7 +60,6 @@
 
 /* SPL will be executed at offset 0 */
 /* SPL will use SRAM as stack */
-#define CONFIG_SPL_STACK     0x0000FFF8
 /* Use the framework and generic lib */
 /* SPL will use serial */
 /* SPL will load U-Boot from NAND offset 0x40000 */
diff --git a/include/configs/x530.h b/include/configs/x530.h
index 601a7ee7d4f2..8b690cd9bf40 100644
--- a/include/configs/x530.h
+++ b/include/configs/x530.h
@@ -71,6 +71,4 @@
 
 #define CONFIG_SPL_BSS_START_ADDR	(0x40000000 + CONFIG_SPL_SIZE)
 
-#define CONFIG_SPL_STACK		(0x40000000 + ((192 - 16) << 10))
-
 #endif /* _CONFIG_X530_H */
diff --git a/include/configs/xea.h b/include/configs/xea.h
index 01942eaf2ba5..07419f0afbbc 100644
--- a/include/configs/xea.h
+++ b/include/configs/xea.h
@@ -15,7 +15,6 @@
 #include <linux/sizes.h>
 
 /* SPL */
-#define CONFIG_SPL_STACK		0x20000
 
 #define CONFIG_SYS_SPL_ARGS_ADDR	0x44000000
 
diff --git a/include/configs/xilinx_zynqmp.h b/include/configs/xilinx_zynqmp.h
index 725f3d29034f..9645f9cacbb4 100644
--- a/include/configs/xilinx_zynqmp.h
+++ b/include/configs/xilinx_zynqmp.h
@@ -199,8 +199,6 @@
 	"dfu_bufsiz=0x1000\0"
 #endif
 
-#define CONFIG_SPL_STACK		0xfffffffc
-
 /* Just random location in OCM */
 #define CONFIG_SPL_BSS_START_ADDR	0x0
 
diff --git a/include/configs/zynq-common.h b/include/configs/zynq-common.h
index 440e80c38034..a0e276bcc417 100644
--- a/include/configs/zynq-common.h
+++ b/include/configs/zynq-common.h
@@ -237,7 +237,6 @@
  * 0xfffffe00 is used for putting wfi loop.
  * Set it up as limit for now.
  */
-#define CONFIG_SPL_STACK	0xfffffe00
 
 /* BSS setup */
 #define CONFIG_SPL_BSS_START_ADDR	0x100000
-- 
2.25.1


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH 02/20] imx6: Update CONFIG_SPL_STACK defaults in Kconfig
  2022-05-29 16:55 [PATCH 01/20] Convert CONFIG_SPL_STACK to Kconfig Tom Rini
@ 2022-05-29 16:55 ` Tom Rini
  2022-05-29 16:55 ` [PATCH 03/20] imx7: " Tom Rini
                   ` (19 subsequent siblings)
  20 siblings, 0 replies; 27+ messages in thread
From: Tom Rini @ 2022-05-29 16:55 UTC (permalink / raw)
  To: u-boot

Update the Kconfig entry to have the correct defaults for i.MX6
platforms, and move the existing large comment from imx6_spl.h to
doc/imx/common/imx6.txt so that it's not lost.

Signed-off-by: Tom Rini <trini@konsulko.com>
---
 common/spl/Kconfig                   |  4 ++-
 configs/apalis_imx6_defconfig        |  2 --
 configs/brppt2_defconfig             |  2 --
 configs/cm_fx6_defconfig             |  2 --
 configs/colibri_imx6_defconfig       |  2 --
 configs/dh_imx6_defconfig            |  2 --
 configs/display5_defconfig           |  2 --
 configs/display5_factory_defconfig   |  2 --
 configs/ge_b1x5v2_defconfig          |  2 --
 configs/gwventana_emmc_defconfig     |  2 --
 configs/gwventana_gw5904_defconfig   |  2 --
 configs/gwventana_nand_defconfig     |  2 --
 configs/imx6dl_icore_nand_defconfig  |  2 --
 configs/imx6dl_mamoj_defconfig       |  2 --
 configs/imx6q_bosch_acc_defconfig    |  2 --
 configs/imx6q_icore_nand_defconfig   |  2 --
 configs/imx6q_logic_defconfig        |  2 --
 configs/imx6qdl_icore_mipi_defconfig |  2 --
 configs/imx6qdl_icore_mmc_defconfig  |  2 --
 configs/imx6qdl_icore_nand_defconfig |  2 --
 configs/imx6qdl_icore_rqs_defconfig  |  2 --
 configs/imx6ul_geam_mmc_defconfig    |  2 --
 configs/imx6ul_geam_nand_defconfig   |  2 --
 configs/imx6ul_isiot_emmc_defconfig  |  2 --
 configs/imx6ul_isiot_nand_defconfig  |  2 --
 configs/kontron-sl-mx6ul_defconfig   |  2 --
 configs/kp_imx6q_tpc_defconfig       |  2 --
 configs/liteboard_defconfig          |  2 --
 configs/mccmon6_nor_defconfig        |  2 --
 configs/mccmon6_sd_defconfig         |  2 --
 configs/mx6cuboxi_defconfig          |  2 --
 configs/mx6memcal_defconfig          |  2 --
 configs/mx6sabreauto_defconfig       |  2 --
 configs/mx6sabresd_defconfig         |  2 --
 configs/mx6slevk_spl_defconfig       |  2 --
 configs/mx6ul_14x14_evk_defconfig    |  2 --
 configs/mx6ul_9x9_evk_defconfig      |  2 --
 configs/myir_mys_6ulx_defconfig      |  2 --
 configs/novena_defconfig             |  2 --
 configs/opos6uldev_defconfig         |  2 --
 configs/pcm058_defconfig             |  2 --
 configs/phycore_pcl063_defconfig     |  2 --
 configs/phycore_pcl063_ull_defconfig |  2 --
 configs/pico-dwarf-imx6ul_defconfig  |  2 --
 configs/pico-hobbit-imx6ul_defconfig |  2 --
 configs/pico-imx6_defconfig          |  2 --
 configs/pico-imx6ul_defconfig        |  2 --
 configs/pico-pi-imx6ul_defconfig     |  2 --
 configs/riotboard_defconfig          |  2 --
 configs/seeed_npi_imx6ull_defconfig  |  2 --
 configs/udoo_defconfig               |  2 --
 configs/udoo_neo_defconfig           |  2 --
 configs/variscite_dart6ul_defconfig  |  2 --
 configs/vining_2000_defconfig        |  2 --
 configs/wandboard_defconfig          |  2 --
 doc/imx/common/imx6.txt              | 31 ++++++++++++++++++++++
 include/configs/imx6_spl.h           | 39 ----------------------------
 57 files changed, 34 insertions(+), 148 deletions(-)

diff --git a/common/spl/Kconfig b/common/spl/Kconfig
index 89288797513f..173c7e020240 100644
--- a/common/spl/Kconfig
+++ b/common/spl/Kconfig
@@ -360,7 +360,7 @@ config TPL_SYS_MALLOC_SIMPLE
 config SPL_SHARES_INIT_SP_ADDR
 	bool "SPL and U-Boot use the same initial stack pointer location"
 	depends on (ARM || ARCH_JZ47XX || MICROBLAZE || RISCV) && SPL_FRAMEWORK
-	default n if ARCH_SUNXI
+	default n if ARCH_SUNXI || ARCH_MX6
 	default y
 	help
 	  In many cases, we can use the same initial stack pointer address for
@@ -371,6 +371,8 @@ config SPL_STACK
 	hex "Initial stack pointer location"
 	depends on (ARM || ARCH_JZ47XX || MICROBLAZE || RISCV) && SPL_FRAMEWORK
 	depends on !SPL_SHARES_INIT_SP_ADDR
+	default 0x93ffb8 if ARCH_MX6 && MX6_OCRAM_256KB
+	default 0x91ffb8 if ARCH_MX6 && !MX6_OCRAM_256KB
 	help
 	  Address of the start of the stack SPL will use before SDRAM is
 	  initialized.
diff --git a/configs/apalis_imx6_defconfig b/configs/apalis_imx6_defconfig
index 96483af9442c..11ee2f3d34a9 100644
--- a/configs/apalis_imx6_defconfig
+++ b/configs/apalis_imx6_defconfig
@@ -36,8 +36,6 @@ CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
 CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_MISC_INIT_R=y
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_DMA=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_USB_HOST=y
diff --git a/configs/brppt2_defconfig b/configs/brppt2_defconfig
index af91188b69c4..b9f3587bdaaf 100644
--- a/configs/brppt2_defconfig
+++ b/configs/brppt2_defconfig
@@ -32,8 +32,6 @@ CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="run b_default"
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_SPL_BOARD_INIT=y
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x91ffb8
 # CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR is not set
 CONFIG_SPL_I2C=y
 CONFIG_SPL_DM_SPI_FLASH=y
diff --git a/configs/cm_fx6_defconfig b/configs/cm_fx6_defconfig
index d1f8c494ae4e..bb63d5f7756e 100644
--- a/configs/cm_fx6_defconfig
+++ b/configs/cm_fx6_defconfig
@@ -30,8 +30,6 @@ CONFIG_BOOTCOMMAND="run findfdt; run distro_bootcmd; run legacy_bootcmd"
 CONFIG_USE_PREBOOT=y
 CONFIG_PREBOOT="usb start;sf probe"
 CONFIG_MISC_INIT_R=y
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x80
 CONFIG_SPL_I2C=y
 CONFIG_SPL_SPI_LOAD=y
diff --git a/configs/colibri_imx6_defconfig b/configs/colibri_imx6_defconfig
index 9436f9f0a389..1873581e7555 100644
--- a/configs/colibri_imx6_defconfig
+++ b/configs/colibri_imx6_defconfig
@@ -35,8 +35,6 @@ CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
 CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_MISC_INIT_R=y
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_DMA=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_USB_HOST=y
diff --git a/configs/dh_imx6_defconfig b/configs/dh_imx6_defconfig
index 05b9eb8cbf3d..8c0b9b3d4565 100644
--- a/configs/dh_imx6_defconfig
+++ b/configs/dh_imx6_defconfig
@@ -35,8 +35,6 @@ CONFIG_SPL_FIT=y
 CONFIG_BOOTDELAY=3
 # CONFIG_USE_BOOTCOMMAND is not set
 CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x11400
 CONFIG_SYS_MAXARGS=32
diff --git a/configs/display5_defconfig b/configs/display5_defconfig
index b39b4de2c153..2b92ed95b4b7 100644
--- a/configs/display5_defconfig
+++ b/configs/display5_defconfig
@@ -37,8 +37,6 @@ CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="if run check_em_pad; then run recovery;else if test ${BOOT_FROM} = FACTORY; then run factory_nfs;else run boot_mmc;fi;fi"
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_BOOTCOUNT_LIMIT=y
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x91ffb8
 # CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR is not set
 CONFIG_SPL_DMA=y
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/display5_factory_defconfig b/configs/display5_factory_defconfig
index 163737cb5db2..9c3965c0a6f5 100644
--- a/configs/display5_factory_defconfig
+++ b/configs/display5_factory_defconfig
@@ -34,8 +34,6 @@ CONFIG_BOOTDELAY=3
 CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="echo SDP Display5 recovery"
 CONFIG_MISC_INIT_R=y
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x91ffb8
 # CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR is not set
 CONFIG_SPL_DMA=y
 CONFIG_SPL_I2C=y
diff --git a/configs/ge_b1x5v2_defconfig b/configs/ge_b1x5v2_defconfig
index 5966870df2d7..fd1f3e37de33 100644
--- a/configs/ge_b1x5v2_defconfig
+++ b/configs/ge_b1x5v2_defconfig
@@ -37,8 +37,6 @@ CONFIG_LOG_MAX_LEVEL=8
 CONFIG_LOG_DEFAULT_LEVEL=4
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_MISC_INIT_R=y
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x11400
 CONFIG_SPL_USB_HOST=y
diff --git a/configs/gwventana_emmc_defconfig b/configs/gwventana_emmc_defconfig
index ef4829c54780..f0e720463b67 100644
--- a/configs/gwventana_emmc_defconfig
+++ b/configs/gwventana_emmc_defconfig
@@ -40,8 +40,6 @@ CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_MISC_INIT_R=y
 CONFIG_PCI_INIT_R=y
 CONFIG_SPL_BOARD_INIT=y
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_FIT_IMAGE_TINY=y
 CONFIG_SPL_DMA=y
diff --git a/configs/gwventana_gw5904_defconfig b/configs/gwventana_gw5904_defconfig
index e070dc88b331..53d5bddd6197 100644
--- a/configs/gwventana_gw5904_defconfig
+++ b/configs/gwventana_gw5904_defconfig
@@ -40,8 +40,6 @@ CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_MISC_INIT_R=y
 CONFIG_PCI_INIT_R=y
 CONFIG_SPL_BOARD_INIT=y
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_FIT_IMAGE_TINY=y
 CONFIG_SPL_DMA=y
diff --git a/configs/gwventana_nand_defconfig b/configs/gwventana_nand_defconfig
index a279935c124e..e0225278582a 100644
--- a/configs/gwventana_nand_defconfig
+++ b/configs/gwventana_nand_defconfig
@@ -40,8 +40,6 @@ CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_MISC_INIT_R=y
 CONFIG_PCI_INIT_R=y
 CONFIG_SPL_BOARD_INIT=y
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_FIT_IMAGE_TINY=y
 CONFIG_SPL_DMA=y
diff --git a/configs/imx6dl_icore_nand_defconfig b/configs/imx6dl_icore_nand_defconfig
index 48e075345354..c98a5cc735a8 100644
--- a/configs/imx6dl_icore_nand_defconfig
+++ b/configs/imx6dl_icore_nand_defconfig
@@ -24,8 +24,6 @@ CONFIG_LEGACY_IMAGE_FORMAT=y
 CONFIG_BOOTDELAY=3
 CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="run $modeboot"
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_DMA=y
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_SPL_WATCHDOG=y
diff --git a/configs/imx6dl_mamoj_defconfig b/configs/imx6dl_mamoj_defconfig
index 0595dccaea7c..6f249dbe2fcd 100644
--- a/configs/imx6dl_mamoj_defconfig
+++ b/configs/imx6dl_mamoj_defconfig
@@ -17,8 +17,6 @@ CONFIG_SYS_MEMTEST_END=0x88000000
 CONFIG_LTO=y
 CONFIG_DISTRO_DEFAULTS=y
 CONFIG_BOOTDELAY=3
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_OS_BOOT=y
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1000
diff --git a/configs/imx6q_bosch_acc_defconfig b/configs/imx6q_bosch_acc_defconfig
index a052193cb760..4b75e5794e99 100644
--- a/configs/imx6q_bosch_acc_defconfig
+++ b/configs/imx6q_bosch_acc_defconfig
@@ -34,8 +34,6 @@ CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="run mmc_mmc_fit"
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_RAW_IMAGE_SUPPORT=y
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0xaa
 # CONFIG_SPL_CRC32 is not set
 # CONFIG_SPL_CRYPTO is not set
diff --git a/configs/imx6q_icore_nand_defconfig b/configs/imx6q_icore_nand_defconfig
index 340766919d65..278bc98cbc17 100644
--- a/configs/imx6q_icore_nand_defconfig
+++ b/configs/imx6q_icore_nand_defconfig
@@ -25,8 +25,6 @@ CONFIG_SUPPORT_RAW_INITRD=y
 CONFIG_BOOTDELAY=3
 CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="run $modeboot"
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_DMA=y
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_SPL_WATCHDOG=y
diff --git a/configs/imx6q_logic_defconfig b/configs/imx6q_logic_defconfig
index 2d8b83c9f1b4..c5ad6dcdd1f2 100644
--- a/configs/imx6q_logic_defconfig
+++ b/configs/imx6q_logic_defconfig
@@ -27,8 +27,6 @@ CONFIG_BOOTCOMMAND="run autoboot"
 CONFIG_SYS_CONSOLE_IS_IN_ENV=y
 CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
 CONFIG_SPL_RAW_IMAGE_SUPPORT=y
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x93ffb8
 # CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR is not set
 CONFIG_SPL_DMA=y
 CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot-dtb.img"
diff --git a/configs/imx6qdl_icore_mipi_defconfig b/configs/imx6qdl_icore_mipi_defconfig
index d1136ff97175..a2f1abe1aa6e 100644
--- a/configs/imx6qdl_icore_mipi_defconfig
+++ b/configs/imx6qdl_icore_mipi_defconfig
@@ -33,8 +33,6 @@ CONFIG_BOOTDELAY=3
 CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="run $modeboot"
 CONFIG_SPL_RAW_IMAGE_SUPPORT=y
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_OS_BOOT=y
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1000
diff --git a/configs/imx6qdl_icore_mmc_defconfig b/configs/imx6qdl_icore_mmc_defconfig
index 7f60a1290b7e..91b32e4a0353 100644
--- a/configs/imx6qdl_icore_mmc_defconfig
+++ b/configs/imx6qdl_icore_mmc_defconfig
@@ -36,8 +36,6 @@ CONFIG_BOOTDELAY=3
 CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="run $modeboot"
 CONFIG_SPL_RAW_IMAGE_SUPPORT=y
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_OS_BOOT=y
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1000
diff --git a/configs/imx6qdl_icore_nand_defconfig b/configs/imx6qdl_icore_nand_defconfig
index 340766919d65..278bc98cbc17 100644
--- a/configs/imx6qdl_icore_nand_defconfig
+++ b/configs/imx6qdl_icore_nand_defconfig
@@ -25,8 +25,6 @@ CONFIG_SUPPORT_RAW_INITRD=y
 CONFIG_BOOTDELAY=3
 CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="run $modeboot"
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_DMA=y
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_SPL_WATCHDOG=y
diff --git a/configs/imx6qdl_icore_rqs_defconfig b/configs/imx6qdl_icore_rqs_defconfig
index f4ce0bdc33a0..cfd35608cfcc 100644
--- a/configs/imx6qdl_icore_rqs_defconfig
+++ b/configs/imx6qdl_icore_rqs_defconfig
@@ -30,8 +30,6 @@ CONFIG_BOOTDELAY=3
 CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="run $modeboot"
 CONFIG_SPL_RAW_IMAGE_SUPPORT=y
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_OS_BOOT=y
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1000
diff --git a/configs/imx6ul_geam_mmc_defconfig b/configs/imx6ul_geam_mmc_defconfig
index dc517d8bdc96..a84547feddd9 100644
--- a/configs/imx6ul_geam_mmc_defconfig
+++ b/configs/imx6ul_geam_mmc_defconfig
@@ -28,8 +28,6 @@ CONFIG_BOOTDELAY=3
 CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="run $modeboot"
 CONFIG_SPL_RAW_IMAGE_SUPPORT=y
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_WATCHDOG=y
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_PROMPT="geam6ul> "
diff --git a/configs/imx6ul_geam_nand_defconfig b/configs/imx6ul_geam_nand_defconfig
index ad7c821ebaf5..8bd4360efd2e 100644
--- a/configs/imx6ul_geam_nand_defconfig
+++ b/configs/imx6ul_geam_nand_defconfig
@@ -25,8 +25,6 @@ CONFIG_SUPPORT_RAW_INITRD=y
 CONFIG_BOOTDELAY=3
 CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="run $modeboot"
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_DMA=y
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_SPL_WATCHDOG=y
diff --git a/configs/imx6ul_isiot_emmc_defconfig b/configs/imx6ul_isiot_emmc_defconfig
index 0a451618e78e..9262055f1da5 100644
--- a/configs/imx6ul_isiot_emmc_defconfig
+++ b/configs/imx6ul_isiot_emmc_defconfig
@@ -28,8 +28,6 @@ CONFIG_BOOTDELAY=3
 CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="run $modeboot"
 CONFIG_SPL_RAW_IMAGE_SUPPORT=y
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_WATCHDOG=y
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_PROMPT="isiotmx6ul> "
diff --git a/configs/imx6ul_isiot_nand_defconfig b/configs/imx6ul_isiot_nand_defconfig
index dd8543d5f5c2..d1da6da311c8 100644
--- a/configs/imx6ul_isiot_nand_defconfig
+++ b/configs/imx6ul_isiot_nand_defconfig
@@ -25,8 +25,6 @@ CONFIG_SUPPORT_RAW_INITRD=y
 CONFIG_BOOTDELAY=3
 CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="run $modeboot"
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_DMA=y
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_SPL_WATCHDOG=y
diff --git a/configs/kontron-sl-mx6ul_defconfig b/configs/kontron-sl-mx6ul_defconfig
index 904e953ce0fa..1ba4d1fca841 100644
--- a/configs/kontron-sl-mx6ul_defconfig
+++ b/configs/kontron-sl-mx6ul_defconfig
@@ -28,8 +28,6 @@ CONFIG_BOARD_TYPES=y
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_SPL_LEGACY_IMAGE_FORMAT=y
 CONFIG_SPL_LEGACY_IMAGE_CRC_CHECK=y
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_USB_HOST=y
 CONFIG_SPL_USB_GADGET=y
 CONFIG_SPL_WATCHDOG=y
diff --git a/configs/kp_imx6q_tpc_defconfig b/configs/kp_imx6q_tpc_defconfig
index 4ec988e3133c..012a5c492ed1 100644
--- a/configs/kp_imx6q_tpc_defconfig
+++ b/configs/kp_imx6q_tpc_defconfig
@@ -27,8 +27,6 @@ CONFIG_AUTOBOOT_STOP_STR="."
 # CONFIG_USE_BOOTCOMMAND is not set
 CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
 CONFIG_SPL_RAW_IMAGE_SUPPORT=y
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_POWER=y
 CONFIG_SPL_WATCHDOG=y
 CONFIG_SYS_MAXARGS=32
diff --git a/configs/liteboard_defconfig b/configs/liteboard_defconfig
index 9832654fa460..334b22ac8ab2 100644
--- a/configs/liteboard_defconfig
+++ b/configs/liteboard_defconfig
@@ -24,8 +24,6 @@ CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="mmc dev ${mmcdev};if mmc rescan; then if run loadbootscript; then run bootscript; else if run loadimage; then run mmcboot; else run netboot; fi; fi; else run netboot; fi"
 CONFIG_DEFAULT_FDT_FILE="imx6ul-liteboard.dtb"
 CONFIG_BOARD_EARLY_INIT_F=y
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_WATCHDOG=y
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_MAXARGS=32
diff --git a/configs/mccmon6_nor_defconfig b/configs/mccmon6_nor_defconfig
index cef2bb0ba5bc..3718d08b6700 100644
--- a/configs/mccmon6_nor_defconfig
+++ b/configs/mccmon6_nor_defconfig
@@ -24,8 +24,6 @@ CONFIG_SPL_LOAD_FIT=y
 # CONFIG_USE_BOOTCOMMAND is not set
 CONFIG_BOARD_LATE_INIT=y
 CONFIG_SPL_BOARD_INIT=y
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_FIT_IMAGE_TINY=y
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_NOR_SUPPORT=y
diff --git a/configs/mccmon6_sd_defconfig b/configs/mccmon6_sd_defconfig
index 8f3b4ecfc9d3..3228050dd206 100644
--- a/configs/mccmon6_sd_defconfig
+++ b/configs/mccmon6_sd_defconfig
@@ -25,8 +25,6 @@ CONFIG_SPL_LOAD_FIT=y
 # CONFIG_USE_BOOTCOMMAND is not set
 CONFIG_BOARD_LATE_INIT=y
 CONFIG_SPL_BOARD_INIT=y
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_NOR_SUPPORT=y
 CONFIG_SYS_MAXARGS=32
diff --git a/configs/mx6cuboxi_defconfig b/configs/mx6cuboxi_defconfig
index 016a54f7cb35..41122ade90e1 100644
--- a/configs/mx6cuboxi_defconfig
+++ b/configs/mx6cuboxi_defconfig
@@ -26,8 +26,6 @@ CONFIG_BOOTCOMMAND="run findfdt; run finduuid; run distro_bootcmd"
 CONFIG_USE_PREBOOT=y
 CONFIG_PREBOOT="if hdmidet; then usb start; setenv stdin  serial,usbkbd; setenv stdout serial,vidconsole; setenv stderr serial,vidconsole; else setenv stdin  serial; setenv stdout serial; setenv stderr serial; fi;"
 CONFIG_BOARD_EARLY_INIT_F=y
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_FS_EXT4=y
 CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot-dtb.img"
 CONFIG_SPL_I2C=y
diff --git a/configs/mx6memcal_defconfig b/configs/mx6memcal_defconfig
index cf807d8f3db5..d555dbf7b1be 100644
--- a/configs/mx6memcal_defconfig
+++ b/configs/mx6memcal_defconfig
@@ -15,8 +15,6 @@ CONFIG_SPL=y
 CONFIG_SYS_MEMTEST_START=0x10000000
 CONFIG_SYS_MEMTEST_END=0x20000000
 CONFIG_SUPPORT_RAW_INITRD=y
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_USB_HOST=y
 CONFIG_SPL_WATCHDOG=y
 CONFIG_HUSH_PARSER=y
diff --git a/configs/mx6sabreauto_defconfig b/configs/mx6sabreauto_defconfig
index 016898f9ab11..3d2e906f934b 100644
--- a/configs/mx6sabreauto_defconfig
+++ b/configs/mx6sabreauto_defconfig
@@ -33,8 +33,6 @@ CONFIG_BOOTCOMMAND="run findfdt;mmc dev ${mmcdev};if mmc rescan; then if run loa
 CONFIG_SYS_CONSOLE_IS_IN_ENV=y
 CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
 CONFIG_SPL_LEGACY_IMAGE_FORMAT=y
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_FIT_IMAGE_TINY=y
 CONFIG_SPL_FS_EXT4=y
 CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot-dtb.img"
diff --git a/configs/mx6sabresd_defconfig b/configs/mx6sabresd_defconfig
index 072617681dba..33d8db9dff23 100644
--- a/configs/mx6sabresd_defconfig
+++ b/configs/mx6sabresd_defconfig
@@ -32,8 +32,6 @@ CONFIG_BOOTCOMMAND="run findfdt;mmc dev ${mmcdev};if mmc rescan; then if run loa
 CONFIG_SYS_CONSOLE_IS_IN_ENV=y
 CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
 CONFIG_SPL_LEGACY_IMAGE_FORMAT=y
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_FIT_IMAGE_TINY=y
 CONFIG_SPL_USB_HOST=y
 CONFIG_SPL_USB_GADGET=y
diff --git a/configs/mx6slevk_spl_defconfig b/configs/mx6slevk_spl_defconfig
index a5ccf579029a..24407c113d65 100644
--- a/configs/mx6slevk_spl_defconfig
+++ b/configs/mx6slevk_spl_defconfig
@@ -25,8 +25,6 @@ CONFIG_SUPPORT_RAW_INITRD=y
 CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="mmc dev ${mmcdev}; if mmc rescan; then if run loadbootscript; then run bootscript; else if run loadimage; then run mmcboot; else run netboot; fi; fi; else run netboot; fi"
 CONFIG_BOARD_EARLY_INIT_F=y
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_FS_EXT4=y
 CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot-dtb.img"
 CONFIG_SPL_I2C=y
diff --git a/configs/mx6ul_14x14_evk_defconfig b/configs/mx6ul_14x14_evk_defconfig
index 8d182478164c..065ead0a7ad2 100644
--- a/configs/mx6ul_14x14_evk_defconfig
+++ b/configs/mx6ul_14x14_evk_defconfig
@@ -27,8 +27,6 @@ CONFIG_BOOTCOMMAND="run findfdt;mmc dev ${mmcdev};mmc dev ${mmcdev}; if mmc resc
 # CONFIG_CONSOLE_MUX is not set
 CONFIG_SYS_CONSOLE_IS_IN_ENV=y
 CONFIG_BOARD_EARLY_INIT_F=y
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_FS_EXT4=y
 CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot-dtb.img"
 CONFIG_SPL_I2C=y
diff --git a/configs/mx6ul_9x9_evk_defconfig b/configs/mx6ul_9x9_evk_defconfig
index 65c1c7785998..2f46b68cbe97 100644
--- a/configs/mx6ul_9x9_evk_defconfig
+++ b/configs/mx6ul_9x9_evk_defconfig
@@ -27,8 +27,6 @@ CONFIG_BOOTCOMMAND="run findfdt;mmc dev ${mmcdev};mmc dev ${mmcdev}; if mmc resc
 # CONFIG_CONSOLE_MUX is not set
 CONFIG_SYS_CONSOLE_IS_IN_ENV=y
 CONFIG_BOARD_EARLY_INIT_F=y
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_FS_EXT4=y
 CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot-dtb.img"
 CONFIG_SPL_I2C=y
diff --git a/configs/myir_mys_6ulx_defconfig b/configs/myir_mys_6ulx_defconfig
index fdd7d024ae87..f5ccf669f292 100644
--- a/configs/myir_mys_6ulx_defconfig
+++ b/configs/myir_mys_6ulx_defconfig
@@ -19,8 +19,6 @@ CONFIG_DISTRO_DEFAULTS=y
 CONFIG_FIT=y
 CONFIG_BOOTDELAY=3
 CONFIG_BOARD_EARLY_INIT_F=y
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_DMA=y
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_SPL_USB_HOST=y
diff --git a/configs/novena_defconfig b/configs/novena_defconfig
index 3faeaf150d5f..215aaa605b52 100644
--- a/configs/novena_defconfig
+++ b/configs/novena_defconfig
@@ -31,8 +31,6 @@ CONFIG_BOOTARGS="console=ttymxc1,115200 "
 CONFIG_BOOTCOMMAND="run distro_bootcmd ; run net_nfs"
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_MISC_INIT_R=y
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_FS_EXT4=y
 CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot-dtb.img"
 CONFIG_SPL_I2C=y
diff --git a/configs/opos6uldev_defconfig b/configs/opos6uldev_defconfig
index ddf879d19eb3..8b0b4c33e140 100644
--- a/configs/opos6uldev_defconfig
+++ b/configs/opos6uldev_defconfig
@@ -31,8 +31,6 @@ CONFIG_DEFAULT_FDT_FILE="imx6ul-opos6uldev.dtb"
 # CONFIG_CONSOLE_MUX is not set
 CONFIG_SYS_CONSOLE_IS_IN_ENV=y
 CONFIG_SPL_BOARD_INIT=y
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_WATCHDOG=y
 CONFIG_SPL_YMODEM_SUPPORT=y
diff --git a/configs/pcm058_defconfig b/configs/pcm058_defconfig
index f66589948824..54bef4e062e3 100644
--- a/configs/pcm058_defconfig
+++ b/configs/pcm058_defconfig
@@ -30,8 +30,6 @@ CONFIG_BOOTDELAY=3
 CONFIG_BOOTCOMMAND="run mmcboot;run nandboot"
 CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_SPL_BOARD_INIT=y
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x93ffb8
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x18a
 CONFIG_SPL_DMA=y
 CONFIG_SPL_FS_EXT4=y
diff --git a/configs/phycore_pcl063_defconfig b/configs/phycore_pcl063_defconfig
index 442dcc75ee04..6dcb789609f0 100644
--- a/configs/phycore_pcl063_defconfig
+++ b/configs/phycore_pcl063_defconfig
@@ -18,8 +18,6 @@ CONFIG_SYS_MEMTEST_END=0x90000000
 CONFIG_DISTRO_DEFAULTS=y
 CONFIG_BOOTDELAY=3
 CONFIG_BOARD_EARLY_INIT_F=y
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_USB_HOST=y
 CONFIG_SPL_WATCHDOG=y
 CONFIG_SYS_MAXARGS=32
diff --git a/configs/phycore_pcl063_ull_defconfig b/configs/phycore_pcl063_ull_defconfig
index 96ea32747053..e40ca07b7c08 100644
--- a/configs/phycore_pcl063_ull_defconfig
+++ b/configs/phycore_pcl063_ull_defconfig
@@ -18,8 +18,6 @@ CONFIG_FIT=y
 CONFIG_BOOTDELAY=3
 CONFIG_BOOTCOMMAND="run mmc_mmc_fit"
 CONFIG_BOARD_EARLY_INIT_F=y
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_USB_HOST=y
 CONFIG_SPL_WATCHDOG=y
 CONFIG_SYS_MAXARGS=32
diff --git a/configs/pico-dwarf-imx6ul_defconfig b/configs/pico-dwarf-imx6ul_defconfig
index 298865bb2b9f..15dc2098ad44 100644
--- a/configs/pico-dwarf-imx6ul_defconfig
+++ b/configs/pico-dwarf-imx6ul_defconfig
@@ -25,8 +25,6 @@ CONFIG_BOOTDELAY=3
 CONFIG_BOOTCOMMAND="run findfdt; run finduuid; run distro_bootcmd"
 CONFIG_DEFAULT_FDT_FILE="imx6ul-pico-dwarf.dtb"
 CONFIG_BOARD_EARLY_INIT_F=y
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_USB_HOST=y
 CONFIG_SPL_USB_GADGET=y
 CONFIG_SPL_USB_SDP_SUPPORT=y
diff --git a/configs/pico-hobbit-imx6ul_defconfig b/configs/pico-hobbit-imx6ul_defconfig
index 15fe0df9c00c..eeb95d431dbc 100644
--- a/configs/pico-hobbit-imx6ul_defconfig
+++ b/configs/pico-hobbit-imx6ul_defconfig
@@ -26,8 +26,6 @@ CONFIG_BOOTDELAY=3
 CONFIG_BOOTCOMMAND="run findfdt; run finduuid; run distro_bootcmd"
 CONFIG_DEFAULT_FDT_FILE="imx6ul-pico-hobbit.dtb"
 CONFIG_BOARD_EARLY_INIT_F=y
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_USB_HOST=y
 CONFIG_SPL_USB_GADGET=y
 CONFIG_SPL_USB_SDP_SUPPORT=y
diff --git a/configs/pico-imx6_defconfig b/configs/pico-imx6_defconfig
index bc20d4253327..09809542606d 100644
--- a/configs/pico-imx6_defconfig
+++ b/configs/pico-imx6_defconfig
@@ -27,8 +27,6 @@ CONFIG_SPL_LOAD_FIT=y
 CONFIG_BOOTCOMMAND="run default_boot"
 CONFIG_DEFAULT_FDT_FILE="ask"
 CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_FIT_IMAGE_TINY=y
 CONFIG_SPL_FS_EXT4=y
 CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot-dtb.img"
diff --git a/configs/pico-imx6ul_defconfig b/configs/pico-imx6ul_defconfig
index 37cbc96dc0ed..7e923d0bc027 100644
--- a/configs/pico-imx6ul_defconfig
+++ b/configs/pico-imx6ul_defconfig
@@ -26,8 +26,6 @@ CONFIG_BOOTDELAY=3
 CONFIG_BOOTCOMMAND="run findfdt; run finduuid; run distro_bootcmd"
 CONFIG_DEFAULT_FDT_FILE="ask"
 CONFIG_BOARD_EARLY_INIT_F=y
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_USB_HOST=y
 CONFIG_SPL_USB_GADGET=y
 CONFIG_SPL_USB_SDP_SUPPORT=y
diff --git a/configs/pico-pi-imx6ul_defconfig b/configs/pico-pi-imx6ul_defconfig
index c3613d5745f6..2cc6d4f8bed5 100644
--- a/configs/pico-pi-imx6ul_defconfig
+++ b/configs/pico-pi-imx6ul_defconfig
@@ -26,8 +26,6 @@ CONFIG_BOOTDELAY=3
 CONFIG_BOOTCOMMAND="run findfdt; run finduuid; run distro_bootcmd"
 CONFIG_DEFAULT_FDT_FILE="imx6ul-pico-pi.dtb"
 CONFIG_BOARD_EARLY_INIT_F=y
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_USB_HOST=y
 CONFIG_SPL_USB_GADGET=y
 CONFIG_SPL_USB_SDP_SUPPORT=y
diff --git a/configs/riotboard_defconfig b/configs/riotboard_defconfig
index a14f9a409e04..8e74a1f087f9 100644
--- a/configs/riotboard_defconfig
+++ b/configs/riotboard_defconfig
@@ -28,8 +28,6 @@ CONFIG_SYS_CONSOLE_IS_IN_ENV=y
 CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_SPL_RAW_IMAGE_SUPPORT=y
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_FS_EXT4=y
 CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot-dtb.img"
 CONFIG_SPL_FS_LOAD_ARGS_NAME="imx6dl-riotboard.dtb"
diff --git a/configs/seeed_npi_imx6ull_defconfig b/configs/seeed_npi_imx6ull_defconfig
index 860c98a4ad40..8fb5590c1ebd 100644
--- a/configs/seeed_npi_imx6ull_defconfig
+++ b/configs/seeed_npi_imx6ull_defconfig
@@ -20,8 +20,6 @@ CONFIG_DISTRO_DEFAULTS=y
 CONFIG_FIT=y
 CONFIG_BOOTDELAY=3
 CONFIG_BOARD_EARLY_INIT_F=y
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_DMA=y
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_SPL_USB_HOST=y
diff --git a/configs/udoo_defconfig b/configs/udoo_defconfig
index 03875f9039d9..e21945116c03 100644
--- a/configs/udoo_defconfig
+++ b/configs/udoo_defconfig
@@ -22,8 +22,6 @@ CONFIG_DISTRO_DEFAULTS=y
 CONFIG_BOOTDELAY=3
 CONFIG_BOOTCOMMAND="run findfdt; run distro_bootcmd"
 CONFIG_BOARD_EARLY_INIT_F=y
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_FS_EXT4=y
 CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot-dtb.img"
 CONFIG_SPL_I2C=y
diff --git a/configs/udoo_neo_defconfig b/configs/udoo_neo_defconfig
index 1b9b5a5b6270..fff11bb10e97 100644
--- a/configs/udoo_neo_defconfig
+++ b/configs/udoo_neo_defconfig
@@ -22,8 +22,6 @@ CONFIG_SPL_LIBDISK_SUPPORT=y
 CONFIG_DISTRO_DEFAULTS=y
 CONFIG_BOOTCOMMAND="run findfdt; run distro_bootcmd"
 CONFIG_BOARD_EARLY_INIT_F=y
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_FS_EXT4=y
 CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot-dtb.img"
diff --git a/configs/variscite_dart6ul_defconfig b/configs/variscite_dart6ul_defconfig
index e100185743c0..7322b12bd17c 100644
--- a/configs/variscite_dart6ul_defconfig
+++ b/configs/variscite_dart6ul_defconfig
@@ -18,8 +18,6 @@ CONFIG_DISTRO_DEFAULTS=y
 CONFIG_FIT=y
 CONFIG_BOOTDELAY=3
 CONFIG_BOOTCOMMAND="run mmc_mmc_fit"
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_USB_HOST=y
 CONFIG_SPL_WATCHDOG=y
 CONFIG_SYS_MAXARGS=32
diff --git a/configs/vining_2000_defconfig b/configs/vining_2000_defconfig
index 0559b2864dee..a8c3d907d1d4 100644
--- a/configs/vining_2000_defconfig
+++ b/configs/vining_2000_defconfig
@@ -31,8 +31,6 @@ CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="run distro_bootcmd"
 CONFIG_SYS_CONSOLE_IS_IN_ENV=y
 CONFIG_BOARD_EARLY_INIT_F=y
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_FS_EXT4=y
 CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot-dtb.img"
 CONFIG_SPL_I2C=y
diff --git a/configs/wandboard_defconfig b/configs/wandboard_defconfig
index 43af07f07daa..fadc8af36eb5 100644
--- a/configs/wandboard_defconfig
+++ b/configs/wandboard_defconfig
@@ -33,8 +33,6 @@ CONFIG_SYS_CONSOLE_IS_IN_ENV=y
 CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_BOARD_EARLY_INIT_F=y
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x91ffb8
 CONFIG_SPL_FIT_IMAGE_TINY=y
 CONFIG_SPL_FS_EXT4=y
 CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot-dtb.img"
diff --git a/doc/imx/common/imx6.txt b/doc/imx/common/imx6.txt
index 9007cfbf587a..c5554d8d6b33 100644
--- a/doc/imx/common/imx6.txt
+++ b/doc/imx/common/imx6.txt
@@ -162,3 +162,34 @@ icorem6qdl> nand write ${loadaddr} uboot ${filesize}
 NAND write: device 0 offset 0x200000, size 0x8fd26
  589094 bytes written: OK
 icorem6qdl>
+
+SPL Stack size and location notes
+---------------------------------
+
+If we have CONFIG_MX6_OCRAM_256KB then see Figure 8.4.1 in IMX6DQ Reference
+manuals:
+  - IMX6DQ OCRAM (IRAM) is from 0x00907000 to 0x0093FFFF
+  - BOOT ROM stack is at 0x0093FFB8
+  - if icache/dcache is enabled (eFuse/strapping controlled) then the
+    IMX BOOT ROM will setup MMU table at 0x00938000, therefore we need to
+    fit between 0x00907000 and 0x00938000.
+  - Additionally the BOOT ROM loads what they consider the firmware image
+    which consists of a 4K header in front of us that contains the IVT, DCD
+    and some padding thus 'our' max size is really 0x00908000 - 0x00938000
+    or 192KB
+  - Pad SPL to 196KB (4KB header + 192KB max size). This allows to write the
+    SPL/U-Boot combination generated with u-boot-with-spl.imx directly to a
+    boot media (given that boot media specific offset is configured properly).
+and if we don't, see Figure 8-3 in IMX6SDL Reference manuals:
+  - IMX6SDL OCRAM (IRAM) is from 0x00907000 to 0x0091FFFF
+  - BOOT ROM stack is at 0x0091FFB8
+  - if icache/dcache is enabled (eFuse/strapping controlled) then the
+    IMX BOOT ROM will setup MMU table at 0x00918000, therefore we need to
+    fit between 0x00907000 and 0x00918000.
+  - Additionally the BOOT ROM loads what they consider the firmware image
+    which consists of a 4K header in front of us that contains the IVT, DCD
+    and some padding thus 'our' max size is really 0x00908000 - 0x00918000
+    or 64KB
+  - Pad SPL to 68KB (4KB header + 64KB max size). This allows to write the
+    SPL/U-Boot combination generated with u-boot-with-spl.imx directly to a
+    boot media (given that boot media specific offset is configured properly).
diff --git a/include/configs/imx6_spl.h b/include/configs/imx6_spl.h
index 86e192fb0c89..daf44294a231 100644
--- a/include/configs/imx6_spl.h
+++ b/include/configs/imx6_spl.h
@@ -8,45 +8,6 @@
 
 #ifdef CONFIG_SPL
 
-#ifdef CONFIG_MX6_OCRAM_256KB
-/*
- * see Figure 8.4.1 in IMX6DQ Reference manuals:
- *  - IMX6DQ OCRAM (IRAM) is from 0x00907000 to 0x0093FFFF
- *  - BOOT ROM stack is at 0x0093FFB8
- *  - if icache/dcache is enabled (eFuse/strapping controlled) then the
- *    IMX BOOT ROM will setup MMU table at 0x00938000, therefore we need to
- *    fit between 0x00907000 and 0x00938000.
- *  - Additionally the BOOT ROM loads what they consider the firmware image
- *    which consists of a 4K header in front of us that contains the IVT, DCD
- *    and some padding thus 'our' max size is really 0x00908000 - 0x00938000
- *    or 192KB
- */
-/*
- * Pad SPL to 196KB (4KB header + 192KB max size). This allows to write the
- * SPL/U-Boot combination generated with u-boot-with-spl.imx directly to a
- * boot media (given that boot media specific offset is configured properly).
- */
-#else
-/*
- * see Figure 8-3 in IMX6SDL Reference manuals:
- *  - IMX6SDL OCRAM (IRAM) is from 0x00907000 to 0x0091FFFF
- *  - BOOT ROM stack is at 0x0091FFB8
- *  - if icache/dcache is enabled (eFuse/strapping controlled) then the
- *    IMX BOOT ROM will setup MMU table at 0x00918000, therefore we need to
- *    fit between 0x00907000 and 0x00918000.
- *  - Additionally the BOOT ROM loads what they consider the firmware image
- *    which consists of a 4K header in front of us that contains the IVT, DCD
- *    and some padding thus 'our' max size is really 0x00908000 - 0x00918000
- *    or 64KB
- */
-/*
- * Pad SPL to 68KB (4KB header + 64KB max size). This allows to write the
- * SPL/U-Boot combination generated with u-boot-with-spl.imx directly to a
- * boot media (given that boot media specific offset is configured properly).
- */
-
-#endif
-
 /* MMC support */
 #if defined(CONFIG_SPL_MMC)
 #define CONFIG_SYS_MONITOR_LEN			409600	/* 400 KB */
-- 
2.25.1


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH 03/20] imx7: Update CONFIG_SPL_STACK defaults in Kconfig
  2022-05-29 16:55 [PATCH 01/20] Convert CONFIG_SPL_STACK to Kconfig Tom Rini
  2022-05-29 16:55 ` [PATCH 02/20] imx6: Update CONFIG_SPL_STACK defaults in Kconfig Tom Rini
@ 2022-05-29 16:55 ` Tom Rini
  2022-05-29 16:55 ` [PATCH 04/20] Convert CONFIG_TPL_NAND_INIT to Kconfig Tom Rini
                   ` (18 subsequent siblings)
  20 siblings, 0 replies; 27+ messages in thread
From: Tom Rini @ 2022-05-29 16:55 UTC (permalink / raw)
  To: u-boot

Update the Kconfig entry to have the correct defaults for i.MX7
platforms, and move the existing large comment from imx7_spl.h to
doc/imx/common/imx7.txt so that it's not lost.

Signed-off-by: Tom Rini <trini@konsulko.com>
---
 common/spl/Kconfig                  |  3 ++-
 configs/cl-som-imx7_defconfig       |  2 --
 configs/imx7_cm_defconfig           |  2 --
 configs/pico-dwarf-imx7d_defconfig  |  2 --
 configs/pico-hobbit-imx7d_defconfig |  2 --
 configs/pico-imx7d_bl33_defconfig   |  2 --
 configs/pico-imx7d_defconfig        |  2 --
 configs/pico-nymph-imx7d_defconfig  |  2 --
 configs/pico-pi-imx7d_defconfig     |  2 --
 doc/imx/common/imx7.txt             | 23 +++++++++++++++++++++++
 include/configs/imx7_spl.h          | 23 -----------------------
 11 files changed, 25 insertions(+), 40 deletions(-)
 create mode 100644 doc/imx/common/imx7.txt

diff --git a/common/spl/Kconfig b/common/spl/Kconfig
index 173c7e020240..8f3985d612f9 100644
--- a/common/spl/Kconfig
+++ b/common/spl/Kconfig
@@ -360,7 +360,7 @@ config TPL_SYS_MALLOC_SIMPLE
 config SPL_SHARES_INIT_SP_ADDR
 	bool "SPL and U-Boot use the same initial stack pointer location"
 	depends on (ARM || ARCH_JZ47XX || MICROBLAZE || RISCV) && SPL_FRAMEWORK
-	default n if ARCH_SUNXI || ARCH_MX6
+	default n if ARCH_SUNXI || ARCH_MX6 || ARCH_MX7
 	default y
 	help
 	  In many cases, we can use the same initial stack pointer address for
@@ -371,6 +371,7 @@ config SPL_STACK
 	hex "Initial stack pointer location"
 	depends on (ARM || ARCH_JZ47XX || MICROBLAZE || RISCV) && SPL_FRAMEWORK
 	depends on !SPL_SHARES_INIT_SP_ADDR
+	default 0x946bb8 if ARCH_MX7
 	default 0x93ffb8 if ARCH_MX6 && MX6_OCRAM_256KB
 	default 0x91ffb8 if ARCH_MX6 && !MX6_OCRAM_256KB
 	help
diff --git a/configs/cl-som-imx7_defconfig b/configs/cl-som-imx7_defconfig
index 67b70d9523d8..af7fb37afccd 100644
--- a/configs/cl-som-imx7_defconfig
+++ b/configs/cl-som-imx7_defconfig
@@ -28,8 +28,6 @@ CONFIG_BOARD_LATE_INIT=y
 CONFIG_SPL_MAX_SIZE=0xe000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
 CONFIG_SPL_BOARD_INIT=y
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x946bb8
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x80
 CONFIG_SPL_I2C=y
 CONFIG_SPL_SPI_LOAD=y
diff --git a/configs/imx7_cm_defconfig b/configs/imx7_cm_defconfig
index 8b05ee2f6df5..351d47fe552e 100644
--- a/configs/imx7_cm_defconfig
+++ b/configs/imx7_cm_defconfig
@@ -26,8 +26,6 @@ CONFIG_DEFAULT_FDT_FILE="ask"
 # CONFIG_BOARD_EARLY_INIT_F is not set
 CONFIG_SPL_MAX_SIZE=0xe000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x946bb8
 CONFIG_SPL_I2C=y
 CONFIG_SPL_USB_HOST=y
 CONFIG_SPL_USB_GADGET=y
diff --git a/configs/pico-dwarf-imx7d_defconfig b/configs/pico-dwarf-imx7d_defconfig
index e1d0e3438ddb..00067d2e46d9 100644
--- a/configs/pico-dwarf-imx7d_defconfig
+++ b/configs/pico-dwarf-imx7d_defconfig
@@ -27,8 +27,6 @@ CONFIG_BOOTCOMMAND="run findfdt; run finduuid; run distro_bootcmd"
 CONFIG_DEFAULT_FDT_FILE="imx7d-pico-dwarf.dtb"
 CONFIG_SPL_MAX_SIZE=0xe000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x946bb8
 CONFIG_SPL_I2C=y
 CONFIG_SPL_USB_HOST=y
 CONFIG_SPL_USB_GADGET=y
diff --git a/configs/pico-hobbit-imx7d_defconfig b/configs/pico-hobbit-imx7d_defconfig
index 4ccbcf90a618..64c2ca4b189f 100644
--- a/configs/pico-hobbit-imx7d_defconfig
+++ b/configs/pico-hobbit-imx7d_defconfig
@@ -27,8 +27,6 @@ CONFIG_BOOTCOMMAND="run findfdt; run finduuid; run distro_bootcmd"
 CONFIG_DEFAULT_FDT_FILE="imx7d-pico-hobbit.dtb"
 CONFIG_SPL_MAX_SIZE=0xe000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x946bb8
 CONFIG_SPL_I2C=y
 CONFIG_SPL_USB_HOST=y
 CONFIG_SPL_USB_GADGET=y
diff --git a/configs/pico-imx7d_bl33_defconfig b/configs/pico-imx7d_bl33_defconfig
index 3d342d78186b..d13336d0548c 100644
--- a/configs/pico-imx7d_bl33_defconfig
+++ b/configs/pico-imx7d_bl33_defconfig
@@ -28,8 +28,6 @@ CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="run distro_bootcmd"
 CONFIG_SPL_MAX_SIZE=0xe000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x946bb8
 CONFIG_SPL_I2C=y
 CONFIG_SPL_USB_HOST=y
 CONFIG_SPL_USB_GADGET=y
diff --git a/configs/pico-imx7d_defconfig b/configs/pico-imx7d_defconfig
index df57fa13321a..a6ee5cebfe26 100644
--- a/configs/pico-imx7d_defconfig
+++ b/configs/pico-imx7d_defconfig
@@ -27,8 +27,6 @@ CONFIG_BOOTCOMMAND="run findfdt; run finduuid; run distro_bootcmd"
 CONFIG_DEFAULT_FDT_FILE="ask"
 CONFIG_SPL_MAX_SIZE=0xe000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x946bb8
 CONFIG_SPL_I2C=y
 CONFIG_SPL_USB_HOST=y
 CONFIG_SPL_USB_GADGET=y
diff --git a/configs/pico-nymph-imx7d_defconfig b/configs/pico-nymph-imx7d_defconfig
index e1d0e3438ddb..00067d2e46d9 100644
--- a/configs/pico-nymph-imx7d_defconfig
+++ b/configs/pico-nymph-imx7d_defconfig
@@ -27,8 +27,6 @@ CONFIG_BOOTCOMMAND="run findfdt; run finduuid; run distro_bootcmd"
 CONFIG_DEFAULT_FDT_FILE="imx7d-pico-dwarf.dtb"
 CONFIG_SPL_MAX_SIZE=0xe000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x946bb8
 CONFIG_SPL_I2C=y
 CONFIG_SPL_USB_HOST=y
 CONFIG_SPL_USB_GADGET=y
diff --git a/configs/pico-pi-imx7d_defconfig b/configs/pico-pi-imx7d_defconfig
index c799968944c6..b74b2582cb95 100644
--- a/configs/pico-pi-imx7d_defconfig
+++ b/configs/pico-pi-imx7d_defconfig
@@ -27,8 +27,6 @@ CONFIG_BOOTCOMMAND="run findfdt; run finduuid; run distro_bootcmd"
 CONFIG_DEFAULT_FDT_FILE="imx7d-pico-pi.dtb"
 CONFIG_SPL_MAX_SIZE=0xe000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
-# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
-CONFIG_SPL_STACK=0x946bb8
 CONFIG_SPL_I2C=y
 CONFIG_SPL_USB_HOST=y
 CONFIG_SPL_USB_GADGET=y
diff --git a/doc/imx/common/imx7.txt b/doc/imx/common/imx7.txt
new file mode 100644
index 000000000000..b9db10341ad8
--- /dev/null
+++ b/doc/imx/common/imx7.txt
@@ -0,0 +1,23 @@
+U-Boot for Freescale i.MX7
+
+SPL Stack size and location notes
+---------------------------------
+See figure 6-22 in i.MX 7Dual/Solo Reference manuals:
+  - IMX7D/S OCRAM free area RAM (OCRAM) is from 0x00910000 to
+    0x00946C00.
+  - Set the stack at the end of the free area section, at 0x00946BB8.
+  - The BOOT ROM loads what they consider the firmware image
+    which consists of a 4K header in front of us that contains the IVT, DCD
+    and some padding. However, the manual also states that the ROM uses the
+    OCRAM_EPCD and OCRAM_PXP areas for itself. While the SPL is free to use
+    this range for stack and malloc, the SPL itself must fit below 0x920000,
+    or the image will be truncated in at least some boot modes like USB SDP.
+    Thus our max size is really 0x00920000 - 0x00912000. If necessary,
+    CONFIG_SPL_TEXT_BASE could be moved to 0x00911000 to gain 4KB of space
+    for the SPL, but 56KB should be more than enough for the SPL.
+  - Pad SPL to 68KB (4KB header + 56KB max size + 8KB extra padding)
+    The extra padding could be removed, but this value was used historically
+    based on an incorrect CONFIG_SPL_MAX_SIZE definition.
+    This allows to write the SPL/U-Boot combination generated with
+    u-boot-with-spl.imx directly to a boot media (given that boot media specific
+    offset is configured properly).
diff --git a/include/configs/imx7_spl.h b/include/configs/imx7_spl.h
index 019ed5e203a9..9fe0dbdfe976 100644
--- a/include/configs/imx7_spl.h
+++ b/include/configs/imx7_spl.h
@@ -11,29 +11,6 @@
 #define __IMX7_SPL_CONFIG_H
 
 #ifdef CONFIG_SPL
-/*
- * see figure 6-22 in i.MX 7Dual/Solo Reference manuals:
- *  - IMX7D/S OCRAM free area RAM (OCRAM) is from 0x00910000 to
- *    0x00946C00.
- *  - Set the stack at the end of the free area section, at 0x00946BB8.
- *  - The BOOT ROM loads what they consider the firmware image
- *    which consists of a 4K header in front of us that contains the IVT, DCD
- *    and some padding. However, the manual also states that the ROM uses the
- *    OCRAM_EPCD and OCRAM_PXP areas for itself. While the SPL is free to use
- *    this range for stack and malloc, the SPL itself must fit below 0x920000,
- *    or the image will be truncated in at least some boot modes like USB SDP.
- *    Thus our max size is really 0x00920000 - 0x00912000. If necessary,
- *    CONFIG_SPL_TEXT_BASE could be moved to 0x00911000 to gain 4KB of space
- *    for the SPL, but 56KB should be more than enough for the SPL.
- */
-/*
- * Pad SPL to 68KB (4KB header + 56KB max size + 8KB extra padding)
- * The extra padding could be removed, but this value was used historically
- * based on an incorrect CONFIG_SPL_MAX_SIZE definition.
- * This allows to write the SPL/U-Boot combination generated with
- * u-boot-with-spl.imx directly to a boot media (given that boot media specific
- * offset is configured properly).
- */
 
 /* MMC support */
 #if defined(CONFIG_SPL_MMC)
-- 
2.25.1


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH 04/20] Convert CONFIG_TPL_NAND_INIT to Kconfig
  2022-05-29 16:55 [PATCH 01/20] Convert CONFIG_SPL_STACK to Kconfig Tom Rini
  2022-05-29 16:55 ` [PATCH 02/20] imx6: Update CONFIG_SPL_STACK defaults in Kconfig Tom Rini
  2022-05-29 16:55 ` [PATCH 03/20] imx7: " Tom Rini
@ 2022-05-29 16:55 ` Tom Rini
  2022-05-29 16:55 ` [PATCH 05/20] Convert CONFIG_SPL_RELOC_TEXT_BASE et al " Tom Rini
                   ` (17 subsequent siblings)
  20 siblings, 0 replies; 27+ messages in thread
From: Tom Rini @ 2022-05-29 16:55 UTC (permalink / raw)
  To: u-boot

This converts the following to Kconfig:
   CONFIG_TPL_NAND_INIT

Signed-off-by: Tom Rini <trini@konsulko.com>
---
 drivers/mtd/nand/raw/Kconfig       | 4 ++++
 drivers/mtd/nand/raw/Makefile      | 2 +-
 drivers/mtd/nand/raw/fsl_ifc_spl.c | 2 +-
 include/configs/P1010RDB.h         | 1 -
 include/configs/p1_p2_rdb_pc.h     | 1 -
 5 files changed, 6 insertions(+), 4 deletions(-)

diff --git a/drivers/mtd/nand/raw/Kconfig b/drivers/mtd/nand/raw/Kconfig
index d75f371c951f..4129a33866bf 100644
--- a/drivers/mtd/nand/raw/Kconfig
+++ b/drivers/mtd/nand/raw/Kconfig
@@ -23,6 +23,9 @@ config TPL_SYS_NAND_SELF_INIT
 	  This option, if enabled, provides more flexible and linux-like
 	  NAND initialization process, in SPL.
 
+config TPL_NAND_INIT
+	bool
+
 config SYS_NAND_DRIVER_ECC_LAYOUT
 	bool "Omit standard ECC layouts to save space"
 	help
@@ -165,6 +168,7 @@ config NAND_FSL_ELBC_DT
 config NAND_FSL_IFC
 	bool "Support Freescale Integrated Flash Controller NAND driver"
 	select TPL_SYS_NAND_SELF_INIT if TPL_NAND_SUPPORT
+	select TPL_NAND_INIT if TPL && !TPL_FRAMEWORK
 	select SPL_SYS_NAND_SELF_INIT
 	select SYS_NAND_SELF_INIT
 	select FSL_IFC
diff --git a/drivers/mtd/nand/raw/Makefile b/drivers/mtd/nand/raw/Makefile
index 6ec3581d20e9..e3f6b903f75f 100644
--- a/drivers/mtd/nand/raw/Makefile
+++ b/drivers/mtd/nand/raw/Makefile
@@ -16,7 +16,7 @@ obj-$(CONFIG_SPL_NAND_LOAD) += nand_spl_load.o
 obj-$(CONFIG_SPL_NAND_ECC) += nand_ecc.o
 obj-$(CONFIG_SPL_NAND_BASE) += nand_base.o
 obj-$(CONFIG_SPL_NAND_IDENT) += nand_ids.o nand_timings.o
-obj-$(CONFIG_SPL_NAND_INIT) += nand.o
+obj-$(CONFIG_TPL_NAND_INIT) += nand.o
 ifeq ($(CONFIG_SPL_ENV_SUPPORT),y)
 obj-$(CONFIG_ENV_IS_IN_NAND) += nand_util.o
 endif
diff --git a/drivers/mtd/nand/raw/fsl_ifc_spl.c b/drivers/mtd/nand/raw/fsl_ifc_spl.c
index b7e37416a49b..4d11922a6503 100644
--- a/drivers/mtd/nand/raw/fsl_ifc_spl.c
+++ b/drivers/mtd/nand/raw/fsl_ifc_spl.c
@@ -297,7 +297,7 @@ void nand_boot(void)
 	uboot();
 }
 
-#ifndef CONFIG_SPL_NAND_INIT
+#ifndef CONFIG_TPL_NAND_INIT
 void nand_init(void)
 {
 }
diff --git a/include/configs/P1010RDB.h b/include/configs/P1010RDB.h
index 9024df1adcfd..ead535566157 100644
--- a/include/configs/P1010RDB.h
+++ b/include/configs/P1010RDB.h
@@ -50,7 +50,6 @@
 #define CONFIG_SYS_NAND_U_BOOT_START	0x00200000
 #else
 #ifdef CONFIG_TPL_BUILD
-#define CONFIG_SPL_NAND_INIT
 #define CONFIG_SYS_MPC85XX_NO_RESETVEC
 #define CONFIG_SYS_NAND_U_BOOT_SIZE	(576 << 10)
 #define CONFIG_SYS_NAND_U_BOOT_DST	(0x11000000)
diff --git a/include/configs/p1_p2_rdb_pc.h b/include/configs/p1_p2_rdb_pc.h
index b68082c41105..849a0b8cb649 100644
--- a/include/configs/p1_p2_rdb_pc.h
+++ b/include/configs/p1_p2_rdb_pc.h
@@ -93,7 +93,6 @@
 #define CONFIG_SYS_MPC85XX_NO_RESETVEC
 #elif defined(CONFIG_MTD_RAW_NAND)
 #ifdef CONFIG_TPL_BUILD
-#define CONFIG_SPL_NAND_INIT
 #define CONFIG_SYS_MPC85XX_NO_RESETVEC
 #define CONFIG_SYS_NAND_U_BOOT_SIZE	(832 << 10)
 #define CONFIG_SYS_NAND_U_BOOT_DST	(0x11000000)
-- 
2.25.1


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH 05/20] Convert CONFIG_SPL_RELOC_TEXT_BASE et al to Kconfig
  2022-05-29 16:55 [PATCH 01/20] Convert CONFIG_SPL_STACK to Kconfig Tom Rini
                   ` (2 preceding siblings ...)
  2022-05-29 16:55 ` [PATCH 04/20] Convert CONFIG_TPL_NAND_INIT to Kconfig Tom Rini
@ 2022-05-29 16:55 ` Tom Rini
  2022-05-29 16:55 ` [PATCH 06/20] Convert CONFIG_SPL_BSS_START_ADDR " Tom Rini
                   ` (16 subsequent siblings)
  20 siblings, 0 replies; 27+ messages in thread
From: Tom Rini @ 2022-05-29 16:55 UTC (permalink / raw)
  To: u-boot

This converts the following to Kconfig:
   CONFIG_SPL_RELOC_TEXT_BASE
   CONFIG_SPL_RELOC_STACK
   CONFIG_SPL_RELOC_MALLOC_ADDR
   CONFIG_SPL_RELOC_MALLOC_SIZE

Signed-off-by: Tom Rini <trini@konsulko.com>
---
 README                                       | 13 -----
 board/freescale/p1010rdb/spl.c               |  6 +-
 board/freescale/p1_p2_rdb_pc/spl.c           |  6 +-
 common/spl/Kconfig                           | 59 +++++++++++++++++++-
 configs/P1010RDB-PA_36BIT_NAND_defconfig     |  7 +++
 configs/P1010RDB-PA_36BIT_NOR_defconfig      |  1 -
 configs/P1010RDB-PA_36BIT_SDCARD_defconfig   |  5 ++
 configs/P1010RDB-PA_36BIT_SPIFLASH_defconfig |  5 ++
 configs/P1010RDB-PA_NAND_defconfig           |  7 +++
 configs/P1010RDB-PA_NOR_defconfig            |  1 -
 configs/P1010RDB-PA_SDCARD_defconfig         |  5 ++
 configs/P1010RDB-PA_SPIFLASH_defconfig       |  5 ++
 configs/P1010RDB-PB_36BIT_NAND_defconfig     |  7 +++
 configs/P1010RDB-PB_36BIT_NOR_defconfig      |  1 -
 configs/P1010RDB-PB_36BIT_SDCARD_defconfig   |  5 ++
 configs/P1010RDB-PB_36BIT_SPIFLASH_defconfig |  5 ++
 configs/P1010RDB-PB_NAND_defconfig           |  7 +++
 configs/P1010RDB-PB_NOR_defconfig            |  1 -
 configs/P1010RDB-PB_SDCARD_defconfig         |  5 ++
 configs/P1010RDB-PB_SPIFLASH_defconfig       |  5 ++
 configs/P1020RDB-PC_36BIT_NAND_defconfig     |  7 +++
 configs/P1020RDB-PC_36BIT_SDCARD_defconfig   |  4 ++
 configs/P1020RDB-PC_36BIT_SPIFLASH_defconfig |  4 ++
 configs/P1020RDB-PC_36BIT_defconfig          |  1 -
 configs/P1020RDB-PC_NAND_defconfig           |  7 +++
 configs/P1020RDB-PC_SDCARD_defconfig         |  4 ++
 configs/P1020RDB-PC_SPIFLASH_defconfig       |  4 ++
 configs/P1020RDB-PC_defconfig                |  1 -
 configs/P1020RDB-PD_NAND_defconfig           |  7 +++
 configs/P1020RDB-PD_SDCARD_defconfig         |  4 ++
 configs/P1020RDB-PD_SPIFLASH_defconfig       |  4 ++
 configs/P1020RDB-PD_defconfig                |  1 -
 configs/P2020RDB-PC_36BIT_NAND_defconfig     |  7 +++
 configs/P2020RDB-PC_36BIT_SDCARD_defconfig   |  4 ++
 configs/P2020RDB-PC_36BIT_SPIFLASH_defconfig |  4 ++
 configs/P2020RDB-PC_36BIT_defconfig          |  1 -
 configs/P2020RDB-PC_NAND_defconfig           |  7 +++
 configs/P2020RDB-PC_SDCARD_defconfig         |  4 ++
 configs/P2020RDB-PC_SPIFLASH_defconfig       |  4 ++
 configs/P2020RDB-PC_defconfig                |  1 -
 configs/T1024RDB_NAND_defconfig              |  4 ++
 configs/T1024RDB_SDCARD_defconfig            |  4 ++
 configs/T1024RDB_SPIFLASH_defconfig          |  4 ++
 configs/T1042D4RDB_NAND_defconfig            |  4 ++
 configs/T1042D4RDB_SDCARD_defconfig          |  4 ++
 configs/T1042D4RDB_SPIFLASH_defconfig        |  4 ++
 configs/T2080QDS_NAND_defconfig              |  4 ++
 configs/T2080QDS_SDCARD_defconfig            |  4 ++
 configs/T2080QDS_SPIFLASH_defconfig          |  4 ++
 configs/T2080RDB_NAND_defconfig              |  4 ++
 configs/T2080RDB_SDCARD_defconfig            |  4 ++
 configs/T2080RDB_SPIFLASH_defconfig          |  4 ++
 configs/T2080RDB_revD_NAND_defconfig         |  4 ++
 configs/T2080RDB_revD_SDCARD_defconfig       |  4 ++
 configs/T2080RDB_revD_SPIFLASH_defconfig     |  4 ++
 configs/T4240RDB_SDCARD_defconfig            |  4 ++
 include/configs/P1010RDB.h                   | 12 ----
 include/configs/T102xRDB.h                   |  3 -
 include/configs/T104xRDB.h                   |  3 -
 include/configs/T208xQDS.h                   |  3 -
 include/configs/T208xRDB.h                   |  3 -
 include/configs/T4240RDB.h                   |  3 -
 include/configs/p1_p2_rdb_pc.h               | 14 -----
 63 files changed, 270 insertions(+), 71 deletions(-)

diff --git a/README b/README
index 360d357bfbc1..7b4067f8f249 100644
--- a/README
+++ b/README
@@ -1625,10 +1625,6 @@ The following options need to be configured:
 		CONFIG_SPL
 		Enable building of SPL globally.
 
-		CONFIG_SPL_RELOC_TEXT_BASE
-		Address to relocate to.  If unspecified, this is equal to
-		CONFIG_SPL_TEXT_BASE (i.e. no relocation is done).
-
 		CONFIG_SPL_BSS_START_ADDR
 		Link address for the BSS within the SPL binary.
 
@@ -1642,15 +1638,6 @@ The following options need to be configured:
 		consider that a completely unreadable NAND block is bad,
 		and thus should be skipped silently.
 
-		CONFIG_SPL_RELOC_STACK
-		Adress of the start of the stack SPL will use after
-		relocation.  If unspecified, this is equal to
-		CONFIG_SYS_SPL_MALLOC_START
-		Starting address of the malloc pool used in SPL.
-		When this option is set the full malloc is used in SPL and
-		it is set up by spl_init() and before that, the simple malloc()
-		can be used if CONFIG_SYS_MALLOC_F is defined.
-
 		CONFIG_SYS_SPL_MALLOC_SIZE
 		The size of the malloc pool used in SPL.
 
diff --git a/board/freescale/p1010rdb/spl.c b/board/freescale/p1010rdb/spl.c
index 7eaa2047facb..a78a9143a01d 100644
--- a/board/freescale/p1010rdb/spl.c
+++ b/board/freescale/p1010rdb/spl.c
@@ -57,7 +57,7 @@ void board_init_f(ulong bootflag)
 	/* NOTE - code has to be copied out of NAND buffer before
 	 * other blocks can be read.
 	*/
-	relocate_code(CONFIG_SPL_RELOC_STACK, 0, CONFIG_SPL_RELOC_TEXT_BASE);
+	relocate_code(CONFIG_VAL(RELOC_STACK), 0, CONFIG_SPL_RELOC_TEXT_BASE);
 }
 
 void board_init_r(gd_t *gd, ulong dest_addr)
@@ -73,8 +73,8 @@ void board_init_r(gd_t *gd, ulong dest_addr)
 
 	arch_cpu_init();
 	get_clocks();
-	mem_malloc_init(CONFIG_SPL_RELOC_MALLOC_ADDR,
-			CONFIG_SPL_RELOC_MALLOC_SIZE);
+	mem_malloc_init(CONFIG_VAL(RELOC_MALLOC_ADDR),
+			CONFIG_VAL(RELOC_MALLOC_SIZE));
 	gd->flags |= GD_FLG_FULL_MALLOC_INIT;
 
 #ifndef CONFIG_SPL_NAND_BOOT
diff --git a/board/freescale/p1_p2_rdb_pc/spl.c b/board/freescale/p1_p2_rdb_pc/spl.c
index 22156f2824ec..580972d800a7 100644
--- a/board/freescale/p1_p2_rdb_pc/spl.c
+++ b/board/freescale/p1_p2_rdb_pc/spl.c
@@ -63,7 +63,7 @@ void board_init_f(ulong bootflag)
 	/* NOTE - code has to be copied out of NAND buffer before
 	 * other blocks can be read.
 	 */
-	relocate_code(CONFIG_SPL_RELOC_STACK, 0, CONFIG_SPL_RELOC_TEXT_BASE);
+	relocate_code(CONFIG_VAL(RELOC_STACK), 0, CONFIG_SPL_RELOC_TEXT_BASE);
 }
 
 void board_init_r(gd_t *gd, ulong dest_addr)
@@ -79,8 +79,8 @@ void board_init_r(gd_t *gd, ulong dest_addr)
 
 	arch_cpu_init();
 	get_clocks();
-	mem_malloc_init(CONFIG_SPL_RELOC_MALLOC_ADDR,
-			CONFIG_SPL_RELOC_MALLOC_SIZE);
+	mem_malloc_init(CONFIG_VAL(RELOC_MALLOC_ADDR),
+			CONFIG_VAL(RELOC_MALLOC_SIZE));
 	gd->flags |= GD_FLG_FULL_MALLOC_INIT;
 
 #ifdef CONFIG_SPL_ENV_SUPPORT
diff --git a/common/spl/Kconfig b/common/spl/Kconfig
index 8f3985d612f9..304fd0e697cf 100644
--- a/common/spl/Kconfig
+++ b/common/spl/Kconfig
@@ -219,8 +219,8 @@ config TPL_SYS_CCSR_DO_NOT_RELOCATE
 
 endmenu
 
-menu "PowerPC SPL specific options"
-	depends on PPC && (SUPPORT_SPL && !SPL_FRAMEWORK)
+menu "PowerPC SPL / TPL specific options"
+	depends on PPC && (SPL && !SPL_FRAMEWORK)
 
 config SPL_INIT_MINIMAL
 	bool "Arch init code will be built for a very small image"
@@ -231,6 +231,61 @@ config SPL_FLUSH_IMAGE
 config SPL_SKIP_RELOCATE
 	bool "Skip relocating SPL"
 
+config SPL_RELOC_TEXT_BASE
+	hex "Address to relocate SPL to"
+	default SPL_TEXT_BASE
+	help
+	  If unspecified, this is equal to CONFIG_SPL_TEXT_BASE (i.e. no
+	  relocation is done).
+
+config SPL_RELOC_STACK
+	hex "Address of the start of the stack SPL will use after relocation."
+	help
+	  If unspecified, this is equal to CONFIG_SYS_SPL_MALLOC_START.  Starting
+	  address of the malloc pool used in SPL.  When this option is set the full
+	  malloc is used in SPL and it is set up by spl_init() and before that, the
+	  simple malloc() can be used if CONFIG_SYS_MALLOC_F is defined.
+
+config SPL_RELOC_MALLOC
+	bool "SPL has malloc pool after relocation"
+
+config SPL_RELOC_MALLOC_ADDR
+	hex "Address of malloc pool in SPL"
+	depends on SPL_RELOC_MALLOC
+
+config SPL_RELOC_MALLOC_SIZE
+	hex "Size of malloc pool in SPL"
+	depends on SPL_RELOC_MALLOC
+
+config TPL_RELOC_TEXT_BASE
+	hex "Address to relocate TPL to"
+	depends on TPL
+	default TPL_TEXT_BASE
+	help
+	  If unspecified, this is equal to CONFIG_TPL_TEXT_BASE (i.e. no
+	  relocation is done).
+
+config TPL_RELOC_STACK
+	hex "Address of the start of the stack TPL will use after relocation."
+	depends on TPL
+	help
+	  If unspecified, this is equal to CONFIG_SYS_TPL_MALLOC_START.  Starting
+	  address of the malloc pool used in TPL.  When this option is set the full
+	  malloc is used in TPL and it is set up by spl_init() and before that, the
+	  simple malloc() can be used if CONFIG_SYS_MALLOC_F is defined.
+
+config TPL_RELOC_MALLOC
+	bool "TPL has malloc pool after relocation"
+	depends on TPL
+
+config TPL_RELOC_MALLOC_ADDR
+	hex "Address of malloc pool in TPL"
+	depends on TPL_RELOC_MALLOC
+
+config TPL_RELOC_MALLOC_SIZE
+	hex "Size of malloc pool in TPL"
+	depends on TPL_RELOC_MALLOC
+
 endmenu
 
 config HANDOFF
diff --git a/configs/P1010RDB-PA_36BIT_NAND_defconfig b/configs/P1010RDB-PA_36BIT_NAND_defconfig
index f6426f0c171c..22b43801a776 100644
--- a/configs/P1010RDB-PA_36BIT_NAND_defconfig
+++ b/configs/P1010RDB-PA_36BIT_NAND_defconfig
@@ -33,6 +33,13 @@ CONFIG_SPL_NAND_BOOT=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_INIT_MINIMAL=y
 CONFIG_SPL_FLUSH_IMAGE=y
+CONFIG_SPL_RELOC_TEXT_BASE=0xd003d000
+CONFIG_SPL_RELOC_STACK=0xd003fff0
+CONFIG_TPL_RELOC_TEXT_BASE=0xd0001000
+CONFIG_TPL_RELOC_STACK=0xd0030000
+CONFIG_TPL_RELOC_MALLOC=y
+CONFIG_TPL_RELOC_MALLOC_ADDR=0xd0034000
+CONFIG_TPL_RELOC_MALLOC_SIZE=0xc000
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_TPL=y
 CONFIG_TPL_MAX_SIZE=0x20000
diff --git a/configs/P1010RDB-PA_36BIT_NOR_defconfig b/configs/P1010RDB-PA_36BIT_NOR_defconfig
index eb026fcb4b5f..934135ceccd3 100644
--- a/configs/P1010RDB-PA_36BIT_NOR_defconfig
+++ b/configs/P1010RDB-PA_36BIT_NOR_defconfig
@@ -22,7 +22,6 @@ CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_BOARD_EARLY_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x18000
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
-CONFIG_SPL_FLUSH_IMAGE=y
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_PBSIZE=276
 CONFIG_CMD_IMLS=y
diff --git a/configs/P1010RDB-PA_36BIT_SDCARD_defconfig b/configs/P1010RDB-PA_36BIT_SDCARD_defconfig
index 57ad4b4485a3..7406cb29b03f 100644
--- a/configs/P1010RDB-PA_36BIT_SDCARD_defconfig
+++ b/configs/P1010RDB-PA_36BIT_SDCARD_defconfig
@@ -30,6 +30,11 @@ CONFIG_SPL_MAX_SIZE=0x18000
 CONFIG_SPL_MMC_BOOT=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
+CONFIG_SPL_RELOC_TEXT_BASE=0xd0001000
+CONFIG_SPL_RELOC_STACK=0xd001c000
+CONFIG_SPL_RELOC_MALLOC=y
+CONFIG_SPL_RELOC_MALLOC_ADDR=0xd0020000
+CONFIG_SPL_RELOC_MALLOC_SIZE=0x20000
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
diff --git a/configs/P1010RDB-PA_36BIT_SPIFLASH_defconfig b/configs/P1010RDB-PA_36BIT_SPIFLASH_defconfig
index ce5f1fd27628..41b2f2f58b17 100644
--- a/configs/P1010RDB-PA_36BIT_SPIFLASH_defconfig
+++ b/configs/P1010RDB-PA_36BIT_SPIFLASH_defconfig
@@ -33,6 +33,11 @@ CONFIG_SPL_MAX_SIZE=0x18000
 CONFIG_SPL_SPI_BOOT=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
+CONFIG_SPL_RELOC_TEXT_BASE=0xd0001000
+CONFIG_SPL_RELOC_STACK=0xd001c000
+CONFIG_SPL_RELOC_MALLOC=y
+CONFIG_SPL_RELOC_MALLOC_ADDR=0xd0020000
+CONFIG_SPL_RELOC_MALLOC_SIZE=0x20000
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
diff --git a/configs/P1010RDB-PA_NAND_defconfig b/configs/P1010RDB-PA_NAND_defconfig
index fca971bcf43f..993a1f8d54a1 100644
--- a/configs/P1010RDB-PA_NAND_defconfig
+++ b/configs/P1010RDB-PA_NAND_defconfig
@@ -32,6 +32,13 @@ CONFIG_SPL_NAND_BOOT=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_INIT_MINIMAL=y
 CONFIG_SPL_FLUSH_IMAGE=y
+CONFIG_SPL_RELOC_TEXT_BASE=0xd003d000
+CONFIG_SPL_RELOC_STACK=0xd003fff0
+CONFIG_TPL_RELOC_TEXT_BASE=0xd0001000
+CONFIG_TPL_RELOC_STACK=0xd0030000
+CONFIG_TPL_RELOC_MALLOC=y
+CONFIG_TPL_RELOC_MALLOC_ADDR=0xd0034000
+CONFIG_TPL_RELOC_MALLOC_SIZE=0xc000
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_TPL=y
 CONFIG_TPL_MAX_SIZE=0x20000
diff --git a/configs/P1010RDB-PA_NOR_defconfig b/configs/P1010RDB-PA_NOR_defconfig
index 6f1214d92282..24c54f0eaf29 100644
--- a/configs/P1010RDB-PA_NOR_defconfig
+++ b/configs/P1010RDB-PA_NOR_defconfig
@@ -21,7 +21,6 @@ CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_BOARD_EARLY_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x18000
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
-CONFIG_SPL_FLUSH_IMAGE=y
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_PBSIZE=276
 CONFIG_CMD_IMLS=y
diff --git a/configs/P1010RDB-PA_SDCARD_defconfig b/configs/P1010RDB-PA_SDCARD_defconfig
index 44d3512db221..058c87d77b38 100644
--- a/configs/P1010RDB-PA_SDCARD_defconfig
+++ b/configs/P1010RDB-PA_SDCARD_defconfig
@@ -29,6 +29,11 @@ CONFIG_SPL_MAX_SIZE=0x18000
 CONFIG_SPL_MMC_BOOT=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
+CONFIG_SPL_RELOC_TEXT_BASE=0xd0001000
+CONFIG_SPL_RELOC_STACK=0xd001c000
+CONFIG_SPL_RELOC_MALLOC=y
+CONFIG_SPL_RELOC_MALLOC_ADDR=0xd0020000
+CONFIG_SPL_RELOC_MALLOC_SIZE=0x20000
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
diff --git a/configs/P1010RDB-PA_SPIFLASH_defconfig b/configs/P1010RDB-PA_SPIFLASH_defconfig
index 5e6d0c234450..4c2d72605e22 100644
--- a/configs/P1010RDB-PA_SPIFLASH_defconfig
+++ b/configs/P1010RDB-PA_SPIFLASH_defconfig
@@ -32,6 +32,11 @@ CONFIG_SPL_MAX_SIZE=0x18000
 CONFIG_SPL_SPI_BOOT=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
+CONFIG_SPL_RELOC_TEXT_BASE=0xd0001000
+CONFIG_SPL_RELOC_STACK=0xd001c000
+CONFIG_SPL_RELOC_MALLOC=y
+CONFIG_SPL_RELOC_MALLOC_ADDR=0xd0020000
+CONFIG_SPL_RELOC_MALLOC_SIZE=0x20000
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
diff --git a/configs/P1010RDB-PB_36BIT_NAND_defconfig b/configs/P1010RDB-PB_36BIT_NAND_defconfig
index 39391699499b..c38be8f14573 100644
--- a/configs/P1010RDB-PB_36BIT_NAND_defconfig
+++ b/configs/P1010RDB-PB_36BIT_NAND_defconfig
@@ -34,6 +34,13 @@ CONFIG_SPL_NAND_BOOT=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_INIT_MINIMAL=y
 CONFIG_SPL_FLUSH_IMAGE=y
+CONFIG_SPL_RELOC_TEXT_BASE=0xd003d000
+CONFIG_SPL_RELOC_STACK=0xd003fff0
+CONFIG_TPL_RELOC_TEXT_BASE=0xd0001000
+CONFIG_TPL_RELOC_STACK=0xd0030000
+CONFIG_TPL_RELOC_MALLOC=y
+CONFIG_TPL_RELOC_MALLOC_ADDR=0xd0034000
+CONFIG_TPL_RELOC_MALLOC_SIZE=0xc000
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_TPL=y
 CONFIG_TPL_MAX_SIZE=0x20000
diff --git a/configs/P1010RDB-PB_36BIT_NOR_defconfig b/configs/P1010RDB-PB_36BIT_NOR_defconfig
index fef75f261575..64a82ed4c6e2 100644
--- a/configs/P1010RDB-PB_36BIT_NOR_defconfig
+++ b/configs/P1010RDB-PB_36BIT_NOR_defconfig
@@ -23,7 +23,6 @@ CONFIG_BOARD_EARLY_INIT_R=y
 CONFIG_ID_EEPROM=y
 CONFIG_SPL_MAX_SIZE=0x18000
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
-CONFIG_SPL_FLUSH_IMAGE=y
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_PBSIZE=276
 CONFIG_CMD_IMLS=y
diff --git a/configs/P1010RDB-PB_36BIT_SDCARD_defconfig b/configs/P1010RDB-PB_36BIT_SDCARD_defconfig
index 4e5e92d96700..9e788ab9bf3a 100644
--- a/configs/P1010RDB-PB_36BIT_SDCARD_defconfig
+++ b/configs/P1010RDB-PB_36BIT_SDCARD_defconfig
@@ -31,6 +31,11 @@ CONFIG_SPL_MAX_SIZE=0x18000
 CONFIG_SPL_MMC_BOOT=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
+CONFIG_SPL_RELOC_TEXT_BASE=0xd0001000
+CONFIG_SPL_RELOC_STACK=0xd001c000
+CONFIG_SPL_RELOC_MALLOC=y
+CONFIG_SPL_RELOC_MALLOC_ADDR=0xd0020000
+CONFIG_SPL_RELOC_MALLOC_SIZE=0x20000
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
diff --git a/configs/P1010RDB-PB_36BIT_SPIFLASH_defconfig b/configs/P1010RDB-PB_36BIT_SPIFLASH_defconfig
index f67961d83151..a762f07c489b 100644
--- a/configs/P1010RDB-PB_36BIT_SPIFLASH_defconfig
+++ b/configs/P1010RDB-PB_36BIT_SPIFLASH_defconfig
@@ -34,6 +34,11 @@ CONFIG_SPL_MAX_SIZE=0x18000
 CONFIG_SPL_SPI_BOOT=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
+CONFIG_SPL_RELOC_TEXT_BASE=0xd0001000
+CONFIG_SPL_RELOC_STACK=0xd001c000
+CONFIG_SPL_RELOC_MALLOC=y
+CONFIG_SPL_RELOC_MALLOC_ADDR=0xd0020000
+CONFIG_SPL_RELOC_MALLOC_SIZE=0x20000
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
diff --git a/configs/P1010RDB-PB_NAND_defconfig b/configs/P1010RDB-PB_NAND_defconfig
index da189ce8569f..18ba32f2d1e2 100644
--- a/configs/P1010RDB-PB_NAND_defconfig
+++ b/configs/P1010RDB-PB_NAND_defconfig
@@ -33,6 +33,13 @@ CONFIG_SPL_NAND_BOOT=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_INIT_MINIMAL=y
 CONFIG_SPL_FLUSH_IMAGE=y
+CONFIG_SPL_RELOC_TEXT_BASE=0xd003d000
+CONFIG_SPL_RELOC_STACK=0xd003fff0
+CONFIG_TPL_RELOC_TEXT_BASE=0xd0001000
+CONFIG_TPL_RELOC_STACK=0xd0030000
+CONFIG_TPL_RELOC_MALLOC=y
+CONFIG_TPL_RELOC_MALLOC_ADDR=0xd0034000
+CONFIG_TPL_RELOC_MALLOC_SIZE=0xc000
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_TPL=y
 CONFIG_TPL_MAX_SIZE=0x20000
diff --git a/configs/P1010RDB-PB_NOR_defconfig b/configs/P1010RDB-PB_NOR_defconfig
index 95727680c6fd..1b63bfdc7846 100644
--- a/configs/P1010RDB-PB_NOR_defconfig
+++ b/configs/P1010RDB-PB_NOR_defconfig
@@ -22,7 +22,6 @@ CONFIG_BOARD_EARLY_INIT_R=y
 CONFIG_ID_EEPROM=y
 CONFIG_SPL_MAX_SIZE=0x18000
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
-CONFIG_SPL_FLUSH_IMAGE=y
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_PBSIZE=276
 CONFIG_CMD_IMLS=y
diff --git a/configs/P1010RDB-PB_SDCARD_defconfig b/configs/P1010RDB-PB_SDCARD_defconfig
index b5d097add8f9..1d18f1282d11 100644
--- a/configs/P1010RDB-PB_SDCARD_defconfig
+++ b/configs/P1010RDB-PB_SDCARD_defconfig
@@ -30,6 +30,11 @@ CONFIG_SPL_MAX_SIZE=0x18000
 CONFIG_SPL_MMC_BOOT=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
+CONFIG_SPL_RELOC_TEXT_BASE=0xd0001000
+CONFIG_SPL_RELOC_STACK=0xd001c000
+CONFIG_SPL_RELOC_MALLOC=y
+CONFIG_SPL_RELOC_MALLOC_ADDR=0xd0020000
+CONFIG_SPL_RELOC_MALLOC_SIZE=0x20000
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
diff --git a/configs/P1010RDB-PB_SPIFLASH_defconfig b/configs/P1010RDB-PB_SPIFLASH_defconfig
index 62d8e77745ce..1a36d6c5133f 100644
--- a/configs/P1010RDB-PB_SPIFLASH_defconfig
+++ b/configs/P1010RDB-PB_SPIFLASH_defconfig
@@ -33,6 +33,11 @@ CONFIG_SPL_MAX_SIZE=0x18000
 CONFIG_SPL_SPI_BOOT=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
+CONFIG_SPL_RELOC_TEXT_BASE=0xd0001000
+CONFIG_SPL_RELOC_STACK=0xd001c000
+CONFIG_SPL_RELOC_MALLOC=y
+CONFIG_SPL_RELOC_MALLOC_ADDR=0xd0020000
+CONFIG_SPL_RELOC_MALLOC_SIZE=0x20000
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
diff --git a/configs/P1020RDB-PC_36BIT_NAND_defconfig b/configs/P1020RDB-PC_36BIT_NAND_defconfig
index e9a7237a0805..54cd3d2b5ccb 100644
--- a/configs/P1020RDB-PC_36BIT_NAND_defconfig
+++ b/configs/P1020RDB-PC_36BIT_NAND_defconfig
@@ -34,6 +34,13 @@ CONFIG_SPL_NAND_BOOT=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_INIT_MINIMAL=y
 CONFIG_SPL_FLUSH_IMAGE=y
+CONFIG_SPL_RELOC_TEXT_BASE=0xf8fbe000
+CONFIG_SPL_RELOC_STACK=0xf8fbfff0
+CONFIG_TPL_RELOC_TEXT_BASE=0xf8f81000
+CONFIG_TPL_RELOC_STACK=0xf8fb0000
+CONFIG_TPL_RELOC_MALLOC=y
+CONFIG_TPL_RELOC_MALLOC_ADDR=0xf8fb4000
+CONFIG_TPL_RELOC_MALLOC_SIZE=0xc000
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_TPL=y
 CONFIG_TPL_MAX_SIZE=0x20000
diff --git a/configs/P1020RDB-PC_36BIT_SDCARD_defconfig b/configs/P1020RDB-PC_36BIT_SDCARD_defconfig
index 6c47be30b724..6a36f3ba9b27 100644
--- a/configs/P1020RDB-PC_36BIT_SDCARD_defconfig
+++ b/configs/P1020RDB-PC_36BIT_SDCARD_defconfig
@@ -32,6 +32,10 @@ CONFIG_SPL_MAX_SIZE=0x20000
 CONFIG_SPL_MMC_BOOT=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
+CONFIG_SPL_RELOC_STACK=0xf8f9d000
+CONFIG_SPL_RELOC_MALLOC=y
+CONFIG_SPL_RELOC_MALLOC_ADDR=0xf8fa5000
+CONFIG_SPL_RELOC_MALLOC_SIZE=0x1b000
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
diff --git a/configs/P1020RDB-PC_36BIT_SPIFLASH_defconfig b/configs/P1020RDB-PC_36BIT_SPIFLASH_defconfig
index 3b2e7ce1118d..e246a2190d0c 100644
--- a/configs/P1020RDB-PC_36BIT_SPIFLASH_defconfig
+++ b/configs/P1020RDB-PC_36BIT_SPIFLASH_defconfig
@@ -35,6 +35,10 @@ CONFIG_SPL_MAX_SIZE=0x20000
 CONFIG_SPL_SPI_BOOT=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
+CONFIG_SPL_RELOC_STACK=0xf8f9d000
+CONFIG_SPL_RELOC_MALLOC=y
+CONFIG_SPL_RELOC_MALLOC_ADDR=0xf8fa5000
+CONFIG_SPL_RELOC_MALLOC_SIZE=0x1b000
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
diff --git a/configs/P1020RDB-PC_36BIT_defconfig b/configs/P1020RDB-PC_36BIT_defconfig
index 9546fd137af5..7a0ddd958da5 100644
--- a/configs/P1020RDB-PC_36BIT_defconfig
+++ b/configs/P1020RDB-PC_36BIT_defconfig
@@ -24,7 +24,6 @@ CONFIG_BOARD_EARLY_INIT_R=y
 # CONFIG_MISC_INIT_R is not set
 CONFIG_SPL_MAX_SIZE=0x20000
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
-CONFIG_SPL_FLUSH_IMAGE=y
 CONFIG_HUSH_PARSER=y
 # CONFIG_AUTO_COMPLETE is not set
 CONFIG_SYS_PBSIZE=276
diff --git a/configs/P1020RDB-PC_NAND_defconfig b/configs/P1020RDB-PC_NAND_defconfig
index cf211c7f5d55..b49cdcb480dc 100644
--- a/configs/P1020RDB-PC_NAND_defconfig
+++ b/configs/P1020RDB-PC_NAND_defconfig
@@ -33,6 +33,13 @@ CONFIG_SPL_NAND_BOOT=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_INIT_MINIMAL=y
 CONFIG_SPL_FLUSH_IMAGE=y
+CONFIG_SPL_RELOC_TEXT_BASE=0xf8fbe000
+CONFIG_SPL_RELOC_STACK=0xf8fbfff0
+CONFIG_TPL_RELOC_TEXT_BASE=0xf8f81000
+CONFIG_TPL_RELOC_STACK=0xf8fb0000
+CONFIG_TPL_RELOC_MALLOC=y
+CONFIG_TPL_RELOC_MALLOC_ADDR=0xf8fb4000
+CONFIG_TPL_RELOC_MALLOC_SIZE=0xc000
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_TPL=y
 CONFIG_TPL_MAX_SIZE=0x20000
diff --git a/configs/P1020RDB-PC_SDCARD_defconfig b/configs/P1020RDB-PC_SDCARD_defconfig
index 55dc19d658aa..a86a406eb7c5 100644
--- a/configs/P1020RDB-PC_SDCARD_defconfig
+++ b/configs/P1020RDB-PC_SDCARD_defconfig
@@ -31,6 +31,10 @@ CONFIG_SPL_MAX_SIZE=0x20000
 CONFIG_SPL_MMC_BOOT=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
+CONFIG_SPL_RELOC_STACK=0xf8f9d000
+CONFIG_SPL_RELOC_MALLOC=y
+CONFIG_SPL_RELOC_MALLOC_ADDR=0xf8fa5000
+CONFIG_SPL_RELOC_MALLOC_SIZE=0x1b000
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
diff --git a/configs/P1020RDB-PC_SPIFLASH_defconfig b/configs/P1020RDB-PC_SPIFLASH_defconfig
index c4391ed5424c..4c9f1b4c81ed 100644
--- a/configs/P1020RDB-PC_SPIFLASH_defconfig
+++ b/configs/P1020RDB-PC_SPIFLASH_defconfig
@@ -34,6 +34,10 @@ CONFIG_SPL_MAX_SIZE=0x20000
 CONFIG_SPL_SPI_BOOT=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
+CONFIG_SPL_RELOC_STACK=0xf8f9d000
+CONFIG_SPL_RELOC_MALLOC=y
+CONFIG_SPL_RELOC_MALLOC_ADDR=0xf8fa5000
+CONFIG_SPL_RELOC_MALLOC_SIZE=0x1b000
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
diff --git a/configs/P1020RDB-PC_defconfig b/configs/P1020RDB-PC_defconfig
index ba8d2fe7eb99..ae8b802787bb 100644
--- a/configs/P1020RDB-PC_defconfig
+++ b/configs/P1020RDB-PC_defconfig
@@ -23,7 +23,6 @@ CONFIG_BOARD_EARLY_INIT_R=y
 # CONFIG_MISC_INIT_R is not set
 CONFIG_SPL_MAX_SIZE=0x20000
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
-CONFIG_SPL_FLUSH_IMAGE=y
 CONFIG_HUSH_PARSER=y
 # CONFIG_AUTO_COMPLETE is not set
 CONFIG_SYS_PBSIZE=276
diff --git a/configs/P1020RDB-PD_NAND_defconfig b/configs/P1020RDB-PD_NAND_defconfig
index c85ec6d25201..899d074537fa 100644
--- a/configs/P1020RDB-PD_NAND_defconfig
+++ b/configs/P1020RDB-PD_NAND_defconfig
@@ -33,6 +33,13 @@ CONFIG_SPL_NAND_BOOT=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_INIT_MINIMAL=y
 CONFIG_SPL_FLUSH_IMAGE=y
+CONFIG_SPL_RELOC_TEXT_BASE=0xf8fbe000
+CONFIG_SPL_RELOC_STACK=0xf8fbfff0
+CONFIG_TPL_RELOC_TEXT_BASE=0xf8f81000
+CONFIG_TPL_RELOC_STACK=0xf8fb0000
+CONFIG_TPL_RELOC_MALLOC=y
+CONFIG_TPL_RELOC_MALLOC_ADDR=0xf8fb4000
+CONFIG_TPL_RELOC_MALLOC_SIZE=0xc000
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_TPL=y
 CONFIG_TPL_MAX_SIZE=0x20000
diff --git a/configs/P1020RDB-PD_SDCARD_defconfig b/configs/P1020RDB-PD_SDCARD_defconfig
index a1bbb639257c..ea91b9e95d5d 100644
--- a/configs/P1020RDB-PD_SDCARD_defconfig
+++ b/configs/P1020RDB-PD_SDCARD_defconfig
@@ -31,6 +31,10 @@ CONFIG_SPL_MAX_SIZE=0x20000
 CONFIG_SPL_MMC_BOOT=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
+CONFIG_SPL_RELOC_STACK=0xf8f9d000
+CONFIG_SPL_RELOC_MALLOC=y
+CONFIG_SPL_RELOC_MALLOC_ADDR=0xf8fa5000
+CONFIG_SPL_RELOC_MALLOC_SIZE=0x1b000
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
diff --git a/configs/P1020RDB-PD_SPIFLASH_defconfig b/configs/P1020RDB-PD_SPIFLASH_defconfig
index e859587ccd3c..9351f00e5db5 100644
--- a/configs/P1020RDB-PD_SPIFLASH_defconfig
+++ b/configs/P1020RDB-PD_SPIFLASH_defconfig
@@ -34,6 +34,10 @@ CONFIG_SPL_MAX_SIZE=0x20000
 CONFIG_SPL_SPI_BOOT=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
+CONFIG_SPL_RELOC_STACK=0xf8f9d000
+CONFIG_SPL_RELOC_MALLOC=y
+CONFIG_SPL_RELOC_MALLOC_ADDR=0xf8fa5000
+CONFIG_SPL_RELOC_MALLOC_SIZE=0x1b000
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
diff --git a/configs/P1020RDB-PD_defconfig b/configs/P1020RDB-PD_defconfig
index 8ab9eda187cf..92b23a1c9f3b 100644
--- a/configs/P1020RDB-PD_defconfig
+++ b/configs/P1020RDB-PD_defconfig
@@ -23,7 +23,6 @@ CONFIG_BOARD_EARLY_INIT_R=y
 # CONFIG_MISC_INIT_R is not set
 CONFIG_SPL_MAX_SIZE=0x20000
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
-CONFIG_SPL_FLUSH_IMAGE=y
 CONFIG_HUSH_PARSER=y
 # CONFIG_AUTO_COMPLETE is not set
 CONFIG_SYS_PBSIZE=276
diff --git a/configs/P2020RDB-PC_36BIT_NAND_defconfig b/configs/P2020RDB-PC_36BIT_NAND_defconfig
index eefc72e49874..ad6c72c23c52 100644
--- a/configs/P2020RDB-PC_36BIT_NAND_defconfig
+++ b/configs/P2020RDB-PC_36BIT_NAND_defconfig
@@ -34,6 +34,13 @@ CONFIG_SPL_NAND_BOOT=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_INIT_MINIMAL=y
 CONFIG_SPL_FLUSH_IMAGE=y
+CONFIG_SPL_RELOC_TEXT_BASE=0xf8ffe000
+CONFIG_SPL_RELOC_STACK=0xf8fffff0
+CONFIG_TPL_RELOC_TEXT_BASE=0xf8f81000
+CONFIG_TPL_RELOC_STACK=0xf8fb0000
+CONFIG_TPL_RELOC_MALLOC=y
+CONFIG_TPL_RELOC_MALLOC_ADDR=0xf8fb4000
+CONFIG_TPL_RELOC_MALLOC_SIZE=0xc000
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_TPL=y
 CONFIG_TPL_MAX_SIZE=0x20000
diff --git a/configs/P2020RDB-PC_36BIT_SDCARD_defconfig b/configs/P2020RDB-PC_36BIT_SDCARD_defconfig
index 5ac2f8c566d4..d4f82f16f586 100644
--- a/configs/P2020RDB-PC_36BIT_SDCARD_defconfig
+++ b/configs/P2020RDB-PC_36BIT_SDCARD_defconfig
@@ -32,6 +32,10 @@ CONFIG_SPL_MAX_SIZE=0x20000
 CONFIG_SPL_MMC_BOOT=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
+CONFIG_SPL_RELOC_STACK=0xf8f9d000
+CONFIG_SPL_RELOC_MALLOC=y
+CONFIG_SPL_RELOC_MALLOC_ADDR=0xf8fa5000
+CONFIG_SPL_RELOC_MALLOC_SIZE=0x5b000
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
diff --git a/configs/P2020RDB-PC_36BIT_SPIFLASH_defconfig b/configs/P2020RDB-PC_36BIT_SPIFLASH_defconfig
index 6150b84d11b7..7a198e01785f 100644
--- a/configs/P2020RDB-PC_36BIT_SPIFLASH_defconfig
+++ b/configs/P2020RDB-PC_36BIT_SPIFLASH_defconfig
@@ -35,6 +35,10 @@ CONFIG_SPL_MAX_SIZE=0x20000
 CONFIG_SPL_SPI_BOOT=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
+CONFIG_SPL_RELOC_STACK=0xf8f9d000
+CONFIG_SPL_RELOC_MALLOC=y
+CONFIG_SPL_RELOC_MALLOC_ADDR=0xf8fa5000
+CONFIG_SPL_RELOC_MALLOC_SIZE=0x5b000
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
diff --git a/configs/P2020RDB-PC_36BIT_defconfig b/configs/P2020RDB-PC_36BIT_defconfig
index be9896fbf583..b2f825e5186a 100644
--- a/configs/P2020RDB-PC_36BIT_defconfig
+++ b/configs/P2020RDB-PC_36BIT_defconfig
@@ -24,7 +24,6 @@ CONFIG_BOARD_EARLY_INIT_R=y
 # CONFIG_MISC_INIT_R is not set
 CONFIG_SPL_MAX_SIZE=0x20000
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
-CONFIG_SPL_FLUSH_IMAGE=y
 CONFIG_HUSH_PARSER=y
 # CONFIG_AUTO_COMPLETE is not set
 CONFIG_SYS_PBSIZE=276
diff --git a/configs/P2020RDB-PC_NAND_defconfig b/configs/P2020RDB-PC_NAND_defconfig
index dc94e25375cb..f5bd7015fb54 100644
--- a/configs/P2020RDB-PC_NAND_defconfig
+++ b/configs/P2020RDB-PC_NAND_defconfig
@@ -33,6 +33,13 @@ CONFIG_SPL_NAND_BOOT=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_INIT_MINIMAL=y
 CONFIG_SPL_FLUSH_IMAGE=y
+CONFIG_SPL_RELOC_TEXT_BASE=0xf8ffe000
+CONFIG_SPL_RELOC_STACK=0xf8fffff0
+CONFIG_TPL_RELOC_TEXT_BASE=0xf8f81000
+CONFIG_TPL_RELOC_STACK=0xf8fb0000
+CONFIG_TPL_RELOC_MALLOC=y
+CONFIG_TPL_RELOC_MALLOC_ADDR=0xf8fb4000
+CONFIG_TPL_RELOC_MALLOC_SIZE=0xc000
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_TPL=y
 CONFIG_TPL_MAX_SIZE=0x20000
diff --git a/configs/P2020RDB-PC_SDCARD_defconfig b/configs/P2020RDB-PC_SDCARD_defconfig
index 4f33a697cda0..0e1eb82a00ee 100644
--- a/configs/P2020RDB-PC_SDCARD_defconfig
+++ b/configs/P2020RDB-PC_SDCARD_defconfig
@@ -31,6 +31,10 @@ CONFIG_SPL_MAX_SIZE=0x20000
 CONFIG_SPL_MMC_BOOT=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
+CONFIG_SPL_RELOC_STACK=0xf8f9d000
+CONFIG_SPL_RELOC_MALLOC=y
+CONFIG_SPL_RELOC_MALLOC_ADDR=0xf8fa5000
+CONFIG_SPL_RELOC_MALLOC_SIZE=0x5b000
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
diff --git a/configs/P2020RDB-PC_SPIFLASH_defconfig b/configs/P2020RDB-PC_SPIFLASH_defconfig
index e63cd161ddba..5ffda90dd3bf 100644
--- a/configs/P2020RDB-PC_SPIFLASH_defconfig
+++ b/configs/P2020RDB-PC_SPIFLASH_defconfig
@@ -34,6 +34,10 @@ CONFIG_SPL_MAX_SIZE=0x20000
 CONFIG_SPL_SPI_BOOT=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
+CONFIG_SPL_RELOC_STACK=0xf8f9d000
+CONFIG_SPL_RELOC_MALLOC=y
+CONFIG_SPL_RELOC_MALLOC_ADDR=0xf8fa5000
+CONFIG_SPL_RELOC_MALLOC_SIZE=0x5b000
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
diff --git a/configs/P2020RDB-PC_defconfig b/configs/P2020RDB-PC_defconfig
index d016763313f9..114491ae2192 100644
--- a/configs/P2020RDB-PC_defconfig
+++ b/configs/P2020RDB-PC_defconfig
@@ -23,7 +23,6 @@ CONFIG_BOARD_EARLY_INIT_R=y
 # CONFIG_MISC_INIT_R is not set
 CONFIG_SPL_MAX_SIZE=0x20000
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
-CONFIG_SPL_FLUSH_IMAGE=y
 CONFIG_HUSH_PARSER=y
 # CONFIG_AUTO_COMPLETE is not set
 CONFIG_SYS_PBSIZE=276
diff --git a/configs/T1024RDB_NAND_defconfig b/configs/T1024RDB_NAND_defconfig
index ae8828d7e6da..93dc0c1909f0 100644
--- a/configs/T1024RDB_NAND_defconfig
+++ b/configs/T1024RDB_NAND_defconfig
@@ -39,6 +39,10 @@ CONFIG_SPL_FSL_PBL=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
 CONFIG_SPL_SKIP_RELOCATE=y
+CONFIG_SPL_RELOC_STACK=0xfffd8000
+CONFIG_SPL_RELOC_MALLOC=y
+CONFIG_SPL_RELOC_MALLOC_ADDR=0xfffcb000
+CONFIG_SPL_RELOC_MALLOC_SIZE=0x7800
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
diff --git a/configs/T1024RDB_SDCARD_defconfig b/configs/T1024RDB_SDCARD_defconfig
index 8ac0e4a5dacb..dddf74262e35 100644
--- a/configs/T1024RDB_SDCARD_defconfig
+++ b/configs/T1024RDB_SDCARD_defconfig
@@ -40,6 +40,10 @@ CONFIG_SPL_FSL_PBL=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
 CONFIG_SPL_SKIP_RELOCATE=y
+CONFIG_SPL_RELOC_STACK=0xfffd8000
+CONFIG_SPL_RELOC_MALLOC=y
+CONFIG_SPL_RELOC_MALLOC_ADDR=0xfffcb000
+CONFIG_SPL_RELOC_MALLOC_SIZE=0x7800
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
diff --git a/configs/T1024RDB_SPIFLASH_defconfig b/configs/T1024RDB_SPIFLASH_defconfig
index ebe814f38132..d8e41241ee6d 100644
--- a/configs/T1024RDB_SPIFLASH_defconfig
+++ b/configs/T1024RDB_SPIFLASH_defconfig
@@ -43,6 +43,10 @@ CONFIG_SPL_FSL_PBL=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
 CONFIG_SPL_SKIP_RELOCATE=y
+CONFIG_SPL_RELOC_STACK=0xfffd8000
+CONFIG_SPL_RELOC_MALLOC=y
+CONFIG_SPL_RELOC_MALLOC_ADDR=0xfffcb000
+CONFIG_SPL_RELOC_MALLOC_SIZE=0x7800
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
diff --git a/configs/T1042D4RDB_NAND_defconfig b/configs/T1042D4RDB_NAND_defconfig
index e12bb9f15906..ccb1a3343cad 100644
--- a/configs/T1042D4RDB_NAND_defconfig
+++ b/configs/T1042D4RDB_NAND_defconfig
@@ -35,6 +35,10 @@ CONFIG_SPL_FSL_PBL=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
 CONFIG_SPL_SKIP_RELOCATE=y
+CONFIG_SPL_RELOC_STACK=0xfffd8000
+CONFIG_SPL_RELOC_MALLOC=y
+CONFIG_SPL_RELOC_MALLOC_ADDR=0xfffcb000
+CONFIG_SPL_RELOC_MALLOC_SIZE=0x7800
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
diff --git a/configs/T1042D4RDB_SDCARD_defconfig b/configs/T1042D4RDB_SDCARD_defconfig
index 01a6e97afc42..4b3962c7de8e 100644
--- a/configs/T1042D4RDB_SDCARD_defconfig
+++ b/configs/T1042D4RDB_SDCARD_defconfig
@@ -36,6 +36,10 @@ CONFIG_SPL_FSL_PBL=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
 CONFIG_SPL_SKIP_RELOCATE=y
+CONFIG_SPL_RELOC_STACK=0xfffd8000
+CONFIG_SPL_RELOC_MALLOC=y
+CONFIG_SPL_RELOC_MALLOC_ADDR=0xfffcb000
+CONFIG_SPL_RELOC_MALLOC_SIZE=0x7800
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
diff --git a/configs/T1042D4RDB_SPIFLASH_defconfig b/configs/T1042D4RDB_SPIFLASH_defconfig
index ce334b12a99d..a9668c562de9 100644
--- a/configs/T1042D4RDB_SPIFLASH_defconfig
+++ b/configs/T1042D4RDB_SPIFLASH_defconfig
@@ -39,6 +39,10 @@ CONFIG_SPL_FSL_PBL=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
 CONFIG_SPL_SKIP_RELOCATE=y
+CONFIG_SPL_RELOC_STACK=0xfffd8000
+CONFIG_SPL_RELOC_MALLOC=y
+CONFIG_SPL_RELOC_MALLOC_ADDR=0xfffcb000
+CONFIG_SPL_RELOC_MALLOC_SIZE=0x7800
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
diff --git a/configs/T2080QDS_NAND_defconfig b/configs/T2080QDS_NAND_defconfig
index 67f84d2b809d..e8b83ed127de 100644
--- a/configs/T2080QDS_NAND_defconfig
+++ b/configs/T2080QDS_NAND_defconfig
@@ -40,6 +40,10 @@ CONFIG_SPL_FSL_PBL=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
 CONFIG_SPL_SKIP_RELOCATE=y
+CONFIG_SPL_RELOC_STACK=0xfffd8000
+CONFIG_SPL_RELOC_MALLOC=y
+CONFIG_SPL_RELOC_MALLOC_ADDR=0xfffcb000
+CONFIG_SPL_RELOC_MALLOC_SIZE=0xc800
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
diff --git a/configs/T2080QDS_SDCARD_defconfig b/configs/T2080QDS_SDCARD_defconfig
index 5cfdb5659dcc..1e9b58622658 100644
--- a/configs/T2080QDS_SDCARD_defconfig
+++ b/configs/T2080QDS_SDCARD_defconfig
@@ -41,6 +41,10 @@ CONFIG_SPL_FSL_PBL=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
 CONFIG_SPL_SKIP_RELOCATE=y
+CONFIG_SPL_RELOC_STACK=0xfffd8000
+CONFIG_SPL_RELOC_MALLOC=y
+CONFIG_SPL_RELOC_MALLOC_ADDR=0xfffcb000
+CONFIG_SPL_RELOC_MALLOC_SIZE=0xc800
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
diff --git a/configs/T2080QDS_SPIFLASH_defconfig b/configs/T2080QDS_SPIFLASH_defconfig
index 99889cf6df19..2967c4e9806a 100644
--- a/configs/T2080QDS_SPIFLASH_defconfig
+++ b/configs/T2080QDS_SPIFLASH_defconfig
@@ -44,6 +44,10 @@ CONFIG_SPL_FSL_PBL=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
 CONFIG_SPL_SKIP_RELOCATE=y
+CONFIG_SPL_RELOC_STACK=0xfffd8000
+CONFIG_SPL_RELOC_MALLOC=y
+CONFIG_SPL_RELOC_MALLOC_ADDR=0xfffcb000
+CONFIG_SPL_RELOC_MALLOC_SIZE=0xc800
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
diff --git a/configs/T2080RDB_NAND_defconfig b/configs/T2080RDB_NAND_defconfig
index 0046bd386723..dd5a3dee4d82 100644
--- a/configs/T2080RDB_NAND_defconfig
+++ b/configs/T2080RDB_NAND_defconfig
@@ -38,6 +38,10 @@ CONFIG_SPL_FSL_PBL=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
 CONFIG_SPL_SKIP_RELOCATE=y
+CONFIG_SPL_RELOC_STACK=0xfffd8000
+CONFIG_SPL_RELOC_MALLOC=y
+CONFIG_SPL_RELOC_MALLOC_ADDR=0xfffcb000
+CONFIG_SPL_RELOC_MALLOC_SIZE=0xc800
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
diff --git a/configs/T2080RDB_SDCARD_defconfig b/configs/T2080RDB_SDCARD_defconfig
index 0d09be36c85c..2c35b80c0c6c 100644
--- a/configs/T2080RDB_SDCARD_defconfig
+++ b/configs/T2080RDB_SDCARD_defconfig
@@ -39,6 +39,10 @@ CONFIG_SPL_FSL_PBL=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
 CONFIG_SPL_SKIP_RELOCATE=y
+CONFIG_SPL_RELOC_STACK=0xfffd8000
+CONFIG_SPL_RELOC_MALLOC=y
+CONFIG_SPL_RELOC_MALLOC_ADDR=0xfffcb000
+CONFIG_SPL_RELOC_MALLOC_SIZE=0xc800
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
diff --git a/configs/T2080RDB_SPIFLASH_defconfig b/configs/T2080RDB_SPIFLASH_defconfig
index 5cbfc55a5a55..21e0be3a03ac 100644
--- a/configs/T2080RDB_SPIFLASH_defconfig
+++ b/configs/T2080RDB_SPIFLASH_defconfig
@@ -42,6 +42,10 @@ CONFIG_SPL_FSL_PBL=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
 CONFIG_SPL_SKIP_RELOCATE=y
+CONFIG_SPL_RELOC_STACK=0xfffd8000
+CONFIG_SPL_RELOC_MALLOC=y
+CONFIG_SPL_RELOC_MALLOC_ADDR=0xfffcb000
+CONFIG_SPL_RELOC_MALLOC_SIZE=0xc800
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
diff --git a/configs/T2080RDB_revD_NAND_defconfig b/configs/T2080RDB_revD_NAND_defconfig
index bc307fa59a3a..d2b8df2dbc10 100644
--- a/configs/T2080RDB_revD_NAND_defconfig
+++ b/configs/T2080RDB_revD_NAND_defconfig
@@ -39,6 +39,10 @@ CONFIG_SPL_FSL_PBL=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
 CONFIG_SPL_SKIP_RELOCATE=y
+CONFIG_SPL_RELOC_STACK=0xfffd8000
+CONFIG_SPL_RELOC_MALLOC=y
+CONFIG_SPL_RELOC_MALLOC_ADDR=0xfffcb000
+CONFIG_SPL_RELOC_MALLOC_SIZE=0xc800
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
diff --git a/configs/T2080RDB_revD_SDCARD_defconfig b/configs/T2080RDB_revD_SDCARD_defconfig
index e0456dee0777..24dea1ae9af6 100644
--- a/configs/T2080RDB_revD_SDCARD_defconfig
+++ b/configs/T2080RDB_revD_SDCARD_defconfig
@@ -40,6 +40,10 @@ CONFIG_SPL_FSL_PBL=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
 CONFIG_SPL_SKIP_RELOCATE=y
+CONFIG_SPL_RELOC_STACK=0xfffd8000
+CONFIG_SPL_RELOC_MALLOC=y
+CONFIG_SPL_RELOC_MALLOC_ADDR=0xfffcb000
+CONFIG_SPL_RELOC_MALLOC_SIZE=0xc800
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
diff --git a/configs/T2080RDB_revD_SPIFLASH_defconfig b/configs/T2080RDB_revD_SPIFLASH_defconfig
index 4bef18e0f920..a5c397dc4dd9 100644
--- a/configs/T2080RDB_revD_SPIFLASH_defconfig
+++ b/configs/T2080RDB_revD_SPIFLASH_defconfig
@@ -43,6 +43,10 @@ CONFIG_SPL_FSL_PBL=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
 CONFIG_SPL_SKIP_RELOCATE=y
+CONFIG_SPL_RELOC_STACK=0xfffd8000
+CONFIG_SPL_RELOC_MALLOC=y
+CONFIG_SPL_RELOC_MALLOC_ADDR=0xfffcb000
+CONFIG_SPL_RELOC_MALLOC_SIZE=0xc800
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
diff --git a/configs/T4240RDB_SDCARD_defconfig b/configs/T4240RDB_SDCARD_defconfig
index f68d98c7eeec..56eb03b0c029 100644
--- a/configs/T4240RDB_SDCARD_defconfig
+++ b/configs/T4240RDB_SDCARD_defconfig
@@ -37,6 +37,10 @@ CONFIG_SPL_FSL_PBL=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
 CONFIG_SPL_SKIP_RELOCATE=y
+CONFIG_SPL_RELOC_STACK=0xfffd8000
+CONFIG_SPL_RELOC_MALLOC=y
+CONFIG_SPL_RELOC_MALLOC_ADDR=0xfffcb000
+CONFIG_SPL_RELOC_MALLOC_SIZE=0xc800
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
diff --git a/include/configs/P1010RDB.h b/include/configs/P1010RDB.h
index ead535566157..13f8360a5b48 100644
--- a/include/configs/P1010RDB.h
+++ b/include/configs/P1010RDB.h
@@ -43,8 +43,6 @@
 #ifdef CONFIG_NXP_ESBC
 #define CONFIG_SPL_TARGET		"u-boot-with-spl.bin"
 
-#define CONFIG_SPL_RELOC_TEXT_BASE	0x00100000
-#define CONFIG_SPL_RELOC_STACK		0x00100000
 #define CONFIG_SYS_NAND_U_BOOT_SIZE	((768 << 10) - 0x2000)
 #define CONFIG_SYS_NAND_U_BOOT_DST	(0x00200000 - CONFIG_SPL_MAX_SIZE)
 #define CONFIG_SYS_NAND_U_BOOT_START	0x00200000
@@ -392,10 +390,6 @@ extern unsigned long get_sdram_size(void);
 #define CONFIG_SYS_INIT_L2_ADDR_PHYS	CONFIG_SYS_INIT_L2_ADDR
 #define CONFIG_SYS_L2_SIZE		(256 << 10)
 #define CONFIG_SYS_INIT_L2_END	(CONFIG_SYS_INIT_L2_ADDR + CONFIG_SYS_L2_SIZE)
-#define CONFIG_SPL_RELOC_TEXT_BASE	0xD0001000
-#define CONFIG_SPL_RELOC_STACK		(CONFIG_SYS_INIT_L2_ADDR + 112 * 1024)
-#define CONFIG_SPL_RELOC_MALLOC_ADDR	(CONFIG_SYS_INIT_L2_ADDR + 128 * 1024)
-#define CONFIG_SPL_RELOC_MALLOC_SIZE	(128 << 10)
 #define CONFIG_SPL_GD_ADDR		(CONFIG_SYS_INIT_L2_ADDR + 96 * 1024)
 #elif defined(CONFIG_MTD_RAW_NAND)
 #ifdef CONFIG_TPL_BUILD
@@ -403,18 +397,12 @@ extern unsigned long get_sdram_size(void);
 #define CONFIG_SYS_INIT_L2_ADDR_PHYS	CONFIG_SYS_INIT_L2_ADDR
 #define CONFIG_SYS_L2_SIZE		(256 << 10)
 #define CONFIG_SYS_INIT_L2_END	(CONFIG_SYS_INIT_L2_ADDR + CONFIG_SYS_L2_SIZE)
-#define CONFIG_SPL_RELOC_TEXT_BASE	0xD0001000
-#define CONFIG_SPL_RELOC_STACK		(CONFIG_SYS_INIT_L2_ADDR + 192 * 1024)
-#define CONFIG_SPL_RELOC_MALLOC_ADDR	(CONFIG_SYS_INIT_L2_ADDR + 208 * 1024)
-#define CONFIG_SPL_RELOC_MALLOC_SIZE	(48 << 10)
 #define CONFIG_SPL_GD_ADDR		(CONFIG_SYS_INIT_L2_ADDR + 176 * 1024)
 #else
 #define CONFIG_SYS_INIT_L2_ADDR		0xD0000000
 #define CONFIG_SYS_INIT_L2_ADDR_PHYS	CONFIG_SYS_INIT_L2_ADDR
 #define CONFIG_SYS_L2_SIZE		(256 << 10)
 #define CONFIG_SYS_INIT_L2_END	(CONFIG_SYS_INIT_L2_ADDR + CONFIG_SYS_L2_SIZE)
-#define CONFIG_SPL_RELOC_TEXT_BASE	(CONFIG_SYS_INIT_L2_END - 0x3000)
-#define CONFIG_SPL_RELOC_STACK		((CONFIG_SYS_INIT_L2_END - 1) & ~0xF)
 #endif
 #endif
 #endif
diff --git a/include/configs/T102xRDB.h b/include/configs/T102xRDB.h
index 5b0cea735dfa..4dcd376d8954 100644
--- a/include/configs/T102xRDB.h
+++ b/include/configs/T102xRDB.h
@@ -121,9 +121,6 @@
 #define CONFIG_SYS_L3_SIZE		(256 << 10)
 #define CONFIG_SPL_GD_ADDR		(CONFIG_SYS_INIT_L3_ADDR + 32 * 1024)
 #define SPL_ENV_ADDR			(CONFIG_SPL_GD_ADDR + 4 * 1024)
-#define CONFIG_SPL_RELOC_MALLOC_ADDR	(CONFIG_SPL_GD_ADDR + 12 * 1024)
-#define CONFIG_SPL_RELOC_MALLOC_SIZE	(30 << 10)
-#define CONFIG_SPL_RELOC_STACK		(CONFIG_SPL_GD_ADDR + 64 * 1024)
 
 #ifdef CONFIG_PHYS_64BIT
 #define CONFIG_SYS_DCSRBAR		0xf0000000
diff --git a/include/configs/T104xRDB.h b/include/configs/T104xRDB.h
index 29b4cc40995b..07eed3bb14f3 100644
--- a/include/configs/T104xRDB.h
+++ b/include/configs/T104xRDB.h
@@ -108,9 +108,6 @@
 #define CONFIG_SYS_L3_SIZE		256 << 10
 #define CONFIG_SPL_GD_ADDR		(CONFIG_SYS_INIT_L3_VADDR + 32 * 1024)
 #define SPL_ENV_ADDR			(CONFIG_SPL_GD_ADDR + 4 * 1024)
-#define CONFIG_SPL_RELOC_MALLOC_ADDR	(CONFIG_SPL_GD_ADDR + 12 * 1024)
-#define CONFIG_SPL_RELOC_MALLOC_SIZE	(30 << 10)
-#define CONFIG_SPL_RELOC_STACK		(CONFIG_SPL_GD_ADDR + 64 * 1024)
 
 #define CONFIG_SYS_DCSRBAR		0xf0000000
 #define CONFIG_SYS_DCSRBAR_PHYS		0xf00000000ull
diff --git a/include/configs/T208xQDS.h b/include/configs/T208xQDS.h
index 22cee32f6d7a..16751e5a3fb3 100644
--- a/include/configs/T208xQDS.h
+++ b/include/configs/T208xQDS.h
@@ -94,9 +94,6 @@
 #define CONFIG_SYS_L3_SIZE		(512 << 10)
 #define CONFIG_SPL_GD_ADDR		(CONFIG_SYS_INIT_L3_ADDR + 32 * 1024)
 #define SPL_ENV_ADDR			(CONFIG_SPL_GD_ADDR + 4 * 1024)
-#define CONFIG_SPL_RELOC_MALLOC_ADDR	(CONFIG_SPL_GD_ADDR + 12 * 1024)
-#define CONFIG_SPL_RELOC_MALLOC_SIZE	(50 << 10)
-#define CONFIG_SPL_RELOC_STACK		(CONFIG_SPL_GD_ADDR + 64 * 1024)
 
 #define CONFIG_SYS_DCSRBAR	0xf0000000
 #define CONFIG_SYS_DCSRBAR_PHYS	0xf00000000ull
diff --git a/include/configs/T208xRDB.h b/include/configs/T208xRDB.h
index fafd83440ef0..feec2c359912 100644
--- a/include/configs/T208xRDB.h
+++ b/include/configs/T208xRDB.h
@@ -89,9 +89,6 @@
 #define CONFIG_SYS_L3_SIZE		(512 << 10)
 #define CONFIG_SPL_GD_ADDR		(CONFIG_SYS_INIT_L3_ADDR + 32 * 1024)
 #define SPL_ENV_ADDR			(CONFIG_SPL_GD_ADDR + 4 * 1024)
-#define CONFIG_SPL_RELOC_MALLOC_ADDR	(CONFIG_SPL_GD_ADDR + 12 * 1024)
-#define CONFIG_SPL_RELOC_MALLOC_SIZE	(50 << 10)
-#define CONFIG_SPL_RELOC_STACK		(CONFIG_SPL_GD_ADDR + 64 * 1024)
 
 #define CONFIG_SYS_DCSRBAR	0xf0000000
 #define CONFIG_SYS_DCSRBAR_PHYS	0xf00000000ull
diff --git a/include/configs/T4240RDB.h b/include/configs/T4240RDB.h
index 4b5c6bcf7ebe..21854139b9da 100644
--- a/include/configs/T4240RDB.h
+++ b/include/configs/T4240RDB.h
@@ -69,9 +69,6 @@
 #define CONFIG_SYS_L3_SIZE		(512 << 10)
 #define CONFIG_SPL_GD_ADDR		(CONFIG_SYS_INIT_L3_ADDR + 32 * 1024)
 #define SPL_ENV_ADDR			(CONFIG_SPL_GD_ADDR + 4 * 1024)
-#define CONFIG_SPL_RELOC_MALLOC_ADDR	(CONFIG_SPL_GD_ADDR + 12 * 1024)
-#define CONFIG_SPL_RELOC_MALLOC_SIZE	(50 << 10)
-#define CONFIG_SPL_RELOC_STACK		(CONFIG_SPL_GD_ADDR + 64 * 1024)
 
 #define CONFIG_SYS_DCSRBAR		0xf0000000
 #define CONFIG_SYS_DCSRBAR_PHYS		0xf00000000ull
diff --git a/include/configs/p1_p2_rdb_pc.h b/include/configs/p1_p2_rdb_pc.h
index 849a0b8cb649..0b866f4d5a66 100644
--- a/include/configs/p1_p2_rdb_pc.h
+++ b/include/configs/p1_p2_rdb_pc.h
@@ -336,31 +336,17 @@
 #define CONFIG_SYS_INIT_L2_ADDR		0xf8f80000
 #define CONFIG_SYS_INIT_L2_ADDR_PHYS	CONFIG_SYS_INIT_L2_ADDR
 #define CONFIG_SYS_INIT_L2_END	(CONFIG_SYS_INIT_L2_ADDR + CONFIG_SYS_L2_SIZE)
-#define CONFIG_SPL_RELOC_TEXT_BASE	0xf8f81000
 #define CONFIG_SPL_GD_ADDR		(CONFIG_SYS_INIT_L2_ADDR + 112 * 1024)
-#define CONFIG_SPL_RELOC_STACK		(CONFIG_SYS_INIT_L2_ADDR + 116 * 1024)
-#define CONFIG_SPL_RELOC_MALLOC_ADDR	(CONFIG_SYS_INIT_L2_ADDR + 148 * 1024)
-#if defined(CONFIG_TARGET_P2020RDB)
-#define CONFIG_SPL_RELOC_MALLOC_SIZE	(364 << 10)
-#else
-#define CONFIG_SPL_RELOC_MALLOC_SIZE	(108 << 10)
-#endif
 #elif defined(CONFIG_MTD_RAW_NAND)
 #ifdef CONFIG_TPL_BUILD
 #define CONFIG_SYS_INIT_L2_ADDR		0xf8f80000
 #define CONFIG_SYS_INIT_L2_ADDR_PHYS	CONFIG_SYS_INIT_L2_ADDR
 #define CONFIG_SYS_INIT_L2_END	(CONFIG_SYS_INIT_L2_ADDR + CONFIG_SYS_L2_SIZE)
-#define CONFIG_SPL_RELOC_TEXT_BASE	0xf8f81000
-#define CONFIG_SPL_RELOC_STACK		(CONFIG_SYS_INIT_L2_ADDR + 192 * 1024)
-#define CONFIG_SPL_RELOC_MALLOC_ADDR	(CONFIG_SYS_INIT_L2_ADDR + 208 * 1024)
-#define CONFIG_SPL_RELOC_MALLOC_SIZE	(48 << 10)
 #define CONFIG_SPL_GD_ADDR		(CONFIG_SYS_INIT_L2_ADDR + 176 * 1024)
 #else
 #define CONFIG_SYS_INIT_L2_ADDR		0xf8f80000
 #define CONFIG_SYS_INIT_L2_ADDR_PHYS	CONFIG_SYS_INIT_L2_ADDR
 #define CONFIG_SYS_INIT_L2_END	(CONFIG_SYS_INIT_L2_ADDR + CONFIG_SYS_L2_SIZE)
-#define CONFIG_SPL_RELOC_TEXT_BASE	(CONFIG_SYS_INIT_L2_END - 0x2000)
-#define CONFIG_SPL_RELOC_STACK		((CONFIG_SYS_INIT_L2_END - 1) & ~0xF)
 #endif /* CONFIG_TPL_BUILD */
 #endif
 #endif
-- 
2.25.1


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH 06/20] Convert CONFIG_SPL_BSS_START_ADDR to Kconfig
  2022-05-29 16:55 [PATCH 01/20] Convert CONFIG_SPL_STACK to Kconfig Tom Rini
                   ` (3 preceding siblings ...)
  2022-05-29 16:55 ` [PATCH 05/20] Convert CONFIG_SPL_RELOC_TEXT_BASE et al " Tom Rini
@ 2022-05-29 16:55 ` Tom Rini
  2022-05-29 16:55 ` [PATCH 07/20] Convert CONFIG_SYS_SPL_MALLOC_SIZE et al " Tom Rini
                   ` (15 subsequent siblings)
  20 siblings, 0 replies; 27+ messages in thread
From: Tom Rini @ 2022-05-29 16:55 UTC (permalink / raw)
  To: u-boot

This converts the following to Kconfig:
   CONFIG_SPL_BSS_START_ADDR

Signed-off-by: Tom Rini <trini@konsulko.com>
---
 README                                            |  3 ---
 common/spl/Kconfig                                | 15 +++++++++++++++
 configs/ae350_rv32_spl_defconfig                  |  1 +
 configs/ae350_rv32_spl_xip_defconfig              |  1 +
 configs/ae350_rv64_spl_defconfig                  |  1 +
 configs/ae350_rv64_spl_xip_defconfig              |  1 +
 configs/am64x_evm_a53_defconfig                   |  2 ++
 configs/am64x_evm_r5_defconfig                    |  2 ++
 configs/am65x_evm_a53_defconfig                   |  2 ++
 configs/am65x_evm_r5_defconfig                    |  2 ++
 configs/am65x_evm_r5_usbdfu_defconfig             |  2 ++
 configs/am65x_evm_r5_usbmsc_defconfig             |  2 ++
 configs/am65x_hs_evm_a53_defconfig                |  2 ++
 configs/am65x_hs_evm_r5_defconfig                 |  2 ++
 ...trazedev_cc_v1_0_ultrazedev_som_v1_0_defconfig |  2 ++
 configs/axm_defconfig                             |  2 ++
 configs/bitmain_antminer_s9_defconfig             |  2 ++
 configs/cgtqmx8_defconfig                         |  2 ++
 configs/chromebook_bob_defconfig                  |  2 ++
 configs/chromebook_kevin_defconfig                |  2 ++
 configs/ci20_mmc_defconfig                        |  1 +
 configs/cl-som-imx7_defconfig                     |  1 +
 configs/clearfog_defconfig                        |  2 ++
 configs/controlcenterdc_defconfig                 |  2 ++
 configs/corvus_defconfig                          |  2 ++
 configs/da850evm_defconfig                        |  2 ++
 configs/da850evm_nand_defconfig                   |  2 ++
 configs/db-88f6720_defconfig                      |  2 ++
 configs/db-88f6820-amc_defconfig                  |  2 ++
 configs/db-88f6820-gp_defconfig                   |  2 ++
 configs/db-mv784mp-gp_defconfig                   |  2 ++
 configs/deneb_defconfig                           |  2 ++
 configs/devkit8000_defconfig                      |  1 +
 configs/draco_defconfig                           |  1 +
 configs/ds414_defconfig                           |  2 ++
 configs/edminiv2_defconfig                        |  2 ++
 configs/etamin_defconfig                          |  1 +
 configs/evb-px30_defconfig                        |  2 ++
 configs/evb-px5_defconfig                         |  2 ++
 configs/evb-rk3308_defconfig                      |  2 ++
 configs/evb-rk3328_defconfig                      |  2 ++
 configs/evb-rk3399_defconfig                      |  2 ++
 configs/evb-rk3568_defconfig                      |  2 ++
 configs/ficus-rk3399_defconfig                    |  2 ++
 configs/firefly-px30_defconfig                    |  2 ++
 configs/firefly-rk3399_defconfig                  |  2 ++
 configs/gardena-smart-gateway-at91sam_defconfig   |  2 ++
 configs/gardena-smart-gateway-mt7688_defconfig    |  1 +
 configs/giedi_defconfig                           |  2 ++
 configs/helios4_defconfig                         |  2 ++
 configs/imx7_cm_defconfig                         |  1 +
 configs/imx8mm-cl-iot-gate-optee_defconfig        |  2 ++
 configs/imx8mm-cl-iot-gate_defconfig              |  2 ++
 configs/imx8mm-icore-mx8mm-ctouch2_defconfig      |  2 ++
 configs/imx8mm-icore-mx8mm-edimm2.2_defconfig     |  2 ++
 configs/imx8mm-mx8menlo_defconfig                 |  2 ++
 configs/imx8mm_beacon_defconfig                   |  2 ++
 configs/imx8mm_data_modul_edm_sbc_defconfig       |  2 ++
 configs/imx8mm_evk_defconfig                      |  2 ++
 configs/imx8mm_venice_defconfig                   |  2 ++
 configs/imx8mn_beacon_2g_defconfig                |  2 ++
 configs/imx8mn_beacon_defconfig                   |  2 ++
 configs/imx8mn_bsh_smm_s2_defconfig               |  2 ++
 configs/imx8mn_bsh_smm_s2pro_defconfig            |  2 ++
 configs/imx8mn_ddr4_evk_defconfig                 |  2 ++
 configs/imx8mn_evk_defconfig                      |  2 ++
 configs/imx8mn_var_som_defconfig                  |  2 ++
 configs/imx8mn_venice_defconfig                   |  2 ++
 configs/imx8mp_dhcom_pdk2_defconfig               |  2 ++
 configs/imx8mp_evk_defconfig                      |  2 ++
 configs/imx8mp_rsb3720a1_4G_defconfig             |  2 ++
 configs/imx8mp_rsb3720a1_6G_defconfig             |  2 ++
 configs/imx8mp_venice_defconfig                   |  2 ++
 configs/imx8mq_cm_defconfig                       |  2 ++
 configs/imx8mq_evk_defconfig                      |  2 ++
 configs/imx8mq_phanbell_defconfig                 |  2 ++
 configs/imx8qm_mek_defconfig                      |  2 ++
 configs/imx8qm_rom7720_a1_4G_defconfig            |  2 ++
 configs/imx8qxp_mek_defconfig                     |  2 ++
 configs/imx8ulp_evk_defconfig                     |  2 ++
 configs/iot2050_defconfig                         |  2 ++
 configs/j7200_evm_a72_defconfig                   |  2 ++
 configs/j7200_evm_r5_defconfig                    |  2 ++
 configs/j721e_evm_a72_defconfig                   |  2 ++
 configs/j721e_evm_r5_defconfig                    |  2 ++
 configs/j721e_hs_evm_a72_defconfig                |  2 ++
 configs/j721e_hs_evm_r5_defconfig                 |  2 ++
 configs/j721s2_evm_a72_defconfig                  |  2 ++
 configs/j721s2_evm_r5_defconfig                   |  2 ++
 configs/k2e_evm_defconfig                         |  2 ++
 configs/k2g_evm_defconfig                         |  2 ++
 configs/k2hk_evm_defconfig                        |  2 ++
 configs/k2l_evm_defconfig                         |  2 ++
 configs/khadas-edge-captain-rk3399_defconfig      |  2 ++
 configs/khadas-edge-rk3399_defconfig              |  2 ++
 configs/khadas-edge-v-rk3399_defconfig            |  2 ++
 configs/kontron-sl-mx8mm_defconfig                |  2 ++
 configs/kontron_pitx_imx8m_defconfig              |  2 ++
 configs/kontron_sl28_defconfig                    |  2 ++
 configs/leez-rk3399_defconfig                     |  2 ++
 configs/linkit-smart-7688_defconfig               |  1 +
 configs/lion-rk3368_defconfig                     |  2 ++
 configs/ls1021aiot_sdcard_defconfig               |  2 ++
 configs/ls1021aqds_nand_defconfig                 |  2 ++
 configs/ls1021aqds_sdcard_ifc_defconfig           |  2 ++
 configs/ls1021aqds_sdcard_qspi_defconfig          |  2 ++
 configs/ls1021atsn_sdcard_defconfig               |  2 ++
 .../ls1021atwr_sdcard_ifc_SECURE_BOOT_defconfig   |  2 ++
 configs/ls1021atwr_sdcard_ifc_defconfig           |  2 ++
 configs/ls1021atwr_sdcard_qspi_defconfig          |  2 ++
 configs/ls1043aqds_nand_defconfig                 |  2 ++
 configs/ls1043aqds_sdcard_ifc_defconfig           |  2 ++
 configs/ls1043aqds_sdcard_qspi_defconfig          |  2 ++
 configs/ls1043ardb_nand_SECURE_BOOT_defconfig     |  2 ++
 configs/ls1043ardb_nand_defconfig                 |  2 ++
 configs/ls1043ardb_sdcard_SECURE_BOOT_defconfig   |  2 ++
 configs/ls1043ardb_sdcard_defconfig               |  2 ++
 configs/ls1046aqds_nand_defconfig                 |  2 ++
 configs/ls1046aqds_sdcard_ifc_defconfig           |  2 ++
 configs/ls1046aqds_sdcard_qspi_defconfig          |  2 ++
 configs/ls1046ardb_emmc_defconfig                 |  2 ++
 configs/ls1046ardb_qspi_spl_defconfig             |  2 ++
 configs/ls1046ardb_sdcard_SECURE_BOOT_defconfig   |  2 ++
 configs/ls1046ardb_sdcard_defconfig               |  2 ++
 configs/ls1088aqds_sdcard_ifc_defconfig           |  2 ++
 configs/ls1088aqds_sdcard_qspi_defconfig          |  2 ++
 .../ls1088ardb_sdcard_qspi_SECURE_BOOT_defconfig  |  2 ++
 configs/ls1088ardb_sdcard_qspi_defconfig          |  2 ++
 configs/ls2080aqds_nand_defconfig                 |  2 ++
 configs/ls2080aqds_sdcard_defconfig               |  2 ++
 configs/ls2080ardb_nand_defconfig                 |  2 ++
 configs/maxbcm_defconfig                          |  2 ++
 configs/mt7620_mt7530_rfb_defconfig               |  1 +
 configs/mt7620_rfb_defconfig                      |  1 +
 configs/mt7628_rfb_defconfig                      |  1 +
 configs/nanopc-t4-rk3399_defconfig                |  2 ++
 configs/nanopi-m4-2gb-rk3399_defconfig            |  2 ++
 configs/nanopi-m4-rk3399_defconfig                |  2 ++
 configs/nanopi-m4b-rk3399_defconfig               |  2 ++
 configs/nanopi-neo4-rk3399_defconfig              |  2 ++
 configs/nanopi-r2s-rk3328_defconfig               |  2 ++
 configs/nanopi-r4s-rk3399_defconfig               |  2 ++
 configs/odroid-go2_defconfig                      |  2 ++
 configs/omapl138_lcdk_defconfig                   |  2 ++
 configs/openpiton_riscv64_spl_defconfig           |  1 +
 configs/orangepi-rk3399_defconfig                 |  2 ++
 configs/phycore-imx8mm_defconfig                  |  2 ++
 configs/phycore-imx8mp_defconfig                  |  2 ++
 configs/pico-dwarf-imx7d_defconfig                |  1 +
 configs/pico-hobbit-imx7d_defconfig               |  1 +
 configs/pico-imx7d_bl33_defconfig                 |  1 +
 configs/pico-imx7d_defconfig                      |  1 +
 configs/pico-imx8mq_defconfig                     |  2 ++
 configs/pico-nymph-imx7d_defconfig                |  1 +
 configs/pico-pi-imx7d_defconfig                   |  1 +
 configs/pinebook-pro-rk3399_defconfig             |  2 ++
 configs/puma-rk3399_defconfig                     |  2 ++
 configs/px30-core-ctouch2-of10-px30_defconfig     |  2 ++
 configs/px30-core-ctouch2-px30_defconfig          |  2 ++
 configs/px30-core-edimm2.2-px30_defconfig         |  2 ++
 configs/pxm2_defconfig                            |  1 +
 configs/qemu-riscv32_spl_defconfig                |  1 +
 configs/qemu-riscv64_spl_defconfig                |  1 +
 configs/r8a77970_eagle_defconfig                  |  2 ++
 configs/r8a77980_condor_defconfig                 |  2 ++
 configs/r8a77990_ebisu_defconfig                  |  2 ++
 configs/r8a77995_draak_defconfig                  |  2 ++
 configs/r8a779a0_falcon_defconfig                 |  2 ++
 configs/rastaban_defconfig                        |  1 +
 configs/rcar3_salvator-x_defconfig                |  2 ++
 configs/rcar3_ulcb_defconfig                      |  2 ++
 configs/roc-cc-rk3308_defconfig                   |  2 ++
 configs/roc-cc-rk3328_defconfig                   |  2 ++
 configs/roc-pc-mezzanine-rk3399_defconfig         |  2 ++
 configs/roc-pc-rk3399_defconfig                   |  2 ++
 configs/rock-pi-4-rk3399_defconfig                |  2 ++
 configs/rock-pi-4c-rk3399_defconfig               |  2 ++
 configs/rock-pi-e-rk3328_defconfig                |  2 ++
 configs/rock-pi-n10-rk3399pro_defconfig           |  2 ++
 configs/rock64-rk3328_defconfig                   |  2 ++
 configs/rock960-rk3399_defconfig                  |  2 ++
 configs/rockpro64-rk3399_defconfig                |  2 ++
 configs/rut_defconfig                             |  1 +
 configs/sama5d27_giantboard_defconfig             |  2 ++
 configs/sama5d27_som1_ek_mmc1_defconfig           |  2 ++
 configs/sama5d27_som1_ek_mmc_defconfig            |  2 ++
 configs/sama5d27_som1_ek_qspiflash_defconfig      |  2 ++
 configs/sama5d27_wlsom1_ek_mmc_defconfig          |  2 ++
 configs/sama5d27_wlsom1_ek_qspiflash_defconfig    |  2 ++
 configs/sama5d2_icp_mmc_defconfig                 |  2 ++
 configs/sama5d2_xplained_emmc_defconfig           |  2 ++
 configs/sama5d2_xplained_mmc_defconfig            |  2 ++
 configs/sama5d2_xplained_qspiflash_defconfig      |  2 ++
 configs/sama5d2_xplained_spiflash_defconfig       |  2 ++
 configs/sama5d3_xplained_mmc_defconfig            |  2 ++
 configs/sama5d3_xplained_nandflash_defconfig      |  2 ++
 configs/sama5d3xek_mmc_defconfig                  |  2 ++
 configs/sama5d3xek_nandflash_defconfig            |  2 ++
 configs/sama5d3xek_spiflash_defconfig             |  2 ++
 configs/sama5d4_xplained_mmc_defconfig            |  2 ++
 configs/sama5d4_xplained_nandflash_defconfig      |  2 ++
 configs/sama5d4_xplained_spiflash_defconfig       |  2 ++
 configs/sama5d4ek_mmc_defconfig                   |  2 ++
 configs/sama5d4ek_nandflash_defconfig             |  2 ++
 configs/sama5d4ek_spiflash_defconfig              |  2 ++
 configs/sifive_unleashed_defconfig                |  1 +
 configs/sifive_unmatched_defconfig                |  1 +
 configs/silinux_ek874_defconfig                   |  2 ++
 configs/smartweb_defconfig                        |  2 ++
 configs/sniper_defconfig                          |  1 +
 configs/socfpga_agilex_atf_defconfig              |  2 ++
 configs/socfpga_agilex_defconfig                  |  2 ++
 configs/socfpga_agilex_vab_defconfig              |  2 ++
 configs/socfpga_n5x_atf_defconfig                 |  2 ++
 configs/socfpga_n5x_defconfig                     |  2 ++
 configs/socfpga_n5x_vab_defconfig                 |  2 ++
 configs/socfpga_stratix10_atf_defconfig           |  2 ++
 configs/socfpga_stratix10_defconfig               |  2 ++
 configs/syzygy_hub_defconfig                      |  2 ++
 configs/taurus_defconfig                          |  2 ++
 configs/theadorable_debug_defconfig               |  2 ++
 configs/thuban_defconfig                          |  1 +
 configs/topic_miami_defconfig                     |  2 ++
 configs/topic_miamilite_defconfig                 |  2 ++
 configs/topic_miamiplus_defconfig                 |  2 ++
 configs/turris_omnia_defconfig                    |  2 ++
 configs/verdin-imx8mm_defconfig                   |  2 ++
 configs/verdin-imx8mp_defconfig                   |  2 ++
 configs/vocore2_defconfig                         |  1 +
 configs/x530_defconfig                            |  2 ++
 configs/xilinx_zynq_virt_defconfig                |  2 ++
 configs/xilinx_zynqmp_mini_emmc0_defconfig        |  2 ++
 configs/xilinx_zynqmp_mini_emmc1_defconfig        |  2 ++
 configs/xilinx_zynqmp_mini_qspi_defconfig         |  2 ++
 configs/xilinx_zynqmp_virt_defconfig              |  2 ++
 configs/zynq_cse_nand_defconfig                   |  2 ++
 configs/zynq_cse_nor_defconfig                    |  2 ++
 configs/zynq_cse_qspi_defconfig                   |  2 ++
 include/configs/am64x_evm.h                       | 12 +-----------
 include/configs/am65x_evm.h                       | 12 +-----------
 include/configs/at91sam9m10g45ek.h                |  1 -
 include/configs/at91sam9n12ek.h                   |  1 -
 include/configs/at91sam9x5ek.h                    |  1 -
 include/configs/ax25-ae350.h                      |  4 ----
 include/configs/bur_am335x_common.h               |  1 -
 include/configs/capricorn-common.h                |  1 -
 include/configs/cgtqmx8.h                         |  1 -
 include/configs/ci20.h                            |  2 --
 include/configs/clearfog.h                        |  2 --
 include/configs/controlcenterdc.h                 |  2 --
 include/configs/corvus.h                          |  2 --
 include/configs/da850evm.h                        |  1 -
 include/configs/db-88f6720.h                      |  2 --
 include/configs/db-88f6820-amc.h                  |  2 --
 include/configs/db-88f6820-gp.h                   |  2 --
 include/configs/db-mv784mp-gp.h                   |  2 --
 include/configs/devkit8000.h                      |  2 --
 include/configs/ds414.h                           |  2 --
 include/configs/edminiv2.h                        |  1 -
 include/configs/gardena-smart-gateway-at91sam.h   |  1 -
 include/configs/gardena-smart-gateway-mt7688.h    |  1 -
 include/configs/helios4.h                         |  2 --
 include/configs/imx6_spl.h                        |  2 --
 include/configs/imx7_spl.h                        |  1 -
 include/configs/imx8mm-cl-iot-gate.h              |  1 -
 include/configs/imx8mm_beacon.h                   |  1 -
 include/configs/imx8mm_data_modul_edm_sbc.h       |  1 -
 include/configs/imx8mm_evk.h                      |  1 -
 include/configs/imx8mm_icore_mx8mm.h              |  1 -
 include/configs/imx8mm_venice.h                   |  1 -
 include/configs/imx8mn_beacon.h                   |  1 -
 include/configs/imx8mn_bsh_smm_s2_common.h        |  1 -
 include/configs/imx8mn_evk.h                      |  1 -
 include/configs/imx8mn_var_som.h                  |  1 -
 include/configs/imx8mn_venice.h                   |  1 -
 include/configs/imx8mp_dhcom_pdk2.h               |  1 -
 include/configs/imx8mp_evk.h                      |  1 -
 include/configs/imx8mp_rsb3720.h                  |  1 -
 include/configs/imx8mp_venice.h                   |  1 -
 include/configs/imx8mq_cm.h                       |  1 -
 include/configs/imx8mq_evk.h                      |  1 -
 include/configs/imx8mq_phanbell.h                 |  1 -
 include/configs/imx8qm_mek.h                      |  1 -
 include/configs/imx8qm_rom7720.h                  |  2 --
 include/configs/imx8qxp_mek.h                     |  1 -
 include/configs/imx8ulp_evk.h                     |  1 -
 include/configs/j721e_evm.h                       |  9 ---------
 include/configs/j721s2_evm.h                      |  9 ---------
 include/configs/kontron-sl-mx8mm.h                |  1 -
 include/configs/kontron_pitx_imx8m.h              |  1 -
 include/configs/kontron_sl28.h                    |  1 -
 include/configs/linkit-smart-7688.h               |  1 -
 include/configs/ls1021aiot.h                      |  1 -
 include/configs/ls1021aqds.h                      |  2 --
 include/configs/ls1021atsn.h                      |  1 -
 include/configs/ls1021atwr.h                      |  1 -
 include/configs/ls1043a_common.h                  |  2 --
 include/configs/ls1046a_common.h                  |  3 ---
 include/configs/ls1088a_common.h                  |  1 -
 include/configs/ls2080a_common.h                  |  1 -
 include/configs/maxbcm.h                          |  7 -------
 include/configs/mt7620.h                          |  1 -
 include/configs/mt7628.h                          |  1 -
 include/configs/omapl138_lcdk.h                   |  2 --
 include/configs/openpiton-riscv64.h               |  1 -
 include/configs/phycore_imx8mm.h                  |  1 -
 include/configs/phycore_imx8mp.h                  |  1 -
 include/configs/pico-imx8mq.h                     |  1 -
 include/configs/pm9g45.h                          |  1 -
 include/configs/px30_common.h                     |  1 -
 include/configs/qemu-riscv.h                      |  1 -
 include/configs/rcar-gen3-common.h                |  7 -------
 include/configs/rk3308_common.h                   |  2 --
 include/configs/rk3328_common.h                   |  2 --
 include/configs/rk3368_common.h                   |  2 --
 include/configs/rk3399_common.h                   |  2 --
 include/configs/rk3568_common.h                   |  2 --
 include/configs/sama5d27_som1_ek.h                |  1 -
 include/configs/sama5d27_wlsom1_ek.h              |  1 -
 include/configs/sama5d2_icp.h                     |  1 -
 include/configs/sama5d2_xplained.h                |  1 -
 include/configs/sama5d3_xplained.h                |  1 -
 include/configs/sama5d3xek.h                      |  1 -
 include/configs/sama5d4_xplained.h                |  1 -
 include/configs/sama5d4ek.h                       |  1 -
 include/configs/siemens-am33x-common.h            |  2 --
 include/configs/sifive-unleashed.h                |  1 -
 include/configs/sifive-unmatched.h                |  1 -
 include/configs/smartweb.h                        |  1 -
 include/configs/sniper.h                          |  1 -
 include/configs/socfpga_soc64_common.h            |  2 --
 include/configs/sunxi-common.h                    |  3 ---
 include/configs/taurus.h                          |  2 --
 include/configs/theadorable.h                     |  2 --
 include/configs/ti814x_evm.h                      |  2 --
 include/configs/ti_armv7_common.h                 |  3 ---
 include/configs/ti_armv7_keystone2.h              |  2 --
 include/configs/turris_omnia.h                    |  2 --
 include/configs/verdin-imx8mm.h                   |  1 -
 include/configs/verdin-imx8mp.h                   |  1 -
 include/configs/vocore2.h                         |  1 -
 include/configs/x530.h                            |  2 --
 include/configs/xilinx_zynqmp.h                   |  3 ---
 include/configs/zynq-common.h                     |  3 ---
 include/configs/zynq_cse.h                        |  2 --
 345 files changed, 457 insertions(+), 201 deletions(-)

diff --git a/README b/README
index 7b4067f8f249..f21aae2ecf7c 100644
--- a/README
+++ b/README
@@ -1625,9 +1625,6 @@ The following options need to be configured:
 		CONFIG_SPL
 		Enable building of SPL globally.
 
-		CONFIG_SPL_BSS_START_ADDR
-		Link address for the BSS within the SPL binary.
-
 		CONFIG_SPL_PANIC_ON_RAW_IMAGE
 		When defined, SPL will panic() if the image it has
 		loaded does not have a signature.
diff --git a/common/spl/Kconfig b/common/spl/Kconfig
index 304fd0e697cf..adcd7ca19a4b 100644
--- a/common/spl/Kconfig
+++ b/common/spl/Kconfig
@@ -105,6 +105,21 @@ config SPL_PAD_TO
 	  0, meaning to append the SPL payload without any padding, or >=
 	  CONFIG_SPL_MAX_SIZE.
 
+config SPL_HAS_BSS_LINKER_SECTION
+	depends on SPL_FRAMEWORK
+	bool "Use a specific address for the BSS via the linker script"
+	default y if ARCH_SUNXI || ARCH_MX6 || ARCH_OMAP2PLUS || MIPS || RISCV
+
+config SPL_BSS_START_ADDR
+	hex "Link address for the BSS within the SPL binary"
+	depends on SPL_HAS_BSS_LINKER_SECTION
+	default 0x88200000 if (ARCH_MX6 && (MX6SX || MX6SL || MX6UL || MX6ULL)) || ARCH_MX7
+	default 0x18200000 if ARCH_MX6 && !(MX6SX || MX6SL || MX6UL || MX6ULL)
+	default 0x80a00000 if ARCH_OMAP2PLUS
+	default 0x81f80000 if ARCH_SUNXI && MACH_SUNIV
+	default 0x4ff80000 if ARCH_SUNXI && !(MACH_SUN9I || MACH_SUNIV)
+	default 0x2ff80000 if ARCH_SUNXI && MACH_SUN9I
+
 choice
 	prompt "Enforce SPL BSS limit"
 	depends on SPL && !PPC
diff --git a/configs/ae350_rv32_spl_defconfig b/configs/ae350_rv32_spl_defconfig
index 1248abee2f6e..3ddbd7a29837 100644
--- a/configs/ae350_rv32_spl_defconfig
+++ b/configs/ae350_rv32_spl_defconfig
@@ -18,6 +18,7 @@ CONFIG_SYS_MONITOR_BASE=0x88000000
 CONFIG_BOOTDELAY=3
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_SPL_MAX_SIZE=0x100000
+CONFIG_SPL_BSS_START_ADDR=0x4000000
 CONFIG_SYS_PROMPT="RISC-V # "
 CONFIG_SYS_PBSIZE=1050
 CONFIG_CMD_IMLS=y
diff --git a/configs/ae350_rv32_spl_xip_defconfig b/configs/ae350_rv32_spl_xip_defconfig
index 06e3475315d7..2b8dbf435f0f 100644
--- a/configs/ae350_rv32_spl_xip_defconfig
+++ b/configs/ae350_rv32_spl_xip_defconfig
@@ -20,6 +20,7 @@ CONFIG_SYS_MONITOR_BASE=0x88000000
 CONFIG_BOOTDELAY=3
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_SPL_MAX_SIZE=0x100000
+CONFIG_SPL_BSS_START_ADDR=0x4000000
 CONFIG_SYS_PROMPT="RISC-V # "
 CONFIG_SYS_PBSIZE=1050
 CONFIG_CMD_IMLS=y
diff --git a/configs/ae350_rv64_spl_defconfig b/configs/ae350_rv64_spl_defconfig
index 758c58b46bad..b09c2ccdbaf5 100644
--- a/configs/ae350_rv64_spl_defconfig
+++ b/configs/ae350_rv64_spl_defconfig
@@ -19,6 +19,7 @@ CONFIG_SYS_MONITOR_BASE=0x88000000
 CONFIG_BOOTDELAY=3
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_SPL_MAX_SIZE=0x100000
+CONFIG_SPL_BSS_START_ADDR=0x4000000
 CONFIG_SYS_PROMPT="RISC-V # "
 CONFIG_SYS_PBSIZE=1050
 CONFIG_CMD_IMLS=y
diff --git a/configs/ae350_rv64_spl_xip_defconfig b/configs/ae350_rv64_spl_xip_defconfig
index 07989400dc38..955034e4ba34 100644
--- a/configs/ae350_rv64_spl_xip_defconfig
+++ b/configs/ae350_rv64_spl_xip_defconfig
@@ -21,6 +21,7 @@ CONFIG_SYS_MONITOR_BASE=0x88000000
 CONFIG_BOOTDELAY=3
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_SPL_MAX_SIZE=0x100000
+CONFIG_SPL_BSS_START_ADDR=0x4000000
 CONFIG_SYS_PROMPT="RISC-V # "
 CONFIG_SYS_PBSIZE=1050
 CONFIG_CMD_IMLS=y
diff --git a/configs/am64x_evm_a53_defconfig b/configs/am64x_evm_a53_defconfig
index 6dcdb070efa6..954f0a8b2cd9 100644
--- a/configs/am64x_evm_a53_defconfig
+++ b/configs/am64x_evm_a53_defconfig
@@ -33,6 +33,8 @@ CONFIG_SPL_LOAD_FIT_ADDRESS=0x81000000
 CONFIG_BOOTCOMMAND="run findfdt; run envboot; run init_${boot}; run get_kern_${boot}; run get_fdt_${boot}; run run_kern"
 CONFIG_BOARD_LATE_INIT=y
 CONFIG_SPL_MAX_SIZE=0x180000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x80a00000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
diff --git a/configs/am64x_evm_r5_defconfig b/configs/am64x_evm_r5_defconfig
index 669e4960e1dc..20e1f507cbe6 100644
--- a/configs/am64x_evm_r5_defconfig
+++ b/configs/am64x_evm_r5_defconfig
@@ -34,6 +34,8 @@ CONFIG_BOOTCOMMAND="run distro_bootcmd"
 CONFIG_SPL_SIZE_LIMIT_SUBTRACT_GD=y
 CONFIG_SPL_SIZE_LIMIT_SUBTRACT_MALLOC=y
 CONFIG_SPL_MAX_SIZE=0x180000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x7019b800
 CONFIG_SPL_BSS_MAX_SIZE=0x4000
 CONFIG_SPL_SYS_REPORT_STACK_F_USAGE=y
 CONFIG_SPL_BOARD_INIT=y
diff --git a/configs/am65x_evm_a53_defconfig b/configs/am65x_evm_a53_defconfig
index af8160c48f78..d07edc22925f 100644
--- a/configs/am65x_evm_a53_defconfig
+++ b/configs/am65x_evm_a53_defconfig
@@ -36,6 +36,8 @@ CONFIG_BOOTCOMMAND="run findfdt; run distro_bootcmd; run init_${boot}; run boot_
 CONFIG_LOGLEVEL=7
 CONFIG_CONSOLE_MUX=y
 CONFIG_SPL_MAX_SIZE=0x58000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x80a00000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
 CONFIG_SPL_STACK_R=y
diff --git a/configs/am65x_evm_r5_defconfig b/configs/am65x_evm_r5_defconfig
index b6b007525a4f..fbe3aba25554 100644
--- a/configs/am65x_evm_r5_defconfig
+++ b/configs/am65x_evm_r5_defconfig
@@ -34,6 +34,8 @@ CONFIG_USE_BOOTCOMMAND=y
 CONFIG_SPL_SIZE_LIMIT_SUBTRACT_GD=y
 CONFIG_SPL_SIZE_LIMIT_SUBTRACT_MALLOC=y
 CONFIG_SPL_MAX_SIZE=0x58000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x41c7effc
 CONFIG_SPL_BSS_MAX_SIZE=0xc00
 CONFIG_SPL_SYS_REPORT_STACK_F_USAGE=y
 CONFIG_SPL_STACK_R=y
diff --git a/configs/am65x_evm_r5_usbdfu_defconfig b/configs/am65x_evm_r5_usbdfu_defconfig
index aece9f2dedd1..f0dfc7579fc1 100644
--- a/configs/am65x_evm_r5_usbdfu_defconfig
+++ b/configs/am65x_evm_r5_usbdfu_defconfig
@@ -26,6 +26,8 @@ CONFIG_SPL_LOAD_FIT_ADDRESS=0x80080000
 CONFIG_USE_BOOTCOMMAND=y
 # CONFIG_DISPLAY_CPUINFO is not set
 CONFIG_SPL_MAX_SIZE=0x58000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x41c7effc
 CONFIG_SPL_BSS_MAX_SIZE=0xc00
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_SEPARATE_BSS=y
diff --git a/configs/am65x_evm_r5_usbmsc_defconfig b/configs/am65x_evm_r5_usbmsc_defconfig
index 8d9b7467126d..cf55bd48cdde 100644
--- a/configs/am65x_evm_r5_usbmsc_defconfig
+++ b/configs/am65x_evm_r5_usbmsc_defconfig
@@ -25,6 +25,8 @@ CONFIG_SPL_LOAD_FIT=y
 CONFIG_USE_BOOTCOMMAND=y
 # CONFIG_DISPLAY_CPUINFO is not set
 CONFIG_SPL_MAX_SIZE=0x58000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x41c7effc
 CONFIG_SPL_BSS_MAX_SIZE=0xc00
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_SEPARATE_BSS=y
diff --git a/configs/am65x_hs_evm_a53_defconfig b/configs/am65x_hs_evm_a53_defconfig
index efda16e14f56..6983c9172f01 100644
--- a/configs/am65x_hs_evm_a53_defconfig
+++ b/configs/am65x_hs_evm_a53_defconfig
@@ -36,6 +36,8 @@ CONFIG_BOOTCOMMAND="run findfdt; run envboot; run init_${boot}; run get_fit_${bo
 CONFIG_LOGLEVEL=7
 CONFIG_CONSOLE_MUX=y
 CONFIG_SPL_MAX_SIZE=0x58000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x80a00000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
 CONFIG_SPL_STACK_R=y
diff --git a/configs/am65x_hs_evm_r5_defconfig b/configs/am65x_hs_evm_r5_defconfig
index 39ce5276f4e5..d26f07124b8d 100644
--- a/configs/am65x_hs_evm_r5_defconfig
+++ b/configs/am65x_hs_evm_r5_defconfig
@@ -31,6 +31,8 @@ CONFIG_SPL_LOAD_FIT=y
 CONFIG_USE_BOOTCOMMAND=y
 # CONFIG_DISPLAY_CPUINFO is not set
 CONFIG_SPL_MAX_SIZE=0x58000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x41c7effc
 CONFIG_SPL_BSS_MAX_SIZE=0xc00
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_SEPARATE_BSS=y
diff --git a/configs/avnet_ultrazedev_cc_v1_0_ultrazedev_som_v1_0_defconfig b/configs/avnet_ultrazedev_cc_v1_0_ultrazedev_som_v1_0_defconfig
index d9330d049dda..c24f94e08d8e 100644
--- a/configs/avnet_ultrazedev_cc_v1_0_ultrazedev_som_v1_0_defconfig
+++ b/configs/avnet_ultrazedev_cc_v1_0_ultrazedev_som_v1_0_defconfig
@@ -29,6 +29,8 @@ CONFIG_BOOTDELAY=0
 # CONFIG_DISPLAY_CPUINFO is not set
 CONFIG_CLOCKS=y
 CONFIG_SPL_MAX_SIZE=0x40000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x0
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xfffffffc
diff --git a/configs/axm_defconfig b/configs/axm_defconfig
index 2a5458b5214b..2f6b332cb355 100644
--- a/configs/axm_defconfig
+++ b/configs/axm_defconfig
@@ -37,6 +37,8 @@ CONFIG_BOOTCOMMAND="run flash_self"
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_SPL_MAX_SIZE=0x3e00
 CONFIG_SPL_PAD_TO=0x20000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x3e00
 CONFIG_SPL_BSS_MAX_SIZE=0x600
 # CONFIG_SPL_LEGACY_IMAGE_FORMAT is not set
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
diff --git a/configs/bitmain_antminer_s9_defconfig b/configs/bitmain_antminer_s9_defconfig
index 02a8435fbcd5..d724fe6e65d1 100644
--- a/configs/bitmain_antminer_s9_defconfig
+++ b/configs/bitmain_antminer_s9_defconfig
@@ -28,6 +28,8 @@ CONFIG_USE_PREBOOT=y
 # CONFIG_DISPLAY_CPUINFO is not set
 CONFIG_CLOCKS=y
 CONFIG_SPL_MAX_SIZE=0x30000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x100000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xfffffe00
diff --git a/configs/cgtqmx8_defconfig b/configs/cgtqmx8_defconfig
index d60437884c9c..1a25d498b992 100644
--- a/configs/cgtqmx8_defconfig
+++ b/configs/cgtqmx8_defconfig
@@ -29,6 +29,8 @@ CONFIG_BOOTCOMMAND="mmc dev ${mmcdev}; if mmc rescan; then if run loadbootscript
 CONFIG_LOG=y
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_SPL_MAX_SIZE=0x1f000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x128000
 CONFIG_SPL_BSS_MAX_SIZE=0x1000
 CONFIG_SPL_BOARD_INIT=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/chromebook_bob_defconfig b/configs/chromebook_bob_defconfig
index 21943010f4ed..84fe5be19d56 100644
--- a/configs/chromebook_bob_defconfig
+++ b/configs/chromebook_bob_defconfig
@@ -30,6 +30,8 @@ CONFIG_BLOBLIST_ADDR=0x100000
 CONFIG_BLOBLIST_SIZE=0x1000
 CONFIG_SPL_MAX_SIZE=0x2e000
 CONFIG_SPL_PAD_TO=0x7f8000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0xff8e0000
 CONFIG_SPL_BSS_MAX_SIZE=0x10000
 CONFIG_HANDOFF=y
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
diff --git a/configs/chromebook_kevin_defconfig b/configs/chromebook_kevin_defconfig
index 7f773fcf90ca..669d6f570b9e 100644
--- a/configs/chromebook_kevin_defconfig
+++ b/configs/chromebook_kevin_defconfig
@@ -31,6 +31,8 @@ CONFIG_BLOBLIST_ADDR=0x100000
 CONFIG_BLOBLIST_SIZE=0x1000
 CONFIG_SPL_MAX_SIZE=0x2e000
 CONFIG_SPL_PAD_TO=0x7f8000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0xff8e0000
 CONFIG_SPL_BSS_MAX_SIZE=0x10000
 CONFIG_HANDOFF=y
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
diff --git a/configs/ci20_mmc_defconfig b/configs/ci20_mmc_defconfig
index a1c2fa732c12..983642dac5c6 100644
--- a/configs/ci20_mmc_defconfig
+++ b/configs/ci20_mmc_defconfig
@@ -24,6 +24,7 @@ CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_MISC_INIT_R=y
 CONFIG_SYS_MALLOC_BOOTPARAMS=y
 CONFIG_SPL_MAX_SIZE=0x2e00
+CONFIG_SPL_BSS_START_ADDR=0xf4004000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xf4008000
diff --git a/configs/cl-som-imx7_defconfig b/configs/cl-som-imx7_defconfig
index af7fb37afccd..ff5c21f5c691 100644
--- a/configs/cl-som-imx7_defconfig
+++ b/configs/cl-som-imx7_defconfig
@@ -26,6 +26,7 @@ CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="echo SD boot attempt ...; run sdbootscript; run sdboot; echo eMMC boot attempt ...; run emmcbootscript; run emmcboot; echo USB boot attempt ...; run usbbootscript; "
 CONFIG_BOARD_LATE_INIT=y
 CONFIG_SPL_MAX_SIZE=0xe000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x80
diff --git a/configs/clearfog_defconfig b/configs/clearfog_defconfig
index bbb475e97907..bec36beb8554 100644
--- a/configs/clearfog_defconfig
+++ b/configs/clearfog_defconfig
@@ -27,6 +27,8 @@ CONFIG_SYS_CONSOLE_INFO_QUIET=y
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_SPL_MAX_SIZE=0x22fd0
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x40023000
 CONFIG_SPL_BSS_MAX_SIZE=0x4000
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/controlcenterdc_defconfig b/configs/controlcenterdc_defconfig
index 9b5380960809..2fc7ba475a3e 100644
--- a/configs/controlcenterdc_defconfig
+++ b/configs/controlcenterdc_defconfig
@@ -35,6 +35,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_BOARD_LATE_INIT=y
 CONFIG_LAST_STAGE_INIT=y
 CONFIG_SPL_MAX_SIZE=0x27fd0
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x40028000
 CONFIG_SPL_BSS_MAX_SIZE=0x4000
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
diff --git a/configs/corvus_defconfig b/configs/corvus_defconfig
index e7db00a21223..859c9a310408 100644
--- a/configs/corvus_defconfig
+++ b/configs/corvus_defconfig
@@ -34,6 +34,8 @@ CONFIG_BOOTCOMMAND="nand read 0x70000000 0x200000 0x300000;bootm 0x70000000"
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_SPL_MAX_SIZE=0x3000
 CONFIG_SPL_PAD_TO=0x20000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x3000
 CONFIG_SPL_BSS_MAX_SIZE=0x800
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/da850evm_defconfig b/configs/da850evm_defconfig
index a4bc7e41265a..d150a00510bf 100644
--- a/configs/da850evm_defconfig
+++ b/configs/da850evm_defconfig
@@ -36,6 +36,8 @@ CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_CLOCKS=y
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_PAD_TO=0x8000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0xc0000000
 CONFIG_SPL_FOOTPRINT_LIMIT=y
 CONFIG_SPL_MAX_FOOTPRINT=0x8000
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
diff --git a/configs/da850evm_nand_defconfig b/configs/da850evm_nand_defconfig
index ef180e686431..f46c8809193c 100644
--- a/configs/da850evm_nand_defconfig
+++ b/configs/da850evm_nand_defconfig
@@ -33,6 +33,8 @@ CONFIG_DEFAULT_FDT_FILE="da850-evm.dtb"
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_CLOCKS=y
 CONFIG_SPL_PAD_TO=0x8000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0xc0000000
 CONFIG_SPL_FOOTPRINT_LIMIT=y
 CONFIG_SPL_MAX_FOOTPRINT=0x8000
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
diff --git a/configs/db-88f6720_defconfig b/configs/db-88f6720_defconfig
index 77e0bbc858ae..c08203e030ac 100644
--- a/configs/db-88f6720_defconfig
+++ b/configs/db-88f6720_defconfig
@@ -26,6 +26,8 @@ CONFIG_SYS_CONSOLE_INFO_QUIET=y
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_SPL_MAX_SIZE=0x1ffd0
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x40020000
 CONFIG_SPL_BSS_MAX_SIZE=0x4000
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/db-88f6820-amc_defconfig b/configs/db-88f6820-amc_defconfig
index 5d52c1fcc604..fd2d5ee2ca95 100644
--- a/configs/db-88f6820-amc_defconfig
+++ b/configs/db-88f6820-amc_defconfig
@@ -27,6 +27,8 @@ CONFIG_SYS_CONSOLE_INFO_QUIET=y
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_SPL_MAX_SIZE=0x22fd0
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x40023000
 CONFIG_SPL_BSS_MAX_SIZE=0x4000
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/db-88f6820-gp_defconfig b/configs/db-88f6820-gp_defconfig
index 04a07e0e812a..7d039d664a10 100644
--- a/configs/db-88f6820-gp_defconfig
+++ b/configs/db-88f6820-gp_defconfig
@@ -26,6 +26,8 @@ CONFIG_SYS_CONSOLE_INFO_QUIET=y
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_SPL_MAX_SIZE=0x22fd0
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x40023000
 CONFIG_SPL_BSS_MAX_SIZE=0x4000
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/db-mv784mp-gp_defconfig b/configs/db-mv784mp-gp_defconfig
index a1e072545373..4fe0d3ec24e5 100644
--- a/configs/db-mv784mp-gp_defconfig
+++ b/configs/db-mv784mp-gp_defconfig
@@ -26,6 +26,8 @@ CONFIG_SYS_CONSOLE_INFO_QUIET=y
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_SPL_MAX_SIZE=0x1bfd0
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x40020000
 CONFIG_SPL_BSS_MAX_SIZE=0x4000
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/deneb_defconfig b/configs/deneb_defconfig
index 21dfc26c1e06..2cd9adb3c130 100644
--- a/configs/deneb_defconfig
+++ b/configs/deneb_defconfig
@@ -37,6 +37,8 @@ CONFIG_BOOTCOMMAND="if usrbutton; then run flash_self_test; reset; fi;run flash_
 CONFIG_LOG=y
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_SPL_MAX_SIZE=0x1f000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x128000
 CONFIG_SPL_BSS_MAX_SIZE=0x1000
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
diff --git a/configs/devkit8000_defconfig b/configs/devkit8000_defconfig
index 9bc9c0c73da7..9ab5423a3242 100644
--- a/configs/devkit8000_defconfig
+++ b/configs/devkit8000_defconfig
@@ -13,6 +13,7 @@ CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0x4020ff00
 CONFIG_BOOTCOMMAND="run autoboot"
 CONFIG_SYS_CONSOLE_INFO_QUIET=y
 CONFIG_SPL_MAX_SIZE=0xec00
+CONFIG_SPL_BSS_START_ADDR=0x80000500
 CONFIG_SPL_NAND_DRIVERS=y
 CONFIG_SPL_NAND_ECC=y
 CONFIG_SPL_NAND_SIMPLE=y
diff --git a/configs/draco_defconfig b/configs/draco_defconfig
index e5e1ba685509..86c130f4bc71 100644
--- a/configs/draco_defconfig
+++ b/configs/draco_defconfig
@@ -36,6 +36,7 @@ CONFIG_USE_PREBOOT=y
 CONFIG_SYS_CONSOLE_INFO_QUIET=y
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_ARCH_MISC_INIT=y
+CONFIG_SPL_BSS_START_ADDR=0x80000000
 CONFIG_SPL_I2C=y
 CONFIG_SPL_NAND_DRIVERS=y
 CONFIG_SPL_NAND_ECC=y
diff --git a/configs/ds414_defconfig b/configs/ds414_defconfig
index b0288f57b0d1..7af7bb4e980e 100644
--- a/configs/ds414_defconfig
+++ b/configs/ds414_defconfig
@@ -34,6 +34,8 @@ CONFIG_BOOTCOMMAND="sf probe; sf read ${loadaddr} 0xd0000 0x2d0000; sf read ${ra
 CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x1bfd0
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x40020000
 CONFIG_SPL_BSS_MAX_SIZE=0x4000
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/edminiv2_defconfig b/configs/edminiv2_defconfig
index dd6118bf2129..8434b23b47e1 100644
--- a/configs/edminiv2_defconfig
+++ b/configs/edminiv2_defconfig
@@ -23,6 +23,8 @@ CONFIG_BOOTDELAY=3
 CONFIG_ARCH_MISC_INIT=y
 CONFIG_RESET_PHY_R=y
 CONFIG_SPL_MAX_SIZE=0xfff0
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x20000
 CONFIG_SPL_BSS_MAX_SIZE=0x1ffff
 CONFIG_SPL_BOARD_INIT=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/etamin_defconfig b/configs/etamin_defconfig
index 1e7f36eb51ce..9da7bfbb3994 100644
--- a/configs/etamin_defconfig
+++ b/configs/etamin_defconfig
@@ -37,6 +37,7 @@ CONFIG_USE_PREBOOT=y
 CONFIG_SYS_CONSOLE_INFO_QUIET=y
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_ARCH_MISC_INIT=y
+CONFIG_SPL_BSS_START_ADDR=0x80000000
 CONFIG_SPL_I2C=y
 CONFIG_SPL_NAND_DRIVERS=y
 CONFIG_SPL_NAND_ECC=y
diff --git a/configs/evb-px30_defconfig b/configs/evb-px30_defconfig
index 7b1138ee63fb..c873f7c2883f 100644
--- a/configs/evb-px30_defconfig
+++ b/configs/evb-px30_defconfig
@@ -32,6 +32,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x20000
 CONFIG_SPL_PAD_TO=0x7f8000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x4000000
 CONFIG_SPL_BSS_MAX_SIZE=0x4000
 CONFIG_SPL_BOOTROM_SUPPORT=y
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
diff --git a/configs/evb-px5_defconfig b/configs/evb-px5_defconfig
index 753e6edc35d6..82620159ab11 100644
--- a/configs/evb-px5_defconfig
+++ b/configs/evb-px5_defconfig
@@ -36,6 +36,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_ARCH_EARLY_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x40000
 CONFIG_SPL_PAD_TO=0x7f8000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x400000
 CONFIG_SPL_BSS_MAX_SIZE=0x20000
 CONFIG_SPL_BOOTROM_SUPPORT=y
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
diff --git a/configs/evb-rk3308_defconfig b/configs/evb-rk3308_defconfig
index e871ba1b8e76..eb17b3d5e1f4 100644
--- a/configs/evb-rk3308_defconfig
+++ b/configs/evb-rk3308_defconfig
@@ -26,6 +26,8 @@ CONFIG_SYS_CONSOLE_INFO_QUIET=y
 # CONFIG_DISPLAY_CPUINFO is not set
 CONFIG_SPL_MAX_SIZE=0x20000
 CONFIG_SPL_PAD_TO=0x7f8000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x400000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x400000
diff --git a/configs/evb-rk3328_defconfig b/configs/evb-rk3328_defconfig
index f247f692a0c7..373aaecd16f5 100644
--- a/configs/evb-rk3328_defconfig
+++ b/configs/evb-rk3328_defconfig
@@ -29,6 +29,8 @@ CONFIG_DEFAULT_FDT_FILE="rockchip/rk3328-evb.dtb"
 CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_SPL_MAX_SIZE=0x40000
 CONFIG_SPL_PAD_TO=0x7f8000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x2000000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
 CONFIG_TPL_SYS_MALLOC_SIMPLE=y
diff --git a/configs/evb-rk3399_defconfig b/configs/evb-rk3399_defconfig
index a2f0698525b5..e3b7137c8f1f 100644
--- a/configs/evb-rk3399_defconfig
+++ b/configs/evb-rk3399_defconfig
@@ -18,6 +18,8 @@ CONFIG_DEFAULT_FDT_FILE="rockchip/rk3399-evb.dtb"
 CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_SPL_MAX_SIZE=0x2e000
 CONFIG_SPL_PAD_TO=0x7f8000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x400000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/evb-rk3568_defconfig b/configs/evb-rk3568_defconfig
index 6afd5d6d70fc..135f48ced048 100644
--- a/configs/evb-rk3568_defconfig
+++ b/configs/evb-rk3568_defconfig
@@ -28,6 +28,8 @@ CONFIG_DEFAULT_FDT_FILE="rockchip/rk3568-evb.dtb"
 CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_SPL_MAX_SIZE=0x20000
 CONFIG_SPL_PAD_TO=0x7f8000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x4000000
 CONFIG_SPL_BSS_MAX_SIZE=0x4000
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/ficus-rk3399_defconfig b/configs/ficus-rk3399_defconfig
index 7012c02f28eb..b2c530d33805 100644
--- a/configs/ficus-rk3399_defconfig
+++ b/configs/ficus-rk3399_defconfig
@@ -18,6 +18,8 @@ CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0x300000
 CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_SPL_MAX_SIZE=0x2e000
 CONFIG_SPL_PAD_TO=0x7f8000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0xff8e0000
 CONFIG_SPL_BSS_MAX_SIZE=0x10000
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/firefly-px30_defconfig b/configs/firefly-px30_defconfig
index 31374c55d8c3..bef490d73a4f 100644
--- a/configs/firefly-px30_defconfig
+++ b/configs/firefly-px30_defconfig
@@ -33,6 +33,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x20000
 CONFIG_SPL_PAD_TO=0x7f8000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x4000000
 CONFIG_SPL_BSS_MAX_SIZE=0x4000
 CONFIG_SPL_BOOTROM_SUPPORT=y
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
diff --git a/configs/firefly-rk3399_defconfig b/configs/firefly-rk3399_defconfig
index 2f7cb97aa653..036769c066a2 100644
--- a/configs/firefly-rk3399_defconfig
+++ b/configs/firefly-rk3399_defconfig
@@ -19,6 +19,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x2e000
 CONFIG_SPL_PAD_TO=0x7f8000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x400000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/gardena-smart-gateway-at91sam_defconfig b/configs/gardena-smart-gateway-at91sam_defconfig
index 42d700b6cd58..ea79a2f9384f 100644
--- a/configs/gardena-smart-gateway-at91sam_defconfig
+++ b/configs/gardena-smart-gateway-at91sam_defconfig
@@ -36,6 +36,8 @@ CONFIG_SYS_CONSOLE_IS_IN_ENV=y
 CONFIG_SYS_CONSOLE_INFO_QUIET=y
 CONFIG_SPL_MAX_SIZE=0x7000
 CONFIG_SPL_PAD_TO=0x40000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x20000000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/gardena-smart-gateway-mt7688_defconfig b/configs/gardena-smart-gateway-mt7688_defconfig
index fd9dd9fbcbe7..b9ee281be9f9 100644
--- a/configs/gardena-smart-gateway-mt7688_defconfig
+++ b/configs/gardena-smart-gateway-mt7688_defconfig
@@ -38,6 +38,7 @@ CONFIG_SYS_CONSOLE_INFO_QUIET=y
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_SYS_MALLOC_BOOTPARAMS=y
 CONFIG_SPL_MAX_SIZE=0x10000
+CONFIG_SPL_BSS_START_ADDR=0x80010000
 CONFIG_SPL_BSS_MAX_SIZE=0x10000
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
 CONFIG_SPL_NOR_SUPPORT=y
diff --git a/configs/giedi_defconfig b/configs/giedi_defconfig
index ec6082a92c6a..ac8ef890a338 100644
--- a/configs/giedi_defconfig
+++ b/configs/giedi_defconfig
@@ -37,6 +37,8 @@ CONFIG_BOOTCOMMAND="if usrbutton; then run flash_self_test; reset; fi;run flash_
 CONFIG_LOG=y
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_SPL_MAX_SIZE=0x1f000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x128000
 CONFIG_SPL_BSS_MAX_SIZE=0x1000
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
diff --git a/configs/helios4_defconfig b/configs/helios4_defconfig
index 9384aa50fb7e..2a1db65d1bfd 100644
--- a/configs/helios4_defconfig
+++ b/configs/helios4_defconfig
@@ -27,6 +27,8 @@ CONFIG_SYS_CONSOLE_INFO_QUIET=y
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_SPL_MAX_SIZE=0x22fd0
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x40023000
 CONFIG_SPL_BSS_MAX_SIZE=0x4000
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/imx7_cm_defconfig b/configs/imx7_cm_defconfig
index 351d47fe552e..1fc16f5f36ed 100644
--- a/configs/imx7_cm_defconfig
+++ b/configs/imx7_cm_defconfig
@@ -25,6 +25,7 @@ CONFIG_BOOTCOMMAND="run boot${boot-mode}"
 CONFIG_DEFAULT_FDT_FILE="ask"
 # CONFIG_BOARD_EARLY_INIT_F is not set
 CONFIG_SPL_MAX_SIZE=0xe000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
 CONFIG_SPL_I2C=y
 CONFIG_SPL_USB_HOST=y
diff --git a/configs/imx8mm-cl-iot-gate-optee_defconfig b/configs/imx8mm-cl-iot-gate-optee_defconfig
index 64d2befc98c6..7cd51348baad 100644
--- a/configs/imx8mm-cl-iot-gate-optee_defconfig
+++ b/configs/imx8mm-cl-iot-gate-optee_defconfig
@@ -24,6 +24,8 @@ CONFIG_SPL_LOAD_FIT=y
 CONFIG_OF_SYSTEM_SETUP=y
 CONFIG_BOARD_LATE_INIT=y
 CONFIG_SPL_MAX_SIZE=0x25000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x910000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_BOARD_INIT=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/imx8mm-cl-iot-gate_defconfig b/configs/imx8mm-cl-iot-gate_defconfig
index 2494d1a79b0e..e630bcaf342f 100644
--- a/configs/imx8mm-cl-iot-gate_defconfig
+++ b/configs/imx8mm-cl-iot-gate_defconfig
@@ -26,6 +26,8 @@ CONFIG_SPL_LOAD_FIT=y
 CONFIG_OF_SYSTEM_SETUP=y
 CONFIG_BOARD_LATE_INIT=y
 CONFIG_SPL_MAX_SIZE=0x25000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x910000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_BOARD_INIT=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/imx8mm-icore-mx8mm-ctouch2_defconfig b/configs/imx8mm-icore-mx8mm-ctouch2_defconfig
index 5196f6f0ea2c..1ac7766400ba 100644
--- a/configs/imx8mm-icore-mx8mm-ctouch2_defconfig
+++ b/configs/imx8mm-icore-mx8mm-ctouch2_defconfig
@@ -24,6 +24,8 @@ CONFIG_SPL_FIT_GENERATOR="arch/arm/mach-imx/mkimage_fit_atf.sh"
 CONFIG_OF_SYSTEM_SETUP=y
 CONFIG_DEFAULT_FDT_FILE="imx8mm-icore-mx8mm-ctouch2.dtb"
 CONFIG_SPL_MAX_SIZE=0x25000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x910000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_BOARD_INIT=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/imx8mm-icore-mx8mm-edimm2.2_defconfig b/configs/imx8mm-icore-mx8mm-edimm2.2_defconfig
index cf385a625b3f..08151f3f6927 100644
--- a/configs/imx8mm-icore-mx8mm-edimm2.2_defconfig
+++ b/configs/imx8mm-icore-mx8mm-edimm2.2_defconfig
@@ -24,6 +24,8 @@ CONFIG_SPL_FIT_GENERATOR="arch/arm/mach-imx/mkimage_fit_atf.sh"
 CONFIG_OF_SYSTEM_SETUP=y
 CONFIG_DEFAULT_FDT_FILE="imx8mm-icore-mx8mm-edimm2.2.dtb"
 CONFIG_SPL_MAX_SIZE=0x25000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x910000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_BOARD_INIT=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/imx8mm-mx8menlo_defconfig b/configs/imx8mm-mx8menlo_defconfig
index f104dada533a..fa176e498fe8 100644
--- a/configs/imx8mm-mx8menlo_defconfig
+++ b/configs/imx8mm-mx8menlo_defconfig
@@ -35,6 +35,8 @@ CONFIG_LOG=y
 CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_BOARD_LATE_INIT=y
 CONFIG_SPL_MAX_SIZE=0x25000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x910000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_BOARD_INIT=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/imx8mm_beacon_defconfig b/configs/imx8mm_beacon_defconfig
index 3481aff6d55f..5ad7f28aa08d 100644
--- a/configs/imx8mm_beacon_defconfig
+++ b/configs/imx8mm_beacon_defconfig
@@ -26,6 +26,8 @@ CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="mmc dev ${mmcdev}; if mmc rescan; then if run loadbootscript; then run bootscript; else if run loadimage; then run mmcboot; else run netboot; fi; fi; fi;"
 CONFIG_DEFAULT_FDT_FILE="imx8mm-beacon-kit.dtb"
 CONFIG_SPL_MAX_SIZE=0x25000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x910000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_BOARD_INIT=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/imx8mm_data_modul_edm_sbc_defconfig b/configs/imx8mm_data_modul_edm_sbc_defconfig
index 3e141aef6c37..fbc6cecb91f9 100644
--- a/configs/imx8mm_data_modul_edm_sbc_defconfig
+++ b/configs/imx8mm_data_modul_edm_sbc_defconfig
@@ -42,6 +42,8 @@ CONFIG_SYS_CONSOLE_ENV_OVERWRITE=y
 CONFIG_ARCH_MISC_INIT=y
 CONFIG_BOARD_LATE_INIT=y
 CONFIG_SPL_MAX_SIZE=0x25000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x910000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
 CONFIG_SPL_LEGACY_IMAGE_FORMAT=y
diff --git a/configs/imx8mm_evk_defconfig b/configs/imx8mm_evk_defconfig
index 2d73d2454dea..e5497ef8047c 100644
--- a/configs/imx8mm_evk_defconfig
+++ b/configs/imx8mm_evk_defconfig
@@ -24,6 +24,8 @@ CONFIG_SPL_LOAD_FIT=y
 CONFIG_OF_SYSTEM_SETUP=y
 CONFIG_BOARD_LATE_INIT=y
 CONFIG_SPL_MAX_SIZE=0x25000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x910000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_BOARD_INIT=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/imx8mm_venice_defconfig b/configs/imx8mm_venice_defconfig
index 3f8662ac7155..fe6f8d03d4da 100644
--- a/configs/imx8mm_venice_defconfig
+++ b/configs/imx8mm_venice_defconfig
@@ -32,6 +32,8 @@ CONFIG_USE_PREBOOT=y
 CONFIG_PREBOOT="gsc wd-disable"
 CONFIG_BOARD_LATE_INIT=y
 CONFIG_SPL_MAX_SIZE=0x25000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x910000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x920000
diff --git a/configs/imx8mn_beacon_2g_defconfig b/configs/imx8mn_beacon_2g_defconfig
index bb503652362e..28ce1d1f6e94 100644
--- a/configs/imx8mn_beacon_2g_defconfig
+++ b/configs/imx8mn_beacon_2g_defconfig
@@ -33,6 +33,8 @@ CONFIG_BOOTCOMMAND="mmc dev ${mmcdev}; if mmc rescan; then if run loadbootscript
 CONFIG_DEFAULT_FDT_FILE="imx8mn-beacon-kit.dtb"
 CONFIG_ARCH_MISC_INIT=y
 CONFIG_SPL_MAX_SIZE=0x25000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x95e000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_BOOTROM_SUPPORT=y
diff --git a/configs/imx8mn_beacon_defconfig b/configs/imx8mn_beacon_defconfig
index 95e4cc432ada..3495bc0f9a19 100644
--- a/configs/imx8mn_beacon_defconfig
+++ b/configs/imx8mn_beacon_defconfig
@@ -32,6 +32,8 @@ CONFIG_BOOTCOMMAND="mmc dev ${mmcdev}; if mmc rescan; then if run loadbootscript
 CONFIG_DEFAULT_FDT_FILE="imx8mn-beacon-kit.dtb"
 CONFIG_ARCH_MISC_INIT=y
 CONFIG_SPL_MAX_SIZE=0x25000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x95e000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_BOOTROM_SUPPORT=y
diff --git a/configs/imx8mn_bsh_smm_s2_defconfig b/configs/imx8mn_bsh_smm_s2_defconfig
index 9a4609dd8239..bfe89a5379b3 100644
--- a/configs/imx8mn_bsh_smm_s2_defconfig
+++ b/configs/imx8mn_bsh_smm_s2_defconfig
@@ -27,6 +27,8 @@ CONFIG_DEFAULT_FDT_FILE="freescale/imx8mn-bsh-smm-s2.dtb"
 CONFIG_ARCH_MISC_INIT=y
 CONFIG_BOARD_LATE_INIT=y
 CONFIG_SPL_MAX_SIZE=0x25000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x950000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_BOOTROM_SUPPORT=y
diff --git a/configs/imx8mn_bsh_smm_s2pro_defconfig b/configs/imx8mn_bsh_smm_s2pro_defconfig
index 66586ba96a23..ab4c04f8059a 100644
--- a/configs/imx8mn_bsh_smm_s2pro_defconfig
+++ b/configs/imx8mn_bsh_smm_s2pro_defconfig
@@ -28,6 +28,8 @@ CONFIG_DEFAULT_FDT_FILE="freescale/imx8mn-bsh-smm-s2pro.dtb"
 CONFIG_ARCH_MISC_INIT=y
 CONFIG_BOARD_LATE_INIT=y
 CONFIG_SPL_MAX_SIZE=0x25000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x950000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_BOOTROM_SUPPORT=y
diff --git a/configs/imx8mn_ddr4_evk_defconfig b/configs/imx8mn_ddr4_evk_defconfig
index 16f217cd5a75..4ac98fefa85f 100644
--- a/configs/imx8mn_ddr4_evk_defconfig
+++ b/configs/imx8mn_ddr4_evk_defconfig
@@ -26,6 +26,8 @@ CONFIG_OF_SYSTEM_SETUP=y
 CONFIG_DEFAULT_FDT_FILE="imx8mn-ddr4-evk.dtb"
 CONFIG_BOARD_LATE_INIT=y
 CONFIG_SPL_MAX_SIZE=0x25000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x950000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_BOOTROM_SUPPORT=y
diff --git a/configs/imx8mn_evk_defconfig b/configs/imx8mn_evk_defconfig
index ead7f6d21a82..a17b839e36bf 100644
--- a/configs/imx8mn_evk_defconfig
+++ b/configs/imx8mn_evk_defconfig
@@ -27,6 +27,8 @@ CONFIG_DEFAULT_FDT_FILE="imx8mn-evk.dtb"
 CONFIG_ARCH_MISC_INIT=y
 CONFIG_BOARD_LATE_INIT=y
 CONFIG_SPL_MAX_SIZE=0x25000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x950000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_BOOTROM_SUPPORT=y
diff --git a/configs/imx8mn_var_som_defconfig b/configs/imx8mn_var_som_defconfig
index a1f9cee1e193..10ed2527c3a9 100644
--- a/configs/imx8mn_var_som_defconfig
+++ b/configs/imx8mn_var_som_defconfig
@@ -28,6 +28,8 @@ CONFIG_OF_SYSTEM_SETUP=y
 CONFIG_DEFAULT_FDT_FILE="freescale/imx8mn-var-som-symphony.dtb"
 CONFIG_ARCH_MISC_INIT=y
 CONFIG_SPL_MAX_SIZE=0x25000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x950000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_BOOTROM_SUPPORT=y
diff --git a/configs/imx8mn_venice_defconfig b/configs/imx8mn_venice_defconfig
index f2ddb98a1c0b..7479f997aae0 100644
--- a/configs/imx8mn_venice_defconfig
+++ b/configs/imx8mn_venice_defconfig
@@ -33,6 +33,8 @@ CONFIG_USE_PREBOOT=y
 CONFIG_PREBOOT="gsc wd-disable"
 CONFIG_BOARD_LATE_INIT=y
 CONFIG_SPL_MAX_SIZE=0x25000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x950000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_BOOTROM_SUPPORT=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/imx8mp_dhcom_pdk2_defconfig b/configs/imx8mp_dhcom_pdk2_defconfig
index cc815ac2fe04..5aca5feda029 100644
--- a/configs/imx8mp_dhcom_pdk2_defconfig
+++ b/configs/imx8mp_dhcom_pdk2_defconfig
@@ -46,6 +46,8 @@ CONFIG_SYS_CONSOLE_ENV_OVERWRITE=y
 CONFIG_ARCH_MISC_INIT=y
 CONFIG_BOARD_LATE_INIT=y
 CONFIG_SPL_MAX_SIZE=0x25000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x96fc00
 CONFIG_SPL_BSS_MAX_SIZE=0x400
 CONFIG_SPL_BOOTROM_SUPPORT=y
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
diff --git a/configs/imx8mp_evk_defconfig b/configs/imx8mp_evk_defconfig
index 1f4bf537c407..ebd4db2b1c42 100644
--- a/configs/imx8mp_evk_defconfig
+++ b/configs/imx8mp_evk_defconfig
@@ -29,6 +29,8 @@ CONFIG_OF_SYSTEM_SETUP=y
 CONFIG_DEFAULT_FDT_FILE="imx8mp-evk.dtb"
 CONFIG_BOARD_LATE_INIT=y
 CONFIG_SPL_MAX_SIZE=0x26000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x98fc00
 CONFIG_SPL_BSS_MAX_SIZE=0x400
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_BOOTROM_SUPPORT=y
diff --git a/configs/imx8mp_rsb3720a1_4G_defconfig b/configs/imx8mp_rsb3720a1_4G_defconfig
index e8c1bc511918..a8071fdfcf6a 100644
--- a/configs/imx8mp_rsb3720a1_4G_defconfig
+++ b/configs/imx8mp_rsb3720a1_4G_defconfig
@@ -35,6 +35,8 @@ CONFIG_ARCH_MISC_INIT=y
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_BOARD_LATE_INIT=y
 CONFIG_SPL_MAX_SIZE=0x26000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x98fc00
 CONFIG_SPL_BSS_MAX_SIZE=0x400
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_BOOTROM_SUPPORT=y
diff --git a/configs/imx8mp_rsb3720a1_6G_defconfig b/configs/imx8mp_rsb3720a1_6G_defconfig
index 323f5fb3356a..90800abf923d 100644
--- a/configs/imx8mp_rsb3720a1_6G_defconfig
+++ b/configs/imx8mp_rsb3720a1_6G_defconfig
@@ -35,6 +35,8 @@ CONFIG_ARCH_MISC_INIT=y
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_BOARD_LATE_INIT=y
 CONFIG_SPL_MAX_SIZE=0x26000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x98fc00
 CONFIG_SPL_BSS_MAX_SIZE=0x400
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_BOOTROM_SUPPORT=y
diff --git a/configs/imx8mp_venice_defconfig b/configs/imx8mp_venice_defconfig
index 2485ae21ee7c..5367ea8489e6 100644
--- a/configs/imx8mp_venice_defconfig
+++ b/configs/imx8mp_venice_defconfig
@@ -33,6 +33,8 @@ CONFIG_USE_PREBOOT=y
 CONFIG_PREBOOT="gsc wd-disable"
 CONFIG_BOARD_LATE_INIT=y
 CONFIG_SPL_MAX_SIZE=0x26000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x98fc00
 CONFIG_SPL_BSS_MAX_SIZE=0x400
 CONFIG_SPL_BOOTROM_SUPPORT=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/imx8mq_cm_defconfig b/configs/imx8mq_cm_defconfig
index a67c82ac3c34..4c25e95ab727 100644
--- a/configs/imx8mq_cm_defconfig
+++ b/configs/imx8mq_cm_defconfig
@@ -28,6 +28,8 @@ CONFIG_SPL_LOAD_FIT=y
 CONFIG_OF_SYSTEM_SETUP=y
 CONFIG_BOARD_LATE_INIT=y
 CONFIG_SPL_MAX_SIZE=0x1f000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x180000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_BOARD_INIT=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/imx8mq_evk_defconfig b/configs/imx8mq_evk_defconfig
index da03518af2b2..a5917cc772a0 100644
--- a/configs/imx8mq_evk_defconfig
+++ b/configs/imx8mq_evk_defconfig
@@ -30,6 +30,8 @@ CONFIG_OF_SYSTEM_SETUP=y
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_BOARD_LATE_INIT=y
 CONFIG_SPL_MAX_SIZE=0x1f000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x180000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_BOARD_INIT=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/imx8mq_phanbell_defconfig b/configs/imx8mq_phanbell_defconfig
index 6ef649b1646f..212ff07eee73 100644
--- a/configs/imx8mq_phanbell_defconfig
+++ b/configs/imx8mq_phanbell_defconfig
@@ -32,6 +32,8 @@ CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="mmc dev ${mmcdev}; if mmc rescan; then if run loadbootscript; then run bootscript; else if run loadimage; then run mmcboot; else run netboot; fi; fi; else booti ${loadaddr} - ${fdt_addr}; fi"
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_SPL_MAX_SIZE=0x2b000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x180000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_BOARD_INIT=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/imx8qm_mek_defconfig b/configs/imx8qm_mek_defconfig
index 5fc2e7a414ef..abe074de8419 100644
--- a/configs/imx8qm_mek_defconfig
+++ b/configs/imx8qm_mek_defconfig
@@ -31,6 +31,8 @@ CONFIG_BOOTCOMMAND="mmc dev ${mmcdev}; if mmc rescan; then if run loadbootscript
 CONFIG_LOG=y
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_SPL_MAX_SIZE=0x1f000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x128000
 CONFIG_SPL_BSS_MAX_SIZE=0x1000
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
diff --git a/configs/imx8qm_rom7720_a1_4G_defconfig b/configs/imx8qm_rom7720_a1_4G_defconfig
index 62c1f03b7b02..5e32568ef198 100644
--- a/configs/imx8qm_rom7720_a1_4G_defconfig
+++ b/configs/imx8qm_rom7720_a1_4G_defconfig
@@ -28,6 +28,8 @@ CONFIG_BOOTCOMMAND="mmc dev ${mmcdev}; if mmc rescan; then if run loadbootscript
 CONFIG_LOG=y
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_SPL_MAX_SIZE=0x1f000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x128000
 CONFIG_SPL_BSS_MAX_SIZE=0x1000
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_POWER_DOMAIN=y
diff --git a/configs/imx8qxp_mek_defconfig b/configs/imx8qxp_mek_defconfig
index 8b382156006f..eda7739acb40 100644
--- a/configs/imx8qxp_mek_defconfig
+++ b/configs/imx8qxp_mek_defconfig
@@ -31,6 +31,8 @@ CONFIG_BOOTCOMMAND="mmc dev ${mmcdev}; if mmc rescan; then if run loadbootscript
 CONFIG_LOG=y
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_SPL_MAX_SIZE=0x1f000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x128000
 CONFIG_SPL_BSS_MAX_SIZE=0x1000
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
diff --git a/configs/imx8ulp_evk_defconfig b/configs/imx8ulp_evk_defconfig
index 5d3c8395aeef..c08197572a5e 100644
--- a/configs/imx8ulp_evk_defconfig
+++ b/configs/imx8ulp_evk_defconfig
@@ -28,6 +28,8 @@ CONFIG_DEFAULT_FDT_FILE="imx8ulp-evk"
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_BOARD_LATE_INIT=y
 CONFIG_SPL_MAX_SIZE=0x25000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x22048000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_BOOTROM_SUPPORT=y
diff --git a/configs/iot2050_defconfig b/configs/iot2050_defconfig
index 7249b2d60561..10f2cf4f814c 100644
--- a/configs/iot2050_defconfig
+++ b/configs/iot2050_defconfig
@@ -34,6 +34,8 @@ CONFIG_SPL_SHOW_BOOT_PROGRESS=y
 CONFIG_CONSOLE_MUX=y
 # CONFIG_DISPLAY_CPUINFO is not set
 CONFIG_SPL_MAX_SIZE=0x58000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x80a00000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
diff --git a/configs/j7200_evm_a72_defconfig b/configs/j7200_evm_a72_defconfig
index b5efa4057122..af7a30db61f4 100644
--- a/configs/j7200_evm_a72_defconfig
+++ b/configs/j7200_evm_a72_defconfig
@@ -35,6 +35,8 @@ CONFIG_OF_BOARD_SETUP=y
 CONFIG_BOOTCOMMAND="run findfdt; run envboot; run init_${boot}; run boot_rprocs; run get_kern_${boot}; run get_fdt_${boot}; run get_overlay_${boot}; run run_kern"
 CONFIG_LOGLEVEL=7
 CONFIG_SPL_MAX_SIZE=0xc0000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x80a00000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
diff --git a/configs/j7200_evm_r5_defconfig b/configs/j7200_evm_r5_defconfig
index a830cb912c03..4e82e092d6bb 100644
--- a/configs/j7200_evm_r5_defconfig
+++ b/configs/j7200_evm_r5_defconfig
@@ -31,6 +31,8 @@ CONFIG_SPL_FIT_IMAGE_POST_PROCESS=y
 CONFIG_USE_BOOTCOMMAND=y
 # CONFIG_DISPLAY_CPUINFO is not set
 CONFIG_SPL_MAX_SIZE=0xc0000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x41cf5bfc
 CONFIG_SPL_BSS_MAX_SIZE=0xa000
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_STACK_R=y
diff --git a/configs/j721e_evm_a72_defconfig b/configs/j721e_evm_a72_defconfig
index 8b703d18957c..202ef8825afe 100644
--- a/configs/j721e_evm_a72_defconfig
+++ b/configs/j721e_evm_a72_defconfig
@@ -32,6 +32,8 @@ CONFIG_SPL_LOAD_FIT_ADDRESS=0x81000000
 CONFIG_BOOTCOMMAND="run findfdt; run distro_bootcmd; run init_${boot}; run main_cpsw0_qsgmii_phyinit; run boot_rprocs; run get_kern_${boot}; run get_fdt_${boot}; run get_overlay_${boot}; run run_kern"
 CONFIG_LOGLEVEL=7
 CONFIG_SPL_MAX_SIZE=0xc0000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x80a00000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
diff --git a/configs/j721e_evm_r5_defconfig b/configs/j721e_evm_r5_defconfig
index 475da6f588f3..6df4deac3e41 100644
--- a/configs/j721e_evm_r5_defconfig
+++ b/configs/j721e_evm_r5_defconfig
@@ -31,6 +31,8 @@ CONFIG_SPL_FIT_IMAGE_POST_PROCESS=y
 CONFIG_USE_BOOTCOMMAND=y
 # CONFIG_DISPLAY_CPUINFO is not set
 CONFIG_SPL_MAX_SIZE=0xc0000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x41cf5bfc
 CONFIG_SPL_BSS_MAX_SIZE=0xa000
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_STACK_R=y
diff --git a/configs/j721e_hs_evm_a72_defconfig b/configs/j721e_hs_evm_a72_defconfig
index fd2c9667f691..161c2ecfb3c2 100644
--- a/configs/j721e_hs_evm_a72_defconfig
+++ b/configs/j721e_hs_evm_a72_defconfig
@@ -33,6 +33,8 @@ CONFIG_SPL_LOAD_FIT_ADDRESS=0x81000000
 CONFIG_BOOTCOMMAND="run findfdt; run envboot; run init_${boot}; run main_cpsw0_qsgmii_phyinit; run boot_rprocs; run get_fit_${boot}; run get_overlaystring; run run_fit"
 CONFIG_LOGLEVEL=7
 CONFIG_SPL_MAX_SIZE=0xc0000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x80a00000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
diff --git a/configs/j721e_hs_evm_r5_defconfig b/configs/j721e_hs_evm_r5_defconfig
index 5e253b2c8585..ea1cc86a3bfa 100644
--- a/configs/j721e_hs_evm_r5_defconfig
+++ b/configs/j721e_hs_evm_r5_defconfig
@@ -32,6 +32,8 @@ CONFIG_SPL_LOAD_FIT_ADDRESS=0x80080000
 CONFIG_USE_BOOTCOMMAND=y
 # CONFIG_DISPLAY_CPUINFO is not set
 CONFIG_SPL_MAX_SIZE=0xc0000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x41cf5bfc
 CONFIG_SPL_BSS_MAX_SIZE=0xa000
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_SEPARATE_BSS=y
diff --git a/configs/j721s2_evm_a72_defconfig b/configs/j721s2_evm_a72_defconfig
index 0628e2994bd5..7903addb3d1d 100644
--- a/configs/j721s2_evm_a72_defconfig
+++ b/configs/j721s2_evm_a72_defconfig
@@ -35,6 +35,8 @@ CONFIG_OF_BOARD_SETUP=y
 CONFIG_BOOTCOMMAND="run findfdt; run envboot; run init_${boot}; run main_cpsw0_qsgmii_phyinit; run boot_rprocs; run get_kern_${boot}; run get_fdt_${boot}; run get_overlay_${boot}; run run_kern"
 CONFIG_LOGLEVEL=7
 CONFIG_SPL_MAX_SIZE=0xc0000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x80a00000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
diff --git a/configs/j721s2_evm_r5_defconfig b/configs/j721s2_evm_r5_defconfig
index c706ff319977..1a548e7cda96 100644
--- a/configs/j721s2_evm_r5_defconfig
+++ b/configs/j721s2_evm_r5_defconfig
@@ -35,6 +35,8 @@ CONFIG_USE_BOOTCOMMAND=y
 CONFIG_SPL_SIZE_LIMIT_SUBTRACT_GD=y
 CONFIG_SPL_SIZE_LIMIT_SUBTRACT_MALLOC=y
 CONFIG_SPL_MAX_SIZE=0xc0000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x41c76000
 CONFIG_SPL_BSS_MAX_SIZE=0xa000
 CONFIG_SPL_SYS_REPORT_STACK_F_USAGE=y
 CONFIG_SPL_BOARD_INIT=y
diff --git a/configs/k2e_evm_defconfig b/configs/k2e_evm_defconfig
index ed6e96dac690..e26bf3a2b477 100644
--- a/configs/k2e_evm_defconfig
+++ b/configs/k2e_evm_defconfig
@@ -30,6 +30,8 @@ CONFIG_BOOTCOMMAND="run init_${boot}; run get_mon_${boot} run_mon; run get_kern_
 CONFIG_SYS_CONSOLE_INFO_QUIET=y
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_SPL_MAX_SIZE=0xfff8
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0xc10fff8
 CONFIG_SPL_BSS_MAX_SIZE=0x8000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xc1223f4
diff --git a/configs/k2g_evm_defconfig b/configs/k2g_evm_defconfig
index 1ec8dd042e21..e3f023690ea6 100644
--- a/configs/k2g_evm_defconfig
+++ b/configs/k2g_evm_defconfig
@@ -29,6 +29,8 @@ CONFIG_BOOTCOMMAND="run findfdt; run envboot; run init_${boot}; run get_mon_${bo
 CONFIG_SYS_CONSOLE_INFO_QUIET=y
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_SPL_MAX_SIZE=0xfff8
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0xc0afff8
 CONFIG_SPL_BSS_MAX_SIZE=0x8000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xc0c23f4
diff --git a/configs/k2hk_evm_defconfig b/configs/k2hk_evm_defconfig
index 2238aed03e5f..f27873f558c4 100644
--- a/configs/k2hk_evm_defconfig
+++ b/configs/k2hk_evm_defconfig
@@ -30,6 +30,8 @@ CONFIG_BOOTCOMMAND="run init_${boot}; run get_mon_${boot} run_mon; run get_kern_
 CONFIG_SYS_CONSOLE_INFO_QUIET=y
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_SPL_MAX_SIZE=0xfff8
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0xc20fff8
 CONFIG_SPL_BSS_MAX_SIZE=0x8000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xc2223f4
diff --git a/configs/k2l_evm_defconfig b/configs/k2l_evm_defconfig
index d96b8084ee45..b48feb2719d6 100644
--- a/configs/k2l_evm_defconfig
+++ b/configs/k2l_evm_defconfig
@@ -30,6 +30,8 @@ CONFIG_BOOTCOMMAND="run init_${boot}; run get_mon_${boot} run_mon; run get_kern_
 CONFIG_SYS_CONSOLE_INFO_QUIET=y
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_SPL_MAX_SIZE=0xfff8
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0xc10fff8
 CONFIG_SPL_BSS_MAX_SIZE=0x8000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xc1223f4
diff --git a/configs/khadas-edge-captain-rk3399_defconfig b/configs/khadas-edge-captain-rk3399_defconfig
index 085c6b667321..e9618e3e207a 100644
--- a/configs/khadas-edge-captain-rk3399_defconfig
+++ b/configs/khadas-edge-captain-rk3399_defconfig
@@ -18,6 +18,8 @@ CONFIG_DEFAULT_FDT_FILE="rockchip/rk3399-khadas-edge-captain.dtb"
 CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_SPL_MAX_SIZE=0x2e000
 CONFIG_SPL_PAD_TO=0x7f8000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x400000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/khadas-edge-rk3399_defconfig b/configs/khadas-edge-rk3399_defconfig
index b66301877e2a..252a02b579e1 100644
--- a/configs/khadas-edge-rk3399_defconfig
+++ b/configs/khadas-edge-rk3399_defconfig
@@ -18,6 +18,8 @@ CONFIG_DEFAULT_FDT_FILE="rockchip/rk3399-khadas-edge.dtb"
 CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_SPL_MAX_SIZE=0x2e000
 CONFIG_SPL_PAD_TO=0x7f8000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x400000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/khadas-edge-v-rk3399_defconfig b/configs/khadas-edge-v-rk3399_defconfig
index 5438d0a32264..731fbfcab264 100644
--- a/configs/khadas-edge-v-rk3399_defconfig
+++ b/configs/khadas-edge-v-rk3399_defconfig
@@ -18,6 +18,8 @@ CONFIG_DEFAULT_FDT_FILE="rockchip/rk3399-khadas-edge-v.dtb"
 CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_SPL_MAX_SIZE=0x2e000
 CONFIG_SPL_PAD_TO=0x7f8000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x400000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/kontron-sl-mx8mm_defconfig b/configs/kontron-sl-mx8mm_defconfig
index cd96210c6bbf..a2584c606f88 100644
--- a/configs/kontron-sl-mx8mm_defconfig
+++ b/configs/kontron-sl-mx8mm_defconfig
@@ -27,6 +27,8 @@ CONFIG_SPL_LOAD_FIT=y
 CONFIG_OF_BOARD_SETUP=y
 CONFIG_BOARD_TYPES=y
 CONFIG_SPL_MAX_SIZE=0x25000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x910000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_BOARD_INIT=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/kontron_pitx_imx8m_defconfig b/configs/kontron_pitx_imx8m_defconfig
index 4660e98e5aeb..e8f653bf817e 100644
--- a/configs/kontron_pitx_imx8m_defconfig
+++ b/configs/kontron_pitx_imx8m_defconfig
@@ -31,6 +31,8 @@ CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_BOARD_LATE_INIT=y
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x1f000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x180000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x187ff0
diff --git a/configs/kontron_sl28_defconfig b/configs/kontron_sl28_defconfig
index 345db0314896..05627bb7dc78 100644
--- a/configs/kontron_sl28_defconfig
+++ b/configs/kontron_sl28_defconfig
@@ -38,6 +38,8 @@ CONFIG_USE_BOOTARGS=y
 CONFIG_BOARD_LATE_INIT=y
 CONFIG_PCI_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x20000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x80100000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
 CONFIG_SPL_BOARD_INIT=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/leez-rk3399_defconfig b/configs/leez-rk3399_defconfig
index d524e4546c81..1e708ed3f906 100644
--- a/configs/leez-rk3399_defconfig
+++ b/configs/leez-rk3399_defconfig
@@ -18,6 +18,8 @@ CONFIG_DEFAULT_FDT_FILE="rockchip/rk3399-leez-p710.dtb"
 CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_SPL_MAX_SIZE=0x2e000
 CONFIG_SPL_PAD_TO=0x7f8000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x400000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x400000
diff --git a/configs/linkit-smart-7688_defconfig b/configs/linkit-smart-7688_defconfig
index 3c385774c692..a129679e9d45 100644
--- a/configs/linkit-smart-7688_defconfig
+++ b/configs/linkit-smart-7688_defconfig
@@ -30,6 +30,7 @@ CONFIG_SYS_CONSOLE_INFO_QUIET=y
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_SYS_MALLOC_BOOTPARAMS=y
 CONFIG_SPL_MAX_SIZE=0x10000
+CONFIG_SPL_BSS_START_ADDR=0x80010000
 CONFIG_SPL_BSS_MAX_SIZE=0x10000
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
 CONFIG_SPL_NOR_SUPPORT=y
diff --git a/configs/lion-rk3368_defconfig b/configs/lion-rk3368_defconfig
index c700115aecc6..1b148f5c0f6b 100644
--- a/configs/lion-rk3368_defconfig
+++ b/configs/lion-rk3368_defconfig
@@ -34,6 +34,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_ARCH_EARLY_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x40000
 CONFIG_SPL_PAD_TO=0x7f8000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x400000
 CONFIG_SPL_BSS_MAX_SIZE=0x20000
 CONFIG_SPL_BOOTROM_SUPPORT=y
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
diff --git a/configs/ls1021aiot_sdcard_defconfig b/configs/ls1021aiot_sdcard_defconfig
index 74d5e7ce2f25..4bfc5aae58b7 100644
--- a/configs/ls1021aiot_sdcard_defconfig
+++ b/configs/ls1021aiot_sdcard_defconfig
@@ -33,6 +33,8 @@ CONFIG_MISC_INIT_R=y
 CONFIG_ID_EEPROM=y
 CONFIG_SPL_MAX_SIZE=0x1a000
 CONFIG_SPL_PAD_TO=0x1c000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x80100000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_FSL_PBL=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/ls1021aqds_nand_defconfig b/configs/ls1021aqds_nand_defconfig
index 57eefa684948..fb3447cc4708 100644
--- a/configs/ls1021aqds_nand_defconfig
+++ b/configs/ls1021aqds_nand_defconfig
@@ -43,6 +43,8 @@ CONFIG_MISC_INIT_R=y
 CONFIG_ID_EEPROM=y
 CONFIG_SPL_MAX_SIZE=0x1a000
 CONFIG_SPL_PAD_TO=0x1c000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x80100000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_FSL_PBL=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/ls1021aqds_sdcard_ifc_defconfig b/configs/ls1021aqds_sdcard_ifc_defconfig
index a2b39eb38438..6e686c65e083 100644
--- a/configs/ls1021aqds_sdcard_ifc_defconfig
+++ b/configs/ls1021aqds_sdcard_ifc_defconfig
@@ -42,6 +42,8 @@ CONFIG_MISC_INIT_R=y
 CONFIG_ID_EEPROM=y
 CONFIG_SPL_MAX_SIZE=0x1a000
 CONFIG_SPL_PAD_TO=0x1c000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x80100000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_FSL_PBL=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/ls1021aqds_sdcard_qspi_defconfig b/configs/ls1021aqds_sdcard_qspi_defconfig
index 62100e447479..318f4f5dd63c 100644
--- a/configs/ls1021aqds_sdcard_qspi_defconfig
+++ b/configs/ls1021aqds_sdcard_qspi_defconfig
@@ -41,6 +41,8 @@ CONFIG_MISC_INIT_R=y
 CONFIG_ID_EEPROM=y
 CONFIG_SPL_MAX_SIZE=0x1a000
 CONFIG_SPL_PAD_TO=0x1c000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x80100000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_FSL_PBL=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/ls1021atsn_sdcard_defconfig b/configs/ls1021atsn_sdcard_defconfig
index 85ba389ff6b1..35a383ce5726 100644
--- a/configs/ls1021atsn_sdcard_defconfig
+++ b/configs/ls1021atsn_sdcard_defconfig
@@ -35,6 +35,8 @@ CONFIG_MISC_INIT_R=y
 CONFIG_ID_EEPROM=y
 CONFIG_SPL_MAX_SIZE=0x1a000
 CONFIG_SPL_PAD_TO=0x1c000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x80100000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_FSL_PBL=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/ls1021atwr_sdcard_ifc_SECURE_BOOT_defconfig b/configs/ls1021atwr_sdcard_ifc_SECURE_BOOT_defconfig
index 13d46e47194e..d4d2e8b6530d 100644
--- a/configs/ls1021atwr_sdcard_ifc_SECURE_BOOT_defconfig
+++ b/configs/ls1021atwr_sdcard_ifc_SECURE_BOOT_defconfig
@@ -42,6 +42,8 @@ CONFIG_MISC_INIT_R=y
 CONFIG_ID_EEPROM=y
 CONFIG_SPL_MAX_SIZE=0x1a000
 CONFIG_SPL_PAD_TO=0x1c000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x80100000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_FSL_PBL=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/ls1021atwr_sdcard_ifc_defconfig b/configs/ls1021atwr_sdcard_ifc_defconfig
index 6dab204210d7..eaafb72bceab 100644
--- a/configs/ls1021atwr_sdcard_ifc_defconfig
+++ b/configs/ls1021atwr_sdcard_ifc_defconfig
@@ -43,6 +43,8 @@ CONFIG_MISC_INIT_R=y
 CONFIG_ID_EEPROM=y
 CONFIG_SPL_MAX_SIZE=0x1a000
 CONFIG_SPL_PAD_TO=0x1c000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x80100000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_FSL_PBL=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/ls1021atwr_sdcard_qspi_defconfig b/configs/ls1021atwr_sdcard_qspi_defconfig
index bdc279b646ea..a82098e243bb 100644
--- a/configs/ls1021atwr_sdcard_qspi_defconfig
+++ b/configs/ls1021atwr_sdcard_qspi_defconfig
@@ -44,6 +44,8 @@ CONFIG_MISC_INIT_R=y
 CONFIG_ID_EEPROM=y
 CONFIG_SPL_MAX_SIZE=0x1a000
 CONFIG_SPL_PAD_TO=0x1c000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x80100000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_FSL_PBL=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/ls1043aqds_nand_defconfig b/configs/ls1043aqds_nand_defconfig
index ec60f8edfddc..a8d392de0986 100644
--- a/configs/ls1043aqds_nand_defconfig
+++ b/configs/ls1043aqds_nand_defconfig
@@ -49,6 +49,8 @@ CONFIG_ARCH_MISC_INIT=y
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x1a000
 CONFIG_SPL_PAD_TO=0x20000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x80100000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_FSL_PBL=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/ls1043aqds_sdcard_ifc_defconfig b/configs/ls1043aqds_sdcard_ifc_defconfig
index ad8fce935897..b284f62f1e3c 100644
--- a/configs/ls1043aqds_sdcard_ifc_defconfig
+++ b/configs/ls1043aqds_sdcard_ifc_defconfig
@@ -50,6 +50,8 @@ CONFIG_ARCH_MISC_INIT=y
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x17000
 CONFIG_SPL_PAD_TO=0x1d000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x8f000000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_FSL_PBL=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/ls1043aqds_sdcard_qspi_defconfig b/configs/ls1043aqds_sdcard_qspi_defconfig
index 4464284f3375..ad0ec877f07c 100644
--- a/configs/ls1043aqds_sdcard_qspi_defconfig
+++ b/configs/ls1043aqds_sdcard_qspi_defconfig
@@ -50,6 +50,8 @@ CONFIG_ARCH_MISC_INIT=y
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x17000
 CONFIG_SPL_PAD_TO=0x1d000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x8f000000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_FSL_PBL=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/ls1043ardb_nand_SECURE_BOOT_defconfig b/configs/ls1043ardb_nand_SECURE_BOOT_defconfig
index 5c51cd5b8c3b..0b96c451a9bb 100644
--- a/configs/ls1043ardb_nand_SECURE_BOOT_defconfig
+++ b/configs/ls1043ardb_nand_SECURE_BOOT_defconfig
@@ -33,6 +33,8 @@ CONFIG_BOOTARGS="console=ttyS0,115200 root=/dev/ram0 earlycon=uart8250,mmio,0x21
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x1a000
 CONFIG_SPL_PAD_TO=0x20000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x80100000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_FSL_PBL=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/ls1043ardb_nand_defconfig b/configs/ls1043ardb_nand_defconfig
index bb0f3e6cb505..c19ae3bc8114 100644
--- a/configs/ls1043ardb_nand_defconfig
+++ b/configs/ls1043ardb_nand_defconfig
@@ -38,6 +38,8 @@ CONFIG_ARCH_MISC_INIT=y
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x1a000
 CONFIG_SPL_PAD_TO=0x20000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x80100000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_FSL_PBL=y
 CONFIG_SPL_BOARD_INIT=y
diff --git a/configs/ls1043ardb_sdcard_SECURE_BOOT_defconfig b/configs/ls1043ardb_sdcard_SECURE_BOOT_defconfig
index 2042b44fe4e8..e18ab7aadcb7 100644
--- a/configs/ls1043ardb_sdcard_SECURE_BOOT_defconfig
+++ b/configs/ls1043ardb_sdcard_SECURE_BOOT_defconfig
@@ -34,6 +34,8 @@ CONFIG_BOOTCOMMAND="run distro_bootcmd; run sd_bootcmd; env exists secureboot &&
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x17000
 CONFIG_SPL_PAD_TO=0x1d000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x8f000000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_FSL_PBL=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/ls1043ardb_sdcard_defconfig b/configs/ls1043ardb_sdcard_defconfig
index f51d76c67571..3f1868e92fb6 100644
--- a/configs/ls1043ardb_sdcard_defconfig
+++ b/configs/ls1043ardb_sdcard_defconfig
@@ -39,6 +39,8 @@ CONFIG_ARCH_MISC_INIT=y
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x17000
 CONFIG_SPL_PAD_TO=0x1d000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x8f000000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_FSL_PBL=y
 CONFIG_SPL_BOARD_INIT=y
diff --git a/configs/ls1046aqds_nand_defconfig b/configs/ls1046aqds_nand_defconfig
index 322a352669f8..39f52c378722 100644
--- a/configs/ls1046aqds_nand_defconfig
+++ b/configs/ls1046aqds_nand_defconfig
@@ -49,6 +49,8 @@ CONFIG_ARCH_MISC_INIT=y
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x17000
 CONFIG_SPL_PAD_TO=0x40000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x8f000000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_FSL_PBL=y
 CONFIG_SPL_BOARD_INIT=y
diff --git a/configs/ls1046aqds_sdcard_ifc_defconfig b/configs/ls1046aqds_sdcard_ifc_defconfig
index 4f4cdf1d05ca..a9fb89fb918b 100644
--- a/configs/ls1046aqds_sdcard_ifc_defconfig
+++ b/configs/ls1046aqds_sdcard_ifc_defconfig
@@ -50,6 +50,8 @@ CONFIG_ARCH_MISC_INIT=y
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x1f000
 CONFIG_SPL_PAD_TO=0x21000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x8f000000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_FSL_PBL=y
 CONFIG_SPL_BOARD_INIT=y
diff --git a/configs/ls1046aqds_sdcard_qspi_defconfig b/configs/ls1046aqds_sdcard_qspi_defconfig
index 89d52aa33ccb..37a11070848d 100644
--- a/configs/ls1046aqds_sdcard_qspi_defconfig
+++ b/configs/ls1046aqds_sdcard_qspi_defconfig
@@ -50,6 +50,8 @@ CONFIG_ARCH_MISC_INIT=y
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x1f000
 CONFIG_SPL_PAD_TO=0x21000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x8f000000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_FSL_PBL=y
 CONFIG_SPL_BOARD_INIT=y
diff --git a/configs/ls1046ardb_emmc_defconfig b/configs/ls1046ardb_emmc_defconfig
index 11725e5aa0c4..7b42e8d9ddb4 100644
--- a/configs/ls1046ardb_emmc_defconfig
+++ b/configs/ls1046ardb_emmc_defconfig
@@ -40,6 +40,8 @@ CONFIG_ARCH_MISC_INIT=y
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x1f000
 CONFIG_SPL_PAD_TO=0x21000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x8f000000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_FSL_PBL=y
 CONFIG_SPL_BOARD_INIT=y
diff --git a/configs/ls1046ardb_qspi_spl_defconfig b/configs/ls1046ardb_qspi_spl_defconfig
index ae7d0b32694e..ac8cd7c2de70 100644
--- a/configs/ls1046ardb_qspi_spl_defconfig
+++ b/configs/ls1046ardb_qspi_spl_defconfig
@@ -44,6 +44,8 @@ CONFIG_ARCH_MISC_INIT=y
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x1f000
 CONFIG_SPL_PAD_TO=0x20000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x8f000000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_BOARD_INIT=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/ls1046ardb_sdcard_SECURE_BOOT_defconfig b/configs/ls1046ardb_sdcard_SECURE_BOOT_defconfig
index ea8588c86ae8..0679d94dc75b 100644
--- a/configs/ls1046ardb_sdcard_SECURE_BOOT_defconfig
+++ b/configs/ls1046ardb_sdcard_SECURE_BOOT_defconfig
@@ -38,6 +38,8 @@ CONFIG_BOOTCOMMAND="run distro_bootcmd;run sd_bootcmd; env exists secureboot &&
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x1f000
 CONFIG_SPL_PAD_TO=0x21000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x8f000000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_FSL_PBL=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/ls1046ardb_sdcard_defconfig b/configs/ls1046ardb_sdcard_defconfig
index ed87dbaffd9a..17378cbddffc 100644
--- a/configs/ls1046ardb_sdcard_defconfig
+++ b/configs/ls1046ardb_sdcard_defconfig
@@ -40,6 +40,8 @@ CONFIG_ARCH_MISC_INIT=y
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x1f000
 CONFIG_SPL_PAD_TO=0x21000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x8f000000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_FSL_PBL=y
 CONFIG_SPL_BOARD_INIT=y
diff --git a/configs/ls1088aqds_sdcard_ifc_defconfig b/configs/ls1088aqds_sdcard_ifc_defconfig
index 8b03ff8062b8..0cc3d429a375 100644
--- a/configs/ls1088aqds_sdcard_ifc_defconfig
+++ b/configs/ls1088aqds_sdcard_ifc_defconfig
@@ -42,6 +42,8 @@ CONFIG_BOOTCOMMAND="mmcinfo;mmc read 0x80001000 0x6800 0x800; fsl_mc lazyapply d
 CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_RESET_PHY_R=y
 CONFIG_SPL_MAX_SIZE=0x16000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x80100000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x18009ff0
diff --git a/configs/ls1088aqds_sdcard_qspi_defconfig b/configs/ls1088aqds_sdcard_qspi_defconfig
index 5cd2ca27087c..89911ae35579 100644
--- a/configs/ls1088aqds_sdcard_qspi_defconfig
+++ b/configs/ls1088aqds_sdcard_qspi_defconfig
@@ -43,6 +43,8 @@ CONFIG_BOOTCOMMAND="mmcinfo;mmc read 0x80001000 0x6800 0x800; fsl_mc lazyapply d
 CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_RESET_PHY_R=y
 CONFIG_SPL_MAX_SIZE=0x16000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x80100000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x18009ff0
diff --git a/configs/ls1088ardb_sdcard_qspi_SECURE_BOOT_defconfig b/configs/ls1088ardb_sdcard_qspi_SECURE_BOOT_defconfig
index e7500e14eaf7..0fec4f384aec 100644
--- a/configs/ls1088ardb_sdcard_qspi_SECURE_BOOT_defconfig
+++ b/configs/ls1088ardb_sdcard_qspi_SECURE_BOOT_defconfig
@@ -43,6 +43,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_MISC_INIT_R=y
 CONFIG_RESET_PHY_R=y
 CONFIG_SPL_MAX_SIZE=0x16000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x80100000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x18009ff0
diff --git a/configs/ls1088ardb_sdcard_qspi_defconfig b/configs/ls1088ardb_sdcard_qspi_defconfig
index db65a7c05683..a3702899aaca 100644
--- a/configs/ls1088ardb_sdcard_qspi_defconfig
+++ b/configs/ls1088ardb_sdcard_qspi_defconfig
@@ -44,6 +44,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_MISC_INIT_R=y
 CONFIG_RESET_PHY_R=y
 CONFIG_SPL_MAX_SIZE=0x16000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x80100000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x18009ff0
diff --git a/configs/ls2080aqds_nand_defconfig b/configs/ls2080aqds_nand_defconfig
index 08f9536d22a2..65558911f159 100644
--- a/configs/ls2080aqds_nand_defconfig
+++ b/configs/ls2080aqds_nand_defconfig
@@ -35,6 +35,8 @@ CONFIG_BOOTCOMMAND="fsl_mc apply dpl 0x580d00000 && cp.b $kernel_start $kernel_l
 CONFIG_RESET_PHY_R=y
 CONFIG_SPL_MAX_SIZE=0x16000
 CONFIG_SPL_PAD_TO=0x20000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x80100000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x18009ff0
diff --git a/configs/ls2080aqds_sdcard_defconfig b/configs/ls2080aqds_sdcard_defconfig
index f8978da43ca9..590eba601d71 100644
--- a/configs/ls2080aqds_sdcard_defconfig
+++ b/configs/ls2080aqds_sdcard_defconfig
@@ -35,6 +35,8 @@ CONFIG_BOOTARGS="console=ttyS0,115200 root=/dev/ram0 earlycon=uart8250,mmio,0x21
 CONFIG_BOOTCOMMAND="mmc read 0x80200000 0x6800 0x800; fsl_mc apply dpl 0x80200000 && mmc read $kernel_load $kernel_start $kernel_size && bootm $kernel_load"
 CONFIG_RESET_PHY_R=y
 CONFIG_SPL_MAX_SIZE=0x16000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x80100000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x18009ff0
diff --git a/configs/ls2080ardb_nand_defconfig b/configs/ls2080ardb_nand_defconfig
index 7304c4d02467..17fe433a54aa 100644
--- a/configs/ls2080ardb_nand_defconfig
+++ b/configs/ls2080ardb_nand_defconfig
@@ -41,6 +41,8 @@ CONFIG_MISC_INIT_R=y
 CONFIG_RESET_PHY_R=y
 CONFIG_SPL_MAX_SIZE=0x16000
 CONFIG_SPL_PAD_TO=0x80000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x80100000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x18009ff0
diff --git a/configs/maxbcm_defconfig b/configs/maxbcm_defconfig
index 457e56919d05..35005fcc3542 100644
--- a/configs/maxbcm_defconfig
+++ b/configs/maxbcm_defconfig
@@ -25,6 +25,8 @@ CONFIG_SYS_CONSOLE_INFO_QUIET=y
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_SPL_MAX_SIZE=0x1bfd0
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x40020000
 CONFIG_SPL_BSS_MAX_SIZE=0x4000
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/mt7620_mt7530_rfb_defconfig b/configs/mt7620_mt7530_rfb_defconfig
index 2d45c3db1fe4..9e409b60b275 100644
--- a/configs/mt7620_mt7530_rfb_defconfig
+++ b/configs/mt7620_mt7530_rfb_defconfig
@@ -25,6 +25,7 @@ CONFIG_FIT=y
 # CONFIG_ARCH_FIXUP_FDT_MEMORY is not set
 CONFIG_SYS_MALLOC_BOOTPARAMS=y
 CONFIG_SPL_MAX_SIZE=0x10000
+CONFIG_SPL_BSS_START_ADDR=0x80010000
 CONFIG_SPL_BSS_MAX_SIZE=0x10000
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
 CONFIG_SPL_NOR_SUPPORT=y
diff --git a/configs/mt7620_rfb_defconfig b/configs/mt7620_rfb_defconfig
index 137d88b35a13..f3f5e3a88711 100644
--- a/configs/mt7620_rfb_defconfig
+++ b/configs/mt7620_rfb_defconfig
@@ -24,6 +24,7 @@ CONFIG_FIT=y
 # CONFIG_ARCH_FIXUP_FDT_MEMORY is not set
 CONFIG_SYS_MALLOC_BOOTPARAMS=y
 CONFIG_SPL_MAX_SIZE=0x10000
+CONFIG_SPL_BSS_START_ADDR=0x80010000
 CONFIG_SPL_BSS_MAX_SIZE=0x10000
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
 CONFIG_SPL_NOR_SUPPORT=y
diff --git a/configs/mt7628_rfb_defconfig b/configs/mt7628_rfb_defconfig
index 46848736648f..7690213ab80c 100644
--- a/configs/mt7628_rfb_defconfig
+++ b/configs/mt7628_rfb_defconfig
@@ -24,6 +24,7 @@ CONFIG_FIT=y
 CONFIG_SYS_CONSOLE_INFO_QUIET=y
 CONFIG_SYS_MALLOC_BOOTPARAMS=y
 CONFIG_SPL_MAX_SIZE=0x10000
+CONFIG_SPL_BSS_START_ADDR=0x80010000
 CONFIG_SPL_BSS_MAX_SIZE=0x10000
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
 CONFIG_SPL_NOR_SUPPORT=y
diff --git a/configs/nanopc-t4-rk3399_defconfig b/configs/nanopc-t4-rk3399_defconfig
index 6c023fbe4055..15ab46e5e12f 100644
--- a/configs/nanopc-t4-rk3399_defconfig
+++ b/configs/nanopc-t4-rk3399_defconfig
@@ -18,6 +18,8 @@ CONFIG_DEFAULT_FDT_FILE="rockchip/rk3399-nanopc-t4.dtb"
 CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_SPL_MAX_SIZE=0x2e000
 CONFIG_SPL_PAD_TO=0x7f8000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x400000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/nanopi-m4-2gb-rk3399_defconfig b/configs/nanopi-m4-2gb-rk3399_defconfig
index 390cfbb60f15..93dafb864229 100644
--- a/configs/nanopi-m4-2gb-rk3399_defconfig
+++ b/configs/nanopi-m4-2gb-rk3399_defconfig
@@ -18,6 +18,8 @@ CONFIG_DEFAULT_FDT_FILE="rockchip/rk3399-nanopi-m4-2gb.dtb"
 CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_SPL_MAX_SIZE=0x2e000
 CONFIG_SPL_PAD_TO=0x7f8000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x400000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/nanopi-m4-rk3399_defconfig b/configs/nanopi-m4-rk3399_defconfig
index 37d91e53912a..b5d9f4184d6c 100644
--- a/configs/nanopi-m4-rk3399_defconfig
+++ b/configs/nanopi-m4-rk3399_defconfig
@@ -18,6 +18,8 @@ CONFIG_DEFAULT_FDT_FILE="rockchip/rk3399-nanopi-m4.dtb"
 CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_SPL_MAX_SIZE=0x2e000
 CONFIG_SPL_PAD_TO=0x7f8000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x400000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/nanopi-m4b-rk3399_defconfig b/configs/nanopi-m4b-rk3399_defconfig
index 7bf1ca299d59..c4b51adb6e1f 100644
--- a/configs/nanopi-m4b-rk3399_defconfig
+++ b/configs/nanopi-m4b-rk3399_defconfig
@@ -18,6 +18,8 @@ CONFIG_DEFAULT_FDT_FILE="rockchip/rk3399-nanopi-m4b.dtb"
 CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_SPL_MAX_SIZE=0x2e000
 CONFIG_SPL_PAD_TO=0x7f8000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x400000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/nanopi-neo4-rk3399_defconfig b/configs/nanopi-neo4-rk3399_defconfig
index 69174b951223..2bc066887fa5 100644
--- a/configs/nanopi-neo4-rk3399_defconfig
+++ b/configs/nanopi-neo4-rk3399_defconfig
@@ -18,6 +18,8 @@ CONFIG_DEFAULT_FDT_FILE="rockchip/rk3399-nanopi-neo4.dtb"
 CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_SPL_MAX_SIZE=0x2e000
 CONFIG_SPL_PAD_TO=0x7f8000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x400000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/nanopi-r2s-rk3328_defconfig b/configs/nanopi-r2s-rk3328_defconfig
index b1e2a6d3bfee..99a99e1292b7 100644
--- a/configs/nanopi-r2s-rk3328_defconfig
+++ b/configs/nanopi-r2s-rk3328_defconfig
@@ -30,6 +30,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x40000
 CONFIG_SPL_PAD_TO=0x7f8000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x2000000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
 CONFIG_TPL_SYS_MALLOC_SIMPLE=y
diff --git a/configs/nanopi-r4s-rk3399_defconfig b/configs/nanopi-r4s-rk3399_defconfig
index ca10940e79b8..917fd3fd8eb8 100644
--- a/configs/nanopi-r4s-rk3399_defconfig
+++ b/configs/nanopi-r4s-rk3399_defconfig
@@ -18,6 +18,8 @@ CONFIG_DEFAULT_FDT_FILE="rockchip/rk3399-nanopi-r4s.dtb"
 CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_SPL_MAX_SIZE=0x2e000
 CONFIG_SPL_PAD_TO=0x7f8000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x400000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/odroid-go2_defconfig b/configs/odroid-go2_defconfig
index 6925c26bc106..dbd354f1f263 100644
--- a/configs/odroid-go2_defconfig
+++ b/configs/odroid-go2_defconfig
@@ -36,6 +36,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x20000
 CONFIG_SPL_PAD_TO=0x7f8000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x4000000
 CONFIG_SPL_BSS_MAX_SIZE=0x4000
 CONFIG_SPL_BOOTROM_SUPPORT=y
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
diff --git a/configs/omapl138_lcdk_defconfig b/configs/omapl138_lcdk_defconfig
index 5669c355e93e..65ece99ea466 100644
--- a/configs/omapl138_lcdk_defconfig
+++ b/configs/omapl138_lcdk_defconfig
@@ -34,6 +34,8 @@ CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_CLOCKS=y
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_PAD_TO=0x8000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0xc0000000
 CONFIG_SPL_FOOTPRINT_LIMIT=y
 CONFIG_SPL_MAX_FOOTPRINT=0x8000
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
diff --git a/configs/openpiton_riscv64_spl_defconfig b/configs/openpiton_riscv64_spl_defconfig
index e041de4b2b1c..54c59a3a35e7 100644
--- a/configs/openpiton_riscv64_spl_defconfig
+++ b/configs/openpiton_riscv64_spl_defconfig
@@ -23,6 +23,7 @@ CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0x82000000
 CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="fdt addr ${fdtcontroladdr}; fdt move ${fdtcontroladdr} ${fdt_addr_r}; load mmc ${mmcdev}:${mmcpart} ${kernel_addr_r} ${image}; booti ${kernel_addr_r} - ${fdt_addr_r}; "
 CONFIG_SPL_MAX_SIZE=0x100000
+CONFIG_SPL_BSS_START_ADDR=0x82000000
 # CONFIG_SPL_LEGACY_IMAGE_FORMAT is not set
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/orangepi-rk3399_defconfig b/configs/orangepi-rk3399_defconfig
index 790936dff340..e9626fb09a63 100644
--- a/configs/orangepi-rk3399_defconfig
+++ b/configs/orangepi-rk3399_defconfig
@@ -18,6 +18,8 @@ CONFIG_DEFAULT_FDT_FILE="rockchip/rk3399-orangepi.dtb"
 CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_SPL_MAX_SIZE=0x2e000
 CONFIG_SPL_PAD_TO=0x7f8000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x400000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/phycore-imx8mm_defconfig b/configs/phycore-imx8mm_defconfig
index 8450d2fc31ec..8192cc233e94 100644
--- a/configs/phycore-imx8mm_defconfig
+++ b/configs/phycore-imx8mm_defconfig
@@ -27,6 +27,8 @@ CONFIG_BOOTCOMMAND="mmc dev ${mmcdev}; if mmc rescan; then if run loadimage; the
 CONFIG_DEFAULT_FDT_FILE="oftree"
 CONFIG_BOARD_LATE_INIT=y
 CONFIG_SPL_MAX_SIZE=0x25000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x910000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_BOARD_INIT=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/phycore-imx8mp_defconfig b/configs/phycore-imx8mp_defconfig
index 8d783d30cc32..42172f31de63 100644
--- a/configs/phycore-imx8mp_defconfig
+++ b/configs/phycore-imx8mp_defconfig
@@ -28,6 +28,8 @@ CONFIG_BOOTCOMMAND="mmc dev ${mmcdev}; if mmc rescan; then if run loadimage; the
 CONFIG_DEFAULT_FDT_FILE="oftree"
 CONFIG_BOARD_LATE_INIT=y
 CONFIG_SPL_MAX_SIZE=0x26000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x98fc00
 CONFIG_SPL_BSS_MAX_SIZE=0x400
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_BOOTROM_SUPPORT=y
diff --git a/configs/pico-dwarf-imx7d_defconfig b/configs/pico-dwarf-imx7d_defconfig
index 00067d2e46d9..187a269302a6 100644
--- a/configs/pico-dwarf-imx7d_defconfig
+++ b/configs/pico-dwarf-imx7d_defconfig
@@ -26,6 +26,7 @@ CONFIG_BOARD_SIZE_LIMIT=715776
 CONFIG_BOOTCOMMAND="run findfdt; run finduuid; run distro_bootcmd"
 CONFIG_DEFAULT_FDT_FILE="imx7d-pico-dwarf.dtb"
 CONFIG_SPL_MAX_SIZE=0xe000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
 CONFIG_SPL_I2C=y
 CONFIG_SPL_USB_HOST=y
diff --git a/configs/pico-hobbit-imx7d_defconfig b/configs/pico-hobbit-imx7d_defconfig
index 64c2ca4b189f..38eb71523b33 100644
--- a/configs/pico-hobbit-imx7d_defconfig
+++ b/configs/pico-hobbit-imx7d_defconfig
@@ -26,6 +26,7 @@ CONFIG_BOARD_SIZE_LIMIT=715776
 CONFIG_BOOTCOMMAND="run findfdt; run finduuid; run distro_bootcmd"
 CONFIG_DEFAULT_FDT_FILE="imx7d-pico-hobbit.dtb"
 CONFIG_SPL_MAX_SIZE=0xe000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
 CONFIG_SPL_I2C=y
 CONFIG_SPL_USB_HOST=y
diff --git a/configs/pico-imx7d_bl33_defconfig b/configs/pico-imx7d_bl33_defconfig
index d13336d0548c..7f1d215e4908 100644
--- a/configs/pico-imx7d_bl33_defconfig
+++ b/configs/pico-imx7d_bl33_defconfig
@@ -27,6 +27,7 @@ CONFIG_FIT_VERBOSE=y
 CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="run distro_bootcmd"
 CONFIG_SPL_MAX_SIZE=0xe000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
 CONFIG_SPL_I2C=y
 CONFIG_SPL_USB_HOST=y
diff --git a/configs/pico-imx7d_defconfig b/configs/pico-imx7d_defconfig
index a6ee5cebfe26..d79d3ea2ed19 100644
--- a/configs/pico-imx7d_defconfig
+++ b/configs/pico-imx7d_defconfig
@@ -26,6 +26,7 @@ CONFIG_BOARD_SIZE_LIMIT=715776
 CONFIG_BOOTCOMMAND="run findfdt; run finduuid; run distro_bootcmd"
 CONFIG_DEFAULT_FDT_FILE="ask"
 CONFIG_SPL_MAX_SIZE=0xe000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
 CONFIG_SPL_I2C=y
 CONFIG_SPL_USB_HOST=y
diff --git a/configs/pico-imx8mq_defconfig b/configs/pico-imx8mq_defconfig
index 1a8f2015b8a8..5b4f591ec4cf 100644
--- a/configs/pico-imx8mq_defconfig
+++ b/configs/pico-imx8mq_defconfig
@@ -31,6 +31,8 @@ CONFIG_BOOTCOMMAND="mmc dev ${mmcdev}; if mmc rescan; then if run loadbootscript
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_BOARD_LATE_INIT=y
 CONFIG_SPL_MAX_SIZE=0x1f000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x180000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_BOARD_INIT=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/pico-nymph-imx7d_defconfig b/configs/pico-nymph-imx7d_defconfig
index 00067d2e46d9..187a269302a6 100644
--- a/configs/pico-nymph-imx7d_defconfig
+++ b/configs/pico-nymph-imx7d_defconfig
@@ -26,6 +26,7 @@ CONFIG_BOARD_SIZE_LIMIT=715776
 CONFIG_BOOTCOMMAND="run findfdt; run finduuid; run distro_bootcmd"
 CONFIG_DEFAULT_FDT_FILE="imx7d-pico-dwarf.dtb"
 CONFIG_SPL_MAX_SIZE=0xe000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
 CONFIG_SPL_I2C=y
 CONFIG_SPL_USB_HOST=y
diff --git a/configs/pico-pi-imx7d_defconfig b/configs/pico-pi-imx7d_defconfig
index b74b2582cb95..daf91029f3bf 100644
--- a/configs/pico-pi-imx7d_defconfig
+++ b/configs/pico-pi-imx7d_defconfig
@@ -26,6 +26,7 @@ CONFIG_BOARD_SIZE_LIMIT=715776
 CONFIG_BOOTCOMMAND="run findfdt; run finduuid; run distro_bootcmd"
 CONFIG_DEFAULT_FDT_FILE="imx7d-pico-pi.dtb"
 CONFIG_SPL_MAX_SIZE=0xe000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
 CONFIG_SPL_I2C=y
 CONFIG_SPL_USB_HOST=y
diff --git a/configs/pinebook-pro-rk3399_defconfig b/configs/pinebook-pro-rk3399_defconfig
index c831830656c7..121182c55d74 100644
--- a/configs/pinebook-pro-rk3399_defconfig
+++ b/configs/pinebook-pro-rk3399_defconfig
@@ -23,6 +23,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x2e000
 CONFIG_SPL_PAD_TO=0x7f8000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x400000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/puma-rk3399_defconfig b/configs/puma-rk3399_defconfig
index e859172c5cd7..f902f144f28a 100644
--- a/configs/puma-rk3399_defconfig
+++ b/configs/puma-rk3399_defconfig
@@ -24,6 +24,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x2e000
 CONFIG_SPL_PAD_TO=0x7f8000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0xff8e0000
 CONFIG_SPL_BSS_MAX_SIZE=0x10000
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/px30-core-ctouch2-of10-px30_defconfig b/configs/px30-core-ctouch2-of10-px30_defconfig
index d0bada7bae70..784f3c076d0c 100644
--- a/configs/px30-core-ctouch2-of10-px30_defconfig
+++ b/configs/px30-core-ctouch2-of10-px30_defconfig
@@ -33,6 +33,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x20000
 CONFIG_SPL_PAD_TO=0x7f8000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x4000000
 CONFIG_SPL_BSS_MAX_SIZE=0x4000
 CONFIG_SPL_BOOTROM_SUPPORT=y
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
diff --git a/configs/px30-core-ctouch2-px30_defconfig b/configs/px30-core-ctouch2-px30_defconfig
index 8e4de8e8b78d..a98a1f6ec88b 100644
--- a/configs/px30-core-ctouch2-px30_defconfig
+++ b/configs/px30-core-ctouch2-px30_defconfig
@@ -33,6 +33,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x20000
 CONFIG_SPL_PAD_TO=0x7f8000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x4000000
 CONFIG_SPL_BSS_MAX_SIZE=0x4000
 CONFIG_SPL_BOOTROM_SUPPORT=y
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
diff --git a/configs/px30-core-edimm2.2-px30_defconfig b/configs/px30-core-edimm2.2-px30_defconfig
index 3a4dbb60ebf1..f10732230afd 100644
--- a/configs/px30-core-edimm2.2-px30_defconfig
+++ b/configs/px30-core-edimm2.2-px30_defconfig
@@ -33,6 +33,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x20000
 CONFIG_SPL_PAD_TO=0x7f8000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x4000000
 CONFIG_SPL_BSS_MAX_SIZE=0x4000
 CONFIG_SPL_BOOTROM_SUPPORT=y
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
diff --git a/configs/pxm2_defconfig b/configs/pxm2_defconfig
index 52e7dc8da53e..a36192a978be 100644
--- a/configs/pxm2_defconfig
+++ b/configs/pxm2_defconfig
@@ -36,6 +36,7 @@ CONFIG_SYS_CONSOLE_INFO_QUIET=y
 # CONFIG_DISPLAY_CPUINFO is not set
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_ARCH_MISC_INIT=y
+CONFIG_SPL_BSS_START_ADDR=0x80000000
 CONFIG_SPL_I2C=y
 CONFIG_SPL_NAND_DRIVERS=y
 CONFIG_SPL_NAND_ECC=y
diff --git a/configs/qemu-riscv32_spl_defconfig b/configs/qemu-riscv32_spl_defconfig
index 73e5883e6302..c836cc0c2aa8 100644
--- a/configs/qemu-riscv32_spl_defconfig
+++ b/configs/qemu-riscv32_spl_defconfig
@@ -16,6 +16,7 @@ CONFIG_SPL_LOAD_FIT_ADDRESS=0x80200000
 CONFIG_DISPLAY_CPUINFO=y
 CONFIG_DISPLAY_BOARDINFO=y
 CONFIG_SPL_MAX_SIZE=0x100000
+CONFIG_SPL_BSS_START_ADDR=0x84000000
 CONFIG_SYS_CBSIZE=256
 CONFIG_SYS_PBSIZE=276
 # CONFIG_CMD_MII is not set
diff --git a/configs/qemu-riscv64_spl_defconfig b/configs/qemu-riscv64_spl_defconfig
index 66d1e56c5cbb..ce66a8e8df56 100644
--- a/configs/qemu-riscv64_spl_defconfig
+++ b/configs/qemu-riscv64_spl_defconfig
@@ -16,6 +16,7 @@ CONFIG_SPL_LOAD_FIT_ADDRESS=0x80200000
 CONFIG_DISPLAY_CPUINFO=y
 CONFIG_DISPLAY_BOARDINFO=y
 CONFIG_SPL_MAX_SIZE=0x100000
+CONFIG_SPL_BSS_START_ADDR=0x84000000
 CONFIG_SYS_CBSIZE=256
 CONFIG_SYS_PBSIZE=276
 # CONFIG_CMD_MII is not set
diff --git a/configs/r8a77970_eagle_defconfig b/configs/r8a77970_eagle_defconfig
index dfb4adf6654a..9ca3ddf27b79 100644
--- a/configs/r8a77970_eagle_defconfig
+++ b/configs/r8a77970_eagle_defconfig
@@ -22,6 +22,8 @@ CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="tftp 0x48080000 Image; tftp 0x48000000 Image-r8a77970-eagle.dtb; booti 0x48080000 - 0x48000000"
 CONFIG_DEFAULT_FDT_FILE="r8a77970-eagle.dtb"
 CONFIG_SYS_MALLOC_BOOTPARAMS=y
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0xe631f000
 CONFIG_SPL_BSS_MAX_SIZE=0x1000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xe6304000
diff --git a/configs/r8a77980_condor_defconfig b/configs/r8a77980_condor_defconfig
index d24204d41380..ef59b9c77852 100644
--- a/configs/r8a77980_condor_defconfig
+++ b/configs/r8a77980_condor_defconfig
@@ -23,6 +23,8 @@ CONFIG_BOOTCOMMAND="tftp 0x48080000 Image; tftp 0x48000000 Image-r8a77980-condor
 CONFIG_DEFAULT_FDT_FILE="r8a77980-condor.dtb"
 # CONFIG_BOARD_EARLY_INIT_F is not set
 CONFIG_SYS_MALLOC_BOOTPARAMS=y
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0xe631f000
 CONFIG_SPL_BSS_MAX_SIZE=0x1000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xe6304000
diff --git a/configs/r8a77990_ebisu_defconfig b/configs/r8a77990_ebisu_defconfig
index 33c277472196..e667d23d7eea 100644
--- a/configs/r8a77990_ebisu_defconfig
+++ b/configs/r8a77990_ebisu_defconfig
@@ -24,6 +24,8 @@ CONFIG_DEFAULT_FDT_FILE="r8a77990-ebisu.dtb"
 # CONFIG_BOARD_EARLY_INIT_F is not set
 CONFIG_SYS_MALLOC_BOOTPARAMS=y
 CONFIG_UPDATE_TFTP=y
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0xe631f000
 CONFIG_SPL_BSS_MAX_SIZE=0x1000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xe6304000
diff --git a/configs/r8a77995_draak_defconfig b/configs/r8a77995_draak_defconfig
index f1fd84a4bd2d..afccf86461df 100644
--- a/configs/r8a77995_draak_defconfig
+++ b/configs/r8a77995_draak_defconfig
@@ -23,6 +23,8 @@ CONFIG_BOOTCOMMAND="tftp 0x48080000 Image; tftp 0x48000000 Image-r8a77995-draak.
 CONFIG_DEFAULT_FDT_FILE="r8a77995-draak.dtb"
 CONFIG_SYS_MALLOC_BOOTPARAMS=y
 CONFIG_UPDATE_TFTP=y
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0xe631f000
 CONFIG_SPL_BSS_MAX_SIZE=0x1000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xe6304000
diff --git a/configs/r8a779a0_falcon_defconfig b/configs/r8a779a0_falcon_defconfig
index 8477127e12b8..72c31ac3a194 100644
--- a/configs/r8a779a0_falcon_defconfig
+++ b/configs/r8a779a0_falcon_defconfig
@@ -25,6 +25,8 @@ CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="tftp 0x48080000 Image; tftp 0x48000000 Image-r8a779a0-falcon.dtb; booti 0x48080000 - 0x48000000"
 CONFIG_DEFAULT_FDT_FILE="r8a779a0-falcon.dtb"
 CONFIG_SYS_MALLOC_BOOTPARAMS=y
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0xe631f000
 CONFIG_SPL_BSS_MAX_SIZE=0x1000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xe6304000
diff --git a/configs/rastaban_defconfig b/configs/rastaban_defconfig
index c7cf38470206..269416f2aa4d 100644
--- a/configs/rastaban_defconfig
+++ b/configs/rastaban_defconfig
@@ -36,6 +36,7 @@ CONFIG_USE_PREBOOT=y
 CONFIG_SYS_CONSOLE_INFO_QUIET=y
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_ARCH_MISC_INIT=y
+CONFIG_SPL_BSS_START_ADDR=0x80000000
 CONFIG_SPL_I2C=y
 CONFIG_SPL_NAND_DRIVERS=y
 CONFIG_SPL_NAND_ECC=y
diff --git a/configs/rcar3_salvator-x_defconfig b/configs/rcar3_salvator-x_defconfig
index ce22f8b9ecc0..d423ad7b8261 100644
--- a/configs/rcar3_salvator-x_defconfig
+++ b/configs/rcar3_salvator-x_defconfig
@@ -23,6 +23,8 @@ CONFIG_BOOTCOMMAND="tftp 0x48080000 Image; tftp 0x48000000 Image-r8a77950-salvat
 CONFIG_DEFAULT_FDT_FILE="r8a77950-salvator-x.dtb"
 CONFIG_SYS_MALLOC_BOOTPARAMS=y
 CONFIG_UPDATE_TFTP=y
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0xe633f000
 CONFIG_SPL_BSS_MAX_SIZE=0x1000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xe6304000
diff --git a/configs/rcar3_ulcb_defconfig b/configs/rcar3_ulcb_defconfig
index 2b7c2eace4cd..341abe4f6dda 100644
--- a/configs/rcar3_ulcb_defconfig
+++ b/configs/rcar3_ulcb_defconfig
@@ -23,6 +23,8 @@ CONFIG_BOOTCOMMAND="tftp 0x48080000 Image; tftp 0x48000000 Image-r8a77950-ulcb.d
 CONFIG_DEFAULT_FDT_FILE="r8a77950-ulcb.dtb"
 CONFIG_SYS_MALLOC_BOOTPARAMS=y
 CONFIG_UPDATE_TFTP=y
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0xe633f000
 CONFIG_SPL_BSS_MAX_SIZE=0x1000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xe6304000
diff --git a/configs/roc-cc-rk3308_defconfig b/configs/roc-cc-rk3308_defconfig
index a35326f9ec8f..325b7cb182b0 100644
--- a/configs/roc-cc-rk3308_defconfig
+++ b/configs/roc-cc-rk3308_defconfig
@@ -26,6 +26,8 @@ CONFIG_SYS_CONSOLE_INFO_QUIET=y
 # CONFIG_DISPLAY_CPUINFO is not set
 CONFIG_SPL_MAX_SIZE=0x20000
 CONFIG_SPL_PAD_TO=0x7f8000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x400000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x400000
diff --git a/configs/roc-cc-rk3328_defconfig b/configs/roc-cc-rk3328_defconfig
index 1b4fc3381cce..866cdbc24df1 100644
--- a/configs/roc-cc-rk3328_defconfig
+++ b/configs/roc-cc-rk3328_defconfig
@@ -30,6 +30,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x40000
 CONFIG_SPL_PAD_TO=0x7f8000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x2000000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
 CONFIG_TPL_SYS_MALLOC_SIMPLE=y
diff --git a/configs/roc-pc-mezzanine-rk3399_defconfig b/configs/roc-pc-mezzanine-rk3399_defconfig
index 1748b7d8702a..f537a605e1aa 100644
--- a/configs/roc-pc-mezzanine-rk3399_defconfig
+++ b/configs/roc-pc-mezzanine-rk3399_defconfig
@@ -24,6 +24,8 @@ CONFIG_DEFAULT_FDT_FILE="rockchip/rk3399-roc-pc-mezzanine.dtb"
 CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_SPL_MAX_SIZE=0x2e000
 CONFIG_SPL_PAD_TO=0x7f8000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x400000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/roc-pc-rk3399_defconfig b/configs/roc-pc-rk3399_defconfig
index 7b086a1cc1dd..a502e549fb39 100644
--- a/configs/roc-pc-rk3399_defconfig
+++ b/configs/roc-pc-rk3399_defconfig
@@ -24,6 +24,8 @@ CONFIG_DEFAULT_FDT_FILE="rockchip/rk3399-roc-pc.dtb"
 CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_SPL_MAX_SIZE=0x2e000
 CONFIG_SPL_PAD_TO=0x7f8000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x400000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/rock-pi-4-rk3399_defconfig b/configs/rock-pi-4-rk3399_defconfig
index d9d5f5e5efca..cf2e9fbde389 100644
--- a/configs/rock-pi-4-rk3399_defconfig
+++ b/configs/rock-pi-4-rk3399_defconfig
@@ -20,6 +20,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x2e000
 CONFIG_SPL_PAD_TO=0x7f8000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x400000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/rock-pi-4c-rk3399_defconfig b/configs/rock-pi-4c-rk3399_defconfig
index 220b2af00881..fd5b25d77b40 100644
--- a/configs/rock-pi-4c-rk3399_defconfig
+++ b/configs/rock-pi-4c-rk3399_defconfig
@@ -20,6 +20,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x2e000
 CONFIG_SPL_PAD_TO=0x7f8000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x400000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/rock-pi-e-rk3328_defconfig b/configs/rock-pi-e-rk3328_defconfig
index e231593bd566..4c70e62b88ec 100644
--- a/configs/rock-pi-e-rk3328_defconfig
+++ b/configs/rock-pi-e-rk3328_defconfig
@@ -31,6 +31,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x40000
 CONFIG_SPL_PAD_TO=0x7f8000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x2000000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
 CONFIG_TPL_SYS_MALLOC_SIMPLE=y
diff --git a/configs/rock-pi-n10-rk3399pro_defconfig b/configs/rock-pi-n10-rk3399pro_defconfig
index e283476bb9a5..e63a77a25376 100644
--- a/configs/rock-pi-n10-rk3399pro_defconfig
+++ b/configs/rock-pi-n10-rk3399pro_defconfig
@@ -22,6 +22,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x2e000
 CONFIG_SPL_PAD_TO=0x7f8000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x400000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/rock64-rk3328_defconfig b/configs/rock64-rk3328_defconfig
index aa4cdde4872c..893f0384afb1 100644
--- a/configs/rock64-rk3328_defconfig
+++ b/configs/rock64-rk3328_defconfig
@@ -30,6 +30,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x40000
 CONFIG_SPL_PAD_TO=0x7f8000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x2000000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
 CONFIG_TPL_SYS_MALLOC_SIMPLE=y
diff --git a/configs/rock960-rk3399_defconfig b/configs/rock960-rk3399_defconfig
index 5e9f2cff33f3..78e50dbfbcb7 100644
--- a/configs/rock960-rk3399_defconfig
+++ b/configs/rock960-rk3399_defconfig
@@ -19,6 +19,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x2e000
 CONFIG_SPL_PAD_TO=0x7f8000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x400000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/rockpro64-rk3399_defconfig b/configs/rockpro64-rk3399_defconfig
index fff00fba6d91..4d2a5b32e31c 100644
--- a/configs/rockpro64-rk3399_defconfig
+++ b/configs/rockpro64-rk3399_defconfig
@@ -23,6 +23,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x2e000
 CONFIG_SPL_PAD_TO=0x7f8000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x400000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/rut_defconfig b/configs/rut_defconfig
index 576be6c6fe44..8ef538661c1f 100644
--- a/configs/rut_defconfig
+++ b/configs/rut_defconfig
@@ -36,6 +36,7 @@ CONFIG_SYS_CONSOLE_INFO_QUIET=y
 # CONFIG_DISPLAY_CPUINFO is not set
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_ARCH_MISC_INIT=y
+CONFIG_SPL_BSS_START_ADDR=0x80000000
 CONFIG_SPL_I2C=y
 CONFIG_SPL_NAND_DRIVERS=y
 CONFIG_SPL_NAND_ECC=y
diff --git a/configs/sama5d27_giantboard_defconfig b/configs/sama5d27_giantboard_defconfig
index 50f5cacbdde9..d7813a533ccf 100644
--- a/configs/sama5d27_giantboard_defconfig
+++ b/configs/sama5d27_giantboard_defconfig
@@ -39,6 +39,8 @@ CONFIG_BOOTCOMMAND="fatload mmc 0 0x22000000 at91-sama5d27_giantboard.dtb; fatlo
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x10000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x20000000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x218000
diff --git a/configs/sama5d27_som1_ek_mmc1_defconfig b/configs/sama5d27_som1_ek_mmc1_defconfig
index 76af9fc8cb1b..ebebc7f32101 100644
--- a/configs/sama5d27_som1_ek_mmc1_defconfig
+++ b/configs/sama5d27_som1_ek_mmc1_defconfig
@@ -35,6 +35,8 @@ CONFIG_BOOTCOMMAND="fatload mmc 1 0x22000000 at91-sama5d27_som1_ek.dtb; fatload
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x10000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x20000000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x218000
diff --git a/configs/sama5d27_som1_ek_mmc_defconfig b/configs/sama5d27_som1_ek_mmc_defconfig
index 3852754ceb37..13cf4e507497 100644
--- a/configs/sama5d27_som1_ek_mmc_defconfig
+++ b/configs/sama5d27_som1_ek_mmc_defconfig
@@ -36,6 +36,8 @@ CONFIG_BOOTCOMMAND="fatload mmc 0 0x22000000 at91-sama5d27_som1_ek.dtb; fatload
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x10000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x20000000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x218000
diff --git a/configs/sama5d27_som1_ek_qspiflash_defconfig b/configs/sama5d27_som1_ek_qspiflash_defconfig
index 35eefb780b5b..e869f67440da 100644
--- a/configs/sama5d27_som1_ek_qspiflash_defconfig
+++ b/configs/sama5d27_som1_ek_qspiflash_defconfig
@@ -34,6 +34,8 @@ CONFIG_BOOTARGS="console=ttyS0,115200 earlyprintk root=/dev/mmcblk0p2 rw rootwai
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x10000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x20000000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x218000
diff --git a/configs/sama5d27_wlsom1_ek_mmc_defconfig b/configs/sama5d27_wlsom1_ek_mmc_defconfig
index 6ea16c679948..df88f6b78d30 100644
--- a/configs/sama5d27_wlsom1_ek_mmc_defconfig
+++ b/configs/sama5d27_wlsom1_ek_mmc_defconfig
@@ -35,6 +35,8 @@ CONFIG_BOOTCOMMAND="if test ! -n ${dtb_name}; then setenv dtb_name at91-${board_
 CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x10000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x20000000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x218000
diff --git a/configs/sama5d27_wlsom1_ek_qspiflash_defconfig b/configs/sama5d27_wlsom1_ek_qspiflash_defconfig
index 394a7ab64fb1..60ed74a03003 100644
--- a/configs/sama5d27_wlsom1_ek_qspiflash_defconfig
+++ b/configs/sama5d27_wlsom1_ek_qspiflash_defconfig
@@ -35,6 +35,8 @@ CONFIG_BOOTCOMMAND="sf probe 0; sf read 0x21000000 0x60000 0xc000; sf read 0x220
 CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x10000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x20000000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x218000
diff --git a/configs/sama5d2_icp_mmc_defconfig b/configs/sama5d2_icp_mmc_defconfig
index 3772626e4b91..119f15a5d20f 100644
--- a/configs/sama5d2_icp_mmc_defconfig
+++ b/configs/sama5d2_icp_mmc_defconfig
@@ -34,6 +34,8 @@ CONFIG_BOOTCOMMAND="fatload mmc 0:1 0x21000000 at91-sama5d2_icp.dtb; fatload mmc
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x10000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x20000000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x218000
diff --git a/configs/sama5d2_xplained_emmc_defconfig b/configs/sama5d2_xplained_emmc_defconfig
index f80fca265ee9..1d078cb21e51 100644
--- a/configs/sama5d2_xplained_emmc_defconfig
+++ b/configs/sama5d2_xplained_emmc_defconfig
@@ -34,6 +34,8 @@ CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="fatload mmc 0:1 0x22000000 at91-sama5d2_xplained.dtb; fatload mmc 0:1 0x23000000 zImage; bootz 0x23000000 - 0x22000000"
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_SPL_MAX_SIZE=0x10000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x20000000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x218000
diff --git a/configs/sama5d2_xplained_mmc_defconfig b/configs/sama5d2_xplained_mmc_defconfig
index f4a7f2c6a8d2..0df30048900d 100644
--- a/configs/sama5d2_xplained_mmc_defconfig
+++ b/configs/sama5d2_xplained_mmc_defconfig
@@ -36,6 +36,8 @@ CONFIG_BOOTCOMMAND="fatload mmc 1:1 0x22000000 at91-sama5d2_xplained.dtb; fatloa
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x10000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x20000000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x218000
diff --git a/configs/sama5d2_xplained_qspiflash_defconfig b/configs/sama5d2_xplained_qspiflash_defconfig
index bd13e926611d..9bb838ca893c 100644
--- a/configs/sama5d2_xplained_qspiflash_defconfig
+++ b/configs/sama5d2_xplained_qspiflash_defconfig
@@ -37,6 +37,8 @@ CONFIG_BOOTCOMMAND="sf probe 1:0; sf read 0x22000000 0x180000 0x80000; sf read 0
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x10000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x20000000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x218000
diff --git a/configs/sama5d2_xplained_spiflash_defconfig b/configs/sama5d2_xplained_spiflash_defconfig
index 32e2ea213dcb..323846c1bba4 100644
--- a/configs/sama5d2_xplained_spiflash_defconfig
+++ b/configs/sama5d2_xplained_spiflash_defconfig
@@ -38,6 +38,8 @@ CONFIG_BOOTCOMMAND="ext4load mmc 0:1 0x22000000 /boot/at91-sama5d2_xplained.dtb;
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x10000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x20000000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x218000
diff --git a/configs/sama5d3_xplained_mmc_defconfig b/configs/sama5d3_xplained_mmc_defconfig
index 3ed976053a3e..cd1e66d25574 100644
--- a/configs/sama5d3_xplained_mmc_defconfig
+++ b/configs/sama5d3_xplained_mmc_defconfig
@@ -35,6 +35,8 @@ CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="if test ! -n ${dtb_name}; then setenv dtb_name at91-${board_name}.dtb; fi; fatload mmc 0:1 0x21000000 ${dtb_name}; fatload mmc 0:1 0x22000000 zImage; bootz 0x22000000 - 0x21000000"
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_SPL_MAX_SIZE=0x18000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x20000000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x318000
diff --git a/configs/sama5d3_xplained_nandflash_defconfig b/configs/sama5d3_xplained_nandflash_defconfig
index 6e9ba1b490d7..7541f4fa21ed 100644
--- a/configs/sama5d3_xplained_nandflash_defconfig
+++ b/configs/sama5d3_xplained_nandflash_defconfig
@@ -32,6 +32,8 @@ CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="nand read 0x21000000 0x180000 0x80000;nand read 0x22000000 0x200000 0x600000;bootz 0x22000000 - 0x21000000"
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_SPL_MAX_SIZE=0x18000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x20000000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x318000
diff --git a/configs/sama5d3xek_mmc_defconfig b/configs/sama5d3xek_mmc_defconfig
index 4c7a79496829..e4cc446fe08c 100644
--- a/configs/sama5d3xek_mmc_defconfig
+++ b/configs/sama5d3xek_mmc_defconfig
@@ -37,6 +37,8 @@ CONFIG_BOOTCOMMAND="if test ! -n ${dtb_name}; then setenv dtb_name at91-${board_
 CONFIG_SYS_CONSOLE_IS_IN_ENV=y
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_SPL_MAX_SIZE=0x18000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x20000000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x318000
diff --git a/configs/sama5d3xek_nandflash_defconfig b/configs/sama5d3xek_nandflash_defconfig
index 6d6a12c6179f..c4f3badcf845 100644
--- a/configs/sama5d3xek_nandflash_defconfig
+++ b/configs/sama5d3xek_nandflash_defconfig
@@ -34,6 +34,8 @@ CONFIG_BOOTCOMMAND="nand read 0x21000000 0x180000 0x80000;nand read 0x22000000 0
 CONFIG_SYS_CONSOLE_IS_IN_ENV=y
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_SPL_MAX_SIZE=0x18000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x20000000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x318000
diff --git a/configs/sama5d3xek_spiflash_defconfig b/configs/sama5d3xek_spiflash_defconfig
index ab681fdda9d7..2754920e33c7 100644
--- a/configs/sama5d3xek_spiflash_defconfig
+++ b/configs/sama5d3xek_spiflash_defconfig
@@ -37,6 +37,8 @@ CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="sf probe 0; sf read 0x21000000 0x60000 0xc000; sf read 0x22000000 0x6c000 0x394000; bootz 0x22000000 - 0x21000000"
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_SPL_MAX_SIZE=0x18000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x20000000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x318000
diff --git a/configs/sama5d4_xplained_mmc_defconfig b/configs/sama5d4_xplained_mmc_defconfig
index d43e86a31fe0..2227abc837b1 100644
--- a/configs/sama5d4_xplained_mmc_defconfig
+++ b/configs/sama5d4_xplained_mmc_defconfig
@@ -36,6 +36,8 @@ CONFIG_BOOTCOMMAND="if test ! -n ${dtb_name}; then setenv dtb_name at91-${board_
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x18000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x20000000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x218000
diff --git a/configs/sama5d4_xplained_nandflash_defconfig b/configs/sama5d4_xplained_nandflash_defconfig
index 10cfb06f4339..9304ef173b41 100644
--- a/configs/sama5d4_xplained_nandflash_defconfig
+++ b/configs/sama5d4_xplained_nandflash_defconfig
@@ -33,6 +33,8 @@ CONFIG_BOOTCOMMAND="nand read 0x21000000 0x180000 0x80000;nand read 0x22000000 0
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x18000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x20000000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x218000
diff --git a/configs/sama5d4_xplained_spiflash_defconfig b/configs/sama5d4_xplained_spiflash_defconfig
index b41c6c7d06ed..b69b32ed3846 100644
--- a/configs/sama5d4_xplained_spiflash_defconfig
+++ b/configs/sama5d4_xplained_spiflash_defconfig
@@ -38,6 +38,8 @@ CONFIG_BOOTCOMMAND="sf probe 0; sf read 0x21000000 0x60000 0xc000; sf read 0x220
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x18000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x20000000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x218000
diff --git a/configs/sama5d4ek_mmc_defconfig b/configs/sama5d4ek_mmc_defconfig
index 3d5eb6894841..e0779d07fcbb 100644
--- a/configs/sama5d4ek_mmc_defconfig
+++ b/configs/sama5d4ek_mmc_defconfig
@@ -37,6 +37,8 @@ CONFIG_BOOTCOMMAND="if test ! -n ${dtb_name}; then setenv dtb_name at91-${board_
 CONFIG_SYS_CONSOLE_IS_IN_ENV=y
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_SPL_MAX_SIZE=0x18000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x20000000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x218000
diff --git a/configs/sama5d4ek_nandflash_defconfig b/configs/sama5d4ek_nandflash_defconfig
index 8e5295aafe10..386e30ba8506 100644
--- a/configs/sama5d4ek_nandflash_defconfig
+++ b/configs/sama5d4ek_nandflash_defconfig
@@ -34,6 +34,8 @@ CONFIG_BOOTCOMMAND="nand read 0x21000000 0x180000 0x80000;nand read 0x22000000 0
 CONFIG_SYS_CONSOLE_IS_IN_ENV=y
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_SPL_MAX_SIZE=0x18000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x20000000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x218000
diff --git a/configs/sama5d4ek_spiflash_defconfig b/configs/sama5d4ek_spiflash_defconfig
index 13708da1654a..b0d76d2bc833 100644
--- a/configs/sama5d4ek_spiflash_defconfig
+++ b/configs/sama5d4ek_spiflash_defconfig
@@ -37,6 +37,8 @@ CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="sf probe 0; sf read 0x21000000 0x60000 0xc000; sf read 0x22000000 0x6c000 0x394000; bootz 0x22000000 - 0x21000000"
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_SPL_MAX_SIZE=0x18000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x20000000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x218000
diff --git a/configs/sifive_unleashed_defconfig b/configs/sifive_unleashed_defconfig
index 326bca72bb58..10c69345a418 100644
--- a/configs/sifive_unleashed_defconfig
+++ b/configs/sifive_unleashed_defconfig
@@ -25,6 +25,7 @@ CONFIG_DISPLAY_CPUINFO=y
 CONFIG_DISPLAY_BOARDINFO=y
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x100000
+CONFIG_SPL_BSS_START_ADDR=0x85000000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x81cfe70
 CONFIG_SPL_DM_SPI_FLASH=y
diff --git a/configs/sifive_unmatched_defconfig b/configs/sifive_unmatched_defconfig
index 989029b586ea..23f8a4fb8072 100644
--- a/configs/sifive_unmatched_defconfig
+++ b/configs/sifive_unmatched_defconfig
@@ -29,6 +29,7 @@ CONFIG_DISPLAY_BOARDINFO=y
 CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_ID_EEPROM=y
 CONFIG_SPL_MAX_SIZE=0x100000
+CONFIG_SPL_BSS_START_ADDR=0x85000000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x81cfe60
 CONFIG_SPL_DM_SPI_FLASH=y
diff --git a/configs/silinux_ek874_defconfig b/configs/silinux_ek874_defconfig
index ce211a9a1aad..24fcfae4ef2a 100644
--- a/configs/silinux_ek874_defconfig
+++ b/configs/silinux_ek874_defconfig
@@ -24,6 +24,8 @@ CONFIG_BOOTCOMMAND="tftp 0x48080000 Image; tftp 0x48000000 Image-r8a774c0-ek874.
 CONFIG_DEFAULT_FDT_FILE="r8a774c0-ek874.dtb"
 # CONFIG_BOARD_EARLY_INIT_F is not set
 CONFIG_SYS_MALLOC_BOOTPARAMS=y
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0xe631f000
 CONFIG_SPL_BSS_MAX_SIZE=0x1000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xe6304000
diff --git a/configs/smartweb_defconfig b/configs/smartweb_defconfig
index 95048f8c4b1c..990bd9d3441b 100644
--- a/configs/smartweb_defconfig
+++ b/configs/smartweb_defconfig
@@ -34,6 +34,8 @@ CONFIG_BOOTCOMMAND="run flashboot"
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_SPL_MAX_SIZE=0x1000
 CONFIG_SPL_PAD_TO=0x20000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x20000000
 CONFIG_SPL_BSS_MAX_SIZE=0x4000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x301000
diff --git a/configs/sniper_defconfig b/configs/sniper_defconfig
index 2f77a39c3227..7de3081a2d9f 100644
--- a/configs/sniper_defconfig
+++ b/configs/sniper_defconfig
@@ -14,6 +14,7 @@ CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0x4020ff00
 CONFIG_BOOTCOMMAND="setenv boot_mmc_part ${kernel_mmc_part}; if test reboot-${reboot-mode} = reboot-r; then echo recovery; setenv boot_mmc_part ${recovery_mmc_part}; fi; if test reboot-${reboot-mode} = reboot-b; then echo fastboot; fastboot 0; fi; part start mmc ${boot_mmc_dev} ${boot_mmc_part} boot_mmc_start; part size mmc ${boot_mmc_dev} ${boot_mmc_part} boot_mmc_size; mmc dev ${boot_mmc_dev}; mmc read ${kernel_addr_r} ${boot_mmc_start} ${boot_mmc_size} && bootm ${kernel_addr_r};"
 CONFIG_SYS_CONSOLE_IS_IN_ENV=y
 CONFIG_SPL_MAX_SIZE=0xec00
+CONFIG_SPL_BSS_START_ADDR=0x80000000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x4020fffc
 # CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR is not set
diff --git a/configs/socfpga_agilex_atf_defconfig b/configs/socfpga_agilex_atf_defconfig
index 869305fefbe6..5fdacb34d17f 100644
--- a/configs/socfpga_agilex_atf_defconfig
+++ b/configs/socfpga_agilex_atf_defconfig
@@ -28,6 +28,8 @@ CONFIG_BOOTARGS="earlycon"
 CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="run fatscript; run mmcfitload; run mmcfitboot"
 CONFIG_SPL_MAX_SIZE=0x40000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x3ff00000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xffe3f000
diff --git a/configs/socfpga_agilex_defconfig b/configs/socfpga_agilex_defconfig
index 11a4a544ac49..0953ea10af95 100644
--- a/configs/socfpga_agilex_defconfig
+++ b/configs/socfpga_agilex_defconfig
@@ -25,6 +25,8 @@ CONFIG_BOOTARGS="earlycon"
 CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="run fatscript; run mmcload; run linux_qspi_enable; run mmcboot"
 CONFIG_SPL_MAX_SIZE=0x40000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x3ff00000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xffe3f000
diff --git a/configs/socfpga_agilex_vab_defconfig b/configs/socfpga_agilex_vab_defconfig
index 85ec9094a53b..c0384c24e5eb 100644
--- a/configs/socfpga_agilex_vab_defconfig
+++ b/configs/socfpga_agilex_vab_defconfig
@@ -29,6 +29,8 @@ CONFIG_BOOTARGS="earlycon"
 CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="run fatscript; run mmcfitload; run mmcfitboot"
 CONFIG_SPL_MAX_SIZE=0x40000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x3ff00000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xffe3f000
diff --git a/configs/socfpga_n5x_atf_defconfig b/configs/socfpga_n5x_atf_defconfig
index 88763d1e5ab1..0fac9fbe840d 100644
--- a/configs/socfpga_n5x_atf_defconfig
+++ b/configs/socfpga_n5x_atf_defconfig
@@ -27,6 +27,8 @@ CONFIG_BOOTARGS="earlycon panic=-1 earlyprintk=ttyS0,115200"
 CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="run fatscript; run mmcfitload; run mmcfitboot"
 CONFIG_SPL_MAX_SIZE=0x40000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x3ff00000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xffe3f000
diff --git a/configs/socfpga_n5x_defconfig b/configs/socfpga_n5x_defconfig
index a07a338f108d..0904e6a6a38d 100644
--- a/configs/socfpga_n5x_defconfig
+++ b/configs/socfpga_n5x_defconfig
@@ -22,6 +22,8 @@ CONFIG_BOOTARGS="earlycon panic=-1 earlyprintk=ttyS0,115200"
 CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="run fatscript; run mmcload; run linux_qspi_enable; run mmcboot"
 CONFIG_SPL_MAX_SIZE=0x40000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x3ff00000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xffe3f000
diff --git a/configs/socfpga_n5x_vab_defconfig b/configs/socfpga_n5x_vab_defconfig
index 8efdab84e149..69811fb7223e 100644
--- a/configs/socfpga_n5x_vab_defconfig
+++ b/configs/socfpga_n5x_vab_defconfig
@@ -28,6 +28,8 @@ CONFIG_BOOTARGS="earlycon panic=-1 earlyprintk=ttyS0,115200"
 CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="run fatscript; run mmcfitload; run mmcfitboot"
 CONFIG_SPL_MAX_SIZE=0x40000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x3ff00000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xffe3f000
diff --git a/configs/socfpga_stratix10_atf_defconfig b/configs/socfpga_stratix10_atf_defconfig
index 9969ac00be3a..2ffc7ac76589 100644
--- a/configs/socfpga_stratix10_atf_defconfig
+++ b/configs/socfpga_stratix10_atf_defconfig
@@ -28,6 +28,8 @@ CONFIG_BOOTARGS="earlycon"
 CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="run fatscript; run mmcfitload; run mmcfitboot"
 CONFIG_SPL_MAX_SIZE=0x40000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x3ff00000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xffe3f000
diff --git a/configs/socfpga_stratix10_defconfig b/configs/socfpga_stratix10_defconfig
index a90e404b4407..38d87076baa9 100644
--- a/configs/socfpga_stratix10_defconfig
+++ b/configs/socfpga_stratix10_defconfig
@@ -27,6 +27,8 @@ CONFIG_BOOTARGS="earlycon"
 CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="run fatscript; run mmcload; run linux_qspi_enable; run mmcboot"
 CONFIG_SPL_MAX_SIZE=0x40000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x3ff00000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xffe3f000
diff --git a/configs/syzygy_hub_defconfig b/configs/syzygy_hub_defconfig
index d9e61aee3df8..9bebe7046ec9 100644
--- a/configs/syzygy_hub_defconfig
+++ b/configs/syzygy_hub_defconfig
@@ -26,6 +26,8 @@ CONFIG_LEGACY_IMAGE_FORMAT=y
 CONFIG_USE_PREBOOT=y
 CONFIG_CLOCKS=y
 CONFIG_SPL_MAX_SIZE=0x30000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x100000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xfffffe00
diff --git a/configs/taurus_defconfig b/configs/taurus_defconfig
index 471feed3dfb5..da241f1be71c 100644
--- a/configs/taurus_defconfig
+++ b/configs/taurus_defconfig
@@ -41,6 +41,8 @@ CONFIG_BOOTCOMMAND="nand read 0x22000000 0x200000 0x300000; bootm"
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_SPL_MAX_SIZE=0x3e00
 CONFIG_SPL_PAD_TO=0x20000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x3e00
 CONFIG_SPL_BSS_MAX_SIZE=0x600
 # CONFIG_SPL_LEGACY_IMAGE_FORMAT is not set
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
diff --git a/configs/theadorable_debug_defconfig b/configs/theadorable_debug_defconfig
index f858d732abd4..a3d6313f0200 100644
--- a/configs/theadorable_debug_defconfig
+++ b/configs/theadorable_debug_defconfig
@@ -30,6 +30,8 @@ CONFIG_SYS_CONSOLE_INFO_QUIET=y
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_SPL_MAX_SIZE=0x1bfd0
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x40020000
 CONFIG_SPL_BSS_MAX_SIZE=0x4000
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/thuban_defconfig b/configs/thuban_defconfig
index ed0ee8177172..2f0a1c666a95 100644
--- a/configs/thuban_defconfig
+++ b/configs/thuban_defconfig
@@ -36,6 +36,7 @@ CONFIG_USE_PREBOOT=y
 CONFIG_SYS_CONSOLE_INFO_QUIET=y
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_ARCH_MISC_INIT=y
+CONFIG_SPL_BSS_START_ADDR=0x80000000
 CONFIG_SPL_I2C=y
 CONFIG_SPL_NAND_DRIVERS=y
 CONFIG_SPL_NAND_ECC=y
diff --git a/configs/topic_miami_defconfig b/configs/topic_miami_defconfig
index 11d6e450276d..fba9f646122f 100644
--- a/configs/topic_miami_defconfig
+++ b/configs/topic_miami_defconfig
@@ -26,6 +26,8 @@ CONFIG_BOOTCOMMAND="if mmcinfo; then if fatload mmc 0 0x1900000 ${bootscript}; t
 CONFIG_USE_PREBOOT=y
 CONFIG_CLOCKS=y
 CONFIG_SPL_MAX_SIZE=0x30000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x100000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xfffffe00
diff --git a/configs/topic_miamilite_defconfig b/configs/topic_miamilite_defconfig
index 32dc5478dddd..a809bf3c4f90 100644
--- a/configs/topic_miamilite_defconfig
+++ b/configs/topic_miamilite_defconfig
@@ -26,6 +26,8 @@ CONFIG_BOOTCOMMAND="if mmcinfo; then if fatload mmc 0 0x1900000 ${bootscript}; t
 CONFIG_USE_PREBOOT=y
 CONFIG_CLOCKS=y
 CONFIG_SPL_MAX_SIZE=0x30000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x100000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xfffffe00
diff --git a/configs/topic_miamiplus_defconfig b/configs/topic_miamiplus_defconfig
index 2de1e96bdf88..42aef8c073ef 100644
--- a/configs/topic_miamiplus_defconfig
+++ b/configs/topic_miamiplus_defconfig
@@ -26,6 +26,8 @@ CONFIG_BOOTCOMMAND="if mmcinfo; then if fatload mmc 0 0x1900000 ${bootscript}; t
 CONFIG_USE_PREBOOT=y
 CONFIG_CLOCKS=y
 CONFIG_SPL_MAX_SIZE=0x30000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x100000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xfffffe00
diff --git a/configs/turris_omnia_defconfig b/configs/turris_omnia_defconfig
index c3ab35e9646c..4085fac2329e 100644
--- a/configs/turris_omnia_defconfig
+++ b/configs/turris_omnia_defconfig
@@ -39,6 +39,8 @@ CONFIG_SYS_CONSOLE_INFO_QUIET=y
 CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x22fd0
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x40023000
 CONFIG_SPL_BSS_MAX_SIZE=0x4000
 CONFIG_SPL_BOARD_INIT=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/verdin-imx8mm_defconfig b/configs/verdin-imx8mm_defconfig
index 97afc211bf5a..2433c6c83e07 100644
--- a/configs/verdin-imx8mm_defconfig
+++ b/configs/verdin-imx8mm_defconfig
@@ -33,6 +33,8 @@ CONFIG_LOG=y
 CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_BOARD_LATE_INIT=y
 CONFIG_SPL_MAX_SIZE=0x25000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x910000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_BOARD_INIT=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
diff --git a/configs/verdin-imx8mp_defconfig b/configs/verdin-imx8mp_defconfig
index 2107047c1d70..06c41c7af052 100644
--- a/configs/verdin-imx8mp_defconfig
+++ b/configs/verdin-imx8mp_defconfig
@@ -41,6 +41,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_BOARD_LATE_INIT=y
 CONFIG_SPL_MAX_SIZE=0x26000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x98fc00
 CONFIG_SPL_BSS_MAX_SIZE=0x400
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_BOOTROM_SUPPORT=y
diff --git a/configs/vocore2_defconfig b/configs/vocore2_defconfig
index d53851cb4e23..b362d549a21d 100644
--- a/configs/vocore2_defconfig
+++ b/configs/vocore2_defconfig
@@ -32,6 +32,7 @@ CONFIG_LOGLEVEL=8
 CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_SYS_MALLOC_BOOTPARAMS=y
 CONFIG_SPL_MAX_SIZE=0x10000
+CONFIG_SPL_BSS_START_ADDR=0x80010000
 CONFIG_SPL_BSS_MAX_SIZE=0x10000
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
 CONFIG_SPL_NOR_SUPPORT=y
diff --git a/configs/x530_defconfig b/configs/x530_defconfig
index ac418dad1501..c52c9bdb066b 100644
--- a/configs/x530_defconfig
+++ b/configs/x530_defconfig
@@ -29,6 +29,8 @@ CONFIG_SILENT_CONSOLE_UPDATE_ON_RELOC=y
 CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_MAX_SIZE=0x22fd0
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x40023000
 CONFIG_SPL_BSS_MAX_SIZE=0x4000
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
diff --git a/configs/xilinx_zynq_virt_defconfig b/configs/xilinx_zynq_virt_defconfig
index 49210f86c4b8..65e8a65fd93f 100644
--- a/configs/xilinx_zynq_virt_defconfig
+++ b/configs/xilinx_zynq_virt_defconfig
@@ -29,6 +29,8 @@ CONFIG_LEGACY_IMAGE_FORMAT=y
 CONFIG_USE_PREBOOT=y
 CONFIG_CLOCKS=y
 CONFIG_SPL_MAX_SIZE=0x30000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x100000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xfffffe00
diff --git a/configs/xilinx_zynqmp_mini_emmc0_defconfig b/configs/xilinx_zynqmp_mini_emmc0_defconfig
index 2f4b320c811e..2bb985218ba5 100644
--- a/configs/xilinx_zynqmp_mini_emmc0_defconfig
+++ b/configs/xilinx_zynqmp_mini_emmc0_defconfig
@@ -25,6 +25,8 @@ CONFIG_BOARD_EARLY_INIT_R=y
 # CONFIG_BOARD_LATE_INIT is not set
 CONFIG_CLOCKS=y
 CONFIG_SPL_MAX_SIZE=0x40000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x0
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xfffffffc
diff --git a/configs/xilinx_zynqmp_mini_emmc1_defconfig b/configs/xilinx_zynqmp_mini_emmc1_defconfig
index 001246fd9846..dce6ad71f413 100644
--- a/configs/xilinx_zynqmp_mini_emmc1_defconfig
+++ b/configs/xilinx_zynqmp_mini_emmc1_defconfig
@@ -25,6 +25,8 @@ CONFIG_BOARD_EARLY_INIT_R=y
 # CONFIG_BOARD_LATE_INIT is not set
 CONFIG_CLOCKS=y
 CONFIG_SPL_MAX_SIZE=0x40000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x0
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xfffffffc
diff --git a/configs/xilinx_zynqmp_mini_qspi_defconfig b/configs/xilinx_zynqmp_mini_qspi_defconfig
index 9657093c6a33..1b8665a64951 100644
--- a/configs/xilinx_zynqmp_mini_qspi_defconfig
+++ b/configs/xilinx_zynqmp_mini_qspi_defconfig
@@ -24,6 +24,8 @@ CONFIG_REMAKE_ELF=y
 # CONFIG_BOARD_LATE_INIT is not set
 CONFIG_CLOCKS=y
 CONFIG_SPL_MAX_SIZE=0x40000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x0
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xfffffffc
diff --git a/configs/xilinx_zynqmp_virt_defconfig b/configs/xilinx_zynqmp_virt_defconfig
index 88d5fec201f7..74199f6bc030 100644
--- a/configs/xilinx_zynqmp_virt_defconfig
+++ b/configs/xilinx_zynqmp_virt_defconfig
@@ -32,6 +32,8 @@ CONFIG_PREBOOT="run scsi_init;usb start"
 CONFIG_BOARD_EARLY_INIT_R=y
 CONFIG_CLOCKS=y
 CONFIG_SPL_MAX_SIZE=0x40000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x0
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xfffffffc
diff --git a/configs/zynq_cse_nand_defconfig b/configs/zynq_cse_nand_defconfig
index f63a2bbab9a8..062974a1abb7 100644
--- a/configs/zynq_cse_nand_defconfig
+++ b/configs/zynq_cse_nand_defconfig
@@ -22,6 +22,8 @@ CONFIG_USE_PREBOOT=y
 # CONFIG_BOARD_LATE_INIT is not set
 CONFIG_CLOCKS=y
 CONFIG_SPL_MAX_SIZE=0x30000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x20000
 CONFIG_SPL_BSS_MAX_SIZE=0x8000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xfffffe00
diff --git a/configs/zynq_cse_nor_defconfig b/configs/zynq_cse_nor_defconfig
index d38b8f16f2e2..cbbb051518ed 100644
--- a/configs/zynq_cse_nor_defconfig
+++ b/configs/zynq_cse_nor_defconfig
@@ -22,6 +22,8 @@ CONFIG_USE_PREBOOT=y
 # CONFIG_BOARD_LATE_INIT is not set
 CONFIG_CLOCKS=y
 CONFIG_SPL_MAX_SIZE=0x30000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x20000
 CONFIG_SPL_BSS_MAX_SIZE=0x8000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xfffffe00
diff --git a/configs/zynq_cse_qspi_defconfig b/configs/zynq_cse_qspi_defconfig
index 241bf0c922c2..51a97f4e3cfb 100644
--- a/configs/zynq_cse_qspi_defconfig
+++ b/configs/zynq_cse_qspi_defconfig
@@ -29,6 +29,8 @@ CONFIG_USE_PREBOOT=y
 # CONFIG_BOARD_LATE_INIT is not set
 CONFIG_CLOCKS=y
 CONFIG_SPL_MAX_SIZE=0x30000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x20000
 CONFIG_SPL_BSS_MAX_SIZE=0x8000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xfffffe00
diff --git a/include/configs/am64x_evm.h b/include/configs/am64x_evm.h
index d7ec31708a3a..b8a25e95f366 100644
--- a/include/configs/am64x_evm.h
+++ b/include/configs/am64x_evm.h
@@ -18,17 +18,7 @@
 /* DDR Configuration */
 #define CONFIG_SYS_SDRAM_BASE1		0x880000000
 
-#if defined(CONFIG_TARGET_AM642_A53_EVM)
-#else
-/*
- * Link BSS to be within SPL in a dedicated region located near the top of
- * the MCU SRAM, this way making it available also before relocation. Note
- * that we are not using the actual top of the MCU SRAM as there is a memory
- * location filled in by the boot ROM that we want to read out without any
- * interference from the C context.
- */
-#define CONFIG_SPL_BSS_START_ADDR	(TI_SRAM_SCRATCH_BOARD_EEPROM_START -\
-					 CONFIG_SPL_BSS_MAX_SIZE)
+#if !defined(CONFIG_TARGET_AM642_A53_EVM)
 /* Set the stack right below the SPL BSS section */
 /* Configure R5 SPL post-relocation malloc pool in DDR */
 #define CONFIG_SYS_SPL_MALLOC_START    0x84000000
diff --git a/include/configs/am65x_evm.h b/include/configs/am65x_evm.h
index 7849976d6f2a..06aade0b2515 100644
--- a/include/configs/am65x_evm.h
+++ b/include/configs/am65x_evm.h
@@ -18,17 +18,7 @@
 #define CONFIG_SYS_SDRAM_BASE1		0x880000000
 
 /* SPL Loader Configuration */
-#ifdef CONFIG_TARGET_AM654_A53_EVM
-#else
-/*
- * Link BSS to be within SPL in a dedicated region located near the top of
- * the MCU SRAM, this way making it available also before relocation. Note
- * that we are not using the actual top of the MCU SRAM as there is a memory
- * location filled in by the boot ROM that we want to read out without any
- * interference from the C context.
- */
-#define CONFIG_SPL_BSS_START_ADDR	(CONFIG_SYS_K3_BOOT_PARAM_TABLE_INDEX -\
-					 CONFIG_SPL_BSS_MAX_SIZE)
+#ifndef CONFIG_TARGET_AM654_A53_EVM
 /* Set the stack right below the SPL BSS section */
 /* Configure R5 SPL post-relocation malloc pool in DDR */
 #define CONFIG_SYS_SPL_MALLOC_START	0x84000000
diff --git a/include/configs/at91sam9m10g45ek.h b/include/configs/at91sam9m10g45ek.h
index 85732e3f9dc2..17e2d2d7f6dd 100644
--- a/include/configs/at91sam9m10g45ek.h
+++ b/include/configs/at91sam9m10g45ek.h
@@ -41,7 +41,6 @@
 
 #ifdef CONFIG_SD_BOOT
 
-#define CONFIG_SPL_BSS_START_ADDR	0x70000000
 #define CONFIG_SYS_SPL_MALLOC_START	0x70080000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	0x00080000
 
diff --git a/include/configs/at91sam9n12ek.h b/include/configs/at91sam9n12ek.h
index b6346ae1df20..d9b7269a1f4a 100644
--- a/include/configs/at91sam9n12ek.h
+++ b/include/configs/at91sam9n12ek.h
@@ -53,7 +53,6 @@
 
 /* SPL */
 
-#define CONFIG_SPL_BSS_START_ADDR	0x20000000
 #define CONFIG_SYS_SPL_MALLOC_START	0x20080000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	0x80000
 
diff --git a/include/configs/at91sam9x5ek.h b/include/configs/at91sam9x5ek.h
index 446c5e1d3f24..f436e8aa699c 100644
--- a/include/configs/at91sam9x5ek.h
+++ b/include/configs/at91sam9x5ek.h
@@ -53,7 +53,6 @@
 
 /* SPL */
 
-#define CONFIG_SPL_BSS_START_ADDR	0x20000000
 #define CONFIG_SYS_SPL_MALLOC_START	0x20080000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	0x80000
 
diff --git a/include/configs/ax25-ae350.h b/include/configs/ax25-ae350.h
index 7ca83a82fced..7a1b9dbd0801 100644
--- a/include/configs/ax25-ae350.h
+++ b/include/configs/ax25-ae350.h
@@ -7,10 +7,6 @@
 #ifndef __CONFIG_H
 #define __CONFIG_H
 
-#ifdef CONFIG_SPL
-#define CONFIG_SPL_BSS_START_ADDR	0x04000000
-#endif
-
 #define RISCV_MMODE_TIMERBASE           0xe6000000
 #define RISCV_MMODE_TIMER_FREQ          60000000
 
diff --git a/include/configs/bur_am335x_common.h b/include/configs/bur_am335x_common.h
index 6591de49c4d8..0f3b53c47a63 100644
--- a/include/configs/bur_am335x_common.h
+++ b/include/configs/bur_am335x_common.h
@@ -68,7 +68,6 @@
  *
  * ----------------------------------------------------------------------------
  */
-#define CONFIG_SPL_BSS_START_ADDR	0x80A00000
 #define CONFIG_SYS_SPL_MALLOC_START	(CONFIG_SPL_BSS_START_ADDR + \
 					CONFIG_SPL_BSS_MAX_SIZE)
 #define CONFIG_SYS_SPL_MALLOC_SIZE	CONFIG_SYS_MALLOC_LEN
diff --git a/include/configs/capricorn-common.h b/include/configs/capricorn-common.h
index b22fc6c5ddcc..ad28251f1d89 100644
--- a/include/configs/capricorn-common.h
+++ b/include/configs/capricorn-common.h
@@ -17,7 +17,6 @@
 
 #define CONFIG_SYS_MONITOR_LEN		(1024 * 1024)
 
-#define CONFIG_SPL_BSS_START_ADDR	0x00128000
 #define CONFIG_SYS_SPL_MALLOC_START	0x00120000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	0x3000	/* 12 KB */
 #define CONFIG_MALLOC_F_ADDR		0x00120000
diff --git a/include/configs/cgtqmx8.h b/include/configs/cgtqmx8.h
index d12feda16a47..2c029f42b60e 100644
--- a/include/configs/cgtqmx8.h
+++ b/include/configs/cgtqmx8.h
@@ -14,7 +14,6 @@
 #ifdef CONFIG_SPL_BUILD
 #define CONFIG_SYS_MONITOR_LEN				(1024 * 1024)
 
-#define CONFIG_SPL_BSS_START_ADDR	0x00128000
 #define CONFIG_SYS_SPL_MALLOC_START	0x00120000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	0x3000	/* 12 KB */
 #define CONFIG_SERIAL_LPUART_BASE	0x5a060000
diff --git a/include/configs/ci20.h b/include/configs/ci20.h
index f0497407afcc..bcec88415f92 100644
--- a/include/configs/ci20.h
+++ b/include/configs/ci20.h
@@ -32,8 +32,6 @@
 
 /* SPL */
 
-#define CONFIG_SPL_BSS_START_ADDR	0xf4004000
-
 #define CONFIG_SPL_START_S_PATH		"arch/mips/mach-jz47xx"
 
 #endif /* __CONFIG_CI20_H__ */
diff --git a/include/configs/clearfog.h b/include/configs/clearfog.h
index 03f7ceb2f427..c2aef08dbf98 100644
--- a/include/configs/clearfog.h
+++ b/include/configs/clearfog.h
@@ -45,8 +45,6 @@
 /* Defines for SPL */
 #define CONFIG_SPL_SIZE			(140 << 10)
 
-#define CONFIG_SPL_BSS_START_ADDR	(0x40000000 + CONFIG_SPL_SIZE)
-
 #if defined(CONFIG_MVEBU_SPL_BOOT_DEVICE_MMC) || defined(CONFIG_MVEBU_SPL_BOOT_DEVICE_SATA)
 /* SPL related MMC defines */
 #ifdef CONFIG_SPL_BUILD
diff --git a/include/configs/controlcenterdc.h b/include/configs/controlcenterdc.h
index 62465acc97cf..914d7ec83d89 100644
--- a/include/configs/controlcenterdc.h
+++ b/include/configs/controlcenterdc.h
@@ -37,8 +37,6 @@
 /* Defines for SPL */
 #define CONFIG_SPL_SIZE			(160 << 10)
 
-#define CONFIG_SPL_BSS_START_ADDR	(0x40000000 + CONFIG_SPL_SIZE)
-
 #if CONFIG_SPL_BOOT_DEVICE == SPL_BOOT_SDIO_MMC_CARD
 /* SPL related MMC defines */
 #ifdef CONFIG_SPL_BUILD
diff --git a/include/configs/corvus.h b/include/configs/corvus.h
index f15e15822e52..864a79346b7c 100644
--- a/include/configs/corvus.h
+++ b/include/configs/corvus.h
@@ -55,8 +55,6 @@
 
 /* Defines for SPL */
 
-#define CONFIG_SPL_BSS_START_ADDR	CONFIG_SPL_MAX_SIZE
-
 #define CONFIG_SYS_NAND_U_BOOT_SIZE	0x80000
 #define	CONFIG_SYS_NAND_U_BOOT_START	CONFIG_SYS_TEXT_BASE
 #define CONFIG_SYS_NAND_U_BOOT_DST	CONFIG_SYS_TEXT_BASE
diff --git a/include/configs/da850evm.h b/include/configs/da850evm.h
index 209a1423c1c0..b48881924938 100644
--- a/include/configs/da850evm.h
+++ b/include/configs/da850evm.h
@@ -32,7 +32,6 @@
 #define PHYS_SDRAM_1		DAVINCI_DDR_EMIF_DATA_BASE /* DDR Start */
 #define PHYS_SDRAM_1_SIZE	(64 << 20) /* SDRAM size 64MB */
 #define CONFIG_MAX_RAM_BANK_SIZE (512 << 20) /* max size from SPRS586*/
-#define CONFIG_SPL_BSS_START_ADDR DAVINCI_DDR_EMIF_DATA_BASE
 /* memtest start addr */
 
 /* memtest will be run on 16MB */
diff --git a/include/configs/db-88f6720.h b/include/configs/db-88f6720.h
index e97ff21360e3..7357f9800fdf 100644
--- a/include/configs/db-88f6720.h
+++ b/include/configs/db-88f6720.h
@@ -35,6 +35,4 @@
 /* SPL */
 /* Defines for SPL */
 
-#define CONFIG_SPL_BSS_START_ADDR	(0x40000000 + (128 << 10))
-
 #endif /* _CONFIG_DB_88F6720_H */
diff --git a/include/configs/db-88f6820-amc.h b/include/configs/db-88f6820-amc.h
index 727756dbba7d..0b814f5e969e 100644
--- a/include/configs/db-88f6820-amc.h
+++ b/include/configs/db-88f6820-amc.h
@@ -42,8 +42,6 @@
 /* Defines for SPL */
 #define CONFIG_SPL_SIZE			(140 << 10)
 
-#define CONFIG_SPL_BSS_START_ADDR	(0x40000000 + CONFIG_SPL_SIZE)
-
 /*
  * mv-common.h should be defined after CMD configs since it used them
  * to enable certain macros
diff --git a/include/configs/db-88f6820-gp.h b/include/configs/db-88f6820-gp.h
index c6ce784b4b20..fe75666d0540 100644
--- a/include/configs/db-88f6820-gp.h
+++ b/include/configs/db-88f6820-gp.h
@@ -42,8 +42,6 @@
 /* Defines for SPL */
 #define CONFIG_SPL_SIZE			(140 << 10)
 
-#define CONFIG_SPL_BSS_START_ADDR	(0x40000000 + CONFIG_SPL_SIZE)
-
 #if CONFIG_SPL_BOOT_DEVICE == SPL_BOOT_SDIO_MMC_CARD
 /* SPL related MMC defines */
 #ifdef CONFIG_SPL_BUILD
diff --git a/include/configs/db-mv784mp-gp.h b/include/configs/db-mv784mp-gp.h
index cade78b85d3c..808debc6f501 100644
--- a/include/configs/db-mv784mp-gp.h
+++ b/include/configs/db-mv784mp-gp.h
@@ -54,8 +54,6 @@
 /* SPL */
 /* Defines for SPL */
 
-#define CONFIG_SPL_BSS_START_ADDR	(0x40000000 + (128 << 10))
-
 /* Enable DDR support in SPL (DDR3 training from Marvell bin_hdr) */
 #define CONFIG_SPD_EEPROM		0x4e
 
diff --git a/include/configs/devkit8000.h b/include/configs/devkit8000.h
index 6d0f63d075d9..b46f6226909e 100644
--- a/include/configs/devkit8000.h
+++ b/include/configs/devkit8000.h
@@ -23,8 +23,6 @@
  * other needs.
  */
 
-#define CONFIG_SPL_BSS_START_ADDR       0x80000500 /* leave space for bootargs*/
-
 #define CONFIG_SYS_SPL_MALLOC_START	0x80208000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	0x100000	/* 1 MB */
 
diff --git a/include/configs/ds414.h b/include/configs/ds414.h
index 16d59ed014cc..7fa1a4ebf020 100644
--- a/include/configs/ds414.h
+++ b/include/configs/ds414.h
@@ -46,8 +46,6 @@
 /* SPL */
 /* Defines for SPL */
 
-#define CONFIG_SPL_BSS_START_ADDR	(0x40000000 + (128 << 10))
-
 /* Default Environment */
 
 #define CONFIG_EXTRA_ENV_SETTINGS				\
diff --git a/include/configs/edminiv2.h b/include/configs/edminiv2.h
index 2bc9c9923191..1c260c7ad400 100644
--- a/include/configs/edminiv2.h
+++ b/include/configs/edminiv2.h
@@ -15,7 +15,6 @@
  * SPL
  */
 
-#define CONFIG_SPL_BSS_START_ADDR	0x00020000
 #define CONFIG_SYS_SPL_MALLOC_START	0x00040000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	0x0001ffff
 #define CONFIG_SYS_UBOOT_BASE		0xfff90000
diff --git a/include/configs/gardena-smart-gateway-at91sam.h b/include/configs/gardena-smart-gateway-at91sam.h
index 380622c9c79e..ea54d9964f0d 100644
--- a/include/configs/gardena-smart-gateway-at91sam.h
+++ b/include/configs/gardena-smart-gateway-at91sam.h
@@ -34,7 +34,6 @@
 
 /* SPL */
 
-#define CONFIG_SPL_BSS_START_ADDR	0x20000000
 #define CONFIG_SYS_SPL_MALLOC_START	0x20080000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	0x80000
 
diff --git a/include/configs/gardena-smart-gateway-mt7688.h b/include/configs/gardena-smart-gateway-mt7688.h
index c012931722ea..d21a9b9383ad 100644
--- a/include/configs/gardena-smart-gateway-mt7688.h
+++ b/include/configs/gardena-smart-gateway-mt7688.h
@@ -17,7 +17,6 @@
 /* SPL */
 
 #define CONFIG_SYS_UBOOT_START		CONFIG_SYS_TEXT_BASE
-#define CONFIG_SPL_BSS_START_ADDR	0x80010000
 
 /* Dummy value */
 #define CONFIG_SYS_UBOOT_BASE		0
diff --git a/include/configs/helios4.h b/include/configs/helios4.h
index 86d441b11b20..90a631c3761a 100644
--- a/include/configs/helios4.h
+++ b/include/configs/helios4.h
@@ -45,8 +45,6 @@
 /* Defines for SPL */
 #define CONFIG_SPL_SIZE			(140 << 10)
 
-#define CONFIG_SPL_BSS_START_ADDR	(0x40000000 + CONFIG_SPL_SIZE)
-
 #if defined(CONFIG_MVEBU_SPL_BOOT_DEVICE_MMC) || defined(CONFIG_MVEBU_SPL_BOOT_DEVICE_SATA)
 /* SPL related MMC defines */
 #ifdef CONFIG_SPL_BUILD
diff --git a/include/configs/imx6_spl.h b/include/configs/imx6_spl.h
index daf44294a231..0b0cf9ddee64 100644
--- a/include/configs/imx6_spl.h
+++ b/include/configs/imx6_spl.h
@@ -20,11 +20,9 @@
 
 #if defined(CONFIG_MX6SX) || defined(CONFIG_MX6SL) || \
 	defined(CONFIG_MX6UL) || defined(CONFIG_MX6ULL)
-#define CONFIG_SPL_BSS_START_ADDR      0x88200000
 #define CONFIG_SYS_SPL_MALLOC_START    0x88300000
 #define CONFIG_SYS_SPL_MALLOC_SIZE     0x100000		/* 1 MB */
 #else
-#define CONFIG_SPL_BSS_START_ADDR	0x18200000
 #define CONFIG_SYS_SPL_MALLOC_START	0x18300000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	0x100000	/* 1 MB */
 #endif
diff --git a/include/configs/imx7_spl.h b/include/configs/imx7_spl.h
index 9fe0dbdfe976..6f7ec9ea8c81 100644
--- a/include/configs/imx7_spl.h
+++ b/include/configs/imx7_spl.h
@@ -17,7 +17,6 @@
 #define CONFIG_SYS_MONITOR_LEN			409600	/* 400 KB */
 #endif
 
-#define CONFIG_SPL_BSS_START_ADDR      0x88200000
 #define CONFIG_SYS_SPL_MALLOC_START    0x88300000
 #define CONFIG_SYS_SPL_MALLOC_SIZE     0x100000		/* 1 MB */
 
diff --git a/include/configs/imx8mm-cl-iot-gate.h b/include/configs/imx8mm-cl-iot-gate.h
index 0e16d14f8b6f..638e8cc3b422 100644
--- a/include/configs/imx8mm-cl-iot-gate.h
+++ b/include/configs/imx8mm-cl-iot-gate.h
@@ -17,7 +17,6 @@
 	(QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512)
 
 #ifdef CONFIG_SPL_BUILD
-#define CONFIG_SPL_BSS_START_ADDR	0x910000
 #define CONFIG_SYS_SPL_MALLOC_START	0x42200000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_512K	/* 512 KB */
 
diff --git a/include/configs/imx8mm_beacon.h b/include/configs/imx8mm_beacon.h
index d28774cddbf3..09788ebe2417 100644
--- a/include/configs/imx8mm_beacon.h
+++ b/include/configs/imx8mm_beacon.h
@@ -14,7 +14,6 @@
 	(QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512)
 
 #ifdef CONFIG_SPL_BUILD
-#define CONFIG_SPL_BSS_START_ADDR	0x910000
 #define CONFIG_SYS_SPL_MALLOC_START	0x42200000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_512K	/* 512 KB */
 
diff --git a/include/configs/imx8mm_data_modul_edm_sbc.h b/include/configs/imx8mm_data_modul_edm_sbc.h
index ed819e392abd..17d0f19ef216 100644
--- a/include/configs/imx8mm_data_modul_edm_sbc.h
+++ b/include/configs/imx8mm_data_modul_edm_sbc.h
@@ -15,7 +15,6 @@
 #define CONFIG_SYS_MONITOR_LEN		SZ_1M
 
 #ifdef CONFIG_SPL_BUILD
-#define CONFIG_SPL_BSS_START_ADDR	0x910000
 #define CONFIG_SYS_SPL_MALLOC_START	0x42200000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_16M	/* 16 MiB */
 
diff --git a/include/configs/imx8mm_evk.h b/include/configs/imx8mm_evk.h
index b6dda3331764..a6ae1ab8bf0f 100644
--- a/include/configs/imx8mm_evk.h
+++ b/include/configs/imx8mm_evk.h
@@ -16,7 +16,6 @@
 	(QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512)
 
 #ifdef CONFIG_SPL_BUILD
-#define CONFIG_SPL_BSS_START_ADDR	0x910000
 #define CONFIG_SYS_SPL_MALLOC_START	0x42200000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_512K	/* 512 KB */
 
diff --git a/include/configs/imx8mm_icore_mx8mm.h b/include/configs/imx8mm_icore_mx8mm.h
index ffe88f7027b7..b3ee0e200998 100644
--- a/include/configs/imx8mm_icore_mx8mm.h
+++ b/include/configs/imx8mm_icore_mx8mm.h
@@ -15,7 +15,6 @@
 	(QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512)
 
 #ifdef CONFIG_SPL_BUILD
-# define CONFIG_SPL_BSS_START_ADDR	0x910000
 # define CONFIG_SYS_SPL_MALLOC_START	0x42200000
 # define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_512K
 
diff --git a/include/configs/imx8mm_venice.h b/include/configs/imx8mm_venice.h
index eb30ed1b950c..4b41f351d831 100644
--- a/include/configs/imx8mm_venice.h
+++ b/include/configs/imx8mm_venice.h
@@ -14,7 +14,6 @@
 	(QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512)
 
 #ifdef CONFIG_SPL_BUILD
-#define CONFIG_SPL_BSS_START_ADDR	0x910000
 #define CONFIG_SYS_SPL_MALLOC_START	0x42200000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_1M
 
diff --git a/include/configs/imx8mn_beacon.h b/include/configs/imx8mn_beacon.h
index 3b99ba41bda7..5fac4ad5e605 100644
--- a/include/configs/imx8mn_beacon.h
+++ b/include/configs/imx8mn_beacon.h
@@ -14,7 +14,6 @@
 	(QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512)
 
 #ifdef CONFIG_SPL_BUILD
-#define CONFIG_SPL_BSS_START_ADDR	0x0095e000
 #define CONFIG_SYS_SPL_MALLOC_START	0x42200000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_512K
 
diff --git a/include/configs/imx8mn_bsh_smm_s2_common.h b/include/configs/imx8mn_bsh_smm_s2_common.h
index 60faedb76e67..5aa5a311ca85 100644
--- a/include/configs/imx8mn_bsh_smm_s2_common.h
+++ b/include/configs/imx8mn_bsh_smm_s2_common.h
@@ -16,7 +16,6 @@
 #define CONFIG_SYS_UBOOT_BASE	\
 	(QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512)
 
-#define CONFIG_SPL_BSS_START_ADDR	0x950000
 #define CONFIG_SYS_SPL_MALLOC_START	0x42200000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_512K
 
diff --git a/include/configs/imx8mn_evk.h b/include/configs/imx8mn_evk.h
index fac2c26146d6..8f199672ff53 100644
--- a/include/configs/imx8mn_evk.h
+++ b/include/configs/imx8mn_evk.h
@@ -17,7 +17,6 @@
 	(QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512)
 
 #ifdef CONFIG_SPL_BUILD
-#define CONFIG_SPL_BSS_START_ADDR	0x950000
 #define CONFIG_SYS_SPL_MALLOC_START	0x42200000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_512K	/* 512 KB */
 
diff --git a/include/configs/imx8mn_var_som.h b/include/configs/imx8mn_var_som.h
index 699a51c1eb41..d9cf466b0daa 100644
--- a/include/configs/imx8mn_var_som.h
+++ b/include/configs/imx8mn_var_som.h
@@ -16,7 +16,6 @@
 #define CONFIG_SYS_UBOOT_BASE	\
 	(QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512)
 
-#define CONFIG_SPL_BSS_START_ADDR	0x950000
 #define CONFIG_SYS_SPL_MALLOC_START	0x42200000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_512K
 
diff --git a/include/configs/imx8mn_venice.h b/include/configs/imx8mn_venice.h
index 5807da5ac4b9..7a449c9f2016 100644
--- a/include/configs/imx8mn_venice.h
+++ b/include/configs/imx8mn_venice.h
@@ -14,7 +14,6 @@
 	(QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512)
 
 #ifdef CONFIG_SPL_BUILD
-#define CONFIG_SPL_BSS_START_ADDR	0x950000
 #define CONFIG_SYS_SPL_MALLOC_START	0x42200000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_512K	/* 512 KB */
 
diff --git a/include/configs/imx8mp_dhcom_pdk2.h b/include/configs/imx8mp_dhcom_pdk2.h
index abe245748f19..33b101daf997 100644
--- a/include/configs/imx8mp_dhcom_pdk2.h
+++ b/include/configs/imx8mp_dhcom_pdk2.h
@@ -15,7 +15,6 @@
 #define CONFIG_SYS_MONITOR_LEN		SZ_1M
 
 #ifdef CONFIG_SPL_BUILD
-#define CONFIG_SPL_BSS_START_ADDR	0x0096FC00
 #define CONFIG_SYS_SPL_MALLOC_START	0x4c000000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_512K	/* 512 kiB */
 
diff --git a/include/configs/imx8mp_evk.h b/include/configs/imx8mp_evk.h
index 1cfd63d78c6a..ba059f7d68b3 100644
--- a/include/configs/imx8mp_evk.h
+++ b/include/configs/imx8mp_evk.h
@@ -17,7 +17,6 @@
 
 #ifdef CONFIG_SPL_BUILD
 /*#define CONFIG_ENABLE_DDR_TRAINING_DEBUG*/
-#define CONFIG_SPL_BSS_START_ADDR	0x0098FC00
 #define CONFIG_SYS_SPL_MALLOC_START	0x42200000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_512K	/* 512 KB */
 
diff --git a/include/configs/imx8mp_rsb3720.h b/include/configs/imx8mp_rsb3720.h
index 97f66bddbc9c..f98f04b46f19 100644
--- a/include/configs/imx8mp_rsb3720.h
+++ b/include/configs/imx8mp_rsb3720.h
@@ -27,7 +27,6 @@
 		 0x5f, 0xd3, 0x6b, 0x9b, 0xe5, 0xb9)
 
 #ifdef CONFIG_SPL_BUILD
-#define CONFIG_SPL_BSS_START_ADDR	0x0098FC00
 #define CONFIG_SYS_SPL_MALLOC_START	0x42200000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_512K	/* 512 KB */
 
diff --git a/include/configs/imx8mp_venice.h b/include/configs/imx8mp_venice.h
index 074f5b08fc1a..2933e4a5dedb 100644
--- a/include/configs/imx8mp_venice.h
+++ b/include/configs/imx8mp_venice.h
@@ -14,7 +14,6 @@
 	(QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512)
 
 #ifdef CONFIG_SPL_BUILD
-#define CONFIG_SPL_BSS_START_ADDR	0x0098FC00
 #define CONFIG_SYS_SPL_MALLOC_START	0x42200000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_512K	/* 512 KB */
 
diff --git a/include/configs/imx8mq_cm.h b/include/configs/imx8mq_cm.h
index fc4b1c5bf780..11ed33ddc8ec 100644
--- a/include/configs/imx8mq_cm.h
+++ b/include/configs/imx8mq_cm.h
@@ -15,7 +15,6 @@
 #define CONFIG_SYS_MONITOR_LEN		(512 * 1024)
 
 #ifdef CONFIG_SPL_BUILD
-#define CONFIG_SPL_BSS_START_ADDR      0x00180000
 #define CONFIG_SYS_SPL_MALLOC_START    0x42200000
 #define CONFIG_SYS_SPL_MALLOC_SIZE    0x80000	/* 512 KB */
 #define CONFIG_SYS_SPL_PTE_RAM_BASE    0x41580000
diff --git a/include/configs/imx8mq_evk.h b/include/configs/imx8mq_evk.h
index 179c5123d724..b9dbbb7d069f 100644
--- a/include/configs/imx8mq_evk.h
+++ b/include/configs/imx8mq_evk.h
@@ -16,7 +16,6 @@
 
 #ifdef CONFIG_SPL_BUILD
 /*#define CONFIG_ENABLE_DDR_TRAINING_DEBUG*/
-#define CONFIG_SPL_BSS_START_ADDR      0x00180000
 #define CONFIG_SYS_SPL_MALLOC_START    0x42200000
 #define CONFIG_SYS_SPL_MALLOC_SIZE    0x80000	/* 512 KB */
 #define CONFIG_SYS_SPL_PTE_RAM_BASE    0x41580000
diff --git a/include/configs/imx8mq_phanbell.h b/include/configs/imx8mq_phanbell.h
index bc749538d8cc..4507d7c54c8f 100644
--- a/include/configs/imx8mq_phanbell.h
+++ b/include/configs/imx8mq_phanbell.h
@@ -13,7 +13,6 @@
 
 #ifdef CONFIG_SPL_BUILD
 /*#define CONFIG_ENABLE_DDR_TRAINING_DEBUG*/
-#define CONFIG_SPL_BSS_START_ADDR      0x00180000
 #define CONFIG_SYS_SPL_MALLOC_START    0x42200000
 #define CONFIG_SYS_SPL_MALLOC_SIZE    0x80000	/* 512 KB */
 #define CONFIG_SYS_SPL_PTE_RAM_BASE    0x41580000
diff --git a/include/configs/imx8qm_mek.h b/include/configs/imx8qm_mek.h
index 4f3e004f388b..697194178549 100644
--- a/include/configs/imx8qm_mek.h
+++ b/include/configs/imx8qm_mek.h
@@ -15,7 +15,6 @@
 #ifdef CONFIG_SPL_BUILD
 #define CONFIG_SYS_MONITOR_LEN				(1024 * 1024)
 
-#define CONFIG_SPL_BSS_START_ADDR	0x00128000
 #define CONFIG_SYS_SPL_MALLOC_START	0x00120000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	0x3000	/* 12 KB */
 #define CONFIG_SERIAL_LPUART_BASE	0x5a060000
diff --git a/include/configs/imx8qm_rom7720.h b/include/configs/imx8qm_rom7720.h
index 1f86b79d331e..88d38a1dcbd9 100644
--- a/include/configs/imx8qm_rom7720.h
+++ b/include/configs/imx8qm_rom7720.h
@@ -10,8 +10,6 @@
 #include <linux/stringify.h>
 #include <asm/arch/imx-regs.h>
 
-#define CONFIG_SPL_BSS_START_ADDR	0x00128000
-
 #define CONFIG_SYS_BOOTMAPSZ		(256 << 20)
 #define CONFIG_SYS_FSL_ESDHC_ADDR	0
 #define USDHC1_BASE_ADDR		0x5B010000
diff --git a/include/configs/imx8qxp_mek.h b/include/configs/imx8qxp_mek.h
index 7afc64800eb3..0a6746c42c35 100644
--- a/include/configs/imx8qxp_mek.h
+++ b/include/configs/imx8qxp_mek.h
@@ -13,7 +13,6 @@
 #ifdef CONFIG_SPL_BUILD
 #define CONFIG_SYS_MONITOR_LEN				(1024 * 1024)
 
-#define CONFIG_SPL_BSS_START_ADDR	0x00128000
 #define CONFIG_SYS_SPL_MALLOC_START	0x00120000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	0x3000	/* 12 KB */
 #define CONFIG_SERIAL_LPUART_BASE	0x5a060000
diff --git a/include/configs/imx8ulp_evk.h b/include/configs/imx8ulp_evk.h
index 55b1795634ab..34ebfda29f9a 100644
--- a/include/configs/imx8ulp_evk.h
+++ b/include/configs/imx8ulp_evk.h
@@ -14,7 +14,6 @@
 #define CONFIG_SYS_UBOOT_BASE	(QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512)
 
 #ifdef CONFIG_SPL_BUILD
-#define CONFIG_SPL_BSS_START_ADDR	0x22048000
 #define CONFIG_SYS_SPL_MALLOC_START	0x22040000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	0x8000	/* 32 KB */
 
diff --git a/include/configs/j721e_evm.h b/include/configs/j721e_evm.h
index ba3f9de6bf67..8e7861fc9124 100644
--- a/include/configs/j721e_evm.h
+++ b/include/configs/j721e_evm.h
@@ -24,15 +24,6 @@
 /* Image load address in RAM for DFU boot*/
 #else
 #define CONFIG_SYS_UBOOT_BASE		0x50080000
-/*
- * Link BSS to be within SPL in a dedicated region located near the top of
- * the MCU SRAM, this way making it available also before relocation. Note
- * that we are not using the actual top of the MCU SRAM as there is a memory
- * location filled in by the boot ROM that we want to read out without any
- * interference from the C context.
- */
-#define CONFIG_SPL_BSS_START_ADDR	(CONFIG_SYS_K3_BOOT_PARAM_TABLE_INDEX -\
-					 CONFIG_SPL_BSS_MAX_SIZE)
 /* Set the stack right below the SPL BSS section */
 /* Configure R5 SPL post-relocation malloc pool in DDR */
 #define CONFIG_SYS_SPL_MALLOC_START	0x84000000
diff --git a/include/configs/j721s2_evm.h b/include/configs/j721s2_evm.h
index 3103face5587..6099db1d429e 100644
--- a/include/configs/j721s2_evm.h
+++ b/include/configs/j721s2_evm.h
@@ -25,15 +25,6 @@
 /* Image load address in RAM for DFU boot*/
 #else
 #define CONFIG_SYS_UBOOT_BASE		0x50080000
-/*
- * Link BSS to be within SPL in a dedicated region located near the top of
- * the MCU SRAM, this way making it available also before relocation. Note
- * that we are not using the actual top of the MCU SRAM as there is a memory
- * location filled in by the boot ROM that we want to read out without any
- * interference from the C context.
- */
-#define CONFIG_SPL_BSS_START_ADDR	(0x41c80000 -\
-					 CONFIG_SPL_BSS_MAX_SIZE)
 /* Set the stack right below the SPL BSS section */
 /* Configure R5 SPL post-relocation malloc pool in DDR */
 #define CONFIG_SYS_SPL_MALLOC_START	0x84000000
diff --git a/include/configs/kontron-sl-mx8mm.h b/include/configs/kontron-sl-mx8mm.h
index b2c826b6f134..eb6c5e60910c 100644
--- a/include/configs/kontron-sl-mx8mm.h
+++ b/include/configs/kontron-sl-mx8mm.h
@@ -55,7 +55,6 @@
 #define CONFIG_SYS_BOOTM_LEN		SZ_64M
 
 #ifdef CONFIG_SPL_BUILD
-#define CONFIG_SPL_BSS_START_ADDR	0x910000
 #define CONFIG_SYS_SPL_MALLOC_START	0x42200000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_512K
 /* malloc f used before GD_FLG_FULL_MALLOC_INIT set */
diff --git a/include/configs/kontron_pitx_imx8m.h b/include/configs/kontron_pitx_imx8m.h
index 08c6b80abb9a..f86b7fd471a4 100644
--- a/include/configs/kontron_pitx_imx8m.h
+++ b/include/configs/kontron_pitx_imx8m.h
@@ -17,7 +17,6 @@
 		 0x40, 0xd4, 0x5c, 0xca, 0x13, 0x99)
 
 #ifdef CONFIG_SPL_BUILD
-#define CONFIG_SPL_BSS_START_ADDR       0x00180000
 #define CONFIG_SYS_SPL_MALLOC_START     0x42200000
 #define CONFIG_SYS_SPL_MALLOC_SIZE      SZ_512K
 #define CONFIG_SYS_SPL_PTE_RAM_BASE     0x41580000
diff --git a/include/configs/kontron_sl28.h b/include/configs/kontron_sl28.h
index 52778dd02b93..676e2c6ee443 100644
--- a/include/configs/kontron_sl28.h
+++ b/include/configs/kontron_sl28.h
@@ -41,7 +41,6 @@
 #define COUNTER_FREQUENCY_REAL		(get_board_sys_clk() / 4)
 
 /* SPL */
-#define CONFIG_SPL_BSS_START_ADDR	0x80100000
 
 #define CONFIG_SYS_SPL_MALLOC_SIZE	0x00100000
 #define CONFIG_SYS_SPL_MALLOC_START	0x80200000
diff --git a/include/configs/linkit-smart-7688.h b/include/configs/linkit-smart-7688.h
index 56a0c996c070..2e077dd5161f 100644
--- a/include/configs/linkit-smart-7688.h
+++ b/include/configs/linkit-smart-7688.h
@@ -17,7 +17,6 @@
 /* SPL */
 
 #define CONFIG_SYS_UBOOT_START		CONFIG_SYS_TEXT_BASE
-#define CONFIG_SPL_BSS_START_ADDR	0x80010000
 
 /* Dummy value */
 #define CONFIG_SYS_UBOOT_BASE		0
diff --git a/include/configs/ls1021aiot.h b/include/configs/ls1021aiot.h
index 614b399af508..b592786fd895 100644
--- a/include/configs/ls1021aiot.h
+++ b/include/configs/ls1021aiot.h
@@ -45,7 +45,6 @@
 #define CONFIG_SYS_SPL_MALLOC_START	(CONFIG_SYS_TEXT_BASE + \
 		CONFIG_SYS_MONITOR_LEN)
 #define CONFIG_SYS_SPL_MALLOC_SIZE	0x100000
-#define CONFIG_SPL_BSS_START_ADDR	0x80100000
 #define CONFIG_SYS_MONITOR_LEN		0x80000
 #endif
 
diff --git a/include/configs/ls1021aqds.h b/include/configs/ls1021aqds.h
index fb50c82a653f..bddd6be30db0 100644
--- a/include/configs/ls1021aqds.h
+++ b/include/configs/ls1021aqds.h
@@ -14,7 +14,6 @@
 #define CONFIG_SYS_SPL_MALLOC_START	(CONFIG_SYS_TEXT_BASE + \
 		CONFIG_SYS_MONITOR_LEN)
 #define CONFIG_SYS_SPL_MALLOC_SIZE	0x100000
-#define CONFIG_SPL_BSS_START_ADDR	0x80100000
 #define CONFIG_SYS_MONITOR_LEN		0xc0000
 #endif
 
@@ -25,7 +24,6 @@
 
 #define CONFIG_SYS_SPL_MALLOC_START	0x80200000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	0x100000
-#define CONFIG_SPL_BSS_START_ADDR	0x80100000
 #define CONFIG_SYS_MONITOR_LEN		0x80000
 #endif
 
diff --git a/include/configs/ls1021atsn.h b/include/configs/ls1021atsn.h
index 3e9175f50451..97c3bbeae566 100644
--- a/include/configs/ls1021atsn.h
+++ b/include/configs/ls1021atsn.h
@@ -47,7 +47,6 @@
 #define CONFIG_SYS_SPL_MALLOC_START	(CONFIG_SYS_TEXT_BASE + \
 		CONFIG_SYS_MONITOR_LEN)
 #define CONFIG_SYS_SPL_MALLOC_SIZE	0x100000
-#define CONFIG_SPL_BSS_START_ADDR	0x80100000
 
 #ifdef CONFIG_U_BOOT_HDR_SIZE
 /*
diff --git a/include/configs/ls1021atwr.h b/include/configs/ls1021atwr.h
index 4470d974ca97..1141a9b013e1 100644
--- a/include/configs/ls1021atwr.h
+++ b/include/configs/ls1021atwr.h
@@ -49,7 +49,6 @@
 #define CONFIG_SYS_SPL_MALLOC_START	(CONFIG_SYS_TEXT_BASE + \
 		CONFIG_SYS_MONITOR_LEN)
 #define CONFIG_SYS_SPL_MALLOC_SIZE	0x100000
-#define CONFIG_SPL_BSS_START_ADDR	0x80100000
 
 #ifdef CONFIG_U_BOOT_HDR_SIZE
 /*
diff --git a/include/configs/ls1043a_common.h b/include/configs/ls1043a_common.h
index a09486a4170e..fee760f1123d 100644
--- a/include/configs/ls1043a_common.h
+++ b/include/configs/ls1043a_common.h
@@ -49,7 +49,6 @@
 #define CONFIG_SYS_SPL_MALLOC_START	(CONFIG_SPL_BSS_START_ADDR + \
 					CONFIG_SPL_BSS_MAX_SIZE)
 #define CONFIG_SYS_SPL_MALLOC_SIZE	0x100000
-#define CONFIG_SPL_BSS_START_ADDR	0x8f000000
 
 #ifdef CONFIG_NXP_ESBC
 #define CONFIG_U_BOOT_HDR_SIZE				(16 << 10)
@@ -70,7 +69,6 @@
 #define CONFIG_SYS_NAND_U_BOOT_DST	CONFIG_SYS_TEXT_BASE
 #define CONFIG_SYS_NAND_U_BOOT_START	CONFIG_SYS_TEXT_BASE
 #define CONFIG_SYS_SPL_MALLOC_START	0x80200000
-#define CONFIG_SPL_BSS_START_ADDR	0x80100000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	0x100000
 
 #ifdef CONFIG_NXP_ESBC
diff --git a/include/configs/ls1046a_common.h b/include/configs/ls1046a_common.h
index 92fcc453f165..d283c8587a99 100644
--- a/include/configs/ls1046a_common.h
+++ b/include/configs/ls1046a_common.h
@@ -46,7 +46,6 @@
 
 /* SD boot SPL */
 #ifdef CONFIG_SD_BOOT
-#define CONFIG_SPL_BSS_START_ADDR	0x8f000000
 #define CONFIG_SYS_SPL_MALLOC_START	(CONFIG_SPL_BSS_START_ADDR + \
 					CONFIG_SPL_BSS_MAX_SIZE)
 #define CONFIG_SYS_SPL_MALLOC_SIZE	0x100000
@@ -67,7 +66,6 @@
 
 #if defined(CONFIG_QSPI_BOOT) && defined(CONFIG_SPL)
 #define CONFIG_SPL_TARGET		"spl/u-boot-spl.pbl"
-#define CONFIG_SPL_BSS_START_ADDR	0x8f000000
 #define CONFIG_SYS_SPL_MALLOC_START	(CONFIG_SPL_BSS_START_ADDR + \
 					CONFIG_SPL_BSS_MAX_SIZE)
 #define CONFIG_SYS_SPL_MALLOC_SIZE	0x100000
@@ -79,7 +77,6 @@
 #define CONFIG_SYS_NAND_U_BOOT_DST	CONFIG_SYS_TEXT_BASE
 #define CONFIG_SYS_NAND_U_BOOT_START	CONFIG_SYS_TEXT_BASE
 
-#define CONFIG_SPL_BSS_START_ADDR	0x8f000000
 #define CONFIG_SYS_SPL_MALLOC_START	(CONFIG_SPL_BSS_START_ADDR + \
 					CONFIG_SPL_BSS_MAX_SIZE)
 #define CONFIG_SYS_SPL_MALLOC_SIZE	0x100000
diff --git a/include/configs/ls1088a_common.h b/include/configs/ls1088a_common.h
index 1b8180f6f10b..83dcddafcfa1 100644
--- a/include/configs/ls1088a_common.h
+++ b/include/configs/ls1088a_common.h
@@ -144,7 +144,6 @@ unsigned long long get_qixis_addr(void);
 #endif
 
 #ifdef CONFIG_SPL
-#define CONFIG_SPL_BSS_START_ADDR      0x80100000
 #define CONFIG_SPL_TARGET              "u-boot-with-spl.bin"
 
 #define CONFIG_SYS_SPL_MALLOC_SIZE     0x00100000
diff --git a/include/configs/ls2080a_common.h b/include/configs/ls2080a_common.h
index f33e369847c3..e32159baffcb 100644
--- a/include/configs/ls2080a_common.h
+++ b/include/configs/ls2080a_common.h
@@ -137,7 +137,6 @@ unsigned long long get_qixis_addr(void);
 	"mcinitcmd=fsl_mc start mc 0x580a00000"	\
 	" 0x580e00000 \0"
 
-#define CONFIG_SPL_BSS_START_ADDR	0x80100000
 #define CONFIG_SPL_TARGET		"u-boot-with-spl.bin"
 
 #ifdef CONFIG_NAND_BOOT
diff --git a/include/configs/maxbcm.h b/include/configs/maxbcm.h
index d728c1fc11b2..db84302231a6 100644
--- a/include/configs/maxbcm.h
+++ b/include/configs/maxbcm.h
@@ -46,13 +46,6 @@
  * L2 cache thus cannot be used.
  */
 
-/* SPL */
-/* Defines for SPL */
-
-#define CONFIG_SPL_BSS_START_ADDR	(0x40000000 + (128 << 10))
-
-/* SPL related SPI defines */
-
 /* Enable DDR support in SPL (DDR3 training from Marvell bin_hdr) */
 #define CONFIG_SYS_SDRAM_SIZE		SZ_1G
 
diff --git a/include/configs/mt7620.h b/include/configs/mt7620.h
index 9ecc55cbf4d8..db4d68d75076 100644
--- a/include/configs/mt7620.h
+++ b/include/configs/mt7620.h
@@ -19,7 +19,6 @@
 /* SPL */
 
 #define CONFIG_SYS_UBOOT_START		CONFIG_SYS_TEXT_BASE
-#define CONFIG_SPL_BSS_START_ADDR	0x80010000
 
 /* Dummy value */
 #define CONFIG_SYS_UBOOT_BASE		0
diff --git a/include/configs/mt7628.h b/include/configs/mt7628.h
index cc02cf00854d..4dcfa39350cc 100644
--- a/include/configs/mt7628.h
+++ b/include/configs/mt7628.h
@@ -31,7 +31,6 @@
 /* SPL */
 
 #define CONFIG_SYS_UBOOT_START		CONFIG_SYS_TEXT_BASE
-#define CONFIG_SPL_BSS_START_ADDR	0x80010000
 
 /* Dummy value */
 #define CONFIG_SYS_UBOOT_BASE		0
diff --git a/include/configs/omapl138_lcdk.h b/include/configs/omapl138_lcdk.h
index 6fefb1eab900..e3a679efe701 100644
--- a/include/configs/omapl138_lcdk.h
+++ b/include/configs/omapl138_lcdk.h
@@ -28,8 +28,6 @@
 #define PHYS_SDRAM_1_SIZE	(128 << 20) /* SDRAM size 128MB */
 #define CONFIG_MAX_RAM_BANK_SIZE (512 << 20) /* max size from SPRS586*/
 
-#define CONFIG_SPL_BSS_START_ADDR DAVINCI_DDR_EMIF_DATA_BASE
-
 /* memtest start addr */
 
 /* memtest will be run on 16MB */
diff --git a/include/configs/openpiton-riscv64.h b/include/configs/openpiton-riscv64.h
index e194fbaeecf7..d3b638e838fb 100644
--- a/include/configs/openpiton-riscv64.h
+++ b/include/configs/openpiton-riscv64.h
@@ -18,7 +18,6 @@
 #define CONFIG_SYS_BOOTM_LEN        SZ_256M
 
 #ifdef CONFIG_SPL
-#define CONFIG_SPL_BSS_START_ADDR   0x82000000
 #define CONFIG_SYS_SPL_MALLOC_START (CONFIG_SPL_BSS_START_ADDR + \
 		CONFIG_SPL_BSS_MAX_SIZE)
 #define CONFIG_SYS_SPL_MALLOC_SIZE  0x0100000
diff --git a/include/configs/phycore_imx8mm.h b/include/configs/phycore_imx8mm.h
index 284891414e22..bf08e7a62419 100644
--- a/include/configs/phycore_imx8mm.h
+++ b/include/configs/phycore_imx8mm.h
@@ -17,7 +17,6 @@
 		(QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512)
 
 #ifdef CONFIG_SPL_BUILD
-#define CONFIG_SPL_BSS_START_ADDR	0x910000
 #define CONFIG_SYS_SPL_MALLOC_START	0x42200000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_512K
 
diff --git a/include/configs/phycore_imx8mp.h b/include/configs/phycore_imx8mp.h
index 99aecdad4ef6..c2e370d5a8de 100644
--- a/include/configs/phycore_imx8mp.h
+++ b/include/configs/phycore_imx8mp.h
@@ -17,7 +17,6 @@
 		(QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512)
 
 #ifdef CONFIG_SPL_BUILD
-#define CONFIG_SPL_BSS_START_ADDR	0x98FC00
 #define CONFIG_SYS_SPL_MALLOC_START	0x42200000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_512K
 
diff --git a/include/configs/pico-imx8mq.h b/include/configs/pico-imx8mq.h
index 10e3e23e8dc8..508909a744d9 100644
--- a/include/configs/pico-imx8mq.h
+++ b/include/configs/pico-imx8mq.h
@@ -13,7 +13,6 @@
 
 #ifdef CONFIG_SPL_BUILD
 /*#define CONFIG_ENABLE_DDR_TRAINING_DEBUG*/
-#define CONFIG_SPL_BSS_START_ADDR	0x00180000
 #define CONFIG_SYS_SPL_MALLOC_START	0x42200000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	0x80000	/* 512 KB */
 #define CONFIG_SYS_SPL_PTE_RAM_BASE	0x41580000
diff --git a/include/configs/pm9g45.h b/include/configs/pm9g45.h
index 6f49568484d9..614bfad0e424 100644
--- a/include/configs/pm9g45.h
+++ b/include/configs/pm9g45.h
@@ -48,7 +48,6 @@
 
 #ifdef CONFIG_SD_BOOT
 
-#define CONFIG_SPL_BSS_START_ADDR	0x70000000
 #define CONFIG_SYS_SPL_MALLOC_START	0x70080000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	0x00080000
 
diff --git a/include/configs/px30_common.h b/include/configs/px30_common.h
index 1cf239f8a634..96dcfb420f7b 100644
--- a/include/configs/px30_common.h
+++ b/include/configs/px30_common.h
@@ -13,7 +13,6 @@
 /* FIXME: ff020000 is pmu_mem (10k), while ff0e0000 is regular int_mem */
 #define CONFIG_IRAM_BASE		0xff020000
 
-#define CONFIG_SPL_BSS_START_ADDR	0x4000000
 #define CONFIG_SYS_BOOTM_LEN		(64 << 20)	/* 64M */
 
 #define GICD_BASE			0xff131000
diff --git a/include/configs/qemu-riscv.h b/include/configs/qemu-riscv.h
index d915468b63d0..66c2bfb551ab 100644
--- a/include/configs/qemu-riscv.h
+++ b/include/configs/qemu-riscv.h
@@ -10,7 +10,6 @@
 
 #ifdef CONFIG_SPL
 
-#define CONFIG_SPL_BSS_START_ADDR	0x84000000
 #define CONFIG_SYS_SPL_MALLOC_START	0x84100000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	0x00100000
 
diff --git a/include/configs/rcar-gen3-common.h b/include/configs/rcar-gen3-common.h
index 6cda69159b45..ee9fc2862e53 100644
--- a/include/configs/rcar-gen3-common.h
+++ b/include/configs/rcar-gen3-common.h
@@ -43,11 +43,4 @@
 #define CONFIG_EXTRA_ENV_SETTINGS	\
 	"bootm_size=0x10000000\0"
 
-/* SPL support */
-#if defined(CONFIG_R8A7795) || defined(CONFIG_R8A7796) || defined(CONFIG_R8A77965)
-#define CONFIG_SPL_BSS_START_ADDR	0xe633f000
-#else
-#define CONFIG_SPL_BSS_START_ADDR	0xe631f000
-#endif
-
 #endif	/* __RCAR_GEN3_COMMON_H */
diff --git a/include/configs/rk3308_common.h b/include/configs/rk3308_common.h
index 2b0b367df785..169cf2ac9c1f 100644
--- a/include/configs/rk3308_common.h
+++ b/include/configs/rk3308_common.h
@@ -8,8 +8,6 @@
 
 #include "rockchip-common.h"
 
-#define CONFIG_SPL_BSS_START_ADDR	0x00400000
-
 #define CONFIG_SYS_NS16550_MEM32
 
 #define CONFIG_IRAM_BASE		0xfff80000
diff --git a/include/configs/rk3328_common.h b/include/configs/rk3328_common.h
index 25e2c6590014..9cdc9004a91f 100644
--- a/include/configs/rk3328_common.h
+++ b/include/configs/rk3328_common.h
@@ -10,8 +10,6 @@
 
 #define CONFIG_IRAM_BASE		0xff090000
 
-#define CONFIG_SPL_BSS_START_ADDR	0x2000000
-
 #define CONFIG_SYS_BOOTM_LEN	(64 << 20)	/* 64M */
 
 /* FAT sd card locations. */
diff --git a/include/configs/rk3368_common.h b/include/configs/rk3368_common.h
index 1bdc8cf187b0..ac8818868245 100644
--- a/include/configs/rk3368_common.h
+++ b/include/configs/rk3368_common.h
@@ -16,8 +16,6 @@
 
 #define CONFIG_IRAM_BASE		0xff8c0000
 
-#define CONFIG_SPL_BSS_START_ADDR       0x400000
-
 #define CONFIG_SYS_BOOTM_LEN	(64 << 20)	/* 64M */
 
 #ifndef CONFIG_SPL_BUILD
diff --git a/include/configs/rk3399_common.h b/include/configs/rk3399_common.h
index 112b8639ad75..3ca80c8c7c0d 100644
--- a/include/configs/rk3399_common.h
+++ b/include/configs/rk3399_common.h
@@ -11,10 +11,8 @@
 #define CONFIG_IRAM_BASE		0xff8c0000
 
 #if defined(CONFIG_SPL_BUILD) && defined(CONFIG_TPL_BOOTROM_SUPPORT)
-#define CONFIG_SPL_BSS_START_ADDR	0x00400000
 #else
 /*  BSS setup */
-#define CONFIG_SPL_BSS_START_ADDR       0xff8e0000
 #endif
 
 #define CONFIG_SYS_BOOTM_LEN	(64 << 20)	/* 64M */
diff --git a/include/configs/rk3568_common.h b/include/configs/rk3568_common.h
index c0721aa1afb9..f9c7c23cd9ab 100644
--- a/include/configs/rk3568_common.h
+++ b/include/configs/rk3568_common.h
@@ -10,8 +10,6 @@
 
 #define CONFIG_IRAM_BASE		0xfdcc0000
 
-#define CONFIG_SPL_BSS_START_ADDR	0x4000000
-
 #define CONFIG_SYS_BOOTM_LEN		(64 << 20)	/* 64M */
 
 #define CONFIG_SYS_SDRAM_BASE		0
diff --git a/include/configs/sama5d27_som1_ek.h b/include/configs/sama5d27_som1_ek.h
index dd5f8d8c8018..8a39069c21fb 100644
--- a/include/configs/sama5d27_som1_ek.h
+++ b/include/configs/sama5d27_som1_ek.h
@@ -15,7 +15,6 @@
 #define CONFIG_SYS_AT91_MAIN_CLOCK      24000000 /* from 24 MHz crystal */
 
 /* SPL */
-#define CONFIG_SPL_BSS_START_ADDR	0x20000000
 #define CONFIG_SYS_SPL_MALLOC_START	0x20080000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	0x80000
 
diff --git a/include/configs/sama5d27_wlsom1_ek.h b/include/configs/sama5d27_wlsom1_ek.h
index 728dc9fb98b6..14a6e0f05106 100644
--- a/include/configs/sama5d27_wlsom1_ek.h
+++ b/include/configs/sama5d27_wlsom1_ek.h
@@ -20,7 +20,6 @@
 #define CONFIG_SYS_SDRAM_SIZE		0x10000000
 
 /* SPL */
-#define CONFIG_SPL_BSS_START_ADDR	0x20000000
 #define CONFIG_SYS_SPL_MALLOC_START	0x20080000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	0x80000
 
diff --git a/include/configs/sama5d2_icp.h b/include/configs/sama5d2_icp.h
index 0645c21b6185..3b1e80921ee2 100644
--- a/include/configs/sama5d2_icp.h
+++ b/include/configs/sama5d2_icp.h
@@ -27,7 +27,6 @@
 #endif
 
 /* SPL */
-#define CONFIG_SPL_BSS_START_ADDR	0x20000000
 #define CONFIG_SYS_SPL_MALLOC_START	0x20080000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	0x80000
 
diff --git a/include/configs/sama5d2_xplained.h b/include/configs/sama5d2_xplained.h
index 8481b0262c4a..88020536c054 100644
--- a/include/configs/sama5d2_xplained.h
+++ b/include/configs/sama5d2_xplained.h
@@ -12,7 +12,6 @@
 #include "at91-sama5_common.h"
 
 /* SPL */
-#define CONFIG_SPL_BSS_START_ADDR	0x20000000
 #define CONFIG_SYS_SPL_MALLOC_START	0x20080000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	0x80000
 
diff --git a/include/configs/sama5d3_xplained.h b/include/configs/sama5d3_xplained.h
index 23ffab226b1a..eb8f15f310dd 100644
--- a/include/configs/sama5d3_xplained.h
+++ b/include/configs/sama5d3_xplained.h
@@ -49,7 +49,6 @@
 #endif
 
 /* SPL */
-#define CONFIG_SPL_BSS_START_ADDR	0x20000000
 #define CONFIG_SYS_SPL_MALLOC_START	0x20080000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	0x80000
 
diff --git a/include/configs/sama5d3xek.h b/include/configs/sama5d3xek.h
index e293002f39d2..fe3adece8108 100644
--- a/include/configs/sama5d3xek.h
+++ b/include/configs/sama5d3xek.h
@@ -61,7 +61,6 @@
 #endif
 
 /* SPL */
-#define CONFIG_SPL_BSS_START_ADDR	0x20000000
 #define CONFIG_SYS_SPL_MALLOC_START	0x20080000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	0x80000
 
diff --git a/include/configs/sama5d4_xplained.h b/include/configs/sama5d4_xplained.h
index 825925c114ab..c589b07af48c 100644
--- a/include/configs/sama5d4_xplained.h
+++ b/include/configs/sama5d4_xplained.h
@@ -26,7 +26,6 @@
 #endif
 
 /* SPL */
-#define CONFIG_SPL_BSS_START_ADDR	0x20000000
 #define CONFIG_SYS_SPL_MALLOC_START	0x20080000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	0x80000
 
diff --git a/include/configs/sama5d4ek.h b/include/configs/sama5d4ek.h
index d2466da6fcd8..d5cfd2115d1f 100644
--- a/include/configs/sama5d4ek.h
+++ b/include/configs/sama5d4ek.h
@@ -26,7 +26,6 @@
 #endif
 
 /* SPL */
-#define CONFIG_SPL_BSS_START_ADDR	0x20000000
 #define CONFIG_SYS_SPL_MALLOC_START	0x20080000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	0x80000
 
diff --git a/include/configs/siemens-am33x-common.h b/include/configs/siemens-am33x-common.h
index 8a81ae40819f..4d2e927f4f00 100644
--- a/include/configs/siemens-am33x-common.h
+++ b/include/configs/siemens-am33x-common.h
@@ -52,8 +52,6 @@
 
 /* Defines for SPL */
 
-#define CONFIG_SPL_BSS_START_ADDR	0x80000000
-
 #define CONFIG_SYS_NAND_ECCPOS		{ 2, 3, 4, 5, 6, 7, 8, 9, \
 					 10, 11, 12, 13, 14, 15, 16, 17, \
 					 18, 19, 20, 21, 22, 23, 24, 25, \
diff --git a/include/configs/sifive-unleashed.h b/include/configs/sifive-unleashed.h
index 58d70922e4e7..48a695532c98 100644
--- a/include/configs/sifive-unleashed.h
+++ b/include/configs/sifive-unleashed.h
@@ -13,7 +13,6 @@
 
 #ifdef CONFIG_SPL
 
-#define CONFIG_SPL_BSS_START_ADDR	0x85000000
 #define CONFIG_SYS_SPL_MALLOC_START	(CONFIG_SPL_BSS_START_ADDR + \
 					 CONFIG_SPL_BSS_MAX_SIZE)
 #define CONFIG_SYS_SPL_MALLOC_SIZE	0x00100000
diff --git a/include/configs/sifive-unmatched.h b/include/configs/sifive-unmatched.h
index a88debddca2f..4ad9c058b046 100644
--- a/include/configs/sifive-unmatched.h
+++ b/include/configs/sifive-unmatched.h
@@ -13,7 +13,6 @@
 
 #ifdef CONFIG_SPL
 
-#define CONFIG_SPL_BSS_START_ADDR	0x85000000
 #define CONFIG_SYS_SPL_MALLOC_START	(CONFIG_SPL_BSS_START_ADDR + \
 					 CONFIG_SPL_BSS_MAX_SIZE)
 #define CONFIG_SYS_SPL_MALLOC_SIZE	0x00100000
diff --git a/include/configs/smartweb.h b/include/configs/smartweb.h
index d84a2c262efa..1e5087444c5e 100644
--- a/include/configs/smartweb.h
+++ b/include/configs/smartweb.h
@@ -114,7 +114,6 @@
 
 /* Defines for SPL */
 
-#define CONFIG_SPL_BSS_START_ADDR	CONFIG_SYS_SDRAM_BASE
 #define CONFIG_SYS_SPL_MALLOC_START     (CONFIG_SPL_BSS_START_ADDR + \
 					CONFIG_SPL_BSS_MAX_SIZE)
 #define CONFIG_SYS_SPL_MALLOC_SIZE      CONFIG_SYS_MALLOC_LEN
diff --git a/include/configs/sniper.h b/include/configs/sniper.h
index 923da0ef99f9..9f17cd6f1310 100644
--- a/include/configs/sniper.h
+++ b/include/configs/sniper.h
@@ -48,7 +48,6 @@
  * SPL
  */
 
-#define CONFIG_SPL_BSS_START_ADDR	0x80000000
 #define CONFIG_SYS_SPL_MALLOC_START	0x80208000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	(1024 * 1024)
 
diff --git a/include/configs/socfpga_soc64_common.h b/include/configs/socfpga_soc64_common.h
index b73ce9176097..a79423740b6e 100644
--- a/include/configs/socfpga_soc64_common.h
+++ b/include/configs/socfpga_soc64_common.h
@@ -144,8 +144,6 @@ unsigned int cm_get_l4_sys_free_clk_hz(void);
  *
  */
 #define CONFIG_SPL_TARGET		"spl/u-boot-spl-dtb.hex"
-#define CONFIG_SPL_BSS_START_ADDR	(PHYS_SDRAM_1 + PHYS_SDRAM_1_SIZE \
-					- CONFIG_SPL_BSS_MAX_SIZE)
 #define CONFIG_SYS_SPL_MALLOC_SIZE	(CONFIG_SYS_MALLOC_LEN)
 #define CONFIG_SYS_SPL_MALLOC_START	(CONFIG_SPL_BSS_START_ADDR \
 					- CONFIG_SYS_SPL_MALLOC_SIZE)
diff --git a/include/configs/sunxi-common.h b/include/configs/sunxi-common.h
index 3431366bcda3..5b543fd2db1c 100644
--- a/include/configs/sunxi-common.h
+++ b/include/configs/sunxi-common.h
@@ -49,16 +49,13 @@
 #ifdef CONFIG_MACH_SUN9I
 #define SDRAM_OFFSET(x) 0x2##x
 #define CONFIG_SYS_SDRAM_BASE		0x20000000
-#define CONFIG_SPL_BSS_START_ADDR	0x2ff80000
 #elif defined(CONFIG_MACH_SUNIV)
 #define SDRAM_OFFSET(x) 0x8##x
 #define CONFIG_SYS_SDRAM_BASE		0x80000000
-#define CONFIG_SPL_BSS_START_ADDR	0x81f80000
 #else
 #define SDRAM_OFFSET(x) 0x4##x
 #define CONFIG_SYS_SDRAM_BASE		0x40000000
 /* V3s do not have enough memory to place code at 0x4a000000 */
-#define CONFIG_SPL_BSS_START_ADDR	0x4ff80000
 #endif
 
 /*
diff --git a/include/configs/taurus.h b/include/configs/taurus.h
index d7dba72db4c2..ef856f07fdc7 100644
--- a/include/configs/taurus.h
+++ b/include/configs/taurus.h
@@ -146,8 +146,6 @@
 					CONFIG_SYS_MALLOC_LEN)
 #define CONFIG_SYS_SPL_MALLOC_SIZE      CONFIG_SYS_MALLOC_LEN
 
-#define CONFIG_SPL_BSS_START_ADDR	CONFIG_SPL_MAX_SIZE
-
 #define CONFIG_SYS_NAND_ENABLE_PIN_SPL	(2*32 + 14)
 #define CONFIG_SYS_NAND_U_BOOT_SIZE	SZ_512K
 #define	CONFIG_SYS_NAND_U_BOOT_START	CONFIG_SYS_TEXT_BASE
diff --git a/include/configs/theadorable.h b/include/configs/theadorable.h
index e5e21ef3bbc9..c81e89eed8b2 100644
--- a/include/configs/theadorable.h
+++ b/include/configs/theadorable.h
@@ -74,8 +74,6 @@
 /* SPL */
 /* Defines for SPL */
 
-#define CONFIG_SPL_BSS_START_ADDR	(0x40000000 + (128 << 10))
-
 /* Enable DDR support in SPL (DDR3 training from Marvell bin_hdr) */
 #define CONFIG_SYS_SDRAM_SIZE		SZ_2G
 
diff --git a/include/configs/ti814x_evm.h b/include/configs/ti814x_evm.h
index 9c1f5ea7c8d3..777e78859bc6 100644
--- a/include/configs/ti814x_evm.h
+++ b/include/configs/ti814x_evm.h
@@ -86,8 +86,6 @@
 
 /* Defines for SPL */
 
-#define CONFIG_SPL_BSS_START_ADDR	0x80000000
-
 #define CONFIG_SYS_SPI_U_BOOT_SIZE	0x40000
 
 /*
diff --git a/include/configs/ti_armv7_common.h b/include/configs/ti_armv7_common.h
index 316a21524f78..7a19fc4b58af 100644
--- a/include/configs/ti_armv7_common.h
+++ b/include/configs/ti_armv7_common.h
@@ -113,9 +113,6 @@
  * of the BSS area.  We suggest that the stack be placed at 32MiB after the
  * start of DRAM to allow room for all of the above (handled in Kconfig).
  */
-#ifndef CONFIG_SPL_BSS_START_ADDR
-#define CONFIG_SPL_BSS_START_ADDR	0x80a00000
-#endif
 #ifndef CONFIG_SYS_SPL_MALLOC_START
 #define CONFIG_SYS_SPL_MALLOC_START	(CONFIG_SPL_BSS_START_ADDR + \
 					 CONFIG_SPL_BSS_MAX_SIZE)
diff --git a/include/configs/ti_armv7_keystone2.h b/include/configs/ti_armv7_keystone2.h
index 1cc593fdea29..4a6d9bfddd1f 100644
--- a/include/configs/ti_armv7_keystone2.h
+++ b/include/configs/ti_armv7_keystone2.h
@@ -25,8 +25,6 @@
 #endif
 
 /* SPL SPI Loader Configuration */
-#define CONFIG_SPL_BSS_START_ADDR	(CONFIG_ISW_ENTRY_ADDR + \
-					CONFIG_SPL_MAX_SIZE)
 #define CONFIG_SYS_SPL_MALLOC_START	(CONFIG_SPL_BSS_START_ADDR + \
 					CONFIG_SPL_BSS_MAX_SIZE)
 #define CONFIG_SYS_SPL_MALLOC_SIZE	(32 * 1024)
diff --git a/include/configs/turris_omnia.h b/include/configs/turris_omnia.h
index 4dc27a31a4e5..4bbc992c9f83 100644
--- a/include/configs/turris_omnia.h
+++ b/include/configs/turris_omnia.h
@@ -29,8 +29,6 @@
 /* Defines for SPL */
 #define CONFIG_SPL_SIZE			(140 << 10)
 
-#define CONFIG_SPL_BSS_START_ADDR	(0x40000000 + CONFIG_SPL_SIZE)
-
 #ifdef CONFIG_MVEBU_SPL_BOOT_DEVICE_MMC
 /* SPL related MMC defines */
 # ifdef CONFIG_SPL_BUILD
diff --git a/include/configs/verdin-imx8mm.h b/include/configs/verdin-imx8mm.h
index de796917820f..4fc7617c776a 100644
--- a/include/configs/verdin-imx8mm.h
+++ b/include/configs/verdin-imx8mm.h
@@ -16,7 +16,6 @@
 #define CONFIG_SYS_BOOTM_LEN           SZ_64M
 
 #ifdef CONFIG_SPL_BUILD
-#define CONFIG_SPL_BSS_START_ADDR	0x910000
 #define CONFIG_SYS_SPL_MALLOC_START	0x42200000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_512K	/* 512 KB */
 
diff --git a/include/configs/verdin-imx8mp.h b/include/configs/verdin-imx8mp.h
index e6eb986466cb..47bb53249435 100644
--- a/include/configs/verdin-imx8mp.h
+++ b/include/configs/verdin-imx8mp.h
@@ -15,7 +15,6 @@
 
 #ifdef CONFIG_SPL_BUILD
 /*#define CONFIG_ENABLE_DDR_TRAINING_DEBUG*/
-#define CONFIG_SPL_BSS_START_ADDR	0x0098fc00
 #define CONFIG_SYS_SPL_MALLOC_START	0x42200000
 #define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_512K
 
diff --git a/include/configs/vocore2.h b/include/configs/vocore2.h
index 5a215f14fdb0..6a7a0832c953 100644
--- a/include/configs/vocore2.h
+++ b/include/configs/vocore2.h
@@ -17,7 +17,6 @@
 /* SPL */
 
 #define CONFIG_SYS_UBOOT_START		CONFIG_SYS_TEXT_BASE
-#define CONFIG_SPL_BSS_START_ADDR	0x80010000
 
 /* Dummy value */
 #define CONFIG_SYS_UBOOT_BASE		0
diff --git a/include/configs/x530.h b/include/configs/x530.h
index 8b690cd9bf40..e66d8af802a0 100644
--- a/include/configs/x530.h
+++ b/include/configs/x530.h
@@ -69,6 +69,4 @@
 /* Defines for SPL */
 #define CONFIG_SPL_SIZE			(140 << 10)
 
-#define CONFIG_SPL_BSS_START_ADDR	(0x40000000 + CONFIG_SPL_SIZE)
-
 #endif /* _CONFIG_X530_H */
diff --git a/include/configs/xilinx_zynqmp.h b/include/configs/xilinx_zynqmp.h
index 9645f9cacbb4..005d97275507 100644
--- a/include/configs/xilinx_zynqmp.h
+++ b/include/configs/xilinx_zynqmp.h
@@ -199,9 +199,6 @@
 	"dfu_bufsiz=0x1000\0"
 #endif
 
-/* Just random location in OCM */
-#define CONFIG_SPL_BSS_START_ADDR	0x0
-
 #if defined(CONFIG_SPL_SPI_FLASH_SUPPORT)
 # define CONFIG_SYS_SPI_KERNEL_OFFS	0x80000
 # define CONFIG_SYS_SPI_ARGS_OFFS	0xa0000
diff --git a/include/configs/zynq-common.h b/include/configs/zynq-common.h
index a0e276bcc417..d29d423e116d 100644
--- a/include/configs/zynq-common.h
+++ b/include/configs/zynq-common.h
@@ -238,7 +238,4 @@
  * Set it up as limit for now.
  */
 
-/* BSS setup */
-#define CONFIG_SPL_BSS_START_ADDR	0x100000
-
 #endif /* __CONFIG_ZYNQ_COMMON_H */
diff --git a/include/configs/zynq_cse.h b/include/configs/zynq_cse.h
index ff9d6d15dc41..cb982c2e74f6 100644
--- a/include/configs/zynq_cse.h
+++ b/include/configs/zynq_cse.h
@@ -18,7 +18,5 @@
 #undef CONFIG_SYS_INIT_RAM_SIZE
 #define CONFIG_SYS_INIT_RAM_ADDR	0xFFFDE000
 #define CONFIG_SYS_INIT_RAM_SIZE	0x1000
-#undef CONFIG_SPL_BSS_START_ADDR
-#define CONFIG_SPL_BSS_START_ADDR	0x20000
 
 #endif /* __CONFIG_ZYNQ_CSE_H */
-- 
2.25.1


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH 07/20] Convert CONFIG_SYS_SPL_MALLOC_SIZE et al to Kconfig
  2022-05-29 16:55 [PATCH 01/20] Convert CONFIG_SPL_STACK to Kconfig Tom Rini
                   ` (4 preceding siblings ...)
  2022-05-29 16:55 ` [PATCH 06/20] Convert CONFIG_SPL_BSS_START_ADDR " Tom Rini
@ 2022-05-29 16:55 ` Tom Rini
  2022-05-29 16:55 ` [PATCH 08/20] Remove CONFIG_SYS_SPL_LEN largely Tom Rini
                   ` (14 subsequent siblings)
  20 siblings, 0 replies; 27+ messages in thread
From: Tom Rini @ 2022-05-29 16:55 UTC (permalink / raw)
  To: u-boot

This converts the following to Kconfig:
   CONFIG_SYS_SPL_MALLOC_SIZE
   CONFIG_SYS_SPL_MALLOC_START

We introduce a default value here as well, and CONFIG_SYS_SPL_MALLOC to
control if we have a malloc pool or not.

Signed-off-by: Tom Rini <trini@konsulko.com>
---
 README                                          |  5 +----
 common/spl/Kconfig                              | 17 +++++++++++++++++
 common/spl/spl.c                                |  6 +++---
 configs/am335x_baltos_defconfig                 |  2 ++
 configs/am335x_boneblack_vboot_defconfig        |  2 ++
 configs/am335x_evm_defconfig                    |  2 ++
 configs/am335x_evm_spiboot_defconfig            |  2 ++
 configs/am335x_guardian_defconfig               |  2 ++
 configs/am335x_hs_evm_defconfig                 |  2 ++
 configs/am335x_hs_evm_uart_defconfig            |  2 ++
 configs/am335x_igep003x_defconfig               |  2 ++
 configs/am335x_pdu001_defconfig                 |  2 ++
 configs/am335x_shc_defconfig                    |  2 ++
 configs/am335x_shc_ict_defconfig                |  2 ++
 configs/am335x_shc_netboot_defconfig            |  2 ++
 configs/am335x_shc_sdboot_defconfig             |  2 ++
 configs/am335x_sl50_defconfig                   |  2 ++
 configs/am3517_evm_defconfig                    |  2 ++
 configs/am43xx_evm_defconfig                    |  2 ++
 configs/am43xx_evm_rtconly_defconfig            |  2 ++
 configs/am43xx_evm_usbhost_boot_defconfig       |  2 ++
 configs/am43xx_hs_evm_defconfig                 |  2 ++
 configs/am57xx_evm_defconfig                    |  2 ++
 configs/am57xx_hs_evm_defconfig                 |  2 ++
 configs/am57xx_hs_evm_usb_defconfig             |  2 ++
 configs/am64x_evm_a53_defconfig                 |  2 ++
 configs/am64x_evm_r5_defconfig                  |  4 ++++
 configs/am65x_evm_a53_defconfig                 |  2 ++
 configs/am65x_evm_r5_defconfig                  |  4 ++++
 configs/am65x_evm_r5_usbdfu_defconfig           |  4 ++++
 configs/am65x_evm_r5_usbmsc_defconfig           |  4 ++++
 configs/am65x_hs_evm_a53_defconfig              |  2 ++
 configs/am65x_hs_evm_r5_defconfig               |  4 ++++
 configs/apalis-tk1_defconfig                    |  4 ++++
 configs/apalis_imx6_defconfig                   |  1 +
 configs/apalis_t30_defconfig                    |  4 ++++
 ...azedev_cc_v1_0_ultrazedev_som_v1_0_defconfig |  4 ++++
 configs/axm_defconfig                           |  4 ++++
 configs/beaver_defconfig                        |  4 ++++
 configs/bitmain_antminer_s9_defconfig           |  2 ++
 configs/brppt1_mmc_defconfig                    |  2 ++
 configs/brppt1_nand_defconfig                   |  2 ++
 configs/brppt1_spi_defconfig                    |  2 ++
 configs/brppt2_defconfig                        |  1 +
 configs/brsmarc1_defconfig                      |  2 ++
 configs/brxre1_defconfig                        |  2 ++
 configs/cardhu_defconfig                        |  4 ++++
 configs/cei-tk1-som_defconfig                   |  4 ++++
 configs/cgtqmx8_defconfig                       |  4 ++++
 configs/chiliboard_defconfig                    |  2 ++
 configs/cl-som-imx7_defconfig                   |  1 +
 configs/cm_fx6_defconfig                        |  1 +
 configs/cm_t335_defconfig                       |  2 ++
 configs/cm_t43_defconfig                        |  2 ++
 configs/colibri_imx6_defconfig                  |  1 +
 configs/colibri_t20_defconfig                   |  4 ++++
 configs/colibri_t30_defconfig                   |  4 ++++
 configs/da850evm_defconfig                      |  4 ++++
 configs/da850evm_nand_defconfig                 |  4 ++++
 configs/dalmore_defconfig                       |  4 ++++
 configs/deneb_defconfig                         |  4 ++++
 configs/devkit8000_defconfig                    |  3 +++
 configs/dh_imx6_defconfig                       |  1 +
 configs/display5_defconfig                      |  1 +
 configs/display5_factory_defconfig              |  1 +
 configs/dra7xx_evm_defconfig                    |  2 ++
 configs/dra7xx_hs_evm_defconfig                 |  2 ++
 configs/dra7xx_hs_evm_usb_defconfig             |  2 ++
 configs/draco_defconfig                         |  3 +++
 configs/edminiv2_defconfig                      |  4 ++++
 configs/etamin_defconfig                        |  3 +++
 configs/gardena-smart-gateway-at91sam_defconfig |  2 ++
 configs/ge_b1x5v2_defconfig                     |  1 +
 configs/giedi_defconfig                         |  4 ++++
 configs/gwventana_emmc_defconfig                |  1 +
 configs/gwventana_gw5904_defconfig              |  1 +
 configs/gwventana_nand_defconfig                |  1 +
 configs/harmony_defconfig                       |  4 ++++
 configs/igep00x0_defconfig                      |  2 ++
 configs/imx6dl_icore_nand_defconfig             |  1 +
 configs/imx6dl_mamoj_defconfig                  |  1 +
 configs/imx6q_bosch_acc_defconfig               |  1 +
 configs/imx6q_icore_nand_defconfig              |  1 +
 configs/imx6q_logic_defconfig                   |  1 +
 configs/imx6qdl_icore_mipi_defconfig            |  1 +
 configs/imx6qdl_icore_mmc_defconfig             |  1 +
 configs/imx6qdl_icore_nand_defconfig            |  1 +
 configs/imx6qdl_icore_rqs_defconfig             |  1 +
 configs/imx6ul_geam_mmc_defconfig               |  1 +
 configs/imx6ul_geam_nand_defconfig              |  1 +
 configs/imx6ul_isiot_emmc_defconfig             |  1 +
 configs/imx6ul_isiot_nand_defconfig             |  1 +
 configs/imx7_cm_defconfig                       |  1 +
 configs/imx8mm-cl-iot-gate-optee_defconfig      |  4 ++++
 configs/imx8mm-cl-iot-gate_defconfig            |  4 ++++
 configs/imx8mm-icore-mx8mm-ctouch2_defconfig    |  4 ++++
 configs/imx8mm-icore-mx8mm-edimm2.2_defconfig   |  4 ++++
 configs/imx8mm-mx8menlo_defconfig               |  4 ++++
 configs/imx8mm_beacon_defconfig                 |  4 ++++
 configs/imx8mm_data_modul_edm_sbc_defconfig     |  4 ++++
 configs/imx8mm_evk_defconfig                    |  4 ++++
 configs/imx8mm_venice_defconfig                 |  3 +++
 configs/imx8mn_beacon_2g_defconfig              |  4 ++++
 configs/imx8mn_beacon_defconfig                 |  4 ++++
 configs/imx8mn_bsh_smm_s2_defconfig             |  4 ++++
 configs/imx8mn_bsh_smm_s2pro_defconfig          |  4 ++++
 configs/imx8mn_ddr4_evk_defconfig               |  4 ++++
 configs/imx8mn_evk_defconfig                    |  4 ++++
 configs/imx8mn_var_som_defconfig                |  4 ++++
 configs/imx8mn_venice_defconfig                 |  4 ++++
 configs/imx8mp_dhcom_pdk2_defconfig             |  4 ++++
 configs/imx8mp_evk_defconfig                    |  4 ++++
 configs/imx8mp_rsb3720a1_4G_defconfig           |  4 ++++
 configs/imx8mp_rsb3720a1_6G_defconfig           |  4 ++++
 configs/imx8mp_venice_defconfig                 |  4 ++++
 configs/imx8mq_cm_defconfig                     |  4 ++++
 configs/imx8mq_evk_defconfig                    |  4 ++++
 configs/imx8mq_phanbell_defconfig               |  4 ++++
 configs/imx8qm_mek_defconfig                    |  4 ++++
 configs/imx8qxp_mek_defconfig                   |  4 ++++
 configs/imx8ulp_evk_defconfig                   |  4 ++++
 configs/iot2050_defconfig                       |  2 ++
 configs/j7200_evm_a72_defconfig                 |  2 ++
 configs/j7200_evm_r5_defconfig                  |  4 ++++
 configs/j721e_evm_a72_defconfig                 |  2 ++
 configs/j721e_evm_r5_defconfig                  |  4 ++++
 configs/j721e_hs_evm_a72_defconfig              |  2 ++
 configs/j721e_hs_evm_r5_defconfig               |  4 ++++
 configs/j721s2_evm_a72_defconfig                |  2 ++
 configs/j721s2_evm_r5_defconfig                 |  4 ++++
 configs/jetson-tk1_defconfig                    |  4 ++++
 configs/k2e_evm_defconfig                       |  2 ++
 configs/k2g_evm_defconfig                       |  2 ++
 configs/k2hk_evm_defconfig                      |  2 ++
 configs/k2l_evm_defconfig                       |  2 ++
 configs/kontron-sl-mx6ul_defconfig              |  1 +
 configs/kontron-sl-mx8mm_defconfig              |  4 ++++
 configs/kontron_pitx_imx8m_defconfig            |  4 ++++
 configs/kontron_sl28_defconfig                  |  1 +
 configs/kp_imx6q_tpc_defconfig                  |  1 +
 configs/liteboard_defconfig                     |  1 +
 configs/ls1021aiot_sdcard_defconfig             |  3 +++
 configs/ls1021aqds_nand_defconfig               |  3 +++
 configs/ls1021aqds_sdcard_ifc_defconfig         |  3 +++
 configs/ls1021aqds_sdcard_qspi_defconfig        |  3 +++
 configs/ls1021atsn_sdcard_defconfig             |  3 +++
 .../ls1021atwr_sdcard_ifc_SECURE_BOOT_defconfig |  3 +++
 configs/ls1021atwr_sdcard_ifc_defconfig         |  3 +++
 configs/ls1021atwr_sdcard_qspi_defconfig        |  3 +++
 configs/ls1043aqds_nand_defconfig               |  3 +++
 configs/ls1043aqds_sdcard_ifc_defconfig         |  1 +
 configs/ls1043aqds_sdcard_qspi_defconfig        |  1 +
 configs/ls1043ardb_nand_SECURE_BOOT_defconfig   |  3 +++
 configs/ls1043ardb_nand_defconfig               |  3 +++
 configs/ls1043ardb_sdcard_SECURE_BOOT_defconfig |  1 +
 configs/ls1043ardb_sdcard_defconfig             |  1 +
 configs/ls1046aqds_nand_defconfig               |  1 +
 configs/ls1046aqds_sdcard_ifc_defconfig         |  1 +
 configs/ls1046aqds_sdcard_qspi_defconfig        |  1 +
 configs/ls1046ardb_emmc_defconfig               |  1 +
 configs/ls1046ardb_qspi_spl_defconfig           |  1 +
 configs/ls1046ardb_sdcard_SECURE_BOOT_defconfig |  1 +
 configs/ls1046ardb_sdcard_defconfig             |  1 +
 configs/ls1088aqds_sdcard_ifc_defconfig         |  1 +
 configs/ls1088aqds_sdcard_qspi_defconfig        |  1 +
 ...ls1088ardb_sdcard_qspi_SECURE_BOOT_defconfig |  1 +
 configs/ls1088ardb_sdcard_qspi_defconfig        |  1 +
 configs/ls2080aqds_nand_defconfig               |  1 +
 configs/ls2080aqds_sdcard_defconfig             |  1 +
 configs/ls2080ardb_nand_defconfig               |  1 +
 configs/mccmon6_nor_defconfig                   |  1 +
 configs/mccmon6_sd_defconfig                    |  1 +
 configs/medcom-wide_defconfig                   |  4 ++++
 configs/mx6cuboxi_defconfig                     |  1 +
 configs/mx6memcal_defconfig                     |  1 +
 configs/mx6sabreauto_defconfig                  |  1 +
 configs/mx6sabresd_defconfig                    |  1 +
 configs/mx6slevk_spl_defconfig                  |  1 +
 configs/mx6ul_14x14_evk_defconfig               |  1 +
 configs/mx6ul_9x9_evk_defconfig                 |  1 +
 configs/myir_mys_6ulx_defconfig                 |  1 +
 configs/novena_defconfig                        |  1 +
 configs/nyan-big_defconfig                      |  4 ++++
 configs/omap35_logic_defconfig                  |  2 ++
 configs/omap35_logic_somlv_defconfig            |  2 ++
 configs/omap3_beagle_defconfig                  |  2 ++
 configs/omap3_evm_defconfig                     |  2 ++
 configs/omap3_logic_defconfig                   |  2 ++
 configs/omap3_logic_somlv_defconfig             |  2 ++
 configs/omap4_panda_defconfig                   |  2 ++
 configs/omap4_sdp4430_defconfig                 |  2 ++
 configs/omap5_uevm_defconfig                    |  2 ++
 configs/omapl138_lcdk_defconfig                 |  4 ++++
 configs/openpiton_riscv64_spl_defconfig         |  1 +
 configs/opos6uldev_defconfig                    |  1 +
 configs/paz00_defconfig                         |  4 ++++
 configs/pcm058_defconfig                        |  1 +
 configs/phycore-am335x-r2-regor_defconfig       |  2 ++
 configs/phycore-am335x-r2-wega_defconfig        |  2 ++
 configs/phycore-imx8mm_defconfig                |  4 ++++
 configs/phycore-imx8mp_defconfig                |  4 ++++
 configs/phycore_pcl063_defconfig                |  1 +
 configs/phycore_pcl063_ull_defconfig            |  1 +
 configs/pico-dwarf-imx6ul_defconfig             |  1 +
 configs/pico-dwarf-imx7d_defconfig              |  1 +
 configs/pico-hobbit-imx6ul_defconfig            |  1 +
 configs/pico-hobbit-imx7d_defconfig             |  1 +
 configs/pico-imx6_defconfig                     |  1 +
 configs/pico-imx6ul_defconfig                   |  1 +
 configs/pico-imx7d_bl33_defconfig               |  1 +
 configs/pico-imx7d_defconfig                    |  1 +
 configs/pico-imx8mq_defconfig                   |  4 ++++
 configs/pico-nymph-imx7d_defconfig              |  1 +
 configs/pico-pi-imx6ul_defconfig                |  1 +
 configs/pico-pi-imx7d_defconfig                 |  1 +
 configs/plutux_defconfig                        |  4 ++++
 configs/pxm2_defconfig                          |  3 +++
 configs/qemu-riscv32_spl_defconfig              |  1 +
 configs/qemu-riscv64_spl_defconfig              |  1 +
 configs/rastaban_defconfig                      |  3 +++
 configs/riotboard_defconfig                     |  1 +
 configs/rut_defconfig                           |  3 +++
 configs/sama5d27_giantboard_defconfig           |  2 ++
 configs/sama5d27_som1_ek_mmc1_defconfig         |  2 ++
 configs/sama5d27_som1_ek_mmc_defconfig          |  2 ++
 configs/sama5d27_som1_ek_qspiflash_defconfig    |  2 ++
 configs/sama5d27_wlsom1_ek_mmc_defconfig        |  2 ++
 configs/sama5d27_wlsom1_ek_qspiflash_defconfig  |  2 ++
 configs/sama5d2_icp_mmc_defconfig               |  2 ++
 configs/sama5d2_xplained_emmc_defconfig         |  2 ++
 configs/sama5d2_xplained_mmc_defconfig          |  2 ++
 configs/sama5d2_xplained_qspiflash_defconfig    |  2 ++
 configs/sama5d2_xplained_spiflash_defconfig     |  2 ++
 configs/sama5d3_xplained_mmc_defconfig          |  2 ++
 configs/sama5d3_xplained_nandflash_defconfig    |  2 ++
 configs/sama5d3xek_mmc_defconfig                |  2 ++
 configs/sama5d3xek_nandflash_defconfig          |  2 ++
 configs/sama5d3xek_spiflash_defconfig           |  2 ++
 configs/sama5d4_xplained_mmc_defconfig          |  2 ++
 configs/sama5d4_xplained_nandflash_defconfig    |  2 ++
 configs/sama5d4_xplained_spiflash_defconfig     |  2 ++
 configs/sama5d4ek_mmc_defconfig                 |  2 ++
 configs/sama5d4ek_nandflash_defconfig           |  2 ++
 configs/sama5d4ek_spiflash_defconfig            |  2 ++
 configs/seaboard_defconfig                      |  4 ++++
 configs/seeed_npi_imx6ull_defconfig             |  1 +
 configs/sifive_unleashed_defconfig              |  1 +
 configs/sifive_unmatched_defconfig              |  1 +
 configs/smartweb_defconfig                      |  2 ++
 configs/sniper_defconfig                        |  3 +++
 configs/socfpga_agilex_atf_defconfig            |  4 ++++
 configs/socfpga_agilex_defconfig                |  4 ++++
 configs/socfpga_agilex_vab_defconfig            |  4 ++++
 configs/socfpga_arria10_defconfig               |  4 ++++
 configs/socfpga_n5x_atf_defconfig               |  4 ++++
 configs/socfpga_n5x_defconfig                   |  4 ++++
 configs/socfpga_n5x_vab_defconfig               |  4 ++++
 configs/socfpga_stratix10_atf_defconfig         |  4 ++++
 configs/socfpga_stratix10_defconfig             |  4 ++++
 .../stm32mp15-icore-stm32mp1-ctouch2_defconfig  |  4 ++++
 .../stm32mp15-icore-stm32mp1-edimm2.2_defconfig |  4 ++++
 ...15-microgea-stm32mp1-microdev2-of7_defconfig |  4 ++++
 ...32mp15-microgea-stm32mp1-microdev2_defconfig |  4 ++++
 configs/stm32mp15_basic_defconfig               |  4 ++++
 configs/stm32mp15_dhcom_basic_defconfig         |  4 ++++
 configs/stm32mp15_dhcor_basic_defconfig         |  4 ++++
 configs/syzygy_hub_defconfig                    |  2 ++
 configs/taurus_defconfig                        |  4 ++++
 configs/tec-ng_defconfig                        |  4 ++++
 configs/tec_defconfig                           |  4 ++++
 configs/thuban_defconfig                        |  3 +++
 configs/ti816x_evm_defconfig                    |  2 ++
 configs/topic_miami_defconfig                   |  2 ++
 configs/topic_miamilite_defconfig               |  2 ++
 configs/topic_miamiplus_defconfig               |  2 ++
 configs/trimslice_defconfig                     |  4 ++++
 configs/udoo_defconfig                          |  1 +
 configs/udoo_neo_defconfig                      |  1 +
 configs/variscite_dart6ul_defconfig             |  1 +
 configs/venice2_defconfig                       |  4 ++++
 configs/ventana_defconfig                       |  4 ++++
 configs/verdin-imx8mm_defconfig                 |  4 ++++
 configs/verdin-imx8mp_defconfig                 |  4 ++++
 configs/vining_2000_defconfig                   |  1 +
 configs/wandboard_defconfig                     |  1 +
 configs/xilinx_zynq_virt_defconfig              |  2 ++
 configs/xilinx_zynqmp_mini_emmc0_defconfig      |  4 ++++
 configs/xilinx_zynqmp_mini_emmc1_defconfig      |  4 ++++
 configs/xilinx_zynqmp_mini_qspi_defconfig       |  4 ++++
 configs/xilinx_zynqmp_virt_defconfig            |  4 ++++
 configs/zynq_cse_nand_defconfig                 |  4 ++++
 configs/zynq_cse_nor_defconfig                  |  4 ++++
 configs/zynq_cse_qspi_defconfig                 |  4 ++++
 include/configs/am64x_evm.h                     |  7 -------
 include/configs/am65x_evm.h                     |  8 --------
 include/configs/at91sam9m10g45ek.h              |  4 ----
 include/configs/at91sam9n12ek.h                 |  3 ---
 include/configs/at91sam9x5ek.h                  |  3 ---
 include/configs/bur_am335x_common.h             |  3 ---
 include/configs/capricorn-common.h              |  2 --
 include/configs/cgtqmx8.h                       |  2 --
 include/configs/da850evm.h                      |  3 ---
 include/configs/devkit8000.h                    |  3 ---
 include/configs/edminiv2.h                      |  2 --
 include/configs/gardena-smart-gateway-at91sam.h |  3 ---
 include/configs/imx6_spl.h                      |  8 --------
 include/configs/imx7_spl.h                      |  3 ---
 include/configs/imx8mm-cl-iot-gate.h            |  3 ---
 include/configs/imx8mm_beacon.h                 |  3 ---
 include/configs/imx8mm_data_modul_edm_sbc.h     |  3 ---
 include/configs/imx8mm_evk.h                    |  3 ---
 include/configs/imx8mm_icore_mx8mm.h            |  3 ---
 include/configs/imx8mm_venice.h                 |  3 ---
 include/configs/imx8mn_beacon.h                 |  3 ---
 include/configs/imx8mn_bsh_smm_s2_common.h      |  5 -----
 include/configs/imx8mn_evk.h                    |  3 ---
 include/configs/imx8mn_var_som.h                |  3 ---
 include/configs/imx8mn_venice.h                 |  3 ---
 include/configs/imx8mp_dhcom_pdk2.h             |  3 ---
 include/configs/imx8mp_evk.h                    |  2 --
 include/configs/imx8mp_rsb3720.h                |  3 ---
 include/configs/imx8mp_venice.h                 |  3 ---
 include/configs/imx8mq_cm.h                     |  2 --
 include/configs/imx8mq_evk.h                    |  2 --
 include/configs/imx8mq_phanbell.h               |  2 --
 include/configs/imx8qm_mek.h                    |  2 --
 include/configs/imx8qxp_mek.h                   |  2 --
 include/configs/imx8ulp_evk.h                   |  3 ---
 include/configs/j721e_evm.h                     |  5 -----
 include/configs/j721s2_evm.h                    |  5 -----
 include/configs/kontron-sl-mx8mm.h              |  2 --
 include/configs/kontron_pitx_imx8m.h            |  2 --
 include/configs/kontron_sl28.h                  |  2 --
 include/configs/ls1021aiot.h                    |  3 ---
 include/configs/ls1021aqds.h                    |  5 -----
 include/configs/ls1021atsn.h                    |  4 ----
 include/configs/ls1021atwr.h                    |  4 ----
 include/configs/ls1043a_common.h                |  6 ------
 include/configs/ls1046a_common.h                | 10 ----------
 include/configs/ls1088a_common.h                |  3 ---
 include/configs/ls2080a_common.h                |  2 --
 include/configs/omapl138_lcdk.h                 |  3 ---
 include/configs/openpiton-riscv64.h             |  4 ----
 include/configs/phycore_imx8mm.h                |  3 ---
 include/configs/phycore_imx8mp.h                |  3 ---
 include/configs/pico-imx8mq.h                   |  2 --
 include/configs/pm9g45.h                        |  4 ----
 include/configs/qemu-riscv.h                    |  7 -------
 include/configs/sama5d27_som1_ek.h              |  2 --
 include/configs/sama5d27_wlsom1_ek.h            |  2 --
 include/configs/sama5d2_icp.h                   |  2 --
 include/configs/sama5d2_xplained.h              |  2 --
 include/configs/sama5d3_xplained.h              |  2 --
 include/configs/sama5d3xek.h                    |  2 --
 include/configs/sama5d4_xplained.h              |  2 --
 include/configs/sama5d4ek.h                     |  2 --
 include/configs/siemens-am33x-common.h          |  2 --
 include/configs/sifive-unleashed.h              |  8 --------
 include/configs/sifive-unmatched.h              |  8 --------
 include/configs/smartweb.h                      |  4 ----
 include/configs/sniper.h                        |  3 ---
 include/configs/socfpga_arria10_socdk.h         |  1 -
 include/configs/socfpga_common.h                |  5 -----
 include/configs/socfpga_soc64_common.h          |  3 ---
 include/configs/stm32mp15_common.h              |  2 --
 include/configs/taurus.h                        |  3 ---
 include/configs/tegra-common.h                  |  1 -
 include/configs/tegra114-common.h               |  1 -
 include/configs/tegra124-common.h               |  1 -
 include/configs/tegra20-common.h                |  1 -
 include/configs/tegra30-common.h                |  1 -
 include/configs/ti814x_evm.h                    |  2 --
 include/configs/ti_armv7_common.h               |  5 -----
 include/configs/ti_armv7_keystone2.h            |  3 ---
 include/configs/verdin-imx8mm.h                 |  3 ---
 include/configs/verdin-imx8mp.h                 |  2 --
 include/configs/xilinx_zynqmp.h                 |  3 ---
 include/configs/zynq-common.h                   |  2 --
 include/system-constants.h                      | 10 ++++++++++
 379 files changed, 737 insertions(+), 279 deletions(-)

diff --git a/README b/README
index f21aae2ecf7c..452e5955023a 100644
--- a/README
+++ b/README
@@ -1635,9 +1635,6 @@ The following options need to be configured:
 		consider that a completely unreadable NAND block is bad,
 		and thus should be skipped silently.
 
-		CONFIG_SYS_SPL_MALLOC_SIZE
-		The size of the malloc pool used in SPL.
-
 		CONFIG_SPL_DISPLAY_PRINT
 		For ARM, enable an optional function to print more information
 		about the running system.
@@ -1782,7 +1779,7 @@ Configuration Settings:
 - CONFIG_SYS_MALLOC_SIMPLE
 		Provides a simple and small malloc() and calloc() for those
 		boards which do not use the full malloc in SPL (which is
-		enabled with CONFIG_SYS_SPL_MALLOC_START).
+		enabled with CONFIG_SYS_SPL_MALLOC).
 
 - CONFIG_SYS_NONCACHED_MEMORY:
 		Size of non-cached memory area. This area of memory will be
diff --git a/common/spl/Kconfig b/common/spl/Kconfig
index adcd7ca19a4b..10d9cdd0c286 100644
--- a/common/spl/Kconfig
+++ b/common/spl/Kconfig
@@ -485,6 +485,23 @@ config SPL_SEPARATE_BSS
 	  location is used. Normally we put the device tree at the end of BSS
 	  but with this option enabled, it goes at _image_binary_end.
 
+config SYS_SPL_MALLOC
+	bool "Enable malloc pool in SPL"
+	depends on SPL_FRAMEWORK
+
+config HAS_CUSTOM_SPL_MALLOC_START
+	bool "For the SPL malloc pool, define a custom starting address"
+	depends on SYS_SPL_MALLOC
+
+config CUSTOM_SYS_SPL_MALLOC_ADDR
+	hex "SPL malloc addr"
+	depends on HAS_CUSTOM_SPL_MALLOC_START
+
+config SYS_SPL_MALLOC_SIZE
+	hex "Size of the SPL malloc pool"
+	depends on SYS_SPL_MALLOC
+	default 0x100000
+
 config SPL_READ_ONLY
 	bool
 	depends on SPL_OF_PLATDATA
diff --git a/common/spl/spl.c b/common/spl/spl.c
index c8c463f80bd3..2a69a7c9324d 100644
--- a/common/spl/spl.c
+++ b/common/spl/spl.c
@@ -19,6 +19,7 @@
 #include <mapmem.h>
 #include <serial.h>
 #include <spl.h>
+#include <system-constants.h>
 #include <asm/global_data.h>
 #include <asm-generic/gpio.h>
 #include <asm/u-boot.h>
@@ -728,9 +729,8 @@ void board_init_r(gd_t *dummy1, ulong dummy2)
 
 	spl_set_bd();
 
-#if defined(CONFIG_SYS_SPL_MALLOC_START)
-	mem_malloc_init(CONFIG_SYS_SPL_MALLOC_START,
-			CONFIG_SYS_SPL_MALLOC_SIZE);
+#if defined(CONFIG_SYS_SPL_MALLOC)
+	mem_malloc_init(SYS_SPL_MALLOC_START, CONFIG_SYS_SPL_MALLOC_SIZE);
 	gd->flags |= GD_FLG_FULL_MALLOC_INIT;
 #endif
 	if (!(gd->flags & GD_FLG_SPL_INIT)) {
diff --git a/configs/am335x_baltos_defconfig b/configs/am335x_baltos_defconfig
index b78316ee172f..0ec440917519 100644
--- a/configs/am335x_baltos_defconfig
+++ b/configs/am335x_baltos_defconfig
@@ -19,6 +19,8 @@ CONFIG_OF_BOARD_SETUP=y
 CONFIG_BOOTCOMMAND="run findfdt; run usbboot;run mmcboot;setenv mmcdev 1; setenv bootpart 1:2; run mmcboot;run nandboot;"
 CONFIG_SYS_CONSOLE_INFO_QUIET=y
 CONFIG_ARCH_MISC_INIT=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x800000
 CONFIG_SPL_FS_EXT4=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MTD_SUPPORT=y
diff --git a/configs/am335x_boneblack_vboot_defconfig b/configs/am335x_boneblack_vboot_defconfig
index 7458e9c3e2c6..67c4144c35f4 100644
--- a/configs/am335x_boneblack_vboot_defconfig
+++ b/configs/am335x_boneblack_vboot_defconfig
@@ -22,6 +22,8 @@ CONFIG_AUTOBOOT_STOP_STR=" "
 CONFIG_BOOTCOMMAND="run findfdt; run init_console; run finduuid; run distro_bootcmd"
 CONFIG_SYS_CONSOLE_INFO_QUIET=y
 CONFIG_ARCH_MISC_INIT=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x800000
 CONFIG_SPL_MUSB_NEW=y
 # CONFIG_SPL_NAND_SUPPORT is not set
 CONFIG_SPL_NET=y
diff --git a/configs/am335x_evm_defconfig b/configs/am335x_evm_defconfig
index 50d528fa5a2f..e1c19c11d311 100644
--- a/configs/am335x_evm_defconfig
+++ b/configs/am335x_evm_defconfig
@@ -20,6 +20,8 @@ CONFIG_BOOTCOMMAND="run findfdt; run init_console; run finduuid; run distro_boot
 CONFIG_LOGLEVEL=3
 CONFIG_SYS_CONSOLE_INFO_QUIET=y
 CONFIG_ARCH_MISC_INIT=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x800000
 CONFIG_SPL_FIT_IMAGE_TINY=y
 CONFIG_SPL_ETH=y
 # CONFIG_SPL_FS_EXT4 is not set
diff --git a/configs/am335x_evm_spiboot_defconfig b/configs/am335x_evm_spiboot_defconfig
index d39941c7d26e..00e80a89dedf 100644
--- a/configs/am335x_evm_spiboot_defconfig
+++ b/configs/am335x_evm_spiboot_defconfig
@@ -21,6 +21,8 @@ CONFIG_BOOTCOMMAND="run findfdt; run init_console; run finduuid; run distro_boot
 CONFIG_LOGLEVEL=3
 CONFIG_SYS_CONSOLE_INFO_QUIET=y
 CONFIG_ARCH_MISC_INIT=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x800000
 CONFIG_SPL_FIT_IMAGE_TINY=y
 # CONFIG_SPL_FS_EXT4 is not set
 CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot.img"
diff --git a/configs/am335x_guardian_defconfig b/configs/am335x_guardian_defconfig
index 33d37db284da..0dc4bb25be28 100644
--- a/configs/am335x_guardian_defconfig
+++ b/configs/am335x_guardian_defconfig
@@ -32,6 +32,8 @@ CONFIG_AUTOBOOT_STOP_STR=" "
 CONFIG_SYS_CONSOLE_INFO_QUIET=y
 CONFIG_ARCH_MISC_INIT=y
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x800000
 # CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR is not set
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_ETH=y
diff --git a/configs/am335x_hs_evm_defconfig b/configs/am335x_hs_evm_defconfig
index 1e7dc8897309..ef0a09877c10 100644
--- a/configs/am335x_hs_evm_defconfig
+++ b/configs/am335x_hs_evm_defconfig
@@ -20,6 +20,8 @@ CONFIG_LOGLEVEL=3
 CONFIG_SYS_CONSOLE_INFO_QUIET=y
 CONFIG_ARCH_MISC_INIT=y
 CONFIG_SPL_MAX_SIZE=0xb0b0
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x800000
 CONFIG_SPL_FIT_IMAGE_TINY=y
 # CONFIG_SPL_ENV_SUPPORT is not set
 # CONFIG_SPL_FS_EXT4 is not set
diff --git a/configs/am335x_hs_evm_uart_defconfig b/configs/am335x_hs_evm_uart_defconfig
index 2c987072f755..d7ea5a31cd1d 100644
--- a/configs/am335x_hs_evm_uart_defconfig
+++ b/configs/am335x_hs_evm_uart_defconfig
@@ -23,6 +23,8 @@ CONFIG_LOGLEVEL=3
 CONFIG_SYS_CONSOLE_INFO_QUIET=y
 CONFIG_ARCH_MISC_INIT=y
 CONFIG_SPL_MAX_SIZE=0x9ab0
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x800000
 CONFIG_SPL_FIT_IMAGE_TINY=y
 # CONFIG_SPL_ENV_SUPPORT is not set
 # CONFIG_SPL_FS_EXT4 is not set
diff --git a/configs/am335x_igep003x_defconfig b/configs/am335x_igep003x_defconfig
index e6bc65976126..f640cc47a8fd 100644
--- a/configs/am335x_igep003x_defconfig
+++ b/configs/am335x_igep003x_defconfig
@@ -19,6 +19,8 @@ CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0x4030ff00
 CONFIG_OF_BOARD_SETUP=y
 CONFIG_BOOTCOMMAND="run findfdt;run mmcboot;run nandboot;run netboot;"
 CONFIG_SYS_CONSOLE_INFO_QUIET=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x800000
 CONFIG_SPL_FS_EXT4=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MTD_SUPPORT=y
diff --git a/configs/am335x_pdu001_defconfig b/configs/am335x_pdu001_defconfig
index ec56a065fa20..9757057b85e7 100644
--- a/configs/am335x_pdu001_defconfig
+++ b/configs/am335x_pdu001_defconfig
@@ -24,6 +24,8 @@ CONFIG_AUTOBOOT_PROMPT="Press SPACE to abort autoboot in %d seconds\n"
 CONFIG_AUTOBOOT_STOP_STR=" "
 CONFIG_BOOTCOMMAND="run eval_boot_device;part uuid mmc ${mmc_boot}:${root_fs_partition} root_fs_partuuid;setenv bootargs console=${console} vt.global_cursor_default=0 root=PARTUUID=${root_fs_partuuid} rootfstype=ext4 rootwait rootdelay=1;fatload mmc ${mmc_boot} ${fdtaddr} ${fdtfile};fatload mmc ${mmc_boot} ${loadaddr} ${bootfile};bootz ${loadaddr} - ${fdtaddr}"
 CONFIG_BOARD_LATE_INIT=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x800000
 # CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR is not set
 CONFIG_SPL_I2C=y
 # CONFIG_SPL_NAND_SUPPORT is not set
diff --git a/configs/am335x_shc_defconfig b/configs/am335x_shc_defconfig
index 66d775f28969..9f5924e1524f 100644
--- a/configs/am335x_shc_defconfig
+++ b/configs/am335x_shc_defconfig
@@ -32,6 +32,8 @@ CONFIG_BOOTCOMMAND="if mmc dev 1; mmc rescan; then run emmc_setup; else echo ERR
 CONFIG_DEFAULT_FDT_FILE="am335x-shc"
 CONFIG_SYS_CONSOLE_INFO_QUIET=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x800000
 CONFIG_SPL_FS_EXT4=y
 CONFIG_SPL_I2C=y
 # CONFIG_SPL_NAND_SUPPORT is not set
diff --git a/configs/am335x_shc_ict_defconfig b/configs/am335x_shc_ict_defconfig
index 9a60c126a67d..7d8a57c18eb3 100644
--- a/configs/am335x_shc_ict_defconfig
+++ b/configs/am335x_shc_ict_defconfig
@@ -30,6 +30,8 @@ CONFIG_BOOTCOMMAND="if mmc dev 0; mmc rescan; then run sd_setup; else echo ERROR
 CONFIG_DEFAULT_FDT_FILE="am335x-shc"
 CONFIG_SYS_CONSOLE_INFO_QUIET=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x800000
 CONFIG_SPL_FS_EXT4=y
 CONFIG_SPL_I2C=y
 # CONFIG_SPL_NAND_SUPPORT is not set
diff --git a/configs/am335x_shc_netboot_defconfig b/configs/am335x_shc_netboot_defconfig
index 354c8786bc3b..98e437e02332 100644
--- a/configs/am335x_shc_netboot_defconfig
+++ b/configs/am335x_shc_netboot_defconfig
@@ -33,6 +33,8 @@ CONFIG_BOOTCOMMAND="run fusecmd; if run netboot; then echo Booting from network;
 CONFIG_DEFAULT_FDT_FILE="am335x-shc"
 CONFIG_SYS_CONSOLE_INFO_QUIET=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x800000
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_FS_EXT4=y
 CONFIG_SPL_I2C=y
diff --git a/configs/am335x_shc_sdboot_defconfig b/configs/am335x_shc_sdboot_defconfig
index a29f9d2312a7..02146321503a 100644
--- a/configs/am335x_shc_sdboot_defconfig
+++ b/configs/am335x_shc_sdboot_defconfig
@@ -33,6 +33,8 @@ CONFIG_BOOTCOMMAND="if mmc dev 0; mmc rescan; then run sd_setup; else echo ERROR
 CONFIG_DEFAULT_FDT_FILE="am335x-shc"
 CONFIG_SYS_CONSOLE_INFO_QUIET=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x800000
 CONFIG_SPL_FS_EXT4=y
 CONFIG_SPL_I2C=y
 # CONFIG_SPL_NAND_SUPPORT is not set
diff --git a/configs/am335x_sl50_defconfig b/configs/am335x_sl50_defconfig
index c8ad4ca61143..f42148e0549a 100644
--- a/configs/am335x_sl50_defconfig
+++ b/configs/am335x_sl50_defconfig
@@ -23,6 +23,8 @@ CONFIG_AUTOBOOT_PROMPT="Press SPACE to abort autoboot in %d seconds\n"
 CONFIG_AUTOBOOT_DELAY_STR="d"
 CONFIG_AUTOBOOT_STOP_STR=" "
 CONFIG_SYS_CONSOLE_INFO_QUIET=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x800000
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_FS_EXT4=y
 CONFIG_SPL_I2C=y
diff --git a/configs/am3517_evm_defconfig b/configs/am3517_evm_defconfig
index dfd0af08fca9..03fc4fba8f56 100644
--- a/configs/am3517_evm_defconfig
+++ b/configs/am3517_evm_defconfig
@@ -20,6 +20,8 @@ CONFIG_BOOTDELAY=10
 CONFIG_BOOTCOMMAND="mmc dev ${mmcdev}; if mmc rescan; then echo SD/MMC found on device $mmcdev; if run loadbootenv; then run importbootenv; fi; echo Checking if uenvcmd is set ...; if test -n $uenvcmd; then echo Running uenvcmd ...; run uenvcmd; fi; echo Running default loadimage ...; setenv bootfile zImage; if run loadimage; then run loadfdt; run mmcboot; fi; else run nandboot; fi"
 CONFIG_SPL_MAX_SIZE=0xec00
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x800000
 # CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR is not set
 # CONFIG_SPL_FS_EXT4 is not set
 # CONFIG_SPL_I2C is not set
diff --git a/configs/am43xx_evm_defconfig b/configs/am43xx_evm_defconfig
index 96b2704dd1b2..ebfb018d2de4 100644
--- a/configs/am43xx_evm_defconfig
+++ b/configs/am43xx_evm_defconfig
@@ -18,6 +18,8 @@ CONFIG_BOOTCOMMAND="run findfdt; run finduuid; run distro_bootcmd"
 CONFIG_SYS_CONSOLE_INFO_QUIET=y
 # CONFIG_MISC_INIT_R is not set
 CONFIG_SPL_MAX_SIZE=0x439e0
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x800000
 CONFIG_SPL_ETH=y
 CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot.img"
 CONFIG_SPL_MTD_SUPPORT=y
diff --git a/configs/am43xx_evm_rtconly_defconfig b/configs/am43xx_evm_rtconly_defconfig
index 84339babc5ba..5e6975129e7b 100644
--- a/configs/am43xx_evm_rtconly_defconfig
+++ b/configs/am43xx_evm_rtconly_defconfig
@@ -18,6 +18,8 @@ CONFIG_BOOTCOMMAND="run findfdt; run finduuid; run distro_bootcmd"
 CONFIG_SYS_CONSOLE_INFO_QUIET=y
 # CONFIG_MISC_INIT_R is not set
 CONFIG_SPL_MAX_SIZE=0x439e0
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x800000
 CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot.img"
 CONFIG_SPL_MTD_SUPPORT=y
 CONFIG_SPL_NAND_DRIVERS=y
diff --git a/configs/am43xx_evm_usbhost_boot_defconfig b/configs/am43xx_evm_usbhost_boot_defconfig
index 5586ca025d4f..429ab732e127 100644
--- a/configs/am43xx_evm_usbhost_boot_defconfig
+++ b/configs/am43xx_evm_usbhost_boot_defconfig
@@ -17,6 +17,8 @@ CONFIG_BOOTCOMMAND="run findfdt; run finduuid; run distro_bootcmd"
 CONFIG_SYS_CONSOLE_INFO_QUIET=y
 # CONFIG_MISC_INIT_R is not set
 CONFIG_SPL_MAX_SIZE=0x37690
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x800000
 CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot.img"
 CONFIG_SPL_MTD_SUPPORT=y
 CONFIG_SPL_NAND_DRIVERS=y
diff --git a/configs/am43xx_hs_evm_defconfig b/configs/am43xx_hs_evm_defconfig
index cf1db1e66bb3..c401d5619a98 100644
--- a/configs/am43xx_hs_evm_defconfig
+++ b/configs/am43xx_hs_evm_defconfig
@@ -25,6 +25,8 @@ CONFIG_BOOTCOMMAND="run findfdt; run finduuid; run distro_bootcmd"
 CONFIG_SYS_CONSOLE_INFO_QUIET=y
 # CONFIG_MISC_INIT_R is not set
 CONFIG_SPL_MAX_SIZE=0x36100
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x800000
 CONFIG_SPL_ETH=y
 CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot.img"
 CONFIG_SPL_MTD_SUPPORT=y
diff --git a/configs/am57xx_evm_defconfig b/configs/am57xx_evm_defconfig
index acb2946fdf5f..33f8415d8b17 100644
--- a/configs/am57xx_evm_defconfig
+++ b/configs/am57xx_evm_defconfig
@@ -30,6 +30,8 @@ CONFIG_AVB_VERIFY=y
 CONFIG_ANDROID_AB=y
 CONFIG_SPL_MAX_SIZE=0x7bc00
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x800000
 CONFIG_SPL_DMA=y
 CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot.img"
 # CONFIG_SPL_NAND_SUPPORT is not set
diff --git a/configs/am57xx_hs_evm_defconfig b/configs/am57xx_hs_evm_defconfig
index e51df5f15b2d..332091773015 100644
--- a/configs/am57xx_hs_evm_defconfig
+++ b/configs/am57xx_hs_evm_defconfig
@@ -33,6 +33,8 @@ CONFIG_AVB_VERIFY=y
 CONFIG_ANDROID_AB=y
 CONFIG_SPL_MAX_SIZE=0x7a8b0
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x800000
 CONFIG_SPL_DMA=y
 CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot.img"
 # CONFIG_SPL_NAND_SUPPORT is not set
diff --git a/configs/am57xx_hs_evm_usb_defconfig b/configs/am57xx_hs_evm_usb_defconfig
index c30377338b2b..014a3830df7e 100644
--- a/configs/am57xx_hs_evm_usb_defconfig
+++ b/configs/am57xx_hs_evm_usb_defconfig
@@ -36,6 +36,8 @@ CONFIG_AVB_VERIFY=y
 CONFIG_ANDROID_AB=y
 CONFIG_SPL_MAX_SIZE=0x74eb0
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x800000
 CONFIG_SPL_DMA=y
 CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot.img"
 # CONFIG_SPL_NAND_SUPPORT is not set
diff --git a/configs/am64x_evm_a53_defconfig b/configs/am64x_evm_a53_defconfig
index 954f0a8b2cd9..49bfc006ddba 100644
--- a/configs/am64x_evm_a53_defconfig
+++ b/configs/am64x_evm_a53_defconfig
@@ -39,6 +39,8 @@ CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
 CONFIG_SPL_STACK_R=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x800000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x1400
 CONFIG_SPL_DMA=y
diff --git a/configs/am64x_evm_r5_defconfig b/configs/am64x_evm_r5_defconfig
index 20e1f507cbe6..7226af760e3e 100644
--- a/configs/am64x_evm_r5_defconfig
+++ b/configs/am64x_evm_r5_defconfig
@@ -42,6 +42,10 @@ CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_SEPARATE_BSS=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x84000000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x1000000
 CONFIG_SPL_EARLY_BSS=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x400
diff --git a/configs/am65x_evm_a53_defconfig b/configs/am65x_evm_a53_defconfig
index d07edc22925f..9c088e1d02e4 100644
--- a/configs/am65x_evm_a53_defconfig
+++ b/configs/am65x_evm_a53_defconfig
@@ -41,6 +41,8 @@ CONFIG_SPL_BSS_START_ADDR=0x80a00000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
 CONFIG_SPL_STACK_R=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x800000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x1400
 CONFIG_SPL_DMA=y
diff --git a/configs/am65x_evm_r5_defconfig b/configs/am65x_evm_r5_defconfig
index fbe3aba25554..2d8add2fbd5e 100644
--- a/configs/am65x_evm_r5_defconfig
+++ b/configs/am65x_evm_r5_defconfig
@@ -40,6 +40,10 @@ CONFIG_SPL_BSS_MAX_SIZE=0xc00
 CONFIG_SPL_SYS_REPORT_STACK_F_USAGE=y
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_SEPARATE_BSS=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x84000000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x1000000
 CONFIG_SPL_EARLY_BSS=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x400
diff --git a/configs/am65x_evm_r5_usbdfu_defconfig b/configs/am65x_evm_r5_usbdfu_defconfig
index f0dfc7579fc1..dbda4f745547 100644
--- a/configs/am65x_evm_r5_usbdfu_defconfig
+++ b/configs/am65x_evm_r5_usbdfu_defconfig
@@ -31,6 +31,10 @@ CONFIG_SPL_BSS_START_ADDR=0x41c7effc
 CONFIG_SPL_BSS_MAX_SIZE=0xc00
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_SEPARATE_BSS=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x84000000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x1000000
 CONFIG_SPL_EARLY_BSS=y
 CONFIG_SPL_DMA=y
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/am65x_evm_r5_usbmsc_defconfig b/configs/am65x_evm_r5_usbmsc_defconfig
index cf55bd48cdde..64b7d49310d4 100644
--- a/configs/am65x_evm_r5_usbmsc_defconfig
+++ b/configs/am65x_evm_r5_usbmsc_defconfig
@@ -30,6 +30,10 @@ CONFIG_SPL_BSS_START_ADDR=0x41c7effc
 CONFIG_SPL_BSS_MAX_SIZE=0xc00
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_SEPARATE_BSS=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x84000000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x1000000
 CONFIG_SPL_EARLY_BSS=y
 CONFIG_SPL_DMA=y
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/am65x_hs_evm_a53_defconfig b/configs/am65x_hs_evm_a53_defconfig
index 6983c9172f01..3ce290467ab4 100644
--- a/configs/am65x_hs_evm_a53_defconfig
+++ b/configs/am65x_hs_evm_a53_defconfig
@@ -41,6 +41,8 @@ CONFIG_SPL_BSS_START_ADDR=0x80a00000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
 CONFIG_SPL_STACK_R=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x800000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x1400
 CONFIG_SPL_DMA=y
diff --git a/configs/am65x_hs_evm_r5_defconfig b/configs/am65x_hs_evm_r5_defconfig
index d26f07124b8d..fc0c5432dbc3 100644
--- a/configs/am65x_hs_evm_r5_defconfig
+++ b/configs/am65x_hs_evm_r5_defconfig
@@ -36,6 +36,10 @@ CONFIG_SPL_BSS_START_ADDR=0x41c7effc
 CONFIG_SPL_BSS_MAX_SIZE=0xc00
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_SEPARATE_BSS=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x84000000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x1000000
 CONFIG_SPL_EARLY_BSS=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x400
diff --git a/configs/apalis-tk1_defconfig b/configs/apalis-tk1_defconfig
index 3c004695897d..2d9c0ae18e37 100644
--- a/configs/apalis-tk1_defconfig
+++ b/configs/apalis-tk1_defconfig
@@ -25,6 +25,10 @@ CONFIG_SPL_FOOTPRINT_LIMIT=y
 CONFIG_SPL_MAX_FOOTPRINT=0x8000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x800ffffc
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x80090000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x10000
 CONFIG_SYS_PROMPT="Apalis TK1 # "
 CONFIG_SYS_MAXARGS=32
 CONFIG_SYS_CBSIZE=1024
diff --git a/configs/apalis_imx6_defconfig b/configs/apalis_imx6_defconfig
index 11ee2f3d34a9..89e9971ea3cf 100644
--- a/configs/apalis_imx6_defconfig
+++ b/configs/apalis_imx6_defconfig
@@ -36,6 +36,7 @@ CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
 CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_MISC_INIT_R=y
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_DMA=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_USB_HOST=y
diff --git a/configs/apalis_t30_defconfig b/configs/apalis_t30_defconfig
index 5b31d4c9943c..2a8d3c6e0a35 100644
--- a/configs/apalis_t30_defconfig
+++ b/configs/apalis_t30_defconfig
@@ -21,6 +21,10 @@ CONFIG_SPL_FOOTPRINT_LIMIT=y
 CONFIG_SPL_MAX_FOOTPRINT=0x8000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x800ffffc
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x80090000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x10000
 CONFIG_SYS_PROMPT="Apalis T30 # "
 CONFIG_SYS_MAXARGS=32
 CONFIG_SYS_CBSIZE=1024
diff --git a/configs/avnet_ultrazedev_cc_v1_0_ultrazedev_som_v1_0_defconfig b/configs/avnet_ultrazedev_cc_v1_0_ultrazedev_som_v1_0_defconfig
index c24f94e08d8e..7f4c804c957b 100644
--- a/configs/avnet_ultrazedev_cc_v1_0_ultrazedev_som_v1_0_defconfig
+++ b/configs/avnet_ultrazedev_cc_v1_0_ultrazedev_som_v1_0_defconfig
@@ -34,6 +34,10 @@ CONFIG_SPL_BSS_START_ADDR=0x0
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xfffffffc
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x20000000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x1000000
 CONFIG_SPL_FS_LOAD_KERNEL_NAME="atf-uboot.ub"
 CONFIG_SPL_FS_LOAD_ARGS_NAME="u-boot.bin"
 CONFIG_SPL_OS_BOOT=y
diff --git a/configs/axm_defconfig b/configs/axm_defconfig
index 2f6b332cb355..b61151129fcd 100644
--- a/configs/axm_defconfig
+++ b/configs/axm_defconfig
@@ -44,6 +44,10 @@ CONFIG_SPL_BSS_MAX_SIZE=0x600
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x304000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x20ba0000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x460000
 CONFIG_SPL_CRC32=y
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_SPL_NAND_RAW_ONLY=y
diff --git a/configs/beaver_defconfig b/configs/beaver_defconfig
index e0e4393d3904..dbaa7ac3198e 100644
--- a/configs/beaver_defconfig
+++ b/configs/beaver_defconfig
@@ -18,6 +18,10 @@ CONFIG_SPL_FOOTPRINT_LIMIT=y
 CONFIG_SPL_MAX_FOOTPRINT=0x8000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x800ffffc
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x80090000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x10000
 CONFIG_SYS_PROMPT="Tegra30 (Beaver) # "
 CONFIG_SYS_MAXARGS=64
 CONFIG_SYS_PBSIZE=2084
diff --git a/configs/bitmain_antminer_s9_defconfig b/configs/bitmain_antminer_s9_defconfig
index d724fe6e65d1..f8ab91435875 100644
--- a/configs/bitmain_antminer_s9_defconfig
+++ b/configs/bitmain_antminer_s9_defconfig
@@ -34,6 +34,8 @@ CONFIG_SPL_BSS_MAX_SIZE=0x100000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xfffffe00
 CONFIG_SPL_STACK_R=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x2000000
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_PROMPT="antminer> "
 CONFIG_SYS_MAXARGS=32
diff --git a/configs/brppt1_mmc_defconfig b/configs/brppt1_mmc_defconfig
index 932cbbca9dae..488167e27f15 100644
--- a/configs/brppt1_mmc_defconfig
+++ b/configs/brppt1_mmc_defconfig
@@ -34,6 +34,8 @@ CONFIG_SYS_CONSOLE_INFO_QUIET=y
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_ARCH_MISC_INIT=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x500000
 CONFIG_SPL_I2C=y
 # CONFIG_SPL_NAND_SUPPORT is not set
 CONFIG_SPL_POWER=y
diff --git a/configs/brppt1_nand_defconfig b/configs/brppt1_nand_defconfig
index 3363f50ebb54..dce6bebd81d4 100644
--- a/configs/brppt1_nand_defconfig
+++ b/configs/brppt1_nand_defconfig
@@ -31,6 +31,8 @@ CONFIG_SYS_CONSOLE_INFO_QUIET=y
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_ARCH_MISC_INIT=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x500000
 # CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR is not set
 CONFIG_SPL_I2C=y
 CONFIG_SPL_NAND_DRIVERS=y
diff --git a/configs/brppt1_spi_defconfig b/configs/brppt1_spi_defconfig
index 4b7f781e7161..41dd24feddab 100644
--- a/configs/brppt1_spi_defconfig
+++ b/configs/brppt1_spi_defconfig
@@ -38,6 +38,8 @@ CONFIG_SYS_CONSOLE_INFO_QUIET=y
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_ARCH_MISC_INIT=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x500000
 # CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR is not set
 CONFIG_SPL_I2C=y
 # CONFIG_SPL_NAND_SUPPORT is not set
diff --git a/configs/brppt2_defconfig b/configs/brppt2_defconfig
index b9f3587bdaaf..db87b579eeda 100644
--- a/configs/brppt2_defconfig
+++ b/configs/brppt2_defconfig
@@ -32,6 +32,7 @@ CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="run b_default"
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_SPL_BOARD_INIT=y
+CONFIG_SYS_SPL_MALLOC=y
 # CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR is not set
 CONFIG_SPL_I2C=y
 CONFIG_SPL_DM_SPI_FLASH=y
diff --git a/configs/brsmarc1_defconfig b/configs/brsmarc1_defconfig
index 9739785c9942..3134d3b4b6a9 100644
--- a/configs/brsmarc1_defconfig
+++ b/configs/brsmarc1_defconfig
@@ -37,6 +37,8 @@ CONFIG_BOARD_TYPES=y
 CONFIG_ARCH_MISC_INIT=y
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x500000
 # CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR is not set
 CONFIG_SPL_I2C=y
 # CONFIG_SPL_NAND_SUPPORT is not set
diff --git a/configs/brxre1_defconfig b/configs/brxre1_defconfig
index cefc548a00ae..c39389451f1b 100644
--- a/configs/brxre1_defconfig
+++ b/configs/brxre1_defconfig
@@ -33,6 +33,8 @@ CONFIG_SYS_CONSOLE_INFO_QUIET=y
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_ARCH_MISC_INIT=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x500000
 CONFIG_SPL_I2C=y
 # CONFIG_SPL_NAND_SUPPORT is not set
 CONFIG_SPL_POWER=y
diff --git a/configs/cardhu_defconfig b/configs/cardhu_defconfig
index 2b73fa22d8a9..bf8504fd7252 100644
--- a/configs/cardhu_defconfig
+++ b/configs/cardhu_defconfig
@@ -17,6 +17,10 @@ CONFIG_SPL_FOOTPRINT_LIMIT=y
 CONFIG_SPL_MAX_FOOTPRINT=0x8000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x800ffffc
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x80090000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x10000
 CONFIG_SYS_PROMPT="Tegra30 (Cardhu) # "
 CONFIG_SYS_MAXARGS=64
 CONFIG_SYS_PBSIZE=2084
diff --git a/configs/cei-tk1-som_defconfig b/configs/cei-tk1-som_defconfig
index 7bf45bae4e5a..f55848ab2c0a 100644
--- a/configs/cei-tk1-som_defconfig
+++ b/configs/cei-tk1-som_defconfig
@@ -19,6 +19,10 @@ CONFIG_SPL_FOOTPRINT_LIMIT=y
 CONFIG_SPL_MAX_FOOTPRINT=0x8000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x800ffffc
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x80090000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x10000
 CONFIG_SYS_PROMPT="Tegra124 (TK1-SOM) # "
 CONFIG_SYS_MAXARGS=64
 CONFIG_SYS_PBSIZE=2086
diff --git a/configs/cgtqmx8_defconfig b/configs/cgtqmx8_defconfig
index 1a25d498b992..17219969f604 100644
--- a/configs/cgtqmx8_defconfig
+++ b/configs/cgtqmx8_defconfig
@@ -35,6 +35,10 @@ CONFIG_SPL_BSS_MAX_SIZE=0x1000
 CONFIG_SPL_BOARD_INIT=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x13e000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x120000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x3000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x800
 CONFIG_SYS_MMCSD_FS_BOOT_PARTITION=0
diff --git a/configs/chiliboard_defconfig b/configs/chiliboard_defconfig
index 3b8fdd437f39..849d751f08e8 100644
--- a/configs/chiliboard_defconfig
+++ b/configs/chiliboard_defconfig
@@ -24,6 +24,8 @@ CONFIG_BOOTCOMMAND="run mmcboot; run nandboot; run netboot"
 CONFIG_DEFAULT_FDT_FILE="am335x-chiliboard.dtb"
 CONFIG_SYS_CONSOLE_INFO_QUIET=y
 CONFIG_ARCH_MISC_INIT=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x800000
 CONFIG_SPL_I2C=y
 CONFIG_SPL_NAND_DRIVERS=y
 CONFIG_SPL_NAND_ECC=y
diff --git a/configs/cl-som-imx7_defconfig b/configs/cl-som-imx7_defconfig
index ff5c21f5c691..075d8678c8a9 100644
--- a/configs/cl-som-imx7_defconfig
+++ b/configs/cl-som-imx7_defconfig
@@ -29,6 +29,7 @@ CONFIG_SPL_MAX_SIZE=0xe000
 CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
 CONFIG_SPL_BOARD_INIT=y
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x80
 CONFIG_SPL_I2C=y
 CONFIG_SPL_SPI_LOAD=y
diff --git a/configs/cm_fx6_defconfig b/configs/cm_fx6_defconfig
index bb63d5f7756e..16e619b38a55 100644
--- a/configs/cm_fx6_defconfig
+++ b/configs/cm_fx6_defconfig
@@ -30,6 +30,7 @@ CONFIG_BOOTCOMMAND="run findfdt; run distro_bootcmd; run legacy_bootcmd"
 CONFIG_USE_PREBOOT=y
 CONFIG_PREBOOT="usb start;sf probe"
 CONFIG_MISC_INIT_R=y
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x80
 CONFIG_SPL_I2C=y
 CONFIG_SPL_SPI_LOAD=y
diff --git a/configs/cm_t335_defconfig b/configs/cm_t335_defconfig
index 6d77e8ed1bea..0c2e8a35ef87 100644
--- a/configs/cm_t335_defconfig
+++ b/configs/cm_t335_defconfig
@@ -19,6 +19,8 @@ CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0x4030ff00
 CONFIG_TIMESTAMP=y
 # CONFIG_USE_BOOTCOMMAND is not set
 CONFIG_SYS_CONSOLE_INFO_QUIET=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x800000
 CONFIG_SPL_FS_EXT4=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MTD_SUPPORT=y
diff --git a/configs/cm_t43_defconfig b/configs/cm_t43_defconfig
index 72c71020e0d2..30afd5e7d004 100644
--- a/configs/cm_t43_defconfig
+++ b/configs/cm_t43_defconfig
@@ -30,6 +30,8 @@ CONFIG_SYS_CONSOLE_INFO_QUIET=y
 # CONFIG_DISPLAY_BOARDINFO is not set
 # CONFIG_MISC_INIT_R is not set
 CONFIG_SPL_MAX_SIZE=0x37690
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x800000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x480
 CONFIG_SPL_FS_EXT4=y
 CONFIG_SPL_I2C=y
diff --git a/configs/colibri_imx6_defconfig b/configs/colibri_imx6_defconfig
index 1873581e7555..44e2ff094099 100644
--- a/configs/colibri_imx6_defconfig
+++ b/configs/colibri_imx6_defconfig
@@ -35,6 +35,7 @@ CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
 CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_MISC_INIT_R=y
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_DMA=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_USB_HOST=y
diff --git a/configs/colibri_t20_defconfig b/configs/colibri_t20_defconfig
index 1f616af3c52c..92d9dfed30fa 100644
--- a/configs/colibri_t20_defconfig
+++ b/configs/colibri_t20_defconfig
@@ -20,6 +20,10 @@ CONFIG_SPL_FOOTPRINT_LIMIT=y
 CONFIG_SPL_MAX_FOOTPRINT=0x8000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xffffc
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x90000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x10000
 CONFIG_SYS_PROMPT="Colibri T20 # "
 CONFIG_SYS_MAXARGS=32
 CONFIG_SYS_CBSIZE=1024
diff --git a/configs/colibri_t30_defconfig b/configs/colibri_t30_defconfig
index b9012f025827..a9fe05246d6e 100644
--- a/configs/colibri_t30_defconfig
+++ b/configs/colibri_t30_defconfig
@@ -21,6 +21,10 @@ CONFIG_SPL_FOOTPRINT_LIMIT=y
 CONFIG_SPL_MAX_FOOTPRINT=0x8000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x800ffffc
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x80090000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x10000
 CONFIG_SYS_PROMPT="Colibri T30 # "
 CONFIG_SYS_MAXARGS=32
 CONFIG_SYS_CBSIZE=1024
diff --git a/configs/da850evm_defconfig b/configs/da850evm_defconfig
index d150a00510bf..de2d709a7a22 100644
--- a/configs/da850evm_defconfig
+++ b/configs/da850evm_defconfig
@@ -43,6 +43,10 @@ CONFIG_SPL_MAX_FOOTPRINT=0x8000
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x8001ff00
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0xc0f70000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x110000
 # CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR is not set
 CONFIG_SPL_DM_SPI_FLASH=y
 CONFIG_SPL_SPI_LOAD=y
diff --git a/configs/da850evm_nand_defconfig b/configs/da850evm_nand_defconfig
index f46c8809193c..052ef3070334 100644
--- a/configs/da850evm_nand_defconfig
+++ b/configs/da850evm_nand_defconfig
@@ -40,6 +40,10 @@ CONFIG_SPL_MAX_FOOTPRINT=0x8000
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x8001ff00
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0xc0f70000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x110000
 # CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR is not set
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_SPL_NAND_DRIVERS=y
diff --git a/configs/dalmore_defconfig b/configs/dalmore_defconfig
index 7811ef83db86..64d788f66321 100644
--- a/configs/dalmore_defconfig
+++ b/configs/dalmore_defconfig
@@ -18,6 +18,10 @@ CONFIG_SPL_FOOTPRINT_LIMIT=y
 CONFIG_SPL_MAX_FOOTPRINT=0x8000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x800ffffc
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x80090000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x10000
 CONFIG_SYS_PROMPT="Tegra114 (Dalmore) # "
 CONFIG_SYS_MAXARGS=64
 CONFIG_SYS_PBSIZE=2086
diff --git a/configs/deneb_defconfig b/configs/deneb_defconfig
index 2cd9adb3c130..309545be5310 100644
--- a/configs/deneb_defconfig
+++ b/configs/deneb_defconfig
@@ -44,6 +44,10 @@ CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x13e000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x120000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x3000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x800
 CONFIG_SPL_POWER_DOMAIN=y
diff --git a/configs/devkit8000_defconfig b/configs/devkit8000_defconfig
index 9ab5423a3242..08c053b4f155 100644
--- a/configs/devkit8000_defconfig
+++ b/configs/devkit8000_defconfig
@@ -14,6 +14,9 @@ CONFIG_BOOTCOMMAND="run autoboot"
 CONFIG_SYS_CONSOLE_INFO_QUIET=y
 CONFIG_SPL_MAX_SIZE=0xec00
 CONFIG_SPL_BSS_START_ADDR=0x80000500
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x80208000
 CONFIG_SPL_NAND_DRIVERS=y
 CONFIG_SPL_NAND_ECC=y
 CONFIG_SPL_NAND_SIMPLE=y
diff --git a/configs/dh_imx6_defconfig b/configs/dh_imx6_defconfig
index 8c0b9b3d4565..a659e996b5c0 100644
--- a/configs/dh_imx6_defconfig
+++ b/configs/dh_imx6_defconfig
@@ -35,6 +35,7 @@ CONFIG_SPL_FIT=y
 CONFIG_BOOTDELAY=3
 # CONFIG_USE_BOOTCOMMAND is not set
 CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x11400
 CONFIG_SYS_MAXARGS=32
diff --git a/configs/display5_defconfig b/configs/display5_defconfig
index 2b92ed95b4b7..6e74f68f400b 100644
--- a/configs/display5_defconfig
+++ b/configs/display5_defconfig
@@ -37,6 +37,7 @@ CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="if run check_em_pad; then run recovery;else if test ${BOOT_FROM} = FACTORY; then run factory_nfs;else run boot_mmc;fi;fi"
 CONFIG_MISC_INIT_R=y
 CONFIG_SPL_BOOTCOUNT_LIMIT=y
+CONFIG_SYS_SPL_MALLOC=y
 # CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR is not set
 CONFIG_SPL_DMA=y
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/display5_factory_defconfig b/configs/display5_factory_defconfig
index 9c3965c0a6f5..eab9c7c1e867 100644
--- a/configs/display5_factory_defconfig
+++ b/configs/display5_factory_defconfig
@@ -34,6 +34,7 @@ CONFIG_BOOTDELAY=3
 CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="echo SDP Display5 recovery"
 CONFIG_MISC_INIT_R=y
+CONFIG_SYS_SPL_MALLOC=y
 # CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR is not set
 CONFIG_SPL_DMA=y
 CONFIG_SPL_I2C=y
diff --git a/configs/dra7xx_evm_defconfig b/configs/dra7xx_evm_defconfig
index c1d1b5d13196..5922e86d7a6d 100644
--- a/configs/dra7xx_evm_defconfig
+++ b/configs/dra7xx_evm_defconfig
@@ -30,6 +30,8 @@ CONFIG_BOARD_EARLY_INIT_F=y
 # CONFIG_MISC_INIT_R is not set
 CONFIG_SPL_MAX_SIZE=0x7bc00
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x800000
 CONFIG_SPL_DMA=y
 CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot.img"
 CONFIG_SPL_NAND_DRIVERS=y
diff --git a/configs/dra7xx_hs_evm_defconfig b/configs/dra7xx_hs_evm_defconfig
index 25c276722500..51ffd2779c13 100644
--- a/configs/dra7xx_hs_evm_defconfig
+++ b/configs/dra7xx_hs_evm_defconfig
@@ -33,6 +33,8 @@ CONFIG_BOARD_EARLY_INIT_F=y
 # CONFIG_MISC_INIT_R is not set
 CONFIG_SPL_MAX_SIZE=0x7a8b0
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x800000
 CONFIG_SPL_DMA=y
 CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot.img"
 # CONFIG_SPL_NAND_SUPPORT is not set
diff --git a/configs/dra7xx_hs_evm_usb_defconfig b/configs/dra7xx_hs_evm_usb_defconfig
index 3463be48c509..34dcdede9233 100644
--- a/configs/dra7xx_hs_evm_usb_defconfig
+++ b/configs/dra7xx_hs_evm_usb_defconfig
@@ -35,6 +35,8 @@ CONFIG_BOARD_EARLY_INIT_F=y
 # CONFIG_MISC_INIT_R is not set
 CONFIG_SPL_MAX_SIZE=0x74eb0
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x800000
 CONFIG_SPL_DMA=y
 CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot.img"
 # CONFIG_SPL_NAND_SUPPORT is not set
diff --git a/configs/draco_defconfig b/configs/draco_defconfig
index 86c130f4bc71..f7bb01f3bf3a 100644
--- a/configs/draco_defconfig
+++ b/configs/draco_defconfig
@@ -37,6 +37,9 @@ CONFIG_SYS_CONSOLE_INFO_QUIET=y
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_ARCH_MISC_INIT=y
 CONFIG_SPL_BSS_START_ADDR=0x80000000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x80208000
 CONFIG_SPL_I2C=y
 CONFIG_SPL_NAND_DRIVERS=y
 CONFIG_SPL_NAND_ECC=y
diff --git a/configs/edminiv2_defconfig b/configs/edminiv2_defconfig
index 8434b23b47e1..b8906b1bb0de 100644
--- a/configs/edminiv2_defconfig
+++ b/configs/edminiv2_defconfig
@@ -29,6 +29,10 @@ CONFIG_SPL_BSS_MAX_SIZE=0x1ffff
 CONFIG_SPL_BOARD_INIT=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x20000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x40000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x1ffff
 CONFIG_SPL_NOR_SUPPORT=y
 CONFIG_HUSH_PARSER=y
 # CONFIG_AUTO_COMPLETE is not set
diff --git a/configs/etamin_defconfig b/configs/etamin_defconfig
index 9da7bfbb3994..294a67a7facb 100644
--- a/configs/etamin_defconfig
+++ b/configs/etamin_defconfig
@@ -38,6 +38,9 @@ CONFIG_SYS_CONSOLE_INFO_QUIET=y
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_ARCH_MISC_INIT=y
 CONFIG_SPL_BSS_START_ADDR=0x80000000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x80208000
 CONFIG_SPL_I2C=y
 CONFIG_SPL_NAND_DRIVERS=y
 CONFIG_SPL_NAND_ECC=y
diff --git a/configs/gardena-smart-gateway-at91sam_defconfig b/configs/gardena-smart-gateway-at91sam_defconfig
index ea79a2f9384f..a253b1333edf 100644
--- a/configs/gardena-smart-gateway-at91sam_defconfig
+++ b/configs/gardena-smart-gateway-at91sam_defconfig
@@ -42,6 +42,8 @@ CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x308000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x80000
 # CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR is not set
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_SPL_NAND_RAW_ONLY=y
diff --git a/configs/ge_b1x5v2_defconfig b/configs/ge_b1x5v2_defconfig
index fd1f3e37de33..ff14bd625a60 100644
--- a/configs/ge_b1x5v2_defconfig
+++ b/configs/ge_b1x5v2_defconfig
@@ -37,6 +37,7 @@ CONFIG_LOG_MAX_LEVEL=8
 CONFIG_LOG_DEFAULT_LEVEL=4
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_MISC_INIT_R=y
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x11400
 CONFIG_SPL_USB_HOST=y
diff --git a/configs/giedi_defconfig b/configs/giedi_defconfig
index ac8ef890a338..7e9a7ea7c0b5 100644
--- a/configs/giedi_defconfig
+++ b/configs/giedi_defconfig
@@ -44,6 +44,10 @@ CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x13e000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x120000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x3000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x800
 CONFIG_SPL_POWER_DOMAIN=y
diff --git a/configs/gwventana_emmc_defconfig b/configs/gwventana_emmc_defconfig
index f0e720463b67..ef2ee77c3dc5 100644
--- a/configs/gwventana_emmc_defconfig
+++ b/configs/gwventana_emmc_defconfig
@@ -41,6 +41,7 @@ CONFIG_MISC_INIT_R=y
 CONFIG_PCI_INIT_R=y
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_STACK_R=y
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_FIT_IMAGE_TINY=y
 CONFIG_SPL_DMA=y
 CONFIG_SPL_I2C=y
diff --git a/configs/gwventana_gw5904_defconfig b/configs/gwventana_gw5904_defconfig
index 53d5bddd6197..a736b81ad9a6 100644
--- a/configs/gwventana_gw5904_defconfig
+++ b/configs/gwventana_gw5904_defconfig
@@ -41,6 +41,7 @@ CONFIG_MISC_INIT_R=y
 CONFIG_PCI_INIT_R=y
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_STACK_R=y
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_FIT_IMAGE_TINY=y
 CONFIG_SPL_DMA=y
 CONFIG_SPL_I2C=y
diff --git a/configs/gwventana_nand_defconfig b/configs/gwventana_nand_defconfig
index e0225278582a..5372476f0450 100644
--- a/configs/gwventana_nand_defconfig
+++ b/configs/gwventana_nand_defconfig
@@ -41,6 +41,7 @@ CONFIG_MISC_INIT_R=y
 CONFIG_PCI_INIT_R=y
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_STACK_R=y
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_FIT_IMAGE_TINY=y
 CONFIG_SPL_DMA=y
 CONFIG_SPL_I2C=y
diff --git a/configs/harmony_defconfig b/configs/harmony_defconfig
index 50a210703d47..647b4674891e 100644
--- a/configs/harmony_defconfig
+++ b/configs/harmony_defconfig
@@ -16,6 +16,10 @@ CONFIG_SPL_FOOTPRINT_LIMIT=y
 CONFIG_SPL_MAX_FOOTPRINT=0x8000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xffffc
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x90000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x10000
 CONFIG_SYS_PROMPT="Tegra20 (Harmony) # "
 CONFIG_SYS_MAXARGS=64
 CONFIG_SYS_PBSIZE=2085
diff --git a/configs/igep00x0_defconfig b/configs/igep00x0_defconfig
index 1cbcfdceeaf9..b1162e7cdb8d 100644
--- a/configs/igep00x0_defconfig
+++ b/configs/igep00x0_defconfig
@@ -19,6 +19,8 @@ CONFIG_SYS_CONSOLE_INFO_QUIET=y
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_SPL_MAX_SIZE=0xec00
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x800000
 # CONFIG_SPL_FS_EXT4 is not set
 CONFIG_SPL_MTD_SUPPORT=y
 CONFIG_SPL_NAND_DRIVERS=y
diff --git a/configs/imx6dl_icore_nand_defconfig b/configs/imx6dl_icore_nand_defconfig
index c98a5cc735a8..71e3d39597d1 100644
--- a/configs/imx6dl_icore_nand_defconfig
+++ b/configs/imx6dl_icore_nand_defconfig
@@ -24,6 +24,7 @@ CONFIG_LEGACY_IMAGE_FORMAT=y
 CONFIG_BOOTDELAY=3
 CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="run $modeboot"
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_DMA=y
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_SPL_WATCHDOG=y
diff --git a/configs/imx6dl_mamoj_defconfig b/configs/imx6dl_mamoj_defconfig
index 6f249dbe2fcd..7e6e3bb4a3f3 100644
--- a/configs/imx6dl_mamoj_defconfig
+++ b/configs/imx6dl_mamoj_defconfig
@@ -17,6 +17,7 @@ CONFIG_SYS_MEMTEST_END=0x88000000
 CONFIG_LTO=y
 CONFIG_DISTRO_DEFAULTS=y
 CONFIG_BOOTDELAY=3
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_OS_BOOT=y
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1000
diff --git a/configs/imx6q_bosch_acc_defconfig b/configs/imx6q_bosch_acc_defconfig
index 4b75e5794e99..a2501ebc1a1e 100644
--- a/configs/imx6q_bosch_acc_defconfig
+++ b/configs/imx6q_bosch_acc_defconfig
@@ -34,6 +34,7 @@ CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="run mmc_mmc_fit"
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_RAW_IMAGE_SUPPORT=y
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0xaa
 # CONFIG_SPL_CRC32 is not set
 # CONFIG_SPL_CRYPTO is not set
diff --git a/configs/imx6q_icore_nand_defconfig b/configs/imx6q_icore_nand_defconfig
index 278bc98cbc17..bf5f620ad882 100644
--- a/configs/imx6q_icore_nand_defconfig
+++ b/configs/imx6q_icore_nand_defconfig
@@ -25,6 +25,7 @@ CONFIG_SUPPORT_RAW_INITRD=y
 CONFIG_BOOTDELAY=3
 CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="run $modeboot"
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_DMA=y
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_SPL_WATCHDOG=y
diff --git a/configs/imx6q_logic_defconfig b/configs/imx6q_logic_defconfig
index c5ad6dcdd1f2..4e665ba42bfd 100644
--- a/configs/imx6q_logic_defconfig
+++ b/configs/imx6q_logic_defconfig
@@ -27,6 +27,7 @@ CONFIG_BOOTCOMMAND="run autoboot"
 CONFIG_SYS_CONSOLE_IS_IN_ENV=y
 CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
 CONFIG_SPL_RAW_IMAGE_SUPPORT=y
+CONFIG_SYS_SPL_MALLOC=y
 # CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR is not set
 CONFIG_SPL_DMA=y
 CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot-dtb.img"
diff --git a/configs/imx6qdl_icore_mipi_defconfig b/configs/imx6qdl_icore_mipi_defconfig
index a2f1abe1aa6e..754537044a30 100644
--- a/configs/imx6qdl_icore_mipi_defconfig
+++ b/configs/imx6qdl_icore_mipi_defconfig
@@ -33,6 +33,7 @@ CONFIG_BOOTDELAY=3
 CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="run $modeboot"
 CONFIG_SPL_RAW_IMAGE_SUPPORT=y
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_OS_BOOT=y
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1000
diff --git a/configs/imx6qdl_icore_mmc_defconfig b/configs/imx6qdl_icore_mmc_defconfig
index 91b32e4a0353..4e9fadd699a5 100644
--- a/configs/imx6qdl_icore_mmc_defconfig
+++ b/configs/imx6qdl_icore_mmc_defconfig
@@ -36,6 +36,7 @@ CONFIG_BOOTDELAY=3
 CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="run $modeboot"
 CONFIG_SPL_RAW_IMAGE_SUPPORT=y
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_OS_BOOT=y
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1000
diff --git a/configs/imx6qdl_icore_nand_defconfig b/configs/imx6qdl_icore_nand_defconfig
index 278bc98cbc17..bf5f620ad882 100644
--- a/configs/imx6qdl_icore_nand_defconfig
+++ b/configs/imx6qdl_icore_nand_defconfig
@@ -25,6 +25,7 @@ CONFIG_SUPPORT_RAW_INITRD=y
 CONFIG_BOOTDELAY=3
 CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="run $modeboot"
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_DMA=y
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_SPL_WATCHDOG=y
diff --git a/configs/imx6qdl_icore_rqs_defconfig b/configs/imx6qdl_icore_rqs_defconfig
index cfd35608cfcc..d87a47700cde 100644
--- a/configs/imx6qdl_icore_rqs_defconfig
+++ b/configs/imx6qdl_icore_rqs_defconfig
@@ -30,6 +30,7 @@ CONFIG_BOOTDELAY=3
 CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="run $modeboot"
 CONFIG_SPL_RAW_IMAGE_SUPPORT=y
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_OS_BOOT=y
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1000
diff --git a/configs/imx6ul_geam_mmc_defconfig b/configs/imx6ul_geam_mmc_defconfig
index a84547feddd9..9e46b1137fc8 100644
--- a/configs/imx6ul_geam_mmc_defconfig
+++ b/configs/imx6ul_geam_mmc_defconfig
@@ -28,6 +28,7 @@ CONFIG_BOOTDELAY=3
 CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="run $modeboot"
 CONFIG_SPL_RAW_IMAGE_SUPPORT=y
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_WATCHDOG=y
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_PROMPT="geam6ul> "
diff --git a/configs/imx6ul_geam_nand_defconfig b/configs/imx6ul_geam_nand_defconfig
index 8bd4360efd2e..ac56f204cdbd 100644
--- a/configs/imx6ul_geam_nand_defconfig
+++ b/configs/imx6ul_geam_nand_defconfig
@@ -25,6 +25,7 @@ CONFIG_SUPPORT_RAW_INITRD=y
 CONFIG_BOOTDELAY=3
 CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="run $modeboot"
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_DMA=y
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_SPL_WATCHDOG=y
diff --git a/configs/imx6ul_isiot_emmc_defconfig b/configs/imx6ul_isiot_emmc_defconfig
index 9262055f1da5..7dadf80cd5ac 100644
--- a/configs/imx6ul_isiot_emmc_defconfig
+++ b/configs/imx6ul_isiot_emmc_defconfig
@@ -28,6 +28,7 @@ CONFIG_BOOTDELAY=3
 CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="run $modeboot"
 CONFIG_SPL_RAW_IMAGE_SUPPORT=y
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_WATCHDOG=y
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_PROMPT="isiotmx6ul> "
diff --git a/configs/imx6ul_isiot_nand_defconfig b/configs/imx6ul_isiot_nand_defconfig
index d1da6da311c8..a5828ead1bd7 100644
--- a/configs/imx6ul_isiot_nand_defconfig
+++ b/configs/imx6ul_isiot_nand_defconfig
@@ -25,6 +25,7 @@ CONFIG_SUPPORT_RAW_INITRD=y
 CONFIG_BOOTDELAY=3
 CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="run $modeboot"
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_DMA=y
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_SPL_WATCHDOG=y
diff --git a/configs/imx7_cm_defconfig b/configs/imx7_cm_defconfig
index 1fc16f5f36ed..830e4029e504 100644
--- a/configs/imx7_cm_defconfig
+++ b/configs/imx7_cm_defconfig
@@ -27,6 +27,7 @@ CONFIG_DEFAULT_FDT_FILE="ask"
 CONFIG_SPL_MAX_SIZE=0xe000
 CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_USB_HOST=y
 CONFIG_SPL_USB_GADGET=y
diff --git a/configs/imx8mm-cl-iot-gate-optee_defconfig b/configs/imx8mm-cl-iot-gate-optee_defconfig
index 7cd51348baad..57ecd7bb3b69 100644
--- a/configs/imx8mm-cl-iot-gate-optee_defconfig
+++ b/configs/imx8mm-cl-iot-gate-optee_defconfig
@@ -30,6 +30,10 @@ CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_BOARD_INIT=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x920000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x42200000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x80000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_I2C=y
diff --git a/configs/imx8mm-cl-iot-gate_defconfig b/configs/imx8mm-cl-iot-gate_defconfig
index e630bcaf342f..67f7576f996b 100644
--- a/configs/imx8mm-cl-iot-gate_defconfig
+++ b/configs/imx8mm-cl-iot-gate_defconfig
@@ -32,6 +32,10 @@ CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_BOARD_INIT=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x920000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x42200000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x80000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_I2C=y
diff --git a/configs/imx8mm-icore-mx8mm-ctouch2_defconfig b/configs/imx8mm-icore-mx8mm-ctouch2_defconfig
index 1ac7766400ba..c95ff3e74fb4 100644
--- a/configs/imx8mm-icore-mx8mm-ctouch2_defconfig
+++ b/configs/imx8mm-icore-mx8mm-ctouch2_defconfig
@@ -30,6 +30,10 @@ CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_BOARD_INIT=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x920000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x42200000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x80000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_POWER=y
diff --git a/configs/imx8mm-icore-mx8mm-edimm2.2_defconfig b/configs/imx8mm-icore-mx8mm-edimm2.2_defconfig
index 08151f3f6927..62d239499690 100644
--- a/configs/imx8mm-icore-mx8mm-edimm2.2_defconfig
+++ b/configs/imx8mm-icore-mx8mm-edimm2.2_defconfig
@@ -30,6 +30,10 @@ CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_BOARD_INIT=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x920000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x42200000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x80000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_POWER=y
diff --git a/configs/imx8mm-mx8menlo_defconfig b/configs/imx8mm-mx8menlo_defconfig
index fa176e498fe8..ec672f8764e7 100644
--- a/configs/imx8mm-mx8menlo_defconfig
+++ b/configs/imx8mm-mx8menlo_defconfig
@@ -41,6 +41,10 @@ CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_BOARD_INIT=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x920000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x42200000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x80000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_I2C=y
diff --git a/configs/imx8mm_beacon_defconfig b/configs/imx8mm_beacon_defconfig
index 5ad7f28aa08d..417ece1ef8cd 100644
--- a/configs/imx8mm_beacon_defconfig
+++ b/configs/imx8mm_beacon_defconfig
@@ -32,6 +32,10 @@ CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_BOARD_INIT=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x920000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x42200000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x80000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_I2C=y
diff --git a/configs/imx8mm_data_modul_edm_sbc_defconfig b/configs/imx8mm_data_modul_edm_sbc_defconfig
index fbc6cecb91f9..399b388460f4 100644
--- a/configs/imx8mm_data_modul_edm_sbc_defconfig
+++ b/configs/imx8mm_data_modul_edm_sbc_defconfig
@@ -50,6 +50,10 @@ CONFIG_SPL_LEGACY_IMAGE_FORMAT=y
 CONFIG_SPL_LEGACY_IMAGE_CRC_CHECK=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x920000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x42200000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x1000000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_I2C=y
diff --git a/configs/imx8mm_evk_defconfig b/configs/imx8mm_evk_defconfig
index e5497ef8047c..00af724bbaa7 100644
--- a/configs/imx8mm_evk_defconfig
+++ b/configs/imx8mm_evk_defconfig
@@ -30,6 +30,10 @@ CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_BOARD_INIT=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x920000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x42200000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x80000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_I2C=y
diff --git a/configs/imx8mm_venice_defconfig b/configs/imx8mm_venice_defconfig
index fe6f8d03d4da..190209d63256 100644
--- a/configs/imx8mm_venice_defconfig
+++ b/configs/imx8mm_venice_defconfig
@@ -37,6 +37,9 @@ CONFIG_SPL_BSS_START_ADDR=0x910000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x920000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x42200000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_I2C=y
diff --git a/configs/imx8mn_beacon_2g_defconfig b/configs/imx8mn_beacon_2g_defconfig
index 28ce1d1f6e94..5b9b3715b341 100644
--- a/configs/imx8mn_beacon_2g_defconfig
+++ b/configs/imx8mn_beacon_2g_defconfig
@@ -40,6 +40,10 @@ CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_BOOTROM_SUPPORT=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x187ff0
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x42200000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x80000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_I2C=y
diff --git a/configs/imx8mn_beacon_defconfig b/configs/imx8mn_beacon_defconfig
index 3495bc0f9a19..b296898d6db7 100644
--- a/configs/imx8mn_beacon_defconfig
+++ b/configs/imx8mn_beacon_defconfig
@@ -39,6 +39,10 @@ CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_BOOTROM_SUPPORT=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x187ff0
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x42200000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x80000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_I2C=y
diff --git a/configs/imx8mn_bsh_smm_s2_defconfig b/configs/imx8mn_bsh_smm_s2_defconfig
index bfe89a5379b3..68c2940456d9 100644
--- a/configs/imx8mn_bsh_smm_s2_defconfig
+++ b/configs/imx8mn_bsh_smm_s2_defconfig
@@ -34,6 +34,10 @@ CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_BOOTROM_SUPPORT=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x980000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x42200000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x80000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_I2C=y
diff --git a/configs/imx8mn_bsh_smm_s2pro_defconfig b/configs/imx8mn_bsh_smm_s2pro_defconfig
index ab4c04f8059a..4bc551210515 100644
--- a/configs/imx8mn_bsh_smm_s2pro_defconfig
+++ b/configs/imx8mn_bsh_smm_s2pro_defconfig
@@ -35,6 +35,10 @@ CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_BOOTROM_SUPPORT=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x980000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x42200000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x80000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_I2C=y
diff --git a/configs/imx8mn_ddr4_evk_defconfig b/configs/imx8mn_ddr4_evk_defconfig
index 4ac98fefa85f..e16c1f60e674 100644
--- a/configs/imx8mn_ddr4_evk_defconfig
+++ b/configs/imx8mn_ddr4_evk_defconfig
@@ -33,6 +33,10 @@ CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_BOOTROM_SUPPORT=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x980000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x42200000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x80000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_I2C=y
diff --git a/configs/imx8mn_evk_defconfig b/configs/imx8mn_evk_defconfig
index a17b839e36bf..56145a1b6d4d 100644
--- a/configs/imx8mn_evk_defconfig
+++ b/configs/imx8mn_evk_defconfig
@@ -37,6 +37,10 @@ CONFIG_SPL_LEGACY_IMAGE_FORMAT=y
 CONFIG_SPL_LEGACY_IMAGE_CRC_CHECK=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x980000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x42200000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x80000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_I2C=y
diff --git a/configs/imx8mn_var_som_defconfig b/configs/imx8mn_var_som_defconfig
index 10ed2527c3a9..898f3f2f9f6f 100644
--- a/configs/imx8mn_var_som_defconfig
+++ b/configs/imx8mn_var_som_defconfig
@@ -35,6 +35,10 @@ CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_BOOTROM_SUPPORT=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x980000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x42200000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x80000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_I2C=y
diff --git a/configs/imx8mn_venice_defconfig b/configs/imx8mn_venice_defconfig
index 7479f997aae0..4a0bf393986c 100644
--- a/configs/imx8mn_venice_defconfig
+++ b/configs/imx8mn_venice_defconfig
@@ -39,6 +39,10 @@ CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_BOOTROM_SUPPORT=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x980000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x42200000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x80000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_I2C=y
diff --git a/configs/imx8mp_dhcom_pdk2_defconfig b/configs/imx8mp_dhcom_pdk2_defconfig
index 5aca5feda029..3a41767c1560 100644
--- a/configs/imx8mp_dhcom_pdk2_defconfig
+++ b/configs/imx8mp_dhcom_pdk2_defconfig
@@ -53,6 +53,10 @@ CONFIG_SPL_BOOTROM_SUPPORT=y
 # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x96fc00
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x4c000000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x80000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_I2C=y
diff --git a/configs/imx8mp_evk_defconfig b/configs/imx8mp_evk_defconfig
index ebd4db2b1c42..2b2a025c2b2f 100644
--- a/configs/imx8mp_evk_defconfig
+++ b/configs/imx8mp_evk_defconfig
@@ -37,6 +37,10 @@ CONFIG_SPL_BOOTROM_SUPPORT=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x960000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x42200000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x80000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_I2C=y
diff --git a/configs/imx8mp_rsb3720a1_4G_defconfig b/configs/imx8mp_rsb3720a1_4G_defconfig
index a8071fdfcf6a..97925196a85f 100644
--- a/configs/imx8mp_rsb3720a1_4G_defconfig
+++ b/configs/imx8mp_rsb3720a1_4G_defconfig
@@ -43,6 +43,10 @@ CONFIG_SPL_BOOTROM_SUPPORT=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x960000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x42200000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x80000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_I2C=y
diff --git a/configs/imx8mp_rsb3720a1_6G_defconfig b/configs/imx8mp_rsb3720a1_6G_defconfig
index 90800abf923d..df35dcbb7625 100644
--- a/configs/imx8mp_rsb3720a1_6G_defconfig
+++ b/configs/imx8mp_rsb3720a1_6G_defconfig
@@ -43,6 +43,10 @@ CONFIG_SPL_BOOTROM_SUPPORT=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x960000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x42200000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x80000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_I2C=y
diff --git a/configs/imx8mp_venice_defconfig b/configs/imx8mp_venice_defconfig
index 5367ea8489e6..cef5f26d0baa 100644
--- a/configs/imx8mp_venice_defconfig
+++ b/configs/imx8mp_venice_defconfig
@@ -39,6 +39,10 @@ CONFIG_SPL_BSS_MAX_SIZE=0x400
 CONFIG_SPL_BOOTROM_SUPPORT=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x960000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x42200000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x80000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_I2C=y
diff --git a/configs/imx8mq_cm_defconfig b/configs/imx8mq_cm_defconfig
index 4c25e95ab727..cd1ee4d9e702 100644
--- a/configs/imx8mq_cm_defconfig
+++ b/configs/imx8mq_cm_defconfig
@@ -34,6 +34,10 @@ CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_BOARD_INIT=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x187ff0
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x42200000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x80000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_I2C=y
diff --git a/configs/imx8mq_evk_defconfig b/configs/imx8mq_evk_defconfig
index a5917cc772a0..b2344822d5f1 100644
--- a/configs/imx8mq_evk_defconfig
+++ b/configs/imx8mq_evk_defconfig
@@ -36,6 +36,10 @@ CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_BOARD_INIT=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x187ff0
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x42200000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x80000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_I2C=y
diff --git a/configs/imx8mq_phanbell_defconfig b/configs/imx8mq_phanbell_defconfig
index 212ff07eee73..2c566e068fd9 100644
--- a/configs/imx8mq_phanbell_defconfig
+++ b/configs/imx8mq_phanbell_defconfig
@@ -38,6 +38,10 @@ CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_BOARD_INIT=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x187ff0
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x42200000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x80000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_I2C=y
diff --git a/configs/imx8qm_mek_defconfig b/configs/imx8qm_mek_defconfig
index abe074de8419..89e289a3b9e7 100644
--- a/configs/imx8qm_mek_defconfig
+++ b/configs/imx8qm_mek_defconfig
@@ -38,6 +38,10 @@ CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x13e000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x120000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x3000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x800
 CONFIG_SPL_POWER_DOMAIN=y
diff --git a/configs/imx8qxp_mek_defconfig b/configs/imx8qxp_mek_defconfig
index eda7739acb40..5c361780267f 100644
--- a/configs/imx8qxp_mek_defconfig
+++ b/configs/imx8qxp_mek_defconfig
@@ -38,6 +38,10 @@ CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x13e000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x120000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x3000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x800
 CONFIG_SPL_POWER_DOMAIN=y
diff --git a/configs/imx8ulp_evk_defconfig b/configs/imx8ulp_evk_defconfig
index c08197572a5e..d885206a472a 100644
--- a/configs/imx8ulp_evk_defconfig
+++ b/configs/imx8ulp_evk_defconfig
@@ -35,6 +35,10 @@ CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_BOOTROM_SUPPORT=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x22050000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x22040000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x8000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_WATCHDOG=y
diff --git a/configs/iot2050_defconfig b/configs/iot2050_defconfig
index 10f2cf4f814c..b50b5d093820 100644
--- a/configs/iot2050_defconfig
+++ b/configs/iot2050_defconfig
@@ -40,6 +40,8 @@ CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
 CONFIG_SPL_STACK_R=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x800000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x1400
 CONFIG_SPL_DM_MAILBOX=y
diff --git a/configs/j7200_evm_a72_defconfig b/configs/j7200_evm_a72_defconfig
index af7a30db61f4..828425960458 100644
--- a/configs/j7200_evm_a72_defconfig
+++ b/configs/j7200_evm_a72_defconfig
@@ -41,6 +41,8 @@ CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
 CONFIG_SPL_STACK_R=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x800000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x1400
 CONFIG_SPL_DMA=y
diff --git a/configs/j7200_evm_r5_defconfig b/configs/j7200_evm_r5_defconfig
index 4e82e092d6bb..a0f9f20f2f5c 100644
--- a/configs/j7200_evm_r5_defconfig
+++ b/configs/j7200_evm_r5_defconfig
@@ -37,6 +37,10 @@ CONFIG_SPL_BSS_MAX_SIZE=0xa000
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_SEPARATE_BSS=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x84000000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x1000000
 CONFIG_SPL_EARLY_BSS=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x400
diff --git a/configs/j721e_evm_a72_defconfig b/configs/j721e_evm_a72_defconfig
index 202ef8825afe..4cb4adb25b29 100644
--- a/configs/j721e_evm_a72_defconfig
+++ b/configs/j721e_evm_a72_defconfig
@@ -38,6 +38,8 @@ CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
 CONFIG_SPL_STACK_R=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x800000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x1400
 CONFIG_SPL_DMA=y
diff --git a/configs/j721e_evm_r5_defconfig b/configs/j721e_evm_r5_defconfig
index 6df4deac3e41..385e77d846d8 100644
--- a/configs/j721e_evm_r5_defconfig
+++ b/configs/j721e_evm_r5_defconfig
@@ -37,6 +37,10 @@ CONFIG_SPL_BSS_MAX_SIZE=0xa000
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_SEPARATE_BSS=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x84000000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x1000000
 CONFIG_SPL_EARLY_BSS=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x400
diff --git a/configs/j721e_hs_evm_a72_defconfig b/configs/j721e_hs_evm_a72_defconfig
index 161c2ecfb3c2..0f803b830399 100644
--- a/configs/j721e_hs_evm_a72_defconfig
+++ b/configs/j721e_hs_evm_a72_defconfig
@@ -39,6 +39,8 @@ CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
 CONFIG_SPL_STACK_R=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x800000
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot.img"
 CONFIG_SPL_I2C=y
diff --git a/configs/j721e_hs_evm_r5_defconfig b/configs/j721e_hs_evm_r5_defconfig
index ea1cc86a3bfa..02a666522386 100644
--- a/configs/j721e_hs_evm_r5_defconfig
+++ b/configs/j721e_hs_evm_r5_defconfig
@@ -37,6 +37,10 @@ CONFIG_SPL_BSS_START_ADDR=0x41cf5bfc
 CONFIG_SPL_BSS_MAX_SIZE=0xa000
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_SEPARATE_BSS=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x84000000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x1000000
 CONFIG_SPL_EARLY_BSS=y
 CONFIG_SPL_DMA=y
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/j721s2_evm_a72_defconfig b/configs/j721s2_evm_a72_defconfig
index 7903addb3d1d..14dfb6946f69 100644
--- a/configs/j721s2_evm_a72_defconfig
+++ b/configs/j721s2_evm_a72_defconfig
@@ -41,6 +41,8 @@ CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
 CONFIG_SPL_STACK_R=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x800000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x1400
 CONFIG_SPL_DMA=y
diff --git a/configs/j721s2_evm_r5_defconfig b/configs/j721s2_evm_r5_defconfig
index 1a548e7cda96..fb6e69197d11 100644
--- a/configs/j721s2_evm_r5_defconfig
+++ b/configs/j721s2_evm_r5_defconfig
@@ -43,6 +43,10 @@ CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_SEPARATE_BSS=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x84000000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x1000000
 CONFIG_SPL_EARLY_BSS=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x400
diff --git a/configs/jetson-tk1_defconfig b/configs/jetson-tk1_defconfig
index e0f32a5d63f2..b0c7ea3b994e 100644
--- a/configs/jetson-tk1_defconfig
+++ b/configs/jetson-tk1_defconfig
@@ -18,6 +18,10 @@ CONFIG_SPL_FOOTPRINT_LIMIT=y
 CONFIG_SPL_MAX_FOOTPRINT=0x8000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x800ffffc
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x80090000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x10000
 CONFIG_SYS_PROMPT="Tegra124 (Jetson TK1) # "
 CONFIG_SYS_MAXARGS=64
 CONFIG_SYS_PBSIZE=2089
diff --git a/configs/k2e_evm_defconfig b/configs/k2e_evm_defconfig
index e26bf3a2b477..9423b453c05a 100644
--- a/configs/k2e_evm_defconfig
+++ b/configs/k2e_evm_defconfig
@@ -35,6 +35,8 @@ CONFIG_SPL_BSS_START_ADDR=0xc10fff8
 CONFIG_SPL_BSS_MAX_SIZE=0x8000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xc1223f4
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SPL_NAND_DRIVERS=y
 CONFIG_SPL_NAND_ECC=y
diff --git a/configs/k2g_evm_defconfig b/configs/k2g_evm_defconfig
index e3f023690ea6..10150f5d6426 100644
--- a/configs/k2g_evm_defconfig
+++ b/configs/k2g_evm_defconfig
@@ -34,6 +34,8 @@ CONFIG_SPL_BSS_START_ADDR=0xc0afff8
 CONFIG_SPL_BSS_MAX_SIZE=0x8000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xc0c23f4
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SPL_NAND_DRIVERS=y
 CONFIG_SPL_NAND_ECC=y
diff --git a/configs/k2hk_evm_defconfig b/configs/k2hk_evm_defconfig
index f27873f558c4..2a2fb1d07177 100644
--- a/configs/k2hk_evm_defconfig
+++ b/configs/k2hk_evm_defconfig
@@ -35,6 +35,8 @@ CONFIG_SPL_BSS_START_ADDR=0xc20fff8
 CONFIG_SPL_BSS_MAX_SIZE=0x8000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xc2223f4
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SPL_NAND_DRIVERS=y
 CONFIG_SPL_NAND_ECC=y
diff --git a/configs/k2l_evm_defconfig b/configs/k2l_evm_defconfig
index b48feb2719d6..906e1042070f 100644
--- a/configs/k2l_evm_defconfig
+++ b/configs/k2l_evm_defconfig
@@ -35,6 +35,8 @@ CONFIG_SPL_BSS_START_ADDR=0xc10fff8
 CONFIG_SPL_BSS_MAX_SIZE=0x8000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xc1223f4
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x8000
 CONFIG_SPL_I2C=y
 CONFIG_SPL_NAND_DRIVERS=y
 CONFIG_SPL_NAND_ECC=y
diff --git a/configs/kontron-sl-mx6ul_defconfig b/configs/kontron-sl-mx6ul_defconfig
index 1ba4d1fca841..efa7a06886a9 100644
--- a/configs/kontron-sl-mx6ul_defconfig
+++ b/configs/kontron-sl-mx6ul_defconfig
@@ -28,6 +28,7 @@ CONFIG_BOARD_TYPES=y
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_SPL_LEGACY_IMAGE_FORMAT=y
 CONFIG_SPL_LEGACY_IMAGE_CRC_CHECK=y
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_USB_HOST=y
 CONFIG_SPL_USB_GADGET=y
 CONFIG_SPL_WATCHDOG=y
diff --git a/configs/kontron-sl-mx8mm_defconfig b/configs/kontron-sl-mx8mm_defconfig
index a2584c606f88..0fceb60c6127 100644
--- a/configs/kontron-sl-mx8mm_defconfig
+++ b/configs/kontron-sl-mx8mm_defconfig
@@ -33,6 +33,10 @@ CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_BOARD_INIT=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x91fff0
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x42200000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x80000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 # CONFIG_SPL_FIT_IMAGE_TINY is not set
diff --git a/configs/kontron_pitx_imx8m_defconfig b/configs/kontron_pitx_imx8m_defconfig
index e8f653bf817e..27a89f9b1b66 100644
--- a/configs/kontron_pitx_imx8m_defconfig
+++ b/configs/kontron_pitx_imx8m_defconfig
@@ -36,6 +36,10 @@ CONFIG_SPL_BSS_START_ADDR=0x180000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x187ff0
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x42200000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x80000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_I2C=y
diff --git a/configs/kontron_sl28_defconfig b/configs/kontron_sl28_defconfig
index 05627bb7dc78..aaabb14f91a2 100644
--- a/configs/kontron_sl28_defconfig
+++ b/configs/kontron_sl28_defconfig
@@ -44,6 +44,7 @@ CONFIG_SPL_BSS_MAX_SIZE=0x100000
 CONFIG_SPL_BOARD_INIT=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x18009ff0
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x230000
diff --git a/configs/kp_imx6q_tpc_defconfig b/configs/kp_imx6q_tpc_defconfig
index 012a5c492ed1..8c5010d60523 100644
--- a/configs/kp_imx6q_tpc_defconfig
+++ b/configs/kp_imx6q_tpc_defconfig
@@ -27,6 +27,7 @@ CONFIG_AUTOBOOT_STOP_STR="."
 # CONFIG_USE_BOOTCOMMAND is not set
 CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
 CONFIG_SPL_RAW_IMAGE_SUPPORT=y
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_POWER=y
 CONFIG_SPL_WATCHDOG=y
 CONFIG_SYS_MAXARGS=32
diff --git a/configs/liteboard_defconfig b/configs/liteboard_defconfig
index 334b22ac8ab2..24e71bb48d88 100644
--- a/configs/liteboard_defconfig
+++ b/configs/liteboard_defconfig
@@ -24,6 +24,7 @@ CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="mmc dev ${mmcdev};if mmc rescan; then if run loadbootscript; then run bootscript; else if run loadimage; then run mmcboot; else run netboot; fi; fi; else run netboot; fi"
 CONFIG_DEFAULT_FDT_FILE="imx6ul-liteboard.dtb"
 CONFIG_BOARD_EARLY_INIT_F=y
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_WATCHDOG=y
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_MAXARGS=32
diff --git a/configs/ls1021aiot_sdcard_defconfig b/configs/ls1021aiot_sdcard_defconfig
index 4bfc5aae58b7..d34897a50808 100644
--- a/configs/ls1021aiot_sdcard_defconfig
+++ b/configs/ls1021aiot_sdcard_defconfig
@@ -39,6 +39,9 @@ CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_FSL_PBL=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x1001d000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x82080000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0xe8
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/ls1021aqds_nand_defconfig b/configs/ls1021aqds_nand_defconfig
index fb3447cc4708..cfa81baff608 100644
--- a/configs/ls1021aqds_nand_defconfig
+++ b/configs/ls1021aqds_nand_defconfig
@@ -49,6 +49,9 @@ CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_FSL_PBL=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x1001d000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x80200000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0xe8
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/ls1021aqds_sdcard_ifc_defconfig b/configs/ls1021aqds_sdcard_ifc_defconfig
index 6e686c65e083..164e8b017680 100644
--- a/configs/ls1021aqds_sdcard_ifc_defconfig
+++ b/configs/ls1021aqds_sdcard_ifc_defconfig
@@ -48,6 +48,9 @@ CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_FSL_PBL=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x1001d000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x820c0000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0xe8
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/ls1021aqds_sdcard_qspi_defconfig b/configs/ls1021aqds_sdcard_qspi_defconfig
index 318f4f5dd63c..8a6357b0b21b 100644
--- a/configs/ls1021aqds_sdcard_qspi_defconfig
+++ b/configs/ls1021aqds_sdcard_qspi_defconfig
@@ -47,6 +47,9 @@ CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_FSL_PBL=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x1001d000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x820c0000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0xe8
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/ls1021atsn_sdcard_defconfig b/configs/ls1021atsn_sdcard_defconfig
index 35a383ce5726..5e93f730b32e 100644
--- a/configs/ls1021atsn_sdcard_defconfig
+++ b/configs/ls1021atsn_sdcard_defconfig
@@ -41,6 +41,9 @@ CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_FSL_PBL=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x1001d000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x82100000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0xe8
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/ls1021atwr_sdcard_ifc_SECURE_BOOT_defconfig b/configs/ls1021atwr_sdcard_ifc_SECURE_BOOT_defconfig
index d4d2e8b6530d..f16c156490d0 100644
--- a/configs/ls1021atwr_sdcard_ifc_SECURE_BOOT_defconfig
+++ b/configs/ls1021atwr_sdcard_ifc_SECURE_BOOT_defconfig
@@ -48,6 +48,9 @@ CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_FSL_PBL=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x1001d000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x82104000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0xe8
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/ls1021atwr_sdcard_ifc_defconfig b/configs/ls1021atwr_sdcard_ifc_defconfig
index eaafb72bceab..c9a265d78198 100644
--- a/configs/ls1021atwr_sdcard_ifc_defconfig
+++ b/configs/ls1021atwr_sdcard_ifc_defconfig
@@ -49,6 +49,9 @@ CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_FSL_PBL=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x1001d000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x82100000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0xe8
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/ls1021atwr_sdcard_qspi_defconfig b/configs/ls1021atwr_sdcard_qspi_defconfig
index a82098e243bb..e4f2b8582353 100644
--- a/configs/ls1021atwr_sdcard_qspi_defconfig
+++ b/configs/ls1021atwr_sdcard_qspi_defconfig
@@ -50,6 +50,9 @@ CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_FSL_PBL=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x1001d000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x82100000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0xe8
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/ls1043aqds_nand_defconfig b/configs/ls1043aqds_nand_defconfig
index a8d392de0986..1fe04fe769eb 100644
--- a/configs/ls1043aqds_nand_defconfig
+++ b/configs/ls1043aqds_nand_defconfig
@@ -55,6 +55,9 @@ CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_FSL_PBL=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x1001d000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x80200000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0xf0
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/ls1043aqds_sdcard_ifc_defconfig b/configs/ls1043aqds_sdcard_ifc_defconfig
index b284f62f1e3c..21231cb416f2 100644
--- a/configs/ls1043aqds_sdcard_ifc_defconfig
+++ b/configs/ls1043aqds_sdcard_ifc_defconfig
@@ -56,6 +56,7 @@ CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_FSL_PBL=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x1001e000
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0xf0
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/ls1043aqds_sdcard_qspi_defconfig b/configs/ls1043aqds_sdcard_qspi_defconfig
index ad0ec877f07c..799145872770 100644
--- a/configs/ls1043aqds_sdcard_qspi_defconfig
+++ b/configs/ls1043aqds_sdcard_qspi_defconfig
@@ -56,6 +56,7 @@ CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_FSL_PBL=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x1001e000
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0xf0
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/ls1043ardb_nand_SECURE_BOOT_defconfig b/configs/ls1043ardb_nand_SECURE_BOOT_defconfig
index 0b96c451a9bb..401bc393b237 100644
--- a/configs/ls1043ardb_nand_SECURE_BOOT_defconfig
+++ b/configs/ls1043ardb_nand_SECURE_BOOT_defconfig
@@ -39,6 +39,9 @@ CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_FSL_PBL=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x1001d000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x80200000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0xf0
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/ls1043ardb_nand_defconfig b/configs/ls1043ardb_nand_defconfig
index c19ae3bc8114..3c5e5ce0ae82 100644
--- a/configs/ls1043ardb_nand_defconfig
+++ b/configs/ls1043ardb_nand_defconfig
@@ -45,6 +45,9 @@ CONFIG_SPL_FSL_PBL=y
 CONFIG_SPL_BOARD_INIT=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x1001d000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x80200000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0xf0
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/ls1043ardb_sdcard_SECURE_BOOT_defconfig b/configs/ls1043ardb_sdcard_SECURE_BOOT_defconfig
index e18ab7aadcb7..9d29c365c6eb 100644
--- a/configs/ls1043ardb_sdcard_SECURE_BOOT_defconfig
+++ b/configs/ls1043ardb_sdcard_SECURE_BOOT_defconfig
@@ -40,6 +40,7 @@ CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_FSL_PBL=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x1001e000
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x110
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/ls1043ardb_sdcard_defconfig b/configs/ls1043ardb_sdcard_defconfig
index 3f1868e92fb6..0c348615fa38 100644
--- a/configs/ls1043ardb_sdcard_defconfig
+++ b/configs/ls1043ardb_sdcard_defconfig
@@ -46,6 +46,7 @@ CONFIG_SPL_FSL_PBL=y
 CONFIG_SPL_BOARD_INIT=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x1001e000
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0xf0
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/ls1046aqds_nand_defconfig b/configs/ls1046aqds_nand_defconfig
index 39f52c378722..d63e5a53e4f0 100644
--- a/configs/ls1046aqds_nand_defconfig
+++ b/configs/ls1046aqds_nand_defconfig
@@ -56,6 +56,7 @@ CONFIG_SPL_FSL_PBL=y
 CONFIG_SPL_BOARD_INIT=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x1001f000
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x110
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/ls1046aqds_sdcard_ifc_defconfig b/configs/ls1046aqds_sdcard_ifc_defconfig
index a9fb89fb918b..0fa3ea1c360f 100644
--- a/configs/ls1046aqds_sdcard_ifc_defconfig
+++ b/configs/ls1046aqds_sdcard_ifc_defconfig
@@ -57,6 +57,7 @@ CONFIG_SPL_FSL_PBL=y
 CONFIG_SPL_BOARD_INIT=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x10020000
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x110
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/ls1046aqds_sdcard_qspi_defconfig b/configs/ls1046aqds_sdcard_qspi_defconfig
index 37a11070848d..e55712fce1f0 100644
--- a/configs/ls1046aqds_sdcard_qspi_defconfig
+++ b/configs/ls1046aqds_sdcard_qspi_defconfig
@@ -57,6 +57,7 @@ CONFIG_SPL_FSL_PBL=y
 CONFIG_SPL_BOARD_INIT=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x10020000
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x110
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/ls1046ardb_emmc_defconfig b/configs/ls1046ardb_emmc_defconfig
index 7b42e8d9ddb4..9cba997eb43e 100644
--- a/configs/ls1046ardb_emmc_defconfig
+++ b/configs/ls1046ardb_emmc_defconfig
@@ -47,6 +47,7 @@ CONFIG_SPL_FSL_PBL=y
 CONFIG_SPL_BOARD_INIT=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x10020000
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x110
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/ls1046ardb_qspi_spl_defconfig b/configs/ls1046ardb_qspi_spl_defconfig
index ac8cd7c2de70..c081b786a122 100644
--- a/configs/ls1046ardb_qspi_spl_defconfig
+++ b/configs/ls1046ardb_qspi_spl_defconfig
@@ -50,6 +50,7 @@ CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_BOARD_INIT=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x10020000
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
diff --git a/configs/ls1046ardb_sdcard_SECURE_BOOT_defconfig b/configs/ls1046ardb_sdcard_SECURE_BOOT_defconfig
index 0679d94dc75b..4301d38eb77e 100644
--- a/configs/ls1046ardb_sdcard_SECURE_BOOT_defconfig
+++ b/configs/ls1046ardb_sdcard_SECURE_BOOT_defconfig
@@ -44,6 +44,7 @@ CONFIG_SPL_BSS_MAX_SIZE=0x80000
 CONFIG_SPL_FSL_PBL=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x10020000
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x110
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/ls1046ardb_sdcard_defconfig b/configs/ls1046ardb_sdcard_defconfig
index 17378cbddffc..50efffa442f7 100644
--- a/configs/ls1046ardb_sdcard_defconfig
+++ b/configs/ls1046ardb_sdcard_defconfig
@@ -47,6 +47,7 @@ CONFIG_SPL_FSL_PBL=y
 CONFIG_SPL_BOARD_INIT=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x10020000
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x110
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/ls1088aqds_sdcard_ifc_defconfig b/configs/ls1088aqds_sdcard_ifc_defconfig
index 0cc3d429a375..b2e8132446d0 100644
--- a/configs/ls1088aqds_sdcard_ifc_defconfig
+++ b/configs/ls1088aqds_sdcard_ifc_defconfig
@@ -47,6 +47,7 @@ CONFIG_SPL_BSS_START_ADDR=0x80100000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x18009ff0
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x8b0
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/ls1088aqds_sdcard_qspi_defconfig b/configs/ls1088aqds_sdcard_qspi_defconfig
index 89911ae35579..40306d612a45 100644
--- a/configs/ls1088aqds_sdcard_qspi_defconfig
+++ b/configs/ls1088aqds_sdcard_qspi_defconfig
@@ -48,6 +48,7 @@ CONFIG_SPL_BSS_START_ADDR=0x80100000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x18009ff0
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x8b0
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/ls1088ardb_sdcard_qspi_SECURE_BOOT_defconfig b/configs/ls1088ardb_sdcard_qspi_SECURE_BOOT_defconfig
index 0fec4f384aec..bc44ede08c77 100644
--- a/configs/ls1088ardb_sdcard_qspi_SECURE_BOOT_defconfig
+++ b/configs/ls1088ardb_sdcard_qspi_SECURE_BOOT_defconfig
@@ -48,6 +48,7 @@ CONFIG_SPL_BSS_START_ADDR=0x80100000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x18009ff0
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x8b0
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/ls1088ardb_sdcard_qspi_defconfig b/configs/ls1088ardb_sdcard_qspi_defconfig
index a3702899aaca..ad0e583188ba 100644
--- a/configs/ls1088ardb_sdcard_qspi_defconfig
+++ b/configs/ls1088ardb_sdcard_qspi_defconfig
@@ -49,6 +49,7 @@ CONFIG_SPL_BSS_START_ADDR=0x80100000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x18009ff0
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x8b0
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/ls2080aqds_nand_defconfig b/configs/ls2080aqds_nand_defconfig
index 65558911f159..209202dc75db 100644
--- a/configs/ls2080aqds_nand_defconfig
+++ b/configs/ls2080aqds_nand_defconfig
@@ -40,6 +40,7 @@ CONFIG_SPL_BSS_START_ADDR=0x80100000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x18009ff0
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
diff --git a/configs/ls2080aqds_sdcard_defconfig b/configs/ls2080aqds_sdcard_defconfig
index 590eba601d71..0f40fa60f189 100644
--- a/configs/ls2080aqds_sdcard_defconfig
+++ b/configs/ls2080aqds_sdcard_defconfig
@@ -40,6 +40,7 @@ CONFIG_SPL_BSS_START_ADDR=0x80100000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x18009ff0
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x8b0
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/ls2080ardb_nand_defconfig b/configs/ls2080ardb_nand_defconfig
index 17fe433a54aa..f36cf47cff21 100644
--- a/configs/ls2080ardb_nand_defconfig
+++ b/configs/ls2080ardb_nand_defconfig
@@ -46,6 +46,7 @@ CONFIG_SPL_BSS_START_ADDR=0x80100000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x18009ff0
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
diff --git a/configs/mccmon6_nor_defconfig b/configs/mccmon6_nor_defconfig
index 3718d08b6700..1214163af392 100644
--- a/configs/mccmon6_nor_defconfig
+++ b/configs/mccmon6_nor_defconfig
@@ -24,6 +24,7 @@ CONFIG_SPL_LOAD_FIT=y
 # CONFIG_USE_BOOTCOMMAND is not set
 CONFIG_BOARD_LATE_INIT=y
 CONFIG_SPL_BOARD_INIT=y
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_FIT_IMAGE_TINY=y
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_NOR_SUPPORT=y
diff --git a/configs/mccmon6_sd_defconfig b/configs/mccmon6_sd_defconfig
index 3228050dd206..6984256a1c2d 100644
--- a/configs/mccmon6_sd_defconfig
+++ b/configs/mccmon6_sd_defconfig
@@ -25,6 +25,7 @@ CONFIG_SPL_LOAD_FIT=y
 # CONFIG_USE_BOOTCOMMAND is not set
 CONFIG_BOARD_LATE_INIT=y
 CONFIG_SPL_BOARD_INIT=y
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_NOR_SUPPORT=y
 CONFIG_SYS_MAXARGS=32
diff --git a/configs/medcom-wide_defconfig b/configs/medcom-wide_defconfig
index 855b88b75a60..dd402f286bac 100644
--- a/configs/medcom-wide_defconfig
+++ b/configs/medcom-wide_defconfig
@@ -17,6 +17,10 @@ CONFIG_SPL_FOOTPRINT_LIMIT=y
 CONFIG_SPL_MAX_FOOTPRINT=0x8000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xffffc
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x90000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x10000
 CONFIG_SYS_PROMPT="Tegra20 (Medcom-Wide) # "
 CONFIG_SYS_MAXARGS=64
 CONFIG_SYS_PBSIZE=2089
diff --git a/configs/mx6cuboxi_defconfig b/configs/mx6cuboxi_defconfig
index 41122ade90e1..d68335b5b68d 100644
--- a/configs/mx6cuboxi_defconfig
+++ b/configs/mx6cuboxi_defconfig
@@ -26,6 +26,7 @@ CONFIG_BOOTCOMMAND="run findfdt; run finduuid; run distro_bootcmd"
 CONFIG_USE_PREBOOT=y
 CONFIG_PREBOOT="if hdmidet; then usb start; setenv stdin  serial,usbkbd; setenv stdout serial,vidconsole; setenv stderr serial,vidconsole; else setenv stdin  serial; setenv stdout serial; setenv stderr serial; fi;"
 CONFIG_BOARD_EARLY_INIT_F=y
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_FS_EXT4=y
 CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot-dtb.img"
 CONFIG_SPL_I2C=y
diff --git a/configs/mx6memcal_defconfig b/configs/mx6memcal_defconfig
index d555dbf7b1be..a1bc95bb4a1c 100644
--- a/configs/mx6memcal_defconfig
+++ b/configs/mx6memcal_defconfig
@@ -15,6 +15,7 @@ CONFIG_SPL=y
 CONFIG_SYS_MEMTEST_START=0x10000000
 CONFIG_SYS_MEMTEST_END=0x20000000
 CONFIG_SUPPORT_RAW_INITRD=y
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_USB_HOST=y
 CONFIG_SPL_WATCHDOG=y
 CONFIG_HUSH_PARSER=y
diff --git a/configs/mx6sabreauto_defconfig b/configs/mx6sabreauto_defconfig
index 3d2e906f934b..900fbf7ca711 100644
--- a/configs/mx6sabreauto_defconfig
+++ b/configs/mx6sabreauto_defconfig
@@ -33,6 +33,7 @@ CONFIG_BOOTCOMMAND="run findfdt;mmc dev ${mmcdev};if mmc rescan; then if run loa
 CONFIG_SYS_CONSOLE_IS_IN_ENV=y
 CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
 CONFIG_SPL_LEGACY_IMAGE_FORMAT=y
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_FIT_IMAGE_TINY=y
 CONFIG_SPL_FS_EXT4=y
 CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot-dtb.img"
diff --git a/configs/mx6sabresd_defconfig b/configs/mx6sabresd_defconfig
index 33d8db9dff23..15dbaf848cd7 100644
--- a/configs/mx6sabresd_defconfig
+++ b/configs/mx6sabresd_defconfig
@@ -32,6 +32,7 @@ CONFIG_BOOTCOMMAND="run findfdt;mmc dev ${mmcdev};if mmc rescan; then if run loa
 CONFIG_SYS_CONSOLE_IS_IN_ENV=y
 CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
 CONFIG_SPL_LEGACY_IMAGE_FORMAT=y
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_FIT_IMAGE_TINY=y
 CONFIG_SPL_USB_HOST=y
 CONFIG_SPL_USB_GADGET=y
diff --git a/configs/mx6slevk_spl_defconfig b/configs/mx6slevk_spl_defconfig
index 24407c113d65..c05c33d0df88 100644
--- a/configs/mx6slevk_spl_defconfig
+++ b/configs/mx6slevk_spl_defconfig
@@ -25,6 +25,7 @@ CONFIG_SUPPORT_RAW_INITRD=y
 CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="mmc dev ${mmcdev}; if mmc rescan; then if run loadbootscript; then run bootscript; else if run loadimage; then run mmcboot; else run netboot; fi; fi; else run netboot; fi"
 CONFIG_BOARD_EARLY_INIT_F=y
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_FS_EXT4=y
 CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot-dtb.img"
 CONFIG_SPL_I2C=y
diff --git a/configs/mx6ul_14x14_evk_defconfig b/configs/mx6ul_14x14_evk_defconfig
index 065ead0a7ad2..10f6b4f099a0 100644
--- a/configs/mx6ul_14x14_evk_defconfig
+++ b/configs/mx6ul_14x14_evk_defconfig
@@ -27,6 +27,7 @@ CONFIG_BOOTCOMMAND="run findfdt;mmc dev ${mmcdev};mmc dev ${mmcdev}; if mmc resc
 # CONFIG_CONSOLE_MUX is not set
 CONFIG_SYS_CONSOLE_IS_IN_ENV=y
 CONFIG_BOARD_EARLY_INIT_F=y
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_FS_EXT4=y
 CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot-dtb.img"
 CONFIG_SPL_I2C=y
diff --git a/configs/mx6ul_9x9_evk_defconfig b/configs/mx6ul_9x9_evk_defconfig
index 2f46b68cbe97..de77e4fed6df 100644
--- a/configs/mx6ul_9x9_evk_defconfig
+++ b/configs/mx6ul_9x9_evk_defconfig
@@ -27,6 +27,7 @@ CONFIG_BOOTCOMMAND="run findfdt;mmc dev ${mmcdev};mmc dev ${mmcdev}; if mmc resc
 # CONFIG_CONSOLE_MUX is not set
 CONFIG_SYS_CONSOLE_IS_IN_ENV=y
 CONFIG_BOARD_EARLY_INIT_F=y
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_FS_EXT4=y
 CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot-dtb.img"
 CONFIG_SPL_I2C=y
diff --git a/configs/myir_mys_6ulx_defconfig b/configs/myir_mys_6ulx_defconfig
index f5ccf669f292..f748b4dd66ba 100644
--- a/configs/myir_mys_6ulx_defconfig
+++ b/configs/myir_mys_6ulx_defconfig
@@ -19,6 +19,7 @@ CONFIG_DISTRO_DEFAULTS=y
 CONFIG_FIT=y
 CONFIG_BOOTDELAY=3
 CONFIG_BOARD_EARLY_INIT_F=y
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_DMA=y
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_SPL_USB_HOST=y
diff --git a/configs/novena_defconfig b/configs/novena_defconfig
index 215aaa605b52..77d7afa6df80 100644
--- a/configs/novena_defconfig
+++ b/configs/novena_defconfig
@@ -31,6 +31,7 @@ CONFIG_BOOTARGS="console=ttymxc1,115200 "
 CONFIG_BOOTCOMMAND="run distro_bootcmd ; run net_nfs"
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_MISC_INIT_R=y
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_FS_EXT4=y
 CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot-dtb.img"
 CONFIG_SPL_I2C=y
diff --git a/configs/nyan-big_defconfig b/configs/nyan-big_defconfig
index 1ffddbe35e36..489ff63595c9 100644
--- a/configs/nyan-big_defconfig
+++ b/configs/nyan-big_defconfig
@@ -27,6 +27,10 @@ CONFIG_SPL_FOOTPRINT_LIMIT=y
 CONFIG_SPL_MAX_FOOTPRINT=0xef8100
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x800ffffc
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x80090000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x10000
 CONFIG_SYS_PROMPT="Tegra124 (Nyan-big) # "
 CONFIG_SYS_MAXARGS=64
 CONFIG_SYS_PBSIZE=2087
diff --git a/configs/omap35_logic_defconfig b/configs/omap35_logic_defconfig
index d4b24f4cbd4f..e5fcba8caf17 100644
--- a/configs/omap35_logic_defconfig
+++ b/configs/omap35_logic_defconfig
@@ -24,6 +24,8 @@ CONFIG_DEFAULT_FDT_FILE="logicpd-torpedo-35xx-devkit.dtb"
 CONFIG_SYS_CONSOLE_INFO_QUIET=y
 CONFIG_SPL_MAX_SIZE=0xec00
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x800000
 # CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR is not set
 # CONFIG_SPL_FS_EXT4 is not set
 # CONFIG_SPL_I2C is not set
diff --git a/configs/omap35_logic_somlv_defconfig b/configs/omap35_logic_somlv_defconfig
index 778b15f05a27..45aee91b3722 100644
--- a/configs/omap35_logic_somlv_defconfig
+++ b/configs/omap35_logic_somlv_defconfig
@@ -25,6 +25,8 @@ CONFIG_DEFAULT_FDT_FILE="logicpd-som-lv-35xx-devkit.dtb"
 CONFIG_SYS_CONSOLE_INFO_QUIET=y
 CONFIG_SPL_MAX_SIZE=0xec00
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x800000
 # CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR is not set
 # CONFIG_SPL_FS_EXT4 is not set
 # CONFIG_SPL_I2C is not set
diff --git a/configs/omap3_beagle_defconfig b/configs/omap3_beagle_defconfig
index abd15b4d1af4..547938078640 100644
--- a/configs/omap3_beagle_defconfig
+++ b/configs/omap3_beagle_defconfig
@@ -18,6 +18,8 @@ CONFIG_DEFAULT_FDT_FILE="omap3-beagle.dtb"
 CONFIG_SYS_CONSOLE_INFO_QUIET=y
 CONFIG_SPL_MAX_SIZE=0xec00
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x800000
 # CONFIG_SPL_FS_EXT4 is not set
 CONFIG_SPL_MTD_SUPPORT=y
 CONFIG_SPL_NAND_DRIVERS=y
diff --git a/configs/omap3_evm_defconfig b/configs/omap3_evm_defconfig
index d981ee5d7a87..78b7a69ea352 100644
--- a/configs/omap3_evm_defconfig
+++ b/configs/omap3_evm_defconfig
@@ -18,6 +18,8 @@ CONFIG_DEFAULT_FDT_FILE="omap3-evm.dtb"
 CONFIG_SYS_CONSOLE_INFO_QUIET=y
 CONFIG_SPL_MAX_SIZE=0xec00
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x800000
 # CONFIG_SPL_FS_EXT4 is not set
 CONFIG_SPL_MTD_SUPPORT=y
 CONFIG_SPL_NAND_DRIVERS=y
diff --git a/configs/omap3_logic_defconfig b/configs/omap3_logic_defconfig
index 19a4da16101c..9b2a8064449c 100644
--- a/configs/omap3_logic_defconfig
+++ b/configs/omap3_logic_defconfig
@@ -23,6 +23,8 @@ CONFIG_PREBOOT="setenv preboot;saveenv;"
 CONFIG_SYS_CONSOLE_INFO_QUIET=y
 CONFIG_SPL_MAX_SIZE=0xec00
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x800000
 # CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR is not set
 # CONFIG_SPL_FS_EXT4 is not set
 # CONFIG_SPL_I2C is not set
diff --git a/configs/omap3_logic_somlv_defconfig b/configs/omap3_logic_somlv_defconfig
index 0f353bf3e093..ee36800d6471 100644
--- a/configs/omap3_logic_somlv_defconfig
+++ b/configs/omap3_logic_somlv_defconfig
@@ -25,6 +25,8 @@ CONFIG_DEFAULT_FDT_FILE="logicpd-som-lv-37xx-devkit.dtb"
 CONFIG_SYS_CONSOLE_INFO_QUIET=y
 CONFIG_SPL_MAX_SIZE=0xec00
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x800000
 # CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR is not set
 # CONFIG_SPL_FS_EXT4 is not set
 # CONFIG_SPL_I2C is not set
diff --git a/configs/omap4_panda_defconfig b/configs/omap4_panda_defconfig
index 23599cf845c2..c51627dcf9c8 100644
--- a/configs/omap4_panda_defconfig
+++ b/configs/omap4_panda_defconfig
@@ -14,6 +14,8 @@ CONFIG_DEFAULT_FDT_FILE="omap4-panda.dtb"
 CONFIG_SYS_CONSOLE_IS_IN_ENV=y
 CONFIG_SYS_CONSOLE_INFO_QUIET=y
 CONFIG_SPL_MAX_SIZE=0xbc00
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x800000
 # CONFIG_SPL_FS_EXT4 is not set
 # CONFIG_SPL_I2C is not set
 # CONFIG_SPL_NAND_SUPPORT is not set
diff --git a/configs/omap4_sdp4430_defconfig b/configs/omap4_sdp4430_defconfig
index d43262a87454..62eb75d1f9ae 100644
--- a/configs/omap4_sdp4430_defconfig
+++ b/configs/omap4_sdp4430_defconfig
@@ -18,6 +18,8 @@ CONFIG_DEFAULT_FDT_FILE="omap4-sdp.dtb"
 CONFIG_SYS_CONSOLE_IS_IN_ENV=y
 CONFIG_SYS_CONSOLE_INFO_QUIET=y
 CONFIG_SPL_MAX_SIZE=0xbc00
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x800000
 # CONFIG_SPL_I2C is not set
 # CONFIG_SPL_NAND_SUPPORT is not set
 CONFIG_SYS_MAXARGS=64
diff --git a/configs/omap5_uevm_defconfig b/configs/omap5_uevm_defconfig
index 53ae1e651957..03b874576dfa 100644
--- a/configs/omap5_uevm_defconfig
+++ b/configs/omap5_uevm_defconfig
@@ -17,6 +17,8 @@ CONFIG_BOOTCOMMAND="if test ${dofastboot} -eq 1; then echo Boot fastboot request
 CONFIG_DEFAULT_FDT_FILE="omap5-uevm.dtb"
 CONFIG_SYS_CONSOLE_INFO_QUIET=y
 CONFIG_SPL_MAX_SIZE=0x1dc00
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x800000
 # CONFIG_SPL_NAND_SUPPORT is not set
 CONFIG_SPL_OS_BOOT=y
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
diff --git a/configs/omapl138_lcdk_defconfig b/configs/omapl138_lcdk_defconfig
index 65ece99ea466..b45f6d8564e9 100644
--- a/configs/omapl138_lcdk_defconfig
+++ b/configs/omapl138_lcdk_defconfig
@@ -41,6 +41,10 @@ CONFIG_SPL_MAX_FOOTPRINT=0x8000
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x8001ff00
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0xc0f70000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x110000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0xb5
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_SPL_NAND_DRIVERS=y
diff --git a/configs/openpiton_riscv64_spl_defconfig b/configs/openpiton_riscv64_spl_defconfig
index 54c59a3a35e7..bf0e09b73c8e 100644
--- a/configs/openpiton_riscv64_spl_defconfig
+++ b/configs/openpiton_riscv64_spl_defconfig
@@ -28,6 +28,7 @@ CONFIG_SPL_BSS_START_ADDR=0x82000000
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x83fffe80
+CONFIG_SYS_SPL_MALLOC=y
 # CONFIG_SPL_BANNER_PRINT is not set
 CONFIG_SPL_CPU=y
 CONFIG_SPL_FS_EXT4=y
diff --git a/configs/opos6uldev_defconfig b/configs/opos6uldev_defconfig
index 8b0b4c33e140..1c1daf86a3b6 100644
--- a/configs/opos6uldev_defconfig
+++ b/configs/opos6uldev_defconfig
@@ -31,6 +31,7 @@ CONFIG_DEFAULT_FDT_FILE="imx6ul-opos6uldev.dtb"
 # CONFIG_CONSOLE_MUX is not set
 CONFIG_SYS_CONSOLE_IS_IN_ENV=y
 CONFIG_SPL_BOARD_INIT=y
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_WATCHDOG=y
 CONFIG_SPL_YMODEM_SUPPORT=y
diff --git a/configs/paz00_defconfig b/configs/paz00_defconfig
index 091c9a2b4846..0aa8a7673a31 100644
--- a/configs/paz00_defconfig
+++ b/configs/paz00_defconfig
@@ -16,6 +16,10 @@ CONFIG_SPL_FOOTPRINT_LIMIT=y
 CONFIG_SPL_MAX_FOOTPRINT=0x8000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xffffc
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x90000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x10000
 CONFIG_SYS_PROMPT="Tegra20 (Paz00) MOD # "
 CONFIG_SYS_MAXARGS=64
 CONFIG_SYS_PBSIZE=2087
diff --git a/configs/pcm058_defconfig b/configs/pcm058_defconfig
index 54bef4e062e3..132942bf554c 100644
--- a/configs/pcm058_defconfig
+++ b/configs/pcm058_defconfig
@@ -30,6 +30,7 @@ CONFIG_BOOTDELAY=3
 CONFIG_BOOTCOMMAND="run mmcboot;run nandboot"
 CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_SPL_BOARD_INIT=y
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x18a
 CONFIG_SPL_DMA=y
 CONFIG_SPL_FS_EXT4=y
diff --git a/configs/phycore-am335x-r2-regor_defconfig b/configs/phycore-am335x-r2-regor_defconfig
index 87ab811946cd..27342294f797 100644
--- a/configs/phycore-am335x-r2-regor_defconfig
+++ b/configs/phycore-am335x-r2-regor_defconfig
@@ -24,6 +24,8 @@ CONFIG_BOOTCOMMAND="run distro_bootcmd"
 CONFIG_DEFAULT_FDT_FILE="am335x-regor-rdk.dtb"
 CONFIG_SYS_CONSOLE_INFO_QUIET=y
 CONFIG_ARCH_MISC_INIT=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x800000
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MTD_SUPPORT=y
 CONFIG_SPL_NAND_DRIVERS=y
diff --git a/configs/phycore-am335x-r2-wega_defconfig b/configs/phycore-am335x-r2-wega_defconfig
index 0bd348b5f0f8..95905b4ba4c5 100644
--- a/configs/phycore-am335x-r2-wega_defconfig
+++ b/configs/phycore-am335x-r2-wega_defconfig
@@ -24,6 +24,8 @@ CONFIG_BOOTCOMMAND="run distro_bootcmd"
 CONFIG_DEFAULT_FDT_FILE="am335x-wega-rdk.dtb"
 CONFIG_SYS_CONSOLE_INFO_QUIET=y
 CONFIG_ARCH_MISC_INIT=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x800000
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MTD_SUPPORT=y
 CONFIG_SPL_NAND_DRIVERS=y
diff --git a/configs/phycore-imx8mm_defconfig b/configs/phycore-imx8mm_defconfig
index 8192cc233e94..b8cda9f64f21 100644
--- a/configs/phycore-imx8mm_defconfig
+++ b/configs/phycore-imx8mm_defconfig
@@ -33,6 +33,10 @@ CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_BOARD_INIT=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x920000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x42200000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x80000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_I2C=y
diff --git a/configs/phycore-imx8mp_defconfig b/configs/phycore-imx8mp_defconfig
index 42172f31de63..d10ab2a22c1d 100644
--- a/configs/phycore-imx8mp_defconfig
+++ b/configs/phycore-imx8mp_defconfig
@@ -36,6 +36,10 @@ CONFIG_SPL_BOOTROM_SUPPORT=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x960000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x42200000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x80000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_I2C=y
diff --git a/configs/phycore_pcl063_defconfig b/configs/phycore_pcl063_defconfig
index 6dcb789609f0..b9d2a976636c 100644
--- a/configs/phycore_pcl063_defconfig
+++ b/configs/phycore_pcl063_defconfig
@@ -18,6 +18,7 @@ CONFIG_SYS_MEMTEST_END=0x90000000
 CONFIG_DISTRO_DEFAULTS=y
 CONFIG_BOOTDELAY=3
 CONFIG_BOARD_EARLY_INIT_F=y
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_USB_HOST=y
 CONFIG_SPL_WATCHDOG=y
 CONFIG_SYS_MAXARGS=32
diff --git a/configs/phycore_pcl063_ull_defconfig b/configs/phycore_pcl063_ull_defconfig
index e40ca07b7c08..f172b065bfcf 100644
--- a/configs/phycore_pcl063_ull_defconfig
+++ b/configs/phycore_pcl063_ull_defconfig
@@ -18,6 +18,7 @@ CONFIG_FIT=y
 CONFIG_BOOTDELAY=3
 CONFIG_BOOTCOMMAND="run mmc_mmc_fit"
 CONFIG_BOARD_EARLY_INIT_F=y
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_USB_HOST=y
 CONFIG_SPL_WATCHDOG=y
 CONFIG_SYS_MAXARGS=32
diff --git a/configs/pico-dwarf-imx6ul_defconfig b/configs/pico-dwarf-imx6ul_defconfig
index 15dc2098ad44..18373600a40e 100644
--- a/configs/pico-dwarf-imx6ul_defconfig
+++ b/configs/pico-dwarf-imx6ul_defconfig
@@ -25,6 +25,7 @@ CONFIG_BOOTDELAY=3
 CONFIG_BOOTCOMMAND="run findfdt; run finduuid; run distro_bootcmd"
 CONFIG_DEFAULT_FDT_FILE="imx6ul-pico-dwarf.dtb"
 CONFIG_BOARD_EARLY_INIT_F=y
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_USB_HOST=y
 CONFIG_SPL_USB_GADGET=y
 CONFIG_SPL_USB_SDP_SUPPORT=y
diff --git a/configs/pico-dwarf-imx7d_defconfig b/configs/pico-dwarf-imx7d_defconfig
index 187a269302a6..e27b5626a3af 100644
--- a/configs/pico-dwarf-imx7d_defconfig
+++ b/configs/pico-dwarf-imx7d_defconfig
@@ -28,6 +28,7 @@ CONFIG_DEFAULT_FDT_FILE="imx7d-pico-dwarf.dtb"
 CONFIG_SPL_MAX_SIZE=0xe000
 CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_USB_HOST=y
 CONFIG_SPL_USB_GADGET=y
diff --git a/configs/pico-hobbit-imx6ul_defconfig b/configs/pico-hobbit-imx6ul_defconfig
index eeb95d431dbc..f8754092fff5 100644
--- a/configs/pico-hobbit-imx6ul_defconfig
+++ b/configs/pico-hobbit-imx6ul_defconfig
@@ -26,6 +26,7 @@ CONFIG_BOOTDELAY=3
 CONFIG_BOOTCOMMAND="run findfdt; run finduuid; run distro_bootcmd"
 CONFIG_DEFAULT_FDT_FILE="imx6ul-pico-hobbit.dtb"
 CONFIG_BOARD_EARLY_INIT_F=y
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_USB_HOST=y
 CONFIG_SPL_USB_GADGET=y
 CONFIG_SPL_USB_SDP_SUPPORT=y
diff --git a/configs/pico-hobbit-imx7d_defconfig b/configs/pico-hobbit-imx7d_defconfig
index 38eb71523b33..275a3a0d1f6c 100644
--- a/configs/pico-hobbit-imx7d_defconfig
+++ b/configs/pico-hobbit-imx7d_defconfig
@@ -28,6 +28,7 @@ CONFIG_DEFAULT_FDT_FILE="imx7d-pico-hobbit.dtb"
 CONFIG_SPL_MAX_SIZE=0xe000
 CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_USB_HOST=y
 CONFIG_SPL_USB_GADGET=y
diff --git a/configs/pico-imx6_defconfig b/configs/pico-imx6_defconfig
index 09809542606d..086b3ee3ab25 100644
--- a/configs/pico-imx6_defconfig
+++ b/configs/pico-imx6_defconfig
@@ -27,6 +27,7 @@ CONFIG_SPL_LOAD_FIT=y
 CONFIG_BOOTCOMMAND="run default_boot"
 CONFIG_DEFAULT_FDT_FILE="ask"
 CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_FIT_IMAGE_TINY=y
 CONFIG_SPL_FS_EXT4=y
 CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot-dtb.img"
diff --git a/configs/pico-imx6ul_defconfig b/configs/pico-imx6ul_defconfig
index 7e923d0bc027..aeda45574365 100644
--- a/configs/pico-imx6ul_defconfig
+++ b/configs/pico-imx6ul_defconfig
@@ -26,6 +26,7 @@ CONFIG_BOOTDELAY=3
 CONFIG_BOOTCOMMAND="run findfdt; run finduuid; run distro_bootcmd"
 CONFIG_DEFAULT_FDT_FILE="ask"
 CONFIG_BOARD_EARLY_INIT_F=y
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_USB_HOST=y
 CONFIG_SPL_USB_GADGET=y
 CONFIG_SPL_USB_SDP_SUPPORT=y
diff --git a/configs/pico-imx7d_bl33_defconfig b/configs/pico-imx7d_bl33_defconfig
index 7f1d215e4908..13a7fcf1759e 100644
--- a/configs/pico-imx7d_bl33_defconfig
+++ b/configs/pico-imx7d_bl33_defconfig
@@ -29,6 +29,7 @@ CONFIG_BOOTCOMMAND="run distro_bootcmd"
 CONFIG_SPL_MAX_SIZE=0xe000
 CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_USB_HOST=y
 CONFIG_SPL_USB_GADGET=y
diff --git a/configs/pico-imx7d_defconfig b/configs/pico-imx7d_defconfig
index d79d3ea2ed19..3181964cdd42 100644
--- a/configs/pico-imx7d_defconfig
+++ b/configs/pico-imx7d_defconfig
@@ -28,6 +28,7 @@ CONFIG_DEFAULT_FDT_FILE="ask"
 CONFIG_SPL_MAX_SIZE=0xe000
 CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_USB_HOST=y
 CONFIG_SPL_USB_GADGET=y
diff --git a/configs/pico-imx8mq_defconfig b/configs/pico-imx8mq_defconfig
index 5b4f591ec4cf..8e27f7231429 100644
--- a/configs/pico-imx8mq_defconfig
+++ b/configs/pico-imx8mq_defconfig
@@ -37,6 +37,10 @@ CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_BOARD_INIT=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x187ff0
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x42200000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x80000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_I2C=y
diff --git a/configs/pico-nymph-imx7d_defconfig b/configs/pico-nymph-imx7d_defconfig
index 187a269302a6..e27b5626a3af 100644
--- a/configs/pico-nymph-imx7d_defconfig
+++ b/configs/pico-nymph-imx7d_defconfig
@@ -28,6 +28,7 @@ CONFIG_DEFAULT_FDT_FILE="imx7d-pico-dwarf.dtb"
 CONFIG_SPL_MAX_SIZE=0xe000
 CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_USB_HOST=y
 CONFIG_SPL_USB_GADGET=y
diff --git a/configs/pico-pi-imx6ul_defconfig b/configs/pico-pi-imx6ul_defconfig
index 2cc6d4f8bed5..bb085678c7c2 100644
--- a/configs/pico-pi-imx6ul_defconfig
+++ b/configs/pico-pi-imx6ul_defconfig
@@ -26,6 +26,7 @@ CONFIG_BOOTDELAY=3
 CONFIG_BOOTCOMMAND="run findfdt; run finduuid; run distro_bootcmd"
 CONFIG_DEFAULT_FDT_FILE="imx6ul-pico-pi.dtb"
 CONFIG_BOARD_EARLY_INIT_F=y
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_USB_HOST=y
 CONFIG_SPL_USB_GADGET=y
 CONFIG_SPL_USB_SDP_SUPPORT=y
diff --git a/configs/pico-pi-imx7d_defconfig b/configs/pico-pi-imx7d_defconfig
index daf91029f3bf..1a052a40227a 100644
--- a/configs/pico-pi-imx7d_defconfig
+++ b/configs/pico-pi-imx7d_defconfig
@@ -28,6 +28,7 @@ CONFIG_DEFAULT_FDT_FILE="imx7d-pico-pi.dtb"
 CONFIG_SPL_MAX_SIZE=0xe000
 CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_USB_HOST=y
 CONFIG_SPL_USB_GADGET=y
diff --git a/configs/plutux_defconfig b/configs/plutux_defconfig
index fe59c10b1920..ad1853f05e21 100644
--- a/configs/plutux_defconfig
+++ b/configs/plutux_defconfig
@@ -18,6 +18,10 @@ CONFIG_SPL_FOOTPRINT_LIMIT=y
 CONFIG_SPL_MAX_FOOTPRINT=0x8000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xffffc
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x90000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x10000
 CONFIG_SYS_PROMPT="Tegra20 (Plutux) # "
 CONFIG_SYS_MAXARGS=64
 CONFIG_SYS_PBSIZE=2084
diff --git a/configs/pxm2_defconfig b/configs/pxm2_defconfig
index a36192a978be..8dfd51e25b85 100644
--- a/configs/pxm2_defconfig
+++ b/configs/pxm2_defconfig
@@ -37,6 +37,9 @@ CONFIG_SYS_CONSOLE_INFO_QUIET=y
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_ARCH_MISC_INIT=y
 CONFIG_SPL_BSS_START_ADDR=0x80000000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x80208000
 CONFIG_SPL_I2C=y
 CONFIG_SPL_NAND_DRIVERS=y
 CONFIG_SPL_NAND_ECC=y
diff --git a/configs/qemu-riscv32_spl_defconfig b/configs/qemu-riscv32_spl_defconfig
index c836cc0c2aa8..2bc7b9fbd0f0 100644
--- a/configs/qemu-riscv32_spl_defconfig
+++ b/configs/qemu-riscv32_spl_defconfig
@@ -17,6 +17,7 @@ CONFIG_DISPLAY_CPUINFO=y
 CONFIG_DISPLAY_BOARDINFO=y
 CONFIG_SPL_MAX_SIZE=0x100000
 CONFIG_SPL_BSS_START_ADDR=0x84000000
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SYS_CBSIZE=256
 CONFIG_SYS_PBSIZE=276
 # CONFIG_CMD_MII is not set
diff --git a/configs/qemu-riscv64_spl_defconfig b/configs/qemu-riscv64_spl_defconfig
index ce66a8e8df56..e39accf94005 100644
--- a/configs/qemu-riscv64_spl_defconfig
+++ b/configs/qemu-riscv64_spl_defconfig
@@ -17,6 +17,7 @@ CONFIG_DISPLAY_CPUINFO=y
 CONFIG_DISPLAY_BOARDINFO=y
 CONFIG_SPL_MAX_SIZE=0x100000
 CONFIG_SPL_BSS_START_ADDR=0x84000000
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SYS_CBSIZE=256
 CONFIG_SYS_PBSIZE=276
 # CONFIG_CMD_MII is not set
diff --git a/configs/rastaban_defconfig b/configs/rastaban_defconfig
index 269416f2aa4d..9f27592088cb 100644
--- a/configs/rastaban_defconfig
+++ b/configs/rastaban_defconfig
@@ -37,6 +37,9 @@ CONFIG_SYS_CONSOLE_INFO_QUIET=y
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_ARCH_MISC_INIT=y
 CONFIG_SPL_BSS_START_ADDR=0x80000000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x80208000
 CONFIG_SPL_I2C=y
 CONFIG_SPL_NAND_DRIVERS=y
 CONFIG_SPL_NAND_ECC=y
diff --git a/configs/riotboard_defconfig b/configs/riotboard_defconfig
index 8e74a1f087f9..8fe264d75435 100644
--- a/configs/riotboard_defconfig
+++ b/configs/riotboard_defconfig
@@ -28,6 +28,7 @@ CONFIG_SYS_CONSOLE_IS_IN_ENV=y
 CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_SPL_RAW_IMAGE_SUPPORT=y
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_FS_EXT4=y
 CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot-dtb.img"
 CONFIG_SPL_FS_LOAD_ARGS_NAME="imx6dl-riotboard.dtb"
diff --git a/configs/rut_defconfig b/configs/rut_defconfig
index 8ef538661c1f..1b91d8b5ab8d 100644
--- a/configs/rut_defconfig
+++ b/configs/rut_defconfig
@@ -37,6 +37,9 @@ CONFIG_SYS_CONSOLE_INFO_QUIET=y
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_ARCH_MISC_INIT=y
 CONFIG_SPL_BSS_START_ADDR=0x80000000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x80208000
 CONFIG_SPL_I2C=y
 CONFIG_SPL_NAND_DRIVERS=y
 CONFIG_SPL_NAND_ECC=y
diff --git a/configs/sama5d27_giantboard_defconfig b/configs/sama5d27_giantboard_defconfig
index d7813a533ccf..4ab7831742d9 100644
--- a/configs/sama5d27_giantboard_defconfig
+++ b/configs/sama5d27_giantboard_defconfig
@@ -44,6 +44,8 @@ CONFIG_SPL_BSS_START_ADDR=0x20000000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x218000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x80000
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_CBSIZE=256
 CONFIG_SYS_PBSIZE=276
diff --git a/configs/sama5d27_som1_ek_mmc1_defconfig b/configs/sama5d27_som1_ek_mmc1_defconfig
index ebebc7f32101..e29a8380e441 100644
--- a/configs/sama5d27_som1_ek_mmc1_defconfig
+++ b/configs/sama5d27_som1_ek_mmc1_defconfig
@@ -40,6 +40,8 @@ CONFIG_SPL_BSS_START_ADDR=0x20000000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x218000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x80000
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_CBSIZE=256
 CONFIG_SYS_PBSIZE=276
diff --git a/configs/sama5d27_som1_ek_mmc_defconfig b/configs/sama5d27_som1_ek_mmc_defconfig
index 13cf4e507497..c807387457bc 100644
--- a/configs/sama5d27_som1_ek_mmc_defconfig
+++ b/configs/sama5d27_som1_ek_mmc_defconfig
@@ -41,6 +41,8 @@ CONFIG_SPL_BSS_START_ADDR=0x20000000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x218000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x80000
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_CBSIZE=256
 CONFIG_SYS_PBSIZE=276
diff --git a/configs/sama5d27_som1_ek_qspiflash_defconfig b/configs/sama5d27_som1_ek_qspiflash_defconfig
index e869f67440da..500798eee222 100644
--- a/configs/sama5d27_som1_ek_qspiflash_defconfig
+++ b/configs/sama5d27_som1_ek_qspiflash_defconfig
@@ -39,6 +39,8 @@ CONFIG_SPL_BSS_START_ADDR=0x20000000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x218000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x80000
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_CBSIZE=256
 CONFIG_SYS_PBSIZE=276
diff --git a/configs/sama5d27_wlsom1_ek_mmc_defconfig b/configs/sama5d27_wlsom1_ek_mmc_defconfig
index df88f6b78d30..b5d5c34d9b09 100644
--- a/configs/sama5d27_wlsom1_ek_mmc_defconfig
+++ b/configs/sama5d27_wlsom1_ek_mmc_defconfig
@@ -40,6 +40,8 @@ CONFIG_SPL_BSS_START_ADDR=0x20000000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x218000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x80000
 CONFIG_SPL_DISPLAY_PRINT=y
 # CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR is not set
 CONFIG_SPL_AT91_MCK_BYPASS=y
diff --git a/configs/sama5d27_wlsom1_ek_qspiflash_defconfig b/configs/sama5d27_wlsom1_ek_qspiflash_defconfig
index 60ed74a03003..983e50455656 100644
--- a/configs/sama5d27_wlsom1_ek_qspiflash_defconfig
+++ b/configs/sama5d27_wlsom1_ek_qspiflash_defconfig
@@ -40,6 +40,8 @@ CONFIG_SPL_BSS_START_ADDR=0x20000000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x218000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x80000
 CONFIG_SPL_DISPLAY_PRINT=y
 # CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR is not set
 CONFIG_SPL_DM_SPI_FLASH=y
diff --git a/configs/sama5d2_icp_mmc_defconfig b/configs/sama5d2_icp_mmc_defconfig
index 119f15a5d20f..8d4698ef320f 100644
--- a/configs/sama5d2_icp_mmc_defconfig
+++ b/configs/sama5d2_icp_mmc_defconfig
@@ -39,6 +39,8 @@ CONFIG_SPL_BSS_START_ADDR=0x20000000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x218000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x80000
 CONFIG_SPL_DISPLAY_PRINT=y
 # CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR is not set
 CONFIG_SPL_RAM_SUPPORT=y
diff --git a/configs/sama5d2_xplained_emmc_defconfig b/configs/sama5d2_xplained_emmc_defconfig
index 1d078cb21e51..2891cc5a7f7a 100644
--- a/configs/sama5d2_xplained_emmc_defconfig
+++ b/configs/sama5d2_xplained_emmc_defconfig
@@ -39,6 +39,8 @@ CONFIG_SPL_BSS_START_ADDR=0x20000000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x218000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x80000
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_CBSIZE=256
 CONFIG_SYS_PBSIZE=276
diff --git a/configs/sama5d2_xplained_mmc_defconfig b/configs/sama5d2_xplained_mmc_defconfig
index 0df30048900d..600cb0cbd8bc 100644
--- a/configs/sama5d2_xplained_mmc_defconfig
+++ b/configs/sama5d2_xplained_mmc_defconfig
@@ -41,6 +41,8 @@ CONFIG_SPL_BSS_START_ADDR=0x20000000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x218000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x80000
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_CBSIZE=256
 CONFIG_SYS_PBSIZE=276
diff --git a/configs/sama5d2_xplained_qspiflash_defconfig b/configs/sama5d2_xplained_qspiflash_defconfig
index 9bb838ca893c..4f9062628af0 100644
--- a/configs/sama5d2_xplained_qspiflash_defconfig
+++ b/configs/sama5d2_xplained_qspiflash_defconfig
@@ -42,6 +42,8 @@ CONFIG_SPL_BSS_START_ADDR=0x20000000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x218000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x80000
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_CBSIZE=256
 CONFIG_SYS_PBSIZE=276
diff --git a/configs/sama5d2_xplained_spiflash_defconfig b/configs/sama5d2_xplained_spiflash_defconfig
index 323846c1bba4..0041294797b7 100644
--- a/configs/sama5d2_xplained_spiflash_defconfig
+++ b/configs/sama5d2_xplained_spiflash_defconfig
@@ -43,6 +43,8 @@ CONFIG_SPL_BSS_START_ADDR=0x20000000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x218000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x80000
 CONFIG_SPL_DM_SPI_FLASH=y
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x10000
diff --git a/configs/sama5d3_xplained_mmc_defconfig b/configs/sama5d3_xplained_mmc_defconfig
index cd1e66d25574..42f6053e595b 100644
--- a/configs/sama5d3_xplained_mmc_defconfig
+++ b/configs/sama5d3_xplained_mmc_defconfig
@@ -40,6 +40,8 @@ CONFIG_SPL_BSS_START_ADDR=0x20000000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x318000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x80000
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_CBSIZE=256
 CONFIG_SYS_PBSIZE=276
diff --git a/configs/sama5d3_xplained_nandflash_defconfig b/configs/sama5d3_xplained_nandflash_defconfig
index 7541f4fa21ed..b1fe27a9a036 100644
--- a/configs/sama5d3_xplained_nandflash_defconfig
+++ b/configs/sama5d3_xplained_nandflash_defconfig
@@ -37,6 +37,8 @@ CONFIG_SPL_BSS_START_ADDR=0x20000000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x318000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x80000
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_SPL_NAND_DRIVERS=y
 CONFIG_SPL_NAND_BASE=y
diff --git a/configs/sama5d3xek_mmc_defconfig b/configs/sama5d3xek_mmc_defconfig
index e4cc446fe08c..39e6a4e7937c 100644
--- a/configs/sama5d3xek_mmc_defconfig
+++ b/configs/sama5d3xek_mmc_defconfig
@@ -42,6 +42,8 @@ CONFIG_SPL_BSS_START_ADDR=0x20000000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x318000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x80000
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_CBSIZE=256
 CONFIG_SYS_PBSIZE=276
diff --git a/configs/sama5d3xek_nandflash_defconfig b/configs/sama5d3xek_nandflash_defconfig
index c4f3badcf845..d4a6243cdc80 100644
--- a/configs/sama5d3xek_nandflash_defconfig
+++ b/configs/sama5d3xek_nandflash_defconfig
@@ -39,6 +39,8 @@ CONFIG_SPL_BSS_START_ADDR=0x20000000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x318000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x80000
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_SPL_NAND_DRIVERS=y
 CONFIG_SPL_NAND_BASE=y
diff --git a/configs/sama5d3xek_spiflash_defconfig b/configs/sama5d3xek_spiflash_defconfig
index 2754920e33c7..ae47d9216022 100644
--- a/configs/sama5d3xek_spiflash_defconfig
+++ b/configs/sama5d3xek_spiflash_defconfig
@@ -42,6 +42,8 @@ CONFIG_SPL_BSS_START_ADDR=0x20000000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x318000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x80000
 CONFIG_SPL_DM_SPI_FLASH=y
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x10000
diff --git a/configs/sama5d4_xplained_mmc_defconfig b/configs/sama5d4_xplained_mmc_defconfig
index 2227abc837b1..c1623df8649b 100644
--- a/configs/sama5d4_xplained_mmc_defconfig
+++ b/configs/sama5d4_xplained_mmc_defconfig
@@ -41,6 +41,8 @@ CONFIG_SPL_BSS_START_ADDR=0x20000000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x218000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x80000
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_CBSIZE=256
 CONFIG_SYS_PBSIZE=276
diff --git a/configs/sama5d4_xplained_nandflash_defconfig b/configs/sama5d4_xplained_nandflash_defconfig
index 9304ef173b41..b1265331c8ac 100644
--- a/configs/sama5d4_xplained_nandflash_defconfig
+++ b/configs/sama5d4_xplained_nandflash_defconfig
@@ -38,6 +38,8 @@ CONFIG_SPL_BSS_START_ADDR=0x20000000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x218000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x80000
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_SPL_NAND_DRIVERS=y
 CONFIG_SPL_NAND_BASE=y
diff --git a/configs/sama5d4_xplained_spiflash_defconfig b/configs/sama5d4_xplained_spiflash_defconfig
index b69b32ed3846..ec79771ee7cd 100644
--- a/configs/sama5d4_xplained_spiflash_defconfig
+++ b/configs/sama5d4_xplained_spiflash_defconfig
@@ -43,6 +43,8 @@ CONFIG_SPL_BSS_START_ADDR=0x20000000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x218000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x80000
 CONFIG_SPL_DM_SPI_FLASH=y
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x10000
diff --git a/configs/sama5d4ek_mmc_defconfig b/configs/sama5d4ek_mmc_defconfig
index e0779d07fcbb..b25df5c94c19 100644
--- a/configs/sama5d4ek_mmc_defconfig
+++ b/configs/sama5d4ek_mmc_defconfig
@@ -42,6 +42,8 @@ CONFIG_SPL_BSS_START_ADDR=0x20000000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x218000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x80000
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_CBSIZE=256
 CONFIG_SYS_PBSIZE=276
diff --git a/configs/sama5d4ek_nandflash_defconfig b/configs/sama5d4ek_nandflash_defconfig
index 386e30ba8506..a3bfee316da1 100644
--- a/configs/sama5d4ek_nandflash_defconfig
+++ b/configs/sama5d4ek_nandflash_defconfig
@@ -39,6 +39,8 @@ CONFIG_SPL_BSS_START_ADDR=0x20000000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x218000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x80000
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_SPL_NAND_DRIVERS=y
 CONFIG_SPL_NAND_BASE=y
diff --git a/configs/sama5d4ek_spiflash_defconfig b/configs/sama5d4ek_spiflash_defconfig
index b0d76d2bc833..06e5bb2e032e 100644
--- a/configs/sama5d4ek_spiflash_defconfig
+++ b/configs/sama5d4ek_spiflash_defconfig
@@ -42,6 +42,8 @@ CONFIG_SPL_BSS_START_ADDR=0x20000000
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x218000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x80000
 CONFIG_SPL_DM_SPI_FLASH=y
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x10000
diff --git a/configs/seaboard_defconfig b/configs/seaboard_defconfig
index ea97dcf57a40..f9864febcb0e 100644
--- a/configs/seaboard_defconfig
+++ b/configs/seaboard_defconfig
@@ -16,6 +16,10 @@ CONFIG_SPL_FOOTPRINT_LIMIT=y
 CONFIG_SPL_MAX_FOOTPRINT=0x8000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xffffc
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x90000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x10000
 CONFIG_SYS_PROMPT="Tegra20 (SeaBoard) # "
 CONFIG_SYS_MAXARGS=64
 CONFIG_SYS_PBSIZE=2086
diff --git a/configs/seeed_npi_imx6ull_defconfig b/configs/seeed_npi_imx6ull_defconfig
index 8fb5590c1ebd..e12a7d850606 100644
--- a/configs/seeed_npi_imx6ull_defconfig
+++ b/configs/seeed_npi_imx6ull_defconfig
@@ -20,6 +20,7 @@ CONFIG_DISTRO_DEFAULTS=y
 CONFIG_FIT=y
 CONFIG_BOOTDELAY=3
 CONFIG_BOARD_EARLY_INIT_F=y
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_DMA=y
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_SPL_USB_HOST=y
diff --git a/configs/sifive_unleashed_defconfig b/configs/sifive_unleashed_defconfig
index 10c69345a418..84bc49c0f23c 100644
--- a/configs/sifive_unleashed_defconfig
+++ b/configs/sifive_unleashed_defconfig
@@ -28,6 +28,7 @@ CONFIG_SPL_MAX_SIZE=0x100000
 CONFIG_SPL_BSS_START_ADDR=0x85000000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x81cfe70
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_DM_SPI_FLASH=y
 CONFIG_SPL_DM_RESET=y
 CONFIG_SPL_SPI_LOAD=y
diff --git a/configs/sifive_unmatched_defconfig b/configs/sifive_unmatched_defconfig
index 23f8a4fb8072..02d4e54b0717 100644
--- a/configs/sifive_unmatched_defconfig
+++ b/configs/sifive_unmatched_defconfig
@@ -32,6 +32,7 @@ CONFIG_SPL_MAX_SIZE=0x100000
 CONFIG_SPL_BSS_START_ADDR=0x85000000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x81cfe60
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_DM_SPI_FLASH=y
 CONFIG_SPL_DM_RESET=y
 CONFIG_SPL_SPI_LOAD=y
diff --git a/configs/smartweb_defconfig b/configs/smartweb_defconfig
index 990bd9d3441b..57c5218d4b0c 100644
--- a/configs/smartweb_defconfig
+++ b/configs/smartweb_defconfig
@@ -39,6 +39,8 @@ CONFIG_SPL_BSS_START_ADDR=0x20000000
 CONFIG_SPL_BSS_MAX_SIZE=0x4000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x301000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x460000
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_SPL_NAND_RAW_ONLY=y
 CONFIG_SPL_NAND_DRIVERS=y
diff --git a/configs/sniper_defconfig b/configs/sniper_defconfig
index 7de3081a2d9f..e2725f4a22f2 100644
--- a/configs/sniper_defconfig
+++ b/configs/sniper_defconfig
@@ -17,6 +17,9 @@ CONFIG_SPL_MAX_SIZE=0xec00
 CONFIG_SPL_BSS_START_ADDR=0x80000000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x4020fffc
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x80208000
 # CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR is not set
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION=2
diff --git a/configs/socfpga_agilex_atf_defconfig b/configs/socfpga_agilex_atf_defconfig
index 5fdacb34d17f..ebe90ce2a5b5 100644
--- a/configs/socfpga_agilex_atf_defconfig
+++ b/configs/socfpga_agilex_atf_defconfig
@@ -33,6 +33,10 @@ CONFIG_SPL_BSS_START_ADDR=0x3ff00000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xffe3f000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x3fa00000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x500000
 CONFIG_SPL_CRC32=y
 CONFIG_SPL_CACHE=y
 CONFIG_SPL_SPI_LOAD=y
diff --git a/configs/socfpga_agilex_defconfig b/configs/socfpga_agilex_defconfig
index 0953ea10af95..ab8535946315 100644
--- a/configs/socfpga_agilex_defconfig
+++ b/configs/socfpga_agilex_defconfig
@@ -30,6 +30,10 @@ CONFIG_SPL_BSS_START_ADDR=0x3ff00000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xffe3f000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x3fa00000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x500000
 CONFIG_SPL_CACHE=y
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x3c00000
diff --git a/configs/socfpga_agilex_vab_defconfig b/configs/socfpga_agilex_vab_defconfig
index c0384c24e5eb..fa4beddb2dc5 100644
--- a/configs/socfpga_agilex_vab_defconfig
+++ b/configs/socfpga_agilex_vab_defconfig
@@ -34,6 +34,10 @@ CONFIG_SPL_BSS_START_ADDR=0x3ff00000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xffe3f000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x3fa00000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x500000
 CONFIG_SPL_CRC32=y
 CONFIG_SPL_CACHE=y
 CONFIG_SPL_SPI_LOAD=y
diff --git a/configs/socfpga_arria10_defconfig b/configs/socfpga_arria10_defconfig
index 8b8d7e4968eb..c98c106851fc 100644
--- a/configs/socfpga_arria10_defconfig
+++ b/configs/socfpga_arria10_defconfig
@@ -30,6 +30,10 @@ CONFIG_SPL_PAD_TO=0x40000
 CONFIG_SPL_NO_BSS_LIMIT=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xffe2b000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0xffe2b000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x15000
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_FPGA=y
 CONFIG_SYS_MAXARGS=32
diff --git a/configs/socfpga_n5x_atf_defconfig b/configs/socfpga_n5x_atf_defconfig
index 0fac9fbe840d..dd0ad36b4b6a 100644
--- a/configs/socfpga_n5x_atf_defconfig
+++ b/configs/socfpga_n5x_atf_defconfig
@@ -32,6 +32,10 @@ CONFIG_SPL_BSS_START_ADDR=0x3ff00000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xffe3f000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x3fa00000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x500000
 CONFIG_SPL_CRC32=y
 CONFIG_SPL_CACHE=y
 CONFIG_SPL_SPI_LOAD=y
diff --git a/configs/socfpga_n5x_defconfig b/configs/socfpga_n5x_defconfig
index 0904e6a6a38d..f0d41d1e8f5a 100644
--- a/configs/socfpga_n5x_defconfig
+++ b/configs/socfpga_n5x_defconfig
@@ -27,6 +27,10 @@ CONFIG_SPL_BSS_START_ADDR=0x3ff00000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xffe3f000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x3fa00000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x500000
 CONFIG_SPL_CACHE=y
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x3c00000
diff --git a/configs/socfpga_n5x_vab_defconfig b/configs/socfpga_n5x_vab_defconfig
index 69811fb7223e..f7a827f770cd 100644
--- a/configs/socfpga_n5x_vab_defconfig
+++ b/configs/socfpga_n5x_vab_defconfig
@@ -33,6 +33,10 @@ CONFIG_SPL_BSS_START_ADDR=0x3ff00000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xffe3f000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x3fa00000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x500000
 CONFIG_SPL_CRC32=y
 CONFIG_SPL_CACHE=y
 CONFIG_SPL_SPI_LOAD=y
diff --git a/configs/socfpga_stratix10_atf_defconfig b/configs/socfpga_stratix10_atf_defconfig
index 2ffc7ac76589..39ec1b2b1144 100644
--- a/configs/socfpga_stratix10_atf_defconfig
+++ b/configs/socfpga_stratix10_atf_defconfig
@@ -33,6 +33,10 @@ CONFIG_SPL_BSS_START_ADDR=0x3ff00000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xffe3f000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x3fa00000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x500000
 CONFIG_SPL_CRC32=y
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x02000000
diff --git a/configs/socfpga_stratix10_defconfig b/configs/socfpga_stratix10_defconfig
index 38d87076baa9..fac82b88c3f7 100644
--- a/configs/socfpga_stratix10_defconfig
+++ b/configs/socfpga_stratix10_defconfig
@@ -32,6 +32,10 @@ CONFIG_SPL_BSS_START_ADDR=0x3ff00000
 CONFIG_SPL_BSS_MAX_SIZE=0x100000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xffe3f000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x3fa00000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x500000
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x3C00000
 CONFIG_HUSH_PARSER=y
diff --git a/configs/stm32mp15-icore-stm32mp1-ctouch2_defconfig b/configs/stm32mp15-icore-stm32mp1-ctouch2_defconfig
index fe722ce507bf..9441b8c3b1c3 100644
--- a/configs/stm32mp15-icore-stm32mp1-ctouch2_defconfig
+++ b/configs/stm32mp15-icore-stm32mp1-ctouch2_defconfig
@@ -21,6 +21,10 @@ CONFIG_SPL_FOOTPRINT_LIMIT=y
 CONFIG_SPL_MAX_FOOTPRINT=0x3db00
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x30000000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0xc0300000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x1d00000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION=3
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/stm32mp15-icore-stm32mp1-edimm2.2_defconfig b/configs/stm32mp15-icore-stm32mp1-edimm2.2_defconfig
index f47bc1b23411..961628545232 100644
--- a/configs/stm32mp15-icore-stm32mp1-edimm2.2_defconfig
+++ b/configs/stm32mp15-icore-stm32mp1-edimm2.2_defconfig
@@ -21,6 +21,10 @@ CONFIG_SPL_FOOTPRINT_LIMIT=y
 CONFIG_SPL_MAX_FOOTPRINT=0x3db00
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x30000000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0xc0300000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x1d00000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION=3
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/stm32mp15-microgea-stm32mp1-microdev2-of7_defconfig b/configs/stm32mp15-microgea-stm32mp1-microdev2-of7_defconfig
index 9ddd585ecf0c..354a43cf55ef 100644
--- a/configs/stm32mp15-microgea-stm32mp1-microdev2-of7_defconfig
+++ b/configs/stm32mp15-microgea-stm32mp1-microdev2-of7_defconfig
@@ -21,6 +21,10 @@ CONFIG_SPL_FOOTPRINT_LIMIT=y
 CONFIG_SPL_MAX_FOOTPRINT=0x3db00
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x30000000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0xc0300000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x1d00000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION=3
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/stm32mp15-microgea-stm32mp1-microdev2_defconfig b/configs/stm32mp15-microgea-stm32mp1-microdev2_defconfig
index 86d55478f5aa..a601477d127b 100644
--- a/configs/stm32mp15-microgea-stm32mp1-microdev2_defconfig
+++ b/configs/stm32mp15-microgea-stm32mp1-microdev2_defconfig
@@ -21,6 +21,10 @@ CONFIG_SPL_FOOTPRINT_LIMIT=y
 CONFIG_SPL_MAX_FOOTPRINT=0x3db00
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x30000000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0xc0300000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x1d00000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION=3
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/stm32mp15_basic_defconfig b/configs/stm32mp15_basic_defconfig
index be49a8e77127..662754128da0 100644
--- a/configs/stm32mp15_basic_defconfig
+++ b/configs/stm32mp15_basic_defconfig
@@ -31,6 +31,10 @@ CONFIG_SPL_FOOTPRINT_LIMIT=y
 CONFIG_SPL_MAX_FOOTPRINT=0x3db00
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x30000000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0xc0300000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x1d00000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION=3
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/stm32mp15_dhcom_basic_defconfig b/configs/stm32mp15_dhcom_basic_defconfig
index fa3cff00cea2..38f16437aa34 100644
--- a/configs/stm32mp15_dhcom_basic_defconfig
+++ b/configs/stm32mp15_dhcom_basic_defconfig
@@ -32,6 +32,10 @@ CONFIG_SPL_MAX_FOOTPRINT=0x3db00
 CONFIG_SPL_LEGACY_IMAGE_FORMAT=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x30000000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0xc0300000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x1d00000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION=3
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/stm32mp15_dhcor_basic_defconfig b/configs/stm32mp15_dhcor_basic_defconfig
index 9f32d2c4e815..869afdf6c807 100644
--- a/configs/stm32mp15_dhcor_basic_defconfig
+++ b/configs/stm32mp15_dhcor_basic_defconfig
@@ -30,6 +30,10 @@ CONFIG_SPL_MAX_FOOTPRINT=0x3db00
 CONFIG_SPL_LEGACY_IMAGE_FORMAT=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x30000000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0xc0300000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x1d00000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION=3
 CONFIG_SPL_ENV_SUPPORT=y
diff --git a/configs/syzygy_hub_defconfig b/configs/syzygy_hub_defconfig
index 9bebe7046ec9..0baf6dd886ac 100644
--- a/configs/syzygy_hub_defconfig
+++ b/configs/syzygy_hub_defconfig
@@ -32,6 +32,8 @@ CONFIG_SPL_BSS_MAX_SIZE=0x100000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xfffffe00
 CONFIG_SPL_STACK_R=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x2000000
 CONFIG_SPL_FS_LOAD_ARGS_NAME="system.dtb"
 CONFIG_SPL_OS_BOOT=y
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
diff --git a/configs/taurus_defconfig b/configs/taurus_defconfig
index da241f1be71c..c0a4dcc271dc 100644
--- a/configs/taurus_defconfig
+++ b/configs/taurus_defconfig
@@ -48,6 +48,10 @@ CONFIG_SPL_BSS_MAX_SIZE=0x600
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x304000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x20ba0000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x460000
 CONFIG_SPL_CRC32=y
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_SPL_NAND_RAW_ONLY=y
diff --git a/configs/tec-ng_defconfig b/configs/tec-ng_defconfig
index cb80b10aecf7..191b2c08509d 100644
--- a/configs/tec-ng_defconfig
+++ b/configs/tec-ng_defconfig
@@ -18,6 +18,10 @@ CONFIG_SPL_FOOTPRINT_LIMIT=y
 CONFIG_SPL_MAX_FOOTPRINT=0x8000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x800ffffc
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x80090000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x10000
 CONFIG_SYS_PROMPT="Tegra30 (TEC-NG) # "
 CONFIG_SYS_MAXARGS=64
 CONFIG_SYS_PBSIZE=2084
diff --git a/configs/tec_defconfig b/configs/tec_defconfig
index 80fbdda5d1c5..9fed0eaed135 100644
--- a/configs/tec_defconfig
+++ b/configs/tec_defconfig
@@ -17,6 +17,10 @@ CONFIG_SPL_FOOTPRINT_LIMIT=y
 CONFIG_SPL_MAX_FOOTPRINT=0x8000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xffffc
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x90000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x10000
 CONFIG_SYS_PROMPT="Tegra20 (TEC) # "
 CONFIG_SYS_MAXARGS=64
 CONFIG_SYS_PBSIZE=2081
diff --git a/configs/thuban_defconfig b/configs/thuban_defconfig
index 2f0a1c666a95..0a6b0e88b3fe 100644
--- a/configs/thuban_defconfig
+++ b/configs/thuban_defconfig
@@ -37,6 +37,9 @@ CONFIG_SYS_CONSOLE_INFO_QUIET=y
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_ARCH_MISC_INIT=y
 CONFIG_SPL_BSS_START_ADDR=0x80000000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x80208000
 CONFIG_SPL_I2C=y
 CONFIG_SPL_NAND_DRIVERS=y
 CONFIG_SPL_NAND_ECC=y
diff --git a/configs/ti816x_evm_defconfig b/configs/ti816x_evm_defconfig
index 243492a95294..54c1d80e5105 100644
--- a/configs/ti816x_evm_defconfig
+++ b/configs/ti816x_evm_defconfig
@@ -30,6 +30,8 @@ CONFIG_SYS_CONSOLE_INFO_QUIET=y
 # CONFIG_DISPLAY_BOARDINFO is not set
 # CONFIG_MISC_INIT_R is not set
 CONFIG_SPL_MAX_SIZE=0xfff1b400
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x800000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_NAND_SUPPORT=y
diff --git a/configs/topic_miami_defconfig b/configs/topic_miami_defconfig
index fba9f646122f..a11a17905cb9 100644
--- a/configs/topic_miami_defconfig
+++ b/configs/topic_miami_defconfig
@@ -32,6 +32,8 @@ CONFIG_SPL_BSS_MAX_SIZE=0x100000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xfffffe00
 CONFIG_SPL_STACK_R=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x2000000
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x20000
 CONFIG_SYS_PROMPT="zynq-uboot> "
diff --git a/configs/topic_miamilite_defconfig b/configs/topic_miamilite_defconfig
index a809bf3c4f90..f962f37d7ebe 100644
--- a/configs/topic_miamilite_defconfig
+++ b/configs/topic_miamilite_defconfig
@@ -32,6 +32,8 @@ CONFIG_SPL_BSS_MAX_SIZE=0x100000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xfffffe00
 CONFIG_SPL_STACK_R=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x2000000
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x20000
 CONFIG_SYS_PROMPT="zynq-uboot> "
diff --git a/configs/topic_miamiplus_defconfig b/configs/topic_miamiplus_defconfig
index 42aef8c073ef..dc71856f7204 100644
--- a/configs/topic_miamiplus_defconfig
+++ b/configs/topic_miamiplus_defconfig
@@ -32,6 +32,8 @@ CONFIG_SPL_BSS_MAX_SIZE=0x100000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xfffffe00
 CONFIG_SPL_STACK_R=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x2000000
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x20000
 CONFIG_SYS_PROMPT="zynq-uboot> "
diff --git a/configs/trimslice_defconfig b/configs/trimslice_defconfig
index b9d465c0e575..134605d8793a 100644
--- a/configs/trimslice_defconfig
+++ b/configs/trimslice_defconfig
@@ -18,6 +18,10 @@ CONFIG_SPL_FOOTPRINT_LIMIT=y
 CONFIG_SPL_MAX_FOOTPRINT=0x8000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xffffc
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x90000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x10000
 CONFIG_SYS_PROMPT="Tegra20 (TrimSlice) # "
 CONFIG_SYS_MAXARGS=64
 CONFIG_SYS_PBSIZE=2087
diff --git a/configs/udoo_defconfig b/configs/udoo_defconfig
index e21945116c03..e5bacb1bb8e0 100644
--- a/configs/udoo_defconfig
+++ b/configs/udoo_defconfig
@@ -22,6 +22,7 @@ CONFIG_DISTRO_DEFAULTS=y
 CONFIG_BOOTDELAY=3
 CONFIG_BOOTCOMMAND="run findfdt; run distro_bootcmd"
 CONFIG_BOARD_EARLY_INIT_F=y
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_FS_EXT4=y
 CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot-dtb.img"
 CONFIG_SPL_I2C=y
diff --git a/configs/udoo_neo_defconfig b/configs/udoo_neo_defconfig
index fff11bb10e97..e5ba2f3d0902 100644
--- a/configs/udoo_neo_defconfig
+++ b/configs/udoo_neo_defconfig
@@ -22,6 +22,7 @@ CONFIG_SPL_LIBDISK_SUPPORT=y
 CONFIG_DISTRO_DEFAULTS=y
 CONFIG_BOOTCOMMAND="run findfdt; run distro_bootcmd"
 CONFIG_BOARD_EARLY_INIT_F=y
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_FS_EXT4=y
 CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot-dtb.img"
diff --git a/configs/variscite_dart6ul_defconfig b/configs/variscite_dart6ul_defconfig
index 7322b12bd17c..f19dcbddcdf0 100644
--- a/configs/variscite_dart6ul_defconfig
+++ b/configs/variscite_dart6ul_defconfig
@@ -18,6 +18,7 @@ CONFIG_DISTRO_DEFAULTS=y
 CONFIG_FIT=y
 CONFIG_BOOTDELAY=3
 CONFIG_BOOTCOMMAND="run mmc_mmc_fit"
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_USB_HOST=y
 CONFIG_SPL_WATCHDOG=y
 CONFIG_SYS_MAXARGS=32
diff --git a/configs/venice2_defconfig b/configs/venice2_defconfig
index cb5fcfbb2362..25ee96a1ddff 100644
--- a/configs/venice2_defconfig
+++ b/configs/venice2_defconfig
@@ -18,6 +18,10 @@ CONFIG_SPL_FOOTPRINT_LIMIT=y
 CONFIG_SPL_MAX_FOOTPRINT=0x8000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x800ffffc
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x80090000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x10000
 CONFIG_SYS_PROMPT="Tegra124 (Venice2) # "
 CONFIG_SYS_MAXARGS=64
 CONFIG_SYS_PBSIZE=2086
diff --git a/configs/ventana_defconfig b/configs/ventana_defconfig
index f3389b0f7bce..87e4d10b292e 100644
--- a/configs/ventana_defconfig
+++ b/configs/ventana_defconfig
@@ -16,6 +16,10 @@ CONFIG_SPL_FOOTPRINT_LIMIT=y
 CONFIG_SPL_MAX_FOOTPRINT=0x8000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xffffc
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x90000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x10000
 CONFIG_SYS_PROMPT="Tegra20 (Ventana) # "
 CONFIG_SYS_MAXARGS=64
 CONFIG_SYS_PBSIZE=2085
diff --git a/configs/verdin-imx8mm_defconfig b/configs/verdin-imx8mm_defconfig
index 2433c6c83e07..34afdc57911e 100644
--- a/configs/verdin-imx8mm_defconfig
+++ b/configs/verdin-imx8mm_defconfig
@@ -39,6 +39,10 @@ CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_BOARD_INIT=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x920000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x42200000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x80000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_I2C=y
diff --git a/configs/verdin-imx8mp_defconfig b/configs/verdin-imx8mp_defconfig
index 06c41c7af052..52d281e83188 100644
--- a/configs/verdin-imx8mp_defconfig
+++ b/configs/verdin-imx8mp_defconfig
@@ -49,6 +49,10 @@ CONFIG_SPL_BOOTROM_SUPPORT=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x960000
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x42200000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x80000
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
 CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
 CONFIG_SPL_I2C=y
diff --git a/configs/vining_2000_defconfig b/configs/vining_2000_defconfig
index a8c3d907d1d4..3b9aa9790908 100644
--- a/configs/vining_2000_defconfig
+++ b/configs/vining_2000_defconfig
@@ -31,6 +31,7 @@ CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="run distro_bootcmd"
 CONFIG_SYS_CONSOLE_IS_IN_ENV=y
 CONFIG_BOARD_EARLY_INIT_F=y
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_FS_EXT4=y
 CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot-dtb.img"
 CONFIG_SPL_I2C=y
diff --git a/configs/wandboard_defconfig b/configs/wandboard_defconfig
index fadc8af36eb5..595176190a79 100644
--- a/configs/wandboard_defconfig
+++ b/configs/wandboard_defconfig
@@ -33,6 +33,7 @@ CONFIG_SYS_CONSOLE_IS_IN_ENV=y
 CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_BOARD_EARLY_INIT_F=y
+CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_FIT_IMAGE_TINY=y
 CONFIG_SPL_FS_EXT4=y
 CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot-dtb.img"
diff --git a/configs/xilinx_zynq_virt_defconfig b/configs/xilinx_zynq_virt_defconfig
index 65e8a65fd93f..a5cee103cb34 100644
--- a/configs/xilinx_zynq_virt_defconfig
+++ b/configs/xilinx_zynq_virt_defconfig
@@ -35,6 +35,8 @@ CONFIG_SPL_BSS_MAX_SIZE=0x100000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xfffffe00
 CONFIG_SPL_STACK_R=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_SYS_SPL_MALLOC_SIZE=0x2000000
 CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot.img"
 CONFIG_SPL_FS_LOAD_ARGS_NAME="system.dtb"
 CONFIG_SPL_FPGA=y
diff --git a/configs/xilinx_zynqmp_mini_emmc0_defconfig b/configs/xilinx_zynqmp_mini_emmc0_defconfig
index 2bb985218ba5..0b91f1856322 100644
--- a/configs/xilinx_zynqmp_mini_emmc0_defconfig
+++ b/configs/xilinx_zynqmp_mini_emmc0_defconfig
@@ -30,6 +30,10 @@ CONFIG_SPL_BSS_START_ADDR=0x0
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xfffffffc
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x20000000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x1000000
 # CONFIG_CMDLINE_EDITING is not set
 # CONFIG_AUTO_COMPLETE is not set
 CONFIG_SYS_MAXARGS=64
diff --git a/configs/xilinx_zynqmp_mini_emmc1_defconfig b/configs/xilinx_zynqmp_mini_emmc1_defconfig
index dce6ad71f413..6c20e88dfafc 100644
--- a/configs/xilinx_zynqmp_mini_emmc1_defconfig
+++ b/configs/xilinx_zynqmp_mini_emmc1_defconfig
@@ -30,6 +30,10 @@ CONFIG_SPL_BSS_START_ADDR=0x0
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xfffffffc
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x20000000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x1000000
 # CONFIG_CMDLINE_EDITING is not set
 # CONFIG_AUTO_COMPLETE is not set
 CONFIG_SYS_MAXARGS=64
diff --git a/configs/xilinx_zynqmp_mini_qspi_defconfig b/configs/xilinx_zynqmp_mini_qspi_defconfig
index 1b8665a64951..82510f190477 100644
--- a/configs/xilinx_zynqmp_mini_qspi_defconfig
+++ b/configs/xilinx_zynqmp_mini_qspi_defconfig
@@ -29,6 +29,10 @@ CONFIG_SPL_BSS_START_ADDR=0x0
 CONFIG_SPL_BSS_MAX_SIZE=0x80000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xfffffffc
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x20000000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x1000000
 # CONFIG_CMDLINE_EDITING is not set
 # CONFIG_AUTO_COMPLETE is not set
 # CONFIG_SYS_LONGHELP is not set
diff --git a/configs/xilinx_zynqmp_virt_defconfig b/configs/xilinx_zynqmp_virt_defconfig
index 74199f6bc030..0ac75f6572f4 100644
--- a/configs/xilinx_zynqmp_virt_defconfig
+++ b/configs/xilinx_zynqmp_virt_defconfig
@@ -38,6 +38,10 @@ CONFIG_SPL_BSS_MAX_SIZE=0x80000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xfffffffc
 CONFIG_SPL_STACK_R=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x20000000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x1000000
 CONFIG_SPL_FS_LOAD_KERNEL_NAME="atf-uboot.ub"
 CONFIG_SPL_FS_LOAD_ARGS_NAME="u-boot.bin"
 CONFIG_SPL_FPGA=y
diff --git a/configs/zynq_cse_nand_defconfig b/configs/zynq_cse_nand_defconfig
index 062974a1abb7..b69c8b92a488 100644
--- a/configs/zynq_cse_nand_defconfig
+++ b/configs/zynq_cse_nand_defconfig
@@ -28,6 +28,10 @@ CONFIG_SPL_BSS_MAX_SIZE=0x8000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xfffffe00
 CONFIG_SPL_STACK_R=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x200000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x2000000
 # CONFIG_CMDLINE_EDITING is not set
 # CONFIG_AUTO_COMPLETE is not set
 # CONFIG_SYS_LONGHELP is not set
diff --git a/configs/zynq_cse_nor_defconfig b/configs/zynq_cse_nor_defconfig
index cbbb051518ed..ecdbf8182e68 100644
--- a/configs/zynq_cse_nor_defconfig
+++ b/configs/zynq_cse_nor_defconfig
@@ -28,6 +28,10 @@ CONFIG_SPL_BSS_MAX_SIZE=0x8000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xfffffe00
 CONFIG_SPL_STACK_R=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x200000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x2000000
 # CONFIG_CMDLINE_EDITING is not set
 # CONFIG_AUTO_COMPLETE is not set
 # CONFIG_SYS_LONGHELP is not set
diff --git a/configs/zynq_cse_qspi_defconfig b/configs/zynq_cse_qspi_defconfig
index 51a97f4e3cfb..49dd5ad60692 100644
--- a/configs/zynq_cse_qspi_defconfig
+++ b/configs/zynq_cse_qspi_defconfig
@@ -35,6 +35,10 @@ CONFIG_SPL_BSS_MAX_SIZE=0x8000
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0xfffffe00
 CONFIG_SPL_STACK_R=y
+CONFIG_SYS_SPL_MALLOC=y
+CONFIG_HAS_CUSTOM_SPL_MALLOC_START=y
+CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x200000
+CONFIG_SYS_SPL_MALLOC_SIZE=0x2000000
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x100000
 # CONFIG_CMDLINE_EDITING is not set
diff --git a/include/configs/am64x_evm.h b/include/configs/am64x_evm.h
index b8a25e95f366..6da11b86c4b1 100644
--- a/include/configs/am64x_evm.h
+++ b/include/configs/am64x_evm.h
@@ -18,13 +18,6 @@
 /* DDR Configuration */
 #define CONFIG_SYS_SDRAM_BASE1		0x880000000
 
-#if !defined(CONFIG_TARGET_AM642_A53_EVM)
-/* Set the stack right below the SPL BSS section */
-/* Configure R5 SPL post-relocation malloc pool in DDR */
-#define CONFIG_SYS_SPL_MALLOC_START    0x84000000
-#define CONFIG_SYS_SPL_MALLOC_SIZE     SZ_16M
-#endif
-
 #define PARTS_DEFAULT \
 	/* Linux partitions */ \
 	"name=rootfs,start=0,size=-,uuid=${uuid_gpt_rootfs}\0"
diff --git a/include/configs/am65x_evm.h b/include/configs/am65x_evm.h
index 06aade0b2515..db35af98d9aa 100644
--- a/include/configs/am65x_evm.h
+++ b/include/configs/am65x_evm.h
@@ -17,14 +17,6 @@
 /* DDR Configuration */
 #define CONFIG_SYS_SDRAM_BASE1		0x880000000
 
-/* SPL Loader Configuration */
-#ifndef CONFIG_TARGET_AM654_A53_EVM
-/* Set the stack right below the SPL BSS section */
-/* Configure R5 SPL post-relocation malloc pool in DDR */
-#define CONFIG_SYS_SPL_MALLOC_START	0x84000000
-#define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_16M
-#endif
-
 #define CONFIG_SYS_BOOTM_LEN		SZ_64M
 
 #define PARTS_DEFAULT \
diff --git a/include/configs/at91sam9m10g45ek.h b/include/configs/at91sam9m10g45ek.h
index 17e2d2d7f6dd..b55d2e392553 100644
--- a/include/configs/at91sam9m10g45ek.h
+++ b/include/configs/at91sam9m10g45ek.h
@@ -40,10 +40,6 @@
 #define CONFIG_SYS_MONITOR_LEN		0x80000
 
 #ifdef CONFIG_SD_BOOT
-
-#define CONFIG_SYS_SPL_MALLOC_START	0x70080000
-#define CONFIG_SYS_SPL_MALLOC_SIZE	0x00080000
-
 #elif CONFIG_NAND_BOOT
 #define CONFIG_SYS_NAND_U_BOOT_SIZE	0x80000
 
diff --git a/include/configs/at91sam9n12ek.h b/include/configs/at91sam9n12ek.h
index d9b7269a1f4a..abcddc3cc9d7 100644
--- a/include/configs/at91sam9n12ek.h
+++ b/include/configs/at91sam9n12ek.h
@@ -53,9 +53,6 @@
 
 /* SPL */
 
-#define CONFIG_SYS_SPL_MALLOC_START	0x20080000
-#define CONFIG_SYS_SPL_MALLOC_SIZE	0x80000
-
 #define CONFIG_SYS_MONITOR_LEN		(512 << 10)
 
 #define CONFIG_SYS_MASTER_CLOCK		132096000
diff --git a/include/configs/at91sam9x5ek.h b/include/configs/at91sam9x5ek.h
index f436e8aa699c..6857f2e3c4a2 100644
--- a/include/configs/at91sam9x5ek.h
+++ b/include/configs/at91sam9x5ek.h
@@ -53,9 +53,6 @@
 
 /* SPL */
 
-#define CONFIG_SYS_SPL_MALLOC_START	0x20080000
-#define CONFIG_SYS_SPL_MALLOC_SIZE	0x80000
-
 #define CONFIG_SYS_MONITOR_LEN		(512 << 10)
 
 #define CONFIG_SYS_MASTER_CLOCK		132096000
diff --git a/include/configs/bur_am335x_common.h b/include/configs/bur_am335x_common.h
index 0f3b53c47a63..a6de28a42b2e 100644
--- a/include/configs/bur_am335x_common.h
+++ b/include/configs/bur_am335x_common.h
@@ -68,9 +68,6 @@
  *
  * ----------------------------------------------------------------------------
  */
-#define CONFIG_SYS_SPL_MALLOC_START	(CONFIG_SPL_BSS_START_ADDR + \
-					CONFIG_SPL_BSS_MAX_SIZE)
-#define CONFIG_SYS_SPL_MALLOC_SIZE	CONFIG_SYS_MALLOC_LEN
 
 /* General parts of the framework, required. */
 
diff --git a/include/configs/capricorn-common.h b/include/configs/capricorn-common.h
index ad28251f1d89..933fcfcfd287 100644
--- a/include/configs/capricorn-common.h
+++ b/include/configs/capricorn-common.h
@@ -17,8 +17,6 @@
 
 #define CONFIG_SYS_MONITOR_LEN		(1024 * 1024)
 
-#define CONFIG_SYS_SPL_MALLOC_START	0x00120000
-#define CONFIG_SYS_SPL_MALLOC_SIZE	0x3000	/* 12 KB */
 #define CONFIG_MALLOC_F_ADDR		0x00120000
 
 #define CONFIG_SPL_RAW_IMAGE_ARM_TRUSTED_FIRMWARE
diff --git a/include/configs/cgtqmx8.h b/include/configs/cgtqmx8.h
index 2c029f42b60e..0266d6988ce1 100644
--- a/include/configs/cgtqmx8.h
+++ b/include/configs/cgtqmx8.h
@@ -14,8 +14,6 @@
 #ifdef CONFIG_SPL_BUILD
 #define CONFIG_SYS_MONITOR_LEN				(1024 * 1024)
 
-#define CONFIG_SYS_SPL_MALLOC_START	0x00120000
-#define CONFIG_SYS_SPL_MALLOC_SIZE	0x3000	/* 12 KB */
 #define CONFIG_SERIAL_LPUART_BASE	0x5a060000
 #define CONFIG_MALLOC_F_ADDR		0x00120000
 
diff --git a/include/configs/da850evm.h b/include/configs/da850evm.h
index b48881924938..71ebca587d14 100644
--- a/include/configs/da850evm.h
+++ b/include/configs/da850evm.h
@@ -178,9 +178,6 @@
 
 #ifdef CONFIG_SPL_BUILD
 /* defines for SPL */
-#define CONFIG_SYS_SPL_MALLOC_START	(CONFIG_SYS_TEXT_BASE - \
-						CONFIG_SYS_MALLOC_LEN)
-#define CONFIG_SYS_SPL_MALLOC_SIZE	CONFIG_SYS_MALLOC_LEN
 
 #endif
 
diff --git a/include/configs/devkit8000.h b/include/configs/devkit8000.h
index b46f6226909e..340c9d0d4a30 100644
--- a/include/configs/devkit8000.h
+++ b/include/configs/devkit8000.h
@@ -23,9 +23,6 @@
  * other needs.
  */
 
-#define CONFIG_SYS_SPL_MALLOC_START	0x80208000
-#define CONFIG_SYS_SPL_MALLOC_SIZE	0x100000	/* 1 MB */
-
 /*  Physical Memory Map  */
 
 #include <configs/ti_omap3_common.h>
diff --git a/include/configs/edminiv2.h b/include/configs/edminiv2.h
index 1c260c7ad400..1d6e6bcc4345 100644
--- a/include/configs/edminiv2.h
+++ b/include/configs/edminiv2.h
@@ -15,8 +15,6 @@
  * SPL
  */
 
-#define CONFIG_SYS_SPL_MALLOC_START	0x00040000
-#define CONFIG_SYS_SPL_MALLOC_SIZE	0x0001ffff
 #define CONFIG_SYS_UBOOT_BASE		0xfff90000
 #define CONFIG_SYS_UBOOT_START		0x00800000
 
diff --git a/include/configs/gardena-smart-gateway-at91sam.h b/include/configs/gardena-smart-gateway-at91sam.h
index ea54d9964f0d..c6a84a79e67a 100644
--- a/include/configs/gardena-smart-gateway-at91sam.h
+++ b/include/configs/gardena-smart-gateway-at91sam.h
@@ -34,9 +34,6 @@
 
 /* SPL */
 
-#define CONFIG_SYS_SPL_MALLOC_START	0x20080000
-#define CONFIG_SYS_SPL_MALLOC_SIZE	0x80000
-
 #define CONFIG_SYS_MONITOR_LEN		(512 << 10)
 
 #define CONFIG_SYS_MASTER_CLOCK		132096000
diff --git a/include/configs/imx6_spl.h b/include/configs/imx6_spl.h
index 0b0cf9ddee64..488b2f1696a9 100644
--- a/include/configs/imx6_spl.h
+++ b/include/configs/imx6_spl.h
@@ -18,14 +18,6 @@
 #define CONFIG_SYS_SATA_FAT_BOOT_PARTITION	1
 #endif
 
-#if defined(CONFIG_MX6SX) || defined(CONFIG_MX6SL) || \
-	defined(CONFIG_MX6UL) || defined(CONFIG_MX6ULL)
-#define CONFIG_SYS_SPL_MALLOC_START    0x88300000
-#define CONFIG_SYS_SPL_MALLOC_SIZE     0x100000		/* 1 MB */
-#else
-#define CONFIG_SYS_SPL_MALLOC_START	0x18300000
-#define CONFIG_SYS_SPL_MALLOC_SIZE	0x100000	/* 1 MB */
-#endif
 #endif
 
 #endif
diff --git a/include/configs/imx7_spl.h b/include/configs/imx7_spl.h
index 6f7ec9ea8c81..5900c05db1fb 100644
--- a/include/configs/imx7_spl.h
+++ b/include/configs/imx7_spl.h
@@ -17,9 +17,6 @@
 #define CONFIG_SYS_MONITOR_LEN			409600	/* 400 KB */
 #endif
 
-#define CONFIG_SYS_SPL_MALLOC_START    0x88300000
-#define CONFIG_SYS_SPL_MALLOC_SIZE     0x100000		/* 1 MB */
-
 #endif /* CONFIG_SPL */
 
 #endif /* __IMX7_SPL_CONFIG_H */
diff --git a/include/configs/imx8mm-cl-iot-gate.h b/include/configs/imx8mm-cl-iot-gate.h
index 638e8cc3b422..297d56b427f8 100644
--- a/include/configs/imx8mm-cl-iot-gate.h
+++ b/include/configs/imx8mm-cl-iot-gate.h
@@ -17,9 +17,6 @@
 	(QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512)
 
 #ifdef CONFIG_SPL_BUILD
-#define CONFIG_SYS_SPL_MALLOC_START	0x42200000
-#define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_512K	/* 512 KB */
-
 /* malloc f used before GD_FLG_FULL_MALLOC_INIT set */
 #define CONFIG_MALLOC_F_ADDR		0x912000
 /* For RAW image gives a error info not panic */
diff --git a/include/configs/imx8mm_beacon.h b/include/configs/imx8mm_beacon.h
index 09788ebe2417..897eac66b148 100644
--- a/include/configs/imx8mm_beacon.h
+++ b/include/configs/imx8mm_beacon.h
@@ -14,9 +14,6 @@
 	(QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512)
 
 #ifdef CONFIG_SPL_BUILD
-#define CONFIG_SYS_SPL_MALLOC_START	0x42200000
-#define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_512K	/* 512 KB */
-
 /* malloc f used before GD_FLG_FULL_MALLOC_INIT set */
 #define CONFIG_MALLOC_F_ADDR		0x930000
 /* For RAW image gives a error info not panic */
diff --git a/include/configs/imx8mm_data_modul_edm_sbc.h b/include/configs/imx8mm_data_modul_edm_sbc.h
index 17d0f19ef216..bb19aa292b81 100644
--- a/include/configs/imx8mm_data_modul_edm_sbc.h
+++ b/include/configs/imx8mm_data_modul_edm_sbc.h
@@ -15,9 +15,6 @@
 #define CONFIG_SYS_MONITOR_LEN		SZ_1M
 
 #ifdef CONFIG_SPL_BUILD
-#define CONFIG_SYS_SPL_MALLOC_START	0x42200000
-#define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_16M	/* 16 MiB */
-
 #define CONFIG_MALLOC_F_ADDR		0x930000
 
 /* For RAW image gives a error info not panic */
diff --git a/include/configs/imx8mm_evk.h b/include/configs/imx8mm_evk.h
index a6ae1ab8bf0f..983743b50936 100644
--- a/include/configs/imx8mm_evk.h
+++ b/include/configs/imx8mm_evk.h
@@ -16,9 +16,6 @@
 	(QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512)
 
 #ifdef CONFIG_SPL_BUILD
-#define CONFIG_SYS_SPL_MALLOC_START	0x42200000
-#define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_512K	/* 512 KB */
-
 /* malloc f used before GD_FLG_FULL_MALLOC_INIT set */
 #define CONFIG_MALLOC_F_ADDR		0x930000
 /* For RAW image gives a error info not panic */
diff --git a/include/configs/imx8mm_icore_mx8mm.h b/include/configs/imx8mm_icore_mx8mm.h
index b3ee0e200998..e6642936cba0 100644
--- a/include/configs/imx8mm_icore_mx8mm.h
+++ b/include/configs/imx8mm_icore_mx8mm.h
@@ -15,9 +15,6 @@
 	(QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512)
 
 #ifdef CONFIG_SPL_BUILD
-# define CONFIG_SYS_SPL_MALLOC_START	0x42200000
-# define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_512K
-
 /* malloc f used before GD_FLG_FULL_MALLOC_INIT set */
 # define CONFIG_MALLOC_F_ADDR		0x930000
 /* For RAW image gives a error info not panic */
diff --git a/include/configs/imx8mm_venice.h b/include/configs/imx8mm_venice.h
index 4b41f351d831..595c10749668 100644
--- a/include/configs/imx8mm_venice.h
+++ b/include/configs/imx8mm_venice.h
@@ -14,9 +14,6 @@
 	(QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512)
 
 #ifdef CONFIG_SPL_BUILD
-#define CONFIG_SYS_SPL_MALLOC_START	0x42200000
-#define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_1M
-
 /* malloc f used before GD_FLG_FULL_MALLOC_INIT set */
 #define CONFIG_MALLOC_F_ADDR		0x930000
 /* For RAW image gives a error info not panic */
diff --git a/include/configs/imx8mn_beacon.h b/include/configs/imx8mn_beacon.h
index 5fac4ad5e605..99cbc1d07c8f 100644
--- a/include/configs/imx8mn_beacon.h
+++ b/include/configs/imx8mn_beacon.h
@@ -14,9 +14,6 @@
 	(QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512)
 
 #ifdef CONFIG_SPL_BUILD
-#define CONFIG_SYS_SPL_MALLOC_START	0x42200000
-#define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_512K
-
 /* malloc f used before GD_FLG_FULL_MALLOC_INIT set */
 #define CONFIG_MALLOC_F_ADDR		0x184000
 
diff --git a/include/configs/imx8mn_bsh_smm_s2_common.h b/include/configs/imx8mn_bsh_smm_s2_common.h
index 5aa5a311ca85..5bdbd37e9cb9 100644
--- a/include/configs/imx8mn_bsh_smm_s2_common.h
+++ b/include/configs/imx8mn_bsh_smm_s2_common.h
@@ -16,11 +16,6 @@
 #define CONFIG_SYS_UBOOT_BASE	\
 	(QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512)
 
-#define CONFIG_SYS_SPL_MALLOC_START	0x42200000
-#define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_512K
-
-
-
 #define MEM_LAYOUT_ENV_SETTINGS \
 	"scriptaddr=" __stringify(CONFIG_SYS_LOAD_ADDR) "\0" \
 	"kernel_addr_r=" __stringify(CONFIG_SYS_LOAD_ADDR) "\0" \
diff --git a/include/configs/imx8mn_evk.h b/include/configs/imx8mn_evk.h
index 8f199672ff53..73ba49b0d8fb 100644
--- a/include/configs/imx8mn_evk.h
+++ b/include/configs/imx8mn_evk.h
@@ -17,9 +17,6 @@
 	(QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512)
 
 #ifdef CONFIG_SPL_BUILD
-#define CONFIG_SYS_SPL_MALLOC_START	0x42200000
-#define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_512K	/* 512 KB */
-
 /* For RAW image gives a error info not panic */
 #define CONFIG_SPL_ABORT_ON_RAW_IMAGE
 
diff --git a/include/configs/imx8mn_var_som.h b/include/configs/imx8mn_var_som.h
index d9cf466b0daa..ce679098e5c2 100644
--- a/include/configs/imx8mn_var_som.h
+++ b/include/configs/imx8mn_var_som.h
@@ -16,9 +16,6 @@
 #define CONFIG_SYS_UBOOT_BASE	\
 	(QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512)
 
-#define CONFIG_SYS_SPL_MALLOC_START	0x42200000
-#define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_512K
-
 #define BOOT_TARGET_DEVICES(func) \
 	func(MMC, mmc, 1) \
 	func(MMC, mmc, 2) \
diff --git a/include/configs/imx8mn_venice.h b/include/configs/imx8mn_venice.h
index 7a449c9f2016..8565ba7fdb15 100644
--- a/include/configs/imx8mn_venice.h
+++ b/include/configs/imx8mn_venice.h
@@ -14,9 +14,6 @@
 	(QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512)
 
 #ifdef CONFIG_SPL_BUILD
-#define CONFIG_SYS_SPL_MALLOC_START	0x42200000
-#define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_512K	/* 512 KB */
-
 /* For RAW image gives a error info not panic */
 #define CONFIG_SPL_ABORT_ON_RAW_IMAGE
 #endif
diff --git a/include/configs/imx8mp_dhcom_pdk2.h b/include/configs/imx8mp_dhcom_pdk2.h
index 33b101daf997..1ad90e5bdbd9 100644
--- a/include/configs/imx8mp_dhcom_pdk2.h
+++ b/include/configs/imx8mp_dhcom_pdk2.h
@@ -15,9 +15,6 @@
 #define CONFIG_SYS_MONITOR_LEN		SZ_1M
 
 #ifdef CONFIG_SPL_BUILD
-#define CONFIG_SYS_SPL_MALLOC_START	0x4c000000
-#define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_512K	/* 512 kiB */
-
 /* For RAW image gives a error info not panic */
 #define CONFIG_SPL_ABORT_ON_RAW_IMAGE
 
diff --git a/include/configs/imx8mp_evk.h b/include/configs/imx8mp_evk.h
index ba059f7d68b3..65c1616bca72 100644
--- a/include/configs/imx8mp_evk.h
+++ b/include/configs/imx8mp_evk.h
@@ -17,8 +17,6 @@
 
 #ifdef CONFIG_SPL_BUILD
 /*#define CONFIG_ENABLE_DDR_TRAINING_DEBUG*/
-#define CONFIG_SYS_SPL_MALLOC_START	0x42200000
-#define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_512K	/* 512 KB */
 
 #define CONFIG_SPL_ABORT_ON_RAW_IMAGE
 
diff --git a/include/configs/imx8mp_rsb3720.h b/include/configs/imx8mp_rsb3720.h
index f98f04b46f19..efff6b955534 100644
--- a/include/configs/imx8mp_rsb3720.h
+++ b/include/configs/imx8mp_rsb3720.h
@@ -27,9 +27,6 @@
 		 0x5f, 0xd3, 0x6b, 0x9b, 0xe5, 0xb9)
 
 #ifdef CONFIG_SPL_BUILD
-#define CONFIG_SYS_SPL_MALLOC_START	0x42200000
-#define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_512K	/* 512 KB */
-
 #define CONFIG_MALLOC_F_ADDR		0x184000 /* malloc f used before \
 						  * GD_FLG_FULL_MALLOC_INIT \
 						  * set \
diff --git a/include/configs/imx8mp_venice.h b/include/configs/imx8mp_venice.h
index 2933e4a5dedb..e1d335539568 100644
--- a/include/configs/imx8mp_venice.h
+++ b/include/configs/imx8mp_venice.h
@@ -14,9 +14,6 @@
 	(QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512)
 
 #ifdef CONFIG_SPL_BUILD
-#define CONFIG_SYS_SPL_MALLOC_START	0x42200000
-#define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_512K	/* 512 KB */
-
 /* For RAW image gives a error info not panic */
 #define CONFIG_SPL_ABORT_ON_RAW_IMAGE
 #endif
diff --git a/include/configs/imx8mq_cm.h b/include/configs/imx8mq_cm.h
index 11ed33ddc8ec..a242d5e3e8ee 100644
--- a/include/configs/imx8mq_cm.h
+++ b/include/configs/imx8mq_cm.h
@@ -15,8 +15,6 @@
 #define CONFIG_SYS_MONITOR_LEN		(512 * 1024)
 
 #ifdef CONFIG_SPL_BUILD
-#define CONFIG_SYS_SPL_MALLOC_START    0x42200000
-#define CONFIG_SYS_SPL_MALLOC_SIZE    0x80000	/* 512 KB */
 #define CONFIG_SYS_SPL_PTE_RAM_BASE    0x41580000
 
 /* malloc f used before GD_FLG_FULL_MALLOC_INIT set */
diff --git a/include/configs/imx8mq_evk.h b/include/configs/imx8mq_evk.h
index b9dbbb7d069f..98ddb06fe337 100644
--- a/include/configs/imx8mq_evk.h
+++ b/include/configs/imx8mq_evk.h
@@ -16,8 +16,6 @@
 
 #ifdef CONFIG_SPL_BUILD
 /*#define CONFIG_ENABLE_DDR_TRAINING_DEBUG*/
-#define CONFIG_SYS_SPL_MALLOC_START    0x42200000
-#define CONFIG_SYS_SPL_MALLOC_SIZE    0x80000	/* 512 KB */
 #define CONFIG_SYS_SPL_PTE_RAM_BASE    0x41580000
 
 /* malloc f used before GD_FLG_FULL_MALLOC_INIT set */
diff --git a/include/configs/imx8mq_phanbell.h b/include/configs/imx8mq_phanbell.h
index 4507d7c54c8f..1b3c0493ebd1 100644
--- a/include/configs/imx8mq_phanbell.h
+++ b/include/configs/imx8mq_phanbell.h
@@ -13,8 +13,6 @@
 
 #ifdef CONFIG_SPL_BUILD
 /*#define CONFIG_ENABLE_DDR_TRAINING_DEBUG*/
-#define CONFIG_SYS_SPL_MALLOC_START    0x42200000
-#define CONFIG_SYS_SPL_MALLOC_SIZE    0x80000	/* 512 KB */
 #define CONFIG_SYS_SPL_PTE_RAM_BASE    0x41580000
 
 /* malloc f used before GD_FLG_FULL_MALLOC_INIT set */
diff --git a/include/configs/imx8qm_mek.h b/include/configs/imx8qm_mek.h
index 697194178549..f4d19f87312f 100644
--- a/include/configs/imx8qm_mek.h
+++ b/include/configs/imx8qm_mek.h
@@ -15,8 +15,6 @@
 #ifdef CONFIG_SPL_BUILD
 #define CONFIG_SYS_MONITOR_LEN				(1024 * 1024)
 
-#define CONFIG_SYS_SPL_MALLOC_START	0x00120000
-#define CONFIG_SYS_SPL_MALLOC_SIZE	0x3000	/* 12 KB */
 #define CONFIG_SERIAL_LPUART_BASE	0x5a060000
 #define CONFIG_MALLOC_F_ADDR		0x00120000
 
diff --git a/include/configs/imx8qxp_mek.h b/include/configs/imx8qxp_mek.h
index 0a6746c42c35..a6aabc7add70 100644
--- a/include/configs/imx8qxp_mek.h
+++ b/include/configs/imx8qxp_mek.h
@@ -13,8 +13,6 @@
 #ifdef CONFIG_SPL_BUILD
 #define CONFIG_SYS_MONITOR_LEN				(1024 * 1024)
 
-#define CONFIG_SYS_SPL_MALLOC_START	0x00120000
-#define CONFIG_SYS_SPL_MALLOC_SIZE	0x3000	/* 12 KB */
 #define CONFIG_SERIAL_LPUART_BASE	0x5a060000
 #define CONFIG_MALLOC_F_ADDR		0x00120000
 
diff --git a/include/configs/imx8ulp_evk.h b/include/configs/imx8ulp_evk.h
index 34ebfda29f9a..987069447d53 100644
--- a/include/configs/imx8ulp_evk.h
+++ b/include/configs/imx8ulp_evk.h
@@ -14,9 +14,6 @@
 #define CONFIG_SYS_UBOOT_BASE	(QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512)
 
 #ifdef CONFIG_SPL_BUILD
-#define CONFIG_SYS_SPL_MALLOC_START	0x22040000
-#define CONFIG_SYS_SPL_MALLOC_SIZE	0x8000	/* 32 KB */
-
 #define CONFIG_MALLOC_F_ADDR		0x22040000
 
 #define CONFIG_SPL_ABORT_ON_RAW_IMAGE /* For RAW image gives a error info not panic */
diff --git a/include/configs/j721e_evm.h b/include/configs/j721e_evm.h
index 8e7861fc9124..a81496145c60 100644
--- a/include/configs/j721e_evm.h
+++ b/include/configs/j721e_evm.h
@@ -24,11 +24,6 @@
 /* Image load address in RAM for DFU boot*/
 #else
 #define CONFIG_SYS_UBOOT_BASE		0x50080000
-/* Set the stack right below the SPL BSS section */
-/* Configure R5 SPL post-relocation malloc pool in DDR */
-#define CONFIG_SYS_SPL_MALLOC_START	0x84000000
-#define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_16M
-/* Image load address in RAM for DFU boot*/
 #endif
 
 #define CONFIG_SYS_BOOTM_LEN		SZ_64M
diff --git a/include/configs/j721s2_evm.h b/include/configs/j721s2_evm.h
index 6099db1d429e..8e3ea670d089 100644
--- a/include/configs/j721s2_evm.h
+++ b/include/configs/j721s2_evm.h
@@ -25,11 +25,6 @@
 /* Image load address in RAM for DFU boot*/
 #else
 #define CONFIG_SYS_UBOOT_BASE		0x50080000
-/* Set the stack right below the SPL BSS section */
-/* Configure R5 SPL post-relocation malloc pool in DDR */
-#define CONFIG_SYS_SPL_MALLOC_START	0x84000000
-#define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_16M
-/* Image load address in RAM for DFU boot*/
 #endif
 
 #define CONFIG_SYS_BOOTM_LEN		SZ_64M
diff --git a/include/configs/kontron-sl-mx8mm.h b/include/configs/kontron-sl-mx8mm.h
index eb6c5e60910c..95b836c54702 100644
--- a/include/configs/kontron-sl-mx8mm.h
+++ b/include/configs/kontron-sl-mx8mm.h
@@ -55,8 +55,6 @@
 #define CONFIG_SYS_BOOTM_LEN		SZ_64M
 
 #ifdef CONFIG_SPL_BUILD
-#define CONFIG_SYS_SPL_MALLOC_START	0x42200000
-#define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_512K
 /* malloc f used before GD_FLG_FULL_MALLOC_INIT set */
 #define CONFIG_MALLOC_F_ADDR		0x930000
 #endif
diff --git a/include/configs/kontron_pitx_imx8m.h b/include/configs/kontron_pitx_imx8m.h
index f86b7fd471a4..88aaa55bef53 100644
--- a/include/configs/kontron_pitx_imx8m.h
+++ b/include/configs/kontron_pitx_imx8m.h
@@ -17,8 +17,6 @@
 		 0x40, 0xd4, 0x5c, 0xca, 0x13, 0x99)
 
 #ifdef CONFIG_SPL_BUILD
-#define CONFIG_SYS_SPL_MALLOC_START     0x42200000
-#define CONFIG_SYS_SPL_MALLOC_SIZE      SZ_512K
 #define CONFIG_SYS_SPL_PTE_RAM_BASE     0x41580000
 
 /* malloc f used before GD_FLG_FULL_MALLOC_INIT set */
diff --git a/include/configs/kontron_sl28.h b/include/configs/kontron_sl28.h
index 676e2c6ee443..6beb0bdf3ed0 100644
--- a/include/configs/kontron_sl28.h
+++ b/include/configs/kontron_sl28.h
@@ -42,8 +42,6 @@
 
 /* SPL */
 
-#define CONFIG_SYS_SPL_MALLOC_SIZE	0x00100000
-#define CONFIG_SYS_SPL_MALLOC_START	0x80200000
 #define CONFIG_SYS_MONITOR_LEN		(1024 * 1024)
 
 /* GUID for capsule updatable firmware image */
diff --git a/include/configs/ls1021aiot.h b/include/configs/ls1021aiot.h
index b592786fd895..6a0ccbf836fa 100644
--- a/include/configs/ls1021aiot.h
+++ b/include/configs/ls1021aiot.h
@@ -42,9 +42,6 @@
 #define SDRAM_CFG_BI			0x00000001
 
 #ifdef CONFIG_SD_BOOT
-#define CONFIG_SYS_SPL_MALLOC_START	(CONFIG_SYS_TEXT_BASE + \
-		CONFIG_SYS_MONITOR_LEN)
-#define CONFIG_SYS_SPL_MALLOC_SIZE	0x100000
 #define CONFIG_SYS_MONITOR_LEN		0x80000
 #endif
 
diff --git a/include/configs/ls1021aqds.h b/include/configs/ls1021aqds.h
index bddd6be30db0..e17bdcad6d04 100644
--- a/include/configs/ls1021aqds.h
+++ b/include/configs/ls1021aqds.h
@@ -11,9 +11,6 @@
 #define CONFIG_SYS_INIT_RAM_SIZE	OCRAM_SIZE
 
 #ifdef CONFIG_SD_BOOT
-#define CONFIG_SYS_SPL_MALLOC_START	(CONFIG_SYS_TEXT_BASE + \
-		CONFIG_SYS_MONITOR_LEN)
-#define CONFIG_SYS_SPL_MALLOC_SIZE	0x100000
 #define CONFIG_SYS_MONITOR_LEN		0xc0000
 #endif
 
@@ -22,8 +19,6 @@
 #define CONFIG_SYS_NAND_U_BOOT_DST	CONFIG_SYS_TEXT_BASE
 #define CONFIG_SYS_NAND_U_BOOT_START	CONFIG_SYS_TEXT_BASE
 
-#define CONFIG_SYS_SPL_MALLOC_START	0x80200000
-#define CONFIG_SYS_SPL_MALLOC_SIZE	0x100000
 #define CONFIG_SYS_MONITOR_LEN		0x80000
 #endif
 
diff --git a/include/configs/ls1021atsn.h b/include/configs/ls1021atsn.h
index 97c3bbeae566..905c63d4ddad 100644
--- a/include/configs/ls1021atsn.h
+++ b/include/configs/ls1021atsn.h
@@ -44,10 +44,6 @@
 #define CONFIG_U_BOOT_HDR_SIZE		(16 << 10)
 #endif /* ifdef CONFIG_NXP_ESBC */
 
-#define CONFIG_SYS_SPL_MALLOC_START	(CONFIG_SYS_TEXT_BASE + \
-		CONFIG_SYS_MONITOR_LEN)
-#define CONFIG_SYS_SPL_MALLOC_SIZE	0x100000
-
 #ifdef CONFIG_U_BOOT_HDR_SIZE
 /*
  * HDR would be appended at end of image and copied to DDR along
diff --git a/include/configs/ls1021atwr.h b/include/configs/ls1021atwr.h
index 1141a9b013e1..d85a776daa17 100644
--- a/include/configs/ls1021atwr.h
+++ b/include/configs/ls1021atwr.h
@@ -46,10 +46,6 @@
 #define CONFIG_U_BOOT_HDR_SIZE				(16 << 10)
 #endif /* ifdef CONFIG_NXP_ESBC */
 
-#define CONFIG_SYS_SPL_MALLOC_START	(CONFIG_SYS_TEXT_BASE + \
-		CONFIG_SYS_MONITOR_LEN)
-#define CONFIG_SYS_SPL_MALLOC_SIZE	0x100000
-
 #ifdef CONFIG_U_BOOT_HDR_SIZE
 /*
  * HDR would be appended at end of image and copied to DDR along
diff --git a/include/configs/ls1043a_common.h b/include/configs/ls1043a_common.h
index fee760f1123d..fe9a8fd3754e 100644
--- a/include/configs/ls1043a_common.h
+++ b/include/configs/ls1043a_common.h
@@ -46,10 +46,6 @@
 
 /* SD boot SPL */
 #ifdef CONFIG_SD_BOOT
-#define CONFIG_SYS_SPL_MALLOC_START	(CONFIG_SPL_BSS_START_ADDR + \
-					CONFIG_SPL_BSS_MAX_SIZE)
-#define CONFIG_SYS_SPL_MALLOC_SIZE	0x100000
-
 #ifdef CONFIG_NXP_ESBC
 #define CONFIG_U_BOOT_HDR_SIZE				(16 << 10)
 /*
@@ -68,8 +64,6 @@
 #ifdef CONFIG_NAND_BOOT
 #define CONFIG_SYS_NAND_U_BOOT_DST	CONFIG_SYS_TEXT_BASE
 #define CONFIG_SYS_NAND_U_BOOT_START	CONFIG_SYS_TEXT_BASE
-#define CONFIG_SYS_SPL_MALLOC_START	0x80200000
-#define CONFIG_SYS_SPL_MALLOC_SIZE	0x100000
 
 #ifdef CONFIG_NXP_ESBC
 #define CONFIG_U_BOOT_HDR_SIZE				(16 << 10)
diff --git a/include/configs/ls1046a_common.h b/include/configs/ls1046a_common.h
index d283c8587a99..c2563b11d052 100644
--- a/include/configs/ls1046a_common.h
+++ b/include/configs/ls1046a_common.h
@@ -46,10 +46,6 @@
 
 /* SD boot SPL */
 #ifdef CONFIG_SD_BOOT
-#define CONFIG_SYS_SPL_MALLOC_START	(CONFIG_SPL_BSS_START_ADDR + \
-					CONFIG_SPL_BSS_MAX_SIZE)
-#define CONFIG_SYS_SPL_MALLOC_SIZE	0x100000
-
 #ifdef CONFIG_NXP_ESBC
 #define CONFIG_U_BOOT_HDR_SIZE				(16 << 10)
 /*
@@ -66,9 +62,6 @@
 
 #if defined(CONFIG_QSPI_BOOT) && defined(CONFIG_SPL)
 #define CONFIG_SPL_TARGET		"spl/u-boot-spl.pbl"
-#define CONFIG_SYS_SPL_MALLOC_START	(CONFIG_SPL_BSS_START_ADDR + \
-					CONFIG_SPL_BSS_MAX_SIZE)
-#define CONFIG_SYS_SPL_MALLOC_SIZE	0x100000
 #define CONFIG_SYS_MONITOR_LEN		0x100000
 #endif
 
@@ -77,9 +70,6 @@
 #define CONFIG_SYS_NAND_U_BOOT_DST	CONFIG_SYS_TEXT_BASE
 #define CONFIG_SYS_NAND_U_BOOT_START	CONFIG_SYS_TEXT_BASE
 
-#define CONFIG_SYS_SPL_MALLOC_START	(CONFIG_SPL_BSS_START_ADDR + \
-					CONFIG_SPL_BSS_MAX_SIZE)
-#define CONFIG_SYS_SPL_MALLOC_SIZE	0x100000
 #define CONFIG_SYS_MONITOR_LEN		0xa0000
 #endif
 
diff --git a/include/configs/ls1088a_common.h b/include/configs/ls1088a_common.h
index 83dcddafcfa1..3ef163d5eae7 100644
--- a/include/configs/ls1088a_common.h
+++ b/include/configs/ls1088a_common.h
@@ -146,9 +146,6 @@ unsigned long long get_qixis_addr(void);
 #ifdef CONFIG_SPL
 #define CONFIG_SPL_TARGET              "u-boot-with-spl.bin"
 
-#define CONFIG_SYS_SPL_MALLOC_SIZE     0x00100000
-#define CONFIG_SYS_SPL_MALLOC_START    0x80200000
-
 #ifdef CONFIG_NXP_ESBC
 #define CONFIG_U_BOOT_HDR_SIZE		(16 << 10)
 /*
diff --git a/include/configs/ls2080a_common.h b/include/configs/ls2080a_common.h
index e32159baffcb..3551a0ddb045 100644
--- a/include/configs/ls2080a_common.h
+++ b/include/configs/ls2080a_common.h
@@ -143,8 +143,6 @@ unsigned long long get_qixis_addr(void);
 #define CONFIG_SYS_NAND_U_BOOT_DST	0x80400000
 #define CONFIG_SYS_NAND_U_BOOT_START	CONFIG_SYS_NAND_U_BOOT_DST
 #endif
-#define CONFIG_SYS_SPL_MALLOC_SIZE	0x00100000
-#define CONFIG_SYS_SPL_MALLOC_START	0x80200000
 #define CONFIG_SYS_MONITOR_LEN		(1024 * 1024)
 
 #define CONFIG_SYS_BOOTM_LEN   (64 << 20)      /* Increase max gunzip size */
diff --git a/include/configs/omapl138_lcdk.h b/include/configs/omapl138_lcdk.h
index e3a679efe701..a344a46a3e66 100644
--- a/include/configs/omapl138_lcdk.h
+++ b/include/configs/omapl138_lcdk.h
@@ -169,9 +169,6 @@
 /* SD/MMC */
 
 /* defines for SPL */
-#define CONFIG_SYS_SPL_MALLOC_START	(CONFIG_SYS_TEXT_BASE - \
-						CONFIG_SYS_MALLOC_LEN)
-#define CONFIG_SYS_SPL_MALLOC_SIZE	CONFIG_SYS_MALLOC_LEN
 
 /* additions for new relocation code, must added to all boards */
 #define CONFIG_SYS_SDRAM_BASE		0xc0000000
diff --git a/include/configs/openpiton-riscv64.h b/include/configs/openpiton-riscv64.h
index d3b638e838fb..497f0d50d0aa 100644
--- a/include/configs/openpiton-riscv64.h
+++ b/include/configs/openpiton-riscv64.h
@@ -18,10 +18,6 @@
 #define CONFIG_SYS_BOOTM_LEN        SZ_256M
 
 #ifdef CONFIG_SPL
-#define CONFIG_SYS_SPL_MALLOC_START (CONFIG_SPL_BSS_START_ADDR + \
-		CONFIG_SPL_BSS_MAX_SIZE)
-#define CONFIG_SYS_SPL_MALLOC_SIZE  0x0100000
-
 #define CONFIG_SPL_GD_ADDR 0x85000000
 #endif
 
diff --git a/include/configs/phycore_imx8mm.h b/include/configs/phycore_imx8mm.h
index bf08e7a62419..1d01104cfe83 100644
--- a/include/configs/phycore_imx8mm.h
+++ b/include/configs/phycore_imx8mm.h
@@ -17,9 +17,6 @@
 		(QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512)
 
 #ifdef CONFIG_SPL_BUILD
-#define CONFIG_SYS_SPL_MALLOC_START	0x42200000
-#define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_512K
-
 /* malloc f used before GD_FLG_FULL_MALLOC_INIT set */
 #define CONFIG_MALLOC_F_ADDR		0x930000
 /* For RAW image gives a error info not panic */
diff --git a/include/configs/phycore_imx8mp.h b/include/configs/phycore_imx8mp.h
index c2e370d5a8de..75ddcf465f9e 100644
--- a/include/configs/phycore_imx8mp.h
+++ b/include/configs/phycore_imx8mp.h
@@ -17,9 +17,6 @@
 		(QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512)
 
 #ifdef CONFIG_SPL_BUILD
-#define CONFIG_SYS_SPL_MALLOC_START	0x42200000
-#define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_512K
-
 #define CONFIG_SPL_ABORT_ON_RAW_IMAGE
 
 #define CONFIG_POWER_PCA9450
diff --git a/include/configs/pico-imx8mq.h b/include/configs/pico-imx8mq.h
index 508909a744d9..25ad936a06bb 100644
--- a/include/configs/pico-imx8mq.h
+++ b/include/configs/pico-imx8mq.h
@@ -13,8 +13,6 @@
 
 #ifdef CONFIG_SPL_BUILD
 /*#define CONFIG_ENABLE_DDR_TRAINING_DEBUG*/
-#define CONFIG_SYS_SPL_MALLOC_START	0x42200000
-#define CONFIG_SYS_SPL_MALLOC_SIZE	0x80000	/* 512 KB */
 #define CONFIG_SYS_SPL_PTE_RAM_BASE	0x41580000
 
 /* malloc f used before GD_FLG_FULL_MALLOC_INIT set */
diff --git a/include/configs/pm9g45.h b/include/configs/pm9g45.h
index 614bfad0e424..69f3d0658784 100644
--- a/include/configs/pm9g45.h
+++ b/include/configs/pm9g45.h
@@ -47,10 +47,6 @@
 #define CONFIG_SYS_MONITOR_LEN		0x80000
 
 #ifdef CONFIG_SD_BOOT
-
-#define CONFIG_SYS_SPL_MALLOC_START	0x70080000
-#define CONFIG_SYS_SPL_MALLOC_SIZE	0x00080000
-
 #elif CONFIG_NAND_BOOT
 #define CONFIG_SYS_NAND_U_BOOT_SIZE	0x80000
 
diff --git a/include/configs/qemu-riscv.h b/include/configs/qemu-riscv.h
index 66c2bfb551ab..60223bca0875 100644
--- a/include/configs/qemu-riscv.h
+++ b/include/configs/qemu-riscv.h
@@ -8,13 +8,6 @@
 
 #include <linux/sizes.h>
 
-#ifdef CONFIG_SPL
-
-#define CONFIG_SYS_SPL_MALLOC_START	0x84100000
-#define CONFIG_SYS_SPL_MALLOC_SIZE	0x00100000
-
-#endif
-
 #define CONFIG_SYS_SDRAM_BASE		0x80000000
 
 #define CONFIG_SYS_BOOTM_LEN		SZ_64M
diff --git a/include/configs/sama5d27_som1_ek.h b/include/configs/sama5d27_som1_ek.h
index 8a39069c21fb..0eecb561508e 100644
--- a/include/configs/sama5d27_som1_ek.h
+++ b/include/configs/sama5d27_som1_ek.h
@@ -15,8 +15,6 @@
 #define CONFIG_SYS_AT91_MAIN_CLOCK      24000000 /* from 24 MHz crystal */
 
 /* SPL */
-#define CONFIG_SYS_SPL_MALLOC_START	0x20080000
-#define CONFIG_SYS_SPL_MALLOC_SIZE	0x80000
 
 #define CONFIG_SYS_MONITOR_LEN		(512 << 10)
 
diff --git a/include/configs/sama5d27_wlsom1_ek.h b/include/configs/sama5d27_wlsom1_ek.h
index 14a6e0f05106..178a6ad4eed5 100644
--- a/include/configs/sama5d27_wlsom1_ek.h
+++ b/include/configs/sama5d27_wlsom1_ek.h
@@ -20,8 +20,6 @@
 #define CONFIG_SYS_SDRAM_SIZE		0x10000000
 
 /* SPL */
-#define CONFIG_SYS_SPL_MALLOC_START	0x20080000
-#define CONFIG_SYS_SPL_MALLOC_SIZE	0x80000
 
 #define CONFIG_SYS_MONITOR_LEN		(512 << 10)
 
diff --git a/include/configs/sama5d2_icp.h b/include/configs/sama5d2_icp.h
index 3b1e80921ee2..b18377be66bf 100644
--- a/include/configs/sama5d2_icp.h
+++ b/include/configs/sama5d2_icp.h
@@ -27,8 +27,6 @@
 #endif
 
 /* SPL */
-#define CONFIG_SYS_SPL_MALLOC_START	0x20080000
-#define CONFIG_SYS_SPL_MALLOC_SIZE	0x80000
 
 #define CONFIG_SYS_MONITOR_LEN		(512 << 10)
 
diff --git a/include/configs/sama5d2_xplained.h b/include/configs/sama5d2_xplained.h
index 88020536c054..bbd72979b56e 100644
--- a/include/configs/sama5d2_xplained.h
+++ b/include/configs/sama5d2_xplained.h
@@ -12,8 +12,6 @@
 #include "at91-sama5_common.h"
 
 /* SPL */
-#define CONFIG_SYS_SPL_MALLOC_START	0x20080000
-#define CONFIG_SYS_SPL_MALLOC_SIZE	0x80000
 
 #define CONFIG_SYS_MONITOR_LEN		(512 << 10)
 
diff --git a/include/configs/sama5d3_xplained.h b/include/configs/sama5d3_xplained.h
index eb8f15f310dd..b4590a2ea912 100644
--- a/include/configs/sama5d3_xplained.h
+++ b/include/configs/sama5d3_xplained.h
@@ -49,8 +49,6 @@
 #endif
 
 /* SPL */
-#define CONFIG_SYS_SPL_MALLOC_START	0x20080000
-#define CONFIG_SYS_SPL_MALLOC_SIZE	0x80000
 
 /* size of u-boot.bin to load */
 #define CONFIG_SYS_MONITOR_LEN		(2 * SZ_512K)
diff --git a/include/configs/sama5d3xek.h b/include/configs/sama5d3xek.h
index fe3adece8108..f61b6e0dabc7 100644
--- a/include/configs/sama5d3xek.h
+++ b/include/configs/sama5d3xek.h
@@ -61,8 +61,6 @@
 #endif
 
 /* SPL */
-#define CONFIG_SYS_SPL_MALLOC_START	0x20080000
-#define CONFIG_SYS_SPL_MALLOC_SIZE	0x80000
 
 #define CONFIG_SYS_MONITOR_LEN		(512 << 10)
 
diff --git a/include/configs/sama5d4_xplained.h b/include/configs/sama5d4_xplained.h
index c589b07af48c..d5cd45ca5c3a 100644
--- a/include/configs/sama5d4_xplained.h
+++ b/include/configs/sama5d4_xplained.h
@@ -26,8 +26,6 @@
 #endif
 
 /* SPL */
-#define CONFIG_SYS_SPL_MALLOC_START	0x20080000
-#define CONFIG_SYS_SPL_MALLOC_SIZE	0x80000
 
 #define CONFIG_SYS_MONITOR_LEN		(512 << 10)
 
diff --git a/include/configs/sama5d4ek.h b/include/configs/sama5d4ek.h
index d5cfd2115d1f..411ed29ab3cb 100644
--- a/include/configs/sama5d4ek.h
+++ b/include/configs/sama5d4ek.h
@@ -26,8 +26,6 @@
 #endif
 
 /* SPL */
-#define CONFIG_SYS_SPL_MALLOC_START	0x20080000
-#define CONFIG_SYS_SPL_MALLOC_SIZE	0x80000
 
 #define CONFIG_SYS_MONITOR_LEN		(512 << 10)
 
diff --git a/include/configs/siemens-am33x-common.h b/include/configs/siemens-am33x-common.h
index 4d2e927f4f00..5dc09fa91ccc 100644
--- a/include/configs/siemens-am33x-common.h
+++ b/include/configs/siemens-am33x-common.h
@@ -75,8 +75,6 @@
  * header. That is 0x800FFFC0--0x80100000 should not be used for any
  * other needs.
  */
-#define CONFIG_SYS_SPL_MALLOC_START	0x80208000
-#define CONFIG_SYS_SPL_MALLOC_SIZE	0x100000
 
 /*
  * Since SPL did pll and ddr initialization for us,
diff --git a/include/configs/sifive-unleashed.h b/include/configs/sifive-unleashed.h
index 48a695532c98..3851c50fc178 100644
--- a/include/configs/sifive-unleashed.h
+++ b/include/configs/sifive-unleashed.h
@@ -11,14 +11,6 @@
 
 #include <linux/sizes.h>
 
-#ifdef CONFIG_SPL
-
-#define CONFIG_SYS_SPL_MALLOC_START	(CONFIG_SPL_BSS_START_ADDR + \
-					 CONFIG_SPL_BSS_MAX_SIZE)
-#define CONFIG_SYS_SPL_MALLOC_SIZE	0x00100000
-
-#endif
-
 #define CONFIG_SYS_SDRAM_BASE		0x80000000
 
 #define CONFIG_SYS_BOOTM_LEN		SZ_64M
diff --git a/include/configs/sifive-unmatched.h b/include/configs/sifive-unmatched.h
index 4ad9c058b046..506ba0c25bc8 100644
--- a/include/configs/sifive-unmatched.h
+++ b/include/configs/sifive-unmatched.h
@@ -11,14 +11,6 @@
 
 #include <linux/sizes.h>
 
-#ifdef CONFIG_SPL
-
-#define CONFIG_SYS_SPL_MALLOC_START	(CONFIG_SPL_BSS_START_ADDR + \
-					 CONFIG_SPL_BSS_MAX_SIZE)
-#define CONFIG_SYS_SPL_MALLOC_SIZE	0x00100000
-
-#endif
-
 #define CONFIG_SYS_SDRAM_BASE		0x80000000
 
 #define CONFIG_SYS_BOOTM_LEN		SZ_64M
diff --git a/include/configs/smartweb.h b/include/configs/smartweb.h
index 1e5087444c5e..8667052d3577 100644
--- a/include/configs/smartweb.h
+++ b/include/configs/smartweb.h
@@ -114,10 +114,6 @@
 
 /* Defines for SPL */
 
-#define CONFIG_SYS_SPL_MALLOC_START     (CONFIG_SPL_BSS_START_ADDR + \
-					CONFIG_SPL_BSS_MAX_SIZE)
-#define CONFIG_SYS_SPL_MALLOC_SIZE      CONFIG_SYS_MALLOC_LEN
-
 #define CONFIG_SYS_NAND_ENABLE_PIN_SPL	(2*32 + 14)
 #define CONFIG_SYS_NAND_U_BOOT_SIZE	SZ_512K
 #define	CONFIG_SYS_NAND_U_BOOT_START	CONFIG_SYS_TEXT_BASE
diff --git a/include/configs/sniper.h b/include/configs/sniper.h
index 9f17cd6f1310..0187fca5f0d9 100644
--- a/include/configs/sniper.h
+++ b/include/configs/sniper.h
@@ -48,9 +48,6 @@
  * SPL
  */
 
-#define CONFIG_SYS_SPL_MALLOC_START	0x80208000
-#define CONFIG_SYS_SPL_MALLOC_SIZE	(1024 * 1024)
-
 /*
  * Serial
  */
diff --git a/include/configs/socfpga_arria10_socdk.h b/include/configs/socfpga_arria10_socdk.h
index c20d54a3c5b8..f712928d3c86 100644
--- a/include/configs/socfpga_arria10_socdk.h
+++ b/include/configs/socfpga_arria10_socdk.h
@@ -32,7 +32,6 @@
  */
 
 /* SPL memory allocation configuration, this is for FAT implementation */
-#define CONFIG_SYS_SPL_MALLOC_SIZE	0x00015000
 
 /* The rest of the configuration is shared */
 #include <configs/socfpga_common.h>
diff --git a/include/configs/socfpga_common.h b/include/configs/socfpga_common.h
index 441e3545aa4d..6453ab79527d 100644
--- a/include/configs/socfpga_common.h
+++ b/include/configs/socfpga_common.h
@@ -17,13 +17,8 @@
 #elif defined(CONFIG_TARGET_SOCFPGA_ARRIA10)
 #define CONFIG_SYS_INIT_RAM_ADDR	0xFFE00000
 /* SPL memory allocation configuration, this is for FAT implementation */
-#ifndef CONFIG_SYS_SPL_MALLOC_SIZE
-#define CONFIG_SYS_SPL_MALLOC_SIZE	0x10000
-#endif
 #define CONFIG_SYS_INIT_RAM_SIZE	(SOCFPGA_PHYS_OCRAM_SIZE - \
 					 CONFIG_SYS_SPL_MALLOC_SIZE)
-#define CONFIG_SYS_SPL_MALLOC_START	(CONFIG_SYS_INIT_RAM_ADDR + \
-					 CONFIG_SYS_INIT_RAM_SIZE)
 #endif
 
 /*
diff --git a/include/configs/socfpga_soc64_common.h b/include/configs/socfpga_soc64_common.h
index a79423740b6e..cbc18061f428 100644
--- a/include/configs/socfpga_soc64_common.h
+++ b/include/configs/socfpga_soc64_common.h
@@ -144,8 +144,5 @@ unsigned int cm_get_l4_sys_free_clk_hz(void);
  *
  */
 #define CONFIG_SPL_TARGET		"spl/u-boot-spl-dtb.hex"
-#define CONFIG_SYS_SPL_MALLOC_SIZE	(CONFIG_SYS_MALLOC_LEN)
-#define CONFIG_SYS_SPL_MALLOC_START	(CONFIG_SPL_BSS_START_ADDR \
-					- CONFIG_SYS_SPL_MALLOC_SIZE)
 
 #endif	/* __CONFIG_SOCFPGA_SOC64_COMMON_H__ */
diff --git a/include/configs/stm32mp15_common.h b/include/configs/stm32mp15_common.h
index 588d4c1f31f1..ec41a8172c72 100644
--- a/include/configs/stm32mp15_common.h
+++ b/include/configs/stm32mp15_common.h
@@ -31,8 +31,6 @@
 /* SPL support */
 #ifdef CONFIG_SPL
 /* SPL use DDR */
-#define CONFIG_SYS_SPL_MALLOC_START	0xC0300000
-#define CONFIG_SYS_SPL_MALLOC_SIZE	0x01D00000
 
 /* Restrict SPL to fit within SYSRAM */
 #define STM32_SYSRAM_END		(STM32_SYSRAM_BASE + STM32_SYSRAM_SIZE)
diff --git a/include/configs/taurus.h b/include/configs/taurus.h
index ef856f07fdc7..2f5a4fd8f4d6 100644
--- a/include/configs/taurus.h
+++ b/include/configs/taurus.h
@@ -142,9 +142,6 @@
 #endif /* #ifndef CONFIG_SPL_BUILD */
 
 /* Defines for SPL */
-#define CONFIG_SYS_SPL_MALLOC_START     (CONFIG_SYS_TEXT_BASE - \
-					CONFIG_SYS_MALLOC_LEN)
-#define CONFIG_SYS_SPL_MALLOC_SIZE      CONFIG_SYS_MALLOC_LEN
 
 #define CONFIG_SYS_NAND_ENABLE_PIN_SPL	(2*32 + 14)
 #define CONFIG_SYS_NAND_U_BOOT_SIZE	SZ_512K
diff --git a/include/configs/tegra-common.h b/include/configs/tegra-common.h
index 502508d713ab..159ba093f299 100644
--- a/include/configs/tegra-common.h
+++ b/include/configs/tegra-common.h
@@ -56,7 +56,6 @@
 #define CONFIG_SYS_INIT_RAM_SIZE	CONFIG_SYS_MALLOC_LEN
 
 /* Defines for SPL */
-#define CONFIG_SYS_SPL_MALLOC_SIZE	0x00010000
 #endif
 
 #endif /* _TEGRA_COMMON_H_ */
diff --git a/include/configs/tegra114-common.h b/include/configs/tegra114-common.h
index fae00e88fe59..742083158948 100644
--- a/include/configs/tegra114-common.h
+++ b/include/configs/tegra114-common.h
@@ -54,7 +54,6 @@
 	"ramdisk_addr_r=0x83100000\0"
 
 /* Defines for SPL */
-#define CONFIG_SYS_SPL_MALLOC_START	0x80090000
 
 /* For USB EHCI controller */
 #define CONFIG_USB_EHCI_TXFIFO_THRESH	0x10
diff --git a/include/configs/tegra124-common.h b/include/configs/tegra124-common.h
index 05f6bf0b471b..314486a1bcbd 100644
--- a/include/configs/tegra124-common.h
+++ b/include/configs/tegra124-common.h
@@ -56,7 +56,6 @@
 	"ramdisk_addr_r=0x83100000\0"
 
 /* Defines for SPL */
-#define CONFIG_SYS_SPL_MALLOC_START	0x80090000
 
 /* For USB EHCI controller */
 #define CONFIG_USB_EHCI_TXFIFO_THRESH	0x10
diff --git a/include/configs/tegra20-common.h b/include/configs/tegra20-common.h
index 97c1f5a2453d..a2b14d8ead86 100644
--- a/include/configs/tegra20-common.h
+++ b/include/configs/tegra20-common.h
@@ -55,7 +55,6 @@
 	"ramdisk_addr_r=0x03100000\0"
 
 /* Defines for SPL */
-#define CONFIG_SYS_SPL_MALLOC_START	0x00090000
 
 /* Align LCD to 1MB boundary */
 #define CONFIG_LCD_ALIGNMENT	MMU_SECTION_SIZE
diff --git a/include/configs/tegra30-common.h b/include/configs/tegra30-common.h
index 7107c06b9a7f..a68da5ddfc89 100644
--- a/include/configs/tegra30-common.h
+++ b/include/configs/tegra30-common.h
@@ -51,7 +51,6 @@
 	"ramdisk_addr_r=0x83100000\0"
 
 /* Defines for SPL */
-#define CONFIG_SYS_SPL_MALLOC_START	0x80090000
 
 /* For USB EHCI controller */
 #define CONFIG_USB_EHCI_TXFIFO_THRESH	0x10
diff --git a/include/configs/ti814x_evm.h b/include/configs/ti814x_evm.h
index 777e78859bc6..97166e010f7d 100644
--- a/include/configs/ti814x_evm.h
+++ b/include/configs/ti814x_evm.h
@@ -94,8 +94,6 @@
  * header. That is 0x800FFFC0--0x80800000 should not be used for any
  * other needs.
  */
-#define CONFIG_SYS_SPL_MALLOC_START	0x80208000
-#define CONFIG_SYS_SPL_MALLOC_SIZE	0x100000
 
 /*
  * Since SPL did pll and ddr initialization for us,
diff --git a/include/configs/ti_armv7_common.h b/include/configs/ti_armv7_common.h
index 7a19fc4b58af..0307fc38d8b7 100644
--- a/include/configs/ti_armv7_common.h
+++ b/include/configs/ti_armv7_common.h
@@ -113,11 +113,6 @@
  * of the BSS area.  We suggest that the stack be placed at 32MiB after the
  * start of DRAM to allow room for all of the above (handled in Kconfig).
  */
-#ifndef CONFIG_SYS_SPL_MALLOC_START
-#define CONFIG_SYS_SPL_MALLOC_START	(CONFIG_SPL_BSS_START_ADDR + \
-					 CONFIG_SPL_BSS_MAX_SIZE)
-#define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_8M
-#endif
 
 #ifdef CONFIG_SPL_OS_BOOT
 /* FAT */
diff --git a/include/configs/ti_armv7_keystone2.h b/include/configs/ti_armv7_keystone2.h
index 4a6d9bfddd1f..060969647b24 100644
--- a/include/configs/ti_armv7_keystone2.h
+++ b/include/configs/ti_armv7_keystone2.h
@@ -25,9 +25,6 @@
 #endif
 
 /* SPL SPI Loader Configuration */
-#define CONFIG_SYS_SPL_MALLOC_START	(CONFIG_SPL_BSS_START_ADDR + \
-					CONFIG_SPL_BSS_MAX_SIZE)
-#define CONFIG_SYS_SPL_MALLOC_SIZE	(32 * 1024)
 #define KEYSTONE_SPL_STACK_SIZE		(8 * 1024)
 
 /* SRAM scratch space entries  */
diff --git a/include/configs/verdin-imx8mm.h b/include/configs/verdin-imx8mm.h
index 4fc7617c776a..8f464dd39f0b 100644
--- a/include/configs/verdin-imx8mm.h
+++ b/include/configs/verdin-imx8mm.h
@@ -16,9 +16,6 @@
 #define CONFIG_SYS_BOOTM_LEN           SZ_64M
 
 #ifdef CONFIG_SPL_BUILD
-#define CONFIG_SYS_SPL_MALLOC_START	0x42200000
-#define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_512K	/* 512 KB */
-
 /* malloc f used before GD_FLG_FULL_MALLOC_INIT set */
 #define CONFIG_MALLOC_F_ADDR		0x930000
 /* For RAW image gives a error info not panic */
diff --git a/include/configs/verdin-imx8mp.h b/include/configs/verdin-imx8mp.h
index 47bb53249435..906a20fd8402 100644
--- a/include/configs/verdin-imx8mp.h
+++ b/include/configs/verdin-imx8mp.h
@@ -15,8 +15,6 @@
 
 #ifdef CONFIG_SPL_BUILD
 /*#define CONFIG_ENABLE_DDR_TRAINING_DEBUG*/
-#define CONFIG_SYS_SPL_MALLOC_START	0x42200000
-#define CONFIG_SYS_SPL_MALLOC_SIZE	SZ_512K
 
 /* malloc f used before GD_FLG_FULL_MALLOC_INIT set */
 #define CONFIG_MALLOC_F_ADDR				0x184000
diff --git a/include/configs/xilinx_zynqmp.h b/include/configs/xilinx_zynqmp.h
index 005d97275507..846c49f28e63 100644
--- a/include/configs/xilinx_zynqmp.h
+++ b/include/configs/xilinx_zynqmp.h
@@ -221,9 +221,6 @@
 # define CONFIG_ENV_MAX_ENTRIES	10
 #endif
 
-#define CONFIG_SYS_SPL_MALLOC_START	0x20000000
-#define CONFIG_SYS_SPL_MALLOC_SIZE	0x1000000
-
 #ifdef CONFIG_SPL_SYS_MALLOC_SIMPLE
 # error "Disable CONFIG_SPL_SYS_MALLOC_SIMPLE. Full malloc needs to be used"
 #endif
diff --git a/include/configs/zynq-common.h b/include/configs/zynq-common.h
index d29d423e116d..b2b95b710ef4 100644
--- a/include/configs/zynq-common.h
+++ b/include/configs/zynq-common.h
@@ -229,8 +229,6 @@
 /* 3 * 64kB blocks of OCM - one is on the top because of bootrom */
 
 /* On the top of OCM space */
-#define CONFIG_SYS_SPL_MALLOC_START	CONFIG_SPL_STACK_R_ADDR
-#define CONFIG_SYS_SPL_MALLOC_SIZE	0x2000000
 
 /*
  * SPL stack position - and stack goes down
diff --git a/include/system-constants.h b/include/system-constants.h
index de66fece9579..83b41b384f39 100644
--- a/include/system-constants.h
+++ b/include/system-constants.h
@@ -19,4 +19,14 @@
 #endif
 #endif
 
+/*
+ * Typically, we have the SPL malloc pool at the end of the BSS area.
+ */
+#ifdef CONFIG_HAS_CUSTOM_SPL_MALLOC_START
+#define SYS_SPL_MALLOC_START		CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR
+#else
+#define SYS_SPL_MALLOC_START		(CONFIG_SPL_BSS_START_ADDR + \
+					 CONFIG_SPL_BSS_MAX_SIZE)
+#endif
+
 #endif
-- 
2.25.1


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH 08/20] Remove CONFIG_SYS_SPL_LEN largely
  2022-05-29 16:55 [PATCH 01/20] Convert CONFIG_SPL_STACK to Kconfig Tom Rini
                   ` (5 preceding siblings ...)
  2022-05-29 16:55 ` [PATCH 07/20] Convert CONFIG_SYS_SPL_MALLOC_SIZE et al " Tom Rini
@ 2022-05-29 16:55 ` Tom Rini
  2022-05-29 16:55 ` [PATCH 09/20] etamin: Remove CONFIG_SPL_CMT defines Tom Rini
                   ` (13 subsequent siblings)
  20 siblings, 0 replies; 27+ messages in thread
From: Tom Rini @ 2022-05-29 16:55 UTC (permalink / raw)
  To: u-boot

This is mostly unused.  In the case where it is currently used, it means
the same as CONFIG_SPL_PAD_TO, which is already set for the platform.

Signed-off-by: Tom Rini <trini@konsulko.com>
---
 include/configs/corvus.h                        | 2 --
 include/configs/gardena-smart-gateway-at91sam.h | 2 --
 include/configs/imxrt1020-evk.h                 | 1 -
 include/configs/imxrt1050-evk.h                 | 1 -
 include/configs/smartweb.h                      | 2 --
 include/configs/stm32f746-disco.h               | 3 +--
 include/configs/taurus.h                        | 2 --
 7 files changed, 1 insertion(+), 12 deletions(-)

diff --git a/include/configs/corvus.h b/include/configs/corvus.h
index 864a79346b7c..698da6b6dac8 100644
--- a/include/configs/corvus.h
+++ b/include/configs/corvus.h
@@ -71,6 +71,4 @@
 #define CONFIG_SYS_MCKR			0x1301
 #define CONFIG_SYS_MCKR_CSS		0x1302
 
-#define CONFIG_SYS_SPL_LEN		CONFIG_SPL_PAD_TO
-
 #endif
diff --git a/include/configs/gardena-smart-gateway-at91sam.h b/include/configs/gardena-smart-gateway-at91sam.h
index c6a84a79e67a..331e9ca8ba19 100644
--- a/include/configs/gardena-smart-gateway-at91sam.h
+++ b/include/configs/gardena-smart-gateway-at91sam.h
@@ -45,6 +45,4 @@
 #define	CONFIG_SYS_NAND_U_BOOT_START	CONFIG_SYS_TEXT_BASE
 #define CONFIG_SYS_NAND_U_BOOT_DST	CONFIG_SYS_TEXT_BASE
 
-#define CONFIG_SYS_SPL_LEN		CONFIG_SPL_PAD_TO
-
 #endif
diff --git a/include/configs/imxrt1020-evk.h b/include/configs/imxrt1020-evk.h
index ac046b82aa9e..a2c004880a7e 100644
--- a/include/configs/imxrt1020-evk.h
+++ b/include/configs/imxrt1020-evk.h
@@ -22,7 +22,6 @@
  * Configuration of the external SDRAM memory
  */
 
-#define CONFIG_SYS_SPL_LEN		0x00008000
 #define CONFIG_SYS_UBOOT_START		0x800023FD
 
 #endif /* __IMXRT1020_EVK_H */
diff --git a/include/configs/imxrt1050-evk.h b/include/configs/imxrt1050-evk.h
index 30b2f5d1efee..e36718dc825b 100644
--- a/include/configs/imxrt1050-evk.h
+++ b/include/configs/imxrt1050-evk.h
@@ -29,7 +29,6 @@
  * Configuration of the external SDRAM memory
  */
 
-#define CONFIG_SYS_SPL_LEN		0x00008000
 #define CONFIG_SYS_UBOOT_START		0x800023FD
 
 #endif /* __IMXRT1050_EVK_H */
diff --git a/include/configs/smartweb.h b/include/configs/smartweb.h
index 8667052d3577..cde6abc62611 100644
--- a/include/configs/smartweb.h
+++ b/include/configs/smartweb.h
@@ -133,6 +133,4 @@
 #define CONFIG_SYS_MCKR_CSS		(0x02 | CONFIG_SYS_MCKR)
 #define CONFIG_SYS_AT91_PLLB		0x10483f0e
 
-#define CONFIG_SYS_SPL_LEN		CONFIG_SPL_PAD_TO
-
 #endif /* __CONFIG_H */
diff --git a/include/configs/stm32f746-disco.h b/include/configs/stm32f746-disco.h
index ac54c5021788..80db425bb7ce 100644
--- a/include/configs/stm32f746-disco.h
+++ b/include/configs/stm32f746-disco.h
@@ -39,10 +39,9 @@
 			BOOTENV
 
 #define CONFIG_SYS_MONITOR_LEN		(512 * 1024)
-#define CONFIG_SYS_SPL_LEN		0x00008000
 #define CONFIG_SYS_UBOOT_START		0x080083FD
 #define CONFIG_SYS_UBOOT_BASE		(CONFIG_SYS_FLASH_BASE + \
-					 CONFIG_SYS_SPL_LEN)
+					 CONFIG_SPL_PAD_TO)
 
 /* DT blob (fdt) address */
 #define CONFIG_SYS_FDT_BASE		(CONFIG_SYS_FLASH_BASE + \
diff --git a/include/configs/taurus.h b/include/configs/taurus.h
index 2f5a4fd8f4d6..b9285e8cabad 100644
--- a/include/configs/taurus.h
+++ b/include/configs/taurus.h
@@ -162,6 +162,4 @@
 #define CONFIG_SYS_MCKR_CSS		(0x02 | CONFIG_SYS_MCKR)
 #define CONFIG_SYS_AT91_PLLB		0x10193F05
 
-#define CONFIG_SYS_SPL_LEN		CONFIG_SPL_PAD_TO
-
 #endif
-- 
2.25.1


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH 09/20] etamin: Remove CONFIG_SPL_CMT defines
  2022-05-29 16:55 [PATCH 01/20] Convert CONFIG_SPL_STACK to Kconfig Tom Rini
                   ` (6 preceding siblings ...)
  2022-05-29 16:55 ` [PATCH 08/20] Remove CONFIG_SYS_SPL_LEN largely Tom Rini
@ 2022-05-29 16:55 ` Tom Rini
  2022-05-29 16:55 ` [PATCH 10/20] Convert CONFIG_SPL_GD_ADDR to Kconfig Tom Rini
                   ` (12 subsequent siblings)
  20 siblings, 0 replies; 27+ messages in thread
From: Tom Rini @ 2022-05-29 16:55 UTC (permalink / raw)
  To: u-boot

These are presumably private to non-upstream code, remove.

Signed-off-by: Tom Rini <trini@konsulko.com>
---
 include/configs/etamin.h | 6 ------
 1 file changed, 6 deletions(-)

diff --git a/include/configs/etamin.h b/include/configs/etamin.h
index 9cf93924df93..383beee17aec 100644
--- a/include/configs/etamin.h
+++ b/include/configs/etamin.h
@@ -77,12 +77,6 @@
 
 #define CONFIG_FACTORYSET
 
-/* use both define to compile a SPL compliance test  */
-/*
-#define CONFIG_SPL_CMT
-#define CONFIG_SPL_CMT_DEBUG
-*/
-
 /* nedded by compliance test in read mode */
 
 /* Define own nand partitions */
-- 
2.25.1


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH 10/20] Convert CONFIG_SPL_GD_ADDR to Kconfig
  2022-05-29 16:55 [PATCH 01/20] Convert CONFIG_SPL_STACK to Kconfig Tom Rini
                   ` (7 preceding siblings ...)
  2022-05-29 16:55 ` [PATCH 09/20] etamin: Remove CONFIG_SPL_CMT defines Tom Rini
@ 2022-05-29 16:55 ` Tom Rini
  2022-05-29 16:55 ` [PATCH 11/20] Drop CONFIG_SPL_SPI_FLASH_MINIMAL Tom Rini
                   ` (11 subsequent siblings)
  20 siblings, 0 replies; 27+ messages in thread
From: Tom Rini @ 2022-05-29 16:55 UTC (permalink / raw)
  To: u-boot

This converts the following to Kconfig:
   CONFIG_SPL_GD_ADDR

Signed-off-by: Tom Rini <trini@konsulko.com>
---
 board/freescale/p1010rdb/spl.c               | 4 ++--
 board/freescale/p1_p2_rdb_pc/spl.c           | 4 ++--
 common/spl/Kconfig                           | 8 ++++++++
 configs/P1010RDB-PA_36BIT_NAND_defconfig     | 1 +
 configs/P1010RDB-PA_36BIT_SDCARD_defconfig   | 1 +
 configs/P1010RDB-PA_36BIT_SPIFLASH_defconfig | 1 +
 configs/P1010RDB-PA_NAND_defconfig           | 1 +
 configs/P1010RDB-PA_SDCARD_defconfig         | 1 +
 configs/P1010RDB-PA_SPIFLASH_defconfig       | 1 +
 configs/P1010RDB-PB_36BIT_NAND_defconfig     | 1 +
 configs/P1010RDB-PB_36BIT_SDCARD_defconfig   | 1 +
 configs/P1010RDB-PB_36BIT_SPIFLASH_defconfig | 1 +
 configs/P1010RDB-PB_NAND_defconfig           | 1 +
 configs/P1010RDB-PB_SDCARD_defconfig         | 1 +
 configs/P1010RDB-PB_SPIFLASH_defconfig       | 1 +
 configs/P1020RDB-PC_36BIT_NAND_defconfig     | 1 +
 configs/P1020RDB-PC_36BIT_SDCARD_defconfig   | 1 +
 configs/P1020RDB-PC_36BIT_SPIFLASH_defconfig | 1 +
 configs/P1020RDB-PC_NAND_defconfig           | 1 +
 configs/P1020RDB-PC_SDCARD_defconfig         | 1 +
 configs/P1020RDB-PC_SPIFLASH_defconfig       | 1 +
 configs/P1020RDB-PD_NAND_defconfig           | 1 +
 configs/P1020RDB-PD_SDCARD_defconfig         | 1 +
 configs/P1020RDB-PD_SPIFLASH_defconfig       | 1 +
 configs/P2020RDB-PC_36BIT_NAND_defconfig     | 1 +
 configs/P2020RDB-PC_36BIT_SDCARD_defconfig   | 1 +
 configs/P2020RDB-PC_36BIT_SPIFLASH_defconfig | 1 +
 configs/P2020RDB-PC_NAND_defconfig           | 1 +
 configs/P2020RDB-PC_SDCARD_defconfig         | 1 +
 configs/P2020RDB-PC_SPIFLASH_defconfig       | 1 +
 configs/T1024RDB_NAND_defconfig              | 1 +
 configs/T1024RDB_SDCARD_defconfig            | 1 +
 configs/T1024RDB_SPIFLASH_defconfig          | 1 +
 configs/T1042D4RDB_NAND_defconfig            | 1 +
 configs/T1042D4RDB_SDCARD_defconfig          | 1 +
 configs/T1042D4RDB_SPIFLASH_defconfig        | 1 +
 configs/T2080QDS_NAND_defconfig              | 1 +
 configs/T2080QDS_SDCARD_defconfig            | 1 +
 configs/T2080QDS_SPIFLASH_defconfig          | 1 +
 configs/T2080RDB_NAND_defconfig              | 1 +
 configs/T2080RDB_SDCARD_defconfig            | 1 +
 configs/T2080RDB_SPIFLASH_defconfig          | 1 +
 configs/T2080RDB_revD_NAND_defconfig         | 1 +
 configs/T2080RDB_revD_SDCARD_defconfig       | 1 +
 configs/T2080RDB_revD_SPIFLASH_defconfig     | 1 +
 configs/T4240RDB_SDCARD_defconfig            | 1 +
 include/configs/P1010RDB.h                   | 2 --
 include/configs/T102xRDB.h                   | 1 -
 include/configs/T104xRDB.h                   | 1 -
 include/configs/T208xQDS.h                   | 1 -
 include/configs/T208xRDB.h                   | 1 -
 include/configs/T4240RDB.h                   | 1 -
 include/configs/openpiton-riscv64.h          | 4 ----
 include/configs/p1_p2_rdb_pc.h               | 2 --
 54 files changed, 55 insertions(+), 17 deletions(-)

diff --git a/board/freescale/p1010rdb/spl.c b/board/freescale/p1010rdb/spl.c
index a78a9143a01d..88695002deb5 100644
--- a/board/freescale/p1010rdb/spl.c
+++ b/board/freescale/p1010rdb/spl.c
@@ -63,11 +63,11 @@ void board_init_f(ulong bootflag)
 void board_init_r(gd_t *gd, ulong dest_addr)
 {
 	/* Pointer is writable since we allocated a register for it */
-	gd = (gd_t *)CONFIG_SPL_GD_ADDR;
+	gd = (gd_t *)CONFIG_VAL(GD_ADDR);
 	struct bd_info *bd;
 
 	memset(gd, 0, sizeof(gd_t));
-	bd = (struct bd_info *)(CONFIG_SPL_GD_ADDR + sizeof(gd_t));
+	bd = (struct bd_info *)(CONFIG_VAL(GD_ADDR) + sizeof(gd_t));
 	memset(bd, 0, sizeof(struct bd_info));
 	gd->bd = bd;
 
diff --git a/board/freescale/p1_p2_rdb_pc/spl.c b/board/freescale/p1_p2_rdb_pc/spl.c
index 580972d800a7..b60027ebd9ab 100644
--- a/board/freescale/p1_p2_rdb_pc/spl.c
+++ b/board/freescale/p1_p2_rdb_pc/spl.c
@@ -69,11 +69,11 @@ void board_init_f(ulong bootflag)
 void board_init_r(gd_t *gd, ulong dest_addr)
 {
 	/* Pointer is writable since we allocated a register for it */
-	gd = (gd_t *)CONFIG_SPL_GD_ADDR;
+	gd = (gd_t *)CONFIG_VAL(GD_ADDR);
 	struct bd_info *bd;
 
 	memset(gd, 0, sizeof(gd_t));
-	bd = (struct bd_info *)(CONFIG_SPL_GD_ADDR + sizeof(gd_t));
+	bd = (struct bd_info *)(CONFIG_VAL(GD_ADDR) + sizeof(gd_t));
 	memset(bd, 0, sizeof(struct bd_info));
 	gd->bd = bd;
 
diff --git a/common/spl/Kconfig b/common/spl/Kconfig
index 10d9cdd0c286..027ac4274b65 100644
--- a/common/spl/Kconfig
+++ b/common/spl/Kconfig
@@ -246,6 +246,10 @@ config SPL_FLUSH_IMAGE
 config SPL_SKIP_RELOCATE
 	bool "Skip relocating SPL"
 
+config SPL_GD_ADDR
+	hex "Address to use for global data (gd) in SPL"
+	depends on !SPL_INIT_MINIMAL
+
 config SPL_RELOC_TEXT_BASE
 	hex "Address to relocate SPL to"
 	default SPL_TEXT_BASE
@@ -272,6 +276,10 @@ config SPL_RELOC_MALLOC_SIZE
 	hex "Size of malloc pool in SPL"
 	depends on SPL_RELOC_MALLOC
 
+config TPL_GD_ADDR
+	hex "Address to use for global data (gd) in TPL"
+	depends on TPL
+
 config TPL_RELOC_TEXT_BASE
 	hex "Address to relocate TPL to"
 	depends on TPL
diff --git a/configs/P1010RDB-PA_36BIT_NAND_defconfig b/configs/P1010RDB-PA_36BIT_NAND_defconfig
index 22b43801a776..06b4ca72b21a 100644
--- a/configs/P1010RDB-PA_36BIT_NAND_defconfig
+++ b/configs/P1010RDB-PA_36BIT_NAND_defconfig
@@ -35,6 +35,7 @@ CONFIG_SPL_INIT_MINIMAL=y
 CONFIG_SPL_FLUSH_IMAGE=y
 CONFIG_SPL_RELOC_TEXT_BASE=0xd003d000
 CONFIG_SPL_RELOC_STACK=0xd003fff0
+CONFIG_TPL_GD_ADDR=0xd002c000
 CONFIG_TPL_RELOC_TEXT_BASE=0xd0001000
 CONFIG_TPL_RELOC_STACK=0xd0030000
 CONFIG_TPL_RELOC_MALLOC=y
diff --git a/configs/P1010RDB-PA_36BIT_SDCARD_defconfig b/configs/P1010RDB-PA_36BIT_SDCARD_defconfig
index 7406cb29b03f..b116eee6c5c5 100644
--- a/configs/P1010RDB-PA_36BIT_SDCARD_defconfig
+++ b/configs/P1010RDB-PA_36BIT_SDCARD_defconfig
@@ -30,6 +30,7 @@ CONFIG_SPL_MAX_SIZE=0x18000
 CONFIG_SPL_MMC_BOOT=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
+CONFIG_SPL_GD_ADDR=0xd0018000
 CONFIG_SPL_RELOC_TEXT_BASE=0xd0001000
 CONFIG_SPL_RELOC_STACK=0xd001c000
 CONFIG_SPL_RELOC_MALLOC=y
diff --git a/configs/P1010RDB-PA_36BIT_SPIFLASH_defconfig b/configs/P1010RDB-PA_36BIT_SPIFLASH_defconfig
index 41b2f2f58b17..df4caee9e72e 100644
--- a/configs/P1010RDB-PA_36BIT_SPIFLASH_defconfig
+++ b/configs/P1010RDB-PA_36BIT_SPIFLASH_defconfig
@@ -33,6 +33,7 @@ CONFIG_SPL_MAX_SIZE=0x18000
 CONFIG_SPL_SPI_BOOT=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
+CONFIG_SPL_GD_ADDR=0xd0018000
 CONFIG_SPL_RELOC_TEXT_BASE=0xd0001000
 CONFIG_SPL_RELOC_STACK=0xd001c000
 CONFIG_SPL_RELOC_MALLOC=y
diff --git a/configs/P1010RDB-PA_NAND_defconfig b/configs/P1010RDB-PA_NAND_defconfig
index 993a1f8d54a1..918a107f5283 100644
--- a/configs/P1010RDB-PA_NAND_defconfig
+++ b/configs/P1010RDB-PA_NAND_defconfig
@@ -34,6 +34,7 @@ CONFIG_SPL_INIT_MINIMAL=y
 CONFIG_SPL_FLUSH_IMAGE=y
 CONFIG_SPL_RELOC_TEXT_BASE=0xd003d000
 CONFIG_SPL_RELOC_STACK=0xd003fff0
+CONFIG_TPL_GD_ADDR=0xd002c000
 CONFIG_TPL_RELOC_TEXT_BASE=0xd0001000
 CONFIG_TPL_RELOC_STACK=0xd0030000
 CONFIG_TPL_RELOC_MALLOC=y
diff --git a/configs/P1010RDB-PA_SDCARD_defconfig b/configs/P1010RDB-PA_SDCARD_defconfig
index 058c87d77b38..41988bb1f727 100644
--- a/configs/P1010RDB-PA_SDCARD_defconfig
+++ b/configs/P1010RDB-PA_SDCARD_defconfig
@@ -29,6 +29,7 @@ CONFIG_SPL_MAX_SIZE=0x18000
 CONFIG_SPL_MMC_BOOT=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
+CONFIG_SPL_GD_ADDR=0xd0018000
 CONFIG_SPL_RELOC_TEXT_BASE=0xd0001000
 CONFIG_SPL_RELOC_STACK=0xd001c000
 CONFIG_SPL_RELOC_MALLOC=y
diff --git a/configs/P1010RDB-PA_SPIFLASH_defconfig b/configs/P1010RDB-PA_SPIFLASH_defconfig
index 4c2d72605e22..b4dd81ea9404 100644
--- a/configs/P1010RDB-PA_SPIFLASH_defconfig
+++ b/configs/P1010RDB-PA_SPIFLASH_defconfig
@@ -32,6 +32,7 @@ CONFIG_SPL_MAX_SIZE=0x18000
 CONFIG_SPL_SPI_BOOT=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
+CONFIG_SPL_GD_ADDR=0xd0018000
 CONFIG_SPL_RELOC_TEXT_BASE=0xd0001000
 CONFIG_SPL_RELOC_STACK=0xd001c000
 CONFIG_SPL_RELOC_MALLOC=y
diff --git a/configs/P1010RDB-PB_36BIT_NAND_defconfig b/configs/P1010RDB-PB_36BIT_NAND_defconfig
index c38be8f14573..b69e6cf56554 100644
--- a/configs/P1010RDB-PB_36BIT_NAND_defconfig
+++ b/configs/P1010RDB-PB_36BIT_NAND_defconfig
@@ -36,6 +36,7 @@ CONFIG_SPL_INIT_MINIMAL=y
 CONFIG_SPL_FLUSH_IMAGE=y
 CONFIG_SPL_RELOC_TEXT_BASE=0xd003d000
 CONFIG_SPL_RELOC_STACK=0xd003fff0
+CONFIG_TPL_GD_ADDR=0xd002c000
 CONFIG_TPL_RELOC_TEXT_BASE=0xd0001000
 CONFIG_TPL_RELOC_STACK=0xd0030000
 CONFIG_TPL_RELOC_MALLOC=y
diff --git a/configs/P1010RDB-PB_36BIT_SDCARD_defconfig b/configs/P1010RDB-PB_36BIT_SDCARD_defconfig
index 9e788ab9bf3a..21e4e7f0f5f8 100644
--- a/configs/P1010RDB-PB_36BIT_SDCARD_defconfig
+++ b/configs/P1010RDB-PB_36BIT_SDCARD_defconfig
@@ -31,6 +31,7 @@ CONFIG_SPL_MAX_SIZE=0x18000
 CONFIG_SPL_MMC_BOOT=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
+CONFIG_SPL_GD_ADDR=0xd0018000
 CONFIG_SPL_RELOC_TEXT_BASE=0xd0001000
 CONFIG_SPL_RELOC_STACK=0xd001c000
 CONFIG_SPL_RELOC_MALLOC=y
diff --git a/configs/P1010RDB-PB_36BIT_SPIFLASH_defconfig b/configs/P1010RDB-PB_36BIT_SPIFLASH_defconfig
index a762f07c489b..dbbc25d319df 100644
--- a/configs/P1010RDB-PB_36BIT_SPIFLASH_defconfig
+++ b/configs/P1010RDB-PB_36BIT_SPIFLASH_defconfig
@@ -34,6 +34,7 @@ CONFIG_SPL_MAX_SIZE=0x18000
 CONFIG_SPL_SPI_BOOT=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
+CONFIG_SPL_GD_ADDR=0xd0018000
 CONFIG_SPL_RELOC_TEXT_BASE=0xd0001000
 CONFIG_SPL_RELOC_STACK=0xd001c000
 CONFIG_SPL_RELOC_MALLOC=y
diff --git a/configs/P1010RDB-PB_NAND_defconfig b/configs/P1010RDB-PB_NAND_defconfig
index 18ba32f2d1e2..c4e9d5900547 100644
--- a/configs/P1010RDB-PB_NAND_defconfig
+++ b/configs/P1010RDB-PB_NAND_defconfig
@@ -35,6 +35,7 @@ CONFIG_SPL_INIT_MINIMAL=y
 CONFIG_SPL_FLUSH_IMAGE=y
 CONFIG_SPL_RELOC_TEXT_BASE=0xd003d000
 CONFIG_SPL_RELOC_STACK=0xd003fff0
+CONFIG_TPL_GD_ADDR=0xd002c000
 CONFIG_TPL_RELOC_TEXT_BASE=0xd0001000
 CONFIG_TPL_RELOC_STACK=0xd0030000
 CONFIG_TPL_RELOC_MALLOC=y
diff --git a/configs/P1010RDB-PB_SDCARD_defconfig b/configs/P1010RDB-PB_SDCARD_defconfig
index 1d18f1282d11..c0ea6b9635a9 100644
--- a/configs/P1010RDB-PB_SDCARD_defconfig
+++ b/configs/P1010RDB-PB_SDCARD_defconfig
@@ -30,6 +30,7 @@ CONFIG_SPL_MAX_SIZE=0x18000
 CONFIG_SPL_MMC_BOOT=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
+CONFIG_SPL_GD_ADDR=0xd0018000
 CONFIG_SPL_RELOC_TEXT_BASE=0xd0001000
 CONFIG_SPL_RELOC_STACK=0xd001c000
 CONFIG_SPL_RELOC_MALLOC=y
diff --git a/configs/P1010RDB-PB_SPIFLASH_defconfig b/configs/P1010RDB-PB_SPIFLASH_defconfig
index 1a36d6c5133f..c32ccc292b41 100644
--- a/configs/P1010RDB-PB_SPIFLASH_defconfig
+++ b/configs/P1010RDB-PB_SPIFLASH_defconfig
@@ -33,6 +33,7 @@ CONFIG_SPL_MAX_SIZE=0x18000
 CONFIG_SPL_SPI_BOOT=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
+CONFIG_SPL_GD_ADDR=0xd0018000
 CONFIG_SPL_RELOC_TEXT_BASE=0xd0001000
 CONFIG_SPL_RELOC_STACK=0xd001c000
 CONFIG_SPL_RELOC_MALLOC=y
diff --git a/configs/P1020RDB-PC_36BIT_NAND_defconfig b/configs/P1020RDB-PC_36BIT_NAND_defconfig
index 54cd3d2b5ccb..3e5c0449fd8a 100644
--- a/configs/P1020RDB-PC_36BIT_NAND_defconfig
+++ b/configs/P1020RDB-PC_36BIT_NAND_defconfig
@@ -36,6 +36,7 @@ CONFIG_SPL_INIT_MINIMAL=y
 CONFIG_SPL_FLUSH_IMAGE=y
 CONFIG_SPL_RELOC_TEXT_BASE=0xf8fbe000
 CONFIG_SPL_RELOC_STACK=0xf8fbfff0
+CONFIG_TPL_GD_ADDR=0xf8fac000
 CONFIG_TPL_RELOC_TEXT_BASE=0xf8f81000
 CONFIG_TPL_RELOC_STACK=0xf8fb0000
 CONFIG_TPL_RELOC_MALLOC=y
diff --git a/configs/P1020RDB-PC_36BIT_SDCARD_defconfig b/configs/P1020RDB-PC_36BIT_SDCARD_defconfig
index 6a36f3ba9b27..ddd041c09a5e 100644
--- a/configs/P1020RDB-PC_36BIT_SDCARD_defconfig
+++ b/configs/P1020RDB-PC_36BIT_SDCARD_defconfig
@@ -32,6 +32,7 @@ CONFIG_SPL_MAX_SIZE=0x20000
 CONFIG_SPL_MMC_BOOT=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
+CONFIG_SPL_GD_ADDR=0xf8f9c000
 CONFIG_SPL_RELOC_STACK=0xf8f9d000
 CONFIG_SPL_RELOC_MALLOC=y
 CONFIG_SPL_RELOC_MALLOC_ADDR=0xf8fa5000
diff --git a/configs/P1020RDB-PC_36BIT_SPIFLASH_defconfig b/configs/P1020RDB-PC_36BIT_SPIFLASH_defconfig
index e246a2190d0c..9da02480e5e2 100644
--- a/configs/P1020RDB-PC_36BIT_SPIFLASH_defconfig
+++ b/configs/P1020RDB-PC_36BIT_SPIFLASH_defconfig
@@ -35,6 +35,7 @@ CONFIG_SPL_MAX_SIZE=0x20000
 CONFIG_SPL_SPI_BOOT=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
+CONFIG_SPL_GD_ADDR=0xf8f9c000
 CONFIG_SPL_RELOC_STACK=0xf8f9d000
 CONFIG_SPL_RELOC_MALLOC=y
 CONFIG_SPL_RELOC_MALLOC_ADDR=0xf8fa5000
diff --git a/configs/P1020RDB-PC_NAND_defconfig b/configs/P1020RDB-PC_NAND_defconfig
index b49cdcb480dc..6a75d6f1e813 100644
--- a/configs/P1020RDB-PC_NAND_defconfig
+++ b/configs/P1020RDB-PC_NAND_defconfig
@@ -35,6 +35,7 @@ CONFIG_SPL_INIT_MINIMAL=y
 CONFIG_SPL_FLUSH_IMAGE=y
 CONFIG_SPL_RELOC_TEXT_BASE=0xf8fbe000
 CONFIG_SPL_RELOC_STACK=0xf8fbfff0
+CONFIG_TPL_GD_ADDR=0xf8fac000
 CONFIG_TPL_RELOC_TEXT_BASE=0xf8f81000
 CONFIG_TPL_RELOC_STACK=0xf8fb0000
 CONFIG_TPL_RELOC_MALLOC=y
diff --git a/configs/P1020RDB-PC_SDCARD_defconfig b/configs/P1020RDB-PC_SDCARD_defconfig
index a86a406eb7c5..4122d1d741ee 100644
--- a/configs/P1020RDB-PC_SDCARD_defconfig
+++ b/configs/P1020RDB-PC_SDCARD_defconfig
@@ -31,6 +31,7 @@ CONFIG_SPL_MAX_SIZE=0x20000
 CONFIG_SPL_MMC_BOOT=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
+CONFIG_SPL_GD_ADDR=0xf8f9c000
 CONFIG_SPL_RELOC_STACK=0xf8f9d000
 CONFIG_SPL_RELOC_MALLOC=y
 CONFIG_SPL_RELOC_MALLOC_ADDR=0xf8fa5000
diff --git a/configs/P1020RDB-PC_SPIFLASH_defconfig b/configs/P1020RDB-PC_SPIFLASH_defconfig
index 4c9f1b4c81ed..cfd42e4bf3eb 100644
--- a/configs/P1020RDB-PC_SPIFLASH_defconfig
+++ b/configs/P1020RDB-PC_SPIFLASH_defconfig
@@ -34,6 +34,7 @@ CONFIG_SPL_MAX_SIZE=0x20000
 CONFIG_SPL_SPI_BOOT=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
+CONFIG_SPL_GD_ADDR=0xf8f9c000
 CONFIG_SPL_RELOC_STACK=0xf8f9d000
 CONFIG_SPL_RELOC_MALLOC=y
 CONFIG_SPL_RELOC_MALLOC_ADDR=0xf8fa5000
diff --git a/configs/P1020RDB-PD_NAND_defconfig b/configs/P1020RDB-PD_NAND_defconfig
index 899d074537fa..bd3d7a3cbb05 100644
--- a/configs/P1020RDB-PD_NAND_defconfig
+++ b/configs/P1020RDB-PD_NAND_defconfig
@@ -35,6 +35,7 @@ CONFIG_SPL_INIT_MINIMAL=y
 CONFIG_SPL_FLUSH_IMAGE=y
 CONFIG_SPL_RELOC_TEXT_BASE=0xf8fbe000
 CONFIG_SPL_RELOC_STACK=0xf8fbfff0
+CONFIG_TPL_GD_ADDR=0xf8fac000
 CONFIG_TPL_RELOC_TEXT_BASE=0xf8f81000
 CONFIG_TPL_RELOC_STACK=0xf8fb0000
 CONFIG_TPL_RELOC_MALLOC=y
diff --git a/configs/P1020RDB-PD_SDCARD_defconfig b/configs/P1020RDB-PD_SDCARD_defconfig
index ea91b9e95d5d..43391a99b1d2 100644
--- a/configs/P1020RDB-PD_SDCARD_defconfig
+++ b/configs/P1020RDB-PD_SDCARD_defconfig
@@ -31,6 +31,7 @@ CONFIG_SPL_MAX_SIZE=0x20000
 CONFIG_SPL_MMC_BOOT=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
+CONFIG_SPL_GD_ADDR=0xf8f9c000
 CONFIG_SPL_RELOC_STACK=0xf8f9d000
 CONFIG_SPL_RELOC_MALLOC=y
 CONFIG_SPL_RELOC_MALLOC_ADDR=0xf8fa5000
diff --git a/configs/P1020RDB-PD_SPIFLASH_defconfig b/configs/P1020RDB-PD_SPIFLASH_defconfig
index 9351f00e5db5..091518592c18 100644
--- a/configs/P1020RDB-PD_SPIFLASH_defconfig
+++ b/configs/P1020RDB-PD_SPIFLASH_defconfig
@@ -34,6 +34,7 @@ CONFIG_SPL_MAX_SIZE=0x20000
 CONFIG_SPL_SPI_BOOT=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
+CONFIG_SPL_GD_ADDR=0xf8f9c000
 CONFIG_SPL_RELOC_STACK=0xf8f9d000
 CONFIG_SPL_RELOC_MALLOC=y
 CONFIG_SPL_RELOC_MALLOC_ADDR=0xf8fa5000
diff --git a/configs/P2020RDB-PC_36BIT_NAND_defconfig b/configs/P2020RDB-PC_36BIT_NAND_defconfig
index ad6c72c23c52..c0f6b6d8db4c 100644
--- a/configs/P2020RDB-PC_36BIT_NAND_defconfig
+++ b/configs/P2020RDB-PC_36BIT_NAND_defconfig
@@ -36,6 +36,7 @@ CONFIG_SPL_INIT_MINIMAL=y
 CONFIG_SPL_FLUSH_IMAGE=y
 CONFIG_SPL_RELOC_TEXT_BASE=0xf8ffe000
 CONFIG_SPL_RELOC_STACK=0xf8fffff0
+CONFIG_TPL_GD_ADDR=0xf8fac000
 CONFIG_TPL_RELOC_TEXT_BASE=0xf8f81000
 CONFIG_TPL_RELOC_STACK=0xf8fb0000
 CONFIG_TPL_RELOC_MALLOC=y
diff --git a/configs/P2020RDB-PC_36BIT_SDCARD_defconfig b/configs/P2020RDB-PC_36BIT_SDCARD_defconfig
index d4f82f16f586..b17346fea34d 100644
--- a/configs/P2020RDB-PC_36BIT_SDCARD_defconfig
+++ b/configs/P2020RDB-PC_36BIT_SDCARD_defconfig
@@ -32,6 +32,7 @@ CONFIG_SPL_MAX_SIZE=0x20000
 CONFIG_SPL_MMC_BOOT=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
+CONFIG_SPL_GD_ADDR=0xf8f9c000
 CONFIG_SPL_RELOC_STACK=0xf8f9d000
 CONFIG_SPL_RELOC_MALLOC=y
 CONFIG_SPL_RELOC_MALLOC_ADDR=0xf8fa5000
diff --git a/configs/P2020RDB-PC_36BIT_SPIFLASH_defconfig b/configs/P2020RDB-PC_36BIT_SPIFLASH_defconfig
index 7a198e01785f..041179e07d36 100644
--- a/configs/P2020RDB-PC_36BIT_SPIFLASH_defconfig
+++ b/configs/P2020RDB-PC_36BIT_SPIFLASH_defconfig
@@ -35,6 +35,7 @@ CONFIG_SPL_MAX_SIZE=0x20000
 CONFIG_SPL_SPI_BOOT=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
+CONFIG_SPL_GD_ADDR=0xf8f9c000
 CONFIG_SPL_RELOC_STACK=0xf8f9d000
 CONFIG_SPL_RELOC_MALLOC=y
 CONFIG_SPL_RELOC_MALLOC_ADDR=0xf8fa5000
diff --git a/configs/P2020RDB-PC_NAND_defconfig b/configs/P2020RDB-PC_NAND_defconfig
index f5bd7015fb54..f3fa869c927f 100644
--- a/configs/P2020RDB-PC_NAND_defconfig
+++ b/configs/P2020RDB-PC_NAND_defconfig
@@ -35,6 +35,7 @@ CONFIG_SPL_INIT_MINIMAL=y
 CONFIG_SPL_FLUSH_IMAGE=y
 CONFIG_SPL_RELOC_TEXT_BASE=0xf8ffe000
 CONFIG_SPL_RELOC_STACK=0xf8fffff0
+CONFIG_TPL_GD_ADDR=0xf8fac000
 CONFIG_TPL_RELOC_TEXT_BASE=0xf8f81000
 CONFIG_TPL_RELOC_STACK=0xf8fb0000
 CONFIG_TPL_RELOC_MALLOC=y
diff --git a/configs/P2020RDB-PC_SDCARD_defconfig b/configs/P2020RDB-PC_SDCARD_defconfig
index 0e1eb82a00ee..ae4b758776ca 100644
--- a/configs/P2020RDB-PC_SDCARD_defconfig
+++ b/configs/P2020RDB-PC_SDCARD_defconfig
@@ -31,6 +31,7 @@ CONFIG_SPL_MAX_SIZE=0x20000
 CONFIG_SPL_MMC_BOOT=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
+CONFIG_SPL_GD_ADDR=0xf8f9c000
 CONFIG_SPL_RELOC_STACK=0xf8f9d000
 CONFIG_SPL_RELOC_MALLOC=y
 CONFIG_SPL_RELOC_MALLOC_ADDR=0xf8fa5000
diff --git a/configs/P2020RDB-PC_SPIFLASH_defconfig b/configs/P2020RDB-PC_SPIFLASH_defconfig
index 5ffda90dd3bf..338bbecbb4b7 100644
--- a/configs/P2020RDB-PC_SPIFLASH_defconfig
+++ b/configs/P2020RDB-PC_SPIFLASH_defconfig
@@ -34,6 +34,7 @@ CONFIG_SPL_MAX_SIZE=0x20000
 CONFIG_SPL_SPI_BOOT=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
+CONFIG_SPL_GD_ADDR=0xf8f9c000
 CONFIG_SPL_RELOC_STACK=0xf8f9d000
 CONFIG_SPL_RELOC_MALLOC=y
 CONFIG_SPL_RELOC_MALLOC_ADDR=0xf8fa5000
diff --git a/configs/T1024RDB_NAND_defconfig b/configs/T1024RDB_NAND_defconfig
index 93dc0c1909f0..2eb985823ec0 100644
--- a/configs/T1024RDB_NAND_defconfig
+++ b/configs/T1024RDB_NAND_defconfig
@@ -39,6 +39,7 @@ CONFIG_SPL_FSL_PBL=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
 CONFIG_SPL_SKIP_RELOCATE=y
+CONFIG_SPL_GD_ADDR=0xfffc8000
 CONFIG_SPL_RELOC_STACK=0xfffd8000
 CONFIG_SPL_RELOC_MALLOC=y
 CONFIG_SPL_RELOC_MALLOC_ADDR=0xfffcb000
diff --git a/configs/T1024RDB_SDCARD_defconfig b/configs/T1024RDB_SDCARD_defconfig
index dddf74262e35..9daf7fd5ef77 100644
--- a/configs/T1024RDB_SDCARD_defconfig
+++ b/configs/T1024RDB_SDCARD_defconfig
@@ -40,6 +40,7 @@ CONFIG_SPL_FSL_PBL=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
 CONFIG_SPL_SKIP_RELOCATE=y
+CONFIG_SPL_GD_ADDR=0xfffc8000
 CONFIG_SPL_RELOC_STACK=0xfffd8000
 CONFIG_SPL_RELOC_MALLOC=y
 CONFIG_SPL_RELOC_MALLOC_ADDR=0xfffcb000
diff --git a/configs/T1024RDB_SPIFLASH_defconfig b/configs/T1024RDB_SPIFLASH_defconfig
index d8e41241ee6d..ee9292a4fb9f 100644
--- a/configs/T1024RDB_SPIFLASH_defconfig
+++ b/configs/T1024RDB_SPIFLASH_defconfig
@@ -43,6 +43,7 @@ CONFIG_SPL_FSL_PBL=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
 CONFIG_SPL_SKIP_RELOCATE=y
+CONFIG_SPL_GD_ADDR=0xfffc8000
 CONFIG_SPL_RELOC_STACK=0xfffd8000
 CONFIG_SPL_RELOC_MALLOC=y
 CONFIG_SPL_RELOC_MALLOC_ADDR=0xfffcb000
diff --git a/configs/T1042D4RDB_NAND_defconfig b/configs/T1042D4RDB_NAND_defconfig
index ccb1a3343cad..91a83007ce87 100644
--- a/configs/T1042D4RDB_NAND_defconfig
+++ b/configs/T1042D4RDB_NAND_defconfig
@@ -35,6 +35,7 @@ CONFIG_SPL_FSL_PBL=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
 CONFIG_SPL_SKIP_RELOCATE=y
+CONFIG_SPL_GD_ADDR=0xfffc8000
 CONFIG_SPL_RELOC_STACK=0xfffd8000
 CONFIG_SPL_RELOC_MALLOC=y
 CONFIG_SPL_RELOC_MALLOC_ADDR=0xfffcb000
diff --git a/configs/T1042D4RDB_SDCARD_defconfig b/configs/T1042D4RDB_SDCARD_defconfig
index 4b3962c7de8e..32fed7a33a4a 100644
--- a/configs/T1042D4RDB_SDCARD_defconfig
+++ b/configs/T1042D4RDB_SDCARD_defconfig
@@ -36,6 +36,7 @@ CONFIG_SPL_FSL_PBL=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
 CONFIG_SPL_SKIP_RELOCATE=y
+CONFIG_SPL_GD_ADDR=0xfffc8000
 CONFIG_SPL_RELOC_STACK=0xfffd8000
 CONFIG_SPL_RELOC_MALLOC=y
 CONFIG_SPL_RELOC_MALLOC_ADDR=0xfffcb000
diff --git a/configs/T1042D4RDB_SPIFLASH_defconfig b/configs/T1042D4RDB_SPIFLASH_defconfig
index a9668c562de9..638ed7147a72 100644
--- a/configs/T1042D4RDB_SPIFLASH_defconfig
+++ b/configs/T1042D4RDB_SPIFLASH_defconfig
@@ -39,6 +39,7 @@ CONFIG_SPL_FSL_PBL=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
 CONFIG_SPL_SKIP_RELOCATE=y
+CONFIG_SPL_GD_ADDR=0xfffc8000
 CONFIG_SPL_RELOC_STACK=0xfffd8000
 CONFIG_SPL_RELOC_MALLOC=y
 CONFIG_SPL_RELOC_MALLOC_ADDR=0xfffcb000
diff --git a/configs/T2080QDS_NAND_defconfig b/configs/T2080QDS_NAND_defconfig
index e8b83ed127de..b71659a6600d 100644
--- a/configs/T2080QDS_NAND_defconfig
+++ b/configs/T2080QDS_NAND_defconfig
@@ -40,6 +40,7 @@ CONFIG_SPL_FSL_PBL=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
 CONFIG_SPL_SKIP_RELOCATE=y
+CONFIG_SPL_GD_ADDR=0xfffc8000
 CONFIG_SPL_RELOC_STACK=0xfffd8000
 CONFIG_SPL_RELOC_MALLOC=y
 CONFIG_SPL_RELOC_MALLOC_ADDR=0xfffcb000
diff --git a/configs/T2080QDS_SDCARD_defconfig b/configs/T2080QDS_SDCARD_defconfig
index 1e9b58622658..1b8ef0cb365f 100644
--- a/configs/T2080QDS_SDCARD_defconfig
+++ b/configs/T2080QDS_SDCARD_defconfig
@@ -41,6 +41,7 @@ CONFIG_SPL_FSL_PBL=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
 CONFIG_SPL_SKIP_RELOCATE=y
+CONFIG_SPL_GD_ADDR=0xfffc8000
 CONFIG_SPL_RELOC_STACK=0xfffd8000
 CONFIG_SPL_RELOC_MALLOC=y
 CONFIG_SPL_RELOC_MALLOC_ADDR=0xfffcb000
diff --git a/configs/T2080QDS_SPIFLASH_defconfig b/configs/T2080QDS_SPIFLASH_defconfig
index 2967c4e9806a..bcef31a665fc 100644
--- a/configs/T2080QDS_SPIFLASH_defconfig
+++ b/configs/T2080QDS_SPIFLASH_defconfig
@@ -44,6 +44,7 @@ CONFIG_SPL_FSL_PBL=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
 CONFIG_SPL_SKIP_RELOCATE=y
+CONFIG_SPL_GD_ADDR=0xfffc8000
 CONFIG_SPL_RELOC_STACK=0xfffd8000
 CONFIG_SPL_RELOC_MALLOC=y
 CONFIG_SPL_RELOC_MALLOC_ADDR=0xfffcb000
diff --git a/configs/T2080RDB_NAND_defconfig b/configs/T2080RDB_NAND_defconfig
index dd5a3dee4d82..9e8e3ea8b5af 100644
--- a/configs/T2080RDB_NAND_defconfig
+++ b/configs/T2080RDB_NAND_defconfig
@@ -38,6 +38,7 @@ CONFIG_SPL_FSL_PBL=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
 CONFIG_SPL_SKIP_RELOCATE=y
+CONFIG_SPL_GD_ADDR=0xfffc8000
 CONFIG_SPL_RELOC_STACK=0xfffd8000
 CONFIG_SPL_RELOC_MALLOC=y
 CONFIG_SPL_RELOC_MALLOC_ADDR=0xfffcb000
diff --git a/configs/T2080RDB_SDCARD_defconfig b/configs/T2080RDB_SDCARD_defconfig
index 2c35b80c0c6c..b6a0b857a725 100644
--- a/configs/T2080RDB_SDCARD_defconfig
+++ b/configs/T2080RDB_SDCARD_defconfig
@@ -39,6 +39,7 @@ CONFIG_SPL_FSL_PBL=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
 CONFIG_SPL_SKIP_RELOCATE=y
+CONFIG_SPL_GD_ADDR=0xfffc8000
 CONFIG_SPL_RELOC_STACK=0xfffd8000
 CONFIG_SPL_RELOC_MALLOC=y
 CONFIG_SPL_RELOC_MALLOC_ADDR=0xfffcb000
diff --git a/configs/T2080RDB_SPIFLASH_defconfig b/configs/T2080RDB_SPIFLASH_defconfig
index 21e0be3a03ac..b0f0d165cdd2 100644
--- a/configs/T2080RDB_SPIFLASH_defconfig
+++ b/configs/T2080RDB_SPIFLASH_defconfig
@@ -42,6 +42,7 @@ CONFIG_SPL_FSL_PBL=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
 CONFIG_SPL_SKIP_RELOCATE=y
+CONFIG_SPL_GD_ADDR=0xfffc8000
 CONFIG_SPL_RELOC_STACK=0xfffd8000
 CONFIG_SPL_RELOC_MALLOC=y
 CONFIG_SPL_RELOC_MALLOC_ADDR=0xfffcb000
diff --git a/configs/T2080RDB_revD_NAND_defconfig b/configs/T2080RDB_revD_NAND_defconfig
index d2b8df2dbc10..feba8e54b5cb 100644
--- a/configs/T2080RDB_revD_NAND_defconfig
+++ b/configs/T2080RDB_revD_NAND_defconfig
@@ -39,6 +39,7 @@ CONFIG_SPL_FSL_PBL=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
 CONFIG_SPL_SKIP_RELOCATE=y
+CONFIG_SPL_GD_ADDR=0xfffc8000
 CONFIG_SPL_RELOC_STACK=0xfffd8000
 CONFIG_SPL_RELOC_MALLOC=y
 CONFIG_SPL_RELOC_MALLOC_ADDR=0xfffcb000
diff --git a/configs/T2080RDB_revD_SDCARD_defconfig b/configs/T2080RDB_revD_SDCARD_defconfig
index 24dea1ae9af6..0495786bc5f9 100644
--- a/configs/T2080RDB_revD_SDCARD_defconfig
+++ b/configs/T2080RDB_revD_SDCARD_defconfig
@@ -40,6 +40,7 @@ CONFIG_SPL_FSL_PBL=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
 CONFIG_SPL_SKIP_RELOCATE=y
+CONFIG_SPL_GD_ADDR=0xfffc8000
 CONFIG_SPL_RELOC_STACK=0xfffd8000
 CONFIG_SPL_RELOC_MALLOC=y
 CONFIG_SPL_RELOC_MALLOC_ADDR=0xfffcb000
diff --git a/configs/T2080RDB_revD_SPIFLASH_defconfig b/configs/T2080RDB_revD_SPIFLASH_defconfig
index a5c397dc4dd9..bb7c711d5575 100644
--- a/configs/T2080RDB_revD_SPIFLASH_defconfig
+++ b/configs/T2080RDB_revD_SPIFLASH_defconfig
@@ -43,6 +43,7 @@ CONFIG_SPL_FSL_PBL=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
 CONFIG_SPL_SKIP_RELOCATE=y
+CONFIG_SPL_GD_ADDR=0xfffc8000
 CONFIG_SPL_RELOC_STACK=0xfffd8000
 CONFIG_SPL_RELOC_MALLOC=y
 CONFIG_SPL_RELOC_MALLOC_ADDR=0xfffcb000
diff --git a/configs/T4240RDB_SDCARD_defconfig b/configs/T4240RDB_SDCARD_defconfig
index 56eb03b0c029..fb35c83f1b6c 100644
--- a/configs/T4240RDB_SDCARD_defconfig
+++ b/configs/T4240RDB_SDCARD_defconfig
@@ -37,6 +37,7 @@ CONFIG_SPL_FSL_PBL=y
 CONFIG_SPL_SYS_CCSR_DO_NOT_RELOCATE=y
 CONFIG_SPL_FLUSH_IMAGE=y
 CONFIG_SPL_SKIP_RELOCATE=y
+CONFIG_SPL_GD_ADDR=0xfffc8000
 CONFIG_SPL_RELOC_STACK=0xfffd8000
 CONFIG_SPL_RELOC_MALLOC=y
 CONFIG_SPL_RELOC_MALLOC_ADDR=0xfffcb000
diff --git a/include/configs/P1010RDB.h b/include/configs/P1010RDB.h
index 13f8360a5b48..770f3963143d 100644
--- a/include/configs/P1010RDB.h
+++ b/include/configs/P1010RDB.h
@@ -390,14 +390,12 @@ extern unsigned long get_sdram_size(void);
 #define CONFIG_SYS_INIT_L2_ADDR_PHYS	CONFIG_SYS_INIT_L2_ADDR
 #define CONFIG_SYS_L2_SIZE		(256 << 10)
 #define CONFIG_SYS_INIT_L2_END	(CONFIG_SYS_INIT_L2_ADDR + CONFIG_SYS_L2_SIZE)
-#define CONFIG_SPL_GD_ADDR		(CONFIG_SYS_INIT_L2_ADDR + 96 * 1024)
 #elif defined(CONFIG_MTD_RAW_NAND)
 #ifdef CONFIG_TPL_BUILD
 #define CONFIG_SYS_INIT_L2_ADDR		0xD0000000
 #define CONFIG_SYS_INIT_L2_ADDR_PHYS	CONFIG_SYS_INIT_L2_ADDR
 #define CONFIG_SYS_L2_SIZE		(256 << 10)
 #define CONFIG_SYS_INIT_L2_END	(CONFIG_SYS_INIT_L2_ADDR + CONFIG_SYS_L2_SIZE)
-#define CONFIG_SPL_GD_ADDR		(CONFIG_SYS_INIT_L2_ADDR + 176 * 1024)
 #else
 #define CONFIG_SYS_INIT_L2_ADDR		0xD0000000
 #define CONFIG_SYS_INIT_L2_ADDR_PHYS	CONFIG_SYS_INIT_L2_ADDR
diff --git a/include/configs/T102xRDB.h b/include/configs/T102xRDB.h
index 4dcd376d8954..49654711f403 100644
--- a/include/configs/T102xRDB.h
+++ b/include/configs/T102xRDB.h
@@ -119,7 +119,6 @@
  */
 #define CONFIG_SYS_INIT_L3_ADDR		0xFFFC0000
 #define CONFIG_SYS_L3_SIZE		(256 << 10)
-#define CONFIG_SPL_GD_ADDR		(CONFIG_SYS_INIT_L3_ADDR + 32 * 1024)
 #define SPL_ENV_ADDR			(CONFIG_SPL_GD_ADDR + 4 * 1024)
 
 #ifdef CONFIG_PHYS_64BIT
diff --git a/include/configs/T104xRDB.h b/include/configs/T104xRDB.h
index 07eed3bb14f3..a56e3bfb654e 100644
--- a/include/configs/T104xRDB.h
+++ b/include/configs/T104xRDB.h
@@ -106,7 +106,6 @@
  */
 #define CONFIG_SYS_INIT_L3_VADDR	0xFFFC0000
 #define CONFIG_SYS_L3_SIZE		256 << 10
-#define CONFIG_SPL_GD_ADDR		(CONFIG_SYS_INIT_L3_VADDR + 32 * 1024)
 #define SPL_ENV_ADDR			(CONFIG_SPL_GD_ADDR + 4 * 1024)
 
 #define CONFIG_SYS_DCSRBAR		0xf0000000
diff --git a/include/configs/T208xQDS.h b/include/configs/T208xQDS.h
index 16751e5a3fb3..de81f53ec2c6 100644
--- a/include/configs/T208xQDS.h
+++ b/include/configs/T208xQDS.h
@@ -92,7 +92,6 @@
  */
 #define CONFIG_SYS_INIT_L3_ADDR		0xFFFC0000
 #define CONFIG_SYS_L3_SIZE		(512 << 10)
-#define CONFIG_SPL_GD_ADDR		(CONFIG_SYS_INIT_L3_ADDR + 32 * 1024)
 #define SPL_ENV_ADDR			(CONFIG_SPL_GD_ADDR + 4 * 1024)
 
 #define CONFIG_SYS_DCSRBAR	0xf0000000
diff --git a/include/configs/T208xRDB.h b/include/configs/T208xRDB.h
index feec2c359912..04562bfbbdff 100644
--- a/include/configs/T208xRDB.h
+++ b/include/configs/T208xRDB.h
@@ -87,7 +87,6 @@
  */
 #define CONFIG_SYS_INIT_L3_ADDR		0xFFFC0000
 #define CONFIG_SYS_L3_SIZE		(512 << 10)
-#define CONFIG_SPL_GD_ADDR		(CONFIG_SYS_INIT_L3_ADDR + 32 * 1024)
 #define SPL_ENV_ADDR			(CONFIG_SPL_GD_ADDR + 4 * 1024)
 
 #define CONFIG_SYS_DCSRBAR	0xf0000000
diff --git a/include/configs/T4240RDB.h b/include/configs/T4240RDB.h
index 21854139b9da..2ab1b647a86b 100644
--- a/include/configs/T4240RDB.h
+++ b/include/configs/T4240RDB.h
@@ -67,7 +67,6 @@
  */
 #define CONFIG_SYS_INIT_L3_ADDR		0xFFFC0000
 #define CONFIG_SYS_L3_SIZE		(512 << 10)
-#define CONFIG_SPL_GD_ADDR		(CONFIG_SYS_INIT_L3_ADDR + 32 * 1024)
 #define SPL_ENV_ADDR			(CONFIG_SPL_GD_ADDR + 4 * 1024)
 
 #define CONFIG_SYS_DCSRBAR		0xf0000000
diff --git a/include/configs/openpiton-riscv64.h b/include/configs/openpiton-riscv64.h
index 497f0d50d0aa..12bd8fb99cd6 100644
--- a/include/configs/openpiton-riscv64.h
+++ b/include/configs/openpiton-riscv64.h
@@ -17,10 +17,6 @@
 #define CONFIG_SYS_SDRAM_BASE 0x80000000
 #define CONFIG_SYS_BOOTM_LEN        SZ_256M
 
-#ifdef CONFIG_SPL
-#define CONFIG_SPL_GD_ADDR 0x85000000
-#endif
-
 /* ---------------------------------------------------------------------
  * Board boot configuration
  */
diff --git a/include/configs/p1_p2_rdb_pc.h b/include/configs/p1_p2_rdb_pc.h
index 0b866f4d5a66..eb9c78bf77c3 100644
--- a/include/configs/p1_p2_rdb_pc.h
+++ b/include/configs/p1_p2_rdb_pc.h
@@ -336,13 +336,11 @@
 #define CONFIG_SYS_INIT_L2_ADDR		0xf8f80000
 #define CONFIG_SYS_INIT_L2_ADDR_PHYS	CONFIG_SYS_INIT_L2_ADDR
 #define CONFIG_SYS_INIT_L2_END	(CONFIG_SYS_INIT_L2_ADDR + CONFIG_SYS_L2_SIZE)
-#define CONFIG_SPL_GD_ADDR		(CONFIG_SYS_INIT_L2_ADDR + 112 * 1024)
 #elif defined(CONFIG_MTD_RAW_NAND)
 #ifdef CONFIG_TPL_BUILD
 #define CONFIG_SYS_INIT_L2_ADDR		0xf8f80000
 #define CONFIG_SYS_INIT_L2_ADDR_PHYS	CONFIG_SYS_INIT_L2_ADDR
 #define CONFIG_SYS_INIT_L2_END	(CONFIG_SYS_INIT_L2_ADDR + CONFIG_SYS_L2_SIZE)
-#define CONFIG_SPL_GD_ADDR		(CONFIG_SYS_INIT_L2_ADDR + 176 * 1024)
 #else
 #define CONFIG_SYS_INIT_L2_ADDR		0xf8f80000
 #define CONFIG_SYS_INIT_L2_ADDR_PHYS	CONFIG_SYS_INIT_L2_ADDR
-- 
2.25.1


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH 11/20] Drop CONFIG_SPL_SPI_FLASH_MINIMAL
  2022-05-29 16:55 [PATCH 01/20] Convert CONFIG_SPL_STACK to Kconfig Tom Rini
                   ` (8 preceding siblings ...)
  2022-05-29 16:55 ` [PATCH 10/20] Convert CONFIG_SPL_GD_ADDR to Kconfig Tom Rini
@ 2022-05-29 16:55 ` Tom Rini
  2022-05-29 16:55 ` [PATCH 12/20] Remove CONFIG_SPL_STACK_SIZE Tom Rini
                   ` (10 subsequent siblings)
  20 siblings, 0 replies; 27+ messages in thread
From: Tom Rini @ 2022-05-29 16:55 UTC (permalink / raw)
  To: u-boot

There are no users of CONFIG_SPL_SPI_FLASH_MINIMAL only platforms
defining it, drop it.

Signed-off-by: Tom Rini <trini@konsulko.com>
---
 include/configs/P1010RDB.h     | 1 -
 include/configs/T102xRDB.h     | 1 -
 include/configs/T104xRDB.h     | 1 -
 include/configs/T208xQDS.h     | 1 -
 include/configs/T208xRDB.h     | 1 -
 include/configs/p1_p2_rdb_pc.h | 1 -
 6 files changed, 6 deletions(-)

diff --git a/include/configs/P1010RDB.h b/include/configs/P1010RDB.h
index 770f3963143d..19ca05342d88 100644
--- a/include/configs/P1010RDB.h
+++ b/include/configs/P1010RDB.h
@@ -29,7 +29,6 @@
 #define CONFIG_RAMBOOT_SPIFLASH
 #define CONFIG_RESET_VECTOR_ADDRESS	0x110bfffc
 #else
-#define CONFIG_SPL_SPI_FLASH_MINIMAL
 #define CONFIG_SPL_TARGET		"u-boot-with-spl.bin"
 #define CONFIG_SYS_SPI_FLASH_U_BOOT_SIZE	(512 << 10)
 #define CONFIG_SYS_SPI_FLASH_U_BOOT_DST		(0x11000000)
diff --git a/include/configs/T102xRDB.h b/include/configs/T102xRDB.h
index 49654711f403..618b8ed845a1 100644
--- a/include/configs/T102xRDB.h
+++ b/include/configs/T102xRDB.h
@@ -35,7 +35,6 @@
 
 #ifdef CONFIG_SPIFLASH
 #define CONFIG_RESET_VECTOR_ADDRESS		0x30000FFC
-#define CONFIG_SPL_SPI_FLASH_MINIMAL
 #define CONFIG_SYS_SPI_FLASH_U_BOOT_SIZE	(768 << 10)
 #define CONFIG_SYS_SPI_FLASH_U_BOOT_DST		(0x30000000)
 #define CONFIG_SYS_SPI_FLASH_U_BOOT_START	(0x30000000)
diff --git a/include/configs/T104xRDB.h b/include/configs/T104xRDB.h
index a56e3bfb654e..3f4e59fa8ab2 100644
--- a/include/configs/T104xRDB.h
+++ b/include/configs/T104xRDB.h
@@ -39,7 +39,6 @@
 
 #ifdef CONFIG_SPIFLASH
 #define	CONFIG_RESET_VECTOR_ADDRESS		0x30000FFC
-#define CONFIG_SPL_SPI_FLASH_MINIMAL
 #define CONFIG_SYS_SPI_FLASH_U_BOOT_SIZE	(768 << 10)
 #define CONFIG_SYS_SPI_FLASH_U_BOOT_DST		(0x30000000)
 #define CONFIG_SYS_SPI_FLASH_U_BOOT_START	(0x30000000)
diff --git a/include/configs/T208xQDS.h b/include/configs/T208xQDS.h
index de81f53ec2c6..b4a91eacb9e0 100644
--- a/include/configs/T208xQDS.h
+++ b/include/configs/T208xQDS.h
@@ -43,7 +43,6 @@
 
 #ifdef CONFIG_SPIFLASH
 #define	CONFIG_RESET_VECTOR_ADDRESS		0x200FFC
-#define CONFIG_SPL_SPI_FLASH_MINIMAL
 #define CONFIG_SYS_SPI_FLASH_U_BOOT_SIZE	(768 << 10)
 #define CONFIG_SYS_SPI_FLASH_U_BOOT_DST		(0x00200000)
 #define CONFIG_SYS_SPI_FLASH_U_BOOT_START	(0x00200000)
diff --git a/include/configs/T208xRDB.h b/include/configs/T208xRDB.h
index 04562bfbbdff..84e5d5df38df 100644
--- a/include/configs/T208xRDB.h
+++ b/include/configs/T208xRDB.h
@@ -38,7 +38,6 @@
 
 #ifdef CONFIG_SPIFLASH
 #define        CONFIG_RESET_VECTOR_ADDRESS             0x200FFC
-#define CONFIG_SPL_SPI_FLASH_MINIMAL
 #define CONFIG_SYS_SPI_FLASH_U_BOOT_SIZE       (768 << 10)
 #define CONFIG_SYS_SPI_FLASH_U_BOOT_DST                (0x00200000)
 #define CONFIG_SYS_SPI_FLASH_U_BOOT_START      (0x00200000)
diff --git a/include/configs/p1_p2_rdb_pc.h b/include/configs/p1_p2_rdb_pc.h
index eb9c78bf77c3..24a88cebc028 100644
--- a/include/configs/p1_p2_rdb_pc.h
+++ b/include/configs/p1_p2_rdb_pc.h
@@ -84,7 +84,6 @@
 #define CONFIG_SYS_MMC_U_BOOT_OFFS	(128 << 10)
 #define CONFIG_SYS_MPC85XX_NO_RESETVEC
 #elif defined(CONFIG_SPIFLASH)
-#define CONFIG_SPL_SPI_FLASH_MINIMAL
 #define CONFIG_SPL_TARGET		"u-boot-with-spl.bin"
 #define CONFIG_SYS_SPI_FLASH_U_BOOT_SIZE	(768 << 10)
 #define CONFIG_SYS_SPI_FLASH_U_BOOT_DST		(0x11000000)
-- 
2.25.1


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH 12/20] Remove CONFIG_SPL_STACK_SIZE
  2022-05-29 16:55 [PATCH 01/20] Convert CONFIG_SPL_STACK to Kconfig Tom Rini
                   ` (9 preceding siblings ...)
  2022-05-29 16:55 ` [PATCH 11/20] Drop CONFIG_SPL_SPI_FLASH_MINIMAL Tom Rini
@ 2022-05-29 16:55 ` Tom Rini
  2022-05-29 16:55 ` [PATCH 13/20] Convert CONFIG_SPL_TARGET to Kconfig Tom Rini
                   ` (9 subsequent siblings)
  20 siblings, 0 replies; 27+ messages in thread
From: Tom Rini @ 2022-05-29 16:55 UTC (permalink / raw)
  To: u-boot

This is not used anywhere, drop it.

Signed-off-by: Tom Rini <trini@konsulko.com>
---
 include/configs/microblaze-generic.h | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/include/configs/microblaze-generic.h b/include/configs/microblaze-generic.h
index e9c9bf9281ce..389da112b939 100644
--- a/include/configs/microblaze-generic.h
+++ b/include/configs/microblaze-generic.h
@@ -128,7 +128,4 @@
 /* BRAM size - will be generated */
 #define CONFIG_SYS_INIT_RAM_SIZE	0x100000
 
-/* Just for sure that there is a space for stack */
-#define CONFIG_SPL_STACK_SIZE		0x100
-
 #endif	/* __CONFIG_H */
-- 
2.25.1


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH 13/20] Convert CONFIG_SPL_TARGET to Kconfig
  2022-05-29 16:55 [PATCH 01/20] Convert CONFIG_SPL_STACK to Kconfig Tom Rini
                   ` (10 preceding siblings ...)
  2022-05-29 16:55 ` [PATCH 12/20] Remove CONFIG_SPL_STACK_SIZE Tom Rini
@ 2022-05-29 16:55 ` Tom Rini
  2022-05-29 16:55 ` [PATCH 14/20] Convert CONFIG_SYS_SPL_ARGS_ADDR " Tom Rini
                   ` (8 subsequent siblings)
  20 siblings, 0 replies; 27+ messages in thread
From: Tom Rini @ 2022-05-29 16:55 UTC (permalink / raw)
  To: u-boot

This converts the following to Kconfig:
   CONFIG_SPL_TARGET

Signed-off-by: Tom Rini <trini@konsulko.com>
---
 README                                               | 5 -----
 common/spl/Kconfig                                   | 9 +++++++++
 configs/P1010RDB-PA_36BIT_NAND_defconfig             | 1 +
 configs/P1010RDB-PA_36BIT_SDCARD_defconfig           | 1 +
 configs/P1010RDB-PA_36BIT_SPIFLASH_defconfig         | 1 +
 configs/P1010RDB-PA_NAND_defconfig                   | 1 +
 configs/P1010RDB-PA_SDCARD_defconfig                 | 1 +
 configs/P1010RDB-PA_SPIFLASH_defconfig               | 1 +
 configs/P1010RDB-PB_36BIT_NAND_defconfig             | 1 +
 configs/P1010RDB-PB_36BIT_SDCARD_defconfig           | 1 +
 configs/P1010RDB-PB_36BIT_SPIFLASH_defconfig         | 1 +
 configs/P1010RDB-PB_NAND_defconfig                   | 1 +
 configs/P1010RDB-PB_SDCARD_defconfig                 | 1 +
 configs/P1010RDB-PB_SPIFLASH_defconfig               | 1 +
 configs/P1020RDB-PC_36BIT_NAND_defconfig             | 1 +
 configs/P1020RDB-PC_36BIT_SDCARD_defconfig           | 1 +
 configs/P1020RDB-PC_36BIT_SPIFLASH_defconfig         | 1 +
 configs/P1020RDB-PC_NAND_defconfig                   | 1 +
 configs/P1020RDB-PC_SDCARD_defconfig                 | 1 +
 configs/P1020RDB-PC_SPIFLASH_defconfig               | 1 +
 configs/P1020RDB-PD_NAND_defconfig                   | 1 +
 configs/P1020RDB-PD_SDCARD_defconfig                 | 1 +
 configs/P1020RDB-PD_SPIFLASH_defconfig               | 1 +
 configs/P2020RDB-PC_36BIT_NAND_defconfig             | 1 +
 configs/P2020RDB-PC_36BIT_SDCARD_defconfig           | 1 +
 configs/P2020RDB-PC_36BIT_SPIFLASH_defconfig         | 1 +
 configs/P2020RDB-PC_NAND_defconfig                   | 1 +
 configs/P2020RDB-PC_SDCARD_defconfig                 | 1 +
 configs/P2020RDB-PC_SPIFLASH_defconfig               | 1 +
 configs/k2e_evm_defconfig                            | 1 +
 configs/k2g_evm_defconfig                            | 1 +
 configs/k2hk_evm_defconfig                           | 1 +
 configs/k2l_evm_defconfig                            | 1 +
 configs/ls1046ardb_qspi_spl_defconfig                | 1 +
 configs/ls1088aqds_sdcard_ifc_defconfig              | 1 +
 configs/ls1088aqds_sdcard_qspi_defconfig             | 1 +
 configs/ls1088ardb_sdcard_qspi_SECURE_BOOT_defconfig | 1 +
 configs/ls1088ardb_sdcard_qspi_defconfig             | 1 +
 configs/ls2080aqds_nand_defconfig                    | 1 +
 configs/ls2080aqds_sdcard_defconfig                  | 1 +
 configs/ls2080ardb_nand_defconfig                    | 1 +
 configs/m53menlo_defconfig                           | 1 +
 configs/socfpga_agilex_atf_defconfig                 | 1 +
 configs/socfpga_agilex_defconfig                     | 1 +
 configs/socfpga_agilex_vab_defconfig                 | 1 +
 configs/socfpga_n5x_atf_defconfig                    | 1 +
 configs/socfpga_n5x_defconfig                        | 1 +
 configs/socfpga_n5x_vab_defconfig                    | 1 +
 configs/socfpga_stratix10_atf_defconfig              | 1 +
 configs/socfpga_stratix10_defconfig                  | 1 +
 configs/stm32mp15_dhcom_basic_defconfig              | 1 +
 configs/stm32mp15_dhcor_basic_defconfig              | 1 +
 configs/uniphier_ld4_sld8_defconfig                  | 1 +
 configs/uniphier_v7_defconfig                        | 1 +
 include/configs/P1010RDB.h                           | 5 -----
 include/configs/dh_imx6.h                            | 1 -
 include/configs/ge_b1x5v2.h                          | 1 -
 include/configs/ls1046a_common.h                     | 1 -
 include/configs/ls1088a_common.h                     | 2 --
 include/configs/ls2080a_common.h                     | 2 --
 include/configs/m53menlo.h                           | 1 -
 include/configs/p1_p2_rdb_pc.h                       | 5 -----
 include/configs/rcar-gen2-common.h                   | 4 ----
 include/configs/rcar-gen3-common.h                   | 4 ----
 include/configs/socfpga_soc64_common.h               | 1 -
 include/configs/stm32mp15_dh_dhsom.h                 | 2 --
 include/configs/ti_armv7_keystone2.h                 | 1 -
 include/configs/uniphier.h                           | 2 --
 68 files changed, 61 insertions(+), 37 deletions(-)

diff --git a/README b/README
index 452e5955023a..354913f82369 100644
--- a/README
+++ b/README
@@ -1679,11 +1679,6 @@ The following options need to be configured:
 		CONFIG_SPL_RAM_DEVICE
 		Support for running image already present in ram, in SPL binary
 
-		CONFIG_SPL_TARGET
-		Final target image containing SPL and payload.  Some SPLs
-		use an arch-specific makefile fragment instead, for
-		example if more than one image needs to be produced.
-
 		CONFIG_SPL_FIT_PRINT
 		Printing information about a FIT image adds quite a bit of
 		code to SPL. So this is normally disabled in SPL. Use this
diff --git a/common/spl/Kconfig b/common/spl/Kconfig
index 027ac4274b65..dfbda1befb58 100644
--- a/common/spl/Kconfig
+++ b/common/spl/Kconfig
@@ -1583,6 +1583,15 @@ config SPL_OPENSBI_LOAD_ADDR
 	help
 	  Load address of the OpenSBI binary.
 
+config SPL_TARGET
+	string "Addtional build targets for 'make'"
+	default "spl/u-boot-spl.srec" if RCAR_GEN2
+	default "spl/u-boot-spl.scif" if RCAR_GEN3
+	default ""
+	help
+	  On some platforms we need to have 'make' run additional build target
+	  rules. If required on your platform, enter it here, otherwise leave blank.
+
 config TPL
 	bool
 	depends on SUPPORT_TPL
diff --git a/configs/P1010RDB-PA_36BIT_NAND_defconfig b/configs/P1010RDB-PA_36BIT_NAND_defconfig
index 06b4ca72b21a..6c4142c200b5 100644
--- a/configs/P1010RDB-PA_36BIT_NAND_defconfig
+++ b/configs/P1010RDB-PA_36BIT_NAND_defconfig
@@ -42,6 +42,7 @@ CONFIG_TPL_RELOC_MALLOC=y
 CONFIG_TPL_RELOC_MALLOC_ADDR=0xd0034000
 CONFIG_TPL_RELOC_MALLOC_SIZE=0xc000
 CONFIG_SPL_NAND_SUPPORT=y
+CONFIG_SPL_TARGET="u-boot-with-spl.bin"
 CONFIG_TPL=y
 CONFIG_TPL_MAX_SIZE=0x20000
 CONFIG_TPL_DRIVERS_MISC=y
diff --git a/configs/P1010RDB-PA_36BIT_SDCARD_defconfig b/configs/P1010RDB-PA_36BIT_SDCARD_defconfig
index b116eee6c5c5..324ad908bb09 100644
--- a/configs/P1010RDB-PA_36BIT_SDCARD_defconfig
+++ b/configs/P1010RDB-PA_36BIT_SDCARD_defconfig
@@ -39,6 +39,7 @@ CONFIG_SPL_RELOC_MALLOC_SIZE=0x20000
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
+CONFIG_SPL_TARGET="u-boot-with-spl.bin"
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_PBSIZE=276
 CONFIG_CMD_IMLS=y
diff --git a/configs/P1010RDB-PA_36BIT_SPIFLASH_defconfig b/configs/P1010RDB-PA_36BIT_SPIFLASH_defconfig
index df4caee9e72e..2299f450a972 100644
--- a/configs/P1010RDB-PA_36BIT_SPIFLASH_defconfig
+++ b/configs/P1010RDB-PA_36BIT_SPIFLASH_defconfig
@@ -42,6 +42,7 @@ CONFIG_SPL_RELOC_MALLOC_SIZE=0x20000
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
+CONFIG_SPL_TARGET="u-boot-with-spl.bin"
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_PBSIZE=276
 CONFIG_CMD_IMLS=y
diff --git a/configs/P1010RDB-PA_NAND_defconfig b/configs/P1010RDB-PA_NAND_defconfig
index 918a107f5283..5813c75f10a6 100644
--- a/configs/P1010RDB-PA_NAND_defconfig
+++ b/configs/P1010RDB-PA_NAND_defconfig
@@ -41,6 +41,7 @@ CONFIG_TPL_RELOC_MALLOC=y
 CONFIG_TPL_RELOC_MALLOC_ADDR=0xd0034000
 CONFIG_TPL_RELOC_MALLOC_SIZE=0xc000
 CONFIG_SPL_NAND_SUPPORT=y
+CONFIG_SPL_TARGET="u-boot-with-spl.bin"
 CONFIG_TPL=y
 CONFIG_TPL_MAX_SIZE=0x20000
 CONFIG_TPL_DRIVERS_MISC=y
diff --git a/configs/P1010RDB-PA_SDCARD_defconfig b/configs/P1010RDB-PA_SDCARD_defconfig
index 41988bb1f727..a51f9acd5861 100644
--- a/configs/P1010RDB-PA_SDCARD_defconfig
+++ b/configs/P1010RDB-PA_SDCARD_defconfig
@@ -38,6 +38,7 @@ CONFIG_SPL_RELOC_MALLOC_SIZE=0x20000
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
+CONFIG_SPL_TARGET="u-boot-with-spl.bin"
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_PBSIZE=276
 CONFIG_CMD_IMLS=y
diff --git a/configs/P1010RDB-PA_SPIFLASH_defconfig b/configs/P1010RDB-PA_SPIFLASH_defconfig
index b4dd81ea9404..c2b5d7762ce3 100644
--- a/configs/P1010RDB-PA_SPIFLASH_defconfig
+++ b/configs/P1010RDB-PA_SPIFLASH_defconfig
@@ -41,6 +41,7 @@ CONFIG_SPL_RELOC_MALLOC_SIZE=0x20000
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
+CONFIG_SPL_TARGET="u-boot-with-spl.bin"
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_PBSIZE=276
 CONFIG_CMD_IMLS=y
diff --git a/configs/P1010RDB-PB_36BIT_NAND_defconfig b/configs/P1010RDB-PB_36BIT_NAND_defconfig
index b69e6cf56554..4caf43dade2a 100644
--- a/configs/P1010RDB-PB_36BIT_NAND_defconfig
+++ b/configs/P1010RDB-PB_36BIT_NAND_defconfig
@@ -43,6 +43,7 @@ CONFIG_TPL_RELOC_MALLOC=y
 CONFIG_TPL_RELOC_MALLOC_ADDR=0xd0034000
 CONFIG_TPL_RELOC_MALLOC_SIZE=0xc000
 CONFIG_SPL_NAND_SUPPORT=y
+CONFIG_SPL_TARGET="u-boot-with-spl.bin"
 CONFIG_TPL=y
 CONFIG_TPL_MAX_SIZE=0x20000
 CONFIG_TPL_DRIVERS_MISC=y
diff --git a/configs/P1010RDB-PB_36BIT_SDCARD_defconfig b/configs/P1010RDB-PB_36BIT_SDCARD_defconfig
index 21e4e7f0f5f8..50053876f8ec 100644
--- a/configs/P1010RDB-PB_36BIT_SDCARD_defconfig
+++ b/configs/P1010RDB-PB_36BIT_SDCARD_defconfig
@@ -40,6 +40,7 @@ CONFIG_SPL_RELOC_MALLOC_SIZE=0x20000
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
+CONFIG_SPL_TARGET="u-boot-with-spl.bin"
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_PBSIZE=276
 CONFIG_CMD_IMLS=y
diff --git a/configs/P1010RDB-PB_36BIT_SPIFLASH_defconfig b/configs/P1010RDB-PB_36BIT_SPIFLASH_defconfig
index dbbc25d319df..6f0cd359abbf 100644
--- a/configs/P1010RDB-PB_36BIT_SPIFLASH_defconfig
+++ b/configs/P1010RDB-PB_36BIT_SPIFLASH_defconfig
@@ -43,6 +43,7 @@ CONFIG_SPL_RELOC_MALLOC_SIZE=0x20000
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
+CONFIG_SPL_TARGET="u-boot-with-spl.bin"
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_PBSIZE=276
 CONFIG_CMD_IMLS=y
diff --git a/configs/P1010RDB-PB_NAND_defconfig b/configs/P1010RDB-PB_NAND_defconfig
index c4e9d5900547..16b52196aeb8 100644
--- a/configs/P1010RDB-PB_NAND_defconfig
+++ b/configs/P1010RDB-PB_NAND_defconfig
@@ -42,6 +42,7 @@ CONFIG_TPL_RELOC_MALLOC=y
 CONFIG_TPL_RELOC_MALLOC_ADDR=0xd0034000
 CONFIG_TPL_RELOC_MALLOC_SIZE=0xc000
 CONFIG_SPL_NAND_SUPPORT=y
+CONFIG_SPL_TARGET="u-boot-with-spl.bin"
 CONFIG_TPL=y
 CONFIG_TPL_MAX_SIZE=0x20000
 CONFIG_TPL_DRIVERS_MISC=y
diff --git a/configs/P1010RDB-PB_SDCARD_defconfig b/configs/P1010RDB-PB_SDCARD_defconfig
index c0ea6b9635a9..6d3be4303a28 100644
--- a/configs/P1010RDB-PB_SDCARD_defconfig
+++ b/configs/P1010RDB-PB_SDCARD_defconfig
@@ -39,6 +39,7 @@ CONFIG_SPL_RELOC_MALLOC_SIZE=0x20000
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
+CONFIG_SPL_TARGET="u-boot-with-spl.bin"
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_PBSIZE=276
 CONFIG_CMD_IMLS=y
diff --git a/configs/P1010RDB-PB_SPIFLASH_defconfig b/configs/P1010RDB-PB_SPIFLASH_defconfig
index c32ccc292b41..a54f7eab5f20 100644
--- a/configs/P1010RDB-PB_SPIFLASH_defconfig
+++ b/configs/P1010RDB-PB_SPIFLASH_defconfig
@@ -42,6 +42,7 @@ CONFIG_SPL_RELOC_MALLOC_SIZE=0x20000
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
+CONFIG_SPL_TARGET="u-boot-with-spl.bin"
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_PBSIZE=276
 CONFIG_CMD_IMLS=y
diff --git a/configs/P1020RDB-PC_36BIT_NAND_defconfig b/configs/P1020RDB-PC_36BIT_NAND_defconfig
index 3e5c0449fd8a..80bfe31d79a5 100644
--- a/configs/P1020RDB-PC_36BIT_NAND_defconfig
+++ b/configs/P1020RDB-PC_36BIT_NAND_defconfig
@@ -43,6 +43,7 @@ CONFIG_TPL_RELOC_MALLOC=y
 CONFIG_TPL_RELOC_MALLOC_ADDR=0xf8fb4000
 CONFIG_TPL_RELOC_MALLOC_SIZE=0xc000
 CONFIG_SPL_NAND_SUPPORT=y
+CONFIG_SPL_TARGET="u-boot-with-spl.bin"
 CONFIG_TPL=y
 CONFIG_TPL_MAX_SIZE=0x20000
 CONFIG_TPL_ENV_SUPPORT=y
diff --git a/configs/P1020RDB-PC_36BIT_SDCARD_defconfig b/configs/P1020RDB-PC_36BIT_SDCARD_defconfig
index ddd041c09a5e..2619ef0fb17f 100644
--- a/configs/P1020RDB-PC_36BIT_SDCARD_defconfig
+++ b/configs/P1020RDB-PC_36BIT_SDCARD_defconfig
@@ -40,6 +40,7 @@ CONFIG_SPL_RELOC_MALLOC_SIZE=0x1b000
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
+CONFIG_SPL_TARGET="u-boot-with-spl.bin"
 CONFIG_HUSH_PARSER=y
 # CONFIG_AUTO_COMPLETE is not set
 CONFIG_SYS_PBSIZE=276
diff --git a/configs/P1020RDB-PC_36BIT_SPIFLASH_defconfig b/configs/P1020RDB-PC_36BIT_SPIFLASH_defconfig
index 9da02480e5e2..e37c74bd1f16 100644
--- a/configs/P1020RDB-PC_36BIT_SPIFLASH_defconfig
+++ b/configs/P1020RDB-PC_36BIT_SPIFLASH_defconfig
@@ -43,6 +43,7 @@ CONFIG_SPL_RELOC_MALLOC_SIZE=0x1b000
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
+CONFIG_SPL_TARGET="u-boot-with-spl.bin"
 CONFIG_HUSH_PARSER=y
 # CONFIG_AUTO_COMPLETE is not set
 CONFIG_SYS_PBSIZE=276
diff --git a/configs/P1020RDB-PC_NAND_defconfig b/configs/P1020RDB-PC_NAND_defconfig
index 6a75d6f1e813..860636292d2f 100644
--- a/configs/P1020RDB-PC_NAND_defconfig
+++ b/configs/P1020RDB-PC_NAND_defconfig
@@ -42,6 +42,7 @@ CONFIG_TPL_RELOC_MALLOC=y
 CONFIG_TPL_RELOC_MALLOC_ADDR=0xf8fb4000
 CONFIG_TPL_RELOC_MALLOC_SIZE=0xc000
 CONFIG_SPL_NAND_SUPPORT=y
+CONFIG_SPL_TARGET="u-boot-with-spl.bin"
 CONFIG_TPL=y
 CONFIG_TPL_MAX_SIZE=0x20000
 CONFIG_TPL_ENV_SUPPORT=y
diff --git a/configs/P1020RDB-PC_SDCARD_defconfig b/configs/P1020RDB-PC_SDCARD_defconfig
index 4122d1d741ee..c0d78c9f486d 100644
--- a/configs/P1020RDB-PC_SDCARD_defconfig
+++ b/configs/P1020RDB-PC_SDCARD_defconfig
@@ -39,6 +39,7 @@ CONFIG_SPL_RELOC_MALLOC_SIZE=0x1b000
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
+CONFIG_SPL_TARGET="u-boot-with-spl.bin"
 CONFIG_HUSH_PARSER=y
 # CONFIG_AUTO_COMPLETE is not set
 CONFIG_SYS_PBSIZE=276
diff --git a/configs/P1020RDB-PC_SPIFLASH_defconfig b/configs/P1020RDB-PC_SPIFLASH_defconfig
index cfd42e4bf3eb..debd83ed93ed 100644
--- a/configs/P1020RDB-PC_SPIFLASH_defconfig
+++ b/configs/P1020RDB-PC_SPIFLASH_defconfig
@@ -42,6 +42,7 @@ CONFIG_SPL_RELOC_MALLOC_SIZE=0x1b000
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
+CONFIG_SPL_TARGET="u-boot-with-spl.bin"
 CONFIG_HUSH_PARSER=y
 # CONFIG_AUTO_COMPLETE is not set
 CONFIG_SYS_PBSIZE=276
diff --git a/configs/P1020RDB-PD_NAND_defconfig b/configs/P1020RDB-PD_NAND_defconfig
index bd3d7a3cbb05..d770fc7ba7ee 100644
--- a/configs/P1020RDB-PD_NAND_defconfig
+++ b/configs/P1020RDB-PD_NAND_defconfig
@@ -42,6 +42,7 @@ CONFIG_TPL_RELOC_MALLOC=y
 CONFIG_TPL_RELOC_MALLOC_ADDR=0xf8fb4000
 CONFIG_TPL_RELOC_MALLOC_SIZE=0xc000
 CONFIG_SPL_NAND_SUPPORT=y
+CONFIG_SPL_TARGET="u-boot-with-spl.bin"
 CONFIG_TPL=y
 CONFIG_TPL_MAX_SIZE=0x20000
 CONFIG_TPL_ENV_SUPPORT=y
diff --git a/configs/P1020RDB-PD_SDCARD_defconfig b/configs/P1020RDB-PD_SDCARD_defconfig
index 43391a99b1d2..db484c0d1892 100644
--- a/configs/P1020RDB-PD_SDCARD_defconfig
+++ b/configs/P1020RDB-PD_SDCARD_defconfig
@@ -39,6 +39,7 @@ CONFIG_SPL_RELOC_MALLOC_SIZE=0x1b000
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
+CONFIG_SPL_TARGET="u-boot-with-spl.bin"
 CONFIG_HUSH_PARSER=y
 # CONFIG_AUTO_COMPLETE is not set
 CONFIG_SYS_PBSIZE=276
diff --git a/configs/P1020RDB-PD_SPIFLASH_defconfig b/configs/P1020RDB-PD_SPIFLASH_defconfig
index 091518592c18..d9d630761239 100644
--- a/configs/P1020RDB-PD_SPIFLASH_defconfig
+++ b/configs/P1020RDB-PD_SPIFLASH_defconfig
@@ -42,6 +42,7 @@ CONFIG_SPL_RELOC_MALLOC_SIZE=0x1b000
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
+CONFIG_SPL_TARGET="u-boot-with-spl.bin"
 CONFIG_HUSH_PARSER=y
 # CONFIG_AUTO_COMPLETE is not set
 CONFIG_SYS_PBSIZE=276
diff --git a/configs/P2020RDB-PC_36BIT_NAND_defconfig b/configs/P2020RDB-PC_36BIT_NAND_defconfig
index c0f6b6d8db4c..ac4d4579bb72 100644
--- a/configs/P2020RDB-PC_36BIT_NAND_defconfig
+++ b/configs/P2020RDB-PC_36BIT_NAND_defconfig
@@ -43,6 +43,7 @@ CONFIG_TPL_RELOC_MALLOC=y
 CONFIG_TPL_RELOC_MALLOC_ADDR=0xf8fb4000
 CONFIG_TPL_RELOC_MALLOC_SIZE=0xc000
 CONFIG_SPL_NAND_SUPPORT=y
+CONFIG_SPL_TARGET="u-boot-with-spl.bin"
 CONFIG_TPL=y
 CONFIG_TPL_MAX_SIZE=0x20000
 CONFIG_TPL_ENV_SUPPORT=y
diff --git a/configs/P2020RDB-PC_36BIT_SDCARD_defconfig b/configs/P2020RDB-PC_36BIT_SDCARD_defconfig
index b17346fea34d..b2a5a72143d3 100644
--- a/configs/P2020RDB-PC_36BIT_SDCARD_defconfig
+++ b/configs/P2020RDB-PC_36BIT_SDCARD_defconfig
@@ -40,6 +40,7 @@ CONFIG_SPL_RELOC_MALLOC_SIZE=0x5b000
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
+CONFIG_SPL_TARGET="u-boot-with-spl.bin"
 CONFIG_HUSH_PARSER=y
 # CONFIG_AUTO_COMPLETE is not set
 CONFIG_SYS_PBSIZE=276
diff --git a/configs/P2020RDB-PC_36BIT_SPIFLASH_defconfig b/configs/P2020RDB-PC_36BIT_SPIFLASH_defconfig
index 041179e07d36..42e31b4e22ce 100644
--- a/configs/P2020RDB-PC_36BIT_SPIFLASH_defconfig
+++ b/configs/P2020RDB-PC_36BIT_SPIFLASH_defconfig
@@ -43,6 +43,7 @@ CONFIG_SPL_RELOC_MALLOC_SIZE=0x5b000
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
+CONFIG_SPL_TARGET="u-boot-with-spl.bin"
 CONFIG_HUSH_PARSER=y
 # CONFIG_AUTO_COMPLETE is not set
 CONFIG_SYS_PBSIZE=276
diff --git a/configs/P2020RDB-PC_NAND_defconfig b/configs/P2020RDB-PC_NAND_defconfig
index f3fa869c927f..69ca044e5a22 100644
--- a/configs/P2020RDB-PC_NAND_defconfig
+++ b/configs/P2020RDB-PC_NAND_defconfig
@@ -42,6 +42,7 @@ CONFIG_TPL_RELOC_MALLOC=y
 CONFIG_TPL_RELOC_MALLOC_ADDR=0xf8fb4000
 CONFIG_TPL_RELOC_MALLOC_SIZE=0xc000
 CONFIG_SPL_NAND_SUPPORT=y
+CONFIG_SPL_TARGET="u-boot-with-spl.bin"
 CONFIG_TPL=y
 CONFIG_TPL_MAX_SIZE=0x20000
 CONFIG_TPL_ENV_SUPPORT=y
diff --git a/configs/P2020RDB-PC_SDCARD_defconfig b/configs/P2020RDB-PC_SDCARD_defconfig
index ae4b758776ca..621e5b035f2c 100644
--- a/configs/P2020RDB-PC_SDCARD_defconfig
+++ b/configs/P2020RDB-PC_SDCARD_defconfig
@@ -39,6 +39,7 @@ CONFIG_SPL_RELOC_MALLOC_SIZE=0x5b000
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
+CONFIG_SPL_TARGET="u-boot-with-spl.bin"
 CONFIG_HUSH_PARSER=y
 # CONFIG_AUTO_COMPLETE is not set
 CONFIG_SYS_PBSIZE=276
diff --git a/configs/P2020RDB-PC_SPIFLASH_defconfig b/configs/P2020RDB-PC_SPIFLASH_defconfig
index 338bbecbb4b7..04b10d36c52a 100644
--- a/configs/P2020RDB-PC_SPIFLASH_defconfig
+++ b/configs/P2020RDB-PC_SPIFLASH_defconfig
@@ -42,6 +42,7 @@ CONFIG_SPL_RELOC_MALLOC_SIZE=0x5b000
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
+CONFIG_SPL_TARGET="u-boot-with-spl.bin"
 CONFIG_HUSH_PARSER=y
 # CONFIG_AUTO_COMPLETE is not set
 CONFIG_SYS_PBSIZE=276
diff --git a/configs/k2e_evm_defconfig b/configs/k2e_evm_defconfig
index 9423b453c05a..58c8c13b15a4 100644
--- a/configs/k2e_evm_defconfig
+++ b/configs/k2e_evm_defconfig
@@ -45,6 +45,7 @@ CONFIG_SPL_DM_SPI_FLASH=y
 CONFIG_SPL_POWER=y
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x10000
+CONFIG_SPL_TARGET="u-boot-spi.gph"
 CONFIG_SYS_MAXARGS=64
 CONFIG_SYS_I2C_EEPROM_ADDR_LEN=2
 CONFIG_SYS_EEPROM_PAGE_WRITE_BITS=6
diff --git a/configs/k2g_evm_defconfig b/configs/k2g_evm_defconfig
index 10150f5d6426..b96d1fc7c1a2 100644
--- a/configs/k2g_evm_defconfig
+++ b/configs/k2g_evm_defconfig
@@ -43,6 +43,7 @@ CONFIG_SPL_NAND_BASE=y
 CONFIG_SPL_POWER=y
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x10000
+CONFIG_SPL_TARGET="u-boot-spi.gph"
 CONFIG_SYS_MAXARGS=64
 CONFIG_SYS_I2C_EEPROM_ADDR_LEN=2
 CONFIG_SYS_EEPROM_PAGE_WRITE_BITS=6
diff --git a/configs/k2hk_evm_defconfig b/configs/k2hk_evm_defconfig
index 2a2fb1d07177..cfe5978e550b 100644
--- a/configs/k2hk_evm_defconfig
+++ b/configs/k2hk_evm_defconfig
@@ -45,6 +45,7 @@ CONFIG_SPL_DM_SPI_FLASH=y
 CONFIG_SPL_POWER=y
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x10000
+CONFIG_SPL_TARGET="u-boot-spi.gph"
 CONFIG_SYS_MAXARGS=64
 CONFIG_SYS_I2C_EEPROM_ADDR_LEN=2
 CONFIG_SYS_EEPROM_PAGE_WRITE_BITS=6
diff --git a/configs/k2l_evm_defconfig b/configs/k2l_evm_defconfig
index 906e1042070f..47d5bd14ac56 100644
--- a/configs/k2l_evm_defconfig
+++ b/configs/k2l_evm_defconfig
@@ -45,6 +45,7 @@ CONFIG_SPL_DM_SPI_FLASH=y
 CONFIG_SPL_POWER=y
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x10000
+CONFIG_SPL_TARGET="u-boot-spi.gph"
 CONFIG_SYS_MAXARGS=64
 CONFIG_SYS_I2C_EEPROM_ADDR_LEN=2
 CONFIG_SYS_EEPROM_PAGE_WRITE_BITS=6
diff --git a/configs/ls1046ardb_qspi_spl_defconfig b/configs/ls1046ardb_qspi_spl_defconfig
index c081b786a122..2f6b546a2600 100644
--- a/configs/ls1046ardb_qspi_spl_defconfig
+++ b/configs/ls1046ardb_qspi_spl_defconfig
@@ -58,6 +58,7 @@ CONFIG_SPL_NOR_SUPPORT=y
 CONFIG_SPL_OS_BOOT=y
 CONFIG_SYS_OS_BASE=0x40980000
 CONFIG_SPL_WATCHDOG=y
+CONFIG_SPL_TARGET="spl/u-boot-spl.pbl"
 CONFIG_SYS_MAXARGS=64
 CONFIG_SYS_PBSIZE=532
 CONFIG_CMD_SPL=y
diff --git a/configs/ls1088aqds_sdcard_ifc_defconfig b/configs/ls1088aqds_sdcard_ifc_defconfig
index b2e8132446d0..663aacf876b9 100644
--- a/configs/ls1088aqds_sdcard_ifc_defconfig
+++ b/configs/ls1088aqds_sdcard_ifc_defconfig
@@ -53,6 +53,7 @@ CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x8b0
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
+CONFIG_SPL_TARGET="u-boot-with-spl.bin"
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_MAXARGS=64
 CONFIG_SYS_PBSIZE=532
diff --git a/configs/ls1088aqds_sdcard_qspi_defconfig b/configs/ls1088aqds_sdcard_qspi_defconfig
index 40306d612a45..f3e204875efa 100644
--- a/configs/ls1088aqds_sdcard_qspi_defconfig
+++ b/configs/ls1088aqds_sdcard_qspi_defconfig
@@ -54,6 +54,7 @@ CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x8b0
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
+CONFIG_SPL_TARGET="u-boot-with-spl.bin"
 CONFIG_SYS_MAXARGS=64
 CONFIG_SYS_PBSIZE=532
 CONFIG_CMD_GREPENV=y
diff --git a/configs/ls1088ardb_sdcard_qspi_SECURE_BOOT_defconfig b/configs/ls1088ardb_sdcard_qspi_SECURE_BOOT_defconfig
index bc44ede08c77..5b462a41c904 100644
--- a/configs/ls1088ardb_sdcard_qspi_SECURE_BOOT_defconfig
+++ b/configs/ls1088ardb_sdcard_qspi_SECURE_BOOT_defconfig
@@ -54,6 +54,7 @@ CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x8b0
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
+CONFIG_SPL_TARGET="u-boot-with-spl.bin"
 CONFIG_SYS_MAXARGS=64
 CONFIG_SYS_PBSIZE=532
 CONFIG_CMD_GREPENV=y
diff --git a/configs/ls1088ardb_sdcard_qspi_defconfig b/configs/ls1088ardb_sdcard_qspi_defconfig
index ad0e583188ba..455fce3ed793 100644
--- a/configs/ls1088ardb_sdcard_qspi_defconfig
+++ b/configs/ls1088ardb_sdcard_qspi_defconfig
@@ -55,6 +55,7 @@ CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x8b0
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
+CONFIG_SPL_TARGET="u-boot-with-spl.bin"
 CONFIG_SYS_MAXARGS=64
 CONFIG_SYS_PBSIZE=532
 CONFIG_CMD_GREPENV=y
diff --git a/configs/ls2080aqds_nand_defconfig b/configs/ls2080aqds_nand_defconfig
index 209202dc75db..dab9a7fb85a9 100644
--- a/configs/ls2080aqds_nand_defconfig
+++ b/configs/ls2080aqds_nand_defconfig
@@ -45,6 +45,7 @@ CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
 CONFIG_SPL_NAND_SUPPORT=y
+CONFIG_SPL_TARGET="u-boot-with-spl.bin"
 CONFIG_SYS_MAXARGS=64
 CONFIG_SYS_PBSIZE=532
 CONFIG_CMD_GREPENV=y
diff --git a/configs/ls2080aqds_sdcard_defconfig b/configs/ls2080aqds_sdcard_defconfig
index 0f40fa60f189..3d6aa69d5f18 100644
--- a/configs/ls2080aqds_sdcard_defconfig
+++ b/configs/ls2080aqds_sdcard_defconfig
@@ -46,6 +46,7 @@ CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x8b0
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
+CONFIG_SPL_TARGET="u-boot-with-spl.bin"
 CONFIG_SYS_MAXARGS=64
 CONFIG_SYS_PBSIZE=532
 CONFIG_CMD_GREPENV=y
diff --git a/configs/ls2080ardb_nand_defconfig b/configs/ls2080ardb_nand_defconfig
index f36cf47cff21..9fcc5d6647d1 100644
--- a/configs/ls2080ardb_nand_defconfig
+++ b/configs/ls2080ardb_nand_defconfig
@@ -51,6 +51,7 @@ CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
 CONFIG_SPL_NAND_SUPPORT=y
+CONFIG_SPL_TARGET="u-boot-with-spl.bin"
 CONFIG_SYS_MAXARGS=64
 CONFIG_SYS_PBSIZE=532
 CONFIG_CMD_IMLS=y
diff --git a/configs/m53menlo_defconfig b/configs/m53menlo_defconfig
index 455f19617aca..2ccea8315c71 100644
--- a/configs/m53menlo_defconfig
+++ b/configs/m53menlo_defconfig
@@ -37,6 +37,7 @@ CONFIG_SPL_BOARD_INIT=y
 # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
 CONFIG_SPL_STACK=0x70004000
 CONFIG_SPL_NAND_SUPPORT=y
+CONFIG_SPL_TARGET="u-boot-with-nand-spl.imx"
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_MAXARGS=32
 CONFIG_SYS_CBSIZE=1024
diff --git a/configs/socfpga_agilex_atf_defconfig b/configs/socfpga_agilex_atf_defconfig
index ebe90ce2a5b5..e20789a6b463 100644
--- a/configs/socfpga_agilex_atf_defconfig
+++ b/configs/socfpga_agilex_atf_defconfig
@@ -43,6 +43,7 @@ CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x02000000
 CONFIG_SPL_ATF=y
 CONFIG_SPL_ATF_NO_PLATFORM_PARAM=y
+CONFIG_SPL_TARGET="spl/u-boot-spl-dtb.hex"
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_PROMPT="SOCFPGA_AGILEX # "
 CONFIG_SYS_MAXARGS=64
diff --git a/configs/socfpga_agilex_defconfig b/configs/socfpga_agilex_defconfig
index ab8535946315..7ae2b164a02d 100644
--- a/configs/socfpga_agilex_defconfig
+++ b/configs/socfpga_agilex_defconfig
@@ -37,6 +37,7 @@ CONFIG_SYS_SPL_MALLOC_SIZE=0x500000
 CONFIG_SPL_CACHE=y
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x3c00000
+CONFIG_SPL_TARGET="spl/u-boot-spl-dtb.hex"
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_PROMPT="SOCFPGA_AGILEX # "
 CONFIG_SYS_MAXARGS=64
diff --git a/configs/socfpga_agilex_vab_defconfig b/configs/socfpga_agilex_vab_defconfig
index fa4beddb2dc5..539548bfcbb9 100644
--- a/configs/socfpga_agilex_vab_defconfig
+++ b/configs/socfpga_agilex_vab_defconfig
@@ -44,6 +44,7 @@ CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x02000000
 CONFIG_SPL_ATF=y
 CONFIG_SPL_ATF_NO_PLATFORM_PARAM=y
+CONFIG_SPL_TARGET="spl/u-boot-spl-dtb.hex"
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_PROMPT="SOCFPGA_AGILEX # "
 CONFIG_SYS_MAXARGS=64
diff --git a/configs/socfpga_n5x_atf_defconfig b/configs/socfpga_n5x_atf_defconfig
index dd0ad36b4b6a..77d868a74ae5 100644
--- a/configs/socfpga_n5x_atf_defconfig
+++ b/configs/socfpga_n5x_atf_defconfig
@@ -42,6 +42,7 @@ CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x02000000
 CONFIG_SPL_ATF=y
 CONFIG_SPL_ATF_NO_PLATFORM_PARAM=y
+CONFIG_SPL_TARGET="spl/u-boot-spl-dtb.hex"
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_PROMPT="SOCFPGA_N5X # "
 CONFIG_SYS_MAXARGS=64
diff --git a/configs/socfpga_n5x_defconfig b/configs/socfpga_n5x_defconfig
index f0d41d1e8f5a..92d6045c6a7f 100644
--- a/configs/socfpga_n5x_defconfig
+++ b/configs/socfpga_n5x_defconfig
@@ -34,6 +34,7 @@ CONFIG_SYS_SPL_MALLOC_SIZE=0x500000
 CONFIG_SPL_CACHE=y
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x3c00000
+CONFIG_SPL_TARGET="spl/u-boot-spl-dtb.hex"
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_PROMPT="SOCFPGA_N5X # "
 CONFIG_SYS_MAXARGS=64
diff --git a/configs/socfpga_n5x_vab_defconfig b/configs/socfpga_n5x_vab_defconfig
index f7a827f770cd..d3a9042ef222 100644
--- a/configs/socfpga_n5x_vab_defconfig
+++ b/configs/socfpga_n5x_vab_defconfig
@@ -43,6 +43,7 @@ CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x02000000
 CONFIG_SPL_ATF=y
 CONFIG_SPL_ATF_NO_PLATFORM_PARAM=y
+CONFIG_SPL_TARGET="spl/u-boot-spl-dtb.hex"
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_PROMPT="SOCFPGA_N5X # "
 CONFIG_SYS_MAXARGS=64
diff --git a/configs/socfpga_stratix10_atf_defconfig b/configs/socfpga_stratix10_atf_defconfig
index 39ec1b2b1144..e4d8a2e049a5 100644
--- a/configs/socfpga_stratix10_atf_defconfig
+++ b/configs/socfpga_stratix10_atf_defconfig
@@ -42,6 +42,7 @@ CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x02000000
 CONFIG_SPL_ATF=y
 CONFIG_SPL_ATF_NO_PLATFORM_PARAM=y
+CONFIG_SPL_TARGET="spl/u-boot-spl-dtb.hex"
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_PROMPT="SOCFPGA_STRATIX10 # "
 CONFIG_SYS_MAXARGS=64
diff --git a/configs/socfpga_stratix10_defconfig b/configs/socfpga_stratix10_defconfig
index fac82b88c3f7..6aff07d77841 100644
--- a/configs/socfpga_stratix10_defconfig
+++ b/configs/socfpga_stratix10_defconfig
@@ -38,6 +38,7 @@ CONFIG_CUSTOM_SYS_SPL_MALLOC_ADDR=0x3fa00000
 CONFIG_SYS_SPL_MALLOC_SIZE=0x500000
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x3C00000
+CONFIG_SPL_TARGET="spl/u-boot-spl-dtb.hex"
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_PROMPT="SOCFPGA_STRATIX10 # "
 CONFIG_SYS_MAXARGS=64
diff --git a/configs/stm32mp15_dhcom_basic_defconfig b/configs/stm32mp15_dhcom_basic_defconfig
index 38f16437aa34..72d2f6e9a7c6 100644
--- a/configs/stm32mp15_dhcom_basic_defconfig
+++ b/configs/stm32mp15_dhcom_basic_defconfig
@@ -49,6 +49,7 @@ CONFIG_SPL_SPI_FLASH_MTD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x80000
 CONFIG_SPL_USB_GADGET=y
 CONFIG_SPL_DFU=y
+CONFIG_SPL_TARGET="u-boot.itb"
 CONFIG_SYS_PROMPT="STM32MP> "
 CONFIG_SYS_PBSIZE=1050
 # CONFIG_CMD_ELF is not set
diff --git a/configs/stm32mp15_dhcor_basic_defconfig b/configs/stm32mp15_dhcor_basic_defconfig
index 869afdf6c807..b16ad4fca2a5 100644
--- a/configs/stm32mp15_dhcor_basic_defconfig
+++ b/configs/stm32mp15_dhcor_basic_defconfig
@@ -47,6 +47,7 @@ CONFIG_SPL_SPI_FLASH_MTD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x80000
 CONFIG_SPL_USB_GADGET=y
 CONFIG_SPL_DFU=y
+CONFIG_SPL_TARGET="u-boot.itb"
 CONFIG_SYS_PROMPT="STM32MP> "
 CONFIG_SYS_PBSIZE=1050
 # CONFIG_CMD_ELF is not set
diff --git a/configs/uniphier_ld4_sld8_defconfig b/configs/uniphier_ld4_sld8_defconfig
index ceb50835f53c..72306ab25eb8 100644
--- a/configs/uniphier_ld4_sld8_defconfig
+++ b/configs/uniphier_ld4_sld8_defconfig
@@ -25,6 +25,7 @@ CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_STACK=0x100000
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_SPL_NOR_SUPPORT=y
+CONFIG_SPL_TARGET="u-boot-with-spl.bin"
 CONFIG_CMD_CONFIG=y
 # CONFIG_CMD_XIMG is not set
 CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS=10
diff --git a/configs/uniphier_v7_defconfig b/configs/uniphier_v7_defconfig
index a2ea3a98d09e..a448d1cb4be3 100644
--- a/configs/uniphier_v7_defconfig
+++ b/configs/uniphier_v7_defconfig
@@ -25,6 +25,7 @@ CONFIG_SPL_BSS_MAX_SIZE=0x2000
 CONFIG_SPL_STACK=0x100000
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_SPL_NOR_SUPPORT=y
+CONFIG_SPL_TARGET="u-boot-with-spl.bin"
 CONFIG_CMD_CONFIG=y
 # CONFIG_CMD_XIMG is not set
 CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS=10
diff --git a/include/configs/P1010RDB.h b/include/configs/P1010RDB.h
index 19ca05342d88..ce63e640d5c6 100644
--- a/include/configs/P1010RDB.h
+++ b/include/configs/P1010RDB.h
@@ -16,7 +16,6 @@
 #include <asm/config_mpc85xx.h>
 
 #ifdef CONFIG_SDCARD
-#define CONFIG_SPL_TARGET		"u-boot-with-spl.bin"
 #define CONFIG_SYS_MMC_U_BOOT_SIZE	(512 << 10)
 #define CONFIG_SYS_MMC_U_BOOT_DST	(0x11000000)
 #define CONFIG_SYS_MMC_U_BOOT_START	(0x11000000)
@@ -29,7 +28,6 @@
 #define CONFIG_RAMBOOT_SPIFLASH
 #define CONFIG_RESET_VECTOR_ADDRESS	0x110bfffc
 #else
-#define CONFIG_SPL_TARGET		"u-boot-with-spl.bin"
 #define CONFIG_SYS_SPI_FLASH_U_BOOT_SIZE	(512 << 10)
 #define CONFIG_SYS_SPI_FLASH_U_BOOT_DST		(0x11000000)
 #define CONFIG_SYS_SPI_FLASH_U_BOOT_START	(0x11000000)
@@ -40,8 +38,6 @@
 
 #ifdef CONFIG_MTD_RAW_NAND
 #ifdef CONFIG_NXP_ESBC
-#define CONFIG_SPL_TARGET		"u-boot-with-spl.bin"
-
 #define CONFIG_SYS_NAND_U_BOOT_SIZE	((768 << 10) - 0x2000)
 #define CONFIG_SYS_NAND_U_BOOT_DST	(0x00200000 - CONFIG_SPL_MAX_SIZE)
 #define CONFIG_SYS_NAND_U_BOOT_START	0x00200000
@@ -60,7 +56,6 @@
 #define CONFIG_SYS_MPC85XX_NO_RESETVEC
 #endif
 #endif
-#define CONFIG_SPL_TARGET	"u-boot-with-spl.bin"
 #endif
 #endif
 
diff --git a/include/configs/dh_imx6.h b/include/configs/dh_imx6.h
index d177b457aa4b..b495826301e7 100644
--- a/include/configs/dh_imx6.h
+++ b/include/configs/dh_imx6.h
@@ -23,7 +23,6 @@
 
 /* SPL */
 #include "imx6_spl.h"			/* common IMX6 SPL configuration */
-#define CONFIG_SPL_TARGET		"u-boot-with-spl.imx"
 
 /* Miscellaneous configurable options */
 
diff --git a/include/configs/ge_b1x5v2.h b/include/configs/ge_b1x5v2.h
index 5a5a5d687a8a..252ab5e7473d 100644
--- a/include/configs/ge_b1x5v2.h
+++ b/include/configs/ge_b1x5v2.h
@@ -13,7 +13,6 @@
 #include "mx6_common.h"
 
 #include "imx6_spl.h"
-#define CONFIG_SPL_TARGET		"u-boot-with-spl.imx"
 
 /* PWM */
 #define CONFIG_IMX6_PWM_PER_CLK		66000000
diff --git a/include/configs/ls1046a_common.h b/include/configs/ls1046a_common.h
index c2563b11d052..8e9103562eb7 100644
--- a/include/configs/ls1046a_common.h
+++ b/include/configs/ls1046a_common.h
@@ -61,7 +61,6 @@
 #endif
 
 #if defined(CONFIG_QSPI_BOOT) && defined(CONFIG_SPL)
-#define CONFIG_SPL_TARGET		"spl/u-boot-spl.pbl"
 #define CONFIG_SYS_MONITOR_LEN		0x100000
 #endif
 
diff --git a/include/configs/ls1088a_common.h b/include/configs/ls1088a_common.h
index 3ef163d5eae7..9a29bb6ca1ea 100644
--- a/include/configs/ls1088a_common.h
+++ b/include/configs/ls1088a_common.h
@@ -144,8 +144,6 @@ unsigned long long get_qixis_addr(void);
 #endif
 
 #ifdef CONFIG_SPL
-#define CONFIG_SPL_TARGET              "u-boot-with-spl.bin"
-
 #ifdef CONFIG_NXP_ESBC
 #define CONFIG_U_BOOT_HDR_SIZE		(16 << 10)
 /*
diff --git a/include/configs/ls2080a_common.h b/include/configs/ls2080a_common.h
index 3551a0ddb045..f9eb829cda26 100644
--- a/include/configs/ls2080a_common.h
+++ b/include/configs/ls2080a_common.h
@@ -137,8 +137,6 @@ unsigned long long get_qixis_addr(void);
 	"mcinitcmd=fsl_mc start mc 0x580a00000"	\
 	" 0x580e00000 \0"
 
-#define CONFIG_SPL_TARGET		"u-boot-with-spl.bin"
-
 #ifdef CONFIG_NAND_BOOT
 #define CONFIG_SYS_NAND_U_BOOT_DST	0x80400000
 #define CONFIG_SYS_NAND_U_BOOT_START	CONFIG_SYS_NAND_U_BOOT_DST
diff --git a/include/configs/m53menlo.h b/include/configs/m53menlo.h
index 433952c9d72c..ed44f355da81 100644
--- a/include/configs/m53menlo.h
+++ b/include/configs/m53menlo.h
@@ -108,7 +108,6 @@
 /*
  * NAND SPL
  */
-#define CONFIG_SPL_TARGET		"u-boot-with-nand-spl.imx"
 
 #define CONFIG_SYS_NAND_SIZE		(256 * 1024 * 1024)
 
diff --git a/include/configs/p1_p2_rdb_pc.h b/include/configs/p1_p2_rdb_pc.h
index 24a88cebc028..f74ad628fee7 100644
--- a/include/configs/p1_p2_rdb_pc.h
+++ b/include/configs/p1_p2_rdb_pc.h
@@ -77,14 +77,12 @@
 #endif
 
 #ifdef CONFIG_SDCARD
-#define CONFIG_SPL_TARGET		"u-boot-with-spl.bin"
 #define CONFIG_SYS_MMC_U_BOOT_SIZE	(768 << 10)
 #define CONFIG_SYS_MMC_U_BOOT_DST	(0x11000000)
 #define CONFIG_SYS_MMC_U_BOOT_START	(0x11000000)
 #define CONFIG_SYS_MMC_U_BOOT_OFFS	(128 << 10)
 #define CONFIG_SYS_MPC85XX_NO_RESETVEC
 #elif defined(CONFIG_SPIFLASH)
-#define CONFIG_SPL_TARGET		"u-boot-with-spl.bin"
 #define CONFIG_SYS_SPI_FLASH_U_BOOT_SIZE	(768 << 10)
 #define CONFIG_SYS_SPI_FLASH_U_BOOT_DST		(0x11000000)
 #define CONFIG_SYS_SPI_FLASH_U_BOOT_START	(0x11000000)
@@ -97,7 +95,6 @@
 #define CONFIG_SYS_NAND_U_BOOT_DST	(0x11000000)
 #define CONFIG_SYS_NAND_U_BOOT_START	(0x11000000)
 #elif defined(CONFIG_SPL_BUILD)
-#define CONFIG_SPL_TARGET		"u-boot-with-spl.bin"
 #define CONFIG_SYS_NAND_U_BOOT_SIZE	(128 << 10)
 #define CONFIG_SYS_NAND_U_BOOT_DST	0xf8f80000
 #define CONFIG_SYS_NAND_U_BOOT_START	0xf8f80000
@@ -106,8 +103,6 @@
 #define CONFIG_SYS_MPC85XX_NO_RESETVEC
 #endif
 #endif /* not CONFIG_TPL_BUILD */
-
-#define CONFIG_SPL_TARGET		"u-boot-with-spl.bin"
 #endif
 
 #ifndef CONFIG_RESET_VECTOR_ADDRESS
diff --git a/include/configs/rcar-gen2-common.h b/include/configs/rcar-gen2-common.h
index b4d2a5252f57..2e5421169046 100644
--- a/include/configs/rcar-gen2-common.h
+++ b/include/configs/rcar-gen2-common.h
@@ -10,10 +10,6 @@
 
 #include <asm/arch/rmobile.h>
 
-#ifdef CONFIG_SPL
-#define CONFIG_SPL_TARGET	"spl/u-boot-spl.srec"
-#endif
-
 #ifndef CONFIG_PINCTRL_PFC
 #define CONFIG_SH_GPIO_PFC
 #endif
diff --git a/include/configs/rcar-gen3-common.h b/include/configs/rcar-gen3-common.h
index ee9fc2862e53..e80e45dcbd7e 100644
--- a/include/configs/rcar-gen3-common.h
+++ b/include/configs/rcar-gen3-common.h
@@ -11,10 +11,6 @@
 
 #include <asm/arch/rmobile.h>
 
-#ifdef CONFIG_SPL
-#define CONFIG_SPL_TARGET	"spl/u-boot-spl.scif"
-#endif
-
 /* boot option */
 
 /* Generic Interrupt Controller Definitions */
diff --git a/include/configs/socfpga_soc64_common.h b/include/configs/socfpga_soc64_common.h
index cbc18061f428..b71f8bab156f 100644
--- a/include/configs/socfpga_soc64_common.h
+++ b/include/configs/socfpga_soc64_common.h
@@ -143,6 +143,5 @@ unsigned int cm_get_l4_sys_free_clk_hz(void);
  * 0x8000_0000 ...... End of SDRAM_1 (assume 2GB)
  *
  */
-#define CONFIG_SPL_TARGET		"spl/u-boot-spl-dtb.hex"
 
 #endif	/* __CONFIG_SOCFPGA_SOC64_COMMON_H__ */
diff --git a/include/configs/stm32mp15_dh_dhsom.h b/include/configs/stm32mp15_dh_dhsom.h
index bb95480eeb26..910d7ef107b5 100644
--- a/include/configs/stm32mp15_dh_dhsom.h
+++ b/include/configs/stm32mp15_dh_dhsom.h
@@ -33,6 +33,4 @@
 
 #include <configs/stm32mp15_common.h>
 
-#define CONFIG_SPL_TARGET		"u-boot.itb"
-
 #endif
diff --git a/include/configs/ti_armv7_keystone2.h b/include/configs/ti_armv7_keystone2.h
index 060969647b24..7fd79953dc12 100644
--- a/include/configs/ti_armv7_keystone2.h
+++ b/include/configs/ti_armv7_keystone2.h
@@ -12,7 +12,6 @@
 /* U-Boot Build Configuration */
 
 /* SoC Configuration */
-#define CONFIG_SPL_TARGET		"u-boot-spi.gph"
 
 /* Memory Configuration */
 #define CONFIG_SYS_LPAE_SDRAM_BASE	0x800000000
diff --git a/include/configs/uniphier.h b/include/configs/uniphier.h
index 6493569888d2..2bb9e59b9462 100644
--- a/include/configs/uniphier.h
+++ b/include/configs/uniphier.h
@@ -178,6 +178,4 @@
 /* subtract sizeof(struct image_header) */
 #define CONFIG_SYS_UBOOT_BASE			(0x130000 - 0x40)
 
-#define CONFIG_SPL_TARGET			"u-boot-with-spl.bin"
-
 #endif /* __CONFIG_UNIPHIER_H__ */
-- 
2.25.1


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH 14/20] Convert CONFIG_SYS_SPL_ARGS_ADDR to Kconfig
  2022-05-29 16:55 [PATCH 01/20] Convert CONFIG_SPL_STACK to Kconfig Tom Rini
                   ` (11 preceding siblings ...)
  2022-05-29 16:55 ` [PATCH 13/20] Convert CONFIG_SPL_TARGET to Kconfig Tom Rini
@ 2022-05-29 16:55 ` Tom Rini
  2022-05-29 16:55 ` [PATCH 15/20] ax25-ae350: Move CONFIG_SYS_FDT_BASE " Tom Rini
                   ` (7 subsequent siblings)
  20 siblings, 0 replies; 27+ messages in thread
From: Tom Rini @ 2022-05-29 16:55 UTC (permalink / raw)
  To: u-boot

This converts the following to Kconfig:
   CONFIG_SYS_SPL_ARGS_ADDR

In doing so, we also consistently use this variable for SPL_OS_BOOT and
not CONFIG_SYS_FDT_BASE in some cases.

Signed-off-by: Tom Rini <trini@konsulko.com>
---
 common/spl/Kconfig                                        | 8 ++++++++
 common/spl/spl_nor.c                                      | 4 ++--
 common/spl/spl_xip.c                                      | 2 +-
 configs/am3517_evm_defconfig                              | 1 +
 ...avnet_ultrazedev_cc_v1_0_ultrazedev_som_v1_0_defconfig | 1 +
 configs/devkit8000_defconfig                              | 1 +
 configs/display5_defconfig                                | 1 +
 configs/display5_factory_defconfig                        | 1 +
 configs/gwventana_emmc_defconfig                          | 1 +
 configs/gwventana_gw5904_defconfig                        | 1 +
 configs/gwventana_nand_defconfig                          | 1 +
 configs/igep00x0_defconfig                                | 1 +
 configs/imx28_xea_defconfig                               | 1 +
 configs/imx28_xea_sb_defconfig                            | 1 -
 configs/imx6dl_mamoj_defconfig                            | 1 +
 configs/imx6q_logic_defconfig                             | 1 +
 configs/imx6qdl_icore_mipi_defconfig                      | 1 +
 configs/imx6qdl_icore_mmc_defconfig                       | 1 +
 configs/imx6qdl_icore_rqs_defconfig                       | 1 +
 configs/ls1046ardb_qspi_spl_defconfig                     | 1 +
 configs/mccmon6_nor_defconfig                             | 1 +
 configs/microblaze-generic_defconfig                      | 1 +
 configs/omap35_logic_defconfig                            | 1 +
 configs/omap35_logic_somlv_defconfig                      | 1 +
 configs/omap3_logic_defconfig                             | 1 +
 configs/omap3_logic_somlv_defconfig                       | 1 +
 configs/riotboard_defconfig                               | 1 +
 configs/stm32746g-eval_spl_defconfig                      | 1 +
 configs/stm32f746-disco_spl_defconfig                     | 1 +
 configs/stm32f769-disco_spl_defconfig                     | 1 +
 configs/syzygy_hub_defconfig                              | 1 +
 configs/vyasa-rk3288_defconfig                            | 1 +
 configs/xilinx_zynq_virt_defconfig                        | 1 +
 configs/xilinx_zynqmp_virt_defconfig                      | 1 +
 include/configs/am43xx_evm.h                              | 2 --
 include/configs/brppt1.h                                  | 2 --
 include/configs/cm_t43.h                                  | 1 -
 include/configs/devkit8000.h                              | 3 ---
 include/configs/display5.h                                | 1 -
 include/configs/embestmx6boards.h                         | 1 -
 include/configs/gw_ventana.h                              | 1 -
 include/configs/imx6-engicam.h                            | 2 --
 include/configs/imx6_logic.h                              | 1 -
 include/configs/imx6dl-mamoj.h                            | 1 -
 include/configs/ls1043ardb.h                              | 1 -
 include/configs/ls1046ardb.h                              | 1 -
 include/configs/mccmon6.h                                 | 1 -
 include/configs/microblaze-generic.h                      | 7 -------
 include/configs/mt7629.h                                  | 1 -
 include/configs/mx6sabreauto.h                            | 2 --
 include/configs/mx6sabresd.h                              | 1 -
 include/configs/pico-imx6.h                               | 1 -
 include/configs/pico-imx6ul.h                             | 1 -
 include/configs/pico-imx7d.h                              | 1 -
 include/configs/sama5d3_xplained.h                        | 1 -
 include/configs/stm32f746-disco.h                         | 4 ----
 include/configs/ti_am335x_common.h                        | 2 --
 include/configs/ti_omap3_common.h                         | 2 --
 include/configs/ti_omap4_common.h                         | 2 --
 include/configs/ti_omap5_common.h                         | 3 ---
 include/configs/trats.h                                   | 1 -
 include/configs/vyasa-rk3288.h                            | 1 -
 include/configs/xea.h                                     | 2 --
 include/configs/xilinx_zynqmp.h                           | 1 -
 include/configs/zynq-common.h                             | 1 -
 65 files changed, 41 insertions(+), 56 deletions(-)

diff --git a/common/spl/Kconfig b/common/spl/Kconfig
index dfbda1befb58..71b2600df586 100644
--- a/common/spl/Kconfig
+++ b/common/spl/Kconfig
@@ -1188,6 +1188,14 @@ config SPL_OS_BOOT
 	  Enable booting directly to an OS from SPL.
 	  for more info read doc/README.falcon
 
+config SYS_SPL_ARGS_ADDR
+	hex "Address in memory to load 'args' file for Falcon Mode to"
+	depends on SPL_OS_BOOT
+	default 0x88000000 if ARCH_OMAP2PLUS
+	help
+	  Address in memory where the 'args' file, typically a device tree
+	  will be loaded in to memory.
+
 if SPL_OS_BOOT
 config SYS_OS_BASE
 	hex "addr, where OS is found"
diff --git a/common/spl/spl_nor.c b/common/spl/spl_nor.c
index 067a2d42bbf8..7986e930d28b 100644
--- a/common/spl/spl_nor.c
+++ b/common/spl/spl_nor.c
@@ -74,8 +74,8 @@ static int spl_nor_load_image(struct spl_image_info *spl_image,
 			       (void *)(CONFIG_SYS_OS_BASE +
 					sizeof(struct image_header)),
 			       spl_image->size);
-#ifdef CONFIG_SYS_FDT_BASE
-			spl_image->arg = (void *)CONFIG_SYS_FDT_BASE;
+#ifdef CONFIG_SYS_SPL_ARGS_ADDR
+			spl_image->arg = (void *)CONFIG_SYS_SPL_ARGS_ADDR;
 #endif
 
 			return 0;
diff --git a/common/spl/spl_xip.c b/common/spl/spl_xip.c
index 33863fe7d454..e9a40b0ec797 100644
--- a/common/spl/spl_xip.c
+++ b/common/spl/spl_xip.c
@@ -14,7 +14,7 @@ static int spl_xip(struct spl_image_info *spl_image,
 {
 #if CONFIG_IS_ENABLED(OS_BOOT)
 	if (!spl_start_uboot()) {
-		spl_image->arg = (void *)CONFIG_SYS_FDT_BASE;
+		spl_image->arg = (void *)CONFIG_SYS_SPL_ARGS_ADDR;
 		spl_image->name = "Linux";
 		spl_image->os = IH_OS_LINUX;
 		spl_image->load_addr = CONFIG_SYS_LOAD_ADDR;
diff --git a/configs/am3517_evm_defconfig b/configs/am3517_evm_defconfig
index 03fc4fba8f56..05ee3570fc93 100644
--- a/configs/am3517_evm_defconfig
+++ b/configs/am3517_evm_defconfig
@@ -31,6 +31,7 @@ CONFIG_SPL_NAND_ECC=y
 CONFIG_SPL_NAND_SIMPLE=y
 CONFIG_SPL_NAND_BASE=y
 CONFIG_SPL_OS_BOOT=y
+CONFIG_SYS_SPL_ARGS_ADDR=0x84000000
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1700
 # CONFIG_SPL_POWER is not set
diff --git a/configs/avnet_ultrazedev_cc_v1_0_ultrazedev_som_v1_0_defconfig b/configs/avnet_ultrazedev_cc_v1_0_ultrazedev_som_v1_0_defconfig
index 7f4c804c957b..450b2830e56a 100644
--- a/configs/avnet_ultrazedev_cc_v1_0_ultrazedev_som_v1_0_defconfig
+++ b/configs/avnet_ultrazedev_cc_v1_0_ultrazedev_som_v1_0_defconfig
@@ -41,6 +41,7 @@ CONFIG_SYS_SPL_MALLOC_SIZE=0x1000000
 CONFIG_SPL_FS_LOAD_KERNEL_NAME="atf-uboot.ub"
 CONFIG_SPL_FS_LOAD_ARGS_NAME="u-boot.bin"
 CONFIG_SPL_OS_BOOT=y
+CONFIG_SYS_SPL_ARGS_ADDR=0x8000000
 CONFIG_SYS_MAXARGS=64
 CONFIG_SYS_PBSIZE=2073
 CONFIG_CMD_MEMTEST=y
diff --git a/configs/devkit8000_defconfig b/configs/devkit8000_defconfig
index 08c053b4f155..dc07c146bdb2 100644
--- a/configs/devkit8000_defconfig
+++ b/configs/devkit8000_defconfig
@@ -22,6 +22,7 @@ CONFIG_SPL_NAND_ECC=y
 CONFIG_SPL_NAND_SIMPLE=y
 CONFIG_SPL_NAND_BASE=y
 CONFIG_SPL_OS_BOOT=y
+CONFIG_SYS_SPL_ARGS_ADDR=0x80000100
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x500
 CONFIG_SYS_MAXARGS=64
diff --git a/configs/display5_defconfig b/configs/display5_defconfig
index 6e74f68f400b..646372c10a3a 100644
--- a/configs/display5_defconfig
+++ b/configs/display5_defconfig
@@ -44,6 +44,7 @@ CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_SAVEENV=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_OS_BOOT=y
+CONFIG_SYS_SPL_ARGS_ADDR=0x18000000
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x100
 CONFIG_SPL_SPI_LOAD=y
diff --git a/configs/display5_factory_defconfig b/configs/display5_factory_defconfig
index eab9c7c1e867..245122843bce 100644
--- a/configs/display5_factory_defconfig
+++ b/configs/display5_factory_defconfig
@@ -39,6 +39,7 @@ CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_DMA=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_OS_BOOT=y
+CONFIG_SYS_SPL_ARGS_ADDR=0x18000000
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x100
 CONFIG_SPL_SPI_LOAD=y
diff --git a/configs/gwventana_emmc_defconfig b/configs/gwventana_emmc_defconfig
index ef2ee77c3dc5..a96ed26292a1 100644
--- a/configs/gwventana_emmc_defconfig
+++ b/configs/gwventana_emmc_defconfig
@@ -46,6 +46,7 @@ CONFIG_SPL_FIT_IMAGE_TINY=y
 CONFIG_SPL_DMA=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_OS_BOOT=y
+CONFIG_SYS_SPL_ARGS_ADDR=0x18000000
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1000
 CONFIG_SPL_POWER=y
diff --git a/configs/gwventana_gw5904_defconfig b/configs/gwventana_gw5904_defconfig
index a736b81ad9a6..85bbed23ebc8 100644
--- a/configs/gwventana_gw5904_defconfig
+++ b/configs/gwventana_gw5904_defconfig
@@ -46,6 +46,7 @@ CONFIG_SPL_FIT_IMAGE_TINY=y
 CONFIG_SPL_DMA=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_OS_BOOT=y
+CONFIG_SYS_SPL_ARGS_ADDR=0x18000000
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1000
 CONFIG_SPL_POWER=y
diff --git a/configs/gwventana_nand_defconfig b/configs/gwventana_nand_defconfig
index 5372476f0450..200ecf4a0f93 100644
--- a/configs/gwventana_nand_defconfig
+++ b/configs/gwventana_nand_defconfig
@@ -47,6 +47,7 @@ CONFIG_SPL_DMA=y
 CONFIG_SPL_I2C=y
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_SPL_OS_BOOT=y
+CONFIG_SYS_SPL_ARGS_ADDR=0x18000000
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1000
 CONFIG_SPL_POWER=y
diff --git a/configs/igep00x0_defconfig b/configs/igep00x0_defconfig
index b1162e7cdb8d..96f2f9df8160 100644
--- a/configs/igep00x0_defconfig
+++ b/configs/igep00x0_defconfig
@@ -41,6 +41,7 @@ CONFIG_SPL_UBI_LOAD_KERNEL_ID=3
 CONFIG_SPL_UBI_LOAD_ARGS_ID=4
 CONFIG_SPL_ONENAND_SUPPORT=y
 CONFIG_SPL_OS_BOOT=y
+CONFIG_SYS_SPL_ARGS_ADDR=0x84000000
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1700
 CONFIG_SYS_MAXARGS=64
diff --git a/configs/imx28_xea_defconfig b/configs/imx28_xea_defconfig
index f460a01e8cef..37233bafad95 100644
--- a/configs/imx28_xea_defconfig
+++ b/configs/imx28_xea_defconfig
@@ -45,6 +45,7 @@ CONFIG_SPL_DMA=y
 CONFIG_SPL_MMC_TINY=y
 CONFIG_SPL_DM_SPI_FLASH=y
 CONFIG_SPL_OS_BOOT=y
+CONFIG_SYS_SPL_ARGS_ADDR=0x44000000
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x800
 CONFIG_SPL_SPI_LOAD=y
diff --git a/configs/imx28_xea_sb_defconfig b/configs/imx28_xea_sb_defconfig
index bad232ceec55..ad478c469bc1 100644
--- a/configs/imx28_xea_sb_defconfig
+++ b/configs/imx28_xea_sb_defconfig
@@ -33,7 +33,6 @@ CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0
 CONFIG_SUPPORT_EMMC_BOOT_OVERRIDE_PART_CONFIG=y
 CONFIG_SPL_DMA=y
 CONFIG_SPL_DM_SPI_FLASH=y
-CONFIG_SPL_OS_BOOT=y
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_MAXARGS=32
 CONFIG_CMD_SPL=y
diff --git a/configs/imx6dl_mamoj_defconfig b/configs/imx6dl_mamoj_defconfig
index 7e6e3bb4a3f3..a52ce458f2b3 100644
--- a/configs/imx6dl_mamoj_defconfig
+++ b/configs/imx6dl_mamoj_defconfig
@@ -19,6 +19,7 @@ CONFIG_DISTRO_DEFAULTS=y
 CONFIG_BOOTDELAY=3
 CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_OS_BOOT=y
+CONFIG_SYS_SPL_ARGS_ADDR=0x13000000
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1000
 CONFIG_SYS_MAXARGS=32
diff --git a/configs/imx6q_logic_defconfig b/configs/imx6q_logic_defconfig
index 4e665ba42bfd..cc7a6f0aa097 100644
--- a/configs/imx6q_logic_defconfig
+++ b/configs/imx6q_logic_defconfig
@@ -34,6 +34,7 @@ CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot-dtb.img"
 CONFIG_SPL_I2C=y
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_SPL_OS_BOOT=y
+CONFIG_SYS_SPL_ARGS_ADDR=0x18000000
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1000
 CONFIG_SPL_USB_HOST=y
diff --git a/configs/imx6qdl_icore_mipi_defconfig b/configs/imx6qdl_icore_mipi_defconfig
index 754537044a30..929d31722b72 100644
--- a/configs/imx6qdl_icore_mipi_defconfig
+++ b/configs/imx6qdl_icore_mipi_defconfig
@@ -35,6 +35,7 @@ CONFIG_BOOTCOMMAND="run $modeboot"
 CONFIG_SPL_RAW_IMAGE_SUPPORT=y
 CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_OS_BOOT=y
+CONFIG_SYS_SPL_ARGS_ADDR=0x18000000
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1000
 CONFIG_SPL_WATCHDOG=y
diff --git a/configs/imx6qdl_icore_mmc_defconfig b/configs/imx6qdl_icore_mmc_defconfig
index 4e9fadd699a5..3465e1915c2a 100644
--- a/configs/imx6qdl_icore_mmc_defconfig
+++ b/configs/imx6qdl_icore_mmc_defconfig
@@ -38,6 +38,7 @@ CONFIG_BOOTCOMMAND="run $modeboot"
 CONFIG_SPL_RAW_IMAGE_SUPPORT=y
 CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_OS_BOOT=y
+CONFIG_SYS_SPL_ARGS_ADDR=0x18000000
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1000
 CONFIG_SPL_WATCHDOG=y
diff --git a/configs/imx6qdl_icore_rqs_defconfig b/configs/imx6qdl_icore_rqs_defconfig
index d87a47700cde..b2ca3ee1b650 100644
--- a/configs/imx6qdl_icore_rqs_defconfig
+++ b/configs/imx6qdl_icore_rqs_defconfig
@@ -32,6 +32,7 @@ CONFIG_BOOTCOMMAND="run $modeboot"
 CONFIG_SPL_RAW_IMAGE_SUPPORT=y
 CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SPL_OS_BOOT=y
+CONFIG_SYS_SPL_ARGS_ADDR=0x18000000
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1000
 CONFIG_SPL_WATCHDOG=y
diff --git a/configs/ls1046ardb_qspi_spl_defconfig b/configs/ls1046ardb_qspi_spl_defconfig
index 2f6b546a2600..799d460f2bd4 100644
--- a/configs/ls1046ardb_qspi_spl_defconfig
+++ b/configs/ls1046ardb_qspi_spl_defconfig
@@ -56,6 +56,7 @@ CONFIG_SPL_I2C=y
 CONFIG_SPL_MPC8XXX_INIT_DDR=y
 CONFIG_SPL_NOR_SUPPORT=y
 CONFIG_SPL_OS_BOOT=y
+CONFIG_SYS_SPL_ARGS_ADDR=0x90000000
 CONFIG_SYS_OS_BASE=0x40980000
 CONFIG_SPL_WATCHDOG=y
 CONFIG_SPL_TARGET="spl/u-boot-spl.pbl"
diff --git a/configs/mccmon6_nor_defconfig b/configs/mccmon6_nor_defconfig
index 1214163af392..80b59cbb053b 100644
--- a/configs/mccmon6_nor_defconfig
+++ b/configs/mccmon6_nor_defconfig
@@ -29,6 +29,7 @@ CONFIG_SPL_FIT_IMAGE_TINY=y
 CONFIG_SPL_ENV_SUPPORT=y
 CONFIG_SPL_NOR_SUPPORT=y
 CONFIG_SPL_OS_BOOT=y
+CONFIG_SYS_SPL_ARGS_ADDR=0x18000000
 CONFIG_SYS_OS_BASE=0x8180000
 CONFIG_SYS_MAXARGS=32
 CONFIG_SYS_PBSIZE=532
diff --git a/configs/microblaze-generic_defconfig b/configs/microblaze-generic_defconfig
index 86bda86b72f2..8ece12630fb2 100644
--- a/configs/microblaze-generic_defconfig
+++ b/configs/microblaze-generic_defconfig
@@ -32,6 +32,7 @@ CONFIG_SPL_SYS_MALLOC_SIMPLE=y
 CONFIG_SPL_STACK=0x100000
 CONFIG_SPL_NOR_SUPPORT=y
 CONFIG_SPL_OS_BOOT=y
+CONFIG_SYS_SPL_ARGS_ADDR=0x2a000000
 CONFIG_SYS_OS_BASE=0x2c060000
 CONFIG_SYS_PROMPT="U-Boot-mONStR> "
 CONFIG_SYS_MAXARGS=15
diff --git a/configs/omap35_logic_defconfig b/configs/omap35_logic_defconfig
index e5fcba8caf17..6efc50fdf5e9 100644
--- a/configs/omap35_logic_defconfig
+++ b/configs/omap35_logic_defconfig
@@ -35,6 +35,7 @@ CONFIG_SPL_NAND_ECC=y
 CONFIG_SPL_NAND_SIMPLE=y
 CONFIG_SPL_NAND_BASE=y
 CONFIG_SPL_OS_BOOT=y
+CONFIG_SYS_SPL_ARGS_ADDR=0x84000000
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1700
 CONFIG_SYS_PROMPT="OMAP Logic # "
diff --git a/configs/omap35_logic_somlv_defconfig b/configs/omap35_logic_somlv_defconfig
index 45aee91b3722..3ea4d7a724ef 100644
--- a/configs/omap35_logic_somlv_defconfig
+++ b/configs/omap35_logic_somlv_defconfig
@@ -36,6 +36,7 @@ CONFIG_SPL_NAND_ECC=y
 CONFIG_SPL_NAND_SIMPLE=y
 CONFIG_SPL_NAND_BASE=y
 CONFIG_SPL_OS_BOOT=y
+CONFIG_SYS_SPL_ARGS_ADDR=0x84000000
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1700
 # CONFIG_SPL_POWER is not set
diff --git a/configs/omap3_logic_defconfig b/configs/omap3_logic_defconfig
index 9b2a8064449c..5c7d30d66ed0 100644
--- a/configs/omap3_logic_defconfig
+++ b/configs/omap3_logic_defconfig
@@ -34,6 +34,7 @@ CONFIG_SPL_NAND_ECC=y
 CONFIG_SPL_NAND_SIMPLE=y
 CONFIG_SPL_NAND_BASE=y
 CONFIG_SPL_OS_BOOT=y
+CONFIG_SYS_SPL_ARGS_ADDR=0x84000000
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1700
 CONFIG_SYS_PROMPT="OMAP Logic # "
diff --git a/configs/omap3_logic_somlv_defconfig b/configs/omap3_logic_somlv_defconfig
index ee36800d6471..9961e005a07a 100644
--- a/configs/omap3_logic_somlv_defconfig
+++ b/configs/omap3_logic_somlv_defconfig
@@ -36,6 +36,7 @@ CONFIG_SPL_NAND_ECC=y
 CONFIG_SPL_NAND_SIMPLE=y
 CONFIG_SPL_NAND_BASE=y
 CONFIG_SPL_OS_BOOT=y
+CONFIG_SYS_SPL_ARGS_ADDR=0x84000000
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1700
 # CONFIG_SPL_POWER is not set
diff --git a/configs/riotboard_defconfig b/configs/riotboard_defconfig
index 8fe264d75435..924254cbb978 100644
--- a/configs/riotboard_defconfig
+++ b/configs/riotboard_defconfig
@@ -33,6 +33,7 @@ CONFIG_SPL_FS_EXT4=y
 CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot-dtb.img"
 CONFIG_SPL_FS_LOAD_ARGS_NAME="imx6dl-riotboard.dtb"
 CONFIG_SPL_OS_BOOT=y
+CONFIG_SYS_SPL_ARGS_ADDR=0x13000000
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x0
 CONFIG_SYS_MAXARGS=32
diff --git a/configs/stm32746g-eval_spl_defconfig b/configs/stm32746g-eval_spl_defconfig
index 989bc7af3015..55e44f863c1c 100644
--- a/configs/stm32746g-eval_spl_defconfig
+++ b/configs/stm32746g-eval_spl_defconfig
@@ -34,6 +34,7 @@ CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
 CONFIG_SPL_MTD_SUPPORT=y
 CONFIG_SPL_XIP_SUPPORT=y
+CONFIG_SYS_SPL_ARGS_ADDR=0x81c0000
 CONFIG_SPL_DM_RESET=y
 CONFIG_SYS_PROMPT="U-Boot > "
 CONFIG_SYS_PBSIZE=1050
diff --git a/configs/stm32f746-disco_spl_defconfig b/configs/stm32f746-disco_spl_defconfig
index 3aaf7d351218..c174984b939d 100644
--- a/configs/stm32f746-disco_spl_defconfig
+++ b/configs/stm32f746-disco_spl_defconfig
@@ -34,6 +34,7 @@ CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
 CONFIG_SPL_MTD_SUPPORT=y
 CONFIG_SPL_XIP_SUPPORT=y
+CONFIG_SYS_SPL_ARGS_ADDR=0x81c0000
 CONFIG_SPL_DM_RESET=y
 CONFIG_SYS_PROMPT="U-Boot > "
 CONFIG_SYS_PBSIZE=1050
diff --git a/configs/stm32f769-disco_spl_defconfig b/configs/stm32f769-disco_spl_defconfig
index 55ac1174af6a..a5dc89c80273 100644
--- a/configs/stm32f769-disco_spl_defconfig
+++ b/configs/stm32f769-disco_spl_defconfig
@@ -33,6 +33,7 @@ CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
 CONFIG_SPL_MTD_SUPPORT=y
 CONFIG_SPL_XIP_SUPPORT=y
+CONFIG_SYS_SPL_ARGS_ADDR=0x81c0000
 CONFIG_SPL_DM_RESET=y
 CONFIG_SYS_PROMPT="U-Boot > "
 CONFIG_SYS_PBSIZE=1050
diff --git a/configs/syzygy_hub_defconfig b/configs/syzygy_hub_defconfig
index 0baf6dd886ac..d632cb86a258 100644
--- a/configs/syzygy_hub_defconfig
+++ b/configs/syzygy_hub_defconfig
@@ -36,6 +36,7 @@ CONFIG_SYS_SPL_MALLOC=y
 CONFIG_SYS_SPL_MALLOC_SIZE=0x2000000
 CONFIG_SPL_FS_LOAD_ARGS_NAME="system.dtb"
 CONFIG_SPL_OS_BOOT=y
+CONFIG_SYS_SPL_ARGS_ADDR=0x10000000
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x0
 CONFIG_SYS_MAXARGS=32
diff --git a/configs/vyasa-rk3288_defconfig b/configs/vyasa-rk3288_defconfig
index 27c704f8a225..9ae73816246a 100644
--- a/configs/vyasa-rk3288_defconfig
+++ b/configs/vyasa-rk3288_defconfig
@@ -29,6 +29,7 @@ CONFIG_SPL_STACK=0xff718000
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x2000
 CONFIG_SPL_OS_BOOT=y
+CONFIG_SYS_SPL_ARGS_ADDR=0xffe5000
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x8800
 CONFIG_CMD_SPL=y
diff --git a/configs/xilinx_zynq_virt_defconfig b/configs/xilinx_zynq_virt_defconfig
index a5cee103cb34..92ef35c64751 100644
--- a/configs/xilinx_zynq_virt_defconfig
+++ b/configs/xilinx_zynq_virt_defconfig
@@ -41,6 +41,7 @@ CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot.img"
 CONFIG_SPL_FS_LOAD_ARGS_NAME="system.dtb"
 CONFIG_SPL_FPGA=y
 CONFIG_SPL_OS_BOOT=y
+CONFIG_SYS_SPL_ARGS_ADDR=0x10000000
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x100000
 CONFIG_SYS_MAXARGS=32
diff --git a/configs/xilinx_zynqmp_virt_defconfig b/configs/xilinx_zynqmp_virt_defconfig
index 0ac75f6572f4..7f0ed8bc2250 100644
--- a/configs/xilinx_zynqmp_virt_defconfig
+++ b/configs/xilinx_zynqmp_virt_defconfig
@@ -46,6 +46,7 @@ CONFIG_SPL_FS_LOAD_KERNEL_NAME="atf-uboot.ub"
 CONFIG_SPL_FS_LOAD_ARGS_NAME="u-boot.bin"
 CONFIG_SPL_FPGA=y
 CONFIG_SPL_OS_BOOT=y
+CONFIG_SYS_SPL_ARGS_ADDR=0x8000000
 CONFIG_SPL_RAM_SUPPORT=y
 CONFIG_SPL_RAM_DEVICE=y
 CONFIG_SPL_SPI_LOAD=y
diff --git a/include/configs/am43xx_evm.h b/include/configs/am43xx_evm.h
index 5057441f7506..bce035531ce6 100644
--- a/include/configs/am43xx_evm.h
+++ b/include/configs/am43xx_evm.h
@@ -27,8 +27,6 @@
 #define CONFIG_POWER_TPS62362
 
 /* SPL defines. */
-#define CONFIG_SYS_SPL_ARGS_ADDR	(CONFIG_SYS_SDRAM_BASE + \
-					 (128 << 20))
 
 /* Enabling L2 Cache */
 #define CONFIG_SYS_L2_PL310
diff --git a/include/configs/brppt1.h b/include/configs/brppt1.h
index 769b3f073acc..b98d4ab68ad2 100644
--- a/include/configs/brppt1.h
+++ b/include/configs/brppt1.h
@@ -29,8 +29,6 @@
  */
 
 #ifdef CONFIG_SPL_OS_BOOT
-#define CONFIG_SYS_SPL_ARGS_ADDR		0x80F80000
-
 /* RAW SD card / eMMC */
 #define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR	0x80	/* address 0x10000 */
 #define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS	0x80	/* 64KiB */
diff --git a/include/configs/cm_t43.h b/include/configs/cm_t43.h
index eb015e1b20f2..ec1355b8a320 100644
--- a/include/configs/cm_t43.h
+++ b/include/configs/cm_t43.h
@@ -76,7 +76,6 @@
 		"bootz ${loadaddr} - ${fdtaddr}\0"
 
 /* SPL defines. */
-#define CONFIG_SYS_SPL_ARGS_ADDR	(CONFIG_SYS_SDRAM_BASE + (128 << 20))
 #define CONFIG_SYS_MONITOR_LEN		(512 * 1024)
 
 /* EEPROM */
diff --git a/include/configs/devkit8000.h b/include/configs/devkit8000.h
index 340c9d0d4a30..2a3daea9f253 100644
--- a/include/configs/devkit8000.h
+++ b/include/configs/devkit8000.h
@@ -124,7 +124,4 @@
 #define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR	0x8   /* address 0x1000 */
 #define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS	8     /* 4KB */
 
-#undef CONFIG_SYS_SPL_ARGS_ADDR
-#define CONFIG_SYS_SPL_ARGS_ADDR        (PHYS_SDRAM_1 + 0x100)
-
 #endif /* __CONFIG_H */
diff --git a/include/configs/display5.h b/include/configs/display5.h
index d7fbfbd702e1..420b0c9f6e43 100644
--- a/include/configs/display5.h
+++ b/include/configs/display5.h
@@ -10,7 +10,6 @@
 #include "mx6_common.h"
 
 /* Falcon Mode */
-#define CONFIG_SYS_SPL_ARGS_ADDR	0x18000000
 
 /* Falcon Mode - MMC support */
 #define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR	0x3F00
diff --git a/include/configs/embestmx6boards.h b/include/configs/embestmx6boards.h
index 21b436bdb4cd..3023d0e0b25b 100644
--- a/include/configs/embestmx6boards.h
+++ b/include/configs/embestmx6boards.h
@@ -53,7 +53,6 @@
 #ifdef CONFIG_SPL
 #include "imx6_spl.h"
 /* RiOTboard */
-#define CONFIG_SYS_SPL_ARGS_ADDR 0x13000000
 
 #define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR  0 /* offset 69KB */
 #define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS 0 /* offset 69KB */
diff --git a/include/configs/gw_ventana.h b/include/configs/gw_ventana.h
index cc6909774ed1..2e6b9523f45b 100644
--- a/include/configs/gw_ventana.h
+++ b/include/configs/gw_ventana.h
@@ -10,7 +10,6 @@
 /* Location in NAND to read U-Boot from */
 
 /* Falcon Mode */
-#define CONFIG_SYS_SPL_ARGS_ADDR	0x18000000
 
 /* Falcon Mode - NAND support: args@17MB kernel@18MB */
 #define CONFIG_SYS_NAND_SPL_KERNEL_OFFS	(18 * SZ_1M)
diff --git a/include/configs/imx6-engicam.h b/include/configs/imx6-engicam.h
index 2a794db4dffd..4a1eae1d8b9b 100644
--- a/include/configs/imx6-engicam.h
+++ b/include/configs/imx6-engicam.h
@@ -135,8 +135,6 @@
 
 /* Falcon Mode */
 #ifdef CONFIG_SPL_OS_BOOT
-# define CONFIG_SYS_SPL_ARGS_ADDR	0x18000000
-
 /* MMC support: args@1MB kernel@2MB */
 # define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR		0x800   /* 1MB */
 # define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS		(CONFIG_CMD_SPL_WRITE_SIZE / 512)
diff --git a/include/configs/imx6_logic.h b/include/configs/imx6_logic.h
index a8d691586c95..324016a53b24 100644
--- a/include/configs/imx6_logic.h
+++ b/include/configs/imx6_logic.h
@@ -130,7 +130,6 @@
 #endif
 
 /* Falcon Mode */
-#define CONFIG_SYS_SPL_ARGS_ADDR       0x18000000
 
 /* Falcon Mode - MMC support: args@1MB kernel@2MB */
 #define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR  0x800   /* 1MB */
diff --git a/include/configs/imx6dl-mamoj.h b/include/configs/imx6dl-mamoj.h
index 437893238991..00c30d4d5026 100644
--- a/include/configs/imx6dl-mamoj.h
+++ b/include/configs/imx6dl-mamoj.h
@@ -51,7 +51,6 @@
 #define CONFIG_USB_MAX_CONTROLLER_COUNT		2
 
 /* Falcon */
-#define CONFIG_SYS_SPL_ARGS_ADDR	0x13000000
 
 /* MMC support: args@1MB kernel@2MB */
 #define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR		0x800   /* 1MB */
diff --git a/include/configs/ls1043ardb.h b/include/configs/ls1043ardb.h
index 16815f4fb00a..bf8738f22a72 100644
--- a/include/configs/ls1043ardb.h
+++ b/include/configs/ls1043ardb.h
@@ -20,7 +20,6 @@
 #endif
 
 #ifdef CONFIG_SD_BOOT
-#define CONFIG_SYS_SPL_ARGS_ADDR	0x90000000
 #define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR	0x500
 #define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS	30
 #endif
diff --git a/include/configs/ls1046ardb.h b/include/configs/ls1046ardb.h
index ff76e6945673..4ad62b43f8c9 100644
--- a/include/configs/ls1046ardb.h
+++ b/include/configs/ls1046ardb.h
@@ -20,7 +20,6 @@
 
 #if defined(CONFIG_QSPI_BOOT)
 #define CONFIG_SYS_UBOOT_BASE		0x40100000
-#define CONFIG_SYS_SPL_ARGS_ADDR	0x90000000
 #endif
 
 #define CONFIG_SYS_NAND_BASE		0x7e800000
diff --git a/include/configs/mccmon6.h b/include/configs/mccmon6.h
index ea7823de5a7d..2bbbdfa51f84 100644
--- a/include/configs/mccmon6.h
+++ b/include/configs/mccmon6.h
@@ -12,7 +12,6 @@
 #include "imx6_spl.h"
 
 #define CONFIG_SYS_UBOOT_BASE (CONFIG_SYS_FLASH_BASE + 0x80000)
-#define CONFIG_SYS_SPL_ARGS_ADDR	0x18000000
 
 /*
  * Below defines are set but NOT really used since we by
diff --git a/include/configs/microblaze-generic.h b/include/configs/microblaze-generic.h
index 389da112b939..2adc1f6d86b8 100644
--- a/include/configs/microblaze-generic.h
+++ b/include/configs/microblaze-generic.h
@@ -115,13 +115,6 @@
 
 #define CONFIG_SYS_UBOOT_BASE		CONFIG_SYS_TEXT_BASE
 
-/* for booting directly linux */
-#define CONFIG_SYS_FDT_BASE		(CONFIG_SYS_TEXT_BASE + \
-					0x40000)
-
-#define CONFIG_SYS_SPL_ARGS_ADDR	(CONFIG_SYS_TEXT_BASE + \
-					 0x1000000)
-
 /* SP location before relocation, must use scratch RAM */
 /* BRAM start */
 #define CONFIG_SYS_INIT_RAM_ADDR	0x0
diff --git a/include/configs/mt7629.h b/include/configs/mt7629.h
index 246836a077b9..87e2251777cb 100644
--- a/include/configs/mt7629.h
+++ b/include/configs/mt7629.h
@@ -27,7 +27,6 @@
 /* SPL -> Uboot */
 
 /* UBoot -> Kernel */
-#define CONFIG_SYS_SPL_ARGS_ADDR	0x40000000
 
 /* DRAM */
 #define CONFIG_SYS_SDRAM_BASE		0x40000000
diff --git a/include/configs/mx6sabreauto.h b/include/configs/mx6sabreauto.h
index 00ca50a4e647..04f8a16fde98 100644
--- a/include/configs/mx6sabreauto.h
+++ b/include/configs/mx6sabreauto.h
@@ -28,8 +28,6 @@
 
 /* Falcon Mode */
 #ifdef CONFIG_SPL_OS_BOOT
-#define CONFIG_SYS_SPL_ARGS_ADDR       0x18000000
-
 /* Falcon Mode - MMC support: args@1MB kernel@2MB */
 #define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR  0x800   /* 1MB */
 #define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS (CONFIG_CMD_SPL_WRITE_SIZE / 512)
diff --git a/include/configs/mx6sabresd.h b/include/configs/mx6sabresd.h
index c78ddc42568c..436254027006 100644
--- a/include/configs/mx6sabresd.h
+++ b/include/configs/mx6sabresd.h
@@ -18,7 +18,6 @@
 #include "mx6sabre_common.h"
 
 /* Falcon Mode */
-#define CONFIG_SYS_SPL_ARGS_ADDR       0x18000000
 
 /* Falcon Mode - MMC support: args@1MB kernel@2MB */
 #define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR  0x800   /* 1MB */
diff --git a/include/configs/pico-imx6.h b/include/configs/pico-imx6.h
index 4910c80e3250..571a233c302d 100644
--- a/include/configs/pico-imx6.h
+++ b/include/configs/pico-imx6.h
@@ -14,7 +14,6 @@
 
 #ifdef CONFIG_SPL_OS_BOOT
 /* Falcon Mode */
-#define CONFIG_SYS_SPL_ARGS_ADDR   0x18000000
 
 /* Falcon Mode - MMC support: args@1MB kernel@2MB */
 #define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR  0x800   /* 1MB */
diff --git a/include/configs/pico-imx6ul.h b/include/configs/pico-imx6ul.h
index eef148419034..3e0cedadc32d 100644
--- a/include/configs/pico-imx6ul.h
+++ b/include/configs/pico-imx6ul.h
@@ -16,7 +16,6 @@
 
 #ifdef CONFIG_SPL_OS_BOOT
 /* Falcon Mode */
-#define CONFIG_SYS_SPL_ARGS_ADDR   0x88000000
 
 /* Falcon Mode - MMC support: args@1MB kernel@2MB */
 #define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR  0x800   /* 1MB */
diff --git a/include/configs/pico-imx7d.h b/include/configs/pico-imx7d.h
index 482238b41948..a293dca64212 100644
--- a/include/configs/pico-imx7d.h
+++ b/include/configs/pico-imx7d.h
@@ -14,7 +14,6 @@
 
 #ifdef CONFIG_SPL_OS_BOOT
 /* Falcon Mode */
-#define CONFIG_SYS_SPL_ARGS_ADDR	0x88000000
 
 /* Falcon Mode - MMC support: args@1MB kernel@2MB */
 #define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR  0x800   /* 1MB */
diff --git a/include/configs/sama5d3_xplained.h b/include/configs/sama5d3_xplained.h
index b4590a2ea912..073520bd5e5f 100644
--- a/include/configs/sama5d3_xplained.h
+++ b/include/configs/sama5d3_xplained.h
@@ -57,7 +57,6 @@
 #define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR	0x100  /* 128 KiB */
 #define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS	(CONFIG_CMD_SPL_WRITE_SIZE / 512)
 /* U-Boot proper stored by default at 0x200 (256 KiB) */
-#define CONFIG_SYS_SPL_ARGS_ADDR		0x22000000
 
 /* Falcon boot support on FAT on MMC */
 
diff --git a/include/configs/stm32f746-disco.h b/include/configs/stm32f746-disco.h
index 80db425bb7ce..05ac900f3c31 100644
--- a/include/configs/stm32f746-disco.h
+++ b/include/configs/stm32f746-disco.h
@@ -43,10 +43,6 @@
 #define CONFIG_SYS_UBOOT_BASE		(CONFIG_SYS_FLASH_BASE + \
 					 CONFIG_SPL_PAD_TO)
 
-/* DT blob (fdt) address */
-#define CONFIG_SYS_FDT_BASE		(CONFIG_SYS_FLASH_BASE + \
-					0x1C0000)
-
 /* For splashcreen */
 
 #endif /* __CONFIG_H */
diff --git a/include/configs/ti_am335x_common.h b/include/configs/ti_am335x_common.h
index f8bd5558e56a..5d5df6b10191 100644
--- a/include/configs/ti_am335x_common.h
+++ b/include/configs/ti_am335x_common.h
@@ -32,8 +32,6 @@
  * supports X-MODEM loading via UART, and we leverage this and then use
  * Y-MODEM to load u-boot.img, when booted over UART.
  */
-#define CONFIG_SYS_SPL_ARGS_ADDR	(CONFIG_SYS_SDRAM_BASE + \
-					 (128 << 20))
 
 /* Enable the watchdog inside of SPL */
 
diff --git a/include/configs/ti_omap3_common.h b/include/configs/ti_omap3_common.h
index 3d7cb175faa6..725a5a62f525 100644
--- a/include/configs/ti_omap3_common.h
+++ b/include/configs/ti_omap3_common.h
@@ -55,8 +55,6 @@
 #define CONFIG_SYS_MONITOR_LEN		(256 << 10)
 
 /* SPL */
-#define CONFIG_SYS_SPL_ARGS_ADDR	(CONFIG_SYS_SDRAM_BASE + \
-					 (64 << 20))
 
 #ifdef CONFIG_MTD_RAW_NAND
 #define CONFIG_SYS_NAND_BASE		0x30000000
diff --git a/include/configs/ti_omap4_common.h b/include/configs/ti_omap4_common.h
index b5ccfdcc6d46..5d8c45af2fa0 100644
--- a/include/configs/ti_omap4_common.h
+++ b/include/configs/ti_omap4_common.h
@@ -113,8 +113,6 @@
  * SPL is overlapped with public stack and breaking non HS devices to boot.
  * So moving TEXT_BASE down to non-HS limit.
  */
-#define CONFIG_SYS_SPL_ARGS_ADDR	(CONFIG_SYS_SDRAM_BASE + \
-					 (128 << 20))
 
 #ifdef CONFIG_SPL_BUILD
 /* No need for i2c in SPL mode as we will use SRI2C for PMIC access on OMAP4 */
diff --git a/include/configs/ti_omap5_common.h b/include/configs/ti_omap5_common.h
index 714a1c55c7fb..f7f17d0f502c 100644
--- a/include/configs/ti_omap5_common.h
+++ b/include/configs/ti_omap5_common.h
@@ -305,7 +305,4 @@
  */
 #endif
 
-#define CONFIG_SYS_SPL_ARGS_ADDR	(CONFIG_SYS_SDRAM_BASE + \
-					 (128 << 20))
-
 #endif /* __CONFIG_TI_OMAP5_COMMON_H */
diff --git a/include/configs/trats.h b/include/configs/trats.h
index 6ed1c79c89e0..db33560f0db4 100644
--- a/include/configs/trats.h
+++ b/include/configs/trats.h
@@ -127,7 +127,6 @@
 	"fdtaddr=40800000\0" \
 
 /* Falcon mode definitions */
-#define CONFIG_SYS_SPL_ARGS_ADDR        CONFIG_SYS_SDRAM_BASE + 0x100
 
 /* GPT */
 
diff --git a/include/configs/vyasa-rk3288.h b/include/configs/vyasa-rk3288.h
index fb76e5544ac3..d0e017f44821 100644
--- a/include/configs/vyasa-rk3288.h
+++ b/include/configs/vyasa-rk3288.h
@@ -22,7 +22,6 @@
 
 #ifndef CONFIG_TPL_BUILD
 /* Falcon Mode */
-#define CONFIG_SYS_SPL_ARGS_ADDR	0x0ffe5000
 
 /* Falcon Mode - MMC support: args@16MB kernel@17MB */
 #define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR		0x8000	/* 16MB */
diff --git a/include/configs/xea.h b/include/configs/xea.h
index 07419f0afbbc..b82e6605f823 100644
--- a/include/configs/xea.h
+++ b/include/configs/xea.h
@@ -16,8 +16,6 @@
 
 /* SPL */
 
-#define CONFIG_SYS_SPL_ARGS_ADDR	0x44000000
-
 #define CONFIG_SYS_SPI_KERNEL_OFFS	SZ_1M
 #define CONFIG_SYS_SPI_ARGS_OFFS	SZ_512K
 #define CONFIG_SYS_SPI_ARGS_SIZE	SZ_32K
diff --git a/include/configs/xilinx_zynqmp.h b/include/configs/xilinx_zynqmp.h
index 846c49f28e63..d8d9a555338b 100644
--- a/include/configs/xilinx_zynqmp.h
+++ b/include/configs/xilinx_zynqmp.h
@@ -206,7 +206,6 @@
 #endif
 
 /* u-boot is like dtb */
-#define CONFIG_SYS_SPL_ARGS_ADDR	0x8000000
 
 /* ATF is my kernel image */
 
diff --git a/include/configs/zynq-common.h b/include/configs/zynq-common.h
index b2b95b710ef4..4d8d44c25d83 100644
--- a/include/configs/zynq-common.h
+++ b/include/configs/zynq-common.h
@@ -210,7 +210,6 @@
 #define CONFIG_SYS_MMC_MAX_DEVICE	1
 
 /* Address in RAM where the parameters must be copied by SPL. */
-#define CONFIG_SYS_SPL_ARGS_ADDR	0x10000000
 
 /* Not using MMC raw mode - just for compilation purpose */
 #define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR	0
-- 
2.25.1


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH 15/20] ax25-ae350: Move CONFIG_SYS_FDT_BASE to Kconfig
  2022-05-29 16:55 [PATCH 01/20] Convert CONFIG_SPL_STACK to Kconfig Tom Rini
                   ` (12 preceding siblings ...)
  2022-05-29 16:55 ` [PATCH 14/20] Convert CONFIG_SYS_SPL_ARGS_ADDR " Tom Rini
@ 2022-05-29 16:55 ` Tom Rini
       [not found]   ` <HK0PR03MB29945ABCCE6928CEB0BA22A5C1DD9@HK0PR03MB2994.apcprd03.prod.outlook.com>
  2022-05-29 16:55 ` [PATCH 16/20] Drop CONFIG_SPL_SIZE Tom Rini
                   ` (6 subsequent siblings)
  20 siblings, 1 reply; 27+ messages in thread
From: Tom Rini @ 2022-05-29 16:55 UTC (permalink / raw)
  To: u-boot; +Cc: Rick Chen

The address where the device tree will be passed in to U-Boot at is now
moved to the Kconfig file.  If this is user configurable, it needs to be
exposed rather than hidden, and should probably be renamed as well.

Cc: Rick Chen <rick@andestech.com>
Signed-off-by: Tom Rini <trini@konsulko.com>
---
 board/AndesTech/ax25-ae350/Kconfig | 4 ++++
 include/configs/ax25-ae350.h       | 3 ---
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/board/AndesTech/ax25-ae350/Kconfig b/board/AndesTech/ax25-ae350/Kconfig
index e50f505a2ba2..f8cc8e553dbc 100644
--- a/board/AndesTech/ax25-ae350/Kconfig
+++ b/board/AndesTech/ax25-ae350/Kconfig
@@ -27,6 +27,10 @@ config SPL_TEXT_BASE
 config SPL_OPENSBI_LOAD_ADDR
 	default 0x01000000
 
+config SYS_FDT_BASE
+	hex
+	default 0x800f0000 if OF_SEPARATE
+
 config BOARD_SPECIFIC_OPTIONS # dummy
 	def_bool y
 	select RISCV_NDS
diff --git a/include/configs/ax25-ae350.h b/include/configs/ax25-ae350.h
index 7a1b9dbd0801..754e90961940 100644
--- a/include/configs/ax25-ae350.h
+++ b/include/configs/ax25-ae350.h
@@ -20,9 +20,6 @@
  * Miscellaneous configurable options
  */
 
-/* DT blob (fdt) address */
-#define CONFIG_SYS_FDT_BASE		0x800f0000
-
 /*
  * Physical Memory Map
  */
-- 
2.25.1


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH 16/20] Drop CONFIG_SPL_SIZE
  2022-05-29 16:55 [PATCH 01/20] Convert CONFIG_SPL_STACK to Kconfig Tom Rini
                   ` (13 preceding siblings ...)
  2022-05-29 16:55 ` [PATCH 15/20] ax25-ae350: Move CONFIG_SYS_FDT_BASE " Tom Rini
@ 2022-05-29 16:55 ` Tom Rini
  2022-05-29 16:55 ` [PATCH 17/20] spl: Remove CONFIG_SPL_START_S_PATH and rework the logic behind it Tom Rini
                   ` (5 subsequent siblings)
  20 siblings, 0 replies; 27+ messages in thread
From: Tom Rini @ 2022-05-29 16:55 UTC (permalink / raw)
  To: u-boot

We do not reference CONFIG_SPL_SIZE in the code, remove it.

Signed-off-by: Tom Rini <trini@konsulko.com>
---
 include/configs/clearfog.h        | 3 ---
 include/configs/controlcenterdc.h | 3 ---
 include/configs/db-88f6820-amc.h  | 3 ---
 include/configs/db-88f6820-gp.h   | 3 ---
 include/configs/helios4.h         | 3 ---
 include/configs/turris_omnia.h    | 3 ---
 include/configs/x530.h            | 5 -----
 7 files changed, 23 deletions(-)

diff --git a/include/configs/clearfog.h b/include/configs/clearfog.h
index c2aef08dbf98..4aaeba3602d8 100644
--- a/include/configs/clearfog.h
+++ b/include/configs/clearfog.h
@@ -42,9 +42,6 @@
 
 /* SPL */
 
-/* Defines for SPL */
-#define CONFIG_SPL_SIZE			(140 << 10)
-
 #if defined(CONFIG_MVEBU_SPL_BOOT_DEVICE_MMC) || defined(CONFIG_MVEBU_SPL_BOOT_DEVICE_SATA)
 /* SPL related MMC defines */
 #ifdef CONFIG_SPL_BUILD
diff --git a/include/configs/controlcenterdc.h b/include/configs/controlcenterdc.h
index 914d7ec83d89..571fdb3b07c7 100644
--- a/include/configs/controlcenterdc.h
+++ b/include/configs/controlcenterdc.h
@@ -34,9 +34,6 @@
 #define SPL_BOOT_SDIO_MMC_CARD		2
 #define CONFIG_SPL_BOOT_DEVICE		SPL_BOOT_SPI_NOR_FLASH
 
-/* Defines for SPL */
-#define CONFIG_SPL_SIZE			(160 << 10)
-
 #if CONFIG_SPL_BOOT_DEVICE == SPL_BOOT_SDIO_MMC_CARD
 /* SPL related MMC defines */
 #ifdef CONFIG_SPL_BUILD
diff --git a/include/configs/db-88f6820-amc.h b/include/configs/db-88f6820-amc.h
index 0b814f5e969e..523a4ead0253 100644
--- a/include/configs/db-88f6820-amc.h
+++ b/include/configs/db-88f6820-amc.h
@@ -39,9 +39,6 @@
 #define SPL_BOOT_SPI_NOR_FLASH		1
 #define CONFIG_SPL_BOOT_DEVICE		SPL_BOOT_SPI_NOR_FLASH
 
-/* Defines for SPL */
-#define CONFIG_SPL_SIZE			(140 << 10)
-
 /*
  * mv-common.h should be defined after CMD configs since it used them
  * to enable certain macros
diff --git a/include/configs/db-88f6820-gp.h b/include/configs/db-88f6820-gp.h
index fe75666d0540..acc09da89d38 100644
--- a/include/configs/db-88f6820-gp.h
+++ b/include/configs/db-88f6820-gp.h
@@ -39,9 +39,6 @@
 #define SPL_BOOT_SDIO_MMC_CARD		2
 #define CONFIG_SPL_BOOT_DEVICE		SPL_BOOT_SPI_NOR_FLASH
 
-/* Defines for SPL */
-#define CONFIG_SPL_SIZE			(140 << 10)
-
 #if CONFIG_SPL_BOOT_DEVICE == SPL_BOOT_SDIO_MMC_CARD
 /* SPL related MMC defines */
 #ifdef CONFIG_SPL_BUILD
diff --git a/include/configs/helios4.h b/include/configs/helios4.h
index 90a631c3761a..c8aa564097b6 100644
--- a/include/configs/helios4.h
+++ b/include/configs/helios4.h
@@ -42,9 +42,6 @@
 
 /* SPL */
 
-/* Defines for SPL */
-#define CONFIG_SPL_SIZE			(140 << 10)
-
 #if defined(CONFIG_MVEBU_SPL_BOOT_DEVICE_MMC) || defined(CONFIG_MVEBU_SPL_BOOT_DEVICE_SATA)
 /* SPL related MMC defines */
 #ifdef CONFIG_SPL_BUILD
diff --git a/include/configs/turris_omnia.h b/include/configs/turris_omnia.h
index 4bbc992c9f83..c4671f111602 100644
--- a/include/configs/turris_omnia.h
+++ b/include/configs/turris_omnia.h
@@ -26,9 +26,6 @@
 	"fdt_high=0x10000000\0"		\
 	"initrd_high=0x10000000\0"
 
-/* Defines for SPL */
-#define CONFIG_SPL_SIZE			(140 << 10)
-
 #ifdef CONFIG_MVEBU_SPL_BOOT_DEVICE_MMC
 /* SPL related MMC defines */
 # ifdef CONFIG_SPL_BUILD
diff --git a/include/configs/x530.h b/include/configs/x530.h
index e66d8af802a0..d8fc3c13d062 100644
--- a/include/configs/x530.h
+++ b/include/configs/x530.h
@@ -64,9 +64,4 @@
 #define CONFIG_UBI_PART			user
 #define CONFIG_UBIFS_VOLUME		user
 
-/* SPL */
-
-/* Defines for SPL */
-#define CONFIG_SPL_SIZE			(140 << 10)
-
 #endif /* _CONFIG_X530_H */
-- 
2.25.1


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH 17/20] spl: Remove CONFIG_SPL_START_S_PATH and rework the logic behind it
  2022-05-29 16:55 [PATCH 01/20] Convert CONFIG_SPL_STACK to Kconfig Tom Rini
                   ` (14 preceding siblings ...)
  2022-05-29 16:55 ` [PATCH 16/20] Drop CONFIG_SPL_SIZE Tom Rini
@ 2022-05-29 16:55 ` Tom Rini
  2022-05-29 16:55 ` [PATCH 18/20] Convert CONFIG_SYS_NAND_SPL_KERNEL_OFFS to Kconfig Tom Rini
                   ` (4 subsequent siblings)
  20 siblings, 0 replies; 27+ messages in thread
From: Tom Rini @ 2022-05-29 16:55 UTC (permalink / raw)
  To: u-boot

In some cases, when we don't use CONFIG_SPL_FRAMEWORK nor are we on
PowerPC using their specific SPL/TPL framework, we need to specify the
start.S file to use for these typically very constrained systems.  Do
this within the Makefile logic, rather than introducing a string-based
CONFIG option, as this would get slightly complex to do in Kconfig for a
very limited number of users.

Signed-off-by: Tom Rini <trini@konsulko.com>
---
 arch/arm/Makefile      | 4 ++--
 arch/mips/Makefile     | 4 +---
 include/configs/ci20.h | 4 ----
 include/configs/mxs.h  | 5 -----
 4 files changed, 3 insertions(+), 14 deletions(-)

diff --git a/arch/arm/Makefile b/arch/arm/Makefile
index 85c23bcf775b..4afa8e4adf02 100644
--- a/arch/arm/Makefile
+++ b/arch/arm/Makefile
@@ -103,8 +103,8 @@ libs-y += $(machdirs)
 head-y := arch/arm/cpu/$(CPU)/start.o
 
 ifeq ($(CONFIG_SPL_BUILD),y)
-ifneq ($(CONFIG_SPL_START_S_PATH),)
-head-y := $(CONFIG_SPL_START_S_PATH:"%"=%)/start.o
+ifeq ($(CONFIG_SYS_SOC)$(CONFIG_SPL_FRAMEWORK),"mxs")
+head-y := arch/arm/cpu/arm926ejs/mxs/start.o
 endif
 endif
 
diff --git a/arch/mips/Makefile b/arch/mips/Makefile
index 6502aebd2960..32c436f2bcb6 100644
--- a/arch/mips/Makefile
+++ b/arch/mips/Makefile
@@ -3,9 +3,7 @@
 head-y := arch/mips/cpu/start.o
 
 ifeq ($(CONFIG_SPL_BUILD),y)
-ifneq ($(CONFIG_SPL_START_S_PATH),)
-head-y := $(CONFIG_SPL_START_S_PATH:"%"=%)/start.o
-endif
+head-$(CONFIG_ARCH_JZ47XX) := arch/mips/mach-jz47xx/start.o
 endif
 
 libs-y += arch/mips/cpu/
diff --git a/include/configs/ci20.h b/include/configs/ci20.h
index bcec88415f92..01f636490536 100644
--- a/include/configs/ci20.h
+++ b/include/configs/ci20.h
@@ -30,8 +30,4 @@
 /* Miscellaneous configuration options */
 #define CONFIG_SYS_BOOTM_LEN		(64 << 20)
 
-/* SPL */
-
-#define CONFIG_SPL_START_S_PATH		"arch/mips/mach-jz47xx"
-
 #endif /* __CONFIG_CI20_H__ */
diff --git a/include/configs/mxs.h b/include/configs/mxs.h
index ebabc92b303b..fc15ed82c6ed 100644
--- a/include/configs/mxs.h
+++ b/include/configs/mxs.h
@@ -43,11 +43,6 @@
 
 /* Startup hooks */
 
-/* SPL */
-#ifndef CONFIG_SPL_FRAMEWORK
-#define CONFIG_SPL_START_S_PATH	"arch/arm/cpu/arm926ejs/mxs"
-#endif
-
 /* Memory sizes */
 
 /* OCRAM at 0x0 ; 32kB on MX23 ; 128kB on MX28 */
-- 
2.25.1


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH 18/20] Convert CONFIG_SYS_NAND_SPL_KERNEL_OFFS to Kconfig
  2022-05-29 16:55 [PATCH 01/20] Convert CONFIG_SPL_STACK to Kconfig Tom Rini
                   ` (15 preceding siblings ...)
  2022-05-29 16:55 ` [PATCH 17/20] spl: Remove CONFIG_SPL_START_S_PATH and rework the logic behind it Tom Rini
@ 2022-05-29 16:55 ` Tom Rini
  2022-05-29 16:55 ` [PATCH 19/20] Convert CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR et al " Tom Rini
                   ` (3 subsequent siblings)
  20 siblings, 0 replies; 27+ messages in thread
From: Tom Rini @ 2022-05-29 16:55 UTC (permalink / raw)
  To: u-boot

This converts the following to Kconfig:
   CONFIG_SYS_NAND_SPL_KERNEL_OFFS

Signed-off-by: Tom Rini <trini@konsulko.com>
---
 common/spl/Kconfig                        | 4 ++++
 configs/am335x_evm_defconfig              | 1 +
 configs/am335x_igep003x_defconfig         | 1 +
 configs/am3517_evm_defconfig              | 1 +
 configs/am43xx_evm_defconfig              | 1 +
 configs/am43xx_evm_rtconly_defconfig      | 1 +
 configs/am43xx_evm_usbhost_boot_defconfig | 1 +
 configs/devkit8000_defconfig              | 1 +
 configs/dra7xx_evm_defconfig              | 1 +
 configs/gwventana_nand_defconfig          | 1 +
 configs/igep00x0_defconfig                | 1 +
 configs/imx6q_logic_defconfig             | 1 +
 configs/omap35_logic_defconfig            | 1 +
 configs/omap35_logic_somlv_defconfig      | 1 +
 configs/omap3_logic_defconfig             | 1 +
 configs/omap3_logic_somlv_defconfig       | 1 +
 include/configs/am335x_evm.h              | 4 ----
 include/configs/am3517_evm.h              | 1 -
 include/configs/am43xx_evm.h              | 5 -----
 include/configs/brppt1.h                  | 4 ----
 include/configs/cm_t335.h                 | 3 ---
 include/configs/devkit8000.h              | 3 ---
 include/configs/dra7xx_evm.h              | 5 -----
 include/configs/gw_ventana.h              | 3 ---
 include/configs/imx6_logic.h              | 1 -
 include/configs/omap3_beagle.h            | 3 ---
 include/configs/omap3_evm.h               | 4 ----
 include/configs/omap3_logic.h             | 7 -------
 include/configs/phycore_am335x_r2.h       | 4 ----
 include/configs/sama5d3_xplained.h        | 5 -----
 30 files changed, 19 insertions(+), 52 deletions(-)

diff --git a/common/spl/Kconfig b/common/spl/Kconfig
index 71b2600df586..05049c1ffd7c 100644
--- a/common/spl/Kconfig
+++ b/common/spl/Kconfig
@@ -1196,6 +1196,10 @@ config SYS_SPL_ARGS_ADDR
 	  Address in memory where the 'args' file, typically a device tree
 	  will be loaded in to memory.
 
+config SYS_NAND_SPL_KERNEL_OFFS
+	hex "Address in memory to load the OS file for Falcon mode to"
+	depends on SPL_OS_BOOT && SPL_NAND_SUPPORT
+
 if SPL_OS_BOOT
 config SYS_OS_BASE
 	hex "addr, where OS is found"
diff --git a/configs/am335x_evm_defconfig b/configs/am335x_evm_defconfig
index e1c19c11d311..8a5beabd6d20 100644
--- a/configs/am335x_evm_defconfig
+++ b/configs/am335x_evm_defconfig
@@ -34,6 +34,7 @@ CONFIG_SPL_NAND_BASE=y
 CONFIG_SPL_NET=y
 CONFIG_SPL_NET_VCI_STRING="AM335x U-Boot SPL"
 CONFIG_SPL_OS_BOOT=y
+CONFIG_SYS_NAND_SPL_KERNEL_OFFS=0x200000
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1700
 CONFIG_SPL_USB_GADGET=y
diff --git a/configs/am335x_igep003x_defconfig b/configs/am335x_igep003x_defconfig
index f640cc47a8fd..78469d7154fa 100644
--- a/configs/am335x_igep003x_defconfig
+++ b/configs/am335x_igep003x_defconfig
@@ -40,6 +40,7 @@ CONFIG_SPL_UBI_LOAD_MONITOR_ID=0
 CONFIG_SPL_UBI_LOAD_KERNEL_ID=3
 CONFIG_SPL_UBI_LOAD_ARGS_ID=4
 CONFIG_SPL_OS_BOOT=y
+CONFIG_SYS_NAND_SPL_KERNEL_OFFS=0x280000
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1700
 CONFIG_SPL_POWER=y
diff --git a/configs/am3517_evm_defconfig b/configs/am3517_evm_defconfig
index 05ee3570fc93..f6baee0a2b2b 100644
--- a/configs/am3517_evm_defconfig
+++ b/configs/am3517_evm_defconfig
@@ -32,6 +32,7 @@ CONFIG_SPL_NAND_SIMPLE=y
 CONFIG_SPL_NAND_BASE=y
 CONFIG_SPL_OS_BOOT=y
 CONFIG_SYS_SPL_ARGS_ADDR=0x84000000
+CONFIG_SYS_NAND_SPL_KERNEL_OFFS=0x2a0000
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1700
 # CONFIG_SPL_POWER is not set
diff --git a/configs/am43xx_evm_defconfig b/configs/am43xx_evm_defconfig
index ebfb018d2de4..0825ea1636d1 100644
--- a/configs/am43xx_evm_defconfig
+++ b/configs/am43xx_evm_defconfig
@@ -29,6 +29,7 @@ CONFIG_SPL_NAND_BASE=y
 CONFIG_SPL_NET=y
 CONFIG_SPL_NET_VCI_STRING="AM43xx U-Boot SPL"
 CONFIG_SPL_OS_BOOT=y
+CONFIG_SYS_NAND_SPL_KERNEL_OFFS=0x300000
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1700
 CONFIG_SPL_USB_HOST=y
diff --git a/configs/am43xx_evm_rtconly_defconfig b/configs/am43xx_evm_rtconly_defconfig
index 5e6975129e7b..0cdc4018cfc8 100644
--- a/configs/am43xx_evm_rtconly_defconfig
+++ b/configs/am43xx_evm_rtconly_defconfig
@@ -26,6 +26,7 @@ CONFIG_SPL_NAND_DRIVERS=y
 CONFIG_SPL_NAND_ECC=y
 CONFIG_SPL_NAND_BASE=y
 CONFIG_SPL_OS_BOOT=y
+CONFIG_SYS_NAND_SPL_KERNEL_OFFS=0x300000
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1700
 CONFIG_SYS_MAXARGS=64
diff --git a/configs/am43xx_evm_usbhost_boot_defconfig b/configs/am43xx_evm_usbhost_boot_defconfig
index 429ab732e127..963cb93545c0 100644
--- a/configs/am43xx_evm_usbhost_boot_defconfig
+++ b/configs/am43xx_evm_usbhost_boot_defconfig
@@ -25,6 +25,7 @@ CONFIG_SPL_NAND_DRIVERS=y
 CONFIG_SPL_NAND_ECC=y
 CONFIG_SPL_NAND_BASE=y
 CONFIG_SPL_OS_BOOT=y
+CONFIG_SYS_NAND_SPL_KERNEL_OFFS=0x300000
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1700
 CONFIG_SPL_USB_HOST=y
diff --git a/configs/devkit8000_defconfig b/configs/devkit8000_defconfig
index dc07c146bdb2..f8a98531f377 100644
--- a/configs/devkit8000_defconfig
+++ b/configs/devkit8000_defconfig
@@ -23,6 +23,7 @@ CONFIG_SPL_NAND_SIMPLE=y
 CONFIG_SPL_NAND_BASE=y
 CONFIG_SPL_OS_BOOT=y
 CONFIG_SYS_SPL_ARGS_ADDR=0x80000100
+CONFIG_SYS_NAND_SPL_KERNEL_OFFS=0x280000
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x500
 CONFIG_SYS_MAXARGS=64
diff --git a/configs/dra7xx_evm_defconfig b/configs/dra7xx_evm_defconfig
index 5922e86d7a6d..fdd89e6f555b 100644
--- a/configs/dra7xx_evm_defconfig
+++ b/configs/dra7xx_evm_defconfig
@@ -39,6 +39,7 @@ CONFIG_SPL_NAND_ECC=y
 CONFIG_SPL_NAND_BASE=y
 CONFIG_SPL_DM_SPI_FLASH=y
 CONFIG_SPL_OS_BOOT=y
+CONFIG_SYS_NAND_SPL_KERNEL_OFFS=0x200000
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1700
 CONFIG_SPL_RAM_SUPPORT=y
diff --git a/configs/gwventana_nand_defconfig b/configs/gwventana_nand_defconfig
index 200ecf4a0f93..68ffe3e847ea 100644
--- a/configs/gwventana_nand_defconfig
+++ b/configs/gwventana_nand_defconfig
@@ -48,6 +48,7 @@ CONFIG_SPL_I2C=y
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_SPL_OS_BOOT=y
 CONFIG_SYS_SPL_ARGS_ADDR=0x18000000
+CONFIG_SYS_NAND_SPL_KERNEL_OFFS=0x1200000
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1000
 CONFIG_SPL_POWER=y
diff --git a/configs/igep00x0_defconfig b/configs/igep00x0_defconfig
index 96f2f9df8160..3b65a22513c5 100644
--- a/configs/igep00x0_defconfig
+++ b/configs/igep00x0_defconfig
@@ -42,6 +42,7 @@ CONFIG_SPL_UBI_LOAD_ARGS_ID=4
 CONFIG_SPL_ONENAND_SUPPORT=y
 CONFIG_SPL_OS_BOOT=y
 CONFIG_SYS_SPL_ARGS_ADDR=0x84000000
+CONFIG_SYS_NAND_SPL_KERNEL_OFFS=0x280000
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1700
 CONFIG_SYS_MAXARGS=64
diff --git a/configs/imx6q_logic_defconfig b/configs/imx6q_logic_defconfig
index cc7a6f0aa097..df4c1c1f950a 100644
--- a/configs/imx6q_logic_defconfig
+++ b/configs/imx6q_logic_defconfig
@@ -35,6 +35,7 @@ CONFIG_SPL_I2C=y
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_SPL_OS_BOOT=y
 CONFIG_SYS_SPL_ARGS_ADDR=0x18000000
+CONFIG_SYS_NAND_SPL_KERNEL_OFFS=0x500000
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1000
 CONFIG_SPL_USB_HOST=y
diff --git a/configs/omap35_logic_defconfig b/configs/omap35_logic_defconfig
index 6efc50fdf5e9..a8d789e11e9c 100644
--- a/configs/omap35_logic_defconfig
+++ b/configs/omap35_logic_defconfig
@@ -36,6 +36,7 @@ CONFIG_SPL_NAND_SIMPLE=y
 CONFIG_SPL_NAND_BASE=y
 CONFIG_SPL_OS_BOOT=y
 CONFIG_SYS_SPL_ARGS_ADDR=0x84000000
+CONFIG_SYS_NAND_SPL_KERNEL_OFFS=0x280000
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1700
 CONFIG_SYS_PROMPT="OMAP Logic # "
diff --git a/configs/omap35_logic_somlv_defconfig b/configs/omap35_logic_somlv_defconfig
index 3ea4d7a724ef..5264f4bc5ebd 100644
--- a/configs/omap35_logic_somlv_defconfig
+++ b/configs/omap35_logic_somlv_defconfig
@@ -37,6 +37,7 @@ CONFIG_SPL_NAND_SIMPLE=y
 CONFIG_SPL_NAND_BASE=y
 CONFIG_SPL_OS_BOOT=y
 CONFIG_SYS_SPL_ARGS_ADDR=0x84000000
+CONFIG_SYS_NAND_SPL_KERNEL_OFFS=0x280000
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1700
 # CONFIG_SPL_POWER is not set
diff --git a/configs/omap3_logic_defconfig b/configs/omap3_logic_defconfig
index 5c7d30d66ed0..292b4650656f 100644
--- a/configs/omap3_logic_defconfig
+++ b/configs/omap3_logic_defconfig
@@ -35,6 +35,7 @@ CONFIG_SPL_NAND_SIMPLE=y
 CONFIG_SPL_NAND_BASE=y
 CONFIG_SPL_OS_BOOT=y
 CONFIG_SYS_SPL_ARGS_ADDR=0x84000000
+CONFIG_SYS_NAND_SPL_KERNEL_OFFS=0x280000
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1700
 CONFIG_SYS_PROMPT="OMAP Logic # "
diff --git a/configs/omap3_logic_somlv_defconfig b/configs/omap3_logic_somlv_defconfig
index 9961e005a07a..aee7589b9c3b 100644
--- a/configs/omap3_logic_somlv_defconfig
+++ b/configs/omap3_logic_somlv_defconfig
@@ -37,6 +37,7 @@ CONFIG_SPL_NAND_SIMPLE=y
 CONFIG_SPL_NAND_BASE=y
 CONFIG_SPL_OS_BOOT=y
 CONFIG_SYS_SPL_ARGS_ADDR=0x84000000
+CONFIG_SYS_NAND_SPL_KERNEL_OFFS=0x280000
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1700
 # CONFIG_SPL_POWER is not set
diff --git a/include/configs/am335x_evm.h b/include/configs/am335x_evm.h
index 78b359dcea93..3e98e5c66531 100644
--- a/include/configs/am335x_evm.h
+++ b/include/configs/am335x_evm.h
@@ -193,10 +193,6 @@
 
 #define CONFIG_SYS_NAND_ECCSIZE		512
 #define CONFIG_SYS_NAND_ECCBYTES	14
-/* NAND: SPL related configs */
-#ifdef CONFIG_SPL_OS_BOOT
-#define CONFIG_SYS_NAND_SPL_KERNEL_OFFS	0x00200000 /* kernel offset */
-#endif
 #endif /* !CONFIG_MTD_RAW_NAND */
 
 /* USB Device Firmware Update support */
diff --git a/include/configs/am3517_evm.h b/include/configs/am3517_evm.h
index 1848aecb3901..b896f962f080 100644
--- a/include/configs/am3517_evm.h
+++ b/include/configs/am3517_evm.h
@@ -28,7 +28,6 @@
 #define CONFIG_SYS_NAND_MAX_OOBFREE	2
 #define CONFIG_SYS_NAND_MAX_ECCPOS	56
 #define CONFIG_SYS_NAND_U_BOOT_START	CONFIG_SYS_TEXT_BASE
-#define CONFIG_SYS_NAND_SPL_KERNEL_OFFS 0x2a0000
 /* NAND block size is 128 KiB.  Synchronize these values with
  * corresponding Device Tree entries in Linux:
  *  MLO(SPL)             4 * NAND_BLOCK_SIZE = 512 KiB  @ 0x000000
diff --git a/include/configs/am43xx_evm.h b/include/configs/am43xx_evm.h
index bce035531ce6..665ace5b01bc 100644
--- a/include/configs/am43xx_evm.h
+++ b/include/configs/am43xx_evm.h
@@ -151,11 +151,6 @@
 			}
 #define CONFIG_SYS_NAND_ECCSIZE		512
 #define CONFIG_SYS_NAND_ECCBYTES	26
-/* NAND: SPL related configs */
-/* NAND: SPL falcon mode configs */
-#ifdef CONFIG_SPL_OS_BOOT
-#define CONFIG_SYS_NAND_SPL_KERNEL_OFFS	0x00300000 /* kernel offset */
-#endif
 #define NANDARGS \
 	"mtdids=" CONFIG_MTDIDS_DEFAULT "\0" \
 	"mtdparts=" CONFIG_MTDPARTS_DEFAULT "\0" \
diff --git a/include/configs/brppt1.h b/include/configs/brppt1.h
index b98d4ab68ad2..240089318cc1 100644
--- a/include/configs/brppt1.h
+++ b/include/configs/brppt1.h
@@ -33,10 +33,6 @@
 #define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR	0x80	/* address 0x10000 */
 #define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS	0x80	/* 64KiB */
 
-/* NAND */
-#ifdef CONFIG_MTD_RAW_NAND
-#define CONFIG_SYS_NAND_SPL_KERNEL_OFFS		0x140000
-#endif /* CONFIG_MTD_RAW_NAND */
 #endif /* CONFIG_SPL_OS_BOOT */
 
 #ifdef CONFIG_MTD_RAW_NAND
diff --git a/include/configs/cm_t335.h b/include/configs/cm_t335.h
index ad2e88189075..b3ccc3cac3da 100644
--- a/include/configs/cm_t335.h
+++ b/include/configs/cm_t335.h
@@ -86,9 +86,6 @@
 #define CONFIG_SYS_NAND_U_BOOT_START	CONFIG_SYS_TEXT_BASE
 
 #define CONFIG_SYS_ENV_SECT_SIZE	(128 << 10)	/* 128 KiB */
-#ifdef CONFIG_SPL_OS_BOOT
-#define CONFIG_SYS_NAND_SPL_KERNEL_OFFS	0x500000
-#endif
 
 /* GPIO pin + bank to pin ID mapping */
 #define GPIO_PIN(_bank, _pin)		((_bank << 5) + _pin)
diff --git a/include/configs/devkit8000.h b/include/configs/devkit8000.h
index 2a3daea9f253..d5d1c68bdaaf 100644
--- a/include/configs/devkit8000.h
+++ b/include/configs/devkit8000.h
@@ -116,9 +116,6 @@
 
 #define CONFIG_SYS_NAND_U_BOOT_SIZE	0x200000
 
-/* SPL OS boot options */
-#define CONFIG_SYS_NAND_SPL_KERNEL_OFFS 0x280000
-
 #undef CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR
 #undef CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS
 #define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR	0x8   /* address 0x1000 */
diff --git a/include/configs/dra7xx_evm.h b/include/configs/dra7xx_evm.h
index 9f685b198791..9247720f8b6d 100644
--- a/include/configs/dra7xx_evm.h
+++ b/include/configs/dra7xx_evm.h
@@ -84,11 +84,6 @@
 					 50, 51, 52, 53, 54, 55, 56, 57, }
 #define CONFIG_SYS_NAND_ECCSIZE		512
 #define CONFIG_SYS_NAND_ECCBYTES	14
-/* NAND: SPL related configs */
-/* NAND: SPL falcon mode configs */
-#ifdef CONFIG_SPL_OS_BOOT
-#define CONFIG_SYS_NAND_SPL_KERNEL_OFFS	0x00200000 /* kernel offset */
-#endif
 #endif /* !CONFIG_MTD_RAW_NAND */
 
 /* Parallel NOR Support */
diff --git a/include/configs/gw_ventana.h b/include/configs/gw_ventana.h
index 2e6b9523f45b..c07e48629bb2 100644
--- a/include/configs/gw_ventana.h
+++ b/include/configs/gw_ventana.h
@@ -11,9 +11,6 @@
 
 /* Falcon Mode */
 
-/* Falcon Mode - NAND support: args@17MB kernel@18MB */
-#define CONFIG_SYS_NAND_SPL_KERNEL_OFFS	(18 * SZ_1M)
-
 /* Falcon Mode - MMC support: args@1MB kernel@2MB */
 #define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR	0x800	/* 1MB */
 #define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS	(CONFIG_CMD_SPL_WRITE_SIZE / 512)
diff --git a/include/configs/imx6_logic.h b/include/configs/imx6_logic.h
index 324016a53b24..8019dfc0a71f 100644
--- a/include/configs/imx6_logic.h
+++ b/include/configs/imx6_logic.h
@@ -119,7 +119,6 @@
 #define CONFIG_SYS_MAX_NAND_DEVICE     1
 #define CONFIG_SYS_NAND_BASE           0x40000000
 #define CONFIG_SYS_NAND_U_BOOT_START	CONFIG_SYS_TEXT_BASE
-#define CONFIG_SYS_NAND_SPL_KERNEL_OFFS 0x00500000
 
 /* USB Configs */
 #ifdef CONFIG_CMD_USB
diff --git a/include/configs/omap3_beagle.h b/include/configs/omap3_beagle.h
index 158773acedb9..ab742798b92b 100644
--- a/include/configs/omap3_beagle.h
+++ b/include/configs/omap3_beagle.h
@@ -28,9 +28,6 @@
 #define CONFIG_SYS_NAND_ECCBYTES        3
 #define CONFIG_SYS_ENV_SECT_SIZE        SZ_128K
 /* NAND: SPL falcon mode configs */
-#if defined(CONFIG_SPL_OS_BOOT)
-#define CONFIG_SYS_NAND_SPL_KERNEL_OFFS 0x2a0000
-#endif /* CONFIG_SPL_OS_BOOT */
 #endif /* CONFIG_MTD_RAW_NAND */
 
 /* Enable Multi Bus support for I2C */
diff --git a/include/configs/omap3_evm.h b/include/configs/omap3_evm.h
index eeb9ef8c741a..9c4e172d037d 100644
--- a/include/configs/omap3_evm.h
+++ b/include/configs/omap3_evm.h
@@ -32,10 +32,6 @@
 #define CONFIG_SYS_NAND_ECCSIZE         512
 #define CONFIG_SYS_NAND_ECCBYTES        3
 #define CONFIG_SYS_ENV_SECT_SIZE        SZ_128K
-/* NAND: SPL falcon mode configs */
-#if defined(CONFIG_SPL_OS_BOOT)
-#define CONFIG_SYS_NAND_SPL_KERNEL_OFFS 0x2a0000
-#endif /* CONFIG_SPL_OS_BOOT */
 #endif /* CONFIG_MTD_RAW_NAND */
 
 #define BOOTENV_DEV_LEGACY_MMC(devtypeu, devtypel, instance) \
diff --git a/include/configs/omap3_logic.h b/include/configs/omap3_logic.h
index 4112e5570f6a..12e502cd3640 100644
--- a/include/configs/omap3_logic.h
+++ b/include/configs/omap3_logic.h
@@ -158,11 +158,4 @@
 
 #define CONFIG_SYS_ENV_SECT_SIZE	(128 << 10)	/* 128 KiB */
 
-/* Defines for SPL */
-
-/* NAND: SPL falcon mode configs */
-#ifdef CONFIG_SPL_OS_BOOT
-#define CONFIG_SYS_NAND_SPL_KERNEL_OFFS	0x280000
-#endif
-
 #endif /* __CONFIG_H */
diff --git a/include/configs/phycore_am335x_r2.h b/include/configs/phycore_am335x_r2.h
index af6f7e14dfde..7fa911620e11 100644
--- a/include/configs/phycore_am335x_r2.h
+++ b/include/configs/phycore_am335x_r2.h
@@ -97,10 +97,6 @@
 #define CONFIG_SYS_NAND_ECCSIZE		512
 #define CONFIG_SYS_NAND_ECCBYTES	14
 
-/* NAND: SPL related configs */
-#ifdef CONFIG_SPL_OS_BOOT
-#define CONFIG_SYS_NAND_SPL_KERNEL_OFFS	0x00200000 /* kernel offset */
-#endif
 #endif /* !CONFIG_MTD_RAW_NAND */
 
 /* CPU */
diff --git a/include/configs/sama5d3_xplained.h b/include/configs/sama5d3_xplained.h
index 073520bd5e5f..3bb53a0dd1b5 100644
--- a/include/configs/sama5d3_xplained.h
+++ b/include/configs/sama5d3_xplained.h
@@ -58,9 +58,4 @@
 #define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS	(CONFIG_CMD_SPL_WRITE_SIZE / 512)
 /* U-Boot proper stored by default at 0x200 (256 KiB) */
 
-/* Falcon boot support on FAT on MMC */
-
-/* Falcon boot support on raw NAND */
-#define CONFIG_SYS_NAND_SPL_KERNEL_OFFS		0x1a0000
-
 #endif
-- 
2.25.1


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH 19/20] Convert CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR et al to Kconfig
  2022-05-29 16:55 [PATCH 01/20] Convert CONFIG_SPL_STACK to Kconfig Tom Rini
                   ` (16 preceding siblings ...)
  2022-05-29 16:55 ` [PATCH 18/20] Convert CONFIG_SYS_NAND_SPL_KERNEL_OFFS to Kconfig Tom Rini
@ 2022-05-29 16:55 ` Tom Rini
  2022-05-29 16:55 ` [PATCH 20/20] riotboard, syzygy_hub: Disable SPL_FALCON_BOOT_MMCSD Tom Rini
                   ` (2 subsequent siblings)
  20 siblings, 0 replies; 27+ messages in thread
From: Tom Rini @ 2022-05-29 16:55 UTC (permalink / raw)
  To: u-boot

This converts the following to Kconfig:
   CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR
   CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS

Signed-off-by: Tom Rini <trini@konsulko.com>
---
 README                                    |  6 ------
 common/spl/Kconfig                        | 14 ++++++++++++++
 common/spl/spl_mmc.c                      |  2 +-
 configs/am335x_boneblack_vboot_defconfig  |  2 ++
 configs/am335x_evm_defconfig              |  2 ++
 configs/am335x_igep003x_defconfig         |  2 ++
 configs/am335x_shc_defconfig              |  2 ++
 configs/am335x_shc_ict_defconfig          |  2 ++
 configs/am335x_shc_netboot_defconfig      |  2 ++
 configs/am335x_shc_sdboot_defconfig       |  2 ++
 configs/am335x_sl50_defconfig             |  2 ++
 configs/am3517_evm_defconfig              |  2 ++
 configs/am43xx_evm_defconfig              |  2 ++
 configs/am43xx_evm_rtconly_defconfig      |  2 ++
 configs/am43xx_evm_usbhost_boot_defconfig |  2 ++
 configs/am57xx_evm_defconfig              |  2 ++
 configs/devkit8000_defconfig              |  2 ++
 configs/display5_defconfig                |  2 ++
 configs/display5_factory_defconfig        |  2 ++
 configs/dra7xx_evm_defconfig              |  2 ++
 configs/gwventana_emmc_defconfig          |  2 ++
 configs/gwventana_gw5904_defconfig        |  2 ++
 configs/gwventana_nand_defconfig          |  2 ++
 configs/igep00x0_defconfig                |  2 ++
 configs/imx28_xea_defconfig               |  2 ++
 configs/imx6dl_mamoj_defconfig            |  2 ++
 configs/imx6q_logic_defconfig             |  2 ++
 configs/imx6qdl_icore_mipi_defconfig      |  2 ++
 configs/imx6qdl_icore_mmc_defconfig       |  2 ++
 configs/imx6qdl_icore_rqs_defconfig       |  2 ++
 configs/omap35_logic_defconfig            |  2 ++
 configs/omap35_logic_somlv_defconfig      |  2 ++
 configs/omap3_logic_defconfig             |  2 ++
 configs/omap3_logic_somlv_defconfig       |  2 ++
 configs/omap4_panda_defconfig             |  2 ++
 configs/omap5_uevm_defconfig              |  2 ++
 configs/vyasa-rk3288_defconfig            |  2 ++
 include/configs/brppt1.h                  |  2 --
 include/configs/devkit8000.h              |  5 -----
 include/configs/display5.h                |  3 ---
 include/configs/embestmx6boards.h         |  3 ---
 include/configs/gw_ventana.h              |  2 --
 include/configs/imx6-engicam.h            |  2 --
 include/configs/imx6_logic.h              |  2 --
 include/configs/imx6dl-mamoj.h            |  2 --
 include/configs/ls1043ardb.h              |  5 -----
 include/configs/mccmon6.h                 |  2 --
 include/configs/mx6sabreauto.h            |  2 --
 include/configs/mx6sabresd.h              |  2 --
 include/configs/pico-imx6.h               |  2 --
 include/configs/pico-imx6ul.h             |  2 --
 include/configs/pico-imx7d.h              |  2 --
 include/configs/sama5d3_xplained.h        |  2 --
 include/configs/ti_armv7_common.h         |  2 --
 include/configs/vyasa-rk3288.h            |  2 --
 include/configs/xea.h                     |  3 ---
 include/configs/xilinx_zynqmp.h           |  4 ----
 include/configs/zynq-common.h             |  2 --
 58 files changed, 83 insertions(+), 60 deletions(-)

diff --git a/README b/README
index 354913f82369..9800359e5dfe 100644
--- a/README
+++ b/README
@@ -1639,12 +1639,6 @@ The following options need to be configured:
 		For ARM, enable an optional function to print more information
 		about the running system.
 
-		CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR,
-		CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS
-		Sector and number of sectors to load kernel argument
-		parameters from when MMC is being used in raw mode
-		(for falcon mode)
-
 		CONFIG_SPL_MPC83XX_WAIT_FOR_NAND
 		Set this for NAND SPL on PPC mpc83xx targets, so that
 		start.S waits for the rest of the SPL to load before
diff --git a/common/spl/Kconfig b/common/spl/Kconfig
index 05049c1ffd7c..d4f02b527d9d 100644
--- a/common/spl/Kconfig
+++ b/common/spl/Kconfig
@@ -1226,6 +1226,20 @@ config SYS_MMCSD_RAW_MODE_KERNEL_SECTOR
 	  Note that the Falcon mode image can also be a FIT, if FIT support is
 	  enabled.
 
+config SYS_MMCSD_RAW_MODE_ARGS_SECTOR
+	hex "Falcon mode: Sector to load 'args' from MMC"
+	depends on SPL_FALCON_BOOT_MMCSD
+	help
+	  When Falcon mode is used with an MMC or SD media, SPL needs to know
+	  where to look for the OS 'args', typically a device tree. The
+	  contents are expected to begin at the raw MMC specified in this config.
+	  Note that if using a FIT image, this and the next option can be set to
+	  0x0.
+
+config SYS_MMCSD_RAW_MODE_ARGS_SECTORS
+	hex "Falcon mode: Number of sectors to load for 'args' from MMC"
+	depends on SPL_FALCON_BOOT_MMCSD && SYS_MMCSD_RAW_MODE_ARGS_SECTOR != 0x0
+
 config SPL_PAYLOAD
 	string "SPL payload"
 	default "tpl/u-boot-with-tpl.bin" if TPL
diff --git a/common/spl/spl_mmc.c b/common/spl/spl_mmc.c
index 6116a68371a9..f66147477e77 100644
--- a/common/spl/spl_mmc.c
+++ b/common/spl/spl_mmc.c
@@ -229,7 +229,7 @@ static int mmc_load_image_raw_os(struct spl_image_info *spl_image,
 {
 	int ret;
 
-#if defined(CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR)
+#if CONFIG_VAL(SYS_MMCSD_RAW_MODE_ARGS_SECTOR)
 	unsigned long count;
 
 	count = blk_dread(mmc_get_blk_desc(mmc),
diff --git a/configs/am335x_boneblack_vboot_defconfig b/configs/am335x_boneblack_vboot_defconfig
index 67c4144c35f4..b5ba2ccda5c9 100644
--- a/configs/am335x_boneblack_vboot_defconfig
+++ b/configs/am335x_boneblack_vboot_defconfig
@@ -31,6 +31,8 @@ CONFIG_SPL_NET_VCI_STRING="AM33xx U-Boot SPL"
 CONFIG_SPL_OS_BOOT=y
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1700
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR=0x1500
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS=0x200
 CONFIG_SPL_USB_GADGET=y
 CONFIG_SPL_USB_ETHER=y
 CONFIG_SYS_MAXARGS=64
diff --git a/configs/am335x_evm_defconfig b/configs/am335x_evm_defconfig
index 8a5beabd6d20..c7dbd3c5702d 100644
--- a/configs/am335x_evm_defconfig
+++ b/configs/am335x_evm_defconfig
@@ -37,6 +37,8 @@ CONFIG_SPL_OS_BOOT=y
 CONFIG_SYS_NAND_SPL_KERNEL_OFFS=0x200000
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1700
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR=0x1500
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS=0x200
 CONFIG_SPL_USB_GADGET=y
 CONFIG_SPL_USB_ETHER=y
 CONFIG_SYS_MAXARGS=64
diff --git a/configs/am335x_igep003x_defconfig b/configs/am335x_igep003x_defconfig
index 78469d7154fa..6da31d9e7f98 100644
--- a/configs/am335x_igep003x_defconfig
+++ b/configs/am335x_igep003x_defconfig
@@ -43,6 +43,8 @@ CONFIG_SPL_OS_BOOT=y
 CONFIG_SYS_NAND_SPL_KERNEL_OFFS=0x280000
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1700
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR=0x1500
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS=0x200
 CONFIG_SPL_POWER=y
 CONFIG_SPL_WATCHDOG=y
 CONFIG_SPL_YMODEM_SUPPORT=y
diff --git a/configs/am335x_shc_defconfig b/configs/am335x_shc_defconfig
index 9f5924e1524f..77593e3e3dcb 100644
--- a/configs/am335x_shc_defconfig
+++ b/configs/am335x_shc_defconfig
@@ -40,6 +40,8 @@ CONFIG_SPL_I2C=y
 CONFIG_SPL_OS_BOOT=y
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1700
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR=0x1500
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS=0x200
 CONFIG_SPL_POWER=y
 CONFIG_SPL_WATCHDOG=y
 CONFIG_SPL_YMODEM_SUPPORT=y
diff --git a/configs/am335x_shc_ict_defconfig b/configs/am335x_shc_ict_defconfig
index 7d8a57c18eb3..97a361ce4d61 100644
--- a/configs/am335x_shc_ict_defconfig
+++ b/configs/am335x_shc_ict_defconfig
@@ -38,6 +38,8 @@ CONFIG_SPL_I2C=y
 CONFIG_SPL_OS_BOOT=y
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1700
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR=0x1500
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS=0x200
 CONFIG_SPL_POWER=y
 CONFIG_SPL_WATCHDOG=y
 CONFIG_SPL_YMODEM_SUPPORT=y
diff --git a/configs/am335x_shc_netboot_defconfig b/configs/am335x_shc_netboot_defconfig
index 98e437e02332..2c6fc5496ebd 100644
--- a/configs/am335x_shc_netboot_defconfig
+++ b/configs/am335x_shc_netboot_defconfig
@@ -42,6 +42,8 @@ CONFIG_SPL_I2C=y
 CONFIG_SPL_OS_BOOT=y
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1700
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR=0x1500
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS=0x200
 CONFIG_SPL_POWER=y
 CONFIG_SPL_WATCHDOG=y
 CONFIG_SPL_YMODEM_SUPPORT=y
diff --git a/configs/am335x_shc_sdboot_defconfig b/configs/am335x_shc_sdboot_defconfig
index 02146321503a..a154a342551a 100644
--- a/configs/am335x_shc_sdboot_defconfig
+++ b/configs/am335x_shc_sdboot_defconfig
@@ -41,6 +41,8 @@ CONFIG_SPL_I2C=y
 CONFIG_SPL_OS_BOOT=y
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1700
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR=0x1500
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS=0x200
 CONFIG_SPL_POWER=y
 CONFIG_SPL_WATCHDOG=y
 CONFIG_SPL_YMODEM_SUPPORT=y
diff --git a/configs/am335x_sl50_defconfig b/configs/am335x_sl50_defconfig
index f42148e0549a..1338190e9ff4 100644
--- a/configs/am335x_sl50_defconfig
+++ b/configs/am335x_sl50_defconfig
@@ -38,6 +38,8 @@ CONFIG_SPL_NET_VCI_STRING="AM335x U-Boot SPL"
 CONFIG_SPL_OS_BOOT=y
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1700
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR=0x1500
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS=0x200
 CONFIG_SPL_POWER=y
 CONFIG_SPL_WATCHDOG=y
 CONFIG_SPL_YMODEM_SUPPORT=y
diff --git a/configs/am3517_evm_defconfig b/configs/am3517_evm_defconfig
index f6baee0a2b2b..19e01dc41ae2 100644
--- a/configs/am3517_evm_defconfig
+++ b/configs/am3517_evm_defconfig
@@ -35,6 +35,8 @@ CONFIG_SYS_SPL_ARGS_ADDR=0x84000000
 CONFIG_SYS_NAND_SPL_KERNEL_OFFS=0x2a0000
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1700
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR=0x1500
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS=0x200
 # CONFIG_SPL_POWER is not set
 CONFIG_SYS_PROMPT="AM3517_EVM # "
 CONFIG_SYS_MAXARGS=64
diff --git a/configs/am43xx_evm_defconfig b/configs/am43xx_evm_defconfig
index 0825ea1636d1..35b1cdb40166 100644
--- a/configs/am43xx_evm_defconfig
+++ b/configs/am43xx_evm_defconfig
@@ -32,6 +32,8 @@ CONFIG_SPL_OS_BOOT=y
 CONFIG_SYS_NAND_SPL_KERNEL_OFFS=0x300000
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1700
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR=0x1500
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS=0x200
 CONFIG_SPL_USB_HOST=y
 CONFIG_SPL_USB_GADGET=y
 CONFIG_SPL_USB_ETHER=y
diff --git a/configs/am43xx_evm_rtconly_defconfig b/configs/am43xx_evm_rtconly_defconfig
index 0cdc4018cfc8..ff5fbc6676ae 100644
--- a/configs/am43xx_evm_rtconly_defconfig
+++ b/configs/am43xx_evm_rtconly_defconfig
@@ -29,6 +29,8 @@ CONFIG_SPL_OS_BOOT=y
 CONFIG_SYS_NAND_SPL_KERNEL_OFFS=0x300000
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1700
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR=0x1500
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS=0x200
 CONFIG_SYS_MAXARGS=64
 CONFIG_CMD_SPL=y
 CONFIG_CMD_SPL_NAND_OFS=0x00100000
diff --git a/configs/am43xx_evm_usbhost_boot_defconfig b/configs/am43xx_evm_usbhost_boot_defconfig
index 963cb93545c0..0a4b9a99ceeb 100644
--- a/configs/am43xx_evm_usbhost_boot_defconfig
+++ b/configs/am43xx_evm_usbhost_boot_defconfig
@@ -28,6 +28,8 @@ CONFIG_SPL_OS_BOOT=y
 CONFIG_SYS_NAND_SPL_KERNEL_OFFS=0x300000
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1700
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR=0x1500
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS=0x200
 CONFIG_SPL_USB_HOST=y
 CONFIG_SPL_USB_STORAGE=y
 CONFIG_SPL_USB_GADGET=y
diff --git a/configs/am57xx_evm_defconfig b/configs/am57xx_evm_defconfig
index 33f8415d8b17..d82c66572cce 100644
--- a/configs/am57xx_evm_defconfig
+++ b/configs/am57xx_evm_defconfig
@@ -39,6 +39,8 @@ CONFIG_SPL_DM_SPI_FLASH=y
 CONFIG_SPL_OS_BOOT=y
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1700
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR=0x1500
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS=0x200
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x40000
 CONFIG_SPL_YMODEM_SUPPORT=y
diff --git a/configs/devkit8000_defconfig b/configs/devkit8000_defconfig
index f8a98531f377..4e144a9c169d 100644
--- a/configs/devkit8000_defconfig
+++ b/configs/devkit8000_defconfig
@@ -26,6 +26,8 @@ CONFIG_SYS_SPL_ARGS_ADDR=0x80000100
 CONFIG_SYS_NAND_SPL_KERNEL_OFFS=0x280000
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x500
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR=0x8
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS=8
 CONFIG_SYS_MAXARGS=64
 # CONFIG_CMD_IMI is not set
 CONFIG_CMD_SPL=y
diff --git a/configs/display5_defconfig b/configs/display5_defconfig
index 646372c10a3a..f586596ee921 100644
--- a/configs/display5_defconfig
+++ b/configs/display5_defconfig
@@ -47,6 +47,8 @@ CONFIG_SPL_OS_BOOT=y
 CONFIG_SYS_SPL_ARGS_ADDR=0x18000000
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x100
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR=0x3F00
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS=0x10
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x20000
 CONFIG_HUSH_PARSER=y
diff --git a/configs/display5_factory_defconfig b/configs/display5_factory_defconfig
index 245122843bce..e2f35a9790c0 100644
--- a/configs/display5_factory_defconfig
+++ b/configs/display5_factory_defconfig
@@ -42,6 +42,8 @@ CONFIG_SPL_OS_BOOT=y
 CONFIG_SYS_SPL_ARGS_ADDR=0x18000000
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x100
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR=0x3F00
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS=0x10
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x20000
 CONFIG_SPL_USB_HOST=y
diff --git a/configs/dra7xx_evm_defconfig b/configs/dra7xx_evm_defconfig
index fdd89e6f555b..aae84dc6adef 100644
--- a/configs/dra7xx_evm_defconfig
+++ b/configs/dra7xx_evm_defconfig
@@ -42,6 +42,8 @@ CONFIG_SPL_OS_BOOT=y
 CONFIG_SYS_NAND_SPL_KERNEL_OFFS=0x200000
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1700
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR=0x1500
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS=0x200
 CONFIG_SPL_RAM_SUPPORT=y
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x40000
diff --git a/configs/gwventana_emmc_defconfig b/configs/gwventana_emmc_defconfig
index a96ed26292a1..0effee6d30fd 100644
--- a/configs/gwventana_emmc_defconfig
+++ b/configs/gwventana_emmc_defconfig
@@ -49,6 +49,8 @@ CONFIG_SPL_OS_BOOT=y
 CONFIG_SYS_SPL_ARGS_ADDR=0x18000000
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1000
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR=0x800
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS=0x100
 CONFIG_SPL_POWER=y
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_PROMPT="Ventana > "
diff --git a/configs/gwventana_gw5904_defconfig b/configs/gwventana_gw5904_defconfig
index 85bbed23ebc8..28e08788b65d 100644
--- a/configs/gwventana_gw5904_defconfig
+++ b/configs/gwventana_gw5904_defconfig
@@ -49,6 +49,8 @@ CONFIG_SPL_OS_BOOT=y
 CONFIG_SYS_SPL_ARGS_ADDR=0x18000000
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1000
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR=0x800
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS=0x100
 CONFIG_SPL_POWER=y
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_PROMPT="Ventana > "
diff --git a/configs/gwventana_nand_defconfig b/configs/gwventana_nand_defconfig
index 68ffe3e847ea..f46440bf560e 100644
--- a/configs/gwventana_nand_defconfig
+++ b/configs/gwventana_nand_defconfig
@@ -51,6 +51,8 @@ CONFIG_SYS_SPL_ARGS_ADDR=0x18000000
 CONFIG_SYS_NAND_SPL_KERNEL_OFFS=0x1200000
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1000
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR=0x800
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS=0x100
 CONFIG_SPL_POWER=y
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_PROMPT="Ventana > "
diff --git a/configs/igep00x0_defconfig b/configs/igep00x0_defconfig
index 3b65a22513c5..00f0a670c2b4 100644
--- a/configs/igep00x0_defconfig
+++ b/configs/igep00x0_defconfig
@@ -45,6 +45,8 @@ CONFIG_SYS_SPL_ARGS_ADDR=0x84000000
 CONFIG_SYS_NAND_SPL_KERNEL_OFFS=0x280000
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1700
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR=0x1500
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS=0x200
 CONFIG_SYS_MAXARGS=64
 CONFIG_CMD_SPL=y
 # CONFIG_CMD_FLASH is not set
diff --git a/configs/imx28_xea_defconfig b/configs/imx28_xea_defconfig
index 37233bafad95..1537e8361f68 100644
--- a/configs/imx28_xea_defconfig
+++ b/configs/imx28_xea_defconfig
@@ -48,6 +48,8 @@ CONFIG_SPL_OS_BOOT=y
 CONFIG_SYS_SPL_ARGS_ADDR=0x44000000
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x800
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR=0x400
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS=0x40
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x10000
 CONFIG_SPL_YMODEM_SUPPORT=y
diff --git a/configs/imx6dl_mamoj_defconfig b/configs/imx6dl_mamoj_defconfig
index a52ce458f2b3..866921747127 100644
--- a/configs/imx6dl_mamoj_defconfig
+++ b/configs/imx6dl_mamoj_defconfig
@@ -22,6 +22,8 @@ CONFIG_SPL_OS_BOOT=y
 CONFIG_SYS_SPL_ARGS_ADDR=0x13000000
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1000
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR=0x800
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS=0x10
 CONFIG_SYS_MAXARGS=32
 CONFIG_SYS_PBSIZE=532
 CONFIG_CMD_SPL=y
diff --git a/configs/imx6q_logic_defconfig b/configs/imx6q_logic_defconfig
index df4c1c1f950a..1510d10dc527 100644
--- a/configs/imx6q_logic_defconfig
+++ b/configs/imx6q_logic_defconfig
@@ -38,6 +38,8 @@ CONFIG_SYS_SPL_ARGS_ADDR=0x18000000
 CONFIG_SYS_NAND_SPL_KERNEL_OFFS=0x500000
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1000
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR=0x800
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS=0x800
 CONFIG_SPL_USB_HOST=y
 CONFIG_SPL_USB_GADGET=y
 CONFIG_SPL_USB_SDP_SUPPORT=y
diff --git a/configs/imx6qdl_icore_mipi_defconfig b/configs/imx6qdl_icore_mipi_defconfig
index 929d31722b72..bddc4ff98ef6 100644
--- a/configs/imx6qdl_icore_mipi_defconfig
+++ b/configs/imx6qdl_icore_mipi_defconfig
@@ -38,6 +38,8 @@ CONFIG_SPL_OS_BOOT=y
 CONFIG_SYS_SPL_ARGS_ADDR=0x18000000
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1000
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR=0x800
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS=0x10
 CONFIG_SPL_WATCHDOG=y
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_PROMPT="icorem6qdl-mipi> "
diff --git a/configs/imx6qdl_icore_mmc_defconfig b/configs/imx6qdl_icore_mmc_defconfig
index 3465e1915c2a..f8194a002a19 100644
--- a/configs/imx6qdl_icore_mmc_defconfig
+++ b/configs/imx6qdl_icore_mmc_defconfig
@@ -41,6 +41,8 @@ CONFIG_SPL_OS_BOOT=y
 CONFIG_SYS_SPL_ARGS_ADDR=0x18000000
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1000
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR=0x800
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS=0x10
 CONFIG_SPL_WATCHDOG=y
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_PROMPT="icorem6qdl> "
diff --git a/configs/imx6qdl_icore_rqs_defconfig b/configs/imx6qdl_icore_rqs_defconfig
index b2ca3ee1b650..cb2b0df98b76 100644
--- a/configs/imx6qdl_icore_rqs_defconfig
+++ b/configs/imx6qdl_icore_rqs_defconfig
@@ -35,6 +35,8 @@ CONFIG_SPL_OS_BOOT=y
 CONFIG_SYS_SPL_ARGS_ADDR=0x18000000
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1000
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR=0x800
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS=0x10
 CONFIG_SPL_WATCHDOG=y
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_PROMPT="icorem6qdl-rqs> "
diff --git a/configs/omap35_logic_defconfig b/configs/omap35_logic_defconfig
index a8d789e11e9c..c76c10ac70fd 100644
--- a/configs/omap35_logic_defconfig
+++ b/configs/omap35_logic_defconfig
@@ -39,6 +39,8 @@ CONFIG_SYS_SPL_ARGS_ADDR=0x84000000
 CONFIG_SYS_NAND_SPL_KERNEL_OFFS=0x280000
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1700
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR=0x1500
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS=0x200
 CONFIG_SYS_PROMPT="OMAP Logic # "
 CONFIG_SYS_MAXARGS=64
 CONFIG_SYS_PBSIZE=1054
diff --git a/configs/omap35_logic_somlv_defconfig b/configs/omap35_logic_somlv_defconfig
index 5264f4bc5ebd..2637ecf9c50e 100644
--- a/configs/omap35_logic_somlv_defconfig
+++ b/configs/omap35_logic_somlv_defconfig
@@ -40,6 +40,8 @@ CONFIG_SYS_SPL_ARGS_ADDR=0x84000000
 CONFIG_SYS_NAND_SPL_KERNEL_OFFS=0x280000
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1700
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR=0x1500
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS=0x200
 # CONFIG_SPL_POWER is not set
 CONFIG_SYS_PROMPT="OMAP Logic # "
 CONFIG_SYS_MAXARGS=64
diff --git a/configs/omap3_logic_defconfig b/configs/omap3_logic_defconfig
index 292b4650656f..f55d52736bae 100644
--- a/configs/omap3_logic_defconfig
+++ b/configs/omap3_logic_defconfig
@@ -38,6 +38,8 @@ CONFIG_SYS_SPL_ARGS_ADDR=0x84000000
 CONFIG_SYS_NAND_SPL_KERNEL_OFFS=0x280000
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1700
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR=0x1500
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS=0x200
 CONFIG_SYS_PROMPT="OMAP Logic # "
 CONFIG_SYS_MAXARGS=64
 CONFIG_SYS_PBSIZE=1054
diff --git a/configs/omap3_logic_somlv_defconfig b/configs/omap3_logic_somlv_defconfig
index aee7589b9c3b..97cdc9491d3b 100644
--- a/configs/omap3_logic_somlv_defconfig
+++ b/configs/omap3_logic_somlv_defconfig
@@ -40,6 +40,8 @@ CONFIG_SYS_SPL_ARGS_ADDR=0x84000000
 CONFIG_SYS_NAND_SPL_KERNEL_OFFS=0x280000
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1700
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR=0x1500
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS=0x200
 # CONFIG_SPL_POWER is not set
 CONFIG_SYS_PROMPT="OMAP Logic # "
 CONFIG_SYS_MAXARGS=64
diff --git a/configs/omap4_panda_defconfig b/configs/omap4_panda_defconfig
index c51627dcf9c8..bd6c2ce4caca 100644
--- a/configs/omap4_panda_defconfig
+++ b/configs/omap4_panda_defconfig
@@ -22,6 +22,8 @@ CONFIG_SYS_SPL_MALLOC_SIZE=0x800000
 CONFIG_SPL_OS_BOOT=y
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1700
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR=0x1500
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS=0x200
 CONFIG_SYS_MAXARGS=64
 CONFIG_CMD_SPL=y
 CONFIG_CMD_ASKENV=y
diff --git a/configs/omap5_uevm_defconfig b/configs/omap5_uevm_defconfig
index 03b874576dfa..73d742ea1d2b 100644
--- a/configs/omap5_uevm_defconfig
+++ b/configs/omap5_uevm_defconfig
@@ -23,6 +23,8 @@ CONFIG_SYS_SPL_MALLOC_SIZE=0x800000
 CONFIG_SPL_OS_BOOT=y
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1700
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR=0x1500
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS=0x200
 CONFIG_SYS_MAXARGS=64
 CONFIG_CMD_SPL=y
 CONFIG_CMD_ASKENV=y
diff --git a/configs/vyasa-rk3288_defconfig b/configs/vyasa-rk3288_defconfig
index 9ae73816246a..cbaf970e6ad9 100644
--- a/configs/vyasa-rk3288_defconfig
+++ b/configs/vyasa-rk3288_defconfig
@@ -32,6 +32,8 @@ CONFIG_SPL_OS_BOOT=y
 CONFIG_SYS_SPL_ARGS_ADDR=0xffe5000
 CONFIG_SPL_FALCON_BOOT_MMCSD=y
 CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x8800
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR=0x8000
+CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS=0x10
 CONFIG_CMD_SPL=y
 CONFIG_CMD_GPIO=y
 CONFIG_CMD_GPT=y
diff --git a/include/configs/brppt1.h b/include/configs/brppt1.h
index 240089318cc1..12a4048a511c 100644
--- a/include/configs/brppt1.h
+++ b/include/configs/brppt1.h
@@ -30,8 +30,6 @@
 
 #ifdef CONFIG_SPL_OS_BOOT
 /* RAW SD card / eMMC */
-#define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR	0x80	/* address 0x10000 */
-#define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS	0x80	/* 64KiB */
 
 #endif /* CONFIG_SPL_OS_BOOT */
 
diff --git a/include/configs/devkit8000.h b/include/configs/devkit8000.h
index d5d1c68bdaaf..4e91f8caa32f 100644
--- a/include/configs/devkit8000.h
+++ b/include/configs/devkit8000.h
@@ -116,9 +116,4 @@
 
 #define CONFIG_SYS_NAND_U_BOOT_SIZE	0x200000
 
-#undef CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR
-#undef CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS
-#define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR	0x8   /* address 0x1000 */
-#define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS	8     /* 4KB */
-
 #endif /* __CONFIG_H */
diff --git a/include/configs/display5.h b/include/configs/display5.h
index 420b0c9f6e43..c23a57ee7a2b 100644
--- a/include/configs/display5.h
+++ b/include/configs/display5.h
@@ -12,9 +12,6 @@
 /* Falcon Mode */
 
 /* Falcon Mode - MMC support */
-#define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR	0x3F00
-#define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS	\
-	(CONFIG_CMD_SPL_WRITE_SIZE / 512)
 
 /*
  * display5 SPI-NOR memory layout
diff --git a/include/configs/embestmx6boards.h b/include/configs/embestmx6boards.h
index 3023d0e0b25b..00996f5cb784 100644
--- a/include/configs/embestmx6boards.h
+++ b/include/configs/embestmx6boards.h
@@ -54,9 +54,6 @@
 #include "imx6_spl.h"
 /* RiOTboard */
 
-#define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR  0 /* offset 69KB */
-#define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS 0 /* offset 69KB */
-
 #endif
 
 /* 256M RAM (minimum), 32M uncompressed kernel, 16M compressed kernel, 1M fdt,
diff --git a/include/configs/gw_ventana.h b/include/configs/gw_ventana.h
index c07e48629bb2..26d171daae7d 100644
--- a/include/configs/gw_ventana.h
+++ b/include/configs/gw_ventana.h
@@ -12,8 +12,6 @@
 /* Falcon Mode */
 
 /* Falcon Mode - MMC support: args@1MB kernel@2MB */
-#define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR	0x800	/* 1MB */
-#define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS	(CONFIG_CMD_SPL_WRITE_SIZE / 512)
 
 #include "imx6_spl.h"                  /* common IMX6 SPL configuration */
 #include "mx6_common.h"
diff --git a/include/configs/imx6-engicam.h b/include/configs/imx6-engicam.h
index 4a1eae1d8b9b..a2d5080a10e4 100644
--- a/include/configs/imx6-engicam.h
+++ b/include/configs/imx6-engicam.h
@@ -136,8 +136,6 @@
 /* Falcon Mode */
 #ifdef CONFIG_SPL_OS_BOOT
 /* MMC support: args@1MB kernel@2MB */
-# define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR		0x800   /* 1MB */
-# define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS		(CONFIG_CMD_SPL_WRITE_SIZE / 512)
 #endif
 
 /* Framebuffer */
diff --git a/include/configs/imx6_logic.h b/include/configs/imx6_logic.h
index 8019dfc0a71f..592c62ab8acc 100644
--- a/include/configs/imx6_logic.h
+++ b/include/configs/imx6_logic.h
@@ -131,7 +131,5 @@
 /* Falcon Mode */
 
 /* Falcon Mode - MMC support: args@1MB kernel@2MB */
-#define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR  0x800   /* 1MB */
-#define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS (CONFIG_CMD_SPL_WRITE_SIZE / 512)
 
 #endif                         /* __IMX6LOGIC_CONFIG_H */
diff --git a/include/configs/imx6dl-mamoj.h b/include/configs/imx6dl-mamoj.h
index 00c30d4d5026..c4eebb5aeac0 100644
--- a/include/configs/imx6dl-mamoj.h
+++ b/include/configs/imx6dl-mamoj.h
@@ -53,8 +53,6 @@
 /* Falcon */
 
 /* MMC support: args@1MB kernel@2MB */
-#define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR		0x800   /* 1MB */
-#define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS		(CONFIG_CMD_SPL_WRITE_SIZE / 512)
 
 /* Miscellaneous configurable options */
 
diff --git a/include/configs/ls1043ardb.h b/include/configs/ls1043ardb.h
index bf8738f22a72..edb4e64ee41a 100644
--- a/include/configs/ls1043ardb.h
+++ b/include/configs/ls1043ardb.h
@@ -19,11 +19,6 @@
 #define CONFIG_MEM_INIT_VALUE           0xdeadbeef
 #endif
 
-#ifdef CONFIG_SD_BOOT
-#define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR	0x500
-#define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS	30
-#endif
-
 /*
  * NOR Flash Definitions
  */
diff --git a/include/configs/mccmon6.h b/include/configs/mccmon6.h
index 2bbbdfa51f84..2c862e9ddcc2 100644
--- a/include/configs/mccmon6.h
+++ b/include/configs/mccmon6.h
@@ -18,8 +18,6 @@
  * design force U-Boot run when we boot in development
  * mode from SD card (SD2)
  */
-#define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR (0x800)
-#define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS (0x80)
 
 #define CONFIG_MXC_UART_BASE		UART1_BASE
 
diff --git a/include/configs/mx6sabreauto.h b/include/configs/mx6sabreauto.h
index 04f8a16fde98..d120c7c7a352 100644
--- a/include/configs/mx6sabreauto.h
+++ b/include/configs/mx6sabreauto.h
@@ -29,8 +29,6 @@
 /* Falcon Mode */
 #ifdef CONFIG_SPL_OS_BOOT
 /* Falcon Mode - MMC support: args@1MB kernel@2MB */
-#define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR  0x800   /* 1MB */
-#define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS (CONFIG_CMD_SPL_WRITE_SIZE / 512)
 #endif
 
 #ifdef CONFIG_MTD_NOR_FLASH
diff --git a/include/configs/mx6sabresd.h b/include/configs/mx6sabresd.h
index 436254027006..2f4332a4b19f 100644
--- a/include/configs/mx6sabresd.h
+++ b/include/configs/mx6sabresd.h
@@ -20,8 +20,6 @@
 /* Falcon Mode */
 
 /* Falcon Mode - MMC support: args@1MB kernel@2MB */
-#define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR  0x800   /* 1MB */
-#define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS (CONFIG_CMD_SPL_WRITE_SIZE / 512)
 
 #define CONFIG_SYS_FSL_USDHC_NUM	3
 
diff --git a/include/configs/pico-imx6.h b/include/configs/pico-imx6.h
index 571a233c302d..df4dc4d496c6 100644
--- a/include/configs/pico-imx6.h
+++ b/include/configs/pico-imx6.h
@@ -16,8 +16,6 @@
 /* Falcon Mode */
 
 /* Falcon Mode - MMC support: args@1MB kernel@2MB */
-#define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR  0x800   /* 1MB */
-#define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS (CONFIG_CMD_SPL_WRITE_SIZE / 512)
 #endif
 
 #define CONFIG_MXC_UART_BASE		UART1_BASE
diff --git a/include/configs/pico-imx6ul.h b/include/configs/pico-imx6ul.h
index 3e0cedadc32d..ea30fbc4cfcc 100644
--- a/include/configs/pico-imx6ul.h
+++ b/include/configs/pico-imx6ul.h
@@ -18,8 +18,6 @@
 /* Falcon Mode */
 
 /* Falcon Mode - MMC support: args@1MB kernel@2MB */
-#define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR  0x800   /* 1MB */
-#define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS (CONFIG_CMD_SPL_WRITE_SIZE / 512)
 #endif
 
 /* Network support */
diff --git a/include/configs/pico-imx7d.h b/include/configs/pico-imx7d.h
index a293dca64212..5a6f22442014 100644
--- a/include/configs/pico-imx7d.h
+++ b/include/configs/pico-imx7d.h
@@ -16,8 +16,6 @@
 /* Falcon Mode */
 
 /* Falcon Mode - MMC support: args@1MB kernel@2MB */
-#define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR  0x800   /* 1MB */
-#define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS (CONFIG_CMD_SPL_WRITE_SIZE / 512)
 #endif
 
 #define CONFIG_MXC_UART_BASE		UART5_IPS_BASE_ADDR
diff --git a/include/configs/sama5d3_xplained.h b/include/configs/sama5d3_xplained.h
index 3bb53a0dd1b5..a10057452fe4 100644
--- a/include/configs/sama5d3_xplained.h
+++ b/include/configs/sama5d3_xplained.h
@@ -54,8 +54,6 @@
 #define CONFIG_SYS_MONITOR_LEN		(2 * SZ_512K)
 
 /* Falcon boot support on raw MMC */
-#define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR	0x100  /* 128 KiB */
-#define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS	(CONFIG_CMD_SPL_WRITE_SIZE / 512)
 /* U-Boot proper stored by default at 0x200 (256 KiB) */
 
 #endif
diff --git a/include/configs/ti_armv7_common.h b/include/configs/ti_armv7_common.h
index 0307fc38d8b7..2d1f0372ae35 100644
--- a/include/configs/ti_armv7_common.h
+++ b/include/configs/ti_armv7_common.h
@@ -118,8 +118,6 @@
 /* FAT */
 
 /* RAW SD card / eMMC */
-#define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR	0x1500  /* address 0x2A0000 */
-#define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS	0x200   /* 256KiB */
 #endif
 
 /* General parts of the framework, required. */
diff --git a/include/configs/vyasa-rk3288.h b/include/configs/vyasa-rk3288.h
index d0e017f44821..e8c1013a71a3 100644
--- a/include/configs/vyasa-rk3288.h
+++ b/include/configs/vyasa-rk3288.h
@@ -24,8 +24,6 @@
 /* Falcon Mode */
 
 /* Falcon Mode - MMC support: args@16MB kernel@17MB */
-#define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR		0x8000	/* 16MB */
-#define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS		(CONFIG_CMD_SPL_WRITE_SIZE / 512)
 #endif
 
 #endif
diff --git a/include/configs/xea.h b/include/configs/xea.h
index b82e6605f823..19ccf633c404 100644
--- a/include/configs/xea.h
+++ b/include/configs/xea.h
@@ -20,9 +20,6 @@
 #define CONFIG_SYS_SPI_ARGS_OFFS	SZ_512K
 #define CONFIG_SYS_SPI_ARGS_SIZE	SZ_32K
 
-#define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR	(SZ_512K / 0x200)
-#define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS	(SZ_32K / 0x200)
-
 /* Memory configuration */
 #define PHYS_SDRAM_1			0x40000000	/* Base address */
 #define PHYS_SDRAM_1_SIZE		0x10000000	/* Max 256 MB RAM */
diff --git a/include/configs/xilinx_zynqmp.h b/include/configs/xilinx_zynqmp.h
index d8d9a555338b..b981064fc226 100644
--- a/include/configs/xilinx_zynqmp.h
+++ b/include/configs/xilinx_zynqmp.h
@@ -210,10 +210,6 @@
 /* ATF is my kernel image */
 
 /* MMC support */
-#ifdef CONFIG_MMC_SDHCI_ZYNQ
-# define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR	0 /* unused */
-# define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS	0 /* unused */
-#endif
 
 #if defined(CONFIG_SPL_BUILD) && defined(CONFIG_SPL_DFU)
 # define CONFIG_SPL_HASH
diff --git a/include/configs/zynq-common.h b/include/configs/zynq-common.h
index 4d8d44c25d83..6a045ec60aeb 100644
--- a/include/configs/zynq-common.h
+++ b/include/configs/zynq-common.h
@@ -212,8 +212,6 @@
 /* Address in RAM where the parameters must be copied by SPL. */
 
 /* Not using MMC raw mode - just for compilation purpose */
-#define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR	0
-#define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS	0
 
 /* qspi mode is working fine */
 #ifdef CONFIG_ZYNQ_QSPI
-- 
2.25.1


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH 20/20] riotboard, syzygy_hub: Disable SPL_FALCON_BOOT_MMCSD
  2022-05-29 16:55 [PATCH 01/20] Convert CONFIG_SPL_STACK to Kconfig Tom Rini
                   ` (17 preceding siblings ...)
  2022-05-29 16:55 ` [PATCH 19/20] Convert CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR et al " Tom Rini
@ 2022-05-29 16:55 ` Tom Rini
  2022-06-06 21:36 ` [PATCH 01/20] Convert CONFIG_SPL_STACK to Kconfig Tom Rini
  2024-01-23  3:53 ` Kever Yang
  20 siblings, 0 replies; 27+ messages in thread
From: Tom Rini @ 2022-05-29 16:55 UTC (permalink / raw)
  To: u-boot

Looking at the git history and values used for the raw kernel/args
location, it's clear these platforms only ever did Falcon Mode via
filesystem images and not raw MMC/SD locations.  Disable
CONFIG_SPL_FALCON_BOOT_MMCSD.

Signed-off-by: Tom Rini <trini@konsulko.com>
---
 configs/riotboard_defconfig  | 2 --
 configs/syzygy_hub_defconfig | 2 --
 2 files changed, 4 deletions(-)

diff --git a/configs/riotboard_defconfig b/configs/riotboard_defconfig
index 924254cbb978..a2ef6187f827 100644
--- a/configs/riotboard_defconfig
+++ b/configs/riotboard_defconfig
@@ -34,8 +34,6 @@ CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot-dtb.img"
 CONFIG_SPL_FS_LOAD_ARGS_NAME="imx6dl-riotboard.dtb"
 CONFIG_SPL_OS_BOOT=y
 CONFIG_SYS_SPL_ARGS_ADDR=0x13000000
-CONFIG_SPL_FALCON_BOOT_MMCSD=y
-CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x0
 CONFIG_SYS_MAXARGS=32
 CONFIG_SYS_PBSIZE=532
 CONFIG_CMD_GPIO=y
diff --git a/configs/syzygy_hub_defconfig b/configs/syzygy_hub_defconfig
index d632cb86a258..31a550031dae 100644
--- a/configs/syzygy_hub_defconfig
+++ b/configs/syzygy_hub_defconfig
@@ -37,8 +37,6 @@ CONFIG_SYS_SPL_MALLOC_SIZE=0x2000000
 CONFIG_SPL_FS_LOAD_ARGS_NAME="system.dtb"
 CONFIG_SPL_OS_BOOT=y
 CONFIG_SYS_SPL_ARGS_ADDR=0x10000000
-CONFIG_SPL_FALCON_BOOT_MMCSD=y
-CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x0
 CONFIG_SYS_MAXARGS=32
 CONFIG_SYS_PBSIZE=2071
 CONFIG_CMD_FPGA_LOADBP=y
-- 
2.25.1


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* Re: [PATCH 15/20] ax25-ae350: Move CONFIG_SYS_FDT_BASE to Kconfig
       [not found]   ` <HK0PR03MB29945ABCCE6928CEB0BA22A5C1DD9@HK0PR03MB2994.apcprd03.prod.outlook.com>
@ 2022-06-02  1:14     ` Rick Chen
  0 siblings, 0 replies; 27+ messages in thread
From: Rick Chen @ 2022-06-02  1:14 UTC (permalink / raw)
  To: Tom Rini; +Cc: U-Boot Mailing List, rick

> From: Tom Rini <trini@konsulko.com>
> Sent: Monday, May 30, 2022 12:55 AM
> To: u-boot@lists.denx.de
> Cc: Rick Jian-Zhi Chen(陳建志) <rick@andestech.com>
> Subject: [PATCH 15/20] ax25-ae350: Move CONFIG_SYS_FDT_BASE to Kconfig
>
> The address where the device tree will be passed in to U-Boot at is now moved to the Kconfig file.  If this is user configurable, it needs to be exposed rather than hidden, and should probably be renamed as well.
>
> Cc: Rick Chen <rick@andestech.com>
> Signed-off-by: Tom Rini <trini@konsulko.com>
> ---
>  board/AndesTech/ax25-ae350/Kconfig | 4 ++++
>  include/configs/ax25-ae350.h       | 3 ---
>  2 files changed, 4 insertions(+), 3 deletions(-)

Reviewed-by: Rick Chen <rick@andestech.com>

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [PATCH 01/20] Convert CONFIG_SPL_STACK to Kconfig
  2022-05-29 16:55 [PATCH 01/20] Convert CONFIG_SPL_STACK to Kconfig Tom Rini
                   ` (18 preceding siblings ...)
  2022-05-29 16:55 ` [PATCH 20/20] riotboard, syzygy_hub: Disable SPL_FALCON_BOOT_MMCSD Tom Rini
@ 2022-06-06 21:36 ` Tom Rini
  2024-01-23  3:53 ` Kever Yang
  20 siblings, 0 replies; 27+ messages in thread
From: Tom Rini @ 2022-06-06 21:36 UTC (permalink / raw)
  To: u-boot

[-- Attachment #1: Type: text/plain, Size: 242 bytes --]

On Sun, May 29, 2022 at 12:55:02PM -0400, Tom Rini wrote:

> This converts the following to Kconfig:
>    CONFIG_SPL_STACK
> 
> Signed-off-by: Tom Rini <trini@konsulko.com>

For the series, applied to u-boot/next, thanks!

-- 
Tom

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 659 bytes --]

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [PATCH 01/20] Convert CONFIG_SPL_STACK to Kconfig
  2022-05-29 16:55 [PATCH 01/20] Convert CONFIG_SPL_STACK to Kconfig Tom Rini
                   ` (19 preceding siblings ...)
  2022-06-06 21:36 ` [PATCH 01/20] Convert CONFIG_SPL_STACK to Kconfig Tom Rini
@ 2024-01-23  3:53 ` Kever Yang
  2024-01-23 17:58   ` Tom Rini
  20 siblings, 1 reply; 27+ messages in thread
From: Kever Yang @ 2024-01-23  3:53 UTC (permalink / raw)
  To: Tom Rini; +Cc: u-boot

Hi Tom,

rk3036 only has small size internal sram, so it can only use very
simple SPL which only including dram init, and no SPL_FRAMEWORK
support.
In this convert, the CONFIG_SPL_STACK is lost for this SoC, any
suggestions on this kind of issue?

Thanks,
- Kever

diff --git a/include/configs/rk3036_common.h b/include/configs/rk3036_common.h
index 0eded1838c2a..2f3260e449c1 100644
--- a/include/configs/rk3036_common.h
+++ b/include/configs/rk3036_common.h
@@ -10,8 +10,6 @@

 #define CONFIG_SYS_HZ_CLOCK            24000000

-#define CONFIG_SPL_STACK               0x10081fff
-
 #define CONFIG_ROCKCHIP_MAX_INIT_SIZE  (4 << 10)
 #define CONFIG_ROCKCHIP_CHIP_TAG       "RK30"

Tom Rini <trini@konsulko.com> 于2022年5月30日周一 01:00写道:
>
> This converts the following to Kconfig:
>    CONFIG_SPL_STACK
>
> Signed-off-by: Tom Rini <trini@konsulko.com>
> ---
>  README                                        | 32 -------------------
>  arch/microblaze/cpu/start.S                   |  2 +-
>  common/spl/Kconfig                            | 18 +++++++++++
>  configs/A10-OLinuXino-Lime_defconfig          |  1 +
>  configs/A10s-OLinuXino-M_defconfig            |  1 +
>  configs/A13-OLinuXinoM_defconfig              |  1 +
>  configs/A13-OLinuXino_defconfig               |  1 +
>  configs/A20-OLinuXino-Lime2-eMMC_defconfig    |  1 +
>  configs/A20-OLinuXino-Lime2_defconfig         |  1 +
>  configs/A20-OLinuXino-Lime_defconfig          |  1 +
>  configs/A20-OLinuXino_MICRO-eMMC_defconfig    |  1 +
>  configs/A20-OLinuXino_MICRO_defconfig         |  1 +
>  configs/A20-Olimex-SOM-EVB_defconfig          |  1 +
>  configs/A20-Olimex-SOM204-EVB-eMMC_defconfig  |  1 +
>  configs/A20-Olimex-SOM204-EVB_defconfig       |  1 +
>  configs/A33-OLinuXino_defconfig               |  1 +
>  configs/Ainol_AW1_defconfig                   |  1 +
>  configs/Ampe_A76_defconfig                    |  1 +
>  configs/Auxtek-T003_defconfig                 |  1 +
>  configs/Auxtek-T004_defconfig                 |  1 +
>  configs/Bananapi_M2_Ultra_defconfig           |  1 +
>  configs/Bananapi_defconfig                    |  1 +
>  configs/Bananapi_m2m_defconfig                |  1 +
>  configs/Bananapro_defconfig                   |  1 +
>  configs/CHIP_defconfig                        |  1 +
>  configs/CHIP_pro_defconfig                    |  1 +
>  configs/CSQ_CS908_defconfig                   |  1 +
>  configs/Chuwi_V7_CW0825_defconfig             |  1 +
>  configs/Colombus_defconfig                    |  1 +
>  configs/Cubieboard2_defconfig                 |  1 +
>  configs/Cubieboard4_defconfig                 |  1 +
>  configs/Cubieboard_defconfig                  |  1 +
>  configs/Cubietruck_defconfig                  |  1 +
>  configs/Cubietruck_plus_defconfig             |  1 +
>  configs/Empire_electronix_d709_defconfig      |  1 +
>  configs/Empire_electronix_m712_defconfig      |  1 +
>  configs/Hummingbird_A31_defconfig             |  1 +
>  configs/Hyundai_A7HD_defconfig                |  1 +
>  configs/Itead_Ibox_A20_defconfig              |  1 +
>  configs/Lamobo_R1_defconfig                   |  1 +
>  configs/LicheePi_Zero_defconfig               |  1 +
>  configs/Linksprite_pcDuino3_Nano_defconfig    |  1 +
>  configs/Linksprite_pcDuino3_defconfig         |  1 +
>  configs/Linksprite_pcDuino_defconfig          |  1 +
>  configs/MK808C_defconfig                      |  1 +
>  configs/MSI_Primo73_defconfig                 |  1 +
>  configs/MSI_Primo81_defconfig                 |  1 +
>  configs/Marsboard_A10_defconfig               |  1 +
>  configs/Mele_A1000G_quad_defconfig            |  1 +
>  configs/Mele_A1000_defconfig                  |  1 +
>  configs/Mele_I7_defconfig                     |  1 +
>  configs/Mele_M3_defconfig                     |  1 +
>  configs/Mele_M5_defconfig                     |  1 +
>  configs/Mele_M9_defconfig                     |  1 +
>  configs/Merrii_A80_Optimus_defconfig          |  1 +
>  configs/Mini-X_defconfig                      |  1 +
>  .../Nintendo_NES_Classic_Edition_defconfig    |  1 +
>  configs/Orangepi_defconfig                    |  1 +
>  configs/Orangepi_mini_defconfig               |  1 +
>  configs/Sinlinx_SinA31s_defconfig             |  1 +
>  configs/Sinlinx_SinA33_defconfig              |  1 +
>  configs/Sinovoip_BPI_M2_defconfig             |  1 +
>  configs/Sinovoip_BPI_M3_defconfig             |  1 +
>  configs/Sunchip_CX-A99_defconfig              |  1 +
>  configs/UTOO_P66_defconfig                    |  1 +
>  configs/Wexler_TAB7200_defconfig              |  1 +
>  configs/Wits_Pro_A20_DKT_defconfig            |  1 +
>  configs/Wobo_i5_defconfig                     |  1 +
>  configs/Yones_Toptech_BD1078_defconfig        |  1 +
>  configs/Yones_Toptech_BS1078_V2_defconfig     |  1 +
>  configs/a64-olinuxino-emmc_defconfig          |  1 +
>  configs/a64-olinuxino_defconfig               |  1 +
>  configs/alt_defconfig                         |  2 ++
>  configs/amarula_a64_relic_defconfig           |  1 +
>  configs/apalis-tk1_defconfig                  |  2 ++
>  configs/apalis_imx6_defconfig                 |  2 ++
>  configs/apalis_t30_defconfig                  |  2 ++
>  ...edev_cc_v1_0_ultrazedev_som_v1_0_defconfig |  2 ++
>  configs/axm_defconfig                         |  2 ++
>  configs/ba10_tv_box_defconfig                 |  1 +
>  configs/bananapi_m1_plus_defconfig            |  1 +
>  configs/bananapi_m2_berry_defconfig           |  1 +
>  configs/bananapi_m2_plus_h3_defconfig         |  1 +
>  configs/bananapi_m2_plus_h5_defconfig         |  1 +
>  configs/bananapi_m2_zero_defconfig            |  1 +
>  configs/bananapi_m64_defconfig                |  1 +
>  configs/beaver_defconfig                      |  2 ++
>  configs/beelink_gs1_defconfig                 |  1 +
>  configs/beelink_x2_defconfig                  |  1 +
>  configs/bitmain_antminer_s9_defconfig         |  2 ++
>  configs/brppt2_defconfig                      |  2 ++
>  configs/cardhu_defconfig                      |  2 ++
>  configs/cei-tk1-som_defconfig                 |  2 ++
>  configs/cgtqmx8_defconfig                     |  2 ++
>  configs/chromebit_mickey_defconfig            |  2 ++
>  configs/chromebook_bob_defconfig              |  2 ++
>  configs/chromebook_jerry_defconfig            |  2 ++
>  configs/chromebook_kevin_defconfig            |  2 ++
>  configs/chromebook_minnie_defconfig           |  2 ++
>  configs/chromebook_speedy_defconfig           |  2 ++
>  configs/ci20_mmc_defconfig                    |  2 ++
>  configs/cl-som-imx7_defconfig                 |  2 ++
>  configs/clearfog_defconfig                    |  2 ++
>  configs/cm_fx6_defconfig                      |  2 ++
>  configs/colibri_imx6_defconfig                |  2 ++
>  configs/colibri_t20_defconfig                 |  2 ++
>  configs/colibri_t30_defconfig                 |  2 ++
>  configs/colorfly_e708_q1_defconfig            |  1 +
>  configs/controlcenterdc_defconfig             |  2 ++
>  configs/corvus_defconfig                      |  2 ++
>  configs/da850evm_defconfig                    |  2 ++
>  configs/da850evm_nand_defconfig               |  2 ++
>  configs/dalmore_defconfig                     |  2 ++
>  configs/db-88f6720_defconfig                  |  2 ++
>  configs/db-88f6820-amc_defconfig              |  2 ++
>  configs/db-88f6820-gp_defconfig               |  2 ++
>  configs/db-mv784mp-gp_defconfig               |  2 ++
>  configs/deneb_defconfig                       |  2 ++
>  configs/devkit3250_defconfig                  |  2 ++
>  configs/dh_imx6_defconfig                     |  2 ++
>  configs/difrnce_dit4350_defconfig             |  1 +
>  configs/display5_defconfig                    |  2 ++
>  configs/display5_factory_defconfig            |  2 ++
>  configs/ds414_defconfig                       |  2 ++
>  configs/dserve_dsrv9703c_defconfig            |  1 +
>  configs/edminiv2_defconfig                    |  2 ++
>  configs/emlid_neutis_n5_devboard_defconfig    |  1 +
>  configs/evb-px30_defconfig                    |  2 ++
>  configs/evb-px5_defconfig                     |  2 ++
>  configs/evb-rk3288_defconfig                  |  2 ++
>  configs/evb-rk3308_defconfig                  |  2 ++
>  configs/evb-rk3328_defconfig                  |  2 ++
>  configs/evb-rk3399_defconfig                  |  2 ++
>  configs/evb-rk3568_defconfig                  |  2 ++
>  configs/ficus-rk3399_defconfig                |  2 ++
>  configs/firefly-px30_defconfig                |  2 ++
>  configs/firefly-rk3288_defconfig              |  2 ++
>  configs/firefly-rk3399_defconfig              |  2 ++
>  configs/ga10h_v1_1_defconfig                  |  1 +
>  .../gardena-smart-gateway-at91sam_defconfig   |  2 ++
>  configs/ge_b1x5v2_defconfig                   |  2 ++
>  configs/giedi_defconfig                       |  2 ++
>  configs/gose_defconfig                        |  2 ++
>  configs/gt90h_v4_defconfig                    |  1 +
>  configs/gwventana_emmc_defconfig              |  2 ++
>  configs/gwventana_gw5904_defconfig            |  2 ++
>  configs/gwventana_nand_defconfig              |  2 ++
>  configs/h8_homlet_v2_defconfig                |  1 +
>  configs/harmony_defconfig                     |  2 ++
>  configs/helios4_defconfig                     |  2 ++
>  configs/i12-tvbox_defconfig                   |  1 +
>  configs/iNet_3F_defconfig                     |  1 +
>  configs/iNet_3W_defconfig                     |  1 +
>  configs/iNet_86VS_defconfig                   |  1 +
>  configs/iNet_D978_rev2_defconfig              |  1 +
>  configs/icnova-a20-swac_defconfig             |  1 +
>  configs/imx28_xea_defconfig                   |  2 ++
>  configs/imx6dl_icore_nand_defconfig           |  2 ++
>  configs/imx6dl_mamoj_defconfig                |  2 ++
>  configs/imx6q_bosch_acc_defconfig             |  2 ++
>  configs/imx6q_icore_nand_defconfig            |  2 ++
>  configs/imx6q_logic_defconfig                 |  2 ++
>  configs/imx6qdl_icore_mipi_defconfig          |  2 ++
>  configs/imx6qdl_icore_mmc_defconfig           |  2 ++
>  configs/imx6qdl_icore_nand_defconfig          |  2 ++
>  configs/imx6qdl_icore_rqs_defconfig           |  2 ++
>  configs/imx6ul_geam_mmc_defconfig             |  2 ++
>  configs/imx6ul_geam_nand_defconfig            |  2 ++
>  configs/imx6ul_isiot_emmc_defconfig           |  2 ++
>  configs/imx6ul_isiot_nand_defconfig           |  2 ++
>  configs/imx7_cm_defconfig                     |  2 ++
>  configs/imx8mm-cl-iot-gate-optee_defconfig    |  2 ++
>  configs/imx8mm-cl-iot-gate_defconfig          |  2 ++
>  configs/imx8mm-icore-mx8mm-ctouch2_defconfig  |  2 ++
>  configs/imx8mm-icore-mx8mm-edimm2.2_defconfig |  2 ++
>  configs/imx8mm-mx8menlo_defconfig             |  2 ++
>  configs/imx8mm_beacon_defconfig               |  2 ++
>  configs/imx8mm_data_modul_edm_sbc_defconfig   |  2 ++
>  configs/imx8mm_evk_defconfig                  |  2 ++
>  configs/imx8mm_venice_defconfig               |  2 ++
>  configs/imx8mn_beacon_2g_defconfig            |  2 ++
>  configs/imx8mn_beacon_defconfig               |  2 ++
>  configs/imx8mn_bsh_smm_s2_defconfig           |  2 ++
>  configs/imx8mn_bsh_smm_s2pro_defconfig        |  2 ++
>  configs/imx8mn_ddr4_evk_defconfig             |  2 ++
>  configs/imx8mn_evk_defconfig                  |  2 ++
>  configs/imx8mn_var_som_defconfig              |  2 ++
>  configs/imx8mn_venice_defconfig               |  2 ++
>  configs/imx8mp_dhcom_pdk2_defconfig           |  2 ++
>  configs/imx8mp_evk_defconfig                  |  2 ++
>  configs/imx8mp_rsb3720a1_4G_defconfig         |  2 ++
>  configs/imx8mp_rsb3720a1_6G_defconfig         |  2 ++
>  configs/imx8mp_venice_defconfig               |  2 ++
>  configs/imx8mq_cm_defconfig                   |  2 ++
>  configs/imx8mq_evk_defconfig                  |  2 ++
>  configs/imx8mq_phanbell_defconfig             |  2 ++
>  configs/imx8qm_mek_defconfig                  |  2 ++
>  configs/imx8qxp_mek_defconfig                 |  2 ++
>  configs/imx8ulp_evk_defconfig                 |  2 ++
>  configs/inet1_defconfig                       |  1 +
>  configs/inet86dz_defconfig                    |  1 +
>  configs/inet97fv2_defconfig                   |  1 +
>  configs/inet98v_rev2_defconfig                |  1 +
>  configs/inet9f_rev03_defconfig                |  1 +
>  configs/inet_q972_defconfig                   |  1 +
>  configs/jesurun_q5_defconfig                  |  1 +
>  configs/jetson-tk1_defconfig                  |  2 ++
>  configs/k2e_evm_defconfig                     |  2 ++
>  configs/k2g_evm_defconfig                     |  2 ++
>  configs/k2hk_evm_defconfig                    |  2 ++
>  configs/k2l_evm_defconfig                     |  2 ++
>  configs/khadas-edge-captain-rk3399_defconfig  |  2 ++
>  configs/khadas-edge-rk3399_defconfig          |  2 ++
>  configs/khadas-edge-v-rk3399_defconfig        |  2 ++
>  configs/koelsch_defconfig                     |  2 ++
>  configs/kontron-sl-mx6ul_defconfig            |  2 ++
>  configs/kontron-sl-mx8mm_defconfig            |  2 ++
>  configs/kontron_pitx_imx8m_defconfig          |  2 ++
>  configs/kontron_sl28_defconfig                |  2 ++
>  configs/kp_imx6q_tpc_defconfig                |  2 ++
>  configs/lager_defconfig                       |  2 ++
>  configs/leez-rk3399_defconfig                 |  2 ++
>  configs/libretech_all_h3_cc_h2_plus_defconfig |  1 +
>  configs/libretech_all_h3_cc_h3_defconfig      |  1 +
>  configs/libretech_all_h3_cc_h5_defconfig      |  1 +
>  configs/libretech_all_h3_it_h5_defconfig      |  1 +
>  configs/libretech_all_h5_cc_h5_defconfig      |  1 +
>  configs/licheepi_nano_defconfig               |  1 +
>  configs/lion-rk3368_defconfig                 |  2 ++
>  configs/liteboard_defconfig                   |  2 ++
>  configs/ls1021aiot_sdcard_defconfig           |  2 ++
>  configs/ls1021aqds_nand_defconfig             |  2 ++
>  configs/ls1021aqds_sdcard_ifc_defconfig       |  2 ++
>  configs/ls1021aqds_sdcard_qspi_defconfig      |  2 ++
>  configs/ls1021atsn_sdcard_defconfig           |  2 ++
>  ...s1021atwr_sdcard_ifc_SECURE_BOOT_defconfig |  2 ++
>  configs/ls1021atwr_sdcard_ifc_defconfig       |  2 ++
>  configs/ls1021atwr_sdcard_qspi_defconfig      |  2 ++
>  configs/ls1043aqds_nand_defconfig             |  2 ++
>  configs/ls1043aqds_sdcard_ifc_defconfig       |  2 ++
>  configs/ls1043aqds_sdcard_qspi_defconfig      |  2 ++
>  configs/ls1043ardb_nand_SECURE_BOOT_defconfig |  2 ++
>  configs/ls1043ardb_nand_defconfig             |  2 ++
>  .../ls1043ardb_sdcard_SECURE_BOOT_defconfig   |  2 ++
>  configs/ls1043ardb_sdcard_defconfig           |  2 ++
>  configs/ls1046aqds_nand_defconfig             |  2 ++
>  configs/ls1046aqds_sdcard_ifc_defconfig       |  2 ++
>  configs/ls1046aqds_sdcard_qspi_defconfig      |  2 ++
>  configs/ls1046ardb_emmc_defconfig             |  2 ++
>  configs/ls1046ardb_qspi_spl_defconfig         |  2 ++
>  .../ls1046ardb_sdcard_SECURE_BOOT_defconfig   |  2 ++
>  configs/ls1046ardb_sdcard_defconfig           |  2 ++
>  configs/ls1088aqds_sdcard_ifc_defconfig       |  2 ++
>  configs/ls1088aqds_sdcard_qspi_defconfig      |  2 ++
>  ...1088ardb_sdcard_qspi_SECURE_BOOT_defconfig |  2 ++
>  configs/ls1088ardb_sdcard_qspi_defconfig      |  2 ++
>  configs/ls2080aqds_nand_defconfig             |  2 ++
>  configs/ls2080aqds_sdcard_defconfig           |  2 ++
>  configs/ls2080ardb_nand_defconfig             |  2 ++
>  configs/m53menlo_defconfig                    |  2 ++
>  configs/maxbcm_defconfig                      |  2 ++
>  configs/mccmon6_nor_defconfig                 |  2 ++
>  configs/mccmon6_sd_defconfig                  |  2 ++
>  configs/medcom-wide_defconfig                 |  2 ++
>  configs/microblaze-generic_defconfig          |  2 ++
>  configs/miqi-rk3288_defconfig                 |  2 ++
>  configs/mixtile_loftq_defconfig               |  1 +
>  configs/mk802_a10s_defconfig                  |  1 +
>  configs/mk802_defconfig                       |  1 +
>  configs/mk802ii_defconfig                     |  1 +
>  configs/mk808_defconfig                       |  2 ++
>  configs/mt7629_rfb_defconfig                  |  2 ++
>  configs/mx6cuboxi_defconfig                   |  2 ++
>  configs/mx6memcal_defconfig                   |  2 ++
>  configs/mx6sabreauto_defconfig                |  2 ++
>  configs/mx6sabresd_defconfig                  |  2 ++
>  configs/mx6slevk_spl_defconfig                |  2 ++
>  configs/mx6ul_14x14_evk_defconfig             |  2 ++
>  configs/mx6ul_9x9_evk_defconfig               |  2 ++
>  configs/myir_mys_6ulx_defconfig               |  2 ++
>  configs/nanopc-t4-rk3399_defconfig            |  2 ++
>  configs/nanopi-m4-2gb-rk3399_defconfig        |  2 ++
>  configs/nanopi-m4-rk3399_defconfig            |  2 ++
>  configs/nanopi-m4b-rk3399_defconfig           |  2 ++
>  configs/nanopi-neo4-rk3399_defconfig          |  2 ++
>  configs/nanopi-r2s-rk3328_defconfig           |  2 ++
>  configs/nanopi-r4s-rk3399_defconfig           |  2 ++
>  configs/nanopi_a64_defconfig                  |  1 +
>  configs/nanopi_m1_defconfig                   |  1 +
>  configs/nanopi_m1_plus_defconfig              |  1 +
>  configs/nanopi_neo2_defconfig                 |  1 +
>  configs/nanopi_neo_air_defconfig              |  1 +
>  configs/nanopi_neo_defconfig                  |  1 +
>  configs/nanopi_neo_plus2_defconfig            |  1 +
>  configs/nanopi_r1s_h5_defconfig               |  1 +
>  configs/novena_defconfig                      |  2 ++
>  configs/nyan-big_defconfig                    |  2 ++
>  configs/oceanic_5205_5inmfd_defconfig         |  1 +
>  configs/odroid-go2_defconfig                  |  2 ++
>  configs/omapl138_lcdk_defconfig               |  2 ++
>  configs/openpiton_riscv64_spl_defconfig       |  2 ++
>  configs/opos6uldev_defconfig                  |  2 ++
>  configs/orangepi-rk3399_defconfig             |  2 ++
>  configs/orangepi_2_defconfig                  |  1 +
>  configs/orangepi_3_defconfig                  |  1 +
>  configs/orangepi_lite2_defconfig              |  1 +
>  configs/orangepi_lite_defconfig               |  1 +
>  configs/orangepi_one_defconfig                |  1 +
>  configs/orangepi_one_plus_defconfig           |  1 +
>  configs/orangepi_pc2_defconfig                |  1 +
>  configs/orangepi_pc_defconfig                 |  1 +
>  configs/orangepi_pc_plus_defconfig            |  1 +
>  configs/orangepi_plus2e_defconfig             |  1 +
>  configs/orangepi_plus_defconfig               |  1 +
>  configs/orangepi_prime_defconfig              |  1 +
>  configs/orangepi_r1_defconfig                 |  1 +
>  configs/orangepi_win_defconfig                |  1 +
>  configs/orangepi_zero2_defconfig              |  1 +
>  configs/orangepi_zero_defconfig               |  1 +
>  configs/orangepi_zero_plus2_defconfig         |  1 +
>  configs/orangepi_zero_plus2_h3_defconfig      |  1 +
>  configs/orangepi_zero_plus_defconfig          |  1 +
>  configs/parrot_r16_defconfig                  |  1 +
>  configs/paz00_defconfig                       |  2 ++
>  configs/pcm058_defconfig                      |  2 ++
>  configs/phycore-imx8mm_defconfig              |  2 ++
>  configs/phycore-imx8mp_defconfig              |  2 ++
>  configs/phycore-rk3288_defconfig              |  2 ++
>  configs/phycore_pcl063_defconfig              |  2 ++
>  configs/phycore_pcl063_ull_defconfig          |  2 ++
>  configs/pico-dwarf-imx6ul_defconfig           |  2 ++
>  configs/pico-dwarf-imx7d_defconfig            |  2 ++
>  configs/pico-hobbit-imx6ul_defconfig          |  2 ++
>  configs/pico-hobbit-imx7d_defconfig           |  2 ++
>  configs/pico-imx6_defconfig                   |  2 ++
>  configs/pico-imx6ul_defconfig                 |  2 ++
>  configs/pico-imx7d_bl33_defconfig             |  2 ++
>  configs/pico-imx7d_defconfig                  |  2 ++
>  configs/pico-imx8mq_defconfig                 |  2 ++
>  configs/pico-nymph-imx7d_defconfig            |  2 ++
>  configs/pico-pi-imx6ul_defconfig              |  2 ++
>  configs/pico-pi-imx7d_defconfig               |  2 ++
>  configs/pine64-lts_defconfig                  |  1 +
>  configs/pine64_plus_defconfig                 |  1 +
>  configs/pine_h64_defconfig                    |  1 +
>  configs/pinebook-pro-rk3399_defconfig         |  2 ++
>  configs/pinebook_defconfig                    |  1 +
>  configs/pinecube_defconfig                    |  1 +
>  configs/pinephone_defconfig                   |  1 +
>  configs/pinetab_defconfig                     |  1 +
>  configs/plutux_defconfig                      |  2 ++
>  configs/polaroid_mid2407pxe03_defconfig       |  1 +
>  configs/polaroid_mid2809pxe04_defconfig       |  1 +
>  configs/popmetal-rk3288_defconfig             |  2 ++
>  configs/porter_defconfig                      |  2 ++
>  configs/pov_protab2_ips9_defconfig            |  1 +
>  configs/puma-rk3399_defconfig                 |  2 ++
>  configs/px30-core-ctouch2-of10-px30_defconfig |  2 ++
>  configs/px30-core-ctouch2-px30_defconfig      |  2 ++
>  configs/px30-core-edimm2.2-px30_defconfig     |  2 ++
>  configs/q8_a13_tablet_defconfig               |  1 +
>  configs/q8_a23_tablet_800x480_defconfig       |  1 +
>  configs/q8_a33_tablet_1024x600_defconfig      |  1 +
>  configs/q8_a33_tablet_800x480_defconfig       |  1 +
>  configs/r7-tv-dongle_defconfig                |  1 +
>  configs/r8a77970_eagle_defconfig              |  2 ++
>  configs/r8a77980_condor_defconfig             |  2 ++
>  configs/r8a77990_ebisu_defconfig              |  2 ++
>  configs/r8a77995_draak_defconfig              |  2 ++
>  configs/r8a779a0_falcon_defconfig             |  2 ++
>  configs/rcar3_salvator-x_defconfig            |  2 ++
>  configs/rcar3_ulcb_defconfig                  |  2 ++
>  configs/riotboard_defconfig                   |  2 ++
>  configs/roc-cc-rk3308_defconfig               |  2 ++
>  configs/roc-cc-rk3328_defconfig               |  2 ++
>  configs/roc-pc-mezzanine-rk3399_defconfig     |  2 ++
>  configs/roc-pc-rk3399_defconfig               |  2 ++
>  configs/rock-pi-4-rk3399_defconfig            |  2 ++
>  configs/rock-pi-4c-rk3399_defconfig           |  2 ++
>  configs/rock-pi-e-rk3328_defconfig            |  2 ++
>  configs/rock-pi-n10-rk3399pro_defconfig       |  2 ++
>  configs/rock-pi-n8-rk3288_defconfig           |  2 ++
>  configs/rock2_defconfig                       |  2 ++
>  configs/rock64-rk3328_defconfig               |  2 ++
>  configs/rock960-rk3399_defconfig              |  2 ++
>  configs/rock_defconfig                        |  2 ++
>  configs/rockpro64-rk3399_defconfig            |  2 ++
>  configs/sama5d27_giantboard_defconfig         |  2 ++
>  configs/sama5d27_som1_ek_mmc1_defconfig       |  2 ++
>  configs/sama5d27_som1_ek_mmc_defconfig        |  2 ++
>  configs/sama5d27_som1_ek_qspiflash_defconfig  |  2 ++
>  configs/sama5d27_wlsom1_ek_mmc_defconfig      |  2 ++
>  .../sama5d27_wlsom1_ek_qspiflash_defconfig    |  2 ++
>  configs/sama5d2_icp_mmc_defconfig             |  2 ++
>  configs/sama5d2_xplained_emmc_defconfig       |  2 ++
>  configs/sama5d2_xplained_mmc_defconfig        |  2 ++
>  configs/sama5d2_xplained_qspiflash_defconfig  |  2 ++
>  configs/sama5d2_xplained_spiflash_defconfig   |  2 ++
>  configs/sama5d3_xplained_mmc_defconfig        |  2 ++
>  configs/sama5d3_xplained_nandflash_defconfig  |  2 ++
>  configs/sama5d3xek_mmc_defconfig              |  2 ++
>  configs/sama5d3xek_nandflash_defconfig        |  2 ++
>  configs/sama5d3xek_spiflash_defconfig         |  2 ++
>  configs/sama5d4_xplained_mmc_defconfig        |  2 ++
>  configs/sama5d4_xplained_nandflash_defconfig  |  2 ++
>  configs/sama5d4_xplained_spiflash_defconfig   |  2 ++
>  configs/sama5d4ek_mmc_defconfig               |  2 ++
>  configs/sama5d4ek_nandflash_defconfig         |  2 ++
>  configs/sama5d4ek_spiflash_defconfig          |  2 ++
>  configs/seaboard_defconfig                    |  2 ++
>  configs/seeed_npi_imx6ull_defconfig           |  2 ++
>  configs/sifive_unleashed_defconfig            |  2 ++
>  configs/sifive_unmatched_defconfig            |  2 ++
>  configs/silinux_ek874_defconfig               |  2 ++
>  configs/silk_defconfig                        |  2 ++
>  configs/smartweb_defconfig                    |  2 ++
>  configs/sniper_defconfig                      |  2 ++
>  configs/socfpga_agilex_atf_defconfig          |  2 ++
>  configs/socfpga_agilex_defconfig              |  2 ++
>  configs/socfpga_agilex_vab_defconfig          |  2 ++
>  configs/socfpga_arria10_defconfig             |  2 ++
>  configs/socfpga_arria5_defconfig              |  2 ++
>  configs/socfpga_cyclone5_defconfig            |  2 ++
>  configs/socfpga_dbm_soc1_defconfig            |  2 ++
>  configs/socfpga_de0_nano_soc_defconfig        |  2 ++
>  configs/socfpga_de10_nano_defconfig           |  2 ++
>  configs/socfpga_de1_soc_defconfig             |  2 ++
>  configs/socfpga_is1_defconfig                 |  2 ++
>  configs/socfpga_mcvevk_defconfig              |  2 ++
>  configs/socfpga_n5x_atf_defconfig             |  2 ++
>  configs/socfpga_n5x_defconfig                 |  2 ++
>  configs/socfpga_n5x_vab_defconfig             |  2 ++
>  configs/socfpga_secu1_defconfig               |  2 ++
>  configs/socfpga_sockit_defconfig              |  2 ++
>  configs/socfpga_socrates_defconfig            |  2 ++
>  configs/socfpga_sr1500_defconfig              |  2 ++
>  configs/socfpga_stratix10_atf_defconfig       |  2 ++
>  configs/socfpga_stratix10_defconfig           |  2 ++
>  configs/socfpga_vining_fpga_defconfig         |  2 ++
>  configs/sopine_baseboard_defconfig            |  1 +
>  ...stm32mp15-icore-stm32mp1-ctouch2_defconfig |  2 ++
>  ...tm32mp15-icore-stm32mp1-edimm2.2_defconfig |  2 ++
>  ...-microgea-stm32mp1-microdev2-of7_defconfig |  2 ++
>  ...mp15-microgea-stm32mp1-microdev2_defconfig |  2 ++
>  configs/stm32mp15_basic_defconfig             |  2 ++
>  configs/stm32mp15_dhcom_basic_defconfig       |  2 ++
>  configs/stm32mp15_dhcor_basic_defconfig       |  2 ++
>  configs/stout_defconfig                       |  2 ++
>  configs/sun8i_a23_evb_defconfig               |  1 +
>  configs/sunxi_Gemei_G9_defconfig              |  1 +
>  configs/syzygy_hub_defconfig                  |  2 ++
>  configs/tanix_tx6_defconfig                   |  1 +
>  configs/taurus_defconfig                      |  2 ++
>  configs/tbs_a711_defconfig                    |  1 +
>  configs/tec-ng_defconfig                      |  2 ++
>  configs/tec_defconfig                         |  2 ++
>  configs/teres_i_defconfig                     |  1 +
>  configs/theadorable_debug_defconfig           |  2 ++
>  configs/tinker-rk3288_defconfig               |  2 ++
>  configs/tinker-s-rk3288_defconfig             |  2 ++
>  configs/topic_miami_defconfig                 |  2 ++
>  configs/topic_miamilite_defconfig             |  2 ++
>  configs/topic_miamiplus_defconfig             |  2 ++
>  configs/trimslice_defconfig                   |  2 ++
>  configs/turris_omnia_defconfig                |  2 ++
>  configs/udoo_defconfig                        |  2 ++
>  configs/udoo_neo_defconfig                    |  2 ++
>  configs/uniphier_ld4_sld8_defconfig           |  2 ++
>  configs/uniphier_v7_defconfig                 |  2 ++
>  configs/variscite_dart6ul_defconfig           |  2 ++
>  configs/venice2_defconfig                     |  2 ++
>  configs/ventana_defconfig                     |  2 ++
>  configs/verdin-imx8mm_defconfig               |  2 ++
>  configs/verdin-imx8mp_defconfig               |  2 ++
>  configs/vining_2000_defconfig                 |  2 ++
>  configs/vyasa-rk3288_defconfig                |  2 ++
>  configs/wandboard_defconfig                   |  2 ++
>  configs/work_92105_defconfig                  |  2 ++
>  configs/x530_defconfig                        |  2 ++
>  configs/xilinx_zynq_virt_defconfig            |  2 ++
>  configs/xilinx_zynqmp_mini_emmc0_defconfig    |  2 ++
>  configs/xilinx_zynqmp_mini_emmc1_defconfig    |  2 ++
>  configs/xilinx_zynqmp_mini_qspi_defconfig     |  2 ++
>  configs/xilinx_zynqmp_virt_defconfig          |  2 ++
>  configs/zeropi_defconfig                      |  1 +
>  configs/zynq_cse_nand_defconfig               |  2 ++
>  configs/zynq_cse_nor_defconfig                |  2 ++
>  configs/zynq_cse_qspi_defconfig               |  2 ++
>  include/configs/alt.h                         |  3 --
>  include/configs/at91sam9m10g45ek.h            |  3 --
>  include/configs/at91sam9n12ek.h               |  1 -
>  include/configs/at91sam9x5ek.h                |  1 -
>  include/configs/capricorn-common.h            |  1 -
>  include/configs/cgtqmx8.h                     |  1 -
>  include/configs/ci20.h                        |  1 -
>  include/configs/clearfog.h                    |  2 --
>  include/configs/controlcenterdc.h             |  2 --
>  include/configs/corvus.h                      |  1 -
>  include/configs/da850evm.h                    |  1 -
>  include/configs/db-88f6720.h                  |  2 --
>  include/configs/db-88f6820-amc.h              |  2 --
>  include/configs/db-88f6820-gp.h               |  2 --
>  include/configs/db-mv784mp-gp.h               |  2 --
>  include/configs/devkit3250.h                  | 12 -------
>  include/configs/ds414.h                       |  2 --
>  include/configs/edminiv2.h                    |  1 -
>  include/configs/espresso7420.h                |  1 -
>  .../configs/gardena-smart-gateway-at91sam.h   |  1 -
>  include/configs/gose.h                        |  3 --
>  include/configs/helios4.h                     |  2 --
>  include/configs/imx6_spl.h                    |  2 --
>  include/configs/imx7_spl.h                    |  1 -
>  include/configs/imx8mm-cl-iot-gate.h          |  1 -
>  include/configs/imx8mm_beacon.h               |  1 -
>  include/configs/imx8mm_data_modul_edm_sbc.h   |  1 -
>  include/configs/imx8mm_evk.h                  |  1 -
>  include/configs/imx8mm_icore_mx8mm.h          |  1 -
>  include/configs/imx8mm_venice.h               |  1 -
>  include/configs/imx8mn_beacon.h               |  1 -
>  include/configs/imx8mn_bsh_smm_s2_common.h    |  1 -
>  include/configs/imx8mn_evk.h                  |  1 -
>  include/configs/imx8mn_var_som.h              |  1 -
>  include/configs/imx8mn_venice.h               |  1 -
>  include/configs/imx8mp_dhcom_pdk2.h           |  1 -
>  include/configs/imx8mp_evk.h                  |  1 -
>  include/configs/imx8mp_rsb3720.h              |  1 -
>  include/configs/imx8mp_venice.h               |  1 -
>  include/configs/imx8mq_cm.h                   |  1 -
>  include/configs/imx8mq_evk.h                  |  1 -
>  include/configs/imx8mq_phanbell.h             |  1 -
>  include/configs/imx8qm_mek.h                  |  1 -
>  include/configs/imx8qxp_mek.h                 |  1 -
>  include/configs/imx8ulp_evk.h                 |  1 -
>  include/configs/koelsch.h                     |  1 -
>  include/configs/kontron-sl-mx8mm.h            |  1 -
>  include/configs/kontron_pitx_imx8m.h          |  1 -
>  include/configs/kontron_sl28.h                |  1 -
>  include/configs/lager.h                       |  1 -
>  include/configs/ls1021aiot.h                  |  2 --
>  include/configs/ls1021aqds.h                  |  4 ---
>  include/configs/ls1021atsn.h                  |  2 --
>  include/configs/ls1021atwr.h                  |  2 --
>  include/configs/ls1043a_common.h              |  4 ---
>  include/configs/ls1046a_common.h              |  3 --
>  include/configs/ls1088a_common.h              |  1 -
>  include/configs/ls2080a_common.h              |  1 -
>  include/configs/m53menlo.h                    |  1 -
>  include/configs/maxbcm.h                      |  2 --
>  include/configs/microblaze-generic.h          |  3 --
>  include/configs/mt7629.h                      |  1 -
>  include/configs/omapl138_lcdk.h               |  1 -
>  include/configs/openpiton-riscv64.h           |  2 --
>  include/configs/phycore_imx8mm.h              |  1 -
>  include/configs/phycore_imx8mp.h              |  1 -
>  include/configs/pico-imx8mq.h                 |  1 -
>  include/configs/pm9g45.h                      |  1 -
>  include/configs/porter.h                      |  1 -
>  include/configs/px30_common.h                 |  1 -
>  include/configs/rcar-gen3-common.h            |  1 -
>  include/configs/rk3036_common.h               |  2 --
>  include/configs/rk3066_common.h               |  2 --
>  include/configs/rk3188_common.h               |  2 --
>  include/configs/rk3288_common.h               |  2 --
>  include/configs/rk3308_common.h               |  1 -
>  include/configs/rk3328_common.h               |  1 -
>  include/configs/rk3368_common.h               |  1 -
>  include/configs/rk3399_common.h               |  2 --
>  include/configs/rk3568_common.h               |  1 -
>  include/configs/sam9x60_curiosity.h           |  2 --
>  include/configs/sama5d27_som1_ek.h            |  1 -
>  include/configs/sama5d27_wlsom1_ek.h          |  1 -
>  include/configs/sama5d2_icp.h                 |  2 --
>  include/configs/sama5d2_xplained.h            |  1 -
>  include/configs/sama5d3_xplained.h            |  2 --
>  include/configs/sama5d3xek.h                  |  2 --
>  include/configs/sama5d4_xplained.h            |  2 --
>  include/configs/sama5d4ek.h                   |  2 --
>  include/configs/sama7g5ek.h                   |  2 --
>  include/configs/sifive-unleashed.h            |  3 --
>  include/configs/sifive-unmatched.h            |  3 --
>  include/configs/silk.h                        |  1 -
>  include/configs/smartweb.h                    |  1 -
>  include/configs/sniper.h                      |  1 -
>  include/configs/socfpga_common.h              |  4 ---
>  include/configs/socfpga_soc64_common.h        |  3 --
>  include/configs/stm32mp15_common.h            |  2 --
>  include/configs/stout.h                       |  1 -
>  include/configs/sunxi-common.h                |  2 --
>  include/configs/taurus.h                      |  1 -
>  include/configs/tegra114-common.h             |  1 -
>  include/configs/tegra124-common.h             |  1 -
>  include/configs/tegra20-common.h              |  1 -
>  include/configs/tegra30-common.h              |  1 -
>  include/configs/theadorable.h                 |  2 --
>  include/configs/ti_armv7_keystone2.h          |  4 ---
>  include/configs/turris_omnia.h                |  2 --
>  include/configs/uniphier.h                    |  1 -
>  include/configs/verdin-imx8mm.h               |  1 -
>  include/configs/verdin-imx8mp.h               |  1 -
>  include/configs/work_92105.h                  |  1 -
>  include/configs/x530.h                        |  2 --
>  include/configs/xea.h                         |  1 -
>  include/configs/xilinx_zynqmp.h               |  2 --
>  include/configs/zynq-common.h                 |  1 -
>  604 files changed, 829 insertions(+), 220 deletions(-)
>
> diff --git a/README b/README
> index 02a2a3ff8824..360d357bfbc1 100644
> --- a/README
> +++ b/README
> @@ -293,33 +293,6 @@ board_init_r():
>
>         SPL-specific notes:
>         - stack is optionally in SDRAM, if CONFIG_SPL_STACK_R is defined and
> -               CONFIG_SPL_STACK_R_ADDR points into SDRAM
> -       - preloader_console_init() can be called here - typically this is
> -               done by selecting CONFIG_SPL_BOARD_INIT and then supplying a
> -               spl_board_init() function containing this call
> -       - loads U-Boot or (in falcon mode) Linux
> -
> -
> -Configuration Options:
> -----------------------
> -
> -Configuration depends on the combination of board and CPU type; all
> -such information is kept in a configuration file
> -"include/configs/<board_name>.h".
> -
> -Example: For a TQM823L module, all configuration settings are in
> -"include/configs/TQM823L.h".
> -
> -
> -Many of the options are named exactly as the corresponding Linux
> -kernel configuration options. The intention is to make it easier to
> -build a config tool - later.
> -
> -- ARM Platform Bus Type(CCI):
> -               CoreLink Cache Coherent Interconnect (CCI) is ARM BUS which
> -               provides full cache coherency between two clusters of multi-core
> -               CPUs and I/O coherency for devices and I/O masters
> -
>                 CONFIG_SYS_FSL_HAS_CCI400
>
>                 Defined For SoC that has cache coherent interconnect
> @@ -1659,9 +1632,6 @@ The following options need to be configured:
>                 CONFIG_SPL_BSS_START_ADDR
>                 Link address for the BSS within the SPL binary.
>
> -               CONFIG_SPL_STACK
> -               Adress of the start of the stack SPL will use
> -
>                 CONFIG_SPL_PANIC_ON_RAW_IMAGE
>                 When defined, SPL will panic() if the image it has
>                 loaded does not have a signature.
> @@ -1675,8 +1645,6 @@ The following options need to be configured:
>                 CONFIG_SPL_RELOC_STACK
>                 Adress of the start of the stack SPL will use after
>                 relocation.  If unspecified, this is equal to
> -               CONFIG_SPL_STACK.
> -
>                 CONFIG_SYS_SPL_MALLOC_START
>                 Starting address of the malloc pool used in SPL.
>                 When this option is set the full malloc is used in SPL and
> diff --git a/arch/microblaze/cpu/start.S b/arch/microblaze/cpu/start.S
> index 645f7cb0389d..25e9968e4c65 100644
> --- a/arch/microblaze/cpu/start.S
> +++ b/arch/microblaze/cpu/start.S
> @@ -19,7 +19,7 @@ _start:
>         mts     rslr, r8
>
>  #if defined(CONFIG_SPL_BUILD)
> -       addi    r1, r0, CONFIG_SPL_STACK_ADDR
> +       addi    r1, r0, CONFIG_SPL_STACK
>  #else
>         addi    r1, r0, CONFIG_SYS_INIT_SP_OFFSET
>  #endif
> diff --git a/common/spl/Kconfig b/common/spl/Kconfig
> index 3cee3c323e84..89288797513f 100644
> --- a/common/spl/Kconfig
> +++ b/common/spl/Kconfig
> @@ -357,6 +357,24 @@ config TPL_SYS_MALLOC_SIMPLE
>           this will make the TPL binary smaller at the cost of more heap
>           usage as the *_simple malloc functions do not re-use free-ed mem.
>
> +config SPL_SHARES_INIT_SP_ADDR
> +       bool "SPL and U-Boot use the same initial stack pointer location"
> +       depends on (ARM || ARCH_JZ47XX || MICROBLAZE || RISCV) && SPL_FRAMEWORK
> +       default n if ARCH_SUNXI
> +       default y
> +       help
> +         In many cases, we can use the same initial stack pointer address for
> +         both SPL and U-Boot itself.  If you need to specify a different address
> +         however, say N here and then set a different value in CONFIG_SPL_STACK.
> +
> +config SPL_STACK
> +       hex "Initial stack pointer location"
> +       depends on (ARM || ARCH_JZ47XX || MICROBLAZE || RISCV) && SPL_FRAMEWORK
> +       depends on !SPL_SHARES_INIT_SP_ADDR
> +       help
> +         Address of the start of the stack SPL will use before SDRAM is
> +         initialized.
> +
>  config SPL_STACK_R
>         bool "Enable SDRAM location for SPL stack"
>         help
> diff --git a/configs/A10-OLinuXino-Lime_defconfig b/configs/A10-OLinuXino-Lime_defconfig
> index 07e6e3f00993..026668b0bd06 100644
> --- a/configs/A10-OLinuXino-Lime_defconfig
> +++ b/configs/A10-OLinuXino-Lime_defconfig
> @@ -11,6 +11,7 @@ CONFIG_I2C1_ENABLE=y
>  CONFIG_SATAPWR="PC3"
>  CONFIG_AHCI=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SCSI_AHCI=y
> diff --git a/configs/A10s-OLinuXino-M_defconfig b/configs/A10s-OLinuXino-M_defconfig
> index 2aeaffacd0c8..7e9b92ee5ee4 100644
> --- a/configs/A10s-OLinuXino-M_defconfig
> +++ b/configs/A10s-OLinuXino-M_defconfig
> @@ -9,6 +9,7 @@ CONFIG_MMC1_CD_PIN="PG13"
>  CONFIG_MMC_SUNXI_SLOT_EXTRA=1
>  CONFIG_USB1_VBUS_PIN="PB10"
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SYS_I2C_MVTWSI=y
> diff --git a/configs/A13-OLinuXinoM_defconfig b/configs/A13-OLinuXinoM_defconfig
> index 4f39d70f8156..625a331e4456 100644
> --- a/configs/A13-OLinuXinoM_defconfig
> +++ b/configs/A13-OLinuXinoM_defconfig
> @@ -13,6 +13,7 @@ CONFIG_VIDEO_VGA_VIA_LCD_FORCE_SYNC_ACTIVE_HIGH=y
>  CONFIG_VIDEO_LCD_POWER="PB10"
>  CONFIG_VIDEO_LCD_BL_PWM="PB2"
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SYS_I2C_MVTWSI=y
>  CONFIG_SYS_I2C_SLAVE=0x7f
> diff --git a/configs/A13-OLinuXino_defconfig b/configs/A13-OLinuXino_defconfig
> index 0746061317bc..5e0396c150fa 100644
> --- a/configs/A13-OLinuXino_defconfig
> +++ b/configs/A13-OLinuXino_defconfig
> @@ -15,6 +15,7 @@ CONFIG_VIDEO_VGA_VIA_LCD_FORCE_SYNC_ACTIVE_HIGH=y
>  CONFIG_VIDEO_LCD_POWER="AXP0-0"
>  CONFIG_VIDEO_LCD_BL_PWM="PB2"
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_CMD_DFU=y
> diff --git a/configs/A20-OLinuXino-Lime2-eMMC_defconfig b/configs/A20-OLinuXino-Lime2-eMMC_defconfig
> index 45f9e9e07d04..e0db1e673882 100644
> --- a/configs/A20-OLinuXino-Lime2-eMMC_defconfig
> +++ b/configs/A20-OLinuXino-Lime2-eMMC_defconfig
> @@ -13,6 +13,7 @@ CONFIG_SATAPWR="PC3"
>  CONFIG_SPL_SPI_SUNXI=y
>  CONFIG_AHCI=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_CMD_DFU=y
> diff --git a/configs/A20-OLinuXino-Lime2_defconfig b/configs/A20-OLinuXino-Lime2_defconfig
> index 187d8a5e6b6d..a78cbfb1391a 100644
> --- a/configs/A20-OLinuXino-Lime2_defconfig
> +++ b/configs/A20-OLinuXino-Lime2_defconfig
> @@ -11,6 +11,7 @@ CONFIG_I2C1_ENABLE=y
>  CONFIG_SATAPWR="PC3"
>  CONFIG_AHCI=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_CMD_DFU=y
> diff --git a/configs/A20-OLinuXino-Lime_defconfig b/configs/A20-OLinuXino-Lime_defconfig
> index 1964fb6aa3de..da3532ccc463 100644
> --- a/configs/A20-OLinuXino-Lime_defconfig
> +++ b/configs/A20-OLinuXino-Lime_defconfig
> @@ -9,6 +9,7 @@ CONFIG_I2C1_ENABLE=y
>  CONFIG_SATAPWR="PC3"
>  CONFIG_AHCI=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SCSI_AHCI=y
> diff --git a/configs/A20-OLinuXino_MICRO-eMMC_defconfig b/configs/A20-OLinuXino_MICRO-eMMC_defconfig
> index e4892cc5176e..0563a5188e65 100644
> --- a/configs/A20-OLinuXino_MICRO-eMMC_defconfig
> +++ b/configs/A20-OLinuXino_MICRO-eMMC_defconfig
> @@ -11,6 +11,7 @@ CONFIG_VIDEO_VGA=y
>  CONFIG_SATAPWR="PB8"
>  CONFIG_AHCI=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SCSI_AHCI=y
> diff --git a/configs/A20-OLinuXino_MICRO_defconfig b/configs/A20-OLinuXino_MICRO_defconfig
> index e491e73ccba8..4993cf7d2d71 100644
> --- a/configs/A20-OLinuXino_MICRO_defconfig
> +++ b/configs/A20-OLinuXino_MICRO_defconfig
> @@ -12,6 +12,7 @@ CONFIG_VIDEO_VGA=y
>  CONFIG_SATAPWR="PB8"
>  CONFIG_AHCI=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SCSI_AHCI=y
> diff --git a/configs/A20-Olimex-SOM-EVB_defconfig b/configs/A20-Olimex-SOM-EVB_defconfig
> index 3685a93ca50a..0db97ae8415a 100644
> --- a/configs/A20-Olimex-SOM-EVB_defconfig
> +++ b/configs/A20-Olimex-SOM-EVB_defconfig
> @@ -12,6 +12,7 @@ CONFIG_USB0_VBUS_DET="PH5"
>  CONFIG_SATAPWR="PC3"
>  CONFIG_AHCI=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SCSI_AHCI=y
> diff --git a/configs/A20-Olimex-SOM204-EVB-eMMC_defconfig b/configs/A20-Olimex-SOM204-EVB-eMMC_defconfig
> index 24294daaaf8b..91d29e44469b 100644
> --- a/configs/A20-Olimex-SOM204-EVB-eMMC_defconfig
> +++ b/configs/A20-Olimex-SOM204-EVB-eMMC_defconfig
> @@ -13,6 +13,7 @@ CONFIG_SATAPWR="PC3"
>  CONFIG_GMAC_TX_DELAY=4
>  CONFIG_AHCI=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SCSI_AHCI=y
> diff --git a/configs/A20-Olimex-SOM204-EVB_defconfig b/configs/A20-Olimex-SOM204-EVB_defconfig
> index 5dd6f77b7b6b..893f2e627d5c 100644
> --- a/configs/A20-Olimex-SOM204-EVB_defconfig
> +++ b/configs/A20-Olimex-SOM204-EVB_defconfig
> @@ -12,6 +12,7 @@ CONFIG_SATAPWR="PC3"
>  CONFIG_GMAC_TX_DELAY=4
>  CONFIG_AHCI=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SCSI_AHCI=y
> diff --git a/configs/A33-OLinuXino_defconfig b/configs/A33-OLinuXino_defconfig
> index 786fc6cf376b..c9eec1f88790 100644
> --- a/configs/A33-OLinuXino_defconfig
> +++ b/configs/A33-OLinuXino_defconfig
> @@ -16,6 +16,7 @@ CONFIG_VIDEO_LCD_DCLK_PHASE=0
>  CONFIG_VIDEO_LCD_BL_EN="PB2"
>  CONFIG_VIDEO_LCD_BL_PWM="PH0"
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_AXP_DCDC1_VOLT=3300
>  CONFIG_USB_MUSB_HOST=y
> diff --git a/configs/Ainol_AW1_defconfig b/configs/Ainol_AW1_defconfig
> index 89cad5d6c784..8cd38f7905bb 100644
> --- a/configs/Ainol_AW1_defconfig
> +++ b/configs/Ainol_AW1_defconfig
> @@ -14,6 +14,7 @@ CONFIG_VIDEO_LCD_POWER="PH8"
>  CONFIG_VIDEO_LCD_BL_EN="PH7"
>  CONFIG_VIDEO_LCD_BL_PWM="PB2"
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SYS_I2C_MVTWSI=y
> diff --git a/configs/Ampe_A76_defconfig b/configs/Ampe_A76_defconfig
> index b00392437094..68707ed3e951 100644
> --- a/configs/Ampe_A76_defconfig
> +++ b/configs/Ampe_A76_defconfig
> @@ -15,6 +15,7 @@ CONFIG_VIDEO_LCD_POWER="AXP0-0"
>  CONFIG_VIDEO_LCD_BL_EN="AXP0-1"
>  CONFIG_VIDEO_LCD_BL_PWM="PB2"
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SYS_I2C_MVTWSI=y
> diff --git a/configs/Auxtek-T003_defconfig b/configs/Auxtek-T003_defconfig
> index 0f38a85f9f8c..703df186b27f 100644
> --- a/configs/Auxtek-T003_defconfig
> +++ b/configs/Auxtek-T003_defconfig
> @@ -8,6 +8,7 @@ CONFIG_DRAM_EMR1=0
>  CONFIG_USB1_VBUS_PIN="PB10"
>  CONFIG_VIDEO_COMPOSITE=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SYS_I2C_MVTWSI=y
> diff --git a/configs/Auxtek-T004_defconfig b/configs/Auxtek-T004_defconfig
> index f201bd108197..a8d236eaf9d9 100644
> --- a/configs/Auxtek-T004_defconfig
> +++ b/configs/Auxtek-T004_defconfig
> @@ -6,6 +6,7 @@ CONFIG_MACH_SUN5I=y
>  CONFIG_DRAM_CLK=432
>  CONFIG_USB1_VBUS_PIN="PG13"
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SYS_I2C_MVTWSI=y
> diff --git a/configs/Bananapi_M2_Ultra_defconfig b/configs/Bananapi_M2_Ultra_defconfig
> index 79eb3ede7725..7d9c688171d4 100644
> --- a/configs/Bananapi_M2_Ultra_defconfig
> +++ b/configs/Bananapi_M2_Ultra_defconfig
> @@ -12,6 +12,7 @@ CONFIG_USB2_VBUS_PIN="PH23"
>  # CONFIG_HAS_ARMV7_SECURE_BASE is not set
>  CONFIG_AHCI=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SCSI_AHCI=y
> diff --git a/configs/Bananapi_defconfig b/configs/Bananapi_defconfig
> index f1b0b6da8f2f..6cc2d5b64720 100644
> --- a/configs/Bananapi_defconfig
> +++ b/configs/Bananapi_defconfig
> @@ -9,6 +9,7 @@ CONFIG_VIDEO_COMPOSITE=y
>  CONFIG_GMAC_TX_DELAY=3
>  CONFIG_AHCI=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_NETCONSOLE=y
> diff --git a/configs/Bananapi_m2m_defconfig b/configs/Bananapi_m2m_defconfig
> index ba26aa1861a3..6a07f26c02c4 100644
> --- a/configs/Bananapi_m2m_defconfig
> +++ b/configs/Bananapi_m2m_defconfig
> @@ -10,6 +10,7 @@ CONFIG_MMC0_CD_PIN="PB4"
>  CONFIG_MMC_SUNXI_SLOT_EXTRA=2
>  CONFIG_USB0_ID_DET="PH8"
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_FASTBOOT_CMD_OEM_FORMAT=y
>  CONFIG_USB_EHCI_HCD=y
> diff --git a/configs/Bananapro_defconfig b/configs/Bananapro_defconfig
> index 9214a9b69604..19b644613a6c 100644
> --- a/configs/Bananapro_defconfig
> +++ b/configs/Bananapro_defconfig
> @@ -11,6 +11,7 @@ CONFIG_VIDEO_COMPOSITE=y
>  CONFIG_GMAC_TX_DELAY=3
>  CONFIG_AHCI=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_NETCONSOLE=y
> diff --git a/configs/CHIP_defconfig b/configs/CHIP_defconfig
> index be092cd0949d..40d2c5b668af 100644
> --- a/configs/CHIP_defconfig
> +++ b/configs/CHIP_defconfig
> @@ -7,6 +7,7 @@ CONFIG_DRAM_TIMINGS_DDR3_800E_1066G_1333J=y
>  CONFIG_USB0_VBUS_PIN="PB10"
>  CONFIG_VIDEO_COMPOSITE=y
>  CONFIG_CHIP_DIP_SCAN=y
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_CMD_DFU=y
> diff --git a/configs/CHIP_pro_defconfig b/configs/CHIP_pro_defconfig
> index 16456c1dea54..90168010bb8e 100644
> --- a/configs/CHIP_pro_defconfig
> +++ b/configs/CHIP_pro_defconfig
> @@ -5,6 +5,7 @@ CONFIG_SPL=y
>  CONFIG_MACH_SUN5I=y
>  CONFIG_DRAM_TIMINGS_DDR3_800E_1066G_1333J=y
>  CONFIG_USB0_VBUS_PIN="PB10"
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  # CONFIG_CMD_FLASH is not set
> diff --git a/configs/CSQ_CS908_defconfig b/configs/CSQ_CS908_defconfig
> index f79bc78f24d6..49be3fc4a2d2 100644
> --- a/configs/CSQ_CS908_defconfig
> +++ b/configs/CSQ_CS908_defconfig
> @@ -7,6 +7,7 @@ CONFIG_DRAM_CLK=432
>  CONFIG_USB1_VBUS_PIN=""
>  CONFIG_USB2_VBUS_PIN=""
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_PHY_REALTEK=y
>  CONFIG_ETH_DESIGNWARE=y
> diff --git a/configs/Chuwi_V7_CW0825_defconfig b/configs/Chuwi_V7_CW0825_defconfig
> index d517ab9a7ca4..b59d1786e6ef 100644
> --- a/configs/Chuwi_V7_CW0825_defconfig
> +++ b/configs/Chuwi_V7_CW0825_defconfig
> @@ -14,6 +14,7 @@ CONFIG_VIDEO_LCD_BL_EN="PH7"
>  CONFIG_VIDEO_LCD_BL_PWM="PB2"
>  CONFIG_VIDEO_LCD_PANEL_HITACHI_TX18D42VM=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SYS_I2C_MVTWSI=y
> diff --git a/configs/Colombus_defconfig b/configs/Colombus_defconfig
> index 5f1946061218..24b55bfa8cc9 100644
> --- a/configs/Colombus_defconfig
> +++ b/configs/Colombus_defconfig
> @@ -15,6 +15,7 @@ CONFIG_VIDEO_LCD_BL_EN="PM1"
>  CONFIG_VIDEO_LCD_BL_PWM="PH13"
>  CONFIG_VIDEO_LCD_PANEL_EDP_4_LANE_1620M_VIA_ANX9804=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SPL_SYS_I2C_LEGACY=y
>  CONFIG_SYS_I2C_MVTWSI=y
> diff --git a/configs/Cubieboard2_defconfig b/configs/Cubieboard2_defconfig
> index 0be8a07aa62c..794d6668d2f8 100644
> --- a/configs/Cubieboard2_defconfig
> +++ b/configs/Cubieboard2_defconfig
> @@ -8,6 +8,7 @@ CONFIG_MMC0_CD_PIN="PH1"
>  CONFIG_SATAPWR="PB8"
>  CONFIG_AHCI=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SCSI_AHCI=y
> diff --git a/configs/Cubieboard4_defconfig b/configs/Cubieboard4_defconfig
> index 82b3ac10f965..928299e8a513 100644
> --- a/configs/Cubieboard4_defconfig
> +++ b/configs/Cubieboard4_defconfig
> @@ -12,6 +12,7 @@ CONFIG_USB0_ID_DET="PH16"
>  CONFIG_USB1_VBUS_PIN="PH14"
>  CONFIG_USB3_VBUS_PIN="PH15"
>  CONFIG_AXP_GPIO=y
> +CONFIG_SPL_STACK=0x18000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SYS_I2C_SUN8I_RSB=y
>  CONFIG_AXP809_POWER=y
> diff --git a/configs/Cubieboard_defconfig b/configs/Cubieboard_defconfig
> index 31d4fb4709fb..1027c5e3bf95 100644
> --- a/configs/Cubieboard_defconfig
> +++ b/configs/Cubieboard_defconfig
> @@ -8,6 +8,7 @@ CONFIG_MMC0_CD_PIN="PH1"
>  CONFIG_SATAPWR="PB8"
>  CONFIG_AHCI=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SCSI_AHCI=y
> diff --git a/configs/Cubietruck_defconfig b/configs/Cubietruck_defconfig
> index fc692ff761a7..560248dc5b17 100644
> --- a/configs/Cubietruck_defconfig
> +++ b/configs/Cubietruck_defconfig
> @@ -13,6 +13,7 @@ CONFIG_SATAPWR="PH12"
>  CONFIG_GMAC_TX_DELAY=1
>  CONFIG_AHCI=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_CMD_DFU=y
> diff --git a/configs/Cubietruck_plus_defconfig b/configs/Cubietruck_plus_defconfig
> index cbd77cfc0294..8119b8b9cf6b 100644
> --- a/configs/Cubietruck_plus_defconfig
> +++ b/configs/Cubietruck_plus_defconfig
> @@ -16,6 +16,7 @@ CONFIG_I2C0_ENABLE=y
>  CONFIG_AXP_GPIO=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
>  CONFIG_CONSOLE_MUX=y
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SPL_SYS_I2C_LEGACY=y
>  CONFIG_SYS_I2C_MVTWSI=y
> diff --git a/configs/Empire_electronix_d709_defconfig b/configs/Empire_electronix_d709_defconfig
> index d1b76663fbcc..0187b896f873 100644
> --- a/configs/Empire_electronix_d709_defconfig
> +++ b/configs/Empire_electronix_d709_defconfig
> @@ -16,6 +16,7 @@ CONFIG_VIDEO_LCD_POWER="AXP0-0"
>  CONFIG_VIDEO_LCD_BL_EN="AXP0-1"
>  CONFIG_VIDEO_LCD_BL_PWM="PB2"
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SYS_I2C_MVTWSI=y
> diff --git a/configs/Empire_electronix_m712_defconfig b/configs/Empire_electronix_m712_defconfig
> index e2d8a21a64a5..6570b97ca4c6 100644
> --- a/configs/Empire_electronix_m712_defconfig
> +++ b/configs/Empire_electronix_m712_defconfig
> @@ -15,6 +15,7 @@ CONFIG_VIDEO_LCD_POWER="AXP0-0"
>  CONFIG_VIDEO_LCD_BL_EN="AXP0-1"
>  CONFIG_VIDEO_LCD_BL_PWM="PB2"
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SYS_I2C_MVTWSI=y
> diff --git a/configs/Hummingbird_A31_defconfig b/configs/Hummingbird_A31_defconfig
> index 20144b230287..3afe4c56ae4d 100644
> --- a/configs/Hummingbird_A31_defconfig
> +++ b/configs/Hummingbird_A31_defconfig
> @@ -9,6 +9,7 @@ CONFIG_USB2_VBUS_PIN=""
>  CONFIG_VIDEO_VGA_VIA_LCD=y
>  CONFIG_VIDEO_VGA_EXTERNAL_DAC_EN="PH25"
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_PHY_REALTEK=y
>  CONFIG_ETH_DESIGNWARE=y
> diff --git a/configs/Hyundai_A7HD_defconfig b/configs/Hyundai_A7HD_defconfig
> index 0c655b24e76c..8bf7d1efba61 100644
> --- a/configs/Hyundai_A7HD_defconfig
> +++ b/configs/Hyundai_A7HD_defconfig
> @@ -15,6 +15,7 @@ CONFIG_VIDEO_LCD_BL_PWM="PB2"
>  # CONFIG_VIDEO_LCD_BL_PWM_ACTIVE_LOW is not set
>  CONFIG_VIDEO_LCD_PANEL_LVDS=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SYS_I2C_MVTWSI=y
> diff --git a/configs/Itead_Ibox_A20_defconfig b/configs/Itead_Ibox_A20_defconfig
> index b8f1350c8789..42cb24e88ef7 100644
> --- a/configs/Itead_Ibox_A20_defconfig
> +++ b/configs/Itead_Ibox_A20_defconfig
> @@ -8,6 +8,7 @@ CONFIG_MMC0_CD_PIN="PH1"
>  CONFIG_SATAPWR="PB8"
>  CONFIG_AHCI=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SCSI_AHCI=y
> diff --git a/configs/Lamobo_R1_defconfig b/configs/Lamobo_R1_defconfig
> index 8b25863b30c8..d4692f8184a5 100644
> --- a/configs/Lamobo_R1_defconfig
> +++ b/configs/Lamobo_R1_defconfig
> @@ -10,6 +10,7 @@ CONFIG_SATAPWR="PB3"
>  CONFIG_GMAC_TX_DELAY=4
>  CONFIG_AHCI=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SCSI_AHCI=y
> diff --git a/configs/LicheePi_Zero_defconfig b/configs/LicheePi_Zero_defconfig
> index 5bc36f29680a..2e0b0b71e140 100644
> --- a/configs/LicheePi_Zero_defconfig
> +++ b/configs/LicheePi_Zero_defconfig
> @@ -5,5 +5,6 @@ CONFIG_SPL=y
>  CONFIG_MACH_SUN8I_V3S=y
>  CONFIG_DRAM_CLK=360
>  # CONFIG_HAS_ARMV7_SECURE_BASE is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SYS_PBSIZE=1024
>  # CONFIG_NETDEVICES is not set
> diff --git a/configs/Linksprite_pcDuino3_Nano_defconfig b/configs/Linksprite_pcDuino3_Nano_defconfig
> index 37726bedf89b..dbafdd5bd80c 100644
> --- a/configs/Linksprite_pcDuino3_Nano_defconfig
> +++ b/configs/Linksprite_pcDuino3_Nano_defconfig
> @@ -10,6 +10,7 @@ CONFIG_SATAPWR="PH2"
>  CONFIG_GMAC_TX_DELAY=3
>  CONFIG_AHCI=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SCSI_AHCI=y
> diff --git a/configs/Linksprite_pcDuino3_defconfig b/configs/Linksprite_pcDuino3_defconfig
> index 4545bdcd999d..ff6a4e8b3794 100644
> --- a/configs/Linksprite_pcDuino3_defconfig
> +++ b/configs/Linksprite_pcDuino3_defconfig
> @@ -8,6 +8,7 @@ CONFIG_DRAM_ZQ=122
>  CONFIG_SATAPWR="PH2"
>  CONFIG_AHCI=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SCSI_AHCI=y
> diff --git a/configs/Linksprite_pcDuino_defconfig b/configs/Linksprite_pcDuino_defconfig
> index c671bab2e7ae..279641551b30 100644
> --- a/configs/Linksprite_pcDuino_defconfig
> +++ b/configs/Linksprite_pcDuino_defconfig
> @@ -6,6 +6,7 @@ CONFIG_MACH_SUN4I=y
>  CONFIG_USB1_VBUS_PIN=""
>  CONFIG_USB2_VBUS_PIN=""
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SYS_I2C_MVTWSI=y
> diff --git a/configs/MK808C_defconfig b/configs/MK808C_defconfig
> index f4d31b392405..4e678bdf051f 100644
> --- a/configs/MK808C_defconfig
> +++ b/configs/MK808C_defconfig
> @@ -5,6 +5,7 @@ CONFIG_SPL=y
>  CONFIG_MACH_SUN7I=y
>  CONFIG_DRAM_CLK=384
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SYS_I2C_MVTWSI=y
> diff --git a/configs/MSI_Primo73_defconfig b/configs/MSI_Primo73_defconfig
> index 5a43945596a6..7a4b224bf2a1 100644
> --- a/configs/MSI_Primo73_defconfig
> +++ b/configs/MSI_Primo73_defconfig
> @@ -10,6 +10,7 @@ CONFIG_VIDEO_LCD_POWER="PH8"
>  CONFIG_VIDEO_LCD_BL_EN="PH7"
>  CONFIG_VIDEO_LCD_BL_PWM="PB2"
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SYS_I2C_MVTWSI=y
> diff --git a/configs/MSI_Primo81_defconfig b/configs/MSI_Primo81_defconfig
> index de1b6884b8f9..bb820fd0a39f 100644
> --- a/configs/MSI_Primo81_defconfig
> +++ b/configs/MSI_Primo81_defconfig
> @@ -13,6 +13,7 @@ CONFIG_VIDEO_LCD_BL_EN="PA25"
>  CONFIG_VIDEO_LCD_BL_PWM="PH13"
>  CONFIG_VIDEO_LCD_PANEL_MIPI_4_LANE_513_MBPS_VIA_SSD2828=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_AXP_DLDO1_VOLT=3300
>  # CONFIG_REQUIRE_SERIAL_CONSOLE is not set
> diff --git a/configs/Marsboard_A10_defconfig b/configs/Marsboard_A10_defconfig
> index 8ba587db9cbd..c88cfd6aa321 100644
> --- a/configs/Marsboard_A10_defconfig
> +++ b/configs/Marsboard_A10_defconfig
> @@ -5,6 +5,7 @@ CONFIG_SPL=y
>  CONFIG_MACH_SUN4I=y
>  CONFIG_AHCI=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SCSI_AHCI=y
>  CONFIG_SYS_I2C_MVTWSI=y
> diff --git a/configs/Mele_A1000G_quad_defconfig b/configs/Mele_A1000G_quad_defconfig
> index 13f418fb0cc3..8ee6791408a0 100644
> --- a/configs/Mele_A1000G_quad_defconfig
> +++ b/configs/Mele_A1000G_quad_defconfig
> @@ -8,6 +8,7 @@ CONFIG_INITIAL_USB_SCAN_DELAY=2000
>  CONFIG_USB1_VBUS_PIN="PC27"
>  CONFIG_USB2_VBUS_PIN=""
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_PHY_REALTEK=y
>  CONFIG_ETH_DESIGNWARE=y
> diff --git a/configs/Mele_A1000_defconfig b/configs/Mele_A1000_defconfig
> index a62ca5d2f18c..429baf3faf29 100644
> --- a/configs/Mele_A1000_defconfig
> +++ b/configs/Mele_A1000_defconfig
> @@ -8,6 +8,7 @@ CONFIG_VIDEO_VGA=y
>  CONFIG_VIDEO_COMPOSITE=y
>  CONFIG_AHCI=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SCSI_AHCI=y
> diff --git a/configs/Mele_I7_defconfig b/configs/Mele_I7_defconfig
> index 62cb674d2950..48dad606b884 100644
> --- a/configs/Mele_I7_defconfig
> +++ b/configs/Mele_I7_defconfig
> @@ -7,6 +7,7 @@ CONFIG_DRAM_ZQ=120
>  CONFIG_USB1_VBUS_PIN="PC27"
>  CONFIG_USB2_VBUS_PIN=""
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_PHY_REALTEK=y
>  CONFIG_ETH_DESIGNWARE=y
> diff --git a/configs/Mele_M3_defconfig b/configs/Mele_M3_defconfig
> index fce30278d496..ce962395a253 100644
> --- a/configs/Mele_M3_defconfig
> +++ b/configs/Mele_M3_defconfig
> @@ -9,6 +9,7 @@ CONFIG_MMC_SUNXI_SLOT_EXTRA=2
>  CONFIG_VIDEO_VGA=y
>  CONFIG_VIDEO_COMPOSITE=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SYS_I2C_MVTWSI=y
> diff --git a/configs/Mele_M5_defconfig b/configs/Mele_M5_defconfig
> index 79ea3f0db29b..a426729700e9 100644
> --- a/configs/Mele_M5_defconfig
> +++ b/configs/Mele_M5_defconfig
> @@ -9,6 +9,7 @@ CONFIG_MMC0_CD_PIN="PH1"
>  CONFIG_VIDEO_COMPOSITE=y
>  CONFIG_AHCI=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SCSI_AHCI=y
> diff --git a/configs/Mele_M9_defconfig b/configs/Mele_M9_defconfig
> index 1338e0973dbe..b84a2aebe206 100644
> --- a/configs/Mele_M9_defconfig
> +++ b/configs/Mele_M9_defconfig
> @@ -7,6 +7,7 @@ CONFIG_DRAM_ZQ=120
>  CONFIG_USB1_VBUS_PIN="PC27"
>  CONFIG_USB2_VBUS_PIN=""
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_PHY_REALTEK=y
>  CONFIG_ETH_DESIGNWARE=y
> diff --git a/configs/Merrii_A80_Optimus_defconfig b/configs/Merrii_A80_Optimus_defconfig
> index 5f008a206e76..3709a11ec036 100644
> --- a/configs/Merrii_A80_Optimus_defconfig
> +++ b/configs/Merrii_A80_Optimus_defconfig
> @@ -12,6 +12,7 @@ CONFIG_USB0_ID_DET="PH3"
>  CONFIG_USB1_VBUS_PIN="PH4"
>  CONFIG_USB3_VBUS_PIN="PH5"
>  CONFIG_AXP_GPIO=y
> +CONFIG_SPL_STACK=0x18000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SYS_I2C_SUN8I_RSB=y
>  CONFIG_AXP809_POWER=y
> diff --git a/configs/Mini-X_defconfig b/configs/Mini-X_defconfig
> index 61f880e15d95..76b6b7d2bce7 100644
> --- a/configs/Mini-X_defconfig
> +++ b/configs/Mini-X_defconfig
> @@ -6,6 +6,7 @@ CONFIG_MACH_SUN4I=y
>  CONFIG_USB0_VBUS_PIN="PB9"
>  CONFIG_VIDEO_COMPOSITE=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SYS_I2C_MVTWSI=y
> diff --git a/configs/Nintendo_NES_Classic_Edition_defconfig b/configs/Nintendo_NES_Classic_Edition_defconfig
> index a26695ca1675..1a939d8e0e01 100644
> --- a/configs/Nintendo_NES_Classic_Edition_defconfig
> +++ b/configs/Nintendo_NES_Classic_Edition_defconfig
> @@ -9,6 +9,7 @@ CONFIG_DRAM_ODT_EN=y
>  CONFIG_USB0_VBUS_DET="AXP0-VBUS-DETECT"
>  CONFIG_AXP_GPIO=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SYS_PBSIZE=1024
>  # CONFIG_CMD_FLASH is not set
>  CONFIG_CMD_MTDPARTS=y
> diff --git a/configs/Orangepi_defconfig b/configs/Orangepi_defconfig
> index eed986aa15c2..e7cf38ac7d1f 100644
> --- a/configs/Orangepi_defconfig
> +++ b/configs/Orangepi_defconfig
> @@ -12,6 +12,7 @@ CONFIG_VIDEO_COMPOSITE=y
>  CONFIG_GMAC_TX_DELAY=3
>  CONFIG_AHCI=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SCSI_AHCI=y
> diff --git a/configs/Orangepi_mini_defconfig b/configs/Orangepi_mini_defconfig
> index 974826baed0c..494edf0625ea 100644
> --- a/configs/Orangepi_mini_defconfig
> +++ b/configs/Orangepi_mini_defconfig
> @@ -14,6 +14,7 @@ CONFIG_VIDEO_COMPOSITE=y
>  CONFIG_GMAC_TX_DELAY=3
>  CONFIG_AHCI=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SCSI_AHCI=y
> diff --git a/configs/Sinlinx_SinA31s_defconfig b/configs/Sinlinx_SinA31s_defconfig
> index 4495b806ceb5..2d33331f3d3d 100644
> --- a/configs/Sinlinx_SinA31s_defconfig
> +++ b/configs/Sinlinx_SinA31s_defconfig
> @@ -10,6 +10,7 @@ CONFIG_MMC_SUNXI_SLOT_EXTRA=3
>  CONFIG_USB1_VBUS_PIN=""
>  CONFIG_USB2_VBUS_PIN=""
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_PHY_REALTEK=y
>  CONFIG_ETH_DESIGNWARE=y
> diff --git a/configs/Sinlinx_SinA33_defconfig b/configs/Sinlinx_SinA33_defconfig
> index 0f30dfc1dc98..fcee14b5462b 100644
> --- a/configs/Sinlinx_SinA33_defconfig
> +++ b/configs/Sinlinx_SinA33_defconfig
> @@ -13,6 +13,7 @@ CONFIG_VIDEO_LCD_DCLK_PHASE=0
>  CONFIG_VIDEO_LCD_BL_EN="PH6"
>  CONFIG_VIDEO_LCD_BL_PWM="PH0"
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_CMD_DFU=y
>  CONFIG_DFU_RAM=y
> diff --git a/configs/Sinovoip_BPI_M2_defconfig b/configs/Sinovoip_BPI_M2_defconfig
> index ebb9e3522644..c080a247105e 100644
> --- a/configs/Sinovoip_BPI_M2_defconfig
> +++ b/configs/Sinovoip_BPI_M2_defconfig
> @@ -7,6 +7,7 @@ CONFIG_DRAM_CLK=432
>  CONFIG_USB1_VBUS_PIN=""
>  CONFIG_USB2_VBUS_PIN=""
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_PHY_REALTEK=y
>  CONFIG_ETH_DESIGNWARE=y
> diff --git a/configs/Sinovoip_BPI_M3_defconfig b/configs/Sinovoip_BPI_M3_defconfig
> index 23240a138c43..32ec5deca7d8 100644
> --- a/configs/Sinovoip_BPI_M3_defconfig
> +++ b/configs/Sinovoip_BPI_M3_defconfig
> @@ -17,6 +17,7 @@ CONFIG_AXP_GPIO=y
>  CONFIG_SATAPWR="PD25"
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
>  CONFIG_CONSOLE_MUX=y
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_PHY_REALTEK=y
>  CONFIG_SUN8I_EMAC=y
> diff --git a/configs/Sunchip_CX-A99_defconfig b/configs/Sunchip_CX-A99_defconfig
> index ee0c15b9c0a6..749bf1cff9db 100644
> --- a/configs/Sunchip_CX-A99_defconfig
> +++ b/configs/Sunchip_CX-A99_defconfig
> @@ -12,4 +12,5 @@ CONFIG_USB0_VBUS_PIN="PH15"
>  CONFIG_USB1_VBUS_PIN="PL7"
>  CONFIG_USB3_VBUS_PIN="PL8"
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x18000
>  CONFIG_SYS_PBSIZE=1024
> diff --git a/configs/UTOO_P66_defconfig b/configs/UTOO_P66_defconfig
> index 64ab3821890c..4e6652db18f6 100644
> --- a/configs/UTOO_P66_defconfig
> +++ b/configs/UTOO_P66_defconfig
> @@ -20,6 +20,7 @@ CONFIG_VIDEO_LCD_BL_EN="AXP0-1"
>  CONFIG_VIDEO_LCD_BL_PWM="PB2"
>  CONFIG_VIDEO_LCD_TL059WV5C0=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SYS_I2C_MVTWSI=y
> diff --git a/configs/Wexler_TAB7200_defconfig b/configs/Wexler_TAB7200_defconfig
> index 9ecb64b3d565..f63d18c327fa 100644
> --- a/configs/Wexler_TAB7200_defconfig
> +++ b/configs/Wexler_TAB7200_defconfig
> @@ -13,6 +13,7 @@ CONFIG_VIDEO_LCD_POWER="PH8"
>  CONFIG_VIDEO_LCD_BL_EN="PH7"
>  CONFIG_VIDEO_LCD_BL_PWM="PB2"
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SYS_I2C_MVTWSI=y
> diff --git a/configs/Wits_Pro_A20_DKT_defconfig b/configs/Wits_Pro_A20_DKT_defconfig
> index 7deea8af63e3..09608dd1cc2a 100644
> --- a/configs/Wits_Pro_A20_DKT_defconfig
> +++ b/configs/Wits_Pro_A20_DKT_defconfig
> @@ -12,6 +12,7 @@ CONFIG_VIDEO_LCD_BL_PWM="PB2"
>  CONFIG_VIDEO_LCD_PANEL_LVDS=y
>  CONFIG_AHCI=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SCSI_AHCI=y
> diff --git a/configs/Wobo_i5_defconfig b/configs/Wobo_i5_defconfig
> index 95279c3ccc92..ab919c0795a8 100644
> --- a/configs/Wobo_i5_defconfig
> +++ b/configs/Wobo_i5_defconfig
> @@ -7,6 +7,7 @@ CONFIG_DRAM_CLK=432
>  CONFIG_MMC0_CD_PIN="PB3"
>  CONFIG_USB1_VBUS_PIN="PG12"
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SYS_I2C_MVTWSI=y
> diff --git a/configs/Yones_Toptech_BD1078_defconfig b/configs/Yones_Toptech_BD1078_defconfig
> index 89196e8ba28c..1117e147cc17 100644
> --- a/configs/Yones_Toptech_BD1078_defconfig
> +++ b/configs/Yones_Toptech_BD1078_defconfig
> @@ -19,6 +19,7 @@ CONFIG_VIDEO_LCD_BL_PWM="PB2"
>  # CONFIG_VIDEO_LCD_BL_PWM_ACTIVE_LOW is not set
>  CONFIG_VIDEO_LCD_PANEL_LVDS=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SYS_I2C_MVTWSI=y
> diff --git a/configs/Yones_Toptech_BS1078_V2_defconfig b/configs/Yones_Toptech_BS1078_V2_defconfig
> index a14881b32933..ef30aee82815 100644
> --- a/configs/Yones_Toptech_BS1078_V2_defconfig
> +++ b/configs/Yones_Toptech_BS1078_V2_defconfig
> @@ -16,6 +16,7 @@ CONFIG_VIDEO_LCD_BL_EN="PA25"
>  CONFIG_VIDEO_LCD_BL_PWM="PH13"
>  CONFIG_VIDEO_LCD_PANEL_LVDS=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_AXP_DLDO1_VOLT=3300
>  CONFIG_USB_MUSB_HOST=y
> diff --git a/configs/a64-olinuxino-emmc_defconfig b/configs/a64-olinuxino-emmc_defconfig
> index 6a1289758aae..7d8e7649f2a5 100644
> --- a/configs/a64-olinuxino-emmc_defconfig
> +++ b/configs/a64-olinuxino-emmc_defconfig
> @@ -6,6 +6,7 @@ CONFIG_MACH_SUN50I=y
>  CONFIG_RESERVE_ALLWINNER_BOOT0_HEADER=y
>  CONFIG_MMC_SUNXI_SLOT_EXTRA=2
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x54000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SUPPORT_EMMC_BOOT=y
>  CONFIG_SUN8I_EMAC=y
> diff --git a/configs/a64-olinuxino_defconfig b/configs/a64-olinuxino_defconfig
> index 89618ac6a701..06f51a8f8d31 100644
> --- a/configs/a64-olinuxino_defconfig
> +++ b/configs/a64-olinuxino_defconfig
> @@ -6,6 +6,7 @@ CONFIG_MACH_SUN50I=y
>  CONFIG_RESERVE_ALLWINNER_BOOT0_HEADER=y
>  CONFIG_MMC_SUNXI_SLOT_EXTRA=2
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x54000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SUN8I_EMAC=y
>  CONFIG_USB_EHCI_HCD=y
> diff --git a/configs/alt_defconfig b/configs/alt_defconfig
> index 897b3a230e2e..4e73e6af7d74 100644
> --- a/configs/alt_defconfig
> +++ b/configs/alt_defconfig
> @@ -34,6 +34,8 @@ CONFIG_SPL_MAX_SIZE=0x4000
>  CONFIG_SPL_NO_BSS_LIMIT=y
>  CONFIG_SPL_BOARD_INIT=y
>  CONFIG_SPL_SYS_MALLOC_SIMPLE=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xe6340000
>  CONFIG_SPL_RAM_SUPPORT=y
>  CONFIG_SPL_RAM_DEVICE=y
>  CONFIG_SPL_SPI_LOAD=y
> diff --git a/configs/amarula_a64_relic_defconfig b/configs/amarula_a64_relic_defconfig
> index 2811667c5115..0e173c28c12a 100644
> --- a/configs/amarula_a64_relic_defconfig
> +++ b/configs/amarula_a64_relic_defconfig
> @@ -7,6 +7,7 @@ CONFIG_RESERVE_ALLWINNER_BOOT0_HEADER=y
>  CONFIG_MMC_SUNXI_SLOT_EXTRA=2
>  # CONFIG_VIDEO_DE2 is not set
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x54000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_USB_EHCI_HCD=y
>  CONFIG_USB_OHCI_HCD=y
> diff --git a/configs/apalis-tk1_defconfig b/configs/apalis-tk1_defconfig
> index 548ff2e21523..3c004695897d 100644
> --- a/configs/apalis-tk1_defconfig
> +++ b/configs/apalis-tk1_defconfig
> @@ -23,6 +23,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
>  CONFIG_ARCH_MISC_INIT=y
>  CONFIG_SPL_FOOTPRINT_LIMIT=y
>  CONFIG_SPL_MAX_FOOTPRINT=0x8000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x800ffffc
>  CONFIG_SYS_PROMPT="Apalis TK1 # "
>  CONFIG_SYS_MAXARGS=32
>  CONFIG_SYS_CBSIZE=1024
> diff --git a/configs/apalis_imx6_defconfig b/configs/apalis_imx6_defconfig
> index 11ee2f3d34a9..96483af9442c 100644
> --- a/configs/apalis_imx6_defconfig
> +++ b/configs/apalis_imx6_defconfig
> @@ -36,6 +36,8 @@ CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
>  CONFIG_DISPLAY_BOARDINFO_LATE=y
>  CONFIG_BOARD_EARLY_INIT_F=y
>  CONFIG_MISC_INIT_R=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x91ffb8
>  CONFIG_SPL_DMA=y
>  CONFIG_SPL_I2C=y
>  CONFIG_SPL_USB_HOST=y
> diff --git a/configs/apalis_t30_defconfig b/configs/apalis_t30_defconfig
> index b665ca2f4b44..5b31d4c9943c 100644
> --- a/configs/apalis_t30_defconfig
> +++ b/configs/apalis_t30_defconfig
> @@ -19,6 +19,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
>  CONFIG_ARCH_MISC_INIT=y
>  CONFIG_SPL_FOOTPRINT_LIMIT=y
>  CONFIG_SPL_MAX_FOOTPRINT=0x8000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x800ffffc
>  CONFIG_SYS_PROMPT="Apalis T30 # "
>  CONFIG_SYS_MAXARGS=32
>  CONFIG_SYS_CBSIZE=1024
> diff --git a/configs/avnet_ultrazedev_cc_v1_0_ultrazedev_som_v1_0_defconfig b/configs/avnet_ultrazedev_cc_v1_0_ultrazedev_som_v1_0_defconfig
> index 8f610c42e045..d9330d049dda 100644
> --- a/configs/avnet_ultrazedev_cc_v1_0_ultrazedev_som_v1_0_defconfig
> +++ b/configs/avnet_ultrazedev_cc_v1_0_ultrazedev_som_v1_0_defconfig
> @@ -30,6 +30,8 @@ CONFIG_BOOTDELAY=0
>  CONFIG_CLOCKS=y
>  CONFIG_SPL_MAX_SIZE=0x40000
>  CONFIG_SPL_BSS_MAX_SIZE=0x80000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xfffffffc
>  CONFIG_SPL_FS_LOAD_KERNEL_NAME="atf-uboot.ub"
>  CONFIG_SPL_FS_LOAD_ARGS_NAME="u-boot.bin"
>  CONFIG_SPL_OS_BOOT=y
> diff --git a/configs/axm_defconfig b/configs/axm_defconfig
> index 1d49c196f3f9..2a5458b5214b 100644
> --- a/configs/axm_defconfig
> +++ b/configs/axm_defconfig
> @@ -40,6 +40,8 @@ CONFIG_SPL_PAD_TO=0x20000
>  CONFIG_SPL_BSS_MAX_SIZE=0x600
>  # CONFIG_SPL_LEGACY_IMAGE_FORMAT is not set
>  CONFIG_SPL_SYS_MALLOC_SIMPLE=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x304000
>  CONFIG_SPL_CRC32=y
>  CONFIG_SPL_NAND_SUPPORT=y
>  CONFIG_SPL_NAND_RAW_ONLY=y
> diff --git a/configs/ba10_tv_box_defconfig b/configs/ba10_tv_box_defconfig
> index b14731554b78..66c444fc7507 100644
> --- a/configs/ba10_tv_box_defconfig
> +++ b/configs/ba10_tv_box_defconfig
> @@ -9,6 +9,7 @@ CONFIG_USB0_VBUS_PIN="PB9"
>  CONFIG_USB2_VBUS_PIN="PH12"
>  CONFIG_VIDEO_COMPOSITE=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SYS_I2C_MVTWSI=y
> diff --git a/configs/bananapi_m1_plus_defconfig b/configs/bananapi_m1_plus_defconfig
> index 1b5f6ba4d39c..955a60ddc34d 100644
> --- a/configs/bananapi_m1_plus_defconfig
> +++ b/configs/bananapi_m1_plus_defconfig
> @@ -9,6 +9,7 @@ CONFIG_VIDEO_COMPOSITE=y
>  CONFIG_GMAC_TX_DELAY=3
>  CONFIG_AHCI=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_NETCONSOLE=y
> diff --git a/configs/bananapi_m2_berry_defconfig b/configs/bananapi_m2_berry_defconfig
> index d7d7ced9d9bf..08f7683233cf 100644
> --- a/configs/bananapi_m2_berry_defconfig
> +++ b/configs/bananapi_m2_berry_defconfig
> @@ -9,6 +9,7 @@ CONFIG_USB1_VBUS_PIN="PH23"
>  # CONFIG_HAS_ARMV7_SECURE_BASE is not set
>  CONFIG_AHCI=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SCSI_AHCI=y
> diff --git a/configs/bananapi_m2_plus_h3_defconfig b/configs/bananapi_m2_plus_h3_defconfig
> index d706c9a4e17f..d0981f6481af 100644
> --- a/configs/bananapi_m2_plus_h3_defconfig
> +++ b/configs/bananapi_m2_plus_h3_defconfig
> @@ -7,6 +7,7 @@ CONFIG_DRAM_CLK=672
>  CONFIG_MACPWR="PD6"
>  CONFIG_MMC_SUNXI_SLOT_EXTRA=2
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SUN8I_EMAC=y
>  CONFIG_USB_EHCI_HCD=y
> diff --git a/configs/bananapi_m2_plus_h5_defconfig b/configs/bananapi_m2_plus_h5_defconfig
> index 111e037ee57e..0fb1bda1c6ef 100644
> --- a/configs/bananapi_m2_plus_h5_defconfig
> +++ b/configs/bananapi_m2_plus_h5_defconfig
> @@ -7,6 +7,7 @@ CONFIG_DRAM_CLK=672
>  CONFIG_MACPWR="PD6"
>  CONFIG_MMC_SUNXI_SLOT_EXTRA=2
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x54000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SUN8I_EMAC=y
>  CONFIG_USB_EHCI_HCD=y
> diff --git a/configs/bananapi_m2_zero_defconfig b/configs/bananapi_m2_zero_defconfig
> index 74c164c27c56..6a3594c0938d 100644
> --- a/configs/bananapi_m2_zero_defconfig
> +++ b/configs/bananapi_m2_zero_defconfig
> @@ -6,4 +6,5 @@ CONFIG_MACH_SUN8I_H3=y
>  CONFIG_DRAM_CLK=408
>  CONFIG_MMC0_CD_PIN=""
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SYS_PBSIZE=1024
> diff --git a/configs/bananapi_m64_defconfig b/configs/bananapi_m64_defconfig
> index 6c1aa1ae7432..5d1d10a0918c 100644
> --- a/configs/bananapi_m64_defconfig
> +++ b/configs/bananapi_m64_defconfig
> @@ -7,6 +7,7 @@ CONFIG_RESERVE_ALLWINNER_BOOT0_HEADER=y
>  CONFIG_MMC0_CD_PIN="PH13"
>  CONFIG_MMC_SUNXI_SLOT_EXTRA=2
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x54000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SUPPORT_EMMC_BOOT=y
>  CONFIG_SUN8I_EMAC=y
> diff --git a/configs/beaver_defconfig b/configs/beaver_defconfig
> index d61f25376f53..e0e4393d3904 100644
> --- a/configs/beaver_defconfig
> +++ b/configs/beaver_defconfig
> @@ -16,6 +16,8 @@ CONFIG_CONSOLE_MUX=y
>  CONFIG_SYS_STDIO_DEREGISTER=y
>  CONFIG_SPL_FOOTPRINT_LIMIT=y
>  CONFIG_SPL_MAX_FOOTPRINT=0x8000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x800ffffc
>  CONFIG_SYS_PROMPT="Tegra30 (Beaver) # "
>  CONFIG_SYS_MAXARGS=64
>  CONFIG_SYS_PBSIZE=2084
> diff --git a/configs/beelink_gs1_defconfig b/configs/beelink_gs1_defconfig
> index 339e6c9e3c9c..6453a72a7d78 100644
> --- a/configs/beelink_gs1_defconfig
> +++ b/configs/beelink_gs1_defconfig
> @@ -8,6 +8,7 @@ CONFIG_MMC0_CD_PIN="PF6"
>  CONFIG_MMC_SUNXI_SLOT_EXTRA=2
>  # CONFIG_PSCI_RESET is not set
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x118000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_LED=y
>  CONFIG_LED_GPIO=y
> diff --git a/configs/beelink_x2_defconfig b/configs/beelink_x2_defconfig
> index 432079a6ad35..4065e64d523f 100644
> --- a/configs/beelink_x2_defconfig
> +++ b/configs/beelink_x2_defconfig
> @@ -6,6 +6,7 @@ CONFIG_MACH_SUN8I_H3=y
>  CONFIG_DRAM_CLK=567
>  CONFIG_MMC_SUNXI_SLOT_EXTRA=2
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SUN8I_EMAC=y
>  CONFIG_USB_EHCI_HCD=y
> diff --git a/configs/bitmain_antminer_s9_defconfig b/configs/bitmain_antminer_s9_defconfig
> index be5b8a0a3291..02a8435fbcd5 100644
> --- a/configs/bitmain_antminer_s9_defconfig
> +++ b/configs/bitmain_antminer_s9_defconfig
> @@ -29,6 +29,8 @@ CONFIG_USE_PREBOOT=y
>  CONFIG_CLOCKS=y
>  CONFIG_SPL_MAX_SIZE=0x30000
>  CONFIG_SPL_BSS_MAX_SIZE=0x100000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xfffffe00
>  CONFIG_SPL_STACK_R=y
>  CONFIG_HUSH_PARSER=y
>  CONFIG_SYS_PROMPT="antminer> "
> diff --git a/configs/brppt2_defconfig b/configs/brppt2_defconfig
> index b9f3587bdaaf..af91188b69c4 100644
> --- a/configs/brppt2_defconfig
> +++ b/configs/brppt2_defconfig
> @@ -32,6 +32,8 @@ CONFIG_USE_BOOTCOMMAND=y
>  CONFIG_BOOTCOMMAND="run b_default"
>  CONFIG_BOARD_EARLY_INIT_F=y
>  CONFIG_SPL_BOARD_INIT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x91ffb8
>  # CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR is not set
>  CONFIG_SPL_I2C=y
>  CONFIG_SPL_DM_SPI_FLASH=y
> diff --git a/configs/cardhu_defconfig b/configs/cardhu_defconfig
> index 92729c3179f0..2b73fa22d8a9 100644
> --- a/configs/cardhu_defconfig
> +++ b/configs/cardhu_defconfig
> @@ -15,6 +15,8 @@ CONFIG_CONSOLE_MUX=y
>  CONFIG_SYS_STDIO_DEREGISTER=y
>  CONFIG_SPL_FOOTPRINT_LIMIT=y
>  CONFIG_SPL_MAX_FOOTPRINT=0x8000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x800ffffc
>  CONFIG_SYS_PROMPT="Tegra30 (Cardhu) # "
>  CONFIG_SYS_MAXARGS=64
>  CONFIG_SYS_PBSIZE=2084
> diff --git a/configs/cei-tk1-som_defconfig b/configs/cei-tk1-som_defconfig
> index 0e583194a13a..7bf45bae4e5a 100644
> --- a/configs/cei-tk1-som_defconfig
> +++ b/configs/cei-tk1-som_defconfig
> @@ -17,6 +17,8 @@ CONFIG_CONSOLE_MUX=y
>  CONFIG_SYS_STDIO_DEREGISTER=y
>  CONFIG_SPL_FOOTPRINT_LIMIT=y
>  CONFIG_SPL_MAX_FOOTPRINT=0x8000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x800ffffc
>  CONFIG_SYS_PROMPT="Tegra124 (TK1-SOM) # "
>  CONFIG_SYS_MAXARGS=64
>  CONFIG_SYS_PBSIZE=2086
> diff --git a/configs/cgtqmx8_defconfig b/configs/cgtqmx8_defconfig
> index 112a9860d833..d60437884c9c 100644
> --- a/configs/cgtqmx8_defconfig
> +++ b/configs/cgtqmx8_defconfig
> @@ -31,6 +31,8 @@ CONFIG_BOARD_EARLY_INIT_F=y
>  CONFIG_SPL_MAX_SIZE=0x1f000
>  CONFIG_SPL_BSS_MAX_SIZE=0x1000
>  CONFIG_SPL_BOARD_INIT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x13e000
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x800
>  CONFIG_SYS_MMCSD_FS_BOOT_PARTITION=0
> diff --git a/configs/chromebit_mickey_defconfig b/configs/chromebit_mickey_defconfig
> index 0225e108b537..862b37d0fb64 100644
> --- a/configs/chromebit_mickey_defconfig
> +++ b/configs/chromebit_mickey_defconfig
> @@ -28,6 +28,8 @@ CONFIG_BOARD_EARLY_INIT_R=y
>  CONFIG_SPL_PAD_TO=0x7f8000
>  CONFIG_SPL_NO_BSS_LIMIT=y
>  # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xff718000
>  CONFIG_SPL_STACK_R=y
>  CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x2000
>  # CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR is not set
> diff --git a/configs/chromebook_bob_defconfig b/configs/chromebook_bob_defconfig
> index d5676b5ea7a1..21943010f4ed 100644
> --- a/configs/chromebook_bob_defconfig
> +++ b/configs/chromebook_bob_defconfig
> @@ -33,6 +33,8 @@ CONFIG_SPL_PAD_TO=0x7f8000
>  CONFIG_SPL_BSS_MAX_SIZE=0x10000
>  CONFIG_HANDOFF=y
>  # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xff8effff
>  CONFIG_SPL_STACK_R=y
>  CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x4000
>  CONFIG_SPL_SPI_LOAD=y
> diff --git a/configs/chromebook_jerry_defconfig b/configs/chromebook_jerry_defconfig
> index 89990e51b783..a0f15f6e7b2d 100644
> --- a/configs/chromebook_jerry_defconfig
> +++ b/configs/chromebook_jerry_defconfig
> @@ -29,6 +29,8 @@ CONFIG_BOARD_EARLY_INIT_R=y
>  CONFIG_SPL_PAD_TO=0x7f8000
>  CONFIG_SPL_NO_BSS_LIMIT=y
>  # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xff718000
>  CONFIG_SPL_STACK_R=y
>  CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x2000
>  # CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR is not set
> diff --git a/configs/chromebook_kevin_defconfig b/configs/chromebook_kevin_defconfig
> index 5d95c9e68a6e..7f773fcf90ca 100644
> --- a/configs/chromebook_kevin_defconfig
> +++ b/configs/chromebook_kevin_defconfig
> @@ -34,6 +34,8 @@ CONFIG_SPL_PAD_TO=0x7f8000
>  CONFIG_SPL_BSS_MAX_SIZE=0x10000
>  CONFIG_HANDOFF=y
>  # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xff8effff
>  CONFIG_SPL_STACK_R=y
>  CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x4000
>  CONFIG_SPL_SPI_LOAD=y
> diff --git a/configs/chromebook_minnie_defconfig b/configs/chromebook_minnie_defconfig
> index 7542d4fb21b1..513e5f85e9cb 100644
> --- a/configs/chromebook_minnie_defconfig
> +++ b/configs/chromebook_minnie_defconfig
> @@ -29,6 +29,8 @@ CONFIG_BOARD_EARLY_INIT_R=y
>  CONFIG_SPL_PAD_TO=0x7f8000
>  CONFIG_SPL_NO_BSS_LIMIT=y
>  # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xff718000
>  CONFIG_SPL_STACK_R=y
>  CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x2000
>  # CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR is not set
> diff --git a/configs/chromebook_speedy_defconfig b/configs/chromebook_speedy_defconfig
> index 2aaa997ef81a..7fc505ee4e36 100644
> --- a/configs/chromebook_speedy_defconfig
> +++ b/configs/chromebook_speedy_defconfig
> @@ -29,6 +29,8 @@ CONFIG_BOARD_EARLY_INIT_R=y
>  CONFIG_SPL_PAD_TO=0x7f8000
>  CONFIG_SPL_NO_BSS_LIMIT=y
>  # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xff718000
>  CONFIG_SPL_STACK_R=y
>  CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x2000
>  # CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR is not set
> diff --git a/configs/ci20_mmc_defconfig b/configs/ci20_mmc_defconfig
> index e8bcc0b7f99b..a1c2fa732c12 100644
> --- a/configs/ci20_mmc_defconfig
> +++ b/configs/ci20_mmc_defconfig
> @@ -25,6 +25,8 @@ CONFIG_MISC_INIT_R=y
>  CONFIG_SYS_MALLOC_BOOTPARAMS=y
>  CONFIG_SPL_MAX_SIZE=0x2e00
>  CONFIG_SPL_BSS_MAX_SIZE=0x2000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xf4008000
>  # CONFIG_SPL_BANNER_PRINT is not set
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x1c
> diff --git a/configs/cl-som-imx7_defconfig b/configs/cl-som-imx7_defconfig
> index af7fb37afccd..67b70d9523d8 100644
> --- a/configs/cl-som-imx7_defconfig
> +++ b/configs/cl-som-imx7_defconfig
> @@ -28,6 +28,8 @@ CONFIG_BOARD_LATE_INIT=y
>  CONFIG_SPL_MAX_SIZE=0xe000
>  CONFIG_SPL_BSS_MAX_SIZE=0x100000
>  CONFIG_SPL_BOARD_INIT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x946bb8
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x80
>  CONFIG_SPL_I2C=y
>  CONFIG_SPL_SPI_LOAD=y
> diff --git a/configs/clearfog_defconfig b/configs/clearfog_defconfig
> index fc7aaba37dd6..bbb475e97907 100644
> --- a/configs/clearfog_defconfig
> +++ b/configs/clearfog_defconfig
> @@ -29,6 +29,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
>  CONFIG_SPL_MAX_SIZE=0x22fd0
>  CONFIG_SPL_BSS_MAX_SIZE=0x4000
>  CONFIG_SPL_SYS_MALLOC_SIMPLE=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x4002c000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_MAXARGS=32
>  CONFIG_CMD_TLV_EEPROM=y
> diff --git a/configs/cm_fx6_defconfig b/configs/cm_fx6_defconfig
> index bb63d5f7756e..d1f8c494ae4e 100644
> --- a/configs/cm_fx6_defconfig
> +++ b/configs/cm_fx6_defconfig
> @@ -30,6 +30,8 @@ CONFIG_BOOTCOMMAND="run findfdt; run distro_bootcmd; run legacy_bootcmd"
>  CONFIG_USE_PREBOOT=y
>  CONFIG_PREBOOT="usb start;sf probe"
>  CONFIG_MISC_INIT_R=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x91ffb8
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x80
>  CONFIG_SPL_I2C=y
>  CONFIG_SPL_SPI_LOAD=y
> diff --git a/configs/colibri_imx6_defconfig b/configs/colibri_imx6_defconfig
> index 1873581e7555..9436f9f0a389 100644
> --- a/configs/colibri_imx6_defconfig
> +++ b/configs/colibri_imx6_defconfig
> @@ -35,6 +35,8 @@ CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
>  CONFIG_DISPLAY_BOARDINFO_LATE=y
>  CONFIG_BOARD_EARLY_INIT_F=y
>  CONFIG_MISC_INIT_R=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x91ffb8
>  CONFIG_SPL_DMA=y
>  CONFIG_SPL_I2C=y
>  CONFIG_SPL_USB_HOST=y
> diff --git a/configs/colibri_t20_defconfig b/configs/colibri_t20_defconfig
> index 76eb9e12c29c..1f616af3c52c 100644
> --- a/configs/colibri_t20_defconfig
> +++ b/configs/colibri_t20_defconfig
> @@ -18,6 +18,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
>  CONFIG_ARCH_MISC_INIT=y
>  CONFIG_SPL_FOOTPRINT_LIMIT=y
>  CONFIG_SPL_MAX_FOOTPRINT=0x8000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xffffc
>  CONFIG_SYS_PROMPT="Colibri T20 # "
>  CONFIG_SYS_MAXARGS=32
>  CONFIG_SYS_CBSIZE=1024
> diff --git a/configs/colibri_t30_defconfig b/configs/colibri_t30_defconfig
> index c9f8a5e65e4e..b9012f025827 100644
> --- a/configs/colibri_t30_defconfig
> +++ b/configs/colibri_t30_defconfig
> @@ -19,6 +19,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
>  CONFIG_ARCH_MISC_INIT=y
>  CONFIG_SPL_FOOTPRINT_LIMIT=y
>  CONFIG_SPL_MAX_FOOTPRINT=0x8000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x800ffffc
>  CONFIG_SYS_PROMPT="Colibri T30 # "
>  CONFIG_SYS_MAXARGS=32
>  CONFIG_SYS_CBSIZE=1024
> diff --git a/configs/colorfly_e708_q1_defconfig b/configs/colorfly_e708_q1_defconfig
> index 304ae18a857d..f17083310a27 100644
> --- a/configs/colorfly_e708_q1_defconfig
> +++ b/configs/colorfly_e708_q1_defconfig
> @@ -16,6 +16,7 @@ CONFIG_VIDEO_LCD_BL_EN="PA25"
>  CONFIG_VIDEO_LCD_BL_PWM="PH13"
>  CONFIG_VIDEO_LCD_PANEL_LVDS=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_AXP_DLDO1_VOLT=3300
>  CONFIG_AXP_DLDO2_VOLT=1800
> diff --git a/configs/controlcenterdc_defconfig b/configs/controlcenterdc_defconfig
> index fd8cbe577dea..9b5380960809 100644
> --- a/configs/controlcenterdc_defconfig
> +++ b/configs/controlcenterdc_defconfig
> @@ -38,6 +38,8 @@ CONFIG_SPL_MAX_SIZE=0x27fd0
>  CONFIG_SPL_BSS_MAX_SIZE=0x4000
>  CONFIG_SPL_BOARD_INIT=y
>  CONFIG_SPL_SYS_MALLOC_SIMPLE=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x40031000
>  CONFIG_SPL_I2C=y
>  CONFIG_HUSH_PARSER=y
>  CONFIG_SYS_MAXARGS=32
> diff --git a/configs/corvus_defconfig b/configs/corvus_defconfig
> index 9683c662f9dd..e7db00a21223 100644
> --- a/configs/corvus_defconfig
> +++ b/configs/corvus_defconfig
> @@ -36,6 +36,8 @@ CONFIG_SPL_MAX_SIZE=0x3000
>  CONFIG_SPL_PAD_TO=0x20000
>  CONFIG_SPL_BSS_MAX_SIZE=0x800
>  CONFIG_SPL_SYS_MALLOC_SIMPLE=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x4000
>  CONFIG_SPL_NAND_SUPPORT=y
>  CONFIG_SPL_NAND_RAW_ONLY=y
>  CONFIG_SPL_NAND_DRIVERS=y
> diff --git a/configs/da850evm_defconfig b/configs/da850evm_defconfig
> index 8ddde6a80b59..a4bc7e41265a 100644
> --- a/configs/da850evm_defconfig
> +++ b/configs/da850evm_defconfig
> @@ -39,6 +39,8 @@ CONFIG_SPL_PAD_TO=0x8000
>  CONFIG_SPL_FOOTPRINT_LIMIT=y
>  CONFIG_SPL_MAX_FOOTPRINT=0x8000
>  CONFIG_SPL_SYS_MALLOC_SIMPLE=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x8001ff00
>  # CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR is not set
>  CONFIG_SPL_DM_SPI_FLASH=y
>  CONFIG_SPL_SPI_LOAD=y
> diff --git a/configs/da850evm_nand_defconfig b/configs/da850evm_nand_defconfig
> index 4e3ff7021445..ef180e686431 100644
> --- a/configs/da850evm_nand_defconfig
> +++ b/configs/da850evm_nand_defconfig
> @@ -36,6 +36,8 @@ CONFIG_SPL_PAD_TO=0x8000
>  CONFIG_SPL_FOOTPRINT_LIMIT=y
>  CONFIG_SPL_MAX_FOOTPRINT=0x8000
>  CONFIG_SPL_SYS_MALLOC_SIMPLE=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x8001ff00
>  # CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR is not set
>  CONFIG_SPL_NAND_SUPPORT=y
>  CONFIG_SPL_NAND_DRIVERS=y
> diff --git a/configs/dalmore_defconfig b/configs/dalmore_defconfig
> index 1a0ad00a3195..7811ef83db86 100644
> --- a/configs/dalmore_defconfig
> +++ b/configs/dalmore_defconfig
> @@ -16,6 +16,8 @@ CONFIG_CONSOLE_MUX=y
>  CONFIG_SYS_STDIO_DEREGISTER=y
>  CONFIG_SPL_FOOTPRINT_LIMIT=y
>  CONFIG_SPL_MAX_FOOTPRINT=0x8000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x800ffffc
>  CONFIG_SYS_PROMPT="Tegra114 (Dalmore) # "
>  CONFIG_SYS_MAXARGS=64
>  CONFIG_SYS_PBSIZE=2086
> diff --git a/configs/db-88f6720_defconfig b/configs/db-88f6720_defconfig
> index cf7bd174a589..77e0bbc858ae 100644
> --- a/configs/db-88f6720_defconfig
> +++ b/configs/db-88f6720_defconfig
> @@ -28,6 +28,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
>  CONFIG_SPL_MAX_SIZE=0x1ffd0
>  CONFIG_SPL_BSS_MAX_SIZE=0x4000
>  CONFIG_SPL_SYS_MALLOC_SIMPLE=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x4002c000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_MAXARGS=32
>  CONFIG_CMD_I2C=y
> diff --git a/configs/db-88f6820-amc_defconfig b/configs/db-88f6820-amc_defconfig
> index fc2cd98f9419..5d52c1fcc604 100644
> --- a/configs/db-88f6820-amc_defconfig
> +++ b/configs/db-88f6820-amc_defconfig
> @@ -29,6 +29,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
>  CONFIG_SPL_MAX_SIZE=0x22fd0
>  CONFIG_SPL_BSS_MAX_SIZE=0x4000
>  CONFIG_SPL_SYS_MALLOC_SIMPLE=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x4002c000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_MAXARGS=96
>  # CONFIG_CMD_FLASH is not set
> diff --git a/configs/db-88f6820-gp_defconfig b/configs/db-88f6820-gp_defconfig
> index 8243a49fba72..04a07e0e812a 100644
> --- a/configs/db-88f6820-gp_defconfig
> +++ b/configs/db-88f6820-gp_defconfig
> @@ -28,6 +28,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
>  CONFIG_SPL_MAX_SIZE=0x22fd0
>  CONFIG_SPL_BSS_MAX_SIZE=0x4000
>  CONFIG_SPL_SYS_MALLOC_SIMPLE=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x4002c000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_MAXARGS=32
>  CONFIG_CMD_I2C=y
> diff --git a/configs/db-mv784mp-gp_defconfig b/configs/db-mv784mp-gp_defconfig
> index 2f5a3215d990..a1e072545373 100644
> --- a/configs/db-mv784mp-gp_defconfig
> +++ b/configs/db-mv784mp-gp_defconfig
> @@ -28,6 +28,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
>  CONFIG_SPL_MAX_SIZE=0x1bfd0
>  CONFIG_SPL_BSS_MAX_SIZE=0x4000
>  CONFIG_SPL_SYS_MALLOC_SIMPLE=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x4002c000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_MAXARGS=32
>  # CONFIG_CMD_FLASH is not set
> diff --git a/configs/deneb_defconfig b/configs/deneb_defconfig
> index 42f4d40d9e63..21dfc26c1e06 100644
> --- a/configs/deneb_defconfig
> +++ b/configs/deneb_defconfig
> @@ -40,6 +40,8 @@ CONFIG_SPL_MAX_SIZE=0x1f000
>  CONFIG_SPL_BSS_MAX_SIZE=0x1000
>  CONFIG_SPL_BOARD_INIT=y
>  CONFIG_SPL_SYS_MALLOC_SIMPLE=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x13e000
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x800
>  CONFIG_SPL_POWER_DOMAIN=y
> diff --git a/configs/devkit3250_defconfig b/configs/devkit3250_defconfig
> index f447aecf8b03..5290ac5e82e1 100644
> --- a/configs/devkit3250_defconfig
> +++ b/configs/devkit3250_defconfig
> @@ -29,6 +29,8 @@ CONFIG_SPL_MAX_SIZE=0x20000
>  CONFIG_SPL_NO_BSS_LIMIT=y
>  CONFIG_SPL_BOARD_INIT=y
>  CONFIG_SPL_SYS_MALLOC_SIMPLE=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xfff8
>  CONFIG_SPL_NAND_SUPPORT=y
>  CONFIG_SPL_NAND_RAW_ONLY=y
>  CONFIG_SPL_NAND_DRIVERS=y
> diff --git a/configs/dh_imx6_defconfig b/configs/dh_imx6_defconfig
> index 8c0b9b3d4565..05b9eb8cbf3d 100644
> --- a/configs/dh_imx6_defconfig
> +++ b/configs/dh_imx6_defconfig
> @@ -35,6 +35,8 @@ CONFIG_SPL_FIT=y
>  CONFIG_BOOTDELAY=3
>  # CONFIG_USE_BOOTCOMMAND is not set
>  CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x91ffb8
>  CONFIG_SPL_SPI_LOAD=y
>  CONFIG_SYS_SPI_U_BOOT_OFFS=0x11400
>  CONFIG_SYS_MAXARGS=32
> diff --git a/configs/difrnce_dit4350_defconfig b/configs/difrnce_dit4350_defconfig
> index 29d9978cb32f..a3917eaf1794 100644
> --- a/configs/difrnce_dit4350_defconfig
> +++ b/configs/difrnce_dit4350_defconfig
> @@ -15,6 +15,7 @@ CONFIG_VIDEO_LCD_POWER="AXP0-0"
>  CONFIG_VIDEO_LCD_BL_EN="AXP0-1"
>  CONFIG_VIDEO_LCD_BL_PWM="PB2"
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SYS_I2C_MVTWSI=y
> diff --git a/configs/display5_defconfig b/configs/display5_defconfig
> index 2b92ed95b4b7..b39b4de2c153 100644
> --- a/configs/display5_defconfig
> +++ b/configs/display5_defconfig
> @@ -37,6 +37,8 @@ CONFIG_USE_BOOTCOMMAND=y
>  CONFIG_BOOTCOMMAND="if run check_em_pad; then run recovery;else if test ${BOOT_FROM} = FACTORY; then run factory_nfs;else run boot_mmc;fi;fi"
>  CONFIG_MISC_INIT_R=y
>  CONFIG_SPL_BOOTCOUNT_LIMIT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x91ffb8
>  # CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR is not set
>  CONFIG_SPL_DMA=y
>  CONFIG_SPL_ENV_SUPPORT=y
> diff --git a/configs/display5_factory_defconfig b/configs/display5_factory_defconfig
> index 9c3965c0a6f5..163737cb5db2 100644
> --- a/configs/display5_factory_defconfig
> +++ b/configs/display5_factory_defconfig
> @@ -34,6 +34,8 @@ CONFIG_BOOTDELAY=3
>  CONFIG_USE_BOOTCOMMAND=y
>  CONFIG_BOOTCOMMAND="echo SDP Display5 recovery"
>  CONFIG_MISC_INIT_R=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x91ffb8
>  # CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR is not set
>  CONFIG_SPL_DMA=y
>  CONFIG_SPL_I2C=y
> diff --git a/configs/ds414_defconfig b/configs/ds414_defconfig
> index 73907b3e3896..b0288f57b0d1 100644
> --- a/configs/ds414_defconfig
> +++ b/configs/ds414_defconfig
> @@ -36,6 +36,8 @@ CONFIG_MISC_INIT_R=y
>  CONFIG_SPL_MAX_SIZE=0x1bfd0
>  CONFIG_SPL_BSS_MAX_SIZE=0x4000
>  CONFIG_SPL_SYS_MALLOC_SIMPLE=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x4002c000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_MAXARGS=32
>  # CONFIG_CMD_FLASH is not set
> diff --git a/configs/dserve_dsrv9703c_defconfig b/configs/dserve_dsrv9703c_defconfig
> index dfc270ccc52a..c737cdb4d99c 100644
> --- a/configs/dserve_dsrv9703c_defconfig
> +++ b/configs/dserve_dsrv9703c_defconfig
> @@ -14,6 +14,7 @@ CONFIG_VIDEO_LCD_BL_EN="PH7"
>  CONFIG_VIDEO_LCD_BL_PWM="PB2"
>  CONFIG_VIDEO_LCD_PANEL_LVDS=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SYS_I2C_MVTWSI=y
> diff --git a/configs/edminiv2_defconfig b/configs/edminiv2_defconfig
> index ace1f768c214..dd6118bf2129 100644
> --- a/configs/edminiv2_defconfig
> +++ b/configs/edminiv2_defconfig
> @@ -25,6 +25,8 @@ CONFIG_RESET_PHY_R=y
>  CONFIG_SPL_MAX_SIZE=0xfff0
>  CONFIG_SPL_BSS_MAX_SIZE=0x1ffff
>  CONFIG_SPL_BOARD_INIT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x20000
>  CONFIG_SPL_NOR_SUPPORT=y
>  CONFIG_HUSH_PARSER=y
>  # CONFIG_AUTO_COMPLETE is not set
> diff --git a/configs/emlid_neutis_n5_devboard_defconfig b/configs/emlid_neutis_n5_devboard_defconfig
> index e54f4aa75245..d9272eae168f 100644
> --- a/configs/emlid_neutis_n5_devboard_defconfig
> +++ b/configs/emlid_neutis_n5_devboard_defconfig
> @@ -8,5 +8,6 @@ CONFIG_DRAM_ZQ=3881977
>  # CONFIG_DRAM_ODT_EN is not set
>  CONFIG_MMC_SUNXI_SLOT_EXTRA=2
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x54000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SUPPORT_EMMC_BOOT=y
> diff --git a/configs/evb-px30_defconfig b/configs/evb-px30_defconfig
> index 019e9422192e..7b1138ee63fb 100644
> --- a/configs/evb-px30_defconfig
> +++ b/configs/evb-px30_defconfig
> @@ -35,6 +35,8 @@ CONFIG_SPL_PAD_TO=0x7f8000
>  CONFIG_SPL_BSS_MAX_SIZE=0x4000
>  CONFIG_SPL_BOOTROM_SUPPORT=y
>  # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x400000
>  CONFIG_SPL_STACK_R=y
>  # CONFIG_TPL_BANNER_PRINT is not set
>  CONFIG_SPL_ATF=y
> diff --git a/configs/evb-px5_defconfig b/configs/evb-px5_defconfig
> index 238ef9a9e8db..753e6edc35d6 100644
> --- a/configs/evb-px5_defconfig
> +++ b/configs/evb-px5_defconfig
> @@ -40,6 +40,8 @@ CONFIG_SPL_BSS_MAX_SIZE=0x20000
>  CONFIG_SPL_BOOTROM_SUPPORT=y
>  # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
>  CONFIG_TPL_SYS_MALLOC_SIMPLE=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x188000
>  CONFIG_SPL_STACK_R=y
>  CONFIG_SPL_ATF=y
>  CONFIG_SPL_ATF_NO_PLATFORM_PARAM=y
> diff --git a/configs/evb-rk3288_defconfig b/configs/evb-rk3288_defconfig
> index 7c91aacabd67..6587c19c36a1 100644
> --- a/configs/evb-rk3288_defconfig
> +++ b/configs/evb-rk3288_defconfig
> @@ -28,6 +28,8 @@ CONFIG_SILENT_CONSOLE=y
>  CONFIG_DISPLAY_BOARDINFO_LATE=y
>  CONFIG_SPL_PAD_TO=0x7f8000
>  CONFIG_SPL_NO_BSS_LIMIT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xff718000
>  CONFIG_SPL_STACK_R=y
>  CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x10000
>  CONFIG_SPL_OPTEE_IMAGE=y
> diff --git a/configs/evb-rk3308_defconfig b/configs/evb-rk3308_defconfig
> index 8d9ca36cdde7..e871ba1b8e76 100644
> --- a/configs/evb-rk3308_defconfig
> +++ b/configs/evb-rk3308_defconfig
> @@ -27,6 +27,8 @@ CONFIG_SYS_CONSOLE_INFO_QUIET=y
>  CONFIG_SPL_MAX_SIZE=0x20000
>  CONFIG_SPL_PAD_TO=0x7f8000
>  CONFIG_SPL_BSS_MAX_SIZE=0x2000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x400000
>  CONFIG_SPL_STACK_R=y
>  # CONFIG_CMD_BDI is not set
>  # CONFIG_CMD_CONSOLE is not set
> diff --git a/configs/evb-rk3328_defconfig b/configs/evb-rk3328_defconfig
> index 3aa1ce733c8c..f247f692a0c7 100644
> --- a/configs/evb-rk3328_defconfig
> +++ b/configs/evb-rk3328_defconfig
> @@ -32,6 +32,8 @@ CONFIG_SPL_PAD_TO=0x7f8000
>  CONFIG_SPL_BSS_MAX_SIZE=0x2000
>  # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
>  CONFIG_TPL_SYS_MALLOC_SIMPLE=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x400000
>  CONFIG_SPL_STACK_R=y
>  CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x10000
>  CONFIG_SPL_ATF=y
> diff --git a/configs/evb-rk3399_defconfig b/configs/evb-rk3399_defconfig
> index 186ecd1f9d53..a2f0698525b5 100644
> --- a/configs/evb-rk3399_defconfig
> +++ b/configs/evb-rk3399_defconfig
> @@ -20,6 +20,8 @@ CONFIG_SPL_MAX_SIZE=0x2e000
>  CONFIG_SPL_PAD_TO=0x7f8000
>  CONFIG_SPL_BSS_MAX_SIZE=0x2000
>  # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x400000
>  CONFIG_SPL_STACK_R=y
>  CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x10000
>  CONFIG_TPL=y
> diff --git a/configs/evb-rk3568_defconfig b/configs/evb-rk3568_defconfig
> index 8d1e45391ddd..6afd5d6d70fc 100644
> --- a/configs/evb-rk3568_defconfig
> +++ b/configs/evb-rk3568_defconfig
> @@ -30,6 +30,8 @@ CONFIG_SPL_MAX_SIZE=0x20000
>  CONFIG_SPL_PAD_TO=0x7f8000
>  CONFIG_SPL_BSS_MAX_SIZE=0x4000
>  # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x400000
>  CONFIG_SPL_STACK_R=y
>  CONFIG_SPL_ATF=y
>  CONFIG_CMD_GPT=y
> diff --git a/configs/ficus-rk3399_defconfig b/configs/ficus-rk3399_defconfig
> index fac88892d662..7012c02f28eb 100644
> --- a/configs/ficus-rk3399_defconfig
> +++ b/configs/ficus-rk3399_defconfig
> @@ -20,6 +20,8 @@ CONFIG_SPL_MAX_SIZE=0x2e000
>  CONFIG_SPL_PAD_TO=0x7f8000
>  CONFIG_SPL_BSS_MAX_SIZE=0x10000
>  # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xff8effff
>  CONFIG_SPL_STACK_R=y
>  CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x4000
>  CONFIG_CMD_BOOTZ=y
> diff --git a/configs/firefly-px30_defconfig b/configs/firefly-px30_defconfig
> index 4330885a306e..31374c55d8c3 100644
> --- a/configs/firefly-px30_defconfig
> +++ b/configs/firefly-px30_defconfig
> @@ -36,6 +36,8 @@ CONFIG_SPL_PAD_TO=0x7f8000
>  CONFIG_SPL_BSS_MAX_SIZE=0x4000
>  CONFIG_SPL_BOOTROM_SUPPORT=y
>  # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x400000
>  CONFIG_SPL_STACK_R=y
>  # CONFIG_TPL_BANNER_PRINT is not set
>  CONFIG_SPL_ATF=y
> diff --git a/configs/firefly-rk3288_defconfig b/configs/firefly-rk3288_defconfig
> index 6351ba1715f1..c2b3a0e315de 100644
> --- a/configs/firefly-rk3288_defconfig
> +++ b/configs/firefly-rk3288_defconfig
> @@ -24,6 +24,8 @@ CONFIG_SILENT_CONSOLE=y
>  CONFIG_DISPLAY_BOARDINFO_LATE=y
>  CONFIG_SPL_PAD_TO=0x7f8000
>  CONFIG_SPL_NO_BSS_LIMIT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xff718000
>  CONFIG_SPL_STACK_R=y
>  CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x2000
>  CONFIG_CMD_GPIO=y
> diff --git a/configs/firefly-rk3399_defconfig b/configs/firefly-rk3399_defconfig
> index 2be11295243f..2f7cb97aa653 100644
> --- a/configs/firefly-rk3399_defconfig
> +++ b/configs/firefly-rk3399_defconfig
> @@ -21,6 +21,8 @@ CONFIG_SPL_MAX_SIZE=0x2e000
>  CONFIG_SPL_PAD_TO=0x7f8000
>  CONFIG_SPL_BSS_MAX_SIZE=0x2000
>  # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x400000
>  CONFIG_SPL_STACK_R=y
>  CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x10000
>  CONFIG_TPL=y
> diff --git a/configs/ga10h_v1_1_defconfig b/configs/ga10h_v1_1_defconfig
> index 440a263c191c..7cdb6c56755b 100644
> --- a/configs/ga10h_v1_1_defconfig
> +++ b/configs/ga10h_v1_1_defconfig
> @@ -17,6 +17,7 @@ CONFIG_VIDEO_LCD_BL_EN="PH6"
>  CONFIG_VIDEO_LCD_BL_PWM="PH0"
>  CONFIG_VIDEO_LCD_PANEL_LVDS=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_AXP_DLDO1_VOLT=3300
>  CONFIG_CONS_INDEX=5
> diff --git a/configs/gardena-smart-gateway-at91sam_defconfig b/configs/gardena-smart-gateway-at91sam_defconfig
> index 8e509f699daf..42d700b6cd58 100644
> --- a/configs/gardena-smart-gateway-at91sam_defconfig
> +++ b/configs/gardena-smart-gateway-at91sam_defconfig
> @@ -38,6 +38,8 @@ CONFIG_SPL_MAX_SIZE=0x7000
>  CONFIG_SPL_PAD_TO=0x40000
>  CONFIG_SPL_BSS_MAX_SIZE=0x80000
>  CONFIG_SPL_SYS_MALLOC_SIMPLE=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x308000
>  # CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR is not set
>  CONFIG_SPL_NAND_SUPPORT=y
>  CONFIG_SPL_NAND_RAW_ONLY=y
> diff --git a/configs/ge_b1x5v2_defconfig b/configs/ge_b1x5v2_defconfig
> index fd1f3e37de33..5966870df2d7 100644
> --- a/configs/ge_b1x5v2_defconfig
> +++ b/configs/ge_b1x5v2_defconfig
> @@ -37,6 +37,8 @@ CONFIG_LOG_MAX_LEVEL=8
>  CONFIG_LOG_DEFAULT_LEVEL=4
>  CONFIG_BOARD_EARLY_INIT_F=y
>  CONFIG_MISC_INIT_R=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x91ffb8
>  CONFIG_SPL_SPI_LOAD=y
>  CONFIG_SYS_SPI_U_BOOT_OFFS=0x11400
>  CONFIG_SPL_USB_HOST=y
> diff --git a/configs/giedi_defconfig b/configs/giedi_defconfig
> index ae05c9a71929..ec6082a92c6a 100644
> --- a/configs/giedi_defconfig
> +++ b/configs/giedi_defconfig
> @@ -40,6 +40,8 @@ CONFIG_SPL_MAX_SIZE=0x1f000
>  CONFIG_SPL_BSS_MAX_SIZE=0x1000
>  CONFIG_SPL_BOARD_INIT=y
>  CONFIG_SPL_SYS_MALLOC_SIMPLE=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x13e000
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x800
>  CONFIG_SPL_POWER_DOMAIN=y
> diff --git a/configs/gose_defconfig b/configs/gose_defconfig
> index 9099f5dc9880..350c4ec3f0ec 100644
> --- a/configs/gose_defconfig
> +++ b/configs/gose_defconfig
> @@ -34,6 +34,8 @@ CONFIG_SPL_MAX_SIZE=0x4000
>  CONFIG_SPL_NO_BSS_LIMIT=y
>  CONFIG_SPL_BOARD_INIT=y
>  CONFIG_SPL_SYS_MALLOC_SIMPLE=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xe6340000
>  CONFIG_SPL_RAM_SUPPORT=y
>  CONFIG_SPL_RAM_DEVICE=y
>  CONFIG_SPL_SPI_LOAD=y
> diff --git a/configs/gt90h_v4_defconfig b/configs/gt90h_v4_defconfig
> index 929d93c88997..c81f0f6c5eb9 100644
> --- a/configs/gt90h_v4_defconfig
> +++ b/configs/gt90h_v4_defconfig
> @@ -16,6 +16,7 @@ CONFIG_VIDEO_LCD_POWER="PH7"
>  CONFIG_VIDEO_LCD_BL_EN="PH6"
>  CONFIG_VIDEO_LCD_BL_PWM="PH0"
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_AXP_DLDO1_VOLT=3300
>  CONFIG_CONS_INDEX=5
> diff --git a/configs/gwventana_emmc_defconfig b/configs/gwventana_emmc_defconfig
> index f0e720463b67..ef4829c54780 100644
> --- a/configs/gwventana_emmc_defconfig
> +++ b/configs/gwventana_emmc_defconfig
> @@ -40,6 +40,8 @@ CONFIG_BOARD_EARLY_INIT_F=y
>  CONFIG_MISC_INIT_R=y
>  CONFIG_PCI_INIT_R=y
>  CONFIG_SPL_BOARD_INIT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x91ffb8
>  CONFIG_SPL_STACK_R=y
>  CONFIG_SPL_FIT_IMAGE_TINY=y
>  CONFIG_SPL_DMA=y
> diff --git a/configs/gwventana_gw5904_defconfig b/configs/gwventana_gw5904_defconfig
> index 53d5bddd6197..e070dc88b331 100644
> --- a/configs/gwventana_gw5904_defconfig
> +++ b/configs/gwventana_gw5904_defconfig
> @@ -40,6 +40,8 @@ CONFIG_BOARD_EARLY_INIT_F=y
>  CONFIG_MISC_INIT_R=y
>  CONFIG_PCI_INIT_R=y
>  CONFIG_SPL_BOARD_INIT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x91ffb8
>  CONFIG_SPL_STACK_R=y
>  CONFIG_SPL_FIT_IMAGE_TINY=y
>  CONFIG_SPL_DMA=y
> diff --git a/configs/gwventana_nand_defconfig b/configs/gwventana_nand_defconfig
> index e0225278582a..a279935c124e 100644
> --- a/configs/gwventana_nand_defconfig
> +++ b/configs/gwventana_nand_defconfig
> @@ -40,6 +40,8 @@ CONFIG_BOARD_EARLY_INIT_F=y
>  CONFIG_MISC_INIT_R=y
>  CONFIG_PCI_INIT_R=y
>  CONFIG_SPL_BOARD_INIT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x91ffb8
>  CONFIG_SPL_STACK_R=y
>  CONFIG_SPL_FIT_IMAGE_TINY=y
>  CONFIG_SPL_DMA=y
> diff --git a/configs/h8_homlet_v2_defconfig b/configs/h8_homlet_v2_defconfig
> index 795de6f3ee96..8af0b3c33324 100644
> --- a/configs/h8_homlet_v2_defconfig
> +++ b/configs/h8_homlet_v2_defconfig
> @@ -11,6 +11,7 @@ CONFIG_USB1_VBUS_PIN="PL6"
>  CONFIG_AXP_GPIO=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
>  CONFIG_CONSOLE_MUX=y
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_AXP_DLDO4_VOLT=3300
>  CONFIG_USB_EHCI_HCD=y
> diff --git a/configs/harmony_defconfig b/configs/harmony_defconfig
> index 6497d41f97c2..50a210703d47 100644
> --- a/configs/harmony_defconfig
> +++ b/configs/harmony_defconfig
> @@ -14,6 +14,8 @@ CONFIG_OF_SYSTEM_SETUP=y
>  CONFIG_SYS_STDIO_DEREGISTER=y
>  CONFIG_SPL_FOOTPRINT_LIMIT=y
>  CONFIG_SPL_MAX_FOOTPRINT=0x8000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xffffc
>  CONFIG_SYS_PROMPT="Tegra20 (Harmony) # "
>  CONFIG_SYS_MAXARGS=64
>  CONFIG_SYS_PBSIZE=2085
> diff --git a/configs/helios4_defconfig b/configs/helios4_defconfig
> index d52d07a87ef1..9384aa50fb7e 100644
> --- a/configs/helios4_defconfig
> +++ b/configs/helios4_defconfig
> @@ -29,6 +29,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
>  CONFIG_SPL_MAX_SIZE=0x22fd0
>  CONFIG_SPL_BSS_MAX_SIZE=0x4000
>  CONFIG_SPL_SYS_MALLOC_SIMPLE=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x4002c000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_MAXARGS=32
>  CONFIG_CMD_TLV_EEPROM=y
> diff --git a/configs/i12-tvbox_defconfig b/configs/i12-tvbox_defconfig
> index a336dd47f052..29cea180201c 100644
> --- a/configs/i12-tvbox_defconfig
> +++ b/configs/i12-tvbox_defconfig
> @@ -7,6 +7,7 @@ CONFIG_DRAM_CLK=384
>  CONFIG_MACPWR="PH21"
>  CONFIG_VIDEO_COMPOSITE=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SYS_I2C_MVTWSI=y
> diff --git a/configs/iNet_3F_defconfig b/configs/iNet_3F_defconfig
> index 88d48610b25f..8b6936497fd5 100644
> --- a/configs/iNet_3F_defconfig
> +++ b/configs/iNet_3F_defconfig
> @@ -14,6 +14,7 @@ CONFIG_VIDEO_LCD_BL_EN="PH7"
>  CONFIG_VIDEO_LCD_BL_PWM="PB2"
>  CONFIG_VIDEO_LCD_PANEL_LVDS=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SYS_I2C_MVTWSI=y
> diff --git a/configs/iNet_3W_defconfig b/configs/iNet_3W_defconfig
> index 91b7807e2ae6..a05876a18f3f 100644
> --- a/configs/iNet_3W_defconfig
> +++ b/configs/iNet_3W_defconfig
> @@ -14,6 +14,7 @@ CONFIG_VIDEO_LCD_POWER="PH8"
>  CONFIG_VIDEO_LCD_BL_EN="PH7"
>  CONFIG_VIDEO_LCD_BL_PWM="PB2"
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SYS_I2C_MVTWSI=y
> diff --git a/configs/iNet_86VS_defconfig b/configs/iNet_86VS_defconfig
> index f4943012e21c..3a9f30877b03 100644
> --- a/configs/iNet_86VS_defconfig
> +++ b/configs/iNet_86VS_defconfig
> @@ -13,6 +13,7 @@ CONFIG_VIDEO_LCD_POWER="AXP0-0"
>  CONFIG_VIDEO_LCD_BL_EN="AXP0-1"
>  CONFIG_VIDEO_LCD_BL_PWM="PB2"
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SYS_I2C_MVTWSI=y
> diff --git a/configs/iNet_D978_rev2_defconfig b/configs/iNet_D978_rev2_defconfig
> index 339e9f6d12d4..664745c9f135 100644
> --- a/configs/iNet_D978_rev2_defconfig
> +++ b/configs/iNet_D978_rev2_defconfig
> @@ -17,6 +17,7 @@ CONFIG_VIDEO_LCD_BL_EN="PH6"
>  CONFIG_VIDEO_LCD_BL_PWM="PH0"
>  CONFIG_VIDEO_LCD_PANEL_LVDS=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_AXP_DLDO1_VOLT=3300
>  # CONFIG_REQUIRE_SERIAL_CONSOLE is not set
> diff --git a/configs/icnova-a20-swac_defconfig b/configs/icnova-a20-swac_defconfig
> index 44080b998658..afe5b28e66b9 100644
> --- a/configs/icnova-a20-swac_defconfig
> +++ b/configs/icnova-a20-swac_defconfig
> @@ -19,6 +19,7 @@ CONFIG_VIDEO_LCD_MODE="x:800,y:480,depth:24,pclk_khz:33000,le:45,ri:209,up:22,lo
>  CONFIG_VIDEO_LCD_POWER="PH22"
>  CONFIG_VIDEO_LCD_PANEL_LVDS=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_CMD_UNZIP=y
> diff --git a/configs/imx28_xea_defconfig b/configs/imx28_xea_defconfig
> index 8388cd631f25..f460a01e8cef 100644
> --- a/configs/imx28_xea_defconfig
> +++ b/configs/imx28_xea_defconfig
> @@ -36,6 +36,8 @@ CONFIG_SPL_NO_BSS_LIMIT=y
>  CONFIG_SPL_BOARD_INIT=y
>  # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
>  CONFIG_SPL_SYS_MALLOC_SIMPLE=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x20000
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x0
>  CONFIG_SUPPORT_EMMC_BOOT_OVERRIDE_PART_CONFIG=y
> diff --git a/configs/imx6dl_icore_nand_defconfig b/configs/imx6dl_icore_nand_defconfig
> index c98a5cc735a8..48e075345354 100644
> --- a/configs/imx6dl_icore_nand_defconfig
> +++ b/configs/imx6dl_icore_nand_defconfig
> @@ -24,6 +24,8 @@ CONFIG_LEGACY_IMAGE_FORMAT=y
>  CONFIG_BOOTDELAY=3
>  CONFIG_USE_BOOTCOMMAND=y
>  CONFIG_BOOTCOMMAND="run $modeboot"
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x91ffb8
>  CONFIG_SPL_DMA=y
>  CONFIG_SPL_NAND_SUPPORT=y
>  CONFIG_SPL_WATCHDOG=y
> diff --git a/configs/imx6dl_mamoj_defconfig b/configs/imx6dl_mamoj_defconfig
> index 6f249dbe2fcd..0595dccaea7c 100644
> --- a/configs/imx6dl_mamoj_defconfig
> +++ b/configs/imx6dl_mamoj_defconfig
> @@ -17,6 +17,8 @@ CONFIG_SYS_MEMTEST_END=0x88000000
>  CONFIG_LTO=y
>  CONFIG_DISTRO_DEFAULTS=y
>  CONFIG_BOOTDELAY=3
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x91ffb8
>  CONFIG_SPL_OS_BOOT=y
>  CONFIG_SPL_FALCON_BOOT_MMCSD=y
>  CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1000
> diff --git a/configs/imx6q_bosch_acc_defconfig b/configs/imx6q_bosch_acc_defconfig
> index 4b75e5794e99..a052193cb760 100644
> --- a/configs/imx6q_bosch_acc_defconfig
> +++ b/configs/imx6q_bosch_acc_defconfig
> @@ -34,6 +34,8 @@ CONFIG_USE_BOOTCOMMAND=y
>  CONFIG_BOOTCOMMAND="run mmc_mmc_fit"
>  CONFIG_SPL_BOARD_INIT=y
>  CONFIG_SPL_RAW_IMAGE_SUPPORT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x91ffb8
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0xaa
>  # CONFIG_SPL_CRC32 is not set
>  # CONFIG_SPL_CRYPTO is not set
> diff --git a/configs/imx6q_icore_nand_defconfig b/configs/imx6q_icore_nand_defconfig
> index 278bc98cbc17..340766919d65 100644
> --- a/configs/imx6q_icore_nand_defconfig
> +++ b/configs/imx6q_icore_nand_defconfig
> @@ -25,6 +25,8 @@ CONFIG_SUPPORT_RAW_INITRD=y
>  CONFIG_BOOTDELAY=3
>  CONFIG_USE_BOOTCOMMAND=y
>  CONFIG_BOOTCOMMAND="run $modeboot"
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x91ffb8
>  CONFIG_SPL_DMA=y
>  CONFIG_SPL_NAND_SUPPORT=y
>  CONFIG_SPL_WATCHDOG=y
> diff --git a/configs/imx6q_logic_defconfig b/configs/imx6q_logic_defconfig
> index c5ad6dcdd1f2..2d8b83c9f1b4 100644
> --- a/configs/imx6q_logic_defconfig
> +++ b/configs/imx6q_logic_defconfig
> @@ -27,6 +27,8 @@ CONFIG_BOOTCOMMAND="run autoboot"
>  CONFIG_SYS_CONSOLE_IS_IN_ENV=y
>  CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
>  CONFIG_SPL_RAW_IMAGE_SUPPORT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x93ffb8
>  # CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR is not set
>  CONFIG_SPL_DMA=y
>  CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot-dtb.img"
> diff --git a/configs/imx6qdl_icore_mipi_defconfig b/configs/imx6qdl_icore_mipi_defconfig
> index a2f1abe1aa6e..d1136ff97175 100644
> --- a/configs/imx6qdl_icore_mipi_defconfig
> +++ b/configs/imx6qdl_icore_mipi_defconfig
> @@ -33,6 +33,8 @@ CONFIG_BOOTDELAY=3
>  CONFIG_USE_BOOTCOMMAND=y
>  CONFIG_BOOTCOMMAND="run $modeboot"
>  CONFIG_SPL_RAW_IMAGE_SUPPORT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x91ffb8
>  CONFIG_SPL_OS_BOOT=y
>  CONFIG_SPL_FALCON_BOOT_MMCSD=y
>  CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1000
> diff --git a/configs/imx6qdl_icore_mmc_defconfig b/configs/imx6qdl_icore_mmc_defconfig
> index 91b32e4a0353..7f60a1290b7e 100644
> --- a/configs/imx6qdl_icore_mmc_defconfig
> +++ b/configs/imx6qdl_icore_mmc_defconfig
> @@ -36,6 +36,8 @@ CONFIG_BOOTDELAY=3
>  CONFIG_USE_BOOTCOMMAND=y
>  CONFIG_BOOTCOMMAND="run $modeboot"
>  CONFIG_SPL_RAW_IMAGE_SUPPORT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x91ffb8
>  CONFIG_SPL_OS_BOOT=y
>  CONFIG_SPL_FALCON_BOOT_MMCSD=y
>  CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1000
> diff --git a/configs/imx6qdl_icore_nand_defconfig b/configs/imx6qdl_icore_nand_defconfig
> index 278bc98cbc17..340766919d65 100644
> --- a/configs/imx6qdl_icore_nand_defconfig
> +++ b/configs/imx6qdl_icore_nand_defconfig
> @@ -25,6 +25,8 @@ CONFIG_SUPPORT_RAW_INITRD=y
>  CONFIG_BOOTDELAY=3
>  CONFIG_USE_BOOTCOMMAND=y
>  CONFIG_BOOTCOMMAND="run $modeboot"
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x91ffb8
>  CONFIG_SPL_DMA=y
>  CONFIG_SPL_NAND_SUPPORT=y
>  CONFIG_SPL_WATCHDOG=y
> diff --git a/configs/imx6qdl_icore_rqs_defconfig b/configs/imx6qdl_icore_rqs_defconfig
> index cfd35608cfcc..f4ce0bdc33a0 100644
> --- a/configs/imx6qdl_icore_rqs_defconfig
> +++ b/configs/imx6qdl_icore_rqs_defconfig
> @@ -30,6 +30,8 @@ CONFIG_BOOTDELAY=3
>  CONFIG_USE_BOOTCOMMAND=y
>  CONFIG_BOOTCOMMAND="run $modeboot"
>  CONFIG_SPL_RAW_IMAGE_SUPPORT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x91ffb8
>  CONFIG_SPL_OS_BOOT=y
>  CONFIG_SPL_FALCON_BOOT_MMCSD=y
>  CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR=0x1000
> diff --git a/configs/imx6ul_geam_mmc_defconfig b/configs/imx6ul_geam_mmc_defconfig
> index a84547feddd9..dc517d8bdc96 100644
> --- a/configs/imx6ul_geam_mmc_defconfig
> +++ b/configs/imx6ul_geam_mmc_defconfig
> @@ -28,6 +28,8 @@ CONFIG_BOOTDELAY=3
>  CONFIG_USE_BOOTCOMMAND=y
>  CONFIG_BOOTCOMMAND="run $modeboot"
>  CONFIG_SPL_RAW_IMAGE_SUPPORT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x91ffb8
>  CONFIG_SPL_WATCHDOG=y
>  CONFIG_HUSH_PARSER=y
>  CONFIG_SYS_PROMPT="geam6ul> "
> diff --git a/configs/imx6ul_geam_nand_defconfig b/configs/imx6ul_geam_nand_defconfig
> index 8bd4360efd2e..ad7c821ebaf5 100644
> --- a/configs/imx6ul_geam_nand_defconfig
> +++ b/configs/imx6ul_geam_nand_defconfig
> @@ -25,6 +25,8 @@ CONFIG_SUPPORT_RAW_INITRD=y
>  CONFIG_BOOTDELAY=3
>  CONFIG_USE_BOOTCOMMAND=y
>  CONFIG_BOOTCOMMAND="run $modeboot"
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x91ffb8
>  CONFIG_SPL_DMA=y
>  CONFIG_SPL_NAND_SUPPORT=y
>  CONFIG_SPL_WATCHDOG=y
> diff --git a/configs/imx6ul_isiot_emmc_defconfig b/configs/imx6ul_isiot_emmc_defconfig
> index 9262055f1da5..0a451618e78e 100644
> --- a/configs/imx6ul_isiot_emmc_defconfig
> +++ b/configs/imx6ul_isiot_emmc_defconfig
> @@ -28,6 +28,8 @@ CONFIG_BOOTDELAY=3
>  CONFIG_USE_BOOTCOMMAND=y
>  CONFIG_BOOTCOMMAND="run $modeboot"
>  CONFIG_SPL_RAW_IMAGE_SUPPORT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x91ffb8
>  CONFIG_SPL_WATCHDOG=y
>  CONFIG_HUSH_PARSER=y
>  CONFIG_SYS_PROMPT="isiotmx6ul> "
> diff --git a/configs/imx6ul_isiot_nand_defconfig b/configs/imx6ul_isiot_nand_defconfig
> index d1da6da311c8..dd8543d5f5c2 100644
> --- a/configs/imx6ul_isiot_nand_defconfig
> +++ b/configs/imx6ul_isiot_nand_defconfig
> @@ -25,6 +25,8 @@ CONFIG_SUPPORT_RAW_INITRD=y
>  CONFIG_BOOTDELAY=3
>  CONFIG_USE_BOOTCOMMAND=y
>  CONFIG_BOOTCOMMAND="run $modeboot"
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x91ffb8
>  CONFIG_SPL_DMA=y
>  CONFIG_SPL_NAND_SUPPORT=y
>  CONFIG_SPL_WATCHDOG=y
> diff --git a/configs/imx7_cm_defconfig b/configs/imx7_cm_defconfig
> index 351d47fe552e..8b05ee2f6df5 100644
> --- a/configs/imx7_cm_defconfig
> +++ b/configs/imx7_cm_defconfig
> @@ -26,6 +26,8 @@ CONFIG_DEFAULT_FDT_FILE="ask"
>  # CONFIG_BOARD_EARLY_INIT_F is not set
>  CONFIG_SPL_MAX_SIZE=0xe000
>  CONFIG_SPL_BSS_MAX_SIZE=0x100000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x946bb8
>  CONFIG_SPL_I2C=y
>  CONFIG_SPL_USB_HOST=y
>  CONFIG_SPL_USB_GADGET=y
> diff --git a/configs/imx8mm-cl-iot-gate-optee_defconfig b/configs/imx8mm-cl-iot-gate-optee_defconfig
> index f2ce0a712dbf..64d2befc98c6 100644
> --- a/configs/imx8mm-cl-iot-gate-optee_defconfig
> +++ b/configs/imx8mm-cl-iot-gate-optee_defconfig
> @@ -26,6 +26,8 @@ CONFIG_BOARD_LATE_INIT=y
>  CONFIG_SPL_MAX_SIZE=0x25000
>  CONFIG_SPL_BSS_MAX_SIZE=0x2000
>  CONFIG_SPL_BOARD_INIT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x920000
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
>  CONFIG_SPL_I2C=y
> diff --git a/configs/imx8mm-cl-iot-gate_defconfig b/configs/imx8mm-cl-iot-gate_defconfig
> index add2687779e0..2494d1a79b0e 100644
> --- a/configs/imx8mm-cl-iot-gate_defconfig
> +++ b/configs/imx8mm-cl-iot-gate_defconfig
> @@ -28,6 +28,8 @@ CONFIG_BOARD_LATE_INIT=y
>  CONFIG_SPL_MAX_SIZE=0x25000
>  CONFIG_SPL_BSS_MAX_SIZE=0x2000
>  CONFIG_SPL_BOARD_INIT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x920000
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
>  CONFIG_SPL_I2C=y
> diff --git a/configs/imx8mm-icore-mx8mm-ctouch2_defconfig b/configs/imx8mm-icore-mx8mm-ctouch2_defconfig
> index 6e3cb0601e11..5196f6f0ea2c 100644
> --- a/configs/imx8mm-icore-mx8mm-ctouch2_defconfig
> +++ b/configs/imx8mm-icore-mx8mm-ctouch2_defconfig
> @@ -26,6 +26,8 @@ CONFIG_DEFAULT_FDT_FILE="imx8mm-icore-mx8mm-ctouch2.dtb"
>  CONFIG_SPL_MAX_SIZE=0x25000
>  CONFIG_SPL_BSS_MAX_SIZE=0x2000
>  CONFIG_SPL_BOARD_INIT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x920000
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
>  CONFIG_SPL_POWER=y
> diff --git a/configs/imx8mm-icore-mx8mm-edimm2.2_defconfig b/configs/imx8mm-icore-mx8mm-edimm2.2_defconfig
> index 3a2259515e07..cf385a625b3f 100644
> --- a/configs/imx8mm-icore-mx8mm-edimm2.2_defconfig
> +++ b/configs/imx8mm-icore-mx8mm-edimm2.2_defconfig
> @@ -26,6 +26,8 @@ CONFIG_DEFAULT_FDT_FILE="imx8mm-icore-mx8mm-edimm2.2.dtb"
>  CONFIG_SPL_MAX_SIZE=0x25000
>  CONFIG_SPL_BSS_MAX_SIZE=0x2000
>  CONFIG_SPL_BOARD_INIT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x920000
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
>  CONFIG_SPL_POWER=y
> diff --git a/configs/imx8mm-mx8menlo_defconfig b/configs/imx8mm-mx8menlo_defconfig
> index 1eb00e1a745d..f104dada533a 100644
> --- a/configs/imx8mm-mx8menlo_defconfig
> +++ b/configs/imx8mm-mx8menlo_defconfig
> @@ -37,6 +37,8 @@ CONFIG_BOARD_LATE_INIT=y
>  CONFIG_SPL_MAX_SIZE=0x25000
>  CONFIG_SPL_BSS_MAX_SIZE=0x2000
>  CONFIG_SPL_BOARD_INIT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x920000
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
>  CONFIG_SPL_I2C=y
> diff --git a/configs/imx8mm_beacon_defconfig b/configs/imx8mm_beacon_defconfig
> index d11671f0346e..3481aff6d55f 100644
> --- a/configs/imx8mm_beacon_defconfig
> +++ b/configs/imx8mm_beacon_defconfig
> @@ -28,6 +28,8 @@ CONFIG_DEFAULT_FDT_FILE="imx8mm-beacon-kit.dtb"
>  CONFIG_SPL_MAX_SIZE=0x25000
>  CONFIG_SPL_BSS_MAX_SIZE=0x2000
>  CONFIG_SPL_BOARD_INIT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x920000
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
>  CONFIG_SPL_I2C=y
> diff --git a/configs/imx8mm_data_modul_edm_sbc_defconfig b/configs/imx8mm_data_modul_edm_sbc_defconfig
> index b76f4c44e316..3e141aef6c37 100644
> --- a/configs/imx8mm_data_modul_edm_sbc_defconfig
> +++ b/configs/imx8mm_data_modul_edm_sbc_defconfig
> @@ -46,6 +46,8 @@ CONFIG_SPL_BSS_MAX_SIZE=0x2000
>  # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
>  CONFIG_SPL_LEGACY_IMAGE_FORMAT=y
>  CONFIG_SPL_LEGACY_IMAGE_CRC_CHECK=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x920000
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
>  CONFIG_SPL_I2C=y
> diff --git a/configs/imx8mm_evk_defconfig b/configs/imx8mm_evk_defconfig
> index 00f605804df4..2d73d2454dea 100644
> --- a/configs/imx8mm_evk_defconfig
> +++ b/configs/imx8mm_evk_defconfig
> @@ -26,6 +26,8 @@ CONFIG_BOARD_LATE_INIT=y
>  CONFIG_SPL_MAX_SIZE=0x25000
>  CONFIG_SPL_BSS_MAX_SIZE=0x2000
>  CONFIG_SPL_BOARD_INIT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x920000
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
>  CONFIG_SPL_I2C=y
> diff --git a/configs/imx8mm_venice_defconfig b/configs/imx8mm_venice_defconfig
> index 1db032f39ec8..3f8662ac7155 100644
> --- a/configs/imx8mm_venice_defconfig
> +++ b/configs/imx8mm_venice_defconfig
> @@ -33,6 +33,8 @@ CONFIG_PREBOOT="gsc wd-disable"
>  CONFIG_BOARD_LATE_INIT=y
>  CONFIG_SPL_MAX_SIZE=0x25000
>  CONFIG_SPL_BSS_MAX_SIZE=0x2000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x920000
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
>  CONFIG_SPL_I2C=y
> diff --git a/configs/imx8mn_beacon_2g_defconfig b/configs/imx8mn_beacon_2g_defconfig
> index 905d3e502abd..bb503652362e 100644
> --- a/configs/imx8mn_beacon_2g_defconfig
> +++ b/configs/imx8mn_beacon_2g_defconfig
> @@ -36,6 +36,8 @@ CONFIG_SPL_MAX_SIZE=0x25000
>  CONFIG_SPL_BSS_MAX_SIZE=0x2000
>  CONFIG_SPL_BOARD_INIT=y
>  CONFIG_SPL_BOOTROM_SUPPORT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x187ff0
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
>  CONFIG_SPL_I2C=y
> diff --git a/configs/imx8mn_beacon_defconfig b/configs/imx8mn_beacon_defconfig
> index f4b61c1aa5de..95e4cc432ada 100644
> --- a/configs/imx8mn_beacon_defconfig
> +++ b/configs/imx8mn_beacon_defconfig
> @@ -35,6 +35,8 @@ CONFIG_SPL_MAX_SIZE=0x25000
>  CONFIG_SPL_BSS_MAX_SIZE=0x2000
>  CONFIG_SPL_BOARD_INIT=y
>  CONFIG_SPL_BOOTROM_SUPPORT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x187ff0
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
>  CONFIG_SPL_I2C=y
> diff --git a/configs/imx8mn_bsh_smm_s2_defconfig b/configs/imx8mn_bsh_smm_s2_defconfig
> index 2e27dd98c566..9a4609dd8239 100644
> --- a/configs/imx8mn_bsh_smm_s2_defconfig
> +++ b/configs/imx8mn_bsh_smm_s2_defconfig
> @@ -30,6 +30,8 @@ CONFIG_SPL_MAX_SIZE=0x25000
>  CONFIG_SPL_BSS_MAX_SIZE=0x2000
>  CONFIG_SPL_BOARD_INIT=y
>  CONFIG_SPL_BOOTROM_SUPPORT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x980000
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
>  CONFIG_SPL_I2C=y
> diff --git a/configs/imx8mn_bsh_smm_s2pro_defconfig b/configs/imx8mn_bsh_smm_s2pro_defconfig
> index 706beb9e6532..66586ba96a23 100644
> --- a/configs/imx8mn_bsh_smm_s2pro_defconfig
> +++ b/configs/imx8mn_bsh_smm_s2pro_defconfig
> @@ -31,6 +31,8 @@ CONFIG_SPL_MAX_SIZE=0x25000
>  CONFIG_SPL_BSS_MAX_SIZE=0x2000
>  CONFIG_SPL_BOARD_INIT=y
>  CONFIG_SPL_BOOTROM_SUPPORT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x980000
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
>  CONFIG_SPL_I2C=y
> diff --git a/configs/imx8mn_ddr4_evk_defconfig b/configs/imx8mn_ddr4_evk_defconfig
> index 222554188631..16f217cd5a75 100644
> --- a/configs/imx8mn_ddr4_evk_defconfig
> +++ b/configs/imx8mn_ddr4_evk_defconfig
> @@ -29,6 +29,8 @@ CONFIG_SPL_MAX_SIZE=0x25000
>  CONFIG_SPL_BSS_MAX_SIZE=0x2000
>  CONFIG_SPL_BOARD_INIT=y
>  CONFIG_SPL_BOOTROM_SUPPORT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x980000
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
>  CONFIG_SPL_I2C=y
> diff --git a/configs/imx8mn_evk_defconfig b/configs/imx8mn_evk_defconfig
> index beb89a7523ef..ead7f6d21a82 100644
> --- a/configs/imx8mn_evk_defconfig
> +++ b/configs/imx8mn_evk_defconfig
> @@ -33,6 +33,8 @@ CONFIG_SPL_BOOTROM_SUPPORT=y
>  # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
>  CONFIG_SPL_LEGACY_IMAGE_FORMAT=y
>  CONFIG_SPL_LEGACY_IMAGE_CRC_CHECK=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x980000
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
>  CONFIG_SPL_I2C=y
> diff --git a/configs/imx8mn_var_som_defconfig b/configs/imx8mn_var_som_defconfig
> index c79168917271..a1f9cee1e193 100644
> --- a/configs/imx8mn_var_som_defconfig
> +++ b/configs/imx8mn_var_som_defconfig
> @@ -31,6 +31,8 @@ CONFIG_SPL_MAX_SIZE=0x25000
>  CONFIG_SPL_BSS_MAX_SIZE=0x2000
>  CONFIG_SPL_BOARD_INIT=y
>  CONFIG_SPL_BOOTROM_SUPPORT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x980000
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
>  CONFIG_SPL_I2C=y
> diff --git a/configs/imx8mn_venice_defconfig b/configs/imx8mn_venice_defconfig
> index 2ca467871bd8..f2ddb98a1c0b 100644
> --- a/configs/imx8mn_venice_defconfig
> +++ b/configs/imx8mn_venice_defconfig
> @@ -35,6 +35,8 @@ CONFIG_BOARD_LATE_INIT=y
>  CONFIG_SPL_MAX_SIZE=0x25000
>  CONFIG_SPL_BSS_MAX_SIZE=0x2000
>  CONFIG_SPL_BOOTROM_SUPPORT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x980000
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
>  CONFIG_SPL_I2C=y
> diff --git a/configs/imx8mp_dhcom_pdk2_defconfig b/configs/imx8mp_dhcom_pdk2_defconfig
> index 6507b9d8b191..cc815ac2fe04 100644
> --- a/configs/imx8mp_dhcom_pdk2_defconfig
> +++ b/configs/imx8mp_dhcom_pdk2_defconfig
> @@ -49,6 +49,8 @@ CONFIG_SPL_MAX_SIZE=0x25000
>  CONFIG_SPL_BSS_MAX_SIZE=0x400
>  CONFIG_SPL_BOOTROM_SUPPORT=y
>  # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x96fc00
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
>  CONFIG_SPL_I2C=y
> diff --git a/configs/imx8mp_evk_defconfig b/configs/imx8mp_evk_defconfig
> index 55dce14294e6..1f4bf537c407 100644
> --- a/configs/imx8mp_evk_defconfig
> +++ b/configs/imx8mp_evk_defconfig
> @@ -33,6 +33,8 @@ CONFIG_SPL_BSS_MAX_SIZE=0x400
>  CONFIG_SPL_BOARD_INIT=y
>  CONFIG_SPL_BOOTROM_SUPPORT=y
>  CONFIG_SPL_SYS_MALLOC_SIMPLE=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x960000
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
>  CONFIG_SPL_I2C=y
> diff --git a/configs/imx8mp_rsb3720a1_4G_defconfig b/configs/imx8mp_rsb3720a1_4G_defconfig
> index 152b0bae091f..e8c1bc511918 100644
> --- a/configs/imx8mp_rsb3720a1_4G_defconfig
> +++ b/configs/imx8mp_rsb3720a1_4G_defconfig
> @@ -39,6 +39,8 @@ CONFIG_SPL_BSS_MAX_SIZE=0x400
>  CONFIG_SPL_BOARD_INIT=y
>  CONFIG_SPL_BOOTROM_SUPPORT=y
>  CONFIG_SPL_SYS_MALLOC_SIMPLE=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x960000
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
>  CONFIG_SPL_I2C=y
> diff --git a/configs/imx8mp_rsb3720a1_6G_defconfig b/configs/imx8mp_rsb3720a1_6G_defconfig
> index 223767bb7d7b..323f5fb3356a 100644
> --- a/configs/imx8mp_rsb3720a1_6G_defconfig
> +++ b/configs/imx8mp_rsb3720a1_6G_defconfig
> @@ -39,6 +39,8 @@ CONFIG_SPL_BSS_MAX_SIZE=0x400
>  CONFIG_SPL_BOARD_INIT=y
>  CONFIG_SPL_BOOTROM_SUPPORT=y
>  CONFIG_SPL_SYS_MALLOC_SIMPLE=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x960000
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
>  CONFIG_SPL_I2C=y
> diff --git a/configs/imx8mp_venice_defconfig b/configs/imx8mp_venice_defconfig
> index c44eadae6020..2485ae21ee7c 100644
> --- a/configs/imx8mp_venice_defconfig
> +++ b/configs/imx8mp_venice_defconfig
> @@ -35,6 +35,8 @@ CONFIG_BOARD_LATE_INIT=y
>  CONFIG_SPL_MAX_SIZE=0x26000
>  CONFIG_SPL_BSS_MAX_SIZE=0x400
>  CONFIG_SPL_BOOTROM_SUPPORT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x960000
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
>  CONFIG_SPL_I2C=y
> diff --git a/configs/imx8mq_cm_defconfig b/configs/imx8mq_cm_defconfig
> index a9cc11c22fee..a67c82ac3c34 100644
> --- a/configs/imx8mq_cm_defconfig
> +++ b/configs/imx8mq_cm_defconfig
> @@ -30,6 +30,8 @@ CONFIG_BOARD_LATE_INIT=y
>  CONFIG_SPL_MAX_SIZE=0x1f000
>  CONFIG_SPL_BSS_MAX_SIZE=0x2000
>  CONFIG_SPL_BOARD_INIT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x187ff0
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
>  CONFIG_SPL_I2C=y
> diff --git a/configs/imx8mq_evk_defconfig b/configs/imx8mq_evk_defconfig
> index 7ac45288632e..da03518af2b2 100644
> --- a/configs/imx8mq_evk_defconfig
> +++ b/configs/imx8mq_evk_defconfig
> @@ -32,6 +32,8 @@ CONFIG_BOARD_LATE_INIT=y
>  CONFIG_SPL_MAX_SIZE=0x1f000
>  CONFIG_SPL_BSS_MAX_SIZE=0x2000
>  CONFIG_SPL_BOARD_INIT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x187ff0
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
>  CONFIG_SPL_I2C=y
> diff --git a/configs/imx8mq_phanbell_defconfig b/configs/imx8mq_phanbell_defconfig
> index 83485648a577..6ef649b1646f 100644
> --- a/configs/imx8mq_phanbell_defconfig
> +++ b/configs/imx8mq_phanbell_defconfig
> @@ -34,6 +34,8 @@ CONFIG_BOARD_EARLY_INIT_F=y
>  CONFIG_SPL_MAX_SIZE=0x2b000
>  CONFIG_SPL_BSS_MAX_SIZE=0x2000
>  CONFIG_SPL_BOARD_INIT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x187ff0
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
>  CONFIG_SPL_I2C=y
> diff --git a/configs/imx8qm_mek_defconfig b/configs/imx8qm_mek_defconfig
> index 0bd0dbeb6e2a..5fc2e7a414ef 100644
> --- a/configs/imx8qm_mek_defconfig
> +++ b/configs/imx8qm_mek_defconfig
> @@ -34,6 +34,8 @@ CONFIG_SPL_MAX_SIZE=0x1f000
>  CONFIG_SPL_BSS_MAX_SIZE=0x1000
>  CONFIG_SPL_BOARD_INIT=y
>  CONFIG_SPL_SYS_MALLOC_SIMPLE=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x13e000
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x800
>  CONFIG_SPL_POWER_DOMAIN=y
> diff --git a/configs/imx8qxp_mek_defconfig b/configs/imx8qxp_mek_defconfig
> index 5603bbf1a31d..8b382156006f 100644
> --- a/configs/imx8qxp_mek_defconfig
> +++ b/configs/imx8qxp_mek_defconfig
> @@ -34,6 +34,8 @@ CONFIG_SPL_MAX_SIZE=0x1f000
>  CONFIG_SPL_BSS_MAX_SIZE=0x1000
>  CONFIG_SPL_BOARD_INIT=y
>  CONFIG_SPL_SYS_MALLOC_SIMPLE=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x13e000
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x800
>  CONFIG_SPL_POWER_DOMAIN=y
> diff --git a/configs/imx8ulp_evk_defconfig b/configs/imx8ulp_evk_defconfig
> index 778766cd9799..5d3c8395aeef 100644
> --- a/configs/imx8ulp_evk_defconfig
> +++ b/configs/imx8ulp_evk_defconfig
> @@ -31,6 +31,8 @@ CONFIG_SPL_MAX_SIZE=0x25000
>  CONFIG_SPL_BSS_MAX_SIZE=0x2000
>  CONFIG_SPL_BOARD_INIT=y
>  CONFIG_SPL_BOOTROM_SUPPORT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x22050000
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
>  CONFIG_SPL_WATCHDOG=y
> diff --git a/configs/inet1_defconfig b/configs/inet1_defconfig
> index 13fd425d5e22..dae6b23a936e 100644
> --- a/configs/inet1_defconfig
> +++ b/configs/inet1_defconfig
> @@ -14,6 +14,7 @@ CONFIG_VIDEO_LCD_BL_EN="PH7"
>  CONFIG_VIDEO_LCD_BL_PWM="PB2"
>  CONFIG_VIDEO_LCD_PANEL_LVDS=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SYS_I2C_MVTWSI=y
> diff --git a/configs/inet86dz_defconfig b/configs/inet86dz_defconfig
> index 2b824983ac70..0382a4a05411 100644
> --- a/configs/inet86dz_defconfig
> +++ b/configs/inet86dz_defconfig
> @@ -16,6 +16,7 @@ CONFIG_VIDEO_LCD_POWER="PH7"
>  CONFIG_VIDEO_LCD_BL_EN="PH6"
>  CONFIG_VIDEO_LCD_BL_PWM="PH0"
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_AXP_DLDO1_VOLT=3300
>  CONFIG_CONS_INDEX=5
> diff --git a/configs/inet97fv2_defconfig b/configs/inet97fv2_defconfig
> index 4b9946f92dbd..f3e374c2e345 100644
> --- a/configs/inet97fv2_defconfig
> +++ b/configs/inet97fv2_defconfig
> @@ -13,6 +13,7 @@ CONFIG_VIDEO_LCD_POWER="PH8"
>  CONFIG_VIDEO_LCD_BL_EN="PH7"
>  CONFIG_VIDEO_LCD_BL_PWM="PB2"
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SYS_I2C_MVTWSI=y
> diff --git a/configs/inet98v_rev2_defconfig b/configs/inet98v_rev2_defconfig
> index f068de4b57f9..c392fc2bb871 100644
> --- a/configs/inet98v_rev2_defconfig
> +++ b/configs/inet98v_rev2_defconfig
> @@ -15,6 +15,7 @@ CONFIG_VIDEO_LCD_POWER="AXP0-0"
>  CONFIG_VIDEO_LCD_BL_EN="AXP0-1"
>  CONFIG_VIDEO_LCD_BL_PWM="PB2"
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SYS_I2C_MVTWSI=y
> diff --git a/configs/inet9f_rev03_defconfig b/configs/inet9f_rev03_defconfig
> index 08efec27097d..81a1c9940fd8 100644
> --- a/configs/inet9f_rev03_defconfig
> +++ b/configs/inet9f_rev03_defconfig
> @@ -13,6 +13,7 @@ CONFIG_VIDEO_LCD_POWER="PH8"
>  CONFIG_VIDEO_LCD_BL_EN="PH7"
>  CONFIG_VIDEO_LCD_BL_PWM="PB2"
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SYS_I2C_MVTWSI=y
> diff --git a/configs/inet_q972_defconfig b/configs/inet_q972_defconfig
> index 73700b12297a..a4a828c70a3a 100644
> --- a/configs/inet_q972_defconfig
> +++ b/configs/inet_q972_defconfig
> @@ -15,6 +15,7 @@ CONFIG_VIDEO_LCD_DCLK_PHASE=0
>  CONFIG_VIDEO_LCD_BL_EN="PA25"
>  CONFIG_VIDEO_LCD_BL_PWM="PH13"
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_AXP_DLDO1_VOLT=3300
>  CONFIG_USB_EHCI_HCD=y
> diff --git a/configs/jesurun_q5_defconfig b/configs/jesurun_q5_defconfig
> index d5b0da01edf6..5fce5836c9c5 100644
> --- a/configs/jesurun_q5_defconfig
> +++ b/configs/jesurun_q5_defconfig
> @@ -8,6 +8,7 @@ CONFIG_MACPWR="PH19"
>  CONFIG_USB0_VBUS_PIN="PB9"
>  CONFIG_VIDEO_COMPOSITE=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SYS_I2C_MVTWSI=y
> diff --git a/configs/jetson-tk1_defconfig b/configs/jetson-tk1_defconfig
> index 20fed61ec7aa..e0f32a5d63f2 100644
> --- a/configs/jetson-tk1_defconfig
> +++ b/configs/jetson-tk1_defconfig
> @@ -16,6 +16,8 @@ CONFIG_CONSOLE_MUX=y
>  CONFIG_SYS_STDIO_DEREGISTER=y
>  CONFIG_SPL_FOOTPRINT_LIMIT=y
>  CONFIG_SPL_MAX_FOOTPRINT=0x8000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x800ffffc
>  CONFIG_SYS_PROMPT="Tegra124 (Jetson TK1) # "
>  CONFIG_SYS_MAXARGS=64
>  CONFIG_SYS_PBSIZE=2089
> diff --git a/configs/k2e_evm_defconfig b/configs/k2e_evm_defconfig
> index 9c34a0ddc6ae..ed6e96dac690 100644
> --- a/configs/k2e_evm_defconfig
> +++ b/configs/k2e_evm_defconfig
> @@ -31,6 +31,8 @@ CONFIG_SYS_CONSOLE_INFO_QUIET=y
>  CONFIG_BOARD_EARLY_INIT_F=y
>  CONFIG_SPL_MAX_SIZE=0xfff8
>  CONFIG_SPL_BSS_MAX_SIZE=0x8000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xc1223f4
>  CONFIG_SPL_I2C=y
>  CONFIG_SPL_NAND_DRIVERS=y
>  CONFIG_SPL_NAND_ECC=y
> diff --git a/configs/k2g_evm_defconfig b/configs/k2g_evm_defconfig
> index 0469e4f11492..1ec8dd042e21 100644
> --- a/configs/k2g_evm_defconfig
> +++ b/configs/k2g_evm_defconfig
> @@ -30,6 +30,8 @@ CONFIG_SYS_CONSOLE_INFO_QUIET=y
>  CONFIG_BOARD_EARLY_INIT_F=y
>  CONFIG_SPL_MAX_SIZE=0xfff8
>  CONFIG_SPL_BSS_MAX_SIZE=0x8000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xc0c23f4
>  CONFIG_SPL_I2C=y
>  CONFIG_SPL_NAND_DRIVERS=y
>  CONFIG_SPL_NAND_ECC=y
> diff --git a/configs/k2hk_evm_defconfig b/configs/k2hk_evm_defconfig
> index 543810905cd6..2238aed03e5f 100644
> --- a/configs/k2hk_evm_defconfig
> +++ b/configs/k2hk_evm_defconfig
> @@ -31,6 +31,8 @@ CONFIG_SYS_CONSOLE_INFO_QUIET=y
>  CONFIG_BOARD_EARLY_INIT_F=y
>  CONFIG_SPL_MAX_SIZE=0xfff8
>  CONFIG_SPL_BSS_MAX_SIZE=0x8000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xc2223f4
>  CONFIG_SPL_I2C=y
>  CONFIG_SPL_NAND_DRIVERS=y
>  CONFIG_SPL_NAND_ECC=y
> diff --git a/configs/k2l_evm_defconfig b/configs/k2l_evm_defconfig
> index 1a68b45197fb..d96b8084ee45 100644
> --- a/configs/k2l_evm_defconfig
> +++ b/configs/k2l_evm_defconfig
> @@ -31,6 +31,8 @@ CONFIG_SYS_CONSOLE_INFO_QUIET=y
>  CONFIG_BOARD_EARLY_INIT_F=y
>  CONFIG_SPL_MAX_SIZE=0xfff8
>  CONFIG_SPL_BSS_MAX_SIZE=0x8000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xc1223f4
>  CONFIG_SPL_I2C=y
>  CONFIG_SPL_NAND_DRIVERS=y
>  CONFIG_SPL_NAND_ECC=y
> diff --git a/configs/khadas-edge-captain-rk3399_defconfig b/configs/khadas-edge-captain-rk3399_defconfig
> index 24fa9b016532..085c6b667321 100644
> --- a/configs/khadas-edge-captain-rk3399_defconfig
> +++ b/configs/khadas-edge-captain-rk3399_defconfig
> @@ -20,6 +20,8 @@ CONFIG_SPL_MAX_SIZE=0x2e000
>  CONFIG_SPL_PAD_TO=0x7f8000
>  CONFIG_SPL_BSS_MAX_SIZE=0x2000
>  # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x400000
>  CONFIG_SPL_STACK_R=y
>  CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x10000
>  CONFIG_TPL=y
> diff --git a/configs/khadas-edge-rk3399_defconfig b/configs/khadas-edge-rk3399_defconfig
> index 78ac8ade5889..b66301877e2a 100644
> --- a/configs/khadas-edge-rk3399_defconfig
> +++ b/configs/khadas-edge-rk3399_defconfig
> @@ -20,6 +20,8 @@ CONFIG_SPL_MAX_SIZE=0x2e000
>  CONFIG_SPL_PAD_TO=0x7f8000
>  CONFIG_SPL_BSS_MAX_SIZE=0x2000
>  # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x400000
>  CONFIG_SPL_STACK_R=y
>  CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x10000
>  CONFIG_TPL=y
> diff --git a/configs/khadas-edge-v-rk3399_defconfig b/configs/khadas-edge-v-rk3399_defconfig
> index 2ae99a15b522..5438d0a32264 100644
> --- a/configs/khadas-edge-v-rk3399_defconfig
> +++ b/configs/khadas-edge-v-rk3399_defconfig
> @@ -20,6 +20,8 @@ CONFIG_SPL_MAX_SIZE=0x2e000
>  CONFIG_SPL_PAD_TO=0x7f8000
>  CONFIG_SPL_BSS_MAX_SIZE=0x2000
>  # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x400000
>  CONFIG_SPL_STACK_R=y
>  CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x10000
>  CONFIG_TPL=y
> diff --git a/configs/koelsch_defconfig b/configs/koelsch_defconfig
> index 186200f02819..467b44c3e6b0 100644
> --- a/configs/koelsch_defconfig
> +++ b/configs/koelsch_defconfig
> @@ -34,6 +34,8 @@ CONFIG_SPL_MAX_SIZE=0x4000
>  CONFIG_SPL_NO_BSS_LIMIT=y
>  CONFIG_SPL_BOARD_INIT=y
>  CONFIG_SPL_SYS_MALLOC_SIMPLE=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xe6340000
>  CONFIG_SPL_RAM_SUPPORT=y
>  CONFIG_SPL_RAM_DEVICE=y
>  CONFIG_SPL_SPI_LOAD=y
> diff --git a/configs/kontron-sl-mx6ul_defconfig b/configs/kontron-sl-mx6ul_defconfig
> index 1ba4d1fca841..904e953ce0fa 100644
> --- a/configs/kontron-sl-mx6ul_defconfig
> +++ b/configs/kontron-sl-mx6ul_defconfig
> @@ -28,6 +28,8 @@ CONFIG_BOARD_TYPES=y
>  CONFIG_BOARD_EARLY_INIT_F=y
>  CONFIG_SPL_LEGACY_IMAGE_FORMAT=y
>  CONFIG_SPL_LEGACY_IMAGE_CRC_CHECK=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x91ffb8
>  CONFIG_SPL_USB_HOST=y
>  CONFIG_SPL_USB_GADGET=y
>  CONFIG_SPL_WATCHDOG=y
> diff --git a/configs/kontron-sl-mx8mm_defconfig b/configs/kontron-sl-mx8mm_defconfig
> index db69cf53c8cd..cd96210c6bbf 100644
> --- a/configs/kontron-sl-mx8mm_defconfig
> +++ b/configs/kontron-sl-mx8mm_defconfig
> @@ -29,6 +29,8 @@ CONFIG_BOARD_TYPES=y
>  CONFIG_SPL_MAX_SIZE=0x25000
>  CONFIG_SPL_BSS_MAX_SIZE=0x2000
>  CONFIG_SPL_BOARD_INIT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x91fff0
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
>  # CONFIG_SPL_FIT_IMAGE_TINY is not set
> diff --git a/configs/kontron_pitx_imx8m_defconfig b/configs/kontron_pitx_imx8m_defconfig
> index f8e11f581f02..4660e98e5aeb 100644
> --- a/configs/kontron_pitx_imx8m_defconfig
> +++ b/configs/kontron_pitx_imx8m_defconfig
> @@ -32,6 +32,8 @@ CONFIG_BOARD_LATE_INIT=y
>  CONFIG_MISC_INIT_R=y
>  CONFIG_SPL_MAX_SIZE=0x1f000
>  CONFIG_SPL_BSS_MAX_SIZE=0x2000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x187ff0
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
>  CONFIG_SPL_I2C=y
> diff --git a/configs/kontron_sl28_defconfig b/configs/kontron_sl28_defconfig
> index 9f4be1ac9d01..345db0314896 100644
> --- a/configs/kontron_sl28_defconfig
> +++ b/configs/kontron_sl28_defconfig
> @@ -40,6 +40,8 @@ CONFIG_PCI_INIT_R=y
>  CONFIG_SPL_MAX_SIZE=0x20000
>  CONFIG_SPL_BSS_MAX_SIZE=0x100000
>  CONFIG_SPL_BOARD_INIT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x18009ff0
>  CONFIG_SPL_MPC8XXX_INIT_DDR=y
>  CONFIG_SPL_SPI_LOAD=y
>  CONFIG_SYS_SPI_U_BOOT_OFFS=0x230000
> diff --git a/configs/kp_imx6q_tpc_defconfig b/configs/kp_imx6q_tpc_defconfig
> index 012a5c492ed1..4ec988e3133c 100644
> --- a/configs/kp_imx6q_tpc_defconfig
> +++ b/configs/kp_imx6q_tpc_defconfig
> @@ -27,6 +27,8 @@ CONFIG_AUTOBOOT_STOP_STR="."
>  # CONFIG_USE_BOOTCOMMAND is not set
>  CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
>  CONFIG_SPL_RAW_IMAGE_SUPPORT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x91ffb8
>  CONFIG_SPL_POWER=y
>  CONFIG_SPL_WATCHDOG=y
>  CONFIG_SYS_MAXARGS=32
> diff --git a/configs/lager_defconfig b/configs/lager_defconfig
> index d13b75de412e..c9ec38d711ff 100644
> --- a/configs/lager_defconfig
> +++ b/configs/lager_defconfig
> @@ -34,6 +34,8 @@ CONFIG_SPL_MAX_SIZE=0x4000
>  CONFIG_SPL_NO_BSS_LIMIT=y
>  CONFIG_SPL_BOARD_INIT=y
>  CONFIG_SPL_SYS_MALLOC_SIMPLE=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xe6340000
>  CONFIG_SPL_RAM_SUPPORT=y
>  CONFIG_SPL_RAM_DEVICE=y
>  CONFIG_SPL_SPI_LOAD=y
> diff --git a/configs/leez-rk3399_defconfig b/configs/leez-rk3399_defconfig
> index c8e462867e1b..d524e4546c81 100644
> --- a/configs/leez-rk3399_defconfig
> +++ b/configs/leez-rk3399_defconfig
> @@ -19,6 +19,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
>  CONFIG_SPL_MAX_SIZE=0x2e000
>  CONFIG_SPL_PAD_TO=0x7f8000
>  CONFIG_SPL_BSS_MAX_SIZE=0x2000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x400000
>  CONFIG_SPL_STACK_R=y
>  CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x10000
>  CONFIG_TPL=y
> diff --git a/configs/libretech_all_h3_cc_h2_plus_defconfig b/configs/libretech_all_h3_cc_h2_plus_defconfig
> index d720dd5c8bd7..ca995568024d 100644
> --- a/configs/libretech_all_h3_cc_h2_plus_defconfig
> +++ b/configs/libretech_all_h3_cc_h2_plus_defconfig
> @@ -6,6 +6,7 @@ CONFIG_MACH_SUN8I_H3=y
>  CONFIG_DRAM_CLK=672
>  CONFIG_MMC_SUNXI_SLOT_EXTRA=2
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SUN8I_EMAC=y
>  CONFIG_USB_EHCI_HCD=y
> diff --git a/configs/libretech_all_h3_cc_h3_defconfig b/configs/libretech_all_h3_cc_h3_defconfig
> index 6b9faddb901c..7ca312c8fbcd 100644
> --- a/configs/libretech_all_h3_cc_h3_defconfig
> +++ b/configs/libretech_all_h3_cc_h3_defconfig
> @@ -6,6 +6,7 @@ CONFIG_MACH_SUN8I_H3=y
>  CONFIG_DRAM_CLK=672
>  CONFIG_MMC_SUNXI_SLOT_EXTRA=2
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SUN8I_EMAC=y
>  CONFIG_USB_EHCI_HCD=y
> diff --git a/configs/libretech_all_h3_cc_h5_defconfig b/configs/libretech_all_h3_cc_h5_defconfig
> index a20d43f0fed6..524138aa2e17 100644
> --- a/configs/libretech_all_h3_cc_h5_defconfig
> +++ b/configs/libretech_all_h3_cc_h5_defconfig
> @@ -6,6 +6,7 @@ CONFIG_MACH_SUN50I_H5=y
>  CONFIG_DRAM_CLK=672
>  CONFIG_MMC_SUNXI_SLOT_EXTRA=2
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x54000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SUN8I_EMAC=y
>  CONFIG_USB_EHCI_HCD=y
> diff --git a/configs/libretech_all_h3_it_h5_defconfig b/configs/libretech_all_h3_it_h5_defconfig
> index 5bc923a68f46..1b0833358632 100644
> --- a/configs/libretech_all_h3_it_h5_defconfig
> +++ b/configs/libretech_all_h3_it_h5_defconfig
> @@ -7,6 +7,7 @@ CONFIG_DRAM_CLK=672
>  CONFIG_MMC_SUNXI_SLOT_EXTRA=2
>  CONFIG_SPL_SPI_SUNXI=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x54000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SPI_FLASH_XMC=y
>  CONFIG_SPI=y
> diff --git a/configs/libretech_all_h5_cc_h5_defconfig b/configs/libretech_all_h5_cc_h5_defconfig
> index 987393d168e9..e0734f96735a 100644
> --- a/configs/libretech_all_h5_cc_h5_defconfig
> +++ b/configs/libretech_all_h5_cc_h5_defconfig
> @@ -7,6 +7,7 @@ CONFIG_DRAM_CLK=672
>  CONFIG_MMC_SUNXI_SLOT_EXTRA=2
>  CONFIG_SPL_SPI_SUNXI=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x54000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SPI_FLASH_XMC=y
>  CONFIG_SUN8I_EMAC=y
> diff --git a/configs/licheepi_nano_defconfig b/configs/licheepi_nano_defconfig
> index 8502cf3e8d22..0252763c7762 100644
> --- a/configs/licheepi_nano_defconfig
> +++ b/configs/licheepi_nano_defconfig
> @@ -10,5 +10,6 @@ CONFIG_DRAM_CLK=156
>  CONFIG_DRAM_ZQ=0
>  # CONFIG_VIDEO_SUNXI is not set
>  CONFIG_SPL_SPI_SUNXI=y
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SYS_PBSIZE=1024
>  # CONFIG_SYSRESET is not set
> diff --git a/configs/lion-rk3368_defconfig b/configs/lion-rk3368_defconfig
> index c03eecabcaca..c700115aecc6 100644
> --- a/configs/lion-rk3368_defconfig
> +++ b/configs/lion-rk3368_defconfig
> @@ -38,6 +38,8 @@ CONFIG_SPL_BSS_MAX_SIZE=0x20000
>  CONFIG_SPL_BOOTROM_SUPPORT=y
>  # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
>  CONFIG_TPL_SYS_MALLOC_SIMPLE=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x188000
>  CONFIG_SPL_STACK_R=y
>  CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x4000
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x200
> diff --git a/configs/liteboard_defconfig b/configs/liteboard_defconfig
> index 334b22ac8ab2..9832654fa460 100644
> --- a/configs/liteboard_defconfig
> +++ b/configs/liteboard_defconfig
> @@ -24,6 +24,8 @@ CONFIG_USE_BOOTCOMMAND=y
>  CONFIG_BOOTCOMMAND="mmc dev ${mmcdev};if mmc rescan; then if run loadbootscript; then run bootscript; else if run loadimage; then run mmcboot; else run netboot; fi; fi; else run netboot; fi"
>  CONFIG_DEFAULT_FDT_FILE="imx6ul-liteboard.dtb"
>  CONFIG_BOARD_EARLY_INIT_F=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x91ffb8
>  CONFIG_SPL_WATCHDOG=y
>  CONFIG_HUSH_PARSER=y
>  CONFIG_SYS_MAXARGS=32
> diff --git a/configs/ls1021aiot_sdcard_defconfig b/configs/ls1021aiot_sdcard_defconfig
> index 85b0c937cdb3..74d5e7ce2f25 100644
> --- a/configs/ls1021aiot_sdcard_defconfig
> +++ b/configs/ls1021aiot_sdcard_defconfig
> @@ -35,6 +35,8 @@ CONFIG_SPL_MAX_SIZE=0x1a000
>  CONFIG_SPL_PAD_TO=0x1c000
>  CONFIG_SPL_BSS_MAX_SIZE=0x80000
>  CONFIG_SPL_FSL_PBL=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x1001d000
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0xe8
>  CONFIG_SPL_ENV_SUPPORT=y
> diff --git a/configs/ls1021aqds_nand_defconfig b/configs/ls1021aqds_nand_defconfig
> index 4ec86e736d25..57eefa684948 100644
> --- a/configs/ls1021aqds_nand_defconfig
> +++ b/configs/ls1021aqds_nand_defconfig
> @@ -45,6 +45,8 @@ CONFIG_SPL_MAX_SIZE=0x1a000
>  CONFIG_SPL_PAD_TO=0x1c000
>  CONFIG_SPL_BSS_MAX_SIZE=0x80000
>  CONFIG_SPL_FSL_PBL=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x1001d000
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0xe8
>  CONFIG_SPL_ENV_SUPPORT=y
> diff --git a/configs/ls1021aqds_sdcard_ifc_defconfig b/configs/ls1021aqds_sdcard_ifc_defconfig
> index 079b19ab5e7f..a2b39eb38438 100644
> --- a/configs/ls1021aqds_sdcard_ifc_defconfig
> +++ b/configs/ls1021aqds_sdcard_ifc_defconfig
> @@ -44,6 +44,8 @@ CONFIG_SPL_MAX_SIZE=0x1a000
>  CONFIG_SPL_PAD_TO=0x1c000
>  CONFIG_SPL_BSS_MAX_SIZE=0x80000
>  CONFIG_SPL_FSL_PBL=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x1001d000
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0xe8
>  CONFIG_SPL_ENV_SUPPORT=y
> diff --git a/configs/ls1021aqds_sdcard_qspi_defconfig b/configs/ls1021aqds_sdcard_qspi_defconfig
> index a6a4be372eec..62100e447479 100644
> --- a/configs/ls1021aqds_sdcard_qspi_defconfig
> +++ b/configs/ls1021aqds_sdcard_qspi_defconfig
> @@ -43,6 +43,8 @@ CONFIG_SPL_MAX_SIZE=0x1a000
>  CONFIG_SPL_PAD_TO=0x1c000
>  CONFIG_SPL_BSS_MAX_SIZE=0x80000
>  CONFIG_SPL_FSL_PBL=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x1001d000
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0xe8
>  CONFIG_SPL_ENV_SUPPORT=y
> diff --git a/configs/ls1021atsn_sdcard_defconfig b/configs/ls1021atsn_sdcard_defconfig
> index b97c0a0035ae..85ba389ff6b1 100644
> --- a/configs/ls1021atsn_sdcard_defconfig
> +++ b/configs/ls1021atsn_sdcard_defconfig
> @@ -37,6 +37,8 @@ CONFIG_SPL_MAX_SIZE=0x1a000
>  CONFIG_SPL_PAD_TO=0x1c000
>  CONFIG_SPL_BSS_MAX_SIZE=0x80000
>  CONFIG_SPL_FSL_PBL=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x1001d000
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0xe8
>  CONFIG_SPL_ENV_SUPPORT=y
> diff --git a/configs/ls1021atwr_sdcard_ifc_SECURE_BOOT_defconfig b/configs/ls1021atwr_sdcard_ifc_SECURE_BOOT_defconfig
> index 772737ff5620..13d46e47194e 100644
> --- a/configs/ls1021atwr_sdcard_ifc_SECURE_BOOT_defconfig
> +++ b/configs/ls1021atwr_sdcard_ifc_SECURE_BOOT_defconfig
> @@ -44,6 +44,8 @@ CONFIG_SPL_MAX_SIZE=0x1a000
>  CONFIG_SPL_PAD_TO=0x1c000
>  CONFIG_SPL_BSS_MAX_SIZE=0x80000
>  CONFIG_SPL_FSL_PBL=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x1001d000
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0xe8
>  CONFIG_SPL_ENV_SUPPORT=y
> diff --git a/configs/ls1021atwr_sdcard_ifc_defconfig b/configs/ls1021atwr_sdcard_ifc_defconfig
> index d04a0b6f0f83..6dab204210d7 100644
> --- a/configs/ls1021atwr_sdcard_ifc_defconfig
> +++ b/configs/ls1021atwr_sdcard_ifc_defconfig
> @@ -45,6 +45,8 @@ CONFIG_SPL_MAX_SIZE=0x1a000
>  CONFIG_SPL_PAD_TO=0x1c000
>  CONFIG_SPL_BSS_MAX_SIZE=0x80000
>  CONFIG_SPL_FSL_PBL=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x1001d000
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0xe8
>  CONFIG_SPL_ENV_SUPPORT=y
> diff --git a/configs/ls1021atwr_sdcard_qspi_defconfig b/configs/ls1021atwr_sdcard_qspi_defconfig
> index 3b1e5d9df88d..bdc279b646ea 100644
> --- a/configs/ls1021atwr_sdcard_qspi_defconfig
> +++ b/configs/ls1021atwr_sdcard_qspi_defconfig
> @@ -46,6 +46,8 @@ CONFIG_SPL_MAX_SIZE=0x1a000
>  CONFIG_SPL_PAD_TO=0x1c000
>  CONFIG_SPL_BSS_MAX_SIZE=0x80000
>  CONFIG_SPL_FSL_PBL=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x1001d000
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0xe8
>  CONFIG_SPL_ENV_SUPPORT=y
> diff --git a/configs/ls1043aqds_nand_defconfig b/configs/ls1043aqds_nand_defconfig
> index 87696444a272..ec60f8edfddc 100644
> --- a/configs/ls1043aqds_nand_defconfig
> +++ b/configs/ls1043aqds_nand_defconfig
> @@ -51,6 +51,8 @@ CONFIG_SPL_MAX_SIZE=0x1a000
>  CONFIG_SPL_PAD_TO=0x20000
>  CONFIG_SPL_BSS_MAX_SIZE=0x80000
>  CONFIG_SPL_FSL_PBL=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x1001d000
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0xf0
>  CONFIG_SPL_ENV_SUPPORT=y
> diff --git a/configs/ls1043aqds_sdcard_ifc_defconfig b/configs/ls1043aqds_sdcard_ifc_defconfig
> index 140ca826af9e..ad8fce935897 100644
> --- a/configs/ls1043aqds_sdcard_ifc_defconfig
> +++ b/configs/ls1043aqds_sdcard_ifc_defconfig
> @@ -52,6 +52,8 @@ CONFIG_SPL_MAX_SIZE=0x17000
>  CONFIG_SPL_PAD_TO=0x1d000
>  CONFIG_SPL_BSS_MAX_SIZE=0x80000
>  CONFIG_SPL_FSL_PBL=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x1001e000
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0xf0
>  CONFIG_SPL_ENV_SUPPORT=y
> diff --git a/configs/ls1043aqds_sdcard_qspi_defconfig b/configs/ls1043aqds_sdcard_qspi_defconfig
> index b13156a573d2..4464284f3375 100644
> --- a/configs/ls1043aqds_sdcard_qspi_defconfig
> +++ b/configs/ls1043aqds_sdcard_qspi_defconfig
> @@ -52,6 +52,8 @@ CONFIG_SPL_MAX_SIZE=0x17000
>  CONFIG_SPL_PAD_TO=0x1d000
>  CONFIG_SPL_BSS_MAX_SIZE=0x80000
>  CONFIG_SPL_FSL_PBL=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x1001e000
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0xf0
>  CONFIG_SPL_ENV_SUPPORT=y
> diff --git a/configs/ls1043ardb_nand_SECURE_BOOT_defconfig b/configs/ls1043ardb_nand_SECURE_BOOT_defconfig
> index 33320c24bc1a..5c51cd5b8c3b 100644
> --- a/configs/ls1043ardb_nand_SECURE_BOOT_defconfig
> +++ b/configs/ls1043ardb_nand_SECURE_BOOT_defconfig
> @@ -35,6 +35,8 @@ CONFIG_SPL_MAX_SIZE=0x1a000
>  CONFIG_SPL_PAD_TO=0x20000
>  CONFIG_SPL_BSS_MAX_SIZE=0x80000
>  CONFIG_SPL_FSL_PBL=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x1001d000
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0xf0
>  CONFIG_SPL_ENV_SUPPORT=y
> diff --git a/configs/ls1043ardb_nand_defconfig b/configs/ls1043ardb_nand_defconfig
> index f47c019745ab..bb0f3e6cb505 100644
> --- a/configs/ls1043ardb_nand_defconfig
> +++ b/configs/ls1043ardb_nand_defconfig
> @@ -41,6 +41,8 @@ CONFIG_SPL_PAD_TO=0x20000
>  CONFIG_SPL_BSS_MAX_SIZE=0x80000
>  CONFIG_SPL_FSL_PBL=y
>  CONFIG_SPL_BOARD_INIT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x1001d000
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0xf0
>  CONFIG_SPL_ENV_SUPPORT=y
> diff --git a/configs/ls1043ardb_sdcard_SECURE_BOOT_defconfig b/configs/ls1043ardb_sdcard_SECURE_BOOT_defconfig
> index 40f794001d08..2042b44fe4e8 100644
> --- a/configs/ls1043ardb_sdcard_SECURE_BOOT_defconfig
> +++ b/configs/ls1043ardb_sdcard_SECURE_BOOT_defconfig
> @@ -36,6 +36,8 @@ CONFIG_SPL_MAX_SIZE=0x17000
>  CONFIG_SPL_PAD_TO=0x1d000
>  CONFIG_SPL_BSS_MAX_SIZE=0x80000
>  CONFIG_SPL_FSL_PBL=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x1001e000
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x110
>  CONFIG_SPL_ENV_SUPPORT=y
> diff --git a/configs/ls1043ardb_sdcard_defconfig b/configs/ls1043ardb_sdcard_defconfig
> index 94e7b9617f27..f51d76c67571 100644
> --- a/configs/ls1043ardb_sdcard_defconfig
> +++ b/configs/ls1043ardb_sdcard_defconfig
> @@ -42,6 +42,8 @@ CONFIG_SPL_PAD_TO=0x1d000
>  CONFIG_SPL_BSS_MAX_SIZE=0x80000
>  CONFIG_SPL_FSL_PBL=y
>  CONFIG_SPL_BOARD_INIT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x1001e000
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0xf0
>  CONFIG_SPL_ENV_SUPPORT=y
> diff --git a/configs/ls1046aqds_nand_defconfig b/configs/ls1046aqds_nand_defconfig
> index dba986d729fe..322a352669f8 100644
> --- a/configs/ls1046aqds_nand_defconfig
> +++ b/configs/ls1046aqds_nand_defconfig
> @@ -52,6 +52,8 @@ CONFIG_SPL_PAD_TO=0x40000
>  CONFIG_SPL_BSS_MAX_SIZE=0x80000
>  CONFIG_SPL_FSL_PBL=y
>  CONFIG_SPL_BOARD_INIT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x1001f000
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x110
>  CONFIG_SPL_ENV_SUPPORT=y
> diff --git a/configs/ls1046aqds_sdcard_ifc_defconfig b/configs/ls1046aqds_sdcard_ifc_defconfig
> index 0dfbf4225165..4f4cdf1d05ca 100644
> --- a/configs/ls1046aqds_sdcard_ifc_defconfig
> +++ b/configs/ls1046aqds_sdcard_ifc_defconfig
> @@ -53,6 +53,8 @@ CONFIG_SPL_PAD_TO=0x21000
>  CONFIG_SPL_BSS_MAX_SIZE=0x80000
>  CONFIG_SPL_FSL_PBL=y
>  CONFIG_SPL_BOARD_INIT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x10020000
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x110
>  CONFIG_SPL_ENV_SUPPORT=y
> diff --git a/configs/ls1046aqds_sdcard_qspi_defconfig b/configs/ls1046aqds_sdcard_qspi_defconfig
> index 52d826fb0614..89d52aa33ccb 100644
> --- a/configs/ls1046aqds_sdcard_qspi_defconfig
> +++ b/configs/ls1046aqds_sdcard_qspi_defconfig
> @@ -53,6 +53,8 @@ CONFIG_SPL_PAD_TO=0x21000
>  CONFIG_SPL_BSS_MAX_SIZE=0x80000
>  CONFIG_SPL_FSL_PBL=y
>  CONFIG_SPL_BOARD_INIT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x10020000
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x110
>  CONFIG_SPL_ENV_SUPPORT=y
> diff --git a/configs/ls1046ardb_emmc_defconfig b/configs/ls1046ardb_emmc_defconfig
> index 6e0ce4dade06..11725e5aa0c4 100644
> --- a/configs/ls1046ardb_emmc_defconfig
> +++ b/configs/ls1046ardb_emmc_defconfig
> @@ -43,6 +43,8 @@ CONFIG_SPL_PAD_TO=0x21000
>  CONFIG_SPL_BSS_MAX_SIZE=0x80000
>  CONFIG_SPL_FSL_PBL=y
>  CONFIG_SPL_BOARD_INIT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x10020000
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x110
>  CONFIG_SPL_ENV_SUPPORT=y
> diff --git a/configs/ls1046ardb_qspi_spl_defconfig b/configs/ls1046ardb_qspi_spl_defconfig
> index 39e38e479788..ae7d0b32694e 100644
> --- a/configs/ls1046ardb_qspi_spl_defconfig
> +++ b/configs/ls1046ardb_qspi_spl_defconfig
> @@ -46,6 +46,8 @@ CONFIG_SPL_MAX_SIZE=0x1f000
>  CONFIG_SPL_PAD_TO=0x20000
>  CONFIG_SPL_BSS_MAX_SIZE=0x80000
>  CONFIG_SPL_BOARD_INIT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x10020000
>  CONFIG_SPL_ENV_SUPPORT=y
>  CONFIG_SPL_I2C=y
>  CONFIG_SPL_MPC8XXX_INIT_DDR=y
> diff --git a/configs/ls1046ardb_sdcard_SECURE_BOOT_defconfig b/configs/ls1046ardb_sdcard_SECURE_BOOT_defconfig
> index 852824eeff5b..ea8588c86ae8 100644
> --- a/configs/ls1046ardb_sdcard_SECURE_BOOT_defconfig
> +++ b/configs/ls1046ardb_sdcard_SECURE_BOOT_defconfig
> @@ -40,6 +40,8 @@ CONFIG_SPL_MAX_SIZE=0x1f000
>  CONFIG_SPL_PAD_TO=0x21000
>  CONFIG_SPL_BSS_MAX_SIZE=0x80000
>  CONFIG_SPL_FSL_PBL=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x10020000
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x110
>  CONFIG_SPL_ENV_SUPPORT=y
> diff --git a/configs/ls1046ardb_sdcard_defconfig b/configs/ls1046ardb_sdcard_defconfig
> index 85a8ec9b1085..ed87dbaffd9a 100644
> --- a/configs/ls1046ardb_sdcard_defconfig
> +++ b/configs/ls1046ardb_sdcard_defconfig
> @@ -43,6 +43,8 @@ CONFIG_SPL_PAD_TO=0x21000
>  CONFIG_SPL_BSS_MAX_SIZE=0x80000
>  CONFIG_SPL_FSL_PBL=y
>  CONFIG_SPL_BOARD_INIT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x10020000
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x110
>  CONFIG_SPL_ENV_SUPPORT=y
> diff --git a/configs/ls1088aqds_sdcard_ifc_defconfig b/configs/ls1088aqds_sdcard_ifc_defconfig
> index ca634fd39861..8b03ff8062b8 100644
> --- a/configs/ls1088aqds_sdcard_ifc_defconfig
> +++ b/configs/ls1088aqds_sdcard_ifc_defconfig
> @@ -43,6 +43,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
>  CONFIG_RESET_PHY_R=y
>  CONFIG_SPL_MAX_SIZE=0x16000
>  CONFIG_SPL_BSS_MAX_SIZE=0x100000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x18009ff0
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x8b0
>  CONFIG_SPL_ENV_SUPPORT=y
> diff --git a/configs/ls1088aqds_sdcard_qspi_defconfig b/configs/ls1088aqds_sdcard_qspi_defconfig
> index b21ce6794bd3..5cd2ca27087c 100644
> --- a/configs/ls1088aqds_sdcard_qspi_defconfig
> +++ b/configs/ls1088aqds_sdcard_qspi_defconfig
> @@ -44,6 +44,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
>  CONFIG_RESET_PHY_R=y
>  CONFIG_SPL_MAX_SIZE=0x16000
>  CONFIG_SPL_BSS_MAX_SIZE=0x100000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x18009ff0
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x8b0
>  CONFIG_SPL_ENV_SUPPORT=y
> diff --git a/configs/ls1088ardb_sdcard_qspi_SECURE_BOOT_defconfig b/configs/ls1088ardb_sdcard_qspi_SECURE_BOOT_defconfig
> index e8397fcd4ed2..e7500e14eaf7 100644
> --- a/configs/ls1088ardb_sdcard_qspi_SECURE_BOOT_defconfig
> +++ b/configs/ls1088ardb_sdcard_qspi_SECURE_BOOT_defconfig
> @@ -44,6 +44,8 @@ CONFIG_MISC_INIT_R=y
>  CONFIG_RESET_PHY_R=y
>  CONFIG_SPL_MAX_SIZE=0x16000
>  CONFIG_SPL_BSS_MAX_SIZE=0x100000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x18009ff0
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x8b0
>  CONFIG_SPL_ENV_SUPPORT=y
> diff --git a/configs/ls1088ardb_sdcard_qspi_defconfig b/configs/ls1088ardb_sdcard_qspi_defconfig
> index 283dcccc905e..db65a7c05683 100644
> --- a/configs/ls1088ardb_sdcard_qspi_defconfig
> +++ b/configs/ls1088ardb_sdcard_qspi_defconfig
> @@ -45,6 +45,8 @@ CONFIG_MISC_INIT_R=y
>  CONFIG_RESET_PHY_R=y
>  CONFIG_SPL_MAX_SIZE=0x16000
>  CONFIG_SPL_BSS_MAX_SIZE=0x100000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x18009ff0
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x8b0
>  CONFIG_SPL_ENV_SUPPORT=y
> diff --git a/configs/ls2080aqds_nand_defconfig b/configs/ls2080aqds_nand_defconfig
> index 0c57920b4877..08f9536d22a2 100644
> --- a/configs/ls2080aqds_nand_defconfig
> +++ b/configs/ls2080aqds_nand_defconfig
> @@ -36,6 +36,8 @@ CONFIG_RESET_PHY_R=y
>  CONFIG_SPL_MAX_SIZE=0x16000
>  CONFIG_SPL_PAD_TO=0x20000
>  CONFIG_SPL_BSS_MAX_SIZE=0x100000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x18009ff0
>  CONFIG_SPL_ENV_SUPPORT=y
>  CONFIG_SPL_I2C=y
>  CONFIG_SPL_MPC8XXX_INIT_DDR=y
> diff --git a/configs/ls2080aqds_sdcard_defconfig b/configs/ls2080aqds_sdcard_defconfig
> index 23c20203ba75..f8978da43ca9 100644
> --- a/configs/ls2080aqds_sdcard_defconfig
> +++ b/configs/ls2080aqds_sdcard_defconfig
> @@ -36,6 +36,8 @@ CONFIG_BOOTCOMMAND="mmc read 0x80200000 0x6800 0x800; fsl_mc apply dpl 0x8020000
>  CONFIG_RESET_PHY_R=y
>  CONFIG_SPL_MAX_SIZE=0x16000
>  CONFIG_SPL_BSS_MAX_SIZE=0x100000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x18009ff0
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x8b0
>  CONFIG_SPL_ENV_SUPPORT=y
> diff --git a/configs/ls2080ardb_nand_defconfig b/configs/ls2080ardb_nand_defconfig
> index e703a8cba860..7304c4d02467 100644
> --- a/configs/ls2080ardb_nand_defconfig
> +++ b/configs/ls2080ardb_nand_defconfig
> @@ -42,6 +42,8 @@ CONFIG_RESET_PHY_R=y
>  CONFIG_SPL_MAX_SIZE=0x16000
>  CONFIG_SPL_PAD_TO=0x80000
>  CONFIG_SPL_BSS_MAX_SIZE=0x100000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x18009ff0
>  CONFIG_SPL_ENV_SUPPORT=y
>  CONFIG_SPL_I2C=y
>  CONFIG_SPL_MPC8XXX_INIT_DDR=y
> diff --git a/configs/m53menlo_defconfig b/configs/m53menlo_defconfig
> index 336ba0180e72..455f19617aca 100644
> --- a/configs/m53menlo_defconfig
> +++ b/configs/m53menlo_defconfig
> @@ -34,6 +34,8 @@ CONFIG_BOARD_LATE_INIT=y
>  CONFIG_SPL_PAD_TO=0x8000
>  CONFIG_SPL_NO_BSS_LIMIT=y
>  CONFIG_SPL_BOARD_INIT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x70004000
>  CONFIG_SPL_NAND_SUPPORT=y
>  CONFIG_HUSH_PARSER=y
>  CONFIG_SYS_MAXARGS=32
> diff --git a/configs/maxbcm_defconfig b/configs/maxbcm_defconfig
> index 9c22966d8847..457e56919d05 100644
> --- a/configs/maxbcm_defconfig
> +++ b/configs/maxbcm_defconfig
> @@ -27,6 +27,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
>  CONFIG_SPL_MAX_SIZE=0x1bfd0
>  CONFIG_SPL_BSS_MAX_SIZE=0x4000
>  CONFIG_SPL_SYS_MALLOC_SIMPLE=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x4002c000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_MAXARGS=32
>  CONFIG_CMD_I2C=y
> diff --git a/configs/mccmon6_nor_defconfig b/configs/mccmon6_nor_defconfig
> index 3718d08b6700..cef2bb0ba5bc 100644
> --- a/configs/mccmon6_nor_defconfig
> +++ b/configs/mccmon6_nor_defconfig
> @@ -24,6 +24,8 @@ CONFIG_SPL_LOAD_FIT=y
>  # CONFIG_USE_BOOTCOMMAND is not set
>  CONFIG_BOARD_LATE_INIT=y
>  CONFIG_SPL_BOARD_INIT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x91ffb8
>  CONFIG_SPL_FIT_IMAGE_TINY=y
>  CONFIG_SPL_ENV_SUPPORT=y
>  CONFIG_SPL_NOR_SUPPORT=y
> diff --git a/configs/mccmon6_sd_defconfig b/configs/mccmon6_sd_defconfig
> index 3228050dd206..8f3b4ecfc9d3 100644
> --- a/configs/mccmon6_sd_defconfig
> +++ b/configs/mccmon6_sd_defconfig
> @@ -25,6 +25,8 @@ CONFIG_SPL_LOAD_FIT=y
>  # CONFIG_USE_BOOTCOMMAND is not set
>  CONFIG_BOARD_LATE_INIT=y
>  CONFIG_SPL_BOARD_INIT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x91ffb8
>  CONFIG_SPL_ENV_SUPPORT=y
>  CONFIG_SPL_NOR_SUPPORT=y
>  CONFIG_SYS_MAXARGS=32
> diff --git a/configs/medcom-wide_defconfig b/configs/medcom-wide_defconfig
> index 4b2e305c1070..855b88b75a60 100644
> --- a/configs/medcom-wide_defconfig
> +++ b/configs/medcom-wide_defconfig
> @@ -15,6 +15,8 @@ CONFIG_OF_SYSTEM_SETUP=y
>  CONFIG_SYS_STDIO_DEREGISTER=y
>  CONFIG_SPL_FOOTPRINT_LIMIT=y
>  CONFIG_SPL_MAX_FOOTPRINT=0x8000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xffffc
>  CONFIG_SYS_PROMPT="Tegra20 (Medcom-Wide) # "
>  CONFIG_SYS_MAXARGS=64
>  CONFIG_SYS_PBSIZE=2089
> diff --git a/configs/microblaze-generic_defconfig b/configs/microblaze-generic_defconfig
> index a7698ac1ec10..86bda86b72f2 100644
> --- a/configs/microblaze-generic_defconfig
> +++ b/configs/microblaze-generic_defconfig
> @@ -28,6 +28,8 @@ CONFIG_SPL_FOOTPRINT_LIMIT=y
>  CONFIG_SPL_MAX_FOOTPRINT=0xffb00
>  CONFIG_SPL_BOARD_INIT=y
>  CONFIG_SPL_SYS_MALLOC_SIMPLE=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x100000
>  CONFIG_SPL_NOR_SUPPORT=y
>  CONFIG_SPL_OS_BOOT=y
>  CONFIG_SYS_OS_BASE=0x2c060000
> diff --git a/configs/miqi-rk3288_defconfig b/configs/miqi-rk3288_defconfig
> index c1151d13b602..7000b89311a2 100644
> --- a/configs/miqi-rk3288_defconfig
> +++ b/configs/miqi-rk3288_defconfig
> @@ -24,6 +24,8 @@ CONFIG_SILENT_CONSOLE=y
>  CONFIG_DISPLAY_BOARDINFO_LATE=y
>  CONFIG_SPL_PAD_TO=0x7f8000
>  CONFIG_SPL_NO_BSS_LIMIT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xff718000
>  CONFIG_SPL_STACK_R=y
>  CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x2000
>  CONFIG_CMD_GPIO=y
> diff --git a/configs/mixtile_loftq_defconfig b/configs/mixtile_loftq_defconfig
> index 0cd94d7b4381..11e3dfcf4bab 100644
> --- a/configs/mixtile_loftq_defconfig
> +++ b/configs/mixtile_loftq_defconfig
> @@ -9,6 +9,7 @@ CONFIG_MMC_SUNXI_SLOT_EXTRA=2
>  CONFIG_USB1_VBUS_PIN="PH24"
>  CONFIG_USB2_VBUS_PIN=""
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_PHY_REALTEK=y
>  CONFIG_ETH_DESIGNWARE=y
> diff --git a/configs/mk802_a10s_defconfig b/configs/mk802_a10s_defconfig
> index 1fa1f0031b06..3ce7e5f1d68a 100644
> --- a/configs/mk802_a10s_defconfig
> +++ b/configs/mk802_a10s_defconfig
> @@ -7,6 +7,7 @@ CONFIG_DRAM_CLK=432
>  CONFIG_DRAM_EMR1=0
>  CONFIG_USB1_VBUS_PIN="PB10"
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SYS_I2C_MVTWSI=y
> diff --git a/configs/mk802_defconfig b/configs/mk802_defconfig
> index 281130a43e29..0fd8d3adbd21 100644
> --- a/configs/mk802_defconfig
> +++ b/configs/mk802_defconfig
> @@ -5,6 +5,7 @@ CONFIG_SPL=y
>  CONFIG_MACH_SUN4I=y
>  CONFIG_USB2_VBUS_PIN="PH12"
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SYS_I2C_MVTWSI=y
>  CONFIG_SYS_I2C_SLAVE=0x7f
> diff --git a/configs/mk802ii_defconfig b/configs/mk802ii_defconfig
> index 8123d900d934..942911bddbaf 100644
> --- a/configs/mk802ii_defconfig
> +++ b/configs/mk802ii_defconfig
> @@ -4,6 +4,7 @@ CONFIG_DEFAULT_DEVICE_TREE="sun4i-a10-mk802ii"
>  CONFIG_SPL=y
>  CONFIG_MACH_SUN4I=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SYS_I2C_MVTWSI=y
> diff --git a/configs/mk808_defconfig b/configs/mk808_defconfig
> index fadea658eb25..7df44fb81f11 100644
> --- a/configs/mk808_defconfig
> +++ b/configs/mk808_defconfig
> @@ -36,6 +36,8 @@ CONFIG_BOARD_LATE_INIT=y
>  CONFIG_SPL_MAX_SIZE=0x32000
>  CONFIG_SPL_PAD_TO=0x7f8000
>  CONFIG_SPL_NO_BSS_LIMIT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x1008ffff
>  CONFIG_SPL_STACK_R=y
>  CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x200000
>  CONFIG_SPL_SEPARATE_BSS=y
> diff --git a/configs/mt7629_rfb_defconfig b/configs/mt7629_rfb_defconfig
> index 3ee77f39a3db..f5e3c26d66ce 100644
> --- a/configs/mt7629_rfb_defconfig
> +++ b/configs/mt7629_rfb_defconfig
> @@ -28,6 +28,8 @@ CONFIG_SPL_MAX_SIZE=0x10000
>  CONFIG_SPL_FOOTPRINT_LIMIT=y
>  CONFIG_SPL_MAX_FOOTPRINT=0x10000
>  CONFIG_SPL_SYS_MALLOC_SIMPLE=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x106000
>  CONFIG_SPL_STACK_R=y
>  CONFIG_SPL_NOR_SUPPORT=y
>  CONFIG_SPL_WATCHDOG=y
> diff --git a/configs/mx6cuboxi_defconfig b/configs/mx6cuboxi_defconfig
> index 41122ade90e1..016a54f7cb35 100644
> --- a/configs/mx6cuboxi_defconfig
> +++ b/configs/mx6cuboxi_defconfig
> @@ -26,6 +26,8 @@ CONFIG_BOOTCOMMAND="run findfdt; run finduuid; run distro_bootcmd"
>  CONFIG_USE_PREBOOT=y
>  CONFIG_PREBOOT="if hdmidet; then usb start; setenv stdin  serial,usbkbd; setenv stdout serial,vidconsole; setenv stderr serial,vidconsole; else setenv stdin  serial; setenv stdout serial; setenv stderr serial; fi;"
>  CONFIG_BOARD_EARLY_INIT_F=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x91ffb8
>  CONFIG_SPL_FS_EXT4=y
>  CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot-dtb.img"
>  CONFIG_SPL_I2C=y
> diff --git a/configs/mx6memcal_defconfig b/configs/mx6memcal_defconfig
> index d555dbf7b1be..cf807d8f3db5 100644
> --- a/configs/mx6memcal_defconfig
> +++ b/configs/mx6memcal_defconfig
> @@ -15,6 +15,8 @@ CONFIG_SPL=y
>  CONFIG_SYS_MEMTEST_START=0x10000000
>  CONFIG_SYS_MEMTEST_END=0x20000000
>  CONFIG_SUPPORT_RAW_INITRD=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x91ffb8
>  CONFIG_SPL_USB_HOST=y
>  CONFIG_SPL_WATCHDOG=y
>  CONFIG_HUSH_PARSER=y
> diff --git a/configs/mx6sabreauto_defconfig b/configs/mx6sabreauto_defconfig
> index 3d2e906f934b..016898f9ab11 100644
> --- a/configs/mx6sabreauto_defconfig
> +++ b/configs/mx6sabreauto_defconfig
> @@ -33,6 +33,8 @@ CONFIG_BOOTCOMMAND="run findfdt;mmc dev ${mmcdev};if mmc rescan; then if run loa
>  CONFIG_SYS_CONSOLE_IS_IN_ENV=y
>  CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
>  CONFIG_SPL_LEGACY_IMAGE_FORMAT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x91ffb8
>  CONFIG_SPL_FIT_IMAGE_TINY=y
>  CONFIG_SPL_FS_EXT4=y
>  CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot-dtb.img"
> diff --git a/configs/mx6sabresd_defconfig b/configs/mx6sabresd_defconfig
> index 33d8db9dff23..072617681dba 100644
> --- a/configs/mx6sabresd_defconfig
> +++ b/configs/mx6sabresd_defconfig
> @@ -32,6 +32,8 @@ CONFIG_BOOTCOMMAND="run findfdt;mmc dev ${mmcdev};if mmc rescan; then if run loa
>  CONFIG_SYS_CONSOLE_IS_IN_ENV=y
>  CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
>  CONFIG_SPL_LEGACY_IMAGE_FORMAT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x91ffb8
>  CONFIG_SPL_FIT_IMAGE_TINY=y
>  CONFIG_SPL_USB_HOST=y
>  CONFIG_SPL_USB_GADGET=y
> diff --git a/configs/mx6slevk_spl_defconfig b/configs/mx6slevk_spl_defconfig
> index 24407c113d65..a5ccf579029a 100644
> --- a/configs/mx6slevk_spl_defconfig
> +++ b/configs/mx6slevk_spl_defconfig
> @@ -25,6 +25,8 @@ CONFIG_SUPPORT_RAW_INITRD=y
>  CONFIG_USE_BOOTCOMMAND=y
>  CONFIG_BOOTCOMMAND="mmc dev ${mmcdev}; if mmc rescan; then if run loadbootscript; then run bootscript; else if run loadimage; then run mmcboot; else run netboot; fi; fi; else run netboot; fi"
>  CONFIG_BOARD_EARLY_INIT_F=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x91ffb8
>  CONFIG_SPL_FS_EXT4=y
>  CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot-dtb.img"
>  CONFIG_SPL_I2C=y
> diff --git a/configs/mx6ul_14x14_evk_defconfig b/configs/mx6ul_14x14_evk_defconfig
> index 065ead0a7ad2..8d182478164c 100644
> --- a/configs/mx6ul_14x14_evk_defconfig
> +++ b/configs/mx6ul_14x14_evk_defconfig
> @@ -27,6 +27,8 @@ CONFIG_BOOTCOMMAND="run findfdt;mmc dev ${mmcdev};mmc dev ${mmcdev}; if mmc resc
>  # CONFIG_CONSOLE_MUX is not set
>  CONFIG_SYS_CONSOLE_IS_IN_ENV=y
>  CONFIG_BOARD_EARLY_INIT_F=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x91ffb8
>  CONFIG_SPL_FS_EXT4=y
>  CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot-dtb.img"
>  CONFIG_SPL_I2C=y
> diff --git a/configs/mx6ul_9x9_evk_defconfig b/configs/mx6ul_9x9_evk_defconfig
> index 2f46b68cbe97..65c1c7785998 100644
> --- a/configs/mx6ul_9x9_evk_defconfig
> +++ b/configs/mx6ul_9x9_evk_defconfig
> @@ -27,6 +27,8 @@ CONFIG_BOOTCOMMAND="run findfdt;mmc dev ${mmcdev};mmc dev ${mmcdev}; if mmc resc
>  # CONFIG_CONSOLE_MUX is not set
>  CONFIG_SYS_CONSOLE_IS_IN_ENV=y
>  CONFIG_BOARD_EARLY_INIT_F=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x91ffb8
>  CONFIG_SPL_FS_EXT4=y
>  CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot-dtb.img"
>  CONFIG_SPL_I2C=y
> diff --git a/configs/myir_mys_6ulx_defconfig b/configs/myir_mys_6ulx_defconfig
> index f5ccf669f292..fdd7d024ae87 100644
> --- a/configs/myir_mys_6ulx_defconfig
> +++ b/configs/myir_mys_6ulx_defconfig
> @@ -19,6 +19,8 @@ CONFIG_DISTRO_DEFAULTS=y
>  CONFIG_FIT=y
>  CONFIG_BOOTDELAY=3
>  CONFIG_BOARD_EARLY_INIT_F=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x91ffb8
>  CONFIG_SPL_DMA=y
>  CONFIG_SPL_NAND_SUPPORT=y
>  CONFIG_SPL_USB_HOST=y
> diff --git a/configs/nanopc-t4-rk3399_defconfig b/configs/nanopc-t4-rk3399_defconfig
> index a1d66c51b5c3..6c023fbe4055 100644
> --- a/configs/nanopc-t4-rk3399_defconfig
> +++ b/configs/nanopc-t4-rk3399_defconfig
> @@ -20,6 +20,8 @@ CONFIG_SPL_MAX_SIZE=0x2e000
>  CONFIG_SPL_PAD_TO=0x7f8000
>  CONFIG_SPL_BSS_MAX_SIZE=0x2000
>  # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x400000
>  CONFIG_SPL_STACK_R=y
>  CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x10000
>  CONFIG_TPL=y
> diff --git a/configs/nanopi-m4-2gb-rk3399_defconfig b/configs/nanopi-m4-2gb-rk3399_defconfig
> index c3ecb9946069..390cfbb60f15 100644
> --- a/configs/nanopi-m4-2gb-rk3399_defconfig
> +++ b/configs/nanopi-m4-2gb-rk3399_defconfig
> @@ -20,6 +20,8 @@ CONFIG_SPL_MAX_SIZE=0x2e000
>  CONFIG_SPL_PAD_TO=0x7f8000
>  CONFIG_SPL_BSS_MAX_SIZE=0x2000
>  # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x400000
>  CONFIG_SPL_STACK_R=y
>  CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x10000
>  CONFIG_TPL=y
> diff --git a/configs/nanopi-m4-rk3399_defconfig b/configs/nanopi-m4-rk3399_defconfig
> index 608bed247c93..37d91e53912a 100644
> --- a/configs/nanopi-m4-rk3399_defconfig
> +++ b/configs/nanopi-m4-rk3399_defconfig
> @@ -20,6 +20,8 @@ CONFIG_SPL_MAX_SIZE=0x2e000
>  CONFIG_SPL_PAD_TO=0x7f8000
>  CONFIG_SPL_BSS_MAX_SIZE=0x2000
>  # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x400000
>  CONFIG_SPL_STACK_R=y
>  CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x10000
>  CONFIG_TPL=y
> diff --git a/configs/nanopi-m4b-rk3399_defconfig b/configs/nanopi-m4b-rk3399_defconfig
> index 125c3ee30e35..7bf1ca299d59 100644
> --- a/configs/nanopi-m4b-rk3399_defconfig
> +++ b/configs/nanopi-m4b-rk3399_defconfig
> @@ -20,6 +20,8 @@ CONFIG_SPL_MAX_SIZE=0x2e000
>  CONFIG_SPL_PAD_TO=0x7f8000
>  CONFIG_SPL_BSS_MAX_SIZE=0x2000
>  # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x400000
>  CONFIG_SPL_STACK_R=y
>  CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x10000
>  CONFIG_TPL=y
> diff --git a/configs/nanopi-neo4-rk3399_defconfig b/configs/nanopi-neo4-rk3399_defconfig
> index 3d159ff488ad..69174b951223 100644
> --- a/configs/nanopi-neo4-rk3399_defconfig
> +++ b/configs/nanopi-neo4-rk3399_defconfig
> @@ -20,6 +20,8 @@ CONFIG_SPL_MAX_SIZE=0x2e000
>  CONFIG_SPL_PAD_TO=0x7f8000
>  CONFIG_SPL_BSS_MAX_SIZE=0x2000
>  # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x400000
>  CONFIG_SPL_STACK_R=y
>  CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x10000
>  CONFIG_TPL=y
> diff --git a/configs/nanopi-r2s-rk3328_defconfig b/configs/nanopi-r2s-rk3328_defconfig
> index 0049655be380..b1e2a6d3bfee 100644
> --- a/configs/nanopi-r2s-rk3328_defconfig
> +++ b/configs/nanopi-r2s-rk3328_defconfig
> @@ -33,6 +33,8 @@ CONFIG_SPL_PAD_TO=0x7f8000
>  CONFIG_SPL_BSS_MAX_SIZE=0x2000
>  # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
>  CONFIG_TPL_SYS_MALLOC_SIMPLE=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x400000
>  CONFIG_SPL_STACK_R=y
>  CONFIG_SPL_I2C=y
>  CONFIG_SPL_POWER=y
> diff --git a/configs/nanopi-r4s-rk3399_defconfig b/configs/nanopi-r4s-rk3399_defconfig
> index cd7a521d84e2..ca10940e79b8 100644
> --- a/configs/nanopi-r4s-rk3399_defconfig
> +++ b/configs/nanopi-r4s-rk3399_defconfig
> @@ -20,6 +20,8 @@ CONFIG_SPL_MAX_SIZE=0x2e000
>  CONFIG_SPL_PAD_TO=0x7f8000
>  CONFIG_SPL_BSS_MAX_SIZE=0x2000
>  # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x400000
>  CONFIG_SPL_STACK_R=y
>  CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x10000
>  CONFIG_TPL=y
> diff --git a/configs/nanopi_a64_defconfig b/configs/nanopi_a64_defconfig
> index 042689e933cb..8f3c242a7a93 100644
> --- a/configs/nanopi_a64_defconfig
> +++ b/configs/nanopi_a64_defconfig
> @@ -5,6 +5,7 @@ CONFIG_SPL=y
>  CONFIG_MACH_SUN50I=y
>  CONFIG_RESERVE_ALLWINNER_BOOT0_HEADER=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x54000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SUN8I_EMAC=y
>  CONFIG_USB_EHCI_HCD=y
> diff --git a/configs/nanopi_m1_defconfig b/configs/nanopi_m1_defconfig
> index 547c20358f25..47a6b7804e37 100644
> --- a/configs/nanopi_m1_defconfig
> +++ b/configs/nanopi_m1_defconfig
> @@ -5,6 +5,7 @@ CONFIG_SPL=y
>  CONFIG_MACH_SUN8I_H3=y
>  CONFIG_DRAM_CLK=408
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_USB_EHCI_HCD=y
>  CONFIG_USB_OHCI_HCD=y
> diff --git a/configs/nanopi_m1_plus_defconfig b/configs/nanopi_m1_plus_defconfig
> index 5ce046cd3f70..c71d721f743a 100644
> --- a/configs/nanopi_m1_plus_defconfig
> +++ b/configs/nanopi_m1_plus_defconfig
> @@ -8,6 +8,7 @@ CONFIG_MACPWR="PD6"
>  CONFIG_MMC0_CD_PIN="PH13"
>  CONFIG_MMC_SUNXI_SLOT_EXTRA=2
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SUN8I_EMAC=y
>  CONFIG_USB_EHCI_HCD=y
> diff --git a/configs/nanopi_neo2_defconfig b/configs/nanopi_neo2_defconfig
> index f994fceffd4a..66df94b33b9f 100644
> --- a/configs/nanopi_neo2_defconfig
> +++ b/configs/nanopi_neo2_defconfig
> @@ -7,6 +7,7 @@ CONFIG_DRAM_CLK=672
>  CONFIG_DRAM_ZQ=3881977
>  # CONFIG_DRAM_ODT_EN is not set
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x54000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SUN8I_EMAC=y
>  CONFIG_USB_EHCI_HCD=y
> diff --git a/configs/nanopi_neo_air_defconfig b/configs/nanopi_neo_air_defconfig
> index 23c1527e9cd2..b83b6a3499dd 100644
> --- a/configs/nanopi_neo_air_defconfig
> +++ b/configs/nanopi_neo_air_defconfig
> @@ -7,6 +7,7 @@ CONFIG_DRAM_CLK=408
>  # CONFIG_VIDEO_DE2 is not set
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
>  CONFIG_CONSOLE_MUX=y
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_USB_EHCI_HCD=y
>  CONFIG_USB_OHCI_HCD=y
> diff --git a/configs/nanopi_neo_defconfig b/configs/nanopi_neo_defconfig
> index e46e5b810594..f8377535e97d 100644
> --- a/configs/nanopi_neo_defconfig
> +++ b/configs/nanopi_neo_defconfig
> @@ -7,6 +7,7 @@ CONFIG_DRAM_CLK=408
>  # CONFIG_VIDEO_DE2 is not set
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
>  CONFIG_CONSOLE_MUX=y
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SUN8I_EMAC=y
>  CONFIG_USB_EHCI_HCD=y
> diff --git a/configs/nanopi_neo_plus2_defconfig b/configs/nanopi_neo_plus2_defconfig
> index 8eb370ab6a4d..60f26318429b 100644
> --- a/configs/nanopi_neo_plus2_defconfig
> +++ b/configs/nanopi_neo_plus2_defconfig
> @@ -9,6 +9,7 @@ CONFIG_DRAM_ZQ=3881977
>  CONFIG_MACPWR="PD6"
>  CONFIG_MMC_SUNXI_SLOT_EXTRA=2
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x54000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SUN8I_EMAC=y
>  CONFIG_USB_EHCI_HCD=y
> diff --git a/configs/nanopi_r1s_h5_defconfig b/configs/nanopi_r1s_h5_defconfig
> index 9d0a4d7e5009..06c564ec8cd8 100644
> --- a/configs/nanopi_r1s_h5_defconfig
> +++ b/configs/nanopi_r1s_h5_defconfig
> @@ -9,6 +9,7 @@ CONFIG_DRAM_ZQ=3881977
>  CONFIG_MACPWR="PD6"
>  CONFIG_MMC_SUNXI_SLOT_EXTRA=2
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x54000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SUN8I_EMAC=y
>  CONFIG_USB_EHCI_HCD=y
> diff --git a/configs/novena_defconfig b/configs/novena_defconfig
> index 215aaa605b52..3faeaf150d5f 100644
> --- a/configs/novena_defconfig
> +++ b/configs/novena_defconfig
> @@ -31,6 +31,8 @@ CONFIG_BOOTARGS="console=ttymxc1,115200 "
>  CONFIG_BOOTCOMMAND="run distro_bootcmd ; run net_nfs"
>  CONFIG_BOARD_EARLY_INIT_F=y
>  CONFIG_MISC_INIT_R=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x91ffb8
>  CONFIG_SPL_FS_EXT4=y
>  CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot-dtb.img"
>  CONFIG_SPL_I2C=y
> diff --git a/configs/nyan-big_defconfig b/configs/nyan-big_defconfig
> index 4433b65644f8..1ffddbe35e36 100644
> --- a/configs/nyan-big_defconfig
> +++ b/configs/nyan-big_defconfig
> @@ -25,6 +25,8 @@ CONFIG_SYS_STDIO_DEREGISTER=y
>  CONFIG_DISPLAY_BOARDINFO_LATE=y
>  CONFIG_SPL_FOOTPRINT_LIMIT=y
>  CONFIG_SPL_MAX_FOOTPRINT=0xef8100
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x800ffffc
>  CONFIG_SYS_PROMPT="Tegra124 (Nyan-big) # "
>  CONFIG_SYS_MAXARGS=64
>  CONFIG_SYS_PBSIZE=2087
> diff --git a/configs/oceanic_5205_5inmfd_defconfig b/configs/oceanic_5205_5inmfd_defconfig
> index 5392e3485f57..21468c426b52 100644
> --- a/configs/oceanic_5205_5inmfd_defconfig
> +++ b/configs/oceanic_5205_5inmfd_defconfig
> @@ -10,6 +10,7 @@ CONFIG_DRAM_ZQ=3881949
>  CONFIG_MMC0_CD_PIN=""
>  CONFIG_SPL_SPI_SUNXI=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x54000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SUN8I_EMAC=y
>  CONFIG_SPI=y
> diff --git a/configs/odroid-go2_defconfig b/configs/odroid-go2_defconfig
> index 2990b65347e9..6925c26bc106 100644
> --- a/configs/odroid-go2_defconfig
> +++ b/configs/odroid-go2_defconfig
> @@ -39,6 +39,8 @@ CONFIG_SPL_PAD_TO=0x7f8000
>  CONFIG_SPL_BSS_MAX_SIZE=0x4000
>  CONFIG_SPL_BOOTROM_SUPPORT=y
>  # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x400000
>  CONFIG_SPL_STACK_R=y
>  # CONFIG_TPL_BANNER_PRINT is not set
>  CONFIG_SPL_I2C=y
> diff --git a/configs/omapl138_lcdk_defconfig b/configs/omapl138_lcdk_defconfig
> index 8b3796dfb636..5669c355e93e 100644
> --- a/configs/omapl138_lcdk_defconfig
> +++ b/configs/omapl138_lcdk_defconfig
> @@ -37,6 +37,8 @@ CONFIG_SPL_PAD_TO=0x8000
>  CONFIG_SPL_FOOTPRINT_LIMIT=y
>  CONFIG_SPL_MAX_FOOTPRINT=0x8000
>  CONFIG_SPL_SYS_MALLOC_SIMPLE=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x8001ff00
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0xb5
>  CONFIG_SPL_NAND_SUPPORT=y
>  CONFIG_SPL_NAND_DRIVERS=y
> diff --git a/configs/openpiton_riscv64_spl_defconfig b/configs/openpiton_riscv64_spl_defconfig
> index 8d2ddedb54c8..e041de4b2b1c 100644
> --- a/configs/openpiton_riscv64_spl_defconfig
> +++ b/configs/openpiton_riscv64_spl_defconfig
> @@ -25,6 +25,8 @@ CONFIG_BOOTCOMMAND="fdt addr ${fdtcontroladdr}; fdt move ${fdtcontroladdr} ${fdt
>  CONFIG_SPL_MAX_SIZE=0x100000
>  # CONFIG_SPL_LEGACY_IMAGE_FORMAT is not set
>  CONFIG_SPL_SYS_MALLOC_SIMPLE=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x83fffe80
>  # CONFIG_SPL_BANNER_PRINT is not set
>  CONFIG_SPL_CPU=y
>  CONFIG_SPL_FS_EXT4=y
> diff --git a/configs/opos6uldev_defconfig b/configs/opos6uldev_defconfig
> index 8b0b4c33e140..ddf879d19eb3 100644
> --- a/configs/opos6uldev_defconfig
> +++ b/configs/opos6uldev_defconfig
> @@ -31,6 +31,8 @@ CONFIG_DEFAULT_FDT_FILE="imx6ul-opos6uldev.dtb"
>  # CONFIG_CONSOLE_MUX is not set
>  CONFIG_SYS_CONSOLE_IS_IN_ENV=y
>  CONFIG_SPL_BOARD_INIT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x91ffb8
>  CONFIG_SPL_ENV_SUPPORT=y
>  CONFIG_SPL_WATCHDOG=y
>  CONFIG_SPL_YMODEM_SUPPORT=y
> diff --git a/configs/orangepi-rk3399_defconfig b/configs/orangepi-rk3399_defconfig
> index 6a8e33321104..790936dff340 100644
> --- a/configs/orangepi-rk3399_defconfig
> +++ b/configs/orangepi-rk3399_defconfig
> @@ -20,6 +20,8 @@ CONFIG_SPL_MAX_SIZE=0x2e000
>  CONFIG_SPL_PAD_TO=0x7f8000
>  CONFIG_SPL_BSS_MAX_SIZE=0x2000
>  # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x400000
>  CONFIG_SPL_STACK_R=y
>  CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x10000
>  CONFIG_TPL=y
> diff --git a/configs/orangepi_2_defconfig b/configs/orangepi_2_defconfig
> index f1e260317ded..e18b8610847c 100644
> --- a/configs/orangepi_2_defconfig
> +++ b/configs/orangepi_2_defconfig
> @@ -7,6 +7,7 @@ CONFIG_MACH_SUN8I_H3=y
>  CONFIG_DRAM_CLK=672
>  CONFIG_USB1_VBUS_PIN="PG13"
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SPL_SYS_I2C_LEGACY=y
> diff --git a/configs/orangepi_3_defconfig b/configs/orangepi_3_defconfig
> index 59e85bb24e84..824f017dae45 100644
> --- a/configs/orangepi_3_defconfig
> +++ b/configs/orangepi_3_defconfig
> @@ -8,6 +8,7 @@ CONFIG_MMC0_CD_PIN="PF6"
>  CONFIG_MMC_SUNXI_SLOT_EXTRA=2
>  CONFIG_BLUETOOTH_DT_DEVICE_FIXUP="brcm,bcm4345c5"
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x118000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_PHY_SUN50I_USB3=y
>  CONFIG_USB_XHCI_HCD=y
> diff --git a/configs/orangepi_lite2_defconfig b/configs/orangepi_lite2_defconfig
> index e7e18effd16d..cfce6cb0d478 100644
> --- a/configs/orangepi_lite2_defconfig
> +++ b/configs/orangepi_lite2_defconfig
> @@ -7,6 +7,7 @@ CONFIG_SUNXI_DRAM_H6_LPDDR3=y
>  CONFIG_MMC0_CD_PIN="PF6"
>  # CONFIG_PSCI_RESET is not set
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x118000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_USB_EHCI_HCD=y
>  CONFIG_USB_OHCI_HCD=y
> diff --git a/configs/orangepi_lite_defconfig b/configs/orangepi_lite_defconfig
> index 4f48ef1b5f5c..c7174170dbf2 100644
> --- a/configs/orangepi_lite_defconfig
> +++ b/configs/orangepi_lite_defconfig
> @@ -5,6 +5,7 @@ CONFIG_SPL=y
>  CONFIG_MACH_SUN8I_H3=y
>  CONFIG_DRAM_CLK=672
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_USB_EHCI_HCD=y
>  CONFIG_USB_OHCI_HCD=y
> diff --git a/configs/orangepi_one_defconfig b/configs/orangepi_one_defconfig
> index ee9d8f397b2e..112ff5e5b6ac 100644
> --- a/configs/orangepi_one_defconfig
> +++ b/configs/orangepi_one_defconfig
> @@ -5,6 +5,7 @@ CONFIG_SPL=y
>  CONFIG_MACH_SUN8I_H3=y
>  CONFIG_DRAM_CLK=672
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SUN8I_EMAC=y
>  CONFIG_USB_EHCI_HCD=y
> diff --git a/configs/orangepi_one_plus_defconfig b/configs/orangepi_one_plus_defconfig
> index e13a32041ae5..63d3addbdd38 100644
> --- a/configs/orangepi_one_plus_defconfig
> +++ b/configs/orangepi_one_plus_defconfig
> @@ -7,6 +7,7 @@ CONFIG_SUNXI_DRAM_H6_LPDDR3=y
>  CONFIG_MMC0_CD_PIN="PF6"
>  # CONFIG_PSCI_RESET is not set
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x118000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_USB_EHCI_HCD=y
>  CONFIG_USB_OHCI_HCD=y
> diff --git a/configs/orangepi_pc2_defconfig b/configs/orangepi_pc2_defconfig
> index 6a6b81fa3936..7b12bf00ff24 100644
> --- a/configs/orangepi_pc2_defconfig
> +++ b/configs/orangepi_pc2_defconfig
> @@ -8,6 +8,7 @@ CONFIG_DRAM_ZQ=3881977
>  CONFIG_MACPWR="PD6"
>  CONFIG_SPL_SPI_SUNXI=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x54000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SPL_SYS_I2C_LEGACY=y
> diff --git a/configs/orangepi_pc_defconfig b/configs/orangepi_pc_defconfig
> index 2ef2a962f413..28107ad5f7a2 100644
> --- a/configs/orangepi_pc_defconfig
> +++ b/configs/orangepi_pc_defconfig
> @@ -5,6 +5,7 @@ CONFIG_SPL=y
>  CONFIG_MACH_SUN8I_H3=y
>  CONFIG_DRAM_CLK=624
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SPL_SYS_I2C_LEGACY=y
> diff --git a/configs/orangepi_pc_plus_defconfig b/configs/orangepi_pc_plus_defconfig
> index 8457b78a39c9..30638679bc6e 100644
> --- a/configs/orangepi_pc_plus_defconfig
> +++ b/configs/orangepi_pc_plus_defconfig
> @@ -6,6 +6,7 @@ CONFIG_MACH_SUN8I_H3=y
>  CONFIG_DRAM_CLK=624
>  CONFIG_MMC_SUNXI_SLOT_EXTRA=2
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SPL_SYS_I2C_LEGACY=y
> diff --git a/configs/orangepi_plus2e_defconfig b/configs/orangepi_plus2e_defconfig
> index f33b75d5e3db..85b25ddd1677 100644
> --- a/configs/orangepi_plus2e_defconfig
> +++ b/configs/orangepi_plus2e_defconfig
> @@ -7,6 +7,7 @@ CONFIG_DRAM_CLK=672
>  CONFIG_MACPWR="PD6"
>  CONFIG_MMC_SUNXI_SLOT_EXTRA=2
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SPL_SYS_I2C_LEGACY=y
> diff --git a/configs/orangepi_plus_defconfig b/configs/orangepi_plus_defconfig
> index e8fda9a5f113..dff0a2fd6e98 100644
> --- a/configs/orangepi_plus_defconfig
> +++ b/configs/orangepi_plus_defconfig
> @@ -9,6 +9,7 @@ CONFIG_MMC_SUNXI_SLOT_EXTRA=2
>  CONFIG_USB1_VBUS_PIN="PG13"
>  CONFIG_SATAPWR="PG11"
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SPL_SYS_I2C_LEGACY=y
> diff --git a/configs/orangepi_prime_defconfig b/configs/orangepi_prime_defconfig
> index 29ef1b8553ab..8c4cb57ef0f9 100644
> --- a/configs/orangepi_prime_defconfig
> +++ b/configs/orangepi_prime_defconfig
> @@ -7,6 +7,7 @@ CONFIG_DRAM_CLK=672
>  CONFIG_DRAM_ZQ=3881977
>  # CONFIG_DRAM_ODT_EN is not set
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x54000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SUN8I_EMAC=y
>  CONFIG_USB_EHCI_HCD=y
> diff --git a/configs/orangepi_r1_defconfig b/configs/orangepi_r1_defconfig
> index 6b68f77833df..e15069c048e8 100644
> --- a/configs/orangepi_r1_defconfig
> +++ b/configs/orangepi_r1_defconfig
> @@ -8,6 +8,7 @@ CONFIG_DRAM_CLK=624
>  CONFIG_SPL_SPI_SUNXI=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
>  CONFIG_CONSOLE_MUX=y
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SPI_FLASH_WINBOND=y
>  CONFIG_SUN8I_EMAC=y
> diff --git a/configs/orangepi_win_defconfig b/configs/orangepi_win_defconfig
> index 9fce313eb9e5..830cbbaaeba3 100644
> --- a/configs/orangepi_win_defconfig
> +++ b/configs/orangepi_win_defconfig
> @@ -7,6 +7,7 @@ CONFIG_RESERVE_ALLWINNER_BOOT0_HEADER=y
>  CONFIG_MACPWR="PD14"
>  CONFIG_SPL_SPI_SUNXI=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x54000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SPI_FLASH_WINBOND=y
>  CONFIG_PHY_REALTEK=y
> diff --git a/configs/orangepi_zero2_defconfig b/configs/orangepi_zero2_defconfig
> index d9c89c88a97d..62117548e2bc 100644
> --- a/configs/orangepi_zero2_defconfig
> +++ b/configs/orangepi_zero2_defconfig
> @@ -11,6 +11,7 @@ CONFIG_MMC0_CD_PIN="PF6"
>  CONFIG_R_I2C_ENABLE=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
>  CONFIG_SPL_MAX_SIZE=0xbfa0
> +CONFIG_SPL_STACK=0x58000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SPL_SYS_I2C_LEGACY=y
> diff --git a/configs/orangepi_zero_defconfig b/configs/orangepi_zero_defconfig
> index e6af0fb8e7d6..b5ff84aaf67c 100644
> --- a/configs/orangepi_zero_defconfig
> +++ b/configs/orangepi_zero_defconfig
> @@ -8,6 +8,7 @@ CONFIG_DRAM_CLK=624
>  CONFIG_SPL_SPI_SUNXI=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
>  CONFIG_CONSOLE_MUX=y
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SPI_FLASH_WINBOND=y
>  CONFIG_SUN8I_EMAC=y
> diff --git a/configs/orangepi_zero_plus2_defconfig b/configs/orangepi_zero_plus2_defconfig
> index 623dd040835e..79040125dcc3 100644
> --- a/configs/orangepi_zero_plus2_defconfig
> +++ b/configs/orangepi_zero_plus2_defconfig
> @@ -9,6 +9,7 @@ CONFIG_DRAM_ZQ=3881977
>  CONFIG_MMC0_CD_PIN="PH13"
>  CONFIG_MMC_SUNXI_SLOT_EXTRA=2
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x54000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SUN8I_EMAC=y
>  CONFIG_USB_EHCI_HCD=y
> diff --git a/configs/orangepi_zero_plus2_h3_defconfig b/configs/orangepi_zero_plus2_h3_defconfig
> index ff73e84a58d3..b2d4f3f8e07d 100644
> --- a/configs/orangepi_zero_plus2_h3_defconfig
> +++ b/configs/orangepi_zero_plus2_h3_defconfig
> @@ -8,6 +8,7 @@ CONFIG_DRAM_CLK=672
>  CONFIG_MMC0_CD_PIN="PH13"
>  CONFIG_MMC_SUNXI_SLOT_EXTRA=2
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SUN8I_EMAC=y
>  CONFIG_USB_EHCI_HCD=y
> diff --git a/configs/orangepi_zero_plus_defconfig b/configs/orangepi_zero_plus_defconfig
> index e7d6b5d32cad..008384e46014 100644
> --- a/configs/orangepi_zero_plus_defconfig
> +++ b/configs/orangepi_zero_plus_defconfig
> @@ -7,6 +7,7 @@ CONFIG_DRAM_CLK=624
>  CONFIG_DRAM_ZQ=3881977
>  # CONFIG_DRAM_ODT_EN is not set
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x54000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SUN8I_EMAC=y
>  CONFIG_USB_EHCI_HCD=y
> diff --git a/configs/parrot_r16_defconfig b/configs/parrot_r16_defconfig
> index 5922e645075c..14e9b455feb7 100644
> --- a/configs/parrot_r16_defconfig
> +++ b/configs/parrot_r16_defconfig
> @@ -11,6 +11,7 @@ CONFIG_USB0_ID_DET="PD10"
>  CONFIG_USB1_VBUS_PIN="PD12"
>  CONFIG_AXP_GPIO=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_FASTBOOT_CMD_OEM_FORMAT=y
>  CONFIG_CONS_INDEX=5
> diff --git a/configs/paz00_defconfig b/configs/paz00_defconfig
> index 08106e981117..091c9a2b4846 100644
> --- a/configs/paz00_defconfig
> +++ b/configs/paz00_defconfig
> @@ -14,6 +14,8 @@ CONFIG_OF_SYSTEM_SETUP=y
>  CONFIG_SYS_STDIO_DEREGISTER=y
>  CONFIG_SPL_FOOTPRINT_LIMIT=y
>  CONFIG_SPL_MAX_FOOTPRINT=0x8000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xffffc
>  CONFIG_SYS_PROMPT="Tegra20 (Paz00) MOD # "
>  CONFIG_SYS_MAXARGS=64
>  CONFIG_SYS_PBSIZE=2087
> diff --git a/configs/pcm058_defconfig b/configs/pcm058_defconfig
> index 54bef4e062e3..f66589948824 100644
> --- a/configs/pcm058_defconfig
> +++ b/configs/pcm058_defconfig
> @@ -30,6 +30,8 @@ CONFIG_BOOTDELAY=3
>  CONFIG_BOOTCOMMAND="run mmcboot;run nandboot"
>  CONFIG_DISPLAY_BOARDINFO_LATE=y
>  CONFIG_SPL_BOARD_INIT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x93ffb8
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x18a
>  CONFIG_SPL_DMA=y
>  CONFIG_SPL_FS_EXT4=y
> diff --git a/configs/phycore-imx8mm_defconfig b/configs/phycore-imx8mm_defconfig
> index 492451da0441..8450d2fc31ec 100644
> --- a/configs/phycore-imx8mm_defconfig
> +++ b/configs/phycore-imx8mm_defconfig
> @@ -29,6 +29,8 @@ CONFIG_BOARD_LATE_INIT=y
>  CONFIG_SPL_MAX_SIZE=0x25000
>  CONFIG_SPL_BSS_MAX_SIZE=0x2000
>  CONFIG_SPL_BOARD_INIT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x920000
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
>  CONFIG_SPL_I2C=y
> diff --git a/configs/phycore-imx8mp_defconfig b/configs/phycore-imx8mp_defconfig
> index bc2fe25545e7..8d783d30cc32 100644
> --- a/configs/phycore-imx8mp_defconfig
> +++ b/configs/phycore-imx8mp_defconfig
> @@ -32,6 +32,8 @@ CONFIG_SPL_BSS_MAX_SIZE=0x400
>  CONFIG_SPL_BOARD_INIT=y
>  CONFIG_SPL_BOOTROM_SUPPORT=y
>  CONFIG_SPL_SYS_MALLOC_SIMPLE=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x960000
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
>  CONFIG_SPL_I2C=y
> diff --git a/configs/phycore-rk3288_defconfig b/configs/phycore-rk3288_defconfig
> index 522dd6679d72..d791e9dcf8d4 100644
> --- a/configs/phycore-rk3288_defconfig
> +++ b/configs/phycore-rk3288_defconfig
> @@ -25,6 +25,8 @@ CONFIG_CONSOLE_MUX=y
>  CONFIG_DISPLAY_BOARDINFO_LATE=y
>  CONFIG_SPL_PAD_TO=0x7f8000
>  CONFIG_SPL_NO_BSS_LIMIT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xff718000
>  CONFIG_SPL_STACK_R=y
>  CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x2000
>  CONFIG_CMD_GPIO=y
> diff --git a/configs/phycore_pcl063_defconfig b/configs/phycore_pcl063_defconfig
> index 6dcb789609f0..442dcc75ee04 100644
> --- a/configs/phycore_pcl063_defconfig
> +++ b/configs/phycore_pcl063_defconfig
> @@ -18,6 +18,8 @@ CONFIG_SYS_MEMTEST_END=0x90000000
>  CONFIG_DISTRO_DEFAULTS=y
>  CONFIG_BOOTDELAY=3
>  CONFIG_BOARD_EARLY_INIT_F=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x91ffb8
>  CONFIG_SPL_USB_HOST=y
>  CONFIG_SPL_WATCHDOG=y
>  CONFIG_SYS_MAXARGS=32
> diff --git a/configs/phycore_pcl063_ull_defconfig b/configs/phycore_pcl063_ull_defconfig
> index e40ca07b7c08..96ea32747053 100644
> --- a/configs/phycore_pcl063_ull_defconfig
> +++ b/configs/phycore_pcl063_ull_defconfig
> @@ -18,6 +18,8 @@ CONFIG_FIT=y
>  CONFIG_BOOTDELAY=3
>  CONFIG_BOOTCOMMAND="run mmc_mmc_fit"
>  CONFIG_BOARD_EARLY_INIT_F=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x91ffb8
>  CONFIG_SPL_USB_HOST=y
>  CONFIG_SPL_WATCHDOG=y
>  CONFIG_SYS_MAXARGS=32
> diff --git a/configs/pico-dwarf-imx6ul_defconfig b/configs/pico-dwarf-imx6ul_defconfig
> index 15dc2098ad44..298865bb2b9f 100644
> --- a/configs/pico-dwarf-imx6ul_defconfig
> +++ b/configs/pico-dwarf-imx6ul_defconfig
> @@ -25,6 +25,8 @@ CONFIG_BOOTDELAY=3
>  CONFIG_BOOTCOMMAND="run findfdt; run finduuid; run distro_bootcmd"
>  CONFIG_DEFAULT_FDT_FILE="imx6ul-pico-dwarf.dtb"
>  CONFIG_BOARD_EARLY_INIT_F=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x91ffb8
>  CONFIG_SPL_USB_HOST=y
>  CONFIG_SPL_USB_GADGET=y
>  CONFIG_SPL_USB_SDP_SUPPORT=y
> diff --git a/configs/pico-dwarf-imx7d_defconfig b/configs/pico-dwarf-imx7d_defconfig
> index 00067d2e46d9..e1d0e3438ddb 100644
> --- a/configs/pico-dwarf-imx7d_defconfig
> +++ b/configs/pico-dwarf-imx7d_defconfig
> @@ -27,6 +27,8 @@ CONFIG_BOOTCOMMAND="run findfdt; run finduuid; run distro_bootcmd"
>  CONFIG_DEFAULT_FDT_FILE="imx7d-pico-dwarf.dtb"
>  CONFIG_SPL_MAX_SIZE=0xe000
>  CONFIG_SPL_BSS_MAX_SIZE=0x100000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x946bb8
>  CONFIG_SPL_I2C=y
>  CONFIG_SPL_USB_HOST=y
>  CONFIG_SPL_USB_GADGET=y
> diff --git a/configs/pico-hobbit-imx6ul_defconfig b/configs/pico-hobbit-imx6ul_defconfig
> index eeb95d431dbc..15fe0df9c00c 100644
> --- a/configs/pico-hobbit-imx6ul_defconfig
> +++ b/configs/pico-hobbit-imx6ul_defconfig
> @@ -26,6 +26,8 @@ CONFIG_BOOTDELAY=3
>  CONFIG_BOOTCOMMAND="run findfdt; run finduuid; run distro_bootcmd"
>  CONFIG_DEFAULT_FDT_FILE="imx6ul-pico-hobbit.dtb"
>  CONFIG_BOARD_EARLY_INIT_F=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x91ffb8
>  CONFIG_SPL_USB_HOST=y
>  CONFIG_SPL_USB_GADGET=y
>  CONFIG_SPL_USB_SDP_SUPPORT=y
> diff --git a/configs/pico-hobbit-imx7d_defconfig b/configs/pico-hobbit-imx7d_defconfig
> index 64c2ca4b189f..4ccbcf90a618 100644
> --- a/configs/pico-hobbit-imx7d_defconfig
> +++ b/configs/pico-hobbit-imx7d_defconfig
> @@ -27,6 +27,8 @@ CONFIG_BOOTCOMMAND="run findfdt; run finduuid; run distro_bootcmd"
>  CONFIG_DEFAULT_FDT_FILE="imx7d-pico-hobbit.dtb"
>  CONFIG_SPL_MAX_SIZE=0xe000
>  CONFIG_SPL_BSS_MAX_SIZE=0x100000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x946bb8
>  CONFIG_SPL_I2C=y
>  CONFIG_SPL_USB_HOST=y
>  CONFIG_SPL_USB_GADGET=y
> diff --git a/configs/pico-imx6_defconfig b/configs/pico-imx6_defconfig
> index 09809542606d..bc20d4253327 100644
> --- a/configs/pico-imx6_defconfig
> +++ b/configs/pico-imx6_defconfig
> @@ -27,6 +27,8 @@ CONFIG_SPL_LOAD_FIT=y
>  CONFIG_BOOTCOMMAND="run default_boot"
>  CONFIG_DEFAULT_FDT_FILE="ask"
>  CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x91ffb8
>  CONFIG_SPL_FIT_IMAGE_TINY=y
>  CONFIG_SPL_FS_EXT4=y
>  CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot-dtb.img"
> diff --git a/configs/pico-imx6ul_defconfig b/configs/pico-imx6ul_defconfig
> index 7e923d0bc027..37cbc96dc0ed 100644
> --- a/configs/pico-imx6ul_defconfig
> +++ b/configs/pico-imx6ul_defconfig
> @@ -26,6 +26,8 @@ CONFIG_BOOTDELAY=3
>  CONFIG_BOOTCOMMAND="run findfdt; run finduuid; run distro_bootcmd"
>  CONFIG_DEFAULT_FDT_FILE="ask"
>  CONFIG_BOARD_EARLY_INIT_F=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x91ffb8
>  CONFIG_SPL_USB_HOST=y
>  CONFIG_SPL_USB_GADGET=y
>  CONFIG_SPL_USB_SDP_SUPPORT=y
> diff --git a/configs/pico-imx7d_bl33_defconfig b/configs/pico-imx7d_bl33_defconfig
> index d13336d0548c..3d342d78186b 100644
> --- a/configs/pico-imx7d_bl33_defconfig
> +++ b/configs/pico-imx7d_bl33_defconfig
> @@ -28,6 +28,8 @@ CONFIG_USE_BOOTCOMMAND=y
>  CONFIG_BOOTCOMMAND="run distro_bootcmd"
>  CONFIG_SPL_MAX_SIZE=0xe000
>  CONFIG_SPL_BSS_MAX_SIZE=0x100000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x946bb8
>  CONFIG_SPL_I2C=y
>  CONFIG_SPL_USB_HOST=y
>  CONFIG_SPL_USB_GADGET=y
> diff --git a/configs/pico-imx7d_defconfig b/configs/pico-imx7d_defconfig
> index a6ee5cebfe26..df57fa13321a 100644
> --- a/configs/pico-imx7d_defconfig
> +++ b/configs/pico-imx7d_defconfig
> @@ -27,6 +27,8 @@ CONFIG_BOOTCOMMAND="run findfdt; run finduuid; run distro_bootcmd"
>  CONFIG_DEFAULT_FDT_FILE="ask"
>  CONFIG_SPL_MAX_SIZE=0xe000
>  CONFIG_SPL_BSS_MAX_SIZE=0x100000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x946bb8
>  CONFIG_SPL_I2C=y
>  CONFIG_SPL_USB_HOST=y
>  CONFIG_SPL_USB_GADGET=y
> diff --git a/configs/pico-imx8mq_defconfig b/configs/pico-imx8mq_defconfig
> index b706b80874f2..1a8f2015b8a8 100644
> --- a/configs/pico-imx8mq_defconfig
> +++ b/configs/pico-imx8mq_defconfig
> @@ -33,6 +33,8 @@ CONFIG_BOARD_LATE_INIT=y
>  CONFIG_SPL_MAX_SIZE=0x1f000
>  CONFIG_SPL_BSS_MAX_SIZE=0x2000
>  CONFIG_SPL_BOARD_INIT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x187ff0
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
>  CONFIG_SPL_I2C=y
> diff --git a/configs/pico-nymph-imx7d_defconfig b/configs/pico-nymph-imx7d_defconfig
> index 00067d2e46d9..e1d0e3438ddb 100644
> --- a/configs/pico-nymph-imx7d_defconfig
> +++ b/configs/pico-nymph-imx7d_defconfig
> @@ -27,6 +27,8 @@ CONFIG_BOOTCOMMAND="run findfdt; run finduuid; run distro_bootcmd"
>  CONFIG_DEFAULT_FDT_FILE="imx7d-pico-dwarf.dtb"
>  CONFIG_SPL_MAX_SIZE=0xe000
>  CONFIG_SPL_BSS_MAX_SIZE=0x100000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x946bb8
>  CONFIG_SPL_I2C=y
>  CONFIG_SPL_USB_HOST=y
>  CONFIG_SPL_USB_GADGET=y
> diff --git a/configs/pico-pi-imx6ul_defconfig b/configs/pico-pi-imx6ul_defconfig
> index 2cc6d4f8bed5..c3613d5745f6 100644
> --- a/configs/pico-pi-imx6ul_defconfig
> +++ b/configs/pico-pi-imx6ul_defconfig
> @@ -26,6 +26,8 @@ CONFIG_BOOTDELAY=3
>  CONFIG_BOOTCOMMAND="run findfdt; run finduuid; run distro_bootcmd"
>  CONFIG_DEFAULT_FDT_FILE="imx6ul-pico-pi.dtb"
>  CONFIG_BOARD_EARLY_INIT_F=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x91ffb8
>  CONFIG_SPL_USB_HOST=y
>  CONFIG_SPL_USB_GADGET=y
>  CONFIG_SPL_USB_SDP_SUPPORT=y
> diff --git a/configs/pico-pi-imx7d_defconfig b/configs/pico-pi-imx7d_defconfig
> index b74b2582cb95..c799968944c6 100644
> --- a/configs/pico-pi-imx7d_defconfig
> +++ b/configs/pico-pi-imx7d_defconfig
> @@ -27,6 +27,8 @@ CONFIG_BOOTCOMMAND="run findfdt; run finduuid; run distro_bootcmd"
>  CONFIG_DEFAULT_FDT_FILE="imx7d-pico-pi.dtb"
>  CONFIG_SPL_MAX_SIZE=0xe000
>  CONFIG_SPL_BSS_MAX_SIZE=0x100000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x946bb8
>  CONFIG_SPL_I2C=y
>  CONFIG_SPL_USB_HOST=y
>  CONFIG_SPL_USB_GADGET=y
> diff --git a/configs/pine64-lts_defconfig b/configs/pine64-lts_defconfig
> index 94c03f16a8c3..c6b4f7bf1438 100644
> --- a/configs/pine64-lts_defconfig
> +++ b/configs/pine64-lts_defconfig
> @@ -10,6 +10,7 @@ CONFIG_MMC0_CD_PIN=""
>  CONFIG_MMC_SUNXI_SLOT_EXTRA=2
>  CONFIG_SPL_SPI_SUNXI=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x54000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SUPPORT_EMMC_BOOT=y
>  CONFIG_SPI_FLASH_WINBOND=y
> diff --git a/configs/pine64_plus_defconfig b/configs/pine64_plus_defconfig
> index dc02ca10d7e8..7dbe061790cd 100644
> --- a/configs/pine64_plus_defconfig
> +++ b/configs/pine64_plus_defconfig
> @@ -6,6 +6,7 @@ CONFIG_MACH_SUN50I=y
>  CONFIG_RESERVE_ALLWINNER_BOOT0_HEADER=y
>  CONFIG_PINE64_DT_SELECTION=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x54000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_OF_LIST="sun50i-a64-pine64 sun50i-a64-pine64-plus"
>  CONFIG_PHY_REALTEK=y
> diff --git a/configs/pine_h64_defconfig b/configs/pine_h64_defconfig
> index 7466c3b2c5fd..2cddcf58301e 100644
> --- a/configs/pine_h64_defconfig
> +++ b/configs/pine_h64_defconfig
> @@ -11,6 +11,7 @@ CONFIG_USB3_VBUS_PIN="PL5"
>  CONFIG_SPL_SPI_SUNXI=y
>  # CONFIG_PSCI_RESET is not set
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x118000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SUPPORT_EMMC_BOOT=y
>  CONFIG_SPI_FLASH_WINBOND=y
> diff --git a/configs/pinebook-pro-rk3399_defconfig b/configs/pinebook-pro-rk3399_defconfig
> index 5f763acfcefb..c831830656c7 100644
> --- a/configs/pinebook-pro-rk3399_defconfig
> +++ b/configs/pinebook-pro-rk3399_defconfig
> @@ -25,6 +25,8 @@ CONFIG_SPL_MAX_SIZE=0x2e000
>  CONFIG_SPL_PAD_TO=0x7f8000
>  CONFIG_SPL_BSS_MAX_SIZE=0x2000
>  # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x400000
>  CONFIG_SPL_STACK_R=y
>  CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x10000
>  CONFIG_SPL_MTD_SUPPORT=y
> diff --git a/configs/pinebook_defconfig b/configs/pinebook_defconfig
> index 1bdfcf27be03..bf070aab8b34 100644
> --- a/configs/pinebook_defconfig
> +++ b/configs/pinebook_defconfig
> @@ -8,6 +8,7 @@ CONFIG_DRAM_CLK=552
>  CONFIG_DRAM_ZQ=3881949
>  CONFIG_MMC_SUNXI_SLOT_EXTRA=2
>  CONFIG_R_I2C_ENABLE=y
> +CONFIG_SPL_STACK=0x54000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SPL_SYS_I2C_LEGACY=y
>  CONFIG_SYS_I2C_MVTWSI=y
> diff --git a/configs/pinecube_defconfig b/configs/pinecube_defconfig
> index 1259b85361d0..531cf0f83b62 100644
> --- a/configs/pinecube_defconfig
> +++ b/configs/pinecube_defconfig
> @@ -8,6 +8,7 @@ CONFIG_DRAM_CLK=504
>  CONFIG_DRAM_ODT_EN=y
>  CONFIG_I2C0_ENABLE=y
>  # CONFIG_HAS_ARMV7_SECURE_BASE is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SPL_SYS_I2C_LEGACY=y
> diff --git a/configs/pinephone_defconfig b/configs/pinephone_defconfig
> index ae60943e95ab..d882c0cc8802 100644
> --- a/configs/pinephone_defconfig
> +++ b/configs/pinephone_defconfig
> @@ -10,6 +10,7 @@ CONFIG_DRAM_ZQ=3881949
>  CONFIG_MMC_SUNXI_SLOT_EXTRA=2
>  CONFIG_PINEPHONE_DT_SELECTION=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x54000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_OF_LIST="sun50i-a64-pinephone-1.1 sun50i-a64-pinephone-1.2"
>  CONFIG_LED_STATUS=y
> diff --git a/configs/pinetab_defconfig b/configs/pinetab_defconfig
> index 4ecd241b52f1..f90cb0d1f818 100644
> --- a/configs/pinetab_defconfig
> +++ b/configs/pinetab_defconfig
> @@ -8,4 +8,5 @@ CONFIG_DRAM_CLK=552
>  CONFIG_DRAM_ZQ=3881949
>  CONFIG_MMC_SUNXI_SLOT_EXTRA=2
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x54000
>  CONFIG_SYS_PBSIZE=1024
> diff --git a/configs/plutux_defconfig b/configs/plutux_defconfig
> index 95b251627779..fe59c10b1920 100644
> --- a/configs/plutux_defconfig
> +++ b/configs/plutux_defconfig
> @@ -16,6 +16,8 @@ CONFIG_CONSOLE_MUX=y
>  CONFIG_SYS_STDIO_DEREGISTER=y
>  CONFIG_SPL_FOOTPRINT_LIMIT=y
>  CONFIG_SPL_MAX_FOOTPRINT=0x8000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xffffc
>  CONFIG_SYS_PROMPT="Tegra20 (Plutux) # "
>  CONFIG_SYS_MAXARGS=64
>  CONFIG_SYS_PBSIZE=2084
> diff --git a/configs/polaroid_mid2407pxe03_defconfig b/configs/polaroid_mid2407pxe03_defconfig
> index ed8b780b01e1..74ffaf1d0117 100644
> --- a/configs/polaroid_mid2407pxe03_defconfig
> +++ b/configs/polaroid_mid2407pxe03_defconfig
> @@ -16,6 +16,7 @@ CONFIG_VIDEO_LCD_POWER="PH7"
>  CONFIG_VIDEO_LCD_BL_EN="PH6"
>  CONFIG_VIDEO_LCD_BL_PWM="PH0"
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_AXP_DLDO1_VOLT=3300
>  CONFIG_CONS_INDEX=5
> diff --git a/configs/polaroid_mid2809pxe04_defconfig b/configs/polaroid_mid2809pxe04_defconfig
> index 5953344491c7..10057ade9a5a 100644
> --- a/configs/polaroid_mid2809pxe04_defconfig
> +++ b/configs/polaroid_mid2809pxe04_defconfig
> @@ -16,6 +16,7 @@ CONFIG_VIDEO_LCD_POWER="PH7"
>  CONFIG_VIDEO_LCD_BL_EN="PH6"
>  CONFIG_VIDEO_LCD_BL_PWM="PH0"
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_AXP_DLDO1_VOLT=3300
>  CONFIG_CONS_INDEX=5
> diff --git a/configs/popmetal-rk3288_defconfig b/configs/popmetal-rk3288_defconfig
> index 35ec663b3e6e..5b5039e290be 100644
> --- a/configs/popmetal-rk3288_defconfig
> +++ b/configs/popmetal-rk3288_defconfig
> @@ -25,6 +25,8 @@ CONFIG_CONSOLE_MUX=y
>  CONFIG_DISPLAY_BOARDINFO_LATE=y
>  CONFIG_SPL_PAD_TO=0x7f8000
>  CONFIG_SPL_NO_BSS_LIMIT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xff718000
>  CONFIG_SPL_STACK_R=y
>  CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x2000
>  CONFIG_CMD_GPIO=y
> diff --git a/configs/porter_defconfig b/configs/porter_defconfig
> index c176051cbd09..568ec18049d9 100644
> --- a/configs/porter_defconfig
> +++ b/configs/porter_defconfig
> @@ -34,6 +34,8 @@ CONFIG_SPL_MAX_SIZE=0x4000
>  CONFIG_SPL_NO_BSS_LIMIT=y
>  CONFIG_SPL_BOARD_INIT=y
>  CONFIG_SPL_SYS_MALLOC_SIMPLE=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xe6340000
>  CONFIG_SPL_RAM_SUPPORT=y
>  CONFIG_SPL_RAM_DEVICE=y
>  CONFIG_SPL_SPI_LOAD=y
> diff --git a/configs/pov_protab2_ips9_defconfig b/configs/pov_protab2_ips9_defconfig
> index cf7f57574e04..523de63fc27a 100644
> --- a/configs/pov_protab2_ips9_defconfig
> +++ b/configs/pov_protab2_ips9_defconfig
> @@ -14,6 +14,7 @@ CONFIG_VIDEO_LCD_BL_EN="PH7"
>  CONFIG_VIDEO_LCD_BL_PWM="PB2"
>  CONFIG_VIDEO_LCD_PANEL_LVDS=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SYS_I2C_MVTWSI=y
> diff --git a/configs/puma-rk3399_defconfig b/configs/puma-rk3399_defconfig
> index f7431ddf3ec5..e859172c5cd7 100644
> --- a/configs/puma-rk3399_defconfig
> +++ b/configs/puma-rk3399_defconfig
> @@ -26,6 +26,8 @@ CONFIG_SPL_MAX_SIZE=0x2e000
>  CONFIG_SPL_PAD_TO=0x7f8000
>  CONFIG_SPL_BSS_MAX_SIZE=0x10000
>  # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xff8effff
>  CONFIG_SPL_STACK_R=y
>  CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x4000
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x200
> diff --git a/configs/px30-core-ctouch2-of10-px30_defconfig b/configs/px30-core-ctouch2-of10-px30_defconfig
> index 66d2ca7c28cb..d0bada7bae70 100644
> --- a/configs/px30-core-ctouch2-of10-px30_defconfig
> +++ b/configs/px30-core-ctouch2-of10-px30_defconfig
> @@ -36,6 +36,8 @@ CONFIG_SPL_PAD_TO=0x7f8000
>  CONFIG_SPL_BSS_MAX_SIZE=0x4000
>  CONFIG_SPL_BOOTROM_SUPPORT=y
>  # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x400000
>  CONFIG_SPL_STACK_R=y
>  # CONFIG_TPL_BANNER_PRINT is not set
>  CONFIG_SPL_ATF=y
> diff --git a/configs/px30-core-ctouch2-px30_defconfig b/configs/px30-core-ctouch2-px30_defconfig
> index 90fb411d551a..8e4de8e8b78d 100644
> --- a/configs/px30-core-ctouch2-px30_defconfig
> +++ b/configs/px30-core-ctouch2-px30_defconfig
> @@ -36,6 +36,8 @@ CONFIG_SPL_PAD_TO=0x7f8000
>  CONFIG_SPL_BSS_MAX_SIZE=0x4000
>  CONFIG_SPL_BOOTROM_SUPPORT=y
>  # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x400000
>  CONFIG_SPL_STACK_R=y
>  # CONFIG_TPL_BANNER_PRINT is not set
>  CONFIG_SPL_ATF=y
> diff --git a/configs/px30-core-edimm2.2-px30_defconfig b/configs/px30-core-edimm2.2-px30_defconfig
> index cc2d5cbeacc5..3a4dbb60ebf1 100644
> --- a/configs/px30-core-edimm2.2-px30_defconfig
> +++ b/configs/px30-core-edimm2.2-px30_defconfig
> @@ -36,6 +36,8 @@ CONFIG_SPL_PAD_TO=0x7f8000
>  CONFIG_SPL_BSS_MAX_SIZE=0x4000
>  CONFIG_SPL_BOOTROM_SUPPORT=y
>  # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x400000
>  CONFIG_SPL_STACK_R=y
>  # CONFIG_TPL_BANNER_PRINT is not set
>  CONFIG_SPL_ATF=y
> diff --git a/configs/q8_a13_tablet_defconfig b/configs/q8_a13_tablet_defconfig
> index 08be8810d8ce..83981d3ac749 100644
> --- a/configs/q8_a13_tablet_defconfig
> +++ b/configs/q8_a13_tablet_defconfig
> @@ -15,6 +15,7 @@ CONFIG_VIDEO_LCD_POWER="AXP0-0"
>  CONFIG_VIDEO_LCD_BL_EN="AXP0-1"
>  CONFIG_VIDEO_LCD_BL_PWM="PB2"
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SYS_I2C_MVTWSI=y
> diff --git a/configs/q8_a23_tablet_800x480_defconfig b/configs/q8_a23_tablet_800x480_defconfig
> index 6053587dddf4..11d208a34a05 100644
> --- a/configs/q8_a23_tablet_800x480_defconfig
> +++ b/configs/q8_a23_tablet_800x480_defconfig
> @@ -16,6 +16,7 @@ CONFIG_VIDEO_LCD_POWER="PH7"
>  CONFIG_VIDEO_LCD_BL_EN="PH6"
>  CONFIG_VIDEO_LCD_BL_PWM="PH0"
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_AXP_DLDO1_VOLT=3300
>  CONFIG_CONS_INDEX=5
> diff --git a/configs/q8_a33_tablet_1024x600_defconfig b/configs/q8_a33_tablet_1024x600_defconfig
> index 0870d234e864..c848e62d73c9 100644
> --- a/configs/q8_a33_tablet_1024x600_defconfig
> +++ b/configs/q8_a33_tablet_1024x600_defconfig
> @@ -16,6 +16,7 @@ CONFIG_VIDEO_LCD_POWER="PH7"
>  CONFIG_VIDEO_LCD_BL_EN="PH6"
>  CONFIG_VIDEO_LCD_BL_PWM="PH0"
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_AXP_DLDO1_VOLT=3300
>  CONFIG_CONS_INDEX=5
> diff --git a/configs/q8_a33_tablet_800x480_defconfig b/configs/q8_a33_tablet_800x480_defconfig
> index 3b99004fb9a3..ee5654185b16 100644
> --- a/configs/q8_a33_tablet_800x480_defconfig
> +++ b/configs/q8_a33_tablet_800x480_defconfig
> @@ -16,6 +16,7 @@ CONFIG_VIDEO_LCD_POWER="PH7"
>  CONFIG_VIDEO_LCD_BL_EN="PH6"
>  CONFIG_VIDEO_LCD_BL_PWM="PH0"
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_AXP_DLDO1_VOLT=3300
>  CONFIG_CONS_INDEX=5
> diff --git a/configs/r7-tv-dongle_defconfig b/configs/r7-tv-dongle_defconfig
> index a8452ba3b742..f5adbd3686cb 100644
> --- a/configs/r7-tv-dongle_defconfig
> +++ b/configs/r7-tv-dongle_defconfig
> @@ -6,6 +6,7 @@ CONFIG_MACH_SUN5I=y
>  CONFIG_DRAM_CLK=384
>  CONFIG_USB1_VBUS_PIN="PG13"
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SYS_I2C_MVTWSI=y
> diff --git a/configs/r8a77970_eagle_defconfig b/configs/r8a77970_eagle_defconfig
> index b42e13bb5588..dfb4adf6654a 100644
> --- a/configs/r8a77970_eagle_defconfig
> +++ b/configs/r8a77970_eagle_defconfig
> @@ -23,6 +23,8 @@ CONFIG_BOOTCOMMAND="tftp 0x48080000 Image; tftp 0x48000000 Image-r8a77970-eagle.
>  CONFIG_DEFAULT_FDT_FILE="r8a77970-eagle.dtb"
>  CONFIG_SYS_MALLOC_BOOTPARAMS=y
>  CONFIG_SPL_BSS_MAX_SIZE=0x1000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xe6304000
>  CONFIG_HUSH_PARSER=y
>  CONFIG_SYS_MAXARGS=64
>  CONFIG_SYS_PBSIZE=2068
> diff --git a/configs/r8a77980_condor_defconfig b/configs/r8a77980_condor_defconfig
> index f05590f7b3d8..d24204d41380 100644
> --- a/configs/r8a77980_condor_defconfig
> +++ b/configs/r8a77980_condor_defconfig
> @@ -24,6 +24,8 @@ CONFIG_DEFAULT_FDT_FILE="r8a77980-condor.dtb"
>  # CONFIG_BOARD_EARLY_INIT_F is not set
>  CONFIG_SYS_MALLOC_BOOTPARAMS=y
>  CONFIG_SPL_BSS_MAX_SIZE=0x1000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xe6304000
>  CONFIG_HUSH_PARSER=y
>  CONFIG_SYS_MAXARGS=64
>  CONFIG_SYS_PBSIZE=2068
> diff --git a/configs/r8a77990_ebisu_defconfig b/configs/r8a77990_ebisu_defconfig
> index a2349c03dd56..33c277472196 100644
> --- a/configs/r8a77990_ebisu_defconfig
> +++ b/configs/r8a77990_ebisu_defconfig
> @@ -25,6 +25,8 @@ CONFIG_DEFAULT_FDT_FILE="r8a77990-ebisu.dtb"
>  CONFIG_SYS_MALLOC_BOOTPARAMS=y
>  CONFIG_UPDATE_TFTP=y
>  CONFIG_SPL_BSS_MAX_SIZE=0x1000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xe6304000
>  CONFIG_HUSH_PARSER=y
>  CONFIG_SYS_MAXARGS=64
>  CONFIG_SYS_PBSIZE=2068
> diff --git a/configs/r8a77995_draak_defconfig b/configs/r8a77995_draak_defconfig
> index 1fe0d2abc589..f1fd84a4bd2d 100644
> --- a/configs/r8a77995_draak_defconfig
> +++ b/configs/r8a77995_draak_defconfig
> @@ -24,6 +24,8 @@ CONFIG_DEFAULT_FDT_FILE="r8a77995-draak.dtb"
>  CONFIG_SYS_MALLOC_BOOTPARAMS=y
>  CONFIG_UPDATE_TFTP=y
>  CONFIG_SPL_BSS_MAX_SIZE=0x1000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xe6304000
>  CONFIG_HUSH_PARSER=y
>  CONFIG_SYS_MAXARGS=64
>  CONFIG_SYS_PBSIZE=2068
> diff --git a/configs/r8a779a0_falcon_defconfig b/configs/r8a779a0_falcon_defconfig
> index 67e9aa3be7b4..8477127e12b8 100644
> --- a/configs/r8a779a0_falcon_defconfig
> +++ b/configs/r8a779a0_falcon_defconfig
> @@ -26,6 +26,8 @@ CONFIG_BOOTCOMMAND="tftp 0x48080000 Image; tftp 0x48000000 Image-r8a779a0-falcon
>  CONFIG_DEFAULT_FDT_FILE="r8a779a0-falcon.dtb"
>  CONFIG_SYS_MALLOC_BOOTPARAMS=y
>  CONFIG_SPL_BSS_MAX_SIZE=0x1000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xe6304000
>  CONFIG_HUSH_PARSER=y
>  CONFIG_SYS_MAXARGS=64
>  CONFIG_SYS_PBSIZE=2068
> diff --git a/configs/rcar3_salvator-x_defconfig b/configs/rcar3_salvator-x_defconfig
> index ab865bcc9403..ce22f8b9ecc0 100644
> --- a/configs/rcar3_salvator-x_defconfig
> +++ b/configs/rcar3_salvator-x_defconfig
> @@ -24,6 +24,8 @@ CONFIG_DEFAULT_FDT_FILE="r8a77950-salvator-x.dtb"
>  CONFIG_SYS_MALLOC_BOOTPARAMS=y
>  CONFIG_UPDATE_TFTP=y
>  CONFIG_SPL_BSS_MAX_SIZE=0x1000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xe6304000
>  CONFIG_HUSH_PARSER=y
>  CONFIG_SYS_MAXARGS=64
>  CONFIG_SYS_PBSIZE=2068
> diff --git a/configs/rcar3_ulcb_defconfig b/configs/rcar3_ulcb_defconfig
> index 0b512765331d..2b7c2eace4cd 100644
> --- a/configs/rcar3_ulcb_defconfig
> +++ b/configs/rcar3_ulcb_defconfig
> @@ -24,6 +24,8 @@ CONFIG_DEFAULT_FDT_FILE="r8a77950-ulcb.dtb"
>  CONFIG_SYS_MALLOC_BOOTPARAMS=y
>  CONFIG_UPDATE_TFTP=y
>  CONFIG_SPL_BSS_MAX_SIZE=0x1000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xe6304000
>  CONFIG_HUSH_PARSER=y
>  CONFIG_SYS_MAXARGS=64
>  CONFIG_SYS_PBSIZE=2068
> diff --git a/configs/riotboard_defconfig b/configs/riotboard_defconfig
> index 8e74a1f087f9..a14f9a409e04 100644
> --- a/configs/riotboard_defconfig
> +++ b/configs/riotboard_defconfig
> @@ -28,6 +28,8 @@ CONFIG_SYS_CONSOLE_IS_IN_ENV=y
>  CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
>  CONFIG_BOARD_EARLY_INIT_F=y
>  CONFIG_SPL_RAW_IMAGE_SUPPORT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x91ffb8
>  CONFIG_SPL_FS_EXT4=y
>  CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot-dtb.img"
>  CONFIG_SPL_FS_LOAD_ARGS_NAME="imx6dl-riotboard.dtb"
> diff --git a/configs/roc-cc-rk3308_defconfig b/configs/roc-cc-rk3308_defconfig
> index e0464a3f2cff..a35326f9ec8f 100644
> --- a/configs/roc-cc-rk3308_defconfig
> +++ b/configs/roc-cc-rk3308_defconfig
> @@ -27,6 +27,8 @@ CONFIG_SYS_CONSOLE_INFO_QUIET=y
>  CONFIG_SPL_MAX_SIZE=0x20000
>  CONFIG_SPL_PAD_TO=0x7f8000
>  CONFIG_SPL_BSS_MAX_SIZE=0x2000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x400000
>  CONFIG_SPL_STACK_R=y
>  # CONFIG_CMD_BDI is not set
>  # CONFIG_CMD_CONSOLE is not set
> diff --git a/configs/roc-cc-rk3328_defconfig b/configs/roc-cc-rk3328_defconfig
> index fdaf633f60fd..1b4fc3381cce 100644
> --- a/configs/roc-cc-rk3328_defconfig
> +++ b/configs/roc-cc-rk3328_defconfig
> @@ -33,6 +33,8 @@ CONFIG_SPL_PAD_TO=0x7f8000
>  CONFIG_SPL_BSS_MAX_SIZE=0x2000
>  # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
>  CONFIG_TPL_SYS_MALLOC_SIMPLE=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x400000
>  CONFIG_SPL_STACK_R=y
>  CONFIG_SPL_I2C=y
>  CONFIG_SPL_POWER=y
> diff --git a/configs/roc-pc-mezzanine-rk3399_defconfig b/configs/roc-pc-mezzanine-rk3399_defconfig
> index fbcac4cbdb2b..1748b7d8702a 100644
> --- a/configs/roc-pc-mezzanine-rk3399_defconfig
> +++ b/configs/roc-pc-mezzanine-rk3399_defconfig
> @@ -26,6 +26,8 @@ CONFIG_SPL_MAX_SIZE=0x2e000
>  CONFIG_SPL_PAD_TO=0x7f8000
>  CONFIG_SPL_BSS_MAX_SIZE=0x2000
>  # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x400000
>  CONFIG_SPL_STACK_R=y
>  CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x20000
>  CONFIG_SPL_ENV_SUPPORT=y
> diff --git a/configs/roc-pc-rk3399_defconfig b/configs/roc-pc-rk3399_defconfig
> index b053f7e58466..7b086a1cc1dd 100644
> --- a/configs/roc-pc-rk3399_defconfig
> +++ b/configs/roc-pc-rk3399_defconfig
> @@ -26,6 +26,8 @@ CONFIG_SPL_MAX_SIZE=0x2e000
>  CONFIG_SPL_PAD_TO=0x7f8000
>  CONFIG_SPL_BSS_MAX_SIZE=0x2000
>  # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x400000
>  CONFIG_SPL_STACK_R=y
>  CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x20000
>  CONFIG_SPL_ENV_SUPPORT=y
> diff --git a/configs/rock-pi-4-rk3399_defconfig b/configs/rock-pi-4-rk3399_defconfig
> index 89566cdc7571..d9d5f5e5efca 100644
> --- a/configs/rock-pi-4-rk3399_defconfig
> +++ b/configs/rock-pi-4-rk3399_defconfig
> @@ -22,6 +22,8 @@ CONFIG_SPL_MAX_SIZE=0x2e000
>  CONFIG_SPL_PAD_TO=0x7f8000
>  CONFIG_SPL_BSS_MAX_SIZE=0x2000
>  # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x400000
>  CONFIG_SPL_STACK_R=y
>  CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x10000
>  CONFIG_TPL=y
> diff --git a/configs/rock-pi-4c-rk3399_defconfig b/configs/rock-pi-4c-rk3399_defconfig
> index 1820b7695ec0..220b2af00881 100644
> --- a/configs/rock-pi-4c-rk3399_defconfig
> +++ b/configs/rock-pi-4c-rk3399_defconfig
> @@ -22,6 +22,8 @@ CONFIG_SPL_MAX_SIZE=0x2e000
>  CONFIG_SPL_PAD_TO=0x7f8000
>  CONFIG_SPL_BSS_MAX_SIZE=0x2000
>  # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x400000
>  CONFIG_SPL_STACK_R=y
>  CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x10000
>  CONFIG_TPL=y
> diff --git a/configs/rock-pi-e-rk3328_defconfig b/configs/rock-pi-e-rk3328_defconfig
> index e1e50396d328..e231593bd566 100644
> --- a/configs/rock-pi-e-rk3328_defconfig
> +++ b/configs/rock-pi-e-rk3328_defconfig
> @@ -34,6 +34,8 @@ CONFIG_SPL_PAD_TO=0x7f8000
>  CONFIG_SPL_BSS_MAX_SIZE=0x2000
>  # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
>  CONFIG_TPL_SYS_MALLOC_SIMPLE=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x400000
>  CONFIG_SPL_STACK_R=y
>  CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x10000
>  CONFIG_SPL_I2C=y
> diff --git a/configs/rock-pi-n10-rk3399pro_defconfig b/configs/rock-pi-n10-rk3399pro_defconfig
> index c468d7d1ab38..e283476bb9a5 100644
> --- a/configs/rock-pi-n10-rk3399pro_defconfig
> +++ b/configs/rock-pi-n10-rk3399pro_defconfig
> @@ -24,6 +24,8 @@ CONFIG_SPL_MAX_SIZE=0x2e000
>  CONFIG_SPL_PAD_TO=0x7f8000
>  CONFIG_SPL_BSS_MAX_SIZE=0x2000
>  # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x400000
>  CONFIG_SPL_STACK_R=y
>  CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x10000
>  CONFIG_TPL=y
> diff --git a/configs/rock-pi-n8-rk3288_defconfig b/configs/rock-pi-n8-rk3288_defconfig
> index 66258f02c801..7abb343ad698 100644
> --- a/configs/rock-pi-n8-rk3288_defconfig
> +++ b/configs/rock-pi-n8-rk3288_defconfig
> @@ -24,6 +24,8 @@ CONFIG_SILENT_CONSOLE=y
>  CONFIG_DISPLAY_BOARDINFO_LATE=y
>  CONFIG_SPL_PAD_TO=0x7f8000
>  CONFIG_SPL_NO_BSS_LIMIT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xff718000
>  CONFIG_SPL_STACK_R=y
>  CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x2000
>  CONFIG_CMD_SPL=y
> diff --git a/configs/rock2_defconfig b/configs/rock2_defconfig
> index ffc11625e140..c06ab641c300 100644
> --- a/configs/rock2_defconfig
> +++ b/configs/rock2_defconfig
> @@ -25,6 +25,8 @@ CONFIG_SILENT_CONSOLE=y
>  CONFIG_DISPLAY_BOARDINFO_LATE=y
>  CONFIG_SPL_PAD_TO=0x7f8000
>  CONFIG_SPL_NO_BSS_LIMIT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xff718000
>  CONFIG_SPL_STACK_R=y
>  CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x2000
>  CONFIG_CMD_GPIO=y
> diff --git a/configs/rock64-rk3328_defconfig b/configs/rock64-rk3328_defconfig
> index 7026b6f4d920..aa4cdde4872c 100644
> --- a/configs/rock64-rk3328_defconfig
> +++ b/configs/rock64-rk3328_defconfig
> @@ -33,6 +33,8 @@ CONFIG_SPL_PAD_TO=0x7f8000
>  CONFIG_SPL_BSS_MAX_SIZE=0x2000
>  # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
>  CONFIG_TPL_SYS_MALLOC_SIMPLE=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x400000
>  CONFIG_SPL_STACK_R=y
>  CONFIG_SPL_I2C=y
>  CONFIG_SPL_POWER=y
> diff --git a/configs/rock960-rk3399_defconfig b/configs/rock960-rk3399_defconfig
> index 788adb83e2dc..5e9f2cff33f3 100644
> --- a/configs/rock960-rk3399_defconfig
> +++ b/configs/rock960-rk3399_defconfig
> @@ -21,6 +21,8 @@ CONFIG_SPL_MAX_SIZE=0x2e000
>  CONFIG_SPL_PAD_TO=0x7f8000
>  CONFIG_SPL_BSS_MAX_SIZE=0x2000
>  # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x400000
>  CONFIG_SPL_STACK_R=y
>  CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x10000
>  CONFIG_TPL=y
> diff --git a/configs/rock_defconfig b/configs/rock_defconfig
> index dfc9257225fc..e99272ef2268 100644
> --- a/configs/rock_defconfig
> +++ b/configs/rock_defconfig
> @@ -27,6 +27,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
>  CONFIG_SPL_MAX_SIZE=0x7800
>  CONFIG_SPL_PAD_TO=0x7f8000
>  CONFIG_SPL_NO_BSS_LIMIT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x10087fff
>  CONFIG_SPL_STACK_R=y
>  CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x2000
>  CONFIG_RANDOM_UUID=y
> diff --git a/configs/rockpro64-rk3399_defconfig b/configs/rockpro64-rk3399_defconfig
> index 8a66931edd0f..fff00fba6d91 100644
> --- a/configs/rockpro64-rk3399_defconfig
> +++ b/configs/rockpro64-rk3399_defconfig
> @@ -25,6 +25,8 @@ CONFIG_SPL_MAX_SIZE=0x2e000
>  CONFIG_SPL_PAD_TO=0x7f8000
>  CONFIG_SPL_BSS_MAX_SIZE=0x2000
>  # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x400000
>  CONFIG_SPL_STACK_R=y
>  CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x10000
>  CONFIG_SPL_SPI_LOAD=y
> diff --git a/configs/sama5d27_giantboard_defconfig b/configs/sama5d27_giantboard_defconfig
> index 4dec17850bd1..50f5cacbdde9 100644
> --- a/configs/sama5d27_giantboard_defconfig
> +++ b/configs/sama5d27_giantboard_defconfig
> @@ -40,6 +40,8 @@ CONFIG_BOOTCOMMAND="fatload mmc 0 0x22000000 at91-sama5d27_giantboard.dtb; fatlo
>  CONFIG_MISC_INIT_R=y
>  CONFIG_SPL_MAX_SIZE=0x10000
>  CONFIG_SPL_BSS_MAX_SIZE=0x80000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x218000
>  CONFIG_HUSH_PARSER=y
>  CONFIG_SYS_CBSIZE=256
>  CONFIG_SYS_PBSIZE=276
> diff --git a/configs/sama5d27_som1_ek_mmc1_defconfig b/configs/sama5d27_som1_ek_mmc1_defconfig
> index 2d617200e9e9..76af9fc8cb1b 100644
> --- a/configs/sama5d27_som1_ek_mmc1_defconfig
> +++ b/configs/sama5d27_som1_ek_mmc1_defconfig
> @@ -36,6 +36,8 @@ CONFIG_BOOTCOMMAND="fatload mmc 1 0x22000000 at91-sama5d27_som1_ek.dtb; fatload
>  CONFIG_MISC_INIT_R=y
>  CONFIG_SPL_MAX_SIZE=0x10000
>  CONFIG_SPL_BSS_MAX_SIZE=0x80000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x218000
>  CONFIG_HUSH_PARSER=y
>  CONFIG_SYS_CBSIZE=256
>  CONFIG_SYS_PBSIZE=276
> diff --git a/configs/sama5d27_som1_ek_mmc_defconfig b/configs/sama5d27_som1_ek_mmc_defconfig
> index 5bbae1299ad2..3852754ceb37 100644
> --- a/configs/sama5d27_som1_ek_mmc_defconfig
> +++ b/configs/sama5d27_som1_ek_mmc_defconfig
> @@ -37,6 +37,8 @@ CONFIG_BOOTCOMMAND="fatload mmc 0 0x22000000 at91-sama5d27_som1_ek.dtb; fatload
>  CONFIG_MISC_INIT_R=y
>  CONFIG_SPL_MAX_SIZE=0x10000
>  CONFIG_SPL_BSS_MAX_SIZE=0x80000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x218000
>  CONFIG_HUSH_PARSER=y
>  CONFIG_SYS_CBSIZE=256
>  CONFIG_SYS_PBSIZE=276
> diff --git a/configs/sama5d27_som1_ek_qspiflash_defconfig b/configs/sama5d27_som1_ek_qspiflash_defconfig
> index c671328e0c48..35eefb780b5b 100644
> --- a/configs/sama5d27_som1_ek_qspiflash_defconfig
> +++ b/configs/sama5d27_som1_ek_qspiflash_defconfig
> @@ -35,6 +35,8 @@ CONFIG_BOOTARGS="console=ttyS0,115200 earlyprintk root=/dev/mmcblk0p2 rw rootwai
>  CONFIG_MISC_INIT_R=y
>  CONFIG_SPL_MAX_SIZE=0x10000
>  CONFIG_SPL_BSS_MAX_SIZE=0x80000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x218000
>  CONFIG_HUSH_PARSER=y
>  CONFIG_SYS_CBSIZE=256
>  CONFIG_SYS_PBSIZE=276
> diff --git a/configs/sama5d27_wlsom1_ek_mmc_defconfig b/configs/sama5d27_wlsom1_ek_mmc_defconfig
> index 78a6ba6f48ca..6ea16c679948 100644
> --- a/configs/sama5d27_wlsom1_ek_mmc_defconfig
> +++ b/configs/sama5d27_wlsom1_ek_mmc_defconfig
> @@ -36,6 +36,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
>  CONFIG_MISC_INIT_R=y
>  CONFIG_SPL_MAX_SIZE=0x10000
>  CONFIG_SPL_BSS_MAX_SIZE=0x80000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x218000
>  CONFIG_SPL_DISPLAY_PRINT=y
>  # CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR is not set
>  CONFIG_SPL_AT91_MCK_BYPASS=y
> diff --git a/configs/sama5d27_wlsom1_ek_qspiflash_defconfig b/configs/sama5d27_wlsom1_ek_qspiflash_defconfig
> index b3490e940c13..394a7ab64fb1 100644
> --- a/configs/sama5d27_wlsom1_ek_qspiflash_defconfig
> +++ b/configs/sama5d27_wlsom1_ek_qspiflash_defconfig
> @@ -36,6 +36,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
>  CONFIG_MISC_INIT_R=y
>  CONFIG_SPL_MAX_SIZE=0x10000
>  CONFIG_SPL_BSS_MAX_SIZE=0x80000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x218000
>  CONFIG_SPL_DISPLAY_PRINT=y
>  # CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR is not set
>  CONFIG_SPL_DM_SPI_FLASH=y
> diff --git a/configs/sama5d2_icp_mmc_defconfig b/configs/sama5d2_icp_mmc_defconfig
> index 9a44370efc72..3772626e4b91 100644
> --- a/configs/sama5d2_icp_mmc_defconfig
> +++ b/configs/sama5d2_icp_mmc_defconfig
> @@ -35,6 +35,8 @@ CONFIG_BOOTCOMMAND="fatload mmc 0:1 0x21000000 at91-sama5d2_icp.dtb; fatload mmc
>  CONFIG_MISC_INIT_R=y
>  CONFIG_SPL_MAX_SIZE=0x10000
>  CONFIG_SPL_BSS_MAX_SIZE=0x80000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x218000
>  CONFIG_SPL_DISPLAY_PRINT=y
>  # CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR is not set
>  CONFIG_SPL_RAM_SUPPORT=y
> diff --git a/configs/sama5d2_xplained_emmc_defconfig b/configs/sama5d2_xplained_emmc_defconfig
> index 3865c66f9d23..f80fca265ee9 100644
> --- a/configs/sama5d2_xplained_emmc_defconfig
> +++ b/configs/sama5d2_xplained_emmc_defconfig
> @@ -35,6 +35,8 @@ CONFIG_BOOTCOMMAND="fatload mmc 0:1 0x22000000 at91-sama5d2_xplained.dtb; fatloa
>  # CONFIG_DISPLAY_BOARDINFO is not set
>  CONFIG_SPL_MAX_SIZE=0x10000
>  CONFIG_SPL_BSS_MAX_SIZE=0x80000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x218000
>  CONFIG_HUSH_PARSER=y
>  CONFIG_SYS_CBSIZE=256
>  CONFIG_SYS_PBSIZE=276
> diff --git a/configs/sama5d2_xplained_mmc_defconfig b/configs/sama5d2_xplained_mmc_defconfig
> index 10e28fadc6ec..f4a7f2c6a8d2 100644
> --- a/configs/sama5d2_xplained_mmc_defconfig
> +++ b/configs/sama5d2_xplained_mmc_defconfig
> @@ -37,6 +37,8 @@ CONFIG_BOOTCOMMAND="fatload mmc 1:1 0x22000000 at91-sama5d2_xplained.dtb; fatloa
>  CONFIG_MISC_INIT_R=y
>  CONFIG_SPL_MAX_SIZE=0x10000
>  CONFIG_SPL_BSS_MAX_SIZE=0x80000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x218000
>  CONFIG_HUSH_PARSER=y
>  CONFIG_SYS_CBSIZE=256
>  CONFIG_SYS_PBSIZE=276
> diff --git a/configs/sama5d2_xplained_qspiflash_defconfig b/configs/sama5d2_xplained_qspiflash_defconfig
> index 7e92c29e87dd..bd13e926611d 100644
> --- a/configs/sama5d2_xplained_qspiflash_defconfig
> +++ b/configs/sama5d2_xplained_qspiflash_defconfig
> @@ -38,6 +38,8 @@ CONFIG_BOOTCOMMAND="sf probe 1:0; sf read 0x22000000 0x180000 0x80000; sf read 0
>  CONFIG_MISC_INIT_R=y
>  CONFIG_SPL_MAX_SIZE=0x10000
>  CONFIG_SPL_BSS_MAX_SIZE=0x80000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x218000
>  CONFIG_HUSH_PARSER=y
>  CONFIG_SYS_CBSIZE=256
>  CONFIG_SYS_PBSIZE=276
> diff --git a/configs/sama5d2_xplained_spiflash_defconfig b/configs/sama5d2_xplained_spiflash_defconfig
> index 6a81c728e71b..32e2ea213dcb 100644
> --- a/configs/sama5d2_xplained_spiflash_defconfig
> +++ b/configs/sama5d2_xplained_spiflash_defconfig
> @@ -39,6 +39,8 @@ CONFIG_BOOTCOMMAND="ext4load mmc 0:1 0x22000000 /boot/at91-sama5d2_xplained.dtb;
>  CONFIG_MISC_INIT_R=y
>  CONFIG_SPL_MAX_SIZE=0x10000
>  CONFIG_SPL_BSS_MAX_SIZE=0x80000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x218000
>  CONFIG_SPL_DM_SPI_FLASH=y
>  CONFIG_SPL_SPI_LOAD=y
>  CONFIG_SYS_SPI_U_BOOT_OFFS=0x10000
> diff --git a/configs/sama5d3_xplained_mmc_defconfig b/configs/sama5d3_xplained_mmc_defconfig
> index 4f4860e89846..3ed976053a3e 100644
> --- a/configs/sama5d3_xplained_mmc_defconfig
> +++ b/configs/sama5d3_xplained_mmc_defconfig
> @@ -36,6 +36,8 @@ CONFIG_BOOTCOMMAND="if test ! -n ${dtb_name}; then setenv dtb_name at91-${board_
>  # CONFIG_DISPLAY_BOARDINFO is not set
>  CONFIG_SPL_MAX_SIZE=0x18000
>  CONFIG_SPL_BSS_MAX_SIZE=0x80000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x318000
>  CONFIG_HUSH_PARSER=y
>  CONFIG_SYS_CBSIZE=256
>  CONFIG_SYS_PBSIZE=276
> diff --git a/configs/sama5d3_xplained_nandflash_defconfig b/configs/sama5d3_xplained_nandflash_defconfig
> index 66381750ce99..6e9ba1b490d7 100644
> --- a/configs/sama5d3_xplained_nandflash_defconfig
> +++ b/configs/sama5d3_xplained_nandflash_defconfig
> @@ -33,6 +33,8 @@ CONFIG_BOOTCOMMAND="nand read 0x21000000 0x180000 0x80000;nand read 0x22000000 0
>  # CONFIG_DISPLAY_BOARDINFO is not set
>  CONFIG_SPL_MAX_SIZE=0x18000
>  CONFIG_SPL_BSS_MAX_SIZE=0x80000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x318000
>  CONFIG_SPL_NAND_SUPPORT=y
>  CONFIG_SPL_NAND_DRIVERS=y
>  CONFIG_SPL_NAND_BASE=y
> diff --git a/configs/sama5d3xek_mmc_defconfig b/configs/sama5d3xek_mmc_defconfig
> index 741ab76b3f1f..4c7a79496829 100644
> --- a/configs/sama5d3xek_mmc_defconfig
> +++ b/configs/sama5d3xek_mmc_defconfig
> @@ -38,6 +38,8 @@ CONFIG_SYS_CONSOLE_IS_IN_ENV=y
>  # CONFIG_DISPLAY_BOARDINFO is not set
>  CONFIG_SPL_MAX_SIZE=0x18000
>  CONFIG_SPL_BSS_MAX_SIZE=0x80000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x318000
>  CONFIG_HUSH_PARSER=y
>  CONFIG_SYS_CBSIZE=256
>  CONFIG_SYS_PBSIZE=276
> diff --git a/configs/sama5d3xek_nandflash_defconfig b/configs/sama5d3xek_nandflash_defconfig
> index 751f1f5904ae..6d6a12c6179f 100644
> --- a/configs/sama5d3xek_nandflash_defconfig
> +++ b/configs/sama5d3xek_nandflash_defconfig
> @@ -35,6 +35,8 @@ CONFIG_SYS_CONSOLE_IS_IN_ENV=y
>  # CONFIG_DISPLAY_BOARDINFO is not set
>  CONFIG_SPL_MAX_SIZE=0x18000
>  CONFIG_SPL_BSS_MAX_SIZE=0x80000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x318000
>  CONFIG_SPL_NAND_SUPPORT=y
>  CONFIG_SPL_NAND_DRIVERS=y
>  CONFIG_SPL_NAND_BASE=y
> diff --git a/configs/sama5d3xek_spiflash_defconfig b/configs/sama5d3xek_spiflash_defconfig
> index 952f65ba5b53..ab681fdda9d7 100644
> --- a/configs/sama5d3xek_spiflash_defconfig
> +++ b/configs/sama5d3xek_spiflash_defconfig
> @@ -38,6 +38,8 @@ CONFIG_BOOTCOMMAND="sf probe 0; sf read 0x21000000 0x60000 0xc000; sf read 0x220
>  # CONFIG_DISPLAY_BOARDINFO is not set
>  CONFIG_SPL_MAX_SIZE=0x18000
>  CONFIG_SPL_BSS_MAX_SIZE=0x80000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x318000
>  CONFIG_SPL_DM_SPI_FLASH=y
>  CONFIG_SPL_SPI_LOAD=y
>  CONFIG_SYS_SPI_U_BOOT_OFFS=0x10000
> diff --git a/configs/sama5d4_xplained_mmc_defconfig b/configs/sama5d4_xplained_mmc_defconfig
> index a11d260057d2..d43e86a31fe0 100644
> --- a/configs/sama5d4_xplained_mmc_defconfig
> +++ b/configs/sama5d4_xplained_mmc_defconfig
> @@ -37,6 +37,8 @@ CONFIG_BOOTCOMMAND="if test ! -n ${dtb_name}; then setenv dtb_name at91-${board_
>  CONFIG_MISC_INIT_R=y
>  CONFIG_SPL_MAX_SIZE=0x18000
>  CONFIG_SPL_BSS_MAX_SIZE=0x80000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x218000
>  CONFIG_HUSH_PARSER=y
>  CONFIG_SYS_CBSIZE=256
>  CONFIG_SYS_PBSIZE=276
> diff --git a/configs/sama5d4_xplained_nandflash_defconfig b/configs/sama5d4_xplained_nandflash_defconfig
> index 715b59b4fb94..10cfb06f4339 100644
> --- a/configs/sama5d4_xplained_nandflash_defconfig
> +++ b/configs/sama5d4_xplained_nandflash_defconfig
> @@ -34,6 +34,8 @@ CONFIG_BOOTCOMMAND="nand read 0x21000000 0x180000 0x80000;nand read 0x22000000 0
>  CONFIG_MISC_INIT_R=y
>  CONFIG_SPL_MAX_SIZE=0x18000
>  CONFIG_SPL_BSS_MAX_SIZE=0x80000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x218000
>  CONFIG_SPL_NAND_SUPPORT=y
>  CONFIG_SPL_NAND_DRIVERS=y
>  CONFIG_SPL_NAND_BASE=y
> diff --git a/configs/sama5d4_xplained_spiflash_defconfig b/configs/sama5d4_xplained_spiflash_defconfig
> index e42b6f7cd9de..b41c6c7d06ed 100644
> --- a/configs/sama5d4_xplained_spiflash_defconfig
> +++ b/configs/sama5d4_xplained_spiflash_defconfig
> @@ -39,6 +39,8 @@ CONFIG_BOOTCOMMAND="sf probe 0; sf read 0x21000000 0x60000 0xc000; sf read 0x220
>  CONFIG_MISC_INIT_R=y
>  CONFIG_SPL_MAX_SIZE=0x18000
>  CONFIG_SPL_BSS_MAX_SIZE=0x80000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x218000
>  CONFIG_SPL_DM_SPI_FLASH=y
>  CONFIG_SPL_SPI_LOAD=y
>  CONFIG_SYS_SPI_U_BOOT_OFFS=0x10000
> diff --git a/configs/sama5d4ek_mmc_defconfig b/configs/sama5d4ek_mmc_defconfig
> index e0c10e0f2409..3d5eb6894841 100644
> --- a/configs/sama5d4ek_mmc_defconfig
> +++ b/configs/sama5d4ek_mmc_defconfig
> @@ -38,6 +38,8 @@ CONFIG_SYS_CONSOLE_IS_IN_ENV=y
>  # CONFIG_DISPLAY_BOARDINFO is not set
>  CONFIG_SPL_MAX_SIZE=0x18000
>  CONFIG_SPL_BSS_MAX_SIZE=0x80000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x218000
>  CONFIG_HUSH_PARSER=y
>  CONFIG_SYS_CBSIZE=256
>  CONFIG_SYS_PBSIZE=276
> diff --git a/configs/sama5d4ek_nandflash_defconfig b/configs/sama5d4ek_nandflash_defconfig
> index dc6c3c4c580d..8e5295aafe10 100644
> --- a/configs/sama5d4ek_nandflash_defconfig
> +++ b/configs/sama5d4ek_nandflash_defconfig
> @@ -35,6 +35,8 @@ CONFIG_SYS_CONSOLE_IS_IN_ENV=y
>  # CONFIG_DISPLAY_BOARDINFO is not set
>  CONFIG_SPL_MAX_SIZE=0x18000
>  CONFIG_SPL_BSS_MAX_SIZE=0x80000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x218000
>  CONFIG_SPL_NAND_SUPPORT=y
>  CONFIG_SPL_NAND_DRIVERS=y
>  CONFIG_SPL_NAND_BASE=y
> diff --git a/configs/sama5d4ek_spiflash_defconfig b/configs/sama5d4ek_spiflash_defconfig
> index b73a35c8a744..13708da1654a 100644
> --- a/configs/sama5d4ek_spiflash_defconfig
> +++ b/configs/sama5d4ek_spiflash_defconfig
> @@ -38,6 +38,8 @@ CONFIG_BOOTCOMMAND="sf probe 0; sf read 0x21000000 0x60000 0xc000; sf read 0x220
>  # CONFIG_DISPLAY_BOARDINFO is not set
>  CONFIG_SPL_MAX_SIZE=0x18000
>  CONFIG_SPL_BSS_MAX_SIZE=0x80000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x218000
>  CONFIG_SPL_DM_SPI_FLASH=y
>  CONFIG_SPL_SPI_LOAD=y
>  CONFIG_SYS_SPI_U_BOOT_OFFS=0x10000
> diff --git a/configs/seaboard_defconfig b/configs/seaboard_defconfig
> index fb67ce6e1558..ea97dcf57a40 100644
> --- a/configs/seaboard_defconfig
> +++ b/configs/seaboard_defconfig
> @@ -14,6 +14,8 @@ CONFIG_OF_SYSTEM_SETUP=y
>  CONFIG_USE_PREBOOT=y
>  CONFIG_SPL_FOOTPRINT_LIMIT=y
>  CONFIG_SPL_MAX_FOOTPRINT=0x8000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xffffc
>  CONFIG_SYS_PROMPT="Tegra20 (SeaBoard) # "
>  CONFIG_SYS_MAXARGS=64
>  CONFIG_SYS_PBSIZE=2086
> diff --git a/configs/seeed_npi_imx6ull_defconfig b/configs/seeed_npi_imx6ull_defconfig
> index 8fb5590c1ebd..860c98a4ad40 100644
> --- a/configs/seeed_npi_imx6ull_defconfig
> +++ b/configs/seeed_npi_imx6ull_defconfig
> @@ -20,6 +20,8 @@ CONFIG_DISTRO_DEFAULTS=y
>  CONFIG_FIT=y
>  CONFIG_BOOTDELAY=3
>  CONFIG_BOARD_EARLY_INIT_F=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x91ffb8
>  CONFIG_SPL_DMA=y
>  CONFIG_SPL_NAND_SUPPORT=y
>  CONFIG_SPL_USB_HOST=y
> diff --git a/configs/sifive_unleashed_defconfig b/configs/sifive_unleashed_defconfig
> index f49fd9fba52a..326bca72bb58 100644
> --- a/configs/sifive_unleashed_defconfig
> +++ b/configs/sifive_unleashed_defconfig
> @@ -25,6 +25,8 @@ CONFIG_DISPLAY_CPUINFO=y
>  CONFIG_DISPLAY_BOARDINFO=y
>  CONFIG_MISC_INIT_R=y
>  CONFIG_SPL_MAX_SIZE=0x100000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x81cfe70
>  CONFIG_SPL_DM_SPI_FLASH=y
>  CONFIG_SPL_DM_RESET=y
>  CONFIG_SPL_SPI_LOAD=y
> diff --git a/configs/sifive_unmatched_defconfig b/configs/sifive_unmatched_defconfig
> index af8cc68cf625..989029b586ea 100644
> --- a/configs/sifive_unmatched_defconfig
> +++ b/configs/sifive_unmatched_defconfig
> @@ -29,6 +29,8 @@ CONFIG_DISPLAY_BOARDINFO=y
>  CONFIG_DISPLAY_BOARDINFO_LATE=y
>  CONFIG_ID_EEPROM=y
>  CONFIG_SPL_MAX_SIZE=0x100000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x81cfe60
>  CONFIG_SPL_DM_SPI_FLASH=y
>  CONFIG_SPL_DM_RESET=y
>  CONFIG_SPL_SPI_LOAD=y
> diff --git a/configs/silinux_ek874_defconfig b/configs/silinux_ek874_defconfig
> index e728cb22269e..ce211a9a1aad 100644
> --- a/configs/silinux_ek874_defconfig
> +++ b/configs/silinux_ek874_defconfig
> @@ -25,6 +25,8 @@ CONFIG_DEFAULT_FDT_FILE="r8a774c0-ek874.dtb"
>  # CONFIG_BOARD_EARLY_INIT_F is not set
>  CONFIG_SYS_MALLOC_BOOTPARAMS=y
>  CONFIG_SPL_BSS_MAX_SIZE=0x1000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xe6304000
>  CONFIG_HUSH_PARSER=y
>  CONFIG_SYS_MAXARGS=64
>  CONFIG_SYS_PBSIZE=2068
> diff --git a/configs/silk_defconfig b/configs/silk_defconfig
> index 684e36f33d10..ac827ff2027a 100644
> --- a/configs/silk_defconfig
> +++ b/configs/silk_defconfig
> @@ -34,6 +34,8 @@ CONFIG_SPL_MAX_SIZE=0x4000
>  CONFIG_SPL_NO_BSS_LIMIT=y
>  CONFIG_SPL_BOARD_INIT=y
>  CONFIG_SPL_SYS_MALLOC_SIMPLE=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xe6340000
>  CONFIG_SPL_RAM_SUPPORT=y
>  CONFIG_SPL_RAM_DEVICE=y
>  CONFIG_SPL_SPI_LOAD=y
> diff --git a/configs/smartweb_defconfig b/configs/smartweb_defconfig
> index 8a11e7b12f41..95048f8c4b1c 100644
> --- a/configs/smartweb_defconfig
> +++ b/configs/smartweb_defconfig
> @@ -35,6 +35,8 @@ CONFIG_BOARD_EARLY_INIT_F=y
>  CONFIG_SPL_MAX_SIZE=0x1000
>  CONFIG_SPL_PAD_TO=0x20000
>  CONFIG_SPL_BSS_MAX_SIZE=0x4000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x301000
>  CONFIG_SPL_NAND_SUPPORT=y
>  CONFIG_SPL_NAND_RAW_ONLY=y
>  CONFIG_SPL_NAND_DRIVERS=y
> diff --git a/configs/sniper_defconfig b/configs/sniper_defconfig
> index 4dbe4f1964d1..2f77a39c3227 100644
> --- a/configs/sniper_defconfig
> +++ b/configs/sniper_defconfig
> @@ -14,6 +14,8 @@ CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0x4020ff00
>  CONFIG_BOOTCOMMAND="setenv boot_mmc_part ${kernel_mmc_part}; if test reboot-${reboot-mode} = reboot-r; then echo recovery; setenv boot_mmc_part ${recovery_mmc_part}; fi; if test reboot-${reboot-mode} = reboot-b; then echo fastboot; fastboot 0; fi; part start mmc ${boot_mmc_dev} ${boot_mmc_part} boot_mmc_start; part size mmc ${boot_mmc_dev} ${boot_mmc_part} boot_mmc_size; mmc dev ${boot_mmc_dev}; mmc read ${kernel_addr_r} ${boot_mmc_start} ${boot_mmc_size} && bootm ${kernel_addr_r};"
>  CONFIG_SYS_CONSOLE_IS_IN_ENV=y
>  CONFIG_SPL_MAX_SIZE=0xec00
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x4020fffc
>  # CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR is not set
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION=2
> diff --git a/configs/socfpga_agilex_atf_defconfig b/configs/socfpga_agilex_atf_defconfig
> index 10f3947b5db4..869305fefbe6 100644
> --- a/configs/socfpga_agilex_atf_defconfig
> +++ b/configs/socfpga_agilex_atf_defconfig
> @@ -29,6 +29,8 @@ CONFIG_USE_BOOTCOMMAND=y
>  CONFIG_BOOTCOMMAND="run fatscript; run mmcfitload; run mmcfitboot"
>  CONFIG_SPL_MAX_SIZE=0x40000
>  CONFIG_SPL_BSS_MAX_SIZE=0x100000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xffe3f000
>  CONFIG_SPL_CRC32=y
>  CONFIG_SPL_CACHE=y
>  CONFIG_SPL_SPI_LOAD=y
> diff --git a/configs/socfpga_agilex_defconfig b/configs/socfpga_agilex_defconfig
> index 23e1d7874353..11a4a544ac49 100644
> --- a/configs/socfpga_agilex_defconfig
> +++ b/configs/socfpga_agilex_defconfig
> @@ -26,6 +26,8 @@ CONFIG_USE_BOOTCOMMAND=y
>  CONFIG_BOOTCOMMAND="run fatscript; run mmcload; run linux_qspi_enable; run mmcboot"
>  CONFIG_SPL_MAX_SIZE=0x40000
>  CONFIG_SPL_BSS_MAX_SIZE=0x100000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xffe3f000
>  CONFIG_SPL_CACHE=y
>  CONFIG_SPL_SPI_LOAD=y
>  CONFIG_SYS_SPI_U_BOOT_OFFS=0x3c00000
> diff --git a/configs/socfpga_agilex_vab_defconfig b/configs/socfpga_agilex_vab_defconfig
> index c775ecbdcca9..85ec9094a53b 100644
> --- a/configs/socfpga_agilex_vab_defconfig
> +++ b/configs/socfpga_agilex_vab_defconfig
> @@ -30,6 +30,8 @@ CONFIG_USE_BOOTCOMMAND=y
>  CONFIG_BOOTCOMMAND="run fatscript; run mmcfitload; run mmcfitboot"
>  CONFIG_SPL_MAX_SIZE=0x40000
>  CONFIG_SPL_BSS_MAX_SIZE=0x100000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xffe3f000
>  CONFIG_SPL_CRC32=y
>  CONFIG_SPL_CACHE=y
>  CONFIG_SPL_SPI_LOAD=y
> diff --git a/configs/socfpga_arria10_defconfig b/configs/socfpga_arria10_defconfig
> index d326a3fb82db..8b8d7e4968eb 100644
> --- a/configs/socfpga_arria10_defconfig
> +++ b/configs/socfpga_arria10_defconfig
> @@ -28,6 +28,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
>  CONFIG_CLOCKS=y
>  CONFIG_SPL_PAD_TO=0x40000
>  CONFIG_SPL_NO_BSS_LIMIT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xffe2b000
>  CONFIG_SPL_ENV_SUPPORT=y
>  CONFIG_SPL_FPGA=y
>  CONFIG_SYS_MAXARGS=32
> diff --git a/configs/socfpga_arria5_defconfig b/configs/socfpga_arria5_defconfig
> index 62913f6702e4..24c21090b196 100644
> --- a/configs/socfpga_arria5_defconfig
> +++ b/configs/socfpga_arria5_defconfig
> @@ -22,6 +22,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
>  CONFIG_CLOCKS=y
>  CONFIG_SPL_PAD_TO=0x10000
>  CONFIG_SPL_NO_BSS_LIMIT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x0
>  CONFIG_SPL_SPI_LOAD=y
>  CONFIG_SYS_SPI_U_BOOT_OFFS=0x40000
>  CONFIG_SYS_MAXARGS=32
> diff --git a/configs/socfpga_cyclone5_defconfig b/configs/socfpga_cyclone5_defconfig
> index 7809b57ab7c0..d010b54240dd 100644
> --- a/configs/socfpga_cyclone5_defconfig
> +++ b/configs/socfpga_cyclone5_defconfig
> @@ -22,6 +22,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
>  CONFIG_CLOCKS=y
>  CONFIG_SPL_PAD_TO=0x10000
>  CONFIG_SPL_NO_BSS_LIMIT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x0
>  CONFIG_SPL_SPI_LOAD=y
>  CONFIG_SYS_SPI_U_BOOT_OFFS=0x40000
>  CONFIG_SYS_MAXARGS=32
> diff --git a/configs/socfpga_dbm_soc1_defconfig b/configs/socfpga_dbm_soc1_defconfig
> index d6b2e6639896..a1574b6a5d7c 100644
> --- a/configs/socfpga_dbm_soc1_defconfig
> +++ b/configs/socfpga_dbm_soc1_defconfig
> @@ -25,6 +25,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
>  CONFIG_CLOCKS=y
>  CONFIG_SPL_PAD_TO=0x10000
>  CONFIG_SPL_NO_BSS_LIMIT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x0
>  CONFIG_SPL_SPI_LOAD=y
>  CONFIG_SYS_SPI_U_BOOT_OFFS=0x40000
>  CONFIG_HUSH_PARSER=y
> diff --git a/configs/socfpga_de0_nano_soc_defconfig b/configs/socfpga_de0_nano_soc_defconfig
> index 036fdcc19af9..ec7355d2cc43 100644
> --- a/configs/socfpga_de0_nano_soc_defconfig
> +++ b/configs/socfpga_de0_nano_soc_defconfig
> @@ -23,6 +23,8 @@ CONFIG_CLOCKS=y
>  CONFIG_SPL_PAD_TO=0x10000
>  CONFIG_SPL_NO_BSS_LIMIT=y
>  # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x0
>  CONFIG_SPL_SPI_LOAD=y
>  CONFIG_SYS_SPI_U_BOOT_OFFS=0x40000
>  CONFIG_SYS_MAXARGS=32
> diff --git a/configs/socfpga_de10_nano_defconfig b/configs/socfpga_de10_nano_defconfig
> index 71c9eaba7a3e..b62f02996287 100644
> --- a/configs/socfpga_de10_nano_defconfig
> +++ b/configs/socfpga_de10_nano_defconfig
> @@ -22,6 +22,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
>  CONFIG_CLOCKS=y
>  CONFIG_SPL_PAD_TO=0x10000
>  CONFIG_SPL_NO_BSS_LIMIT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x0
>  CONFIG_SPL_SPI_LOAD=y
>  CONFIG_SYS_SPI_U_BOOT_OFFS=0x40000
>  CONFIG_SYS_MAXARGS=32
> diff --git a/configs/socfpga_de1_soc_defconfig b/configs/socfpga_de1_soc_defconfig
> index b800f2762d87..749ec540b4fd 100644
> --- a/configs/socfpga_de1_soc_defconfig
> +++ b/configs/socfpga_de1_soc_defconfig
> @@ -23,6 +23,8 @@ CONFIG_CLOCKS=y
>  CONFIG_SPL_PAD_TO=0x10000
>  CONFIG_SPL_NO_BSS_LIMIT=y
>  # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x0
>  CONFIG_SPL_YMODEM_SUPPORT=y
>  CONFIG_SYS_MAXARGS=32
>  CONFIG_CMD_ASKENV=y
> diff --git a/configs/socfpga_is1_defconfig b/configs/socfpga_is1_defconfig
> index c9a8650c91ab..c3b6368f6171 100644
> --- a/configs/socfpga_is1_defconfig
> +++ b/configs/socfpga_is1_defconfig
> @@ -25,6 +25,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
>  CONFIG_CLOCKS=y
>  CONFIG_SPL_PAD_TO=0x10000
>  CONFIG_SPL_NO_BSS_LIMIT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xfffffff8
>  CONFIG_SPL_SPI_LOAD=y
>  CONFIG_SYS_SPI_U_BOOT_OFFS=0x40000
>  CONFIG_SYS_MAXARGS=32
> diff --git a/configs/socfpga_mcvevk_defconfig b/configs/socfpga_mcvevk_defconfig
> index 4f703cf3d0ba..18e125f5bdf9 100644
> --- a/configs/socfpga_mcvevk_defconfig
> +++ b/configs/socfpga_mcvevk_defconfig
> @@ -23,6 +23,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
>  CONFIG_CLOCKS=y
>  CONFIG_SPL_PAD_TO=0x10000
>  CONFIG_SPL_NO_BSS_LIMIT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x0
>  CONFIG_SPL_SPI_LOAD=y
>  CONFIG_SYS_SPI_U_BOOT_OFFS=0x40000
>  CONFIG_SYS_MAXARGS=32
> diff --git a/configs/socfpga_n5x_atf_defconfig b/configs/socfpga_n5x_atf_defconfig
> index 7c7f90146d68..88763d1e5ab1 100644
> --- a/configs/socfpga_n5x_atf_defconfig
> +++ b/configs/socfpga_n5x_atf_defconfig
> @@ -28,6 +28,8 @@ CONFIG_USE_BOOTCOMMAND=y
>  CONFIG_BOOTCOMMAND="run fatscript; run mmcfitload; run mmcfitboot"
>  CONFIG_SPL_MAX_SIZE=0x40000
>  CONFIG_SPL_BSS_MAX_SIZE=0x100000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xffe3f000
>  CONFIG_SPL_CRC32=y
>  CONFIG_SPL_CACHE=y
>  CONFIG_SPL_SPI_LOAD=y
> diff --git a/configs/socfpga_n5x_defconfig b/configs/socfpga_n5x_defconfig
> index 8f851e80e29f..a07a338f108d 100644
> --- a/configs/socfpga_n5x_defconfig
> +++ b/configs/socfpga_n5x_defconfig
> @@ -23,6 +23,8 @@ CONFIG_USE_BOOTCOMMAND=y
>  CONFIG_BOOTCOMMAND="run fatscript; run mmcload; run linux_qspi_enable; run mmcboot"
>  CONFIG_SPL_MAX_SIZE=0x40000
>  CONFIG_SPL_BSS_MAX_SIZE=0x100000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xffe3f000
>  CONFIG_SPL_CACHE=y
>  CONFIG_SPL_SPI_LOAD=y
>  CONFIG_SYS_SPI_U_BOOT_OFFS=0x3c00000
> diff --git a/configs/socfpga_n5x_vab_defconfig b/configs/socfpga_n5x_vab_defconfig
> index 82a4f980b899..8efdab84e149 100644
> --- a/configs/socfpga_n5x_vab_defconfig
> +++ b/configs/socfpga_n5x_vab_defconfig
> @@ -29,6 +29,8 @@ CONFIG_USE_BOOTCOMMAND=y
>  CONFIG_BOOTCOMMAND="run fatscript; run mmcfitload; run mmcfitboot"
>  CONFIG_SPL_MAX_SIZE=0x40000
>  CONFIG_SPL_BSS_MAX_SIZE=0x100000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xffe3f000
>  CONFIG_SPL_CRC32=y
>  CONFIG_SPL_CACHE=y
>  CONFIG_SPL_SPI_LOAD=y
> diff --git a/configs/socfpga_secu1_defconfig b/configs/socfpga_secu1_defconfig
> index d59e841f7611..72cf0d1bc88b 100644
> --- a/configs/socfpga_secu1_defconfig
> +++ b/configs/socfpga_secu1_defconfig
> @@ -36,6 +36,8 @@ CONFIG_MISC_INIT_R=y
>  CONFIG_SPL_PAD_TO=0x10000
>  CONFIG_SPL_NO_BSS_LIMIT=y
>  CONFIG_SPL_LEGACY_IMAGE_CRC_CHECK=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x0
>  # CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR is not set
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION=0x1
>  # CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION_TYPE is not set
> diff --git a/configs/socfpga_sockit_defconfig b/configs/socfpga_sockit_defconfig
> index 999e696aa7a7..2a02f1dbfaa6 100644
> --- a/configs/socfpga_sockit_defconfig
> +++ b/configs/socfpga_sockit_defconfig
> @@ -22,6 +22,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
>  CONFIG_CLOCKS=y
>  CONFIG_SPL_PAD_TO=0x10000
>  CONFIG_SPL_NO_BSS_LIMIT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x0
>  CONFIG_SPL_SPI_LOAD=y
>  CONFIG_SYS_SPI_U_BOOT_OFFS=0x40000
>  CONFIG_SYS_MAXARGS=32
> diff --git a/configs/socfpga_socrates_defconfig b/configs/socfpga_socrates_defconfig
> index 82549a80af54..3d0c48d76623 100644
> --- a/configs/socfpga_socrates_defconfig
> +++ b/configs/socfpga_socrates_defconfig
> @@ -21,6 +21,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
>  CONFIG_CLOCKS=y
>  CONFIG_SPL_PAD_TO=0x10000
>  CONFIG_SPL_NO_BSS_LIMIT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x0
>  CONFIG_SPL_SPI_LOAD=y
>  CONFIG_SYS_SPI_U_BOOT_OFFS=0x40000
>  CONFIG_SYS_MAXARGS=32
> diff --git a/configs/socfpga_sr1500_defconfig b/configs/socfpga_sr1500_defconfig
> index cbb751e5a20b..53d6b82972f9 100644
> --- a/configs/socfpga_sr1500_defconfig
> +++ b/configs/socfpga_sr1500_defconfig
> @@ -29,6 +29,8 @@ CONFIG_BOARD_EARLY_INIT_F=y
>  CONFIG_CLOCKS=y
>  CONFIG_SPL_PAD_TO=0x10000
>  CONFIG_SPL_NO_BSS_LIMIT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xfffffff8
>  CONFIG_SPL_SPI_LOAD=y
>  CONFIG_SYS_SPI_U_BOOT_OFFS=0x40000
>  CONFIG_SYS_MAXARGS=32
> diff --git a/configs/socfpga_stratix10_atf_defconfig b/configs/socfpga_stratix10_atf_defconfig
> index 52f99dad7548..9969ac00be3a 100644
> --- a/configs/socfpga_stratix10_atf_defconfig
> +++ b/configs/socfpga_stratix10_atf_defconfig
> @@ -29,6 +29,8 @@ CONFIG_USE_BOOTCOMMAND=y
>  CONFIG_BOOTCOMMAND="run fatscript; run mmcfitload; run mmcfitboot"
>  CONFIG_SPL_MAX_SIZE=0x40000
>  CONFIG_SPL_BSS_MAX_SIZE=0x100000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xffe3f000
>  CONFIG_SPL_CRC32=y
>  CONFIG_SPL_SPI_LOAD=y
>  CONFIG_SYS_SPI_U_BOOT_OFFS=0x02000000
> diff --git a/configs/socfpga_stratix10_defconfig b/configs/socfpga_stratix10_defconfig
> index 23050c7f663c..a90e404b4407 100644
> --- a/configs/socfpga_stratix10_defconfig
> +++ b/configs/socfpga_stratix10_defconfig
> @@ -28,6 +28,8 @@ CONFIG_USE_BOOTCOMMAND=y
>  CONFIG_BOOTCOMMAND="run fatscript; run mmcload; run linux_qspi_enable; run mmcboot"
>  CONFIG_SPL_MAX_SIZE=0x40000
>  CONFIG_SPL_BSS_MAX_SIZE=0x100000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xffe3f000
>  CONFIG_SPL_SPI_LOAD=y
>  CONFIG_SYS_SPI_U_BOOT_OFFS=0x3C00000
>  CONFIG_HUSH_PARSER=y
> diff --git a/configs/socfpga_vining_fpga_defconfig b/configs/socfpga_vining_fpga_defconfig
> index 37aae07fd645..0f4aa9051477 100644
> --- a/configs/socfpga_vining_fpga_defconfig
> +++ b/configs/socfpga_vining_fpga_defconfig
> @@ -29,6 +29,8 @@ CONFIG_CLOCKS=y
>  CONFIG_MISC_INIT_R=y
>  CONFIG_SPL_PAD_TO=0x10000
>  CONFIG_SPL_NO_BSS_LIMIT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x0
>  CONFIG_SPL_SPI_LOAD=y
>  CONFIG_SYS_SPI_U_BOOT_OFFS=0x40000
>  CONFIG_CMDLINE_PS_SUPPORT=y
> diff --git a/configs/sopine_baseboard_defconfig b/configs/sopine_baseboard_defconfig
> index f2220465f39b..576e86493a24 100644
> --- a/configs/sopine_baseboard_defconfig
> +++ b/configs/sopine_baseboard_defconfig
> @@ -11,6 +11,7 @@ CONFIG_MMC0_CD_PIN=""
>  CONFIG_MMC_SUNXI_SLOT_EXTRA=2
>  CONFIG_SPL_SPI_SUNXI=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x54000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SUPPORT_EMMC_BOOT=y
>  CONFIG_SPI_FLASH_WINBOND=y
> diff --git a/configs/stm32mp15-icore-stm32mp1-ctouch2_defconfig b/configs/stm32mp15-icore-stm32mp1-ctouch2_defconfig
> index 5c131252a5de..fe722ce507bf 100644
> --- a/configs/stm32mp15-icore-stm32mp1-ctouch2_defconfig
> +++ b/configs/stm32mp15-icore-stm32mp1-ctouch2_defconfig
> @@ -19,6 +19,8 @@ CONFIG_FIT=y
>  CONFIG_BOOTCOMMAND="run bootcmd_stm32mp"
>  CONFIG_SPL_FOOTPRINT_LIMIT=y
>  CONFIG_SPL_MAX_FOOTPRINT=0x3db00
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x30000000
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION=3
>  CONFIG_SPL_ENV_SUPPORT=y
> diff --git a/configs/stm32mp15-icore-stm32mp1-edimm2.2_defconfig b/configs/stm32mp15-icore-stm32mp1-edimm2.2_defconfig
> index 688c9344d177..f47bc1b23411 100644
> --- a/configs/stm32mp15-icore-stm32mp1-edimm2.2_defconfig
> +++ b/configs/stm32mp15-icore-stm32mp1-edimm2.2_defconfig
> @@ -19,6 +19,8 @@ CONFIG_FIT=y
>  CONFIG_BOOTCOMMAND="run bootcmd_stm32mp"
>  CONFIG_SPL_FOOTPRINT_LIMIT=y
>  CONFIG_SPL_MAX_FOOTPRINT=0x3db00
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x30000000
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION=3
>  CONFIG_SPL_ENV_SUPPORT=y
> diff --git a/configs/stm32mp15-microgea-stm32mp1-microdev2-of7_defconfig b/configs/stm32mp15-microgea-stm32mp1-microdev2-of7_defconfig
> index f6d67f3cc822..9ddd585ecf0c 100644
> --- a/configs/stm32mp15-microgea-stm32mp1-microdev2-of7_defconfig
> +++ b/configs/stm32mp15-microgea-stm32mp1-microdev2-of7_defconfig
> @@ -19,6 +19,8 @@ CONFIG_FIT=y
>  CONFIG_BOOTCOMMAND="run bootcmd_stm32mp"
>  CONFIG_SPL_FOOTPRINT_LIMIT=y
>  CONFIG_SPL_MAX_FOOTPRINT=0x3db00
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x30000000
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION=3
>  CONFIG_SPL_ENV_SUPPORT=y
> diff --git a/configs/stm32mp15-microgea-stm32mp1-microdev2_defconfig b/configs/stm32mp15-microgea-stm32mp1-microdev2_defconfig
> index 39c2f295701b..86d55478f5aa 100644
> --- a/configs/stm32mp15-microgea-stm32mp1-microdev2_defconfig
> +++ b/configs/stm32mp15-microgea-stm32mp1-microdev2_defconfig
> @@ -19,6 +19,8 @@ CONFIG_FIT=y
>  CONFIG_BOOTCOMMAND="run bootcmd_stm32mp"
>  CONFIG_SPL_FOOTPRINT_LIMIT=y
>  CONFIG_SPL_MAX_FOOTPRINT=0x3db00
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x30000000
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION=3
>  CONFIG_SPL_ENV_SUPPORT=y
> diff --git a/configs/stm32mp15_basic_defconfig b/configs/stm32mp15_basic_defconfig
> index b607c7256e51..be49a8e77127 100644
> --- a/configs/stm32mp15_basic_defconfig
> +++ b/configs/stm32mp15_basic_defconfig
> @@ -29,6 +29,8 @@ CONFIG_SPL_LOG=y
>  CONFIG_BOARD_EARLY_INIT_F=y
>  CONFIG_SPL_FOOTPRINT_LIMIT=y
>  CONFIG_SPL_MAX_FOOTPRINT=0x3db00
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x30000000
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION=3
>  CONFIG_SPL_ENV_SUPPORT=y
> diff --git a/configs/stm32mp15_dhcom_basic_defconfig b/configs/stm32mp15_dhcom_basic_defconfig
> index 16dcc4ad56f7..fa3cff00cea2 100644
> --- a/configs/stm32mp15_dhcom_basic_defconfig
> +++ b/configs/stm32mp15_dhcom_basic_defconfig
> @@ -30,6 +30,8 @@ CONFIG_BOARD_EARLY_INIT_F=y
>  CONFIG_SPL_FOOTPRINT_LIMIT=y
>  CONFIG_SPL_MAX_FOOTPRINT=0x3db00
>  CONFIG_SPL_LEGACY_IMAGE_FORMAT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x30000000
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION=3
>  CONFIG_SPL_ENV_SUPPORT=y
> diff --git a/configs/stm32mp15_dhcor_basic_defconfig b/configs/stm32mp15_dhcor_basic_defconfig
> index 9a7266229be7..9f32d2c4e815 100644
> --- a/configs/stm32mp15_dhcor_basic_defconfig
> +++ b/configs/stm32mp15_dhcor_basic_defconfig
> @@ -28,6 +28,8 @@ CONFIG_BOARD_EARLY_INIT_F=y
>  CONFIG_SPL_FOOTPRINT_LIMIT=y
>  CONFIG_SPL_MAX_FOOTPRINT=0x3db00
>  CONFIG_SPL_LEGACY_IMAGE_FORMAT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x30000000
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION=3
>  CONFIG_SPL_ENV_SUPPORT=y
> diff --git a/configs/stout_defconfig b/configs/stout_defconfig
> index 9ef96bafc99b..4f0cda9c897a 100644
> --- a/configs/stout_defconfig
> +++ b/configs/stout_defconfig
> @@ -34,6 +34,8 @@ CONFIG_SPL_MAX_SIZE=0x4000
>  CONFIG_SPL_NO_BSS_LIMIT=y
>  CONFIG_SPL_BOARD_INIT=y
>  CONFIG_SPL_SYS_MALLOC_SIMPLE=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xe6340000
>  CONFIG_SPL_RAM_SUPPORT=y
>  CONFIG_SPL_RAM_DEVICE=y
>  CONFIG_SPL_SPI_LOAD=y
> diff --git a/configs/sun8i_a23_evb_defconfig b/configs/sun8i_a23_evb_defconfig
> index 21ea2ba66ef9..59315cdb05d5 100644
> --- a/configs/sun8i_a23_evb_defconfig
> +++ b/configs/sun8i_a23_evb_defconfig
> @@ -9,6 +9,7 @@ CONFIG_USB0_VBUS_PIN="axp_drivebus"
>  CONFIG_USB0_VBUS_DET="axp_vbus_detect"
>  CONFIG_USB1_VBUS_PIN="PH7"
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_CONS_INDEX=5
>  CONFIG_USB_EHCI_HCD=y
> diff --git a/configs/sunxi_Gemei_G9_defconfig b/configs/sunxi_Gemei_G9_defconfig
> index 8b8a880d45ec..b77c4e7a3cb0 100644
> --- a/configs/sunxi_Gemei_G9_defconfig
> +++ b/configs/sunxi_Gemei_G9_defconfig
> @@ -11,6 +11,7 @@ CONFIG_VIDEO_LCD_BL_EN="PH7"
>  CONFIG_VIDEO_LCD_BL_PWM="PB2"
>  CONFIG_VIDEO_LCD_PANEL_LVDS=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SYS_I2C_MVTWSI=y
> diff --git a/configs/syzygy_hub_defconfig b/configs/syzygy_hub_defconfig
> index a9dc04cdfb97..d9e61aee3df8 100644
> --- a/configs/syzygy_hub_defconfig
> +++ b/configs/syzygy_hub_defconfig
> @@ -27,6 +27,8 @@ CONFIG_USE_PREBOOT=y
>  CONFIG_CLOCKS=y
>  CONFIG_SPL_MAX_SIZE=0x30000
>  CONFIG_SPL_BSS_MAX_SIZE=0x100000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xfffffe00
>  CONFIG_SPL_STACK_R=y
>  CONFIG_SPL_FS_LOAD_ARGS_NAME="system.dtb"
>  CONFIG_SPL_OS_BOOT=y
> diff --git a/configs/tanix_tx6_defconfig b/configs/tanix_tx6_defconfig
> index cf34b508a732..d1f12fba9bb0 100644
> --- a/configs/tanix_tx6_defconfig
> +++ b/configs/tanix_tx6_defconfig
> @@ -8,4 +8,5 @@ CONFIG_DRAM_CLK=648
>  CONFIG_MMC0_CD_PIN="PF6"
>  CONFIG_MMC_SUNXI_SLOT_EXTRA=2
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x118000
>  CONFIG_SYS_PBSIZE=1024
> diff --git a/configs/taurus_defconfig b/configs/taurus_defconfig
> index 79ceebe2db00..471feed3dfb5 100644
> --- a/configs/taurus_defconfig
> +++ b/configs/taurus_defconfig
> @@ -44,6 +44,8 @@ CONFIG_SPL_PAD_TO=0x20000
>  CONFIG_SPL_BSS_MAX_SIZE=0x600
>  # CONFIG_SPL_LEGACY_IMAGE_FORMAT is not set
>  CONFIG_SPL_SYS_MALLOC_SIMPLE=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x304000
>  CONFIG_SPL_CRC32=y
>  CONFIG_SPL_NAND_SUPPORT=y
>  CONFIG_SPL_NAND_RAW_ONLY=y
> diff --git a/configs/tbs_a711_defconfig b/configs/tbs_a711_defconfig
> index a8a9b855cc36..3dd9252a7423 100644
> --- a/configs/tbs_a711_defconfig
> +++ b/configs/tbs_a711_defconfig
> @@ -13,6 +13,7 @@ CONFIG_USB0_VBUS_DET="AXP0-VBUS-DETECT"
>  CONFIG_USB0_ID_DET="PH11"
>  CONFIG_AXP_GPIO=y
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_FASTBOOT_CMD_OEM_FORMAT=y
>  CONFIG_AXP_DCDC5_VOLT=1200
> diff --git a/configs/tec-ng_defconfig b/configs/tec-ng_defconfig
> index e305b5bcb102..cb80b10aecf7 100644
> --- a/configs/tec-ng_defconfig
> +++ b/configs/tec-ng_defconfig
> @@ -16,6 +16,8 @@ CONFIG_CONSOLE_MUX=y
>  CONFIG_SYS_STDIO_DEREGISTER=y
>  CONFIG_SPL_FOOTPRINT_LIMIT=y
>  CONFIG_SPL_MAX_FOOTPRINT=0x8000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x800ffffc
>  CONFIG_SYS_PROMPT="Tegra30 (TEC-NG) # "
>  CONFIG_SYS_MAXARGS=64
>  CONFIG_SYS_PBSIZE=2084
> diff --git a/configs/tec_defconfig b/configs/tec_defconfig
> index 9c644e682200..80fbdda5d1c5 100644
> --- a/configs/tec_defconfig
> +++ b/configs/tec_defconfig
> @@ -15,6 +15,8 @@ CONFIG_OF_SYSTEM_SETUP=y
>  CONFIG_SYS_STDIO_DEREGISTER=y
>  CONFIG_SPL_FOOTPRINT_LIMIT=y
>  CONFIG_SPL_MAX_FOOTPRINT=0x8000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xffffc
>  CONFIG_SYS_PROMPT="Tegra20 (TEC) # "
>  CONFIG_SYS_MAXARGS=64
>  CONFIG_SYS_PBSIZE=2081
> diff --git a/configs/teres_i_defconfig b/configs/teres_i_defconfig
> index 12e91a58936a..cd6d825715e8 100644
> --- a/configs/teres_i_defconfig
> +++ b/configs/teres_i_defconfig
> @@ -9,6 +9,7 @@ CONFIG_MMC_SUNXI_SLOT_EXTRA=2
>  CONFIG_USB1_VBUS_PIN="PL7"
>  CONFIG_I2C0_ENABLE=y
>  CONFIG_PREBOOT="setenv usb_pgood_delay 2000; usb start"
> +CONFIG_SPL_STACK=0x54000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SPL_SYS_I2C_LEGACY=y
>  CONFIG_SYS_I2C_MVTWSI=y
> diff --git a/configs/theadorable_debug_defconfig b/configs/theadorable_debug_defconfig
> index b830d75dba6d..f858d732abd4 100644
> --- a/configs/theadorable_debug_defconfig
> +++ b/configs/theadorable_debug_defconfig
> @@ -32,6 +32,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
>  CONFIG_SPL_MAX_SIZE=0x1bfd0
>  CONFIG_SPL_BSS_MAX_SIZE=0x4000
>  CONFIG_SPL_SYS_MALLOC_SIMPLE=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x4002c000
>  CONFIG_SPL_I2C=y
>  CONFIG_HUSH_PARSER=y
>  CONFIG_SYS_MAXARGS=32
> diff --git a/configs/tinker-rk3288_defconfig b/configs/tinker-rk3288_defconfig
> index 32afbebc545a..ce12b79ac471 100644
> --- a/configs/tinker-rk3288_defconfig
> +++ b/configs/tinker-rk3288_defconfig
> @@ -25,6 +25,8 @@ CONFIG_SILENT_CONSOLE=y
>  CONFIG_DISPLAY_BOARDINFO_LATE=y
>  CONFIG_SPL_PAD_TO=0x7f8000
>  CONFIG_SPL_NO_BSS_LIMIT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xff718000
>  CONFIG_SPL_STACK_R=y
>  CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x2000
>  CONFIG_SPL_I2C=y
> diff --git a/configs/tinker-s-rk3288_defconfig b/configs/tinker-s-rk3288_defconfig
> index 072012e066be..8dede27efcc9 100644
> --- a/configs/tinker-s-rk3288_defconfig
> +++ b/configs/tinker-s-rk3288_defconfig
> @@ -25,6 +25,8 @@ CONFIG_SILENT_CONSOLE=y
>  CONFIG_DISPLAY_BOARDINFO_LATE=y
>  CONFIG_SPL_PAD_TO=0x7f8000
>  CONFIG_SPL_NO_BSS_LIMIT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xff718000
>  CONFIG_SPL_STACK_R=y
>  CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x300000
>  CONFIG_SPL_I2C=y
> diff --git a/configs/topic_miami_defconfig b/configs/topic_miami_defconfig
> index ed6ac3b7ae8c..11d6e450276d 100644
> --- a/configs/topic_miami_defconfig
> +++ b/configs/topic_miami_defconfig
> @@ -27,6 +27,8 @@ CONFIG_USE_PREBOOT=y
>  CONFIG_CLOCKS=y
>  CONFIG_SPL_MAX_SIZE=0x30000
>  CONFIG_SPL_BSS_MAX_SIZE=0x100000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xfffffe00
>  CONFIG_SPL_STACK_R=y
>  CONFIG_SPL_SPI_LOAD=y
>  CONFIG_SYS_SPI_U_BOOT_OFFS=0x20000
> diff --git a/configs/topic_miamilite_defconfig b/configs/topic_miamilite_defconfig
> index a80ee2243205..32dc5478dddd 100644
> --- a/configs/topic_miamilite_defconfig
> +++ b/configs/topic_miamilite_defconfig
> @@ -27,6 +27,8 @@ CONFIG_USE_PREBOOT=y
>  CONFIG_CLOCKS=y
>  CONFIG_SPL_MAX_SIZE=0x30000
>  CONFIG_SPL_BSS_MAX_SIZE=0x100000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xfffffe00
>  CONFIG_SPL_STACK_R=y
>  CONFIG_SPL_SPI_LOAD=y
>  CONFIG_SYS_SPI_U_BOOT_OFFS=0x20000
> diff --git a/configs/topic_miamiplus_defconfig b/configs/topic_miamiplus_defconfig
> index a402478f64c8..2de1e96bdf88 100644
> --- a/configs/topic_miamiplus_defconfig
> +++ b/configs/topic_miamiplus_defconfig
> @@ -27,6 +27,8 @@ CONFIG_USE_PREBOOT=y
>  CONFIG_CLOCKS=y
>  CONFIG_SPL_MAX_SIZE=0x30000
>  CONFIG_SPL_BSS_MAX_SIZE=0x100000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xfffffe00
>  CONFIG_SPL_STACK_R=y
>  CONFIG_SPL_SPI_LOAD=y
>  CONFIG_SYS_SPI_U_BOOT_OFFS=0x20000
> diff --git a/configs/trimslice_defconfig b/configs/trimslice_defconfig
> index 7d79ea3ec530..b9d465c0e575 100644
> --- a/configs/trimslice_defconfig
> +++ b/configs/trimslice_defconfig
> @@ -16,6 +16,8 @@ CONFIG_CONSOLE_MUX=y
>  CONFIG_SYS_STDIO_DEREGISTER=y
>  CONFIG_SPL_FOOTPRINT_LIMIT=y
>  CONFIG_SPL_MAX_FOOTPRINT=0x8000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xffffc
>  CONFIG_SYS_PROMPT="Tegra20 (TrimSlice) # "
>  CONFIG_SYS_MAXARGS=64
>  CONFIG_SYS_PBSIZE=2087
> diff --git a/configs/turris_omnia_defconfig b/configs/turris_omnia_defconfig
> index a5087581a4ed..c3ab35e9646c 100644
> --- a/configs/turris_omnia_defconfig
> +++ b/configs/turris_omnia_defconfig
> @@ -41,6 +41,8 @@ CONFIG_MISC_INIT_R=y
>  CONFIG_SPL_MAX_SIZE=0x22fd0
>  CONFIG_SPL_BSS_MAX_SIZE=0x4000
>  CONFIG_SPL_BOARD_INIT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x4002c000
>  CONFIG_SPL_ENV_SUPPORT=y
>  CONFIG_SPL_I2C=y
>  CONFIG_SYS_MAXARGS=32
> diff --git a/configs/udoo_defconfig b/configs/udoo_defconfig
> index e21945116c03..03875f9039d9 100644
> --- a/configs/udoo_defconfig
> +++ b/configs/udoo_defconfig
> @@ -22,6 +22,8 @@ CONFIG_DISTRO_DEFAULTS=y
>  CONFIG_BOOTDELAY=3
>  CONFIG_BOOTCOMMAND="run findfdt; run distro_bootcmd"
>  CONFIG_BOARD_EARLY_INIT_F=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x91ffb8
>  CONFIG_SPL_FS_EXT4=y
>  CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot-dtb.img"
>  CONFIG_SPL_I2C=y
> diff --git a/configs/udoo_neo_defconfig b/configs/udoo_neo_defconfig
> index fff11bb10e97..1b9b5a5b6270 100644
> --- a/configs/udoo_neo_defconfig
> +++ b/configs/udoo_neo_defconfig
> @@ -22,6 +22,8 @@ CONFIG_SPL_LIBDISK_SUPPORT=y
>  CONFIG_DISTRO_DEFAULTS=y
>  CONFIG_BOOTCOMMAND="run findfdt; run distro_bootcmd"
>  CONFIG_BOARD_EARLY_INIT_F=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x91ffb8
>  CONFIG_SPL_ENV_SUPPORT=y
>  CONFIG_SPL_FS_EXT4=y
>  CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot-dtb.img"
> diff --git a/configs/uniphier_ld4_sld8_defconfig b/configs/uniphier_ld4_sld8_defconfig
> index 10f00b53aae1..ceb50835f53c 100644
> --- a/configs/uniphier_ld4_sld8_defconfig
> +++ b/configs/uniphier_ld4_sld8_defconfig
> @@ -21,6 +21,8 @@ CONFIG_LOGLEVEL=6
>  CONFIG_SPL_MAX_SIZE=0x10000
>  CONFIG_SPL_PAD_TO=0x20000
>  CONFIG_SPL_BSS_MAX_SIZE=0x2000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x100000
>  CONFIG_SPL_NAND_SUPPORT=y
>  CONFIG_SPL_NOR_SUPPORT=y
>  CONFIG_CMD_CONFIG=y
> diff --git a/configs/uniphier_v7_defconfig b/configs/uniphier_v7_defconfig
> index 4a79b6563e86..a2ea3a98d09e 100644
> --- a/configs/uniphier_v7_defconfig
> +++ b/configs/uniphier_v7_defconfig
> @@ -21,6 +21,8 @@ CONFIG_LOGLEVEL=6
>  CONFIG_SPL_MAX_SIZE=0x10000
>  CONFIG_SPL_PAD_TO=0x20000
>  CONFIG_SPL_BSS_MAX_SIZE=0x2000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x100000
>  CONFIG_SPL_NAND_SUPPORT=y
>  CONFIG_SPL_NOR_SUPPORT=y
>  CONFIG_CMD_CONFIG=y
> diff --git a/configs/variscite_dart6ul_defconfig b/configs/variscite_dart6ul_defconfig
> index 7322b12bd17c..e100185743c0 100644
> --- a/configs/variscite_dart6ul_defconfig
> +++ b/configs/variscite_dart6ul_defconfig
> @@ -18,6 +18,8 @@ CONFIG_DISTRO_DEFAULTS=y
>  CONFIG_FIT=y
>  CONFIG_BOOTDELAY=3
>  CONFIG_BOOTCOMMAND="run mmc_mmc_fit"
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x91ffb8
>  CONFIG_SPL_USB_HOST=y
>  CONFIG_SPL_WATCHDOG=y
>  CONFIG_SYS_MAXARGS=32
> diff --git a/configs/venice2_defconfig b/configs/venice2_defconfig
> index 0ad69b3e678c..cb5fcfbb2362 100644
> --- a/configs/venice2_defconfig
> +++ b/configs/venice2_defconfig
> @@ -16,6 +16,8 @@ CONFIG_CONSOLE_MUX=y
>  CONFIG_SYS_STDIO_DEREGISTER=y
>  CONFIG_SPL_FOOTPRINT_LIMIT=y
>  CONFIG_SPL_MAX_FOOTPRINT=0x8000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x800ffffc
>  CONFIG_SYS_PROMPT="Tegra124 (Venice2) # "
>  CONFIG_SYS_MAXARGS=64
>  CONFIG_SYS_PBSIZE=2086
> diff --git a/configs/ventana_defconfig b/configs/ventana_defconfig
> index 0b1d0f728eeb..f3389b0f7bce 100644
> --- a/configs/ventana_defconfig
> +++ b/configs/ventana_defconfig
> @@ -14,6 +14,8 @@ CONFIG_OF_SYSTEM_SETUP=y
>  CONFIG_USE_PREBOOT=y
>  CONFIG_SPL_FOOTPRINT_LIMIT=y
>  CONFIG_SPL_MAX_FOOTPRINT=0x8000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xffffc
>  CONFIG_SYS_PROMPT="Tegra20 (Ventana) # "
>  CONFIG_SYS_MAXARGS=64
>  CONFIG_SYS_PBSIZE=2085
> diff --git a/configs/verdin-imx8mm_defconfig b/configs/verdin-imx8mm_defconfig
> index f25d12609c32..97afc211bf5a 100644
> --- a/configs/verdin-imx8mm_defconfig
> +++ b/configs/verdin-imx8mm_defconfig
> @@ -35,6 +35,8 @@ CONFIG_BOARD_LATE_INIT=y
>  CONFIG_SPL_MAX_SIZE=0x25000
>  CONFIG_SPL_BSS_MAX_SIZE=0x2000
>  CONFIG_SPL_BOARD_INIT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x920000
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
>  CONFIG_SPL_I2C=y
> diff --git a/configs/verdin-imx8mp_defconfig b/configs/verdin-imx8mp_defconfig
> index afe6bbaf429c..2107047c1d70 100644
> --- a/configs/verdin-imx8mp_defconfig
> +++ b/configs/verdin-imx8mp_defconfig
> @@ -45,6 +45,8 @@ CONFIG_SPL_BSS_MAX_SIZE=0x400
>  CONFIG_SPL_BOARD_INIT=y
>  CONFIG_SPL_BOOTROM_SUPPORT=y
>  CONFIG_SPL_SYS_MALLOC_SIMPLE=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x960000
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
>  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x300
>  CONFIG_SPL_I2C=y
> diff --git a/configs/vining_2000_defconfig b/configs/vining_2000_defconfig
> index a8c3d907d1d4..0559b2864dee 100644
> --- a/configs/vining_2000_defconfig
> +++ b/configs/vining_2000_defconfig
> @@ -31,6 +31,8 @@ CONFIG_USE_BOOTCOMMAND=y
>  CONFIG_BOOTCOMMAND="run distro_bootcmd"
>  CONFIG_SYS_CONSOLE_IS_IN_ENV=y
>  CONFIG_BOARD_EARLY_INIT_F=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x91ffb8
>  CONFIG_SPL_FS_EXT4=y
>  CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot-dtb.img"
>  CONFIG_SPL_I2C=y
> diff --git a/configs/vyasa-rk3288_defconfig b/configs/vyasa-rk3288_defconfig
> index 99c8379ac892..27c704f8a225 100644
> --- a/configs/vyasa-rk3288_defconfig
> +++ b/configs/vyasa-rk3288_defconfig
> @@ -24,6 +24,8 @@ CONFIG_SILENT_CONSOLE=y
>  CONFIG_DISPLAY_BOARDINFO_LATE=y
>  CONFIG_SPL_PAD_TO=0x7f8000
>  CONFIG_SPL_NO_BSS_LIMIT=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xff718000
>  CONFIG_SPL_STACK_R=y
>  CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x2000
>  CONFIG_SPL_OS_BOOT=y
> diff --git a/configs/wandboard_defconfig b/configs/wandboard_defconfig
> index fadc8af36eb5..43af07f07daa 100644
> --- a/configs/wandboard_defconfig
> +++ b/configs/wandboard_defconfig
> @@ -33,6 +33,8 @@ CONFIG_SYS_CONSOLE_IS_IN_ENV=y
>  CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
>  # CONFIG_DISPLAY_BOARDINFO is not set
>  CONFIG_BOARD_EARLY_INIT_F=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x91ffb8
>  CONFIG_SPL_FIT_IMAGE_TINY=y
>  CONFIG_SPL_FS_EXT4=y
>  CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot-dtb.img"
> diff --git a/configs/work_92105_defconfig b/configs/work_92105_defconfig
> index 2261853d0161..7eb23907ebcd 100644
> --- a/configs/work_92105_defconfig
> +++ b/configs/work_92105_defconfig
> @@ -32,6 +32,8 @@ CONFIG_SPL_PAD_TO=0x20000
>  CONFIG_SPL_NO_BSS_LIMIT=y
>  CONFIG_SPL_BOARD_INIT=y
>  CONFIG_SPL_SYS_MALLOC_SIMPLE=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xfff8
>  CONFIG_SPL_NAND_SUPPORT=y
>  CONFIG_SPL_NAND_DRIVERS=y
>  CONFIG_SPL_NAND_BASE=y
> diff --git a/configs/x530_defconfig b/configs/x530_defconfig
> index fa385fcb24d6..ac418dad1501 100644
> --- a/configs/x530_defconfig
> +++ b/configs/x530_defconfig
> @@ -32,6 +32,8 @@ CONFIG_SPL_MAX_SIZE=0x22fd0
>  CONFIG_SPL_BSS_MAX_SIZE=0x4000
>  CONFIG_SPL_BOARD_INIT=y
>  CONFIG_SPL_SYS_MALLOC_SIMPLE=y
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0x4002c000
>  CONFIG_SPL_WATCHDOG=y
>  CONFIG_SYS_CBSIZE=256
>  CONFIG_SYS_PBSIZE=276
> diff --git a/configs/xilinx_zynq_virt_defconfig b/configs/xilinx_zynq_virt_defconfig
> index fd8fd1ddfda8..49210f86c4b8 100644
> --- a/configs/xilinx_zynq_virt_defconfig
> +++ b/configs/xilinx_zynq_virt_defconfig
> @@ -30,6 +30,8 @@ CONFIG_USE_PREBOOT=y
>  CONFIG_CLOCKS=y
>  CONFIG_SPL_MAX_SIZE=0x30000
>  CONFIG_SPL_BSS_MAX_SIZE=0x100000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xfffffe00
>  CONFIG_SPL_STACK_R=y
>  CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot.img"
>  CONFIG_SPL_FS_LOAD_ARGS_NAME="system.dtb"
> diff --git a/configs/xilinx_zynqmp_mini_emmc0_defconfig b/configs/xilinx_zynqmp_mini_emmc0_defconfig
> index 44816eb25f0c..2f4b320c811e 100644
> --- a/configs/xilinx_zynqmp_mini_emmc0_defconfig
> +++ b/configs/xilinx_zynqmp_mini_emmc0_defconfig
> @@ -26,6 +26,8 @@ CONFIG_BOARD_EARLY_INIT_R=y
>  CONFIG_CLOCKS=y
>  CONFIG_SPL_MAX_SIZE=0x40000
>  CONFIG_SPL_BSS_MAX_SIZE=0x80000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xfffffffc
>  # CONFIG_CMDLINE_EDITING is not set
>  # CONFIG_AUTO_COMPLETE is not set
>  CONFIG_SYS_MAXARGS=64
> diff --git a/configs/xilinx_zynqmp_mini_emmc1_defconfig b/configs/xilinx_zynqmp_mini_emmc1_defconfig
> index d6672ff3c12a..001246fd9846 100644
> --- a/configs/xilinx_zynqmp_mini_emmc1_defconfig
> +++ b/configs/xilinx_zynqmp_mini_emmc1_defconfig
> @@ -26,6 +26,8 @@ CONFIG_BOARD_EARLY_INIT_R=y
>  CONFIG_CLOCKS=y
>  CONFIG_SPL_MAX_SIZE=0x40000
>  CONFIG_SPL_BSS_MAX_SIZE=0x80000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xfffffffc
>  # CONFIG_CMDLINE_EDITING is not set
>  # CONFIG_AUTO_COMPLETE is not set
>  CONFIG_SYS_MAXARGS=64
> diff --git a/configs/xilinx_zynqmp_mini_qspi_defconfig b/configs/xilinx_zynqmp_mini_qspi_defconfig
> index 336ca289bd39..9657093c6a33 100644
> --- a/configs/xilinx_zynqmp_mini_qspi_defconfig
> +++ b/configs/xilinx_zynqmp_mini_qspi_defconfig
> @@ -25,6 +25,8 @@ CONFIG_REMAKE_ELF=y
>  CONFIG_CLOCKS=y
>  CONFIG_SPL_MAX_SIZE=0x40000
>  CONFIG_SPL_BSS_MAX_SIZE=0x80000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xfffffffc
>  # CONFIG_CMDLINE_EDITING is not set
>  # CONFIG_AUTO_COMPLETE is not set
>  # CONFIG_SYS_LONGHELP is not set
> diff --git a/configs/xilinx_zynqmp_virt_defconfig b/configs/xilinx_zynqmp_virt_defconfig
> index 40c9c28e139b..88d5fec201f7 100644
> --- a/configs/xilinx_zynqmp_virt_defconfig
> +++ b/configs/xilinx_zynqmp_virt_defconfig
> @@ -33,6 +33,8 @@ CONFIG_BOARD_EARLY_INIT_R=y
>  CONFIG_CLOCKS=y
>  CONFIG_SPL_MAX_SIZE=0x40000
>  CONFIG_SPL_BSS_MAX_SIZE=0x80000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xfffffffc
>  CONFIG_SPL_STACK_R=y
>  CONFIG_SPL_FS_LOAD_KERNEL_NAME="atf-uboot.ub"
>  CONFIG_SPL_FS_LOAD_ARGS_NAME="u-boot.bin"
> diff --git a/configs/zeropi_defconfig b/configs/zeropi_defconfig
> index dd0dbc96ef69..7d45440c0cc5 100644
> --- a/configs/zeropi_defconfig
> +++ b/configs/zeropi_defconfig
> @@ -8,6 +8,7 @@ CONFIG_MACPWR="PD6"
>  # CONFIG_VIDEO_DE2 is not set
>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
>  CONFIG_CONSOLE_MUX=y
> +CONFIG_SPL_STACK=0x8000
>  CONFIG_SYS_PBSIZE=1024
>  CONFIG_SUN8I_EMAC=y
>  CONFIG_USB_EHCI_HCD=y
> diff --git a/configs/zynq_cse_nand_defconfig b/configs/zynq_cse_nand_defconfig
> index cb7181324e87..f63a2bbab9a8 100644
> --- a/configs/zynq_cse_nand_defconfig
> +++ b/configs/zynq_cse_nand_defconfig
> @@ -23,6 +23,8 @@ CONFIG_USE_PREBOOT=y
>  CONFIG_CLOCKS=y
>  CONFIG_SPL_MAX_SIZE=0x30000
>  CONFIG_SPL_BSS_MAX_SIZE=0x8000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xfffffe00
>  CONFIG_SPL_STACK_R=y
>  # CONFIG_CMDLINE_EDITING is not set
>  # CONFIG_AUTO_COMPLETE is not set
> diff --git a/configs/zynq_cse_nor_defconfig b/configs/zynq_cse_nor_defconfig
> index da7b9d037c3f..d38b8f16f2e2 100644
> --- a/configs/zynq_cse_nor_defconfig
> +++ b/configs/zynq_cse_nor_defconfig
> @@ -23,6 +23,8 @@ CONFIG_USE_PREBOOT=y
>  CONFIG_CLOCKS=y
>  CONFIG_SPL_MAX_SIZE=0x30000
>  CONFIG_SPL_BSS_MAX_SIZE=0x8000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xfffffe00
>  CONFIG_SPL_STACK_R=y
>  # CONFIG_CMDLINE_EDITING is not set
>  # CONFIG_AUTO_COMPLETE is not set
> diff --git a/configs/zynq_cse_qspi_defconfig b/configs/zynq_cse_qspi_defconfig
> index 2f32f9d9a82d..241bf0c922c2 100644
> --- a/configs/zynq_cse_qspi_defconfig
> +++ b/configs/zynq_cse_qspi_defconfig
> @@ -30,6 +30,8 @@ CONFIG_USE_PREBOOT=y
>  CONFIG_CLOCKS=y
>  CONFIG_SPL_MAX_SIZE=0x30000
>  CONFIG_SPL_BSS_MAX_SIZE=0x8000
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SPL_STACK=0xfffffe00
>  CONFIG_SPL_STACK_R=y
>  CONFIG_SPL_SPI_LOAD=y
>  CONFIG_SYS_SPI_U_BOOT_OFFS=0x100000
> diff --git a/include/configs/alt.h b/include/configs/alt.h
> index 081e2a93b8ef..fe303fda78a0 100644
> --- a/include/configs/alt.h
> +++ b/include/configs/alt.h
> @@ -37,7 +37,4 @@
>         "bootm_size=0x10000000\0"       \
>         "usb_pgood_delay=2000\0"
>
> -/* SPL support */
> -#define CONFIG_SPL_STACK               0xe6340000
> -
>  #endif /* __ALT_H */
> diff --git a/include/configs/at91sam9m10g45ek.h b/include/configs/at91sam9m10g45ek.h
> index 9e43c0e7aa63..85732e3f9dc2 100644
> --- a/include/configs/at91sam9m10g45ek.h
> +++ b/include/configs/at91sam9m10g45ek.h
> @@ -37,9 +37,6 @@
>
>  #endif
>
> -/* Defines for SPL */
> -#define CONFIG_SPL_STACK               0x310000
> -
>  #define CONFIG_SYS_MONITOR_LEN         0x80000
>
>  #ifdef CONFIG_SD_BOOT
> diff --git a/include/configs/at91sam9n12ek.h b/include/configs/at91sam9n12ek.h
> index 141540bd889f..b6346ae1df20 100644
> --- a/include/configs/at91sam9n12ek.h
> +++ b/include/configs/at91sam9n12ek.h
> @@ -52,7 +52,6 @@
>  #endif
>
>  /* SPL */
> -#define CONFIG_SPL_STACK               0x308000
>
>  #define CONFIG_SPL_BSS_START_ADDR      0x20000000
>  #define CONFIG_SYS_SPL_MALLOC_START    0x20080000
> diff --git a/include/configs/at91sam9x5ek.h b/include/configs/at91sam9x5ek.h
> index 12a349f867c0..446c5e1d3f24 100644
> --- a/include/configs/at91sam9x5ek.h
> +++ b/include/configs/at91sam9x5ek.h
> @@ -52,7 +52,6 @@
>  #endif
>
>  /* SPL */
> -#define CONFIG_SPL_STACK               0x308000
>
>  #define CONFIG_SPL_BSS_START_ADDR      0x20000000
>  #define CONFIG_SYS_SPL_MALLOC_START    0x20080000
> diff --git a/include/configs/capricorn-common.h b/include/configs/capricorn-common.h
> index 454dac4ad6bc..b22fc6c5ddcc 100644
> --- a/include/configs/capricorn-common.h
> +++ b/include/configs/capricorn-common.h
> @@ -17,7 +17,6 @@
>
>  #define CONFIG_SYS_MONITOR_LEN         (1024 * 1024)
>
> -#define CONFIG_SPL_STACK               0x013E000
>  #define CONFIG_SPL_BSS_START_ADDR      0x00128000
>  #define CONFIG_SYS_SPL_MALLOC_START    0x00120000
>  #define CONFIG_SYS_SPL_MALLOC_SIZE     0x3000  /* 12 KB */
> diff --git a/include/configs/cgtqmx8.h b/include/configs/cgtqmx8.h
> index 2553d9aad63e..d12feda16a47 100644
> --- a/include/configs/cgtqmx8.h
> +++ b/include/configs/cgtqmx8.h
> @@ -14,7 +14,6 @@
>  #ifdef CONFIG_SPL_BUILD
>  #define CONFIG_SYS_MONITOR_LEN                         (1024 * 1024)
>
> -#define CONFIG_SPL_STACK               0x013E000
>  #define CONFIG_SPL_BSS_START_ADDR      0x00128000
>  #define CONFIG_SYS_SPL_MALLOC_START    0x00120000
>  #define CONFIG_SYS_SPL_MALLOC_SIZE     0x3000  /* 12 KB */
> diff --git a/include/configs/ci20.h b/include/configs/ci20.h
> index 33de2b7864ab..f0497407afcc 100644
> --- a/include/configs/ci20.h
> +++ b/include/configs/ci20.h
> @@ -31,7 +31,6 @@
>  #define CONFIG_SYS_BOOTM_LEN           (64 << 20)
>
>  /* SPL */
> -#define CONFIG_SPL_STACK               0xf4008000 /* only max. 2KB spare! */
>
>  #define CONFIG_SPL_BSS_START_ADDR      0xf4004000
>
> diff --git a/include/configs/clearfog.h b/include/configs/clearfog.h
> index 6cf44877601f..03f7ceb2f427 100644
> --- a/include/configs/clearfog.h
> +++ b/include/configs/clearfog.h
> @@ -47,8 +47,6 @@
>
>  #define CONFIG_SPL_BSS_START_ADDR      (0x40000000 + CONFIG_SPL_SIZE)
>
> -#define CONFIG_SPL_STACK               (0x40000000 + ((192 - 16) << 10))
> -
>  #if defined(CONFIG_MVEBU_SPL_BOOT_DEVICE_MMC) || defined(CONFIG_MVEBU_SPL_BOOT_DEVICE_SATA)
>  /* SPL related MMC defines */
>  #ifdef CONFIG_SPL_BUILD
> diff --git a/include/configs/controlcenterdc.h b/include/configs/controlcenterdc.h
> index 78b7d4f17f29..62465acc97cf 100644
> --- a/include/configs/controlcenterdc.h
> +++ b/include/configs/controlcenterdc.h
> @@ -39,8 +39,6 @@
>
>  #define CONFIG_SPL_BSS_START_ADDR      (0x40000000 + CONFIG_SPL_SIZE)
>
> -#define CONFIG_SPL_STACK               (0x40000000 + ((212 - 16) << 10))
> -
>  #if CONFIG_SPL_BOOT_DEVICE == SPL_BOOT_SDIO_MMC_CARD
>  /* SPL related MMC defines */
>  #ifdef CONFIG_SPL_BUILD
> diff --git a/include/configs/corvus.h b/include/configs/corvus.h
> index 99c8cd311100..f15e15822e52 100644
> --- a/include/configs/corvus.h
> +++ b/include/configs/corvus.h
> @@ -54,7 +54,6 @@
>  /* bootstrap + u-boot + env in nandflash */
>
>  /* Defines for SPL */
> -#define CONFIG_SPL_STACK               (SZ_16K)
>
>  #define CONFIG_SPL_BSS_START_ADDR      CONFIG_SPL_MAX_SIZE
>
> diff --git a/include/configs/da850evm.h b/include/configs/da850evm.h
> index fd58b1a194e8..209a1423c1c0 100644
> --- a/include/configs/da850evm.h
> +++ b/include/configs/da850evm.h
> @@ -182,7 +182,6 @@
>  #define CONFIG_SYS_SPL_MALLOC_START    (CONFIG_SYS_TEXT_BASE - \
>                                                 CONFIG_SYS_MALLOC_LEN)
>  #define CONFIG_SYS_SPL_MALLOC_SIZE     CONFIG_SYS_MALLOC_LEN
> -#define CONFIG_SPL_STACK       0x8001ff00
>
>  #endif
>
> diff --git a/include/configs/db-88f6720.h b/include/configs/db-88f6720.h
> index eeaae1fdabcb..e97ff21360e3 100644
> --- a/include/configs/db-88f6720.h
> +++ b/include/configs/db-88f6720.h
> @@ -37,6 +37,4 @@
>
>  #define CONFIG_SPL_BSS_START_ADDR      (0x40000000 + (128 << 10))
>
> -#define CONFIG_SPL_STACK               (0x40000000 + ((192 - 16) << 10))
> -
>  #endif /* _CONFIG_DB_88F6720_H */
> diff --git a/include/configs/db-88f6820-amc.h b/include/configs/db-88f6820-amc.h
> index cb2050015e00..727756dbba7d 100644
> --- a/include/configs/db-88f6820-amc.h
> +++ b/include/configs/db-88f6820-amc.h
> @@ -44,8 +44,6 @@
>
>  #define CONFIG_SPL_BSS_START_ADDR      (0x40000000 + CONFIG_SPL_SIZE)
>
> -#define CONFIG_SPL_STACK               (0x40000000 + ((192 - 16) << 10))
> -
>  /*
>   * mv-common.h should be defined after CMD configs since it used them
>   * to enable certain macros
> diff --git a/include/configs/db-88f6820-gp.h b/include/configs/db-88f6820-gp.h
> index e1a97daeac8b..c6ce784b4b20 100644
> --- a/include/configs/db-88f6820-gp.h
> +++ b/include/configs/db-88f6820-gp.h
> @@ -44,8 +44,6 @@
>
>  #define CONFIG_SPL_BSS_START_ADDR      (0x40000000 + CONFIG_SPL_SIZE)
>
> -#define CONFIG_SPL_STACK               (0x40000000 + ((192 - 16) << 10))
> -
>  #if CONFIG_SPL_BOOT_DEVICE == SPL_BOOT_SDIO_MMC_CARD
>  /* SPL related MMC defines */
>  #ifdef CONFIG_SPL_BUILD
> diff --git a/include/configs/db-mv784mp-gp.h b/include/configs/db-mv784mp-gp.h
> index 2ec9afe8e843..cade78b85d3c 100644
> --- a/include/configs/db-mv784mp-gp.h
> +++ b/include/configs/db-mv784mp-gp.h
> @@ -56,8 +56,6 @@
>
>  #define CONFIG_SPL_BSS_START_ADDR      (0x40000000 + (128 << 10))
>
> -#define CONFIG_SPL_STACK               (0x40000000 + ((192 - 16) << 10))
> -
>  /* Enable DDR support in SPL (DDR3 training from Marvell bin_hdr) */
>  #define CONFIG_SPD_EEPROM              0x4e
>
> diff --git a/include/configs/devkit3250.h b/include/configs/devkit3250.h
> index 53c67c706c3d..15160db276d7 100644
> --- a/include/configs/devkit3250.h
> +++ b/include/configs/devkit3250.h
> @@ -82,18 +82,6 @@
>   * U-Boot Commands
>   */
>
> -/*
> - * SPL specific defines
> - */
> -/* SPL will be executed at offset 0 */
> -
> -/* SPL will use SRAM as stack */
> -#define CONFIG_SPL_STACK               0x0000FFF8
> -
> -/* Use the framework and generic lib */
> -
> -/* SPL will use serial */
> -
>  /* U-Boot will be 0x60000 bytes, loaded and run at CONFIG_SYS_TEXT_BASE */
>  #define CONFIG_SYS_NAND_U_BOOT_SIZE    0x60000
>
> diff --git a/include/configs/ds414.h b/include/configs/ds414.h
> index 3eff94f116ea..16d59ed014cc 100644
> --- a/include/configs/ds414.h
> +++ b/include/configs/ds414.h
> @@ -48,8 +48,6 @@
>
>  #define CONFIG_SPL_BSS_START_ADDR      (0x40000000 + (128 << 10))
>
> -#define CONFIG_SPL_STACK               (0x40000000 + ((192 - 16) << 10))
> -
>  /* Default Environment */
>
>  #define CONFIG_EXTRA_ENV_SETTINGS                              \
> diff --git a/include/configs/edminiv2.h b/include/configs/edminiv2.h
> index c0923883acf3..2bc9c9923191 100644
> --- a/include/configs/edminiv2.h
> +++ b/include/configs/edminiv2.h
> @@ -15,7 +15,6 @@
>   * SPL
>   */
>
> -#define CONFIG_SPL_STACK               0x00020000
>  #define CONFIG_SPL_BSS_START_ADDR      0x00020000
>  #define CONFIG_SYS_SPL_MALLOC_START    0x00040000
>  #define CONFIG_SYS_SPL_MALLOC_SIZE     0x0001ffff
> diff --git a/include/configs/espresso7420.h b/include/configs/espresso7420.h
> index 9632319e126a..660d1a080495 100644
> --- a/include/configs/espresso7420.h
> +++ b/include/configs/espresso7420.h
> @@ -13,7 +13,6 @@
>  #define CONFIG_ESPRESSO7420
>
>  #define CONFIG_SYS_SDRAM_BASE          0x40000000
> -#define CONFIG_SPL_STACK               CONFIG_IRAM_END
>
>  /* DRAM Memory Banks */
>  #define SDRAM_BANK_SIZE                (256UL << 20UL) /* 256 MB */
> diff --git a/include/configs/gardena-smart-gateway-at91sam.h b/include/configs/gardena-smart-gateway-at91sam.h
> index 940b61b6dd13..380622c9c79e 100644
> --- a/include/configs/gardena-smart-gateway-at91sam.h
> +++ b/include/configs/gardena-smart-gateway-at91sam.h
> @@ -33,7 +33,6 @@
>  #define CONFIG_SYS_NAND_READY_PIN      AT91_PIN_PD5
>
>  /* SPL */
> -#define CONFIG_SPL_STACK               0x308000
>
>  #define CONFIG_SPL_BSS_START_ADDR      0x20000000
>  #define CONFIG_SYS_SPL_MALLOC_START    0x20080000
> diff --git a/include/configs/gose.h b/include/configs/gose.h
> index a0af98dd9805..d1fe375a2c1f 100644
> --- a/include/configs/gose.h
> +++ b/include/configs/gose.h
> @@ -32,7 +32,4 @@
>  #define CONFIG_EXTRA_ENV_SETTINGS      \
>         "bootm_size=0x10000000\0"
>
> -/* SPL support */
> -#define CONFIG_SPL_STACK               0xe6340000
> -
>  #endif /* __GOSE_H */
> diff --git a/include/configs/helios4.h b/include/configs/helios4.h
> index e90cea374b24..86d441b11b20 100644
> --- a/include/configs/helios4.h
> +++ b/include/configs/helios4.h
> @@ -47,8 +47,6 @@
>
>  #define CONFIG_SPL_BSS_START_ADDR      (0x40000000 + CONFIG_SPL_SIZE)
>
> -#define CONFIG_SPL_STACK               (0x40000000 + ((192 - 16) << 10))
> -
>  #if defined(CONFIG_MVEBU_SPL_BOOT_DEVICE_MMC) || defined(CONFIG_MVEBU_SPL_BOOT_DEVICE_SATA)
>  /* SPL related MMC defines */
>  #ifdef CONFIG_SPL_BUILD
> diff --git a/include/configs/imx6_spl.h b/include/configs/imx6_spl.h
> index ad6bbd802b55..86e192fb0c89 100644
> --- a/include/configs/imx6_spl.h
> +++ b/include/configs/imx6_spl.h
> @@ -21,7 +21,6 @@
>   *    and some padding thus 'our' max size is really 0x00908000 - 0x00938000
>   *    or 192KB
>   */
> -#define CONFIG_SPL_STACK               0x0093FFB8
>  /*
>   * Pad SPL to 196KB (4KB header + 192KB max size). This allows to write the
>   * SPL/U-Boot combination generated with u-boot-with-spl.imx directly to a
> @@ -40,7 +39,6 @@
>   *    and some padding thus 'our' max size is really 0x00908000 - 0x00918000
>   *    or 64KB
>   */
> -#define CONFIG_SPL_STACK               0x0091FFB8
>  /*
>   * Pad SPL to 68KB (4KB header + 64KB max size). This allows to write the
>   * SPL/U-Boot combination generated with u-boot-with-spl.imx directly to a
> diff --git a/include/configs/imx7_spl.h b/include/configs/imx7_spl.h
> index 33a6185ef94c..019ed5e203a9 100644
> --- a/include/configs/imx7_spl.h
> +++ b/include/configs/imx7_spl.h
> @@ -26,7 +26,6 @@
>   *    CONFIG_SPL_TEXT_BASE could be moved to 0x00911000 to gain 4KB of space
>   *    for the SPL, but 56KB should be more than enough for the SPL.
>   */
> -#define CONFIG_SPL_STACK               0x00946BB8
>  /*
>   * Pad SPL to 68KB (4KB header + 56KB max size + 8KB extra padding)
>   * The extra padding could be removed, but this value was used historically
> diff --git a/include/configs/imx8mm-cl-iot-gate.h b/include/configs/imx8mm-cl-iot-gate.h
> index 114c8c1a800e..0e16d14f8b6f 100644
> --- a/include/configs/imx8mm-cl-iot-gate.h
> +++ b/include/configs/imx8mm-cl-iot-gate.h
> @@ -17,7 +17,6 @@
>         (QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512)
>
>  #ifdef CONFIG_SPL_BUILD
> -#define CONFIG_SPL_STACK               0x920000
>  #define CONFIG_SPL_BSS_START_ADDR      0x910000
>  #define CONFIG_SYS_SPL_MALLOC_START    0x42200000
>  #define CONFIG_SYS_SPL_MALLOC_SIZE     SZ_512K /* 512 KB */
> diff --git a/include/configs/imx8mm_beacon.h b/include/configs/imx8mm_beacon.h
> index 0151e81630f5..d28774cddbf3 100644
> --- a/include/configs/imx8mm_beacon.h
> +++ b/include/configs/imx8mm_beacon.h
> @@ -14,7 +14,6 @@
>         (QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512)
>
>  #ifdef CONFIG_SPL_BUILD
> -#define CONFIG_SPL_STACK               0x920000
>  #define CONFIG_SPL_BSS_START_ADDR      0x910000
>  #define CONFIG_SYS_SPL_MALLOC_START    0x42200000
>  #define CONFIG_SYS_SPL_MALLOC_SIZE     SZ_512K /* 512 KB */
> diff --git a/include/configs/imx8mm_data_modul_edm_sbc.h b/include/configs/imx8mm_data_modul_edm_sbc.h
> index 9487fe001043..ed819e392abd 100644
> --- a/include/configs/imx8mm_data_modul_edm_sbc.h
> +++ b/include/configs/imx8mm_data_modul_edm_sbc.h
> @@ -14,7 +14,6 @@
>
>  #define CONFIG_SYS_MONITOR_LEN         SZ_1M
>
> -#define CONFIG_SPL_STACK               0x920000
>  #ifdef CONFIG_SPL_BUILD
>  #define CONFIG_SPL_BSS_START_ADDR      0x910000
>  #define CONFIG_SYS_SPL_MALLOC_START    0x42200000
> diff --git a/include/configs/imx8mm_evk.h b/include/configs/imx8mm_evk.h
> index 24345d41a9a7..b6dda3331764 100644
> --- a/include/configs/imx8mm_evk.h
> +++ b/include/configs/imx8mm_evk.h
> @@ -16,7 +16,6 @@
>         (QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512)
>
>  #ifdef CONFIG_SPL_BUILD
> -#define CONFIG_SPL_STACK               0x920000
>  #define CONFIG_SPL_BSS_START_ADDR      0x910000
>  #define CONFIG_SYS_SPL_MALLOC_START    0x42200000
>  #define CONFIG_SYS_SPL_MALLOC_SIZE     SZ_512K /* 512 KB */
> diff --git a/include/configs/imx8mm_icore_mx8mm.h b/include/configs/imx8mm_icore_mx8mm.h
> index 505ef8beb31a..ffe88f7027b7 100644
> --- a/include/configs/imx8mm_icore_mx8mm.h
> +++ b/include/configs/imx8mm_icore_mx8mm.h
> @@ -15,7 +15,6 @@
>         (QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512)
>
>  #ifdef CONFIG_SPL_BUILD
> -# define CONFIG_SPL_STACK              0x920000
>  # define CONFIG_SPL_BSS_START_ADDR     0x910000
>  # define CONFIG_SYS_SPL_MALLOC_START   0x42200000
>  # define CONFIG_SYS_SPL_MALLOC_SIZE    SZ_512K
> diff --git a/include/configs/imx8mm_venice.h b/include/configs/imx8mm_venice.h
> index 560a876b2ff7..eb30ed1b950c 100644
> --- a/include/configs/imx8mm_venice.h
> +++ b/include/configs/imx8mm_venice.h
> @@ -14,7 +14,6 @@
>         (QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512)
>
>  #ifdef CONFIG_SPL_BUILD
> -#define CONFIG_SPL_STACK               0x920000
>  #define CONFIG_SPL_BSS_START_ADDR      0x910000
>  #define CONFIG_SYS_SPL_MALLOC_START    0x42200000
>  #define CONFIG_SYS_SPL_MALLOC_SIZE     SZ_1M
> diff --git a/include/configs/imx8mn_beacon.h b/include/configs/imx8mn_beacon.h
> index 0118ca32a961..3b99ba41bda7 100644
> --- a/include/configs/imx8mn_beacon.h
> +++ b/include/configs/imx8mn_beacon.h
> @@ -14,7 +14,6 @@
>         (QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512)
>
>  #ifdef CONFIG_SPL_BUILD
> -#define CONFIG_SPL_STACK               0x187FF0
>  #define CONFIG_SPL_BSS_START_ADDR      0x0095e000
>  #define CONFIG_SYS_SPL_MALLOC_START    0x42200000
>  #define CONFIG_SYS_SPL_MALLOC_SIZE     SZ_512K
> diff --git a/include/configs/imx8mn_bsh_smm_s2_common.h b/include/configs/imx8mn_bsh_smm_s2_common.h
> index 91418e677846..60faedb76e67 100644
> --- a/include/configs/imx8mn_bsh_smm_s2_common.h
> +++ b/include/configs/imx8mn_bsh_smm_s2_common.h
> @@ -16,7 +16,6 @@
>  #define CONFIG_SYS_UBOOT_BASE  \
>         (QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512)
>
> -#define CONFIG_SPL_STACK               0x980000
>  #define CONFIG_SPL_BSS_START_ADDR      0x950000
>  #define CONFIG_SYS_SPL_MALLOC_START    0x42200000
>  #define CONFIG_SYS_SPL_MALLOC_SIZE     SZ_512K
> diff --git a/include/configs/imx8mn_evk.h b/include/configs/imx8mn_evk.h
> index b828a5b6349d..fac2c26146d6 100644
> --- a/include/configs/imx8mn_evk.h
> +++ b/include/configs/imx8mn_evk.h
> @@ -17,7 +17,6 @@
>         (QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512)
>
>  #ifdef CONFIG_SPL_BUILD
> -#define CONFIG_SPL_STACK               0x980000
>  #define CONFIG_SPL_BSS_START_ADDR      0x950000
>  #define CONFIG_SYS_SPL_MALLOC_START    0x42200000
>  #define CONFIG_SYS_SPL_MALLOC_SIZE     SZ_512K /* 512 KB */
> diff --git a/include/configs/imx8mn_var_som.h b/include/configs/imx8mn_var_som.h
> index acfc2834a951..699a51c1eb41 100644
> --- a/include/configs/imx8mn_var_som.h
> +++ b/include/configs/imx8mn_var_som.h
> @@ -16,7 +16,6 @@
>  #define CONFIG_SYS_UBOOT_BASE  \
>         (QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512)
>
> -#define CONFIG_SPL_STACK               0x980000
>  #define CONFIG_SPL_BSS_START_ADDR      0x950000
>  #define CONFIG_SYS_SPL_MALLOC_START    0x42200000
>  #define CONFIG_SYS_SPL_MALLOC_SIZE     SZ_512K
> diff --git a/include/configs/imx8mn_venice.h b/include/configs/imx8mn_venice.h
> index 56b3fe117f2c..5807da5ac4b9 100644
> --- a/include/configs/imx8mn_venice.h
> +++ b/include/configs/imx8mn_venice.h
> @@ -14,7 +14,6 @@
>         (QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512)
>
>  #ifdef CONFIG_SPL_BUILD
> -#define CONFIG_SPL_STACK               0x980000
>  #define CONFIG_SPL_BSS_START_ADDR      0x950000
>  #define CONFIG_SYS_SPL_MALLOC_START    0x42200000
>  #define CONFIG_SYS_SPL_MALLOC_SIZE     SZ_512K /* 512 KB */
> diff --git a/include/configs/imx8mp_dhcom_pdk2.h b/include/configs/imx8mp_dhcom_pdk2.h
> index f641f4902dc0..abe245748f19 100644
> --- a/include/configs/imx8mp_dhcom_pdk2.h
> +++ b/include/configs/imx8mp_dhcom_pdk2.h
> @@ -15,7 +15,6 @@
>  #define CONFIG_SYS_MONITOR_LEN         SZ_1M
>
>  #ifdef CONFIG_SPL_BUILD
> -#define CONFIG_SPL_STACK               0x96FC00
>  #define CONFIG_SPL_BSS_START_ADDR      0x0096FC00
>  #define CONFIG_SYS_SPL_MALLOC_START    0x4c000000
>  #define CONFIG_SYS_SPL_MALLOC_SIZE     SZ_512K /* 512 kiB */
> diff --git a/include/configs/imx8mp_evk.h b/include/configs/imx8mp_evk.h
> index f066bb00bf26..1cfd63d78c6a 100644
> --- a/include/configs/imx8mp_evk.h
> +++ b/include/configs/imx8mp_evk.h
> @@ -17,7 +17,6 @@
>
>  #ifdef CONFIG_SPL_BUILD
>  /*#define CONFIG_ENABLE_DDR_TRAINING_DEBUG*/
> -#define CONFIG_SPL_STACK               0x960000
>  #define CONFIG_SPL_BSS_START_ADDR      0x0098FC00
>  #define CONFIG_SYS_SPL_MALLOC_START    0x42200000
>  #define CONFIG_SYS_SPL_MALLOC_SIZE     SZ_512K /* 512 KB */
> diff --git a/include/configs/imx8mp_rsb3720.h b/include/configs/imx8mp_rsb3720.h
> index b9122d4667fe..97f66bddbc9c 100644
> --- a/include/configs/imx8mp_rsb3720.h
> +++ b/include/configs/imx8mp_rsb3720.h
> @@ -27,7 +27,6 @@
>                  0x5f, 0xd3, 0x6b, 0x9b, 0xe5, 0xb9)
>
>  #ifdef CONFIG_SPL_BUILD
> -#define CONFIG_SPL_STACK               0x960000
>  #define CONFIG_SPL_BSS_START_ADDR      0x0098FC00
>  #define CONFIG_SYS_SPL_MALLOC_START    0x42200000
>  #define CONFIG_SYS_SPL_MALLOC_SIZE     SZ_512K /* 512 KB */
> diff --git a/include/configs/imx8mp_venice.h b/include/configs/imx8mp_venice.h
> index 1e8b1ba06e1b..074f5b08fc1a 100644
> --- a/include/configs/imx8mp_venice.h
> +++ b/include/configs/imx8mp_venice.h
> @@ -14,7 +14,6 @@
>         (QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512)
>
>  #ifdef CONFIG_SPL_BUILD
> -#define CONFIG_SPL_STACK               0x960000
>  #define CONFIG_SPL_BSS_START_ADDR      0x0098FC00
>  #define CONFIG_SYS_SPL_MALLOC_START    0x42200000
>  #define CONFIG_SYS_SPL_MALLOC_SIZE     SZ_512K /* 512 KB */
> diff --git a/include/configs/imx8mq_cm.h b/include/configs/imx8mq_cm.h
> index 48fa596eee6e..fc4b1c5bf780 100644
> --- a/include/configs/imx8mq_cm.h
> +++ b/include/configs/imx8mq_cm.h
> @@ -15,7 +15,6 @@
>  #define CONFIG_SYS_MONITOR_LEN         (512 * 1024)
>
>  #ifdef CONFIG_SPL_BUILD
> -#define CONFIG_SPL_STACK               0x187FF0
>  #define CONFIG_SPL_BSS_START_ADDR      0x00180000
>  #define CONFIG_SYS_SPL_MALLOC_START    0x42200000
>  #define CONFIG_SYS_SPL_MALLOC_SIZE    0x80000  /* 512 KB */
> diff --git a/include/configs/imx8mq_evk.h b/include/configs/imx8mq_evk.h
> index 416c83b49024..179c5123d724 100644
> --- a/include/configs/imx8mq_evk.h
> +++ b/include/configs/imx8mq_evk.h
> @@ -16,7 +16,6 @@
>
>  #ifdef CONFIG_SPL_BUILD
>  /*#define CONFIG_ENABLE_DDR_TRAINING_DEBUG*/
> -#define CONFIG_SPL_STACK               0x187FF0
>  #define CONFIG_SPL_BSS_START_ADDR      0x00180000
>  #define CONFIG_SYS_SPL_MALLOC_START    0x42200000
>  #define CONFIG_SYS_SPL_MALLOC_SIZE    0x80000  /* 512 KB */
> diff --git a/include/configs/imx8mq_phanbell.h b/include/configs/imx8mq_phanbell.h
> index 84774eed8eee..bc749538d8cc 100644
> --- a/include/configs/imx8mq_phanbell.h
> +++ b/include/configs/imx8mq_phanbell.h
> @@ -13,7 +13,6 @@
>
>  #ifdef CONFIG_SPL_BUILD
>  /*#define CONFIG_ENABLE_DDR_TRAINING_DEBUG*/
> -#define CONFIG_SPL_STACK               0x187FF0
>  #define CONFIG_SPL_BSS_START_ADDR      0x00180000
>  #define CONFIG_SYS_SPL_MALLOC_START    0x42200000
>  #define CONFIG_SYS_SPL_MALLOC_SIZE    0x80000  /* 512 KB */
> diff --git a/include/configs/imx8qm_mek.h b/include/configs/imx8qm_mek.h
> index 0fa5fe581551..4f3e004f388b 100644
> --- a/include/configs/imx8qm_mek.h
> +++ b/include/configs/imx8qm_mek.h
> @@ -15,7 +15,6 @@
>  #ifdef CONFIG_SPL_BUILD
>  #define CONFIG_SYS_MONITOR_LEN                         (1024 * 1024)
>
> -#define CONFIG_SPL_STACK               0x013E000
>  #define CONFIG_SPL_BSS_START_ADDR      0x00128000
>  #define CONFIG_SYS_SPL_MALLOC_START    0x00120000
>  #define CONFIG_SYS_SPL_MALLOC_SIZE     0x3000  /* 12 KB */
> diff --git a/include/configs/imx8qxp_mek.h b/include/configs/imx8qxp_mek.h
> index fd4d2c9669f0..7afc64800eb3 100644
> --- a/include/configs/imx8qxp_mek.h
> +++ b/include/configs/imx8qxp_mek.h
> @@ -13,7 +13,6 @@
>  #ifdef CONFIG_SPL_BUILD
>  #define CONFIG_SYS_MONITOR_LEN                         (1024 * 1024)
>
> -#define CONFIG_SPL_STACK               0x013E000
>  #define CONFIG_SPL_BSS_START_ADDR      0x00128000
>  #define CONFIG_SYS_SPL_MALLOC_START    0x00120000
>  #define CONFIG_SYS_SPL_MALLOC_SIZE     0x3000  /* 12 KB */
> diff --git a/include/configs/imx8ulp_evk.h b/include/configs/imx8ulp_evk.h
> index 8fe54f674cd4..55b1795634ab 100644
> --- a/include/configs/imx8ulp_evk.h
> +++ b/include/configs/imx8ulp_evk.h
> @@ -14,7 +14,6 @@
>  #define CONFIG_SYS_UBOOT_BASE  (QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512)
>
>  #ifdef CONFIG_SPL_BUILD
> -#define CONFIG_SPL_STACK               0x22050000
>  #define CONFIG_SPL_BSS_START_ADDR      0x22048000
>  #define CONFIG_SYS_SPL_MALLOC_START    0x22040000
>  #define CONFIG_SYS_SPL_MALLOC_SIZE     0x8000  /* 32 KB */
> diff --git a/include/configs/koelsch.h b/include/configs/koelsch.h
> index 3e46f9d5851f..736865ad80af 100644
> --- a/include/configs/koelsch.h
> +++ b/include/configs/koelsch.h
> @@ -33,6 +33,5 @@
>         "bootm_size=0x10000000\0"
>
>  /* SPL support */
> -#define CONFIG_SPL_STACK               0xe6340000
>
>  #endif /* __KOELSCH_H */
> diff --git a/include/configs/kontron-sl-mx8mm.h b/include/configs/kontron-sl-mx8mm.h
> index c731b04b8e79..b2c826b6f134 100644
> --- a/include/configs/kontron-sl-mx8mm.h
> +++ b/include/configs/kontron-sl-mx8mm.h
> @@ -55,7 +55,6 @@
>  #define CONFIG_SYS_BOOTM_LEN           SZ_64M
>
>  #ifdef CONFIG_SPL_BUILD
> -#define CONFIG_SPL_STACK               0x91fff0
>  #define CONFIG_SPL_BSS_START_ADDR      0x910000
>  #define CONFIG_SYS_SPL_MALLOC_START    0x42200000
>  #define CONFIG_SYS_SPL_MALLOC_SIZE     SZ_512K
> diff --git a/include/configs/kontron_pitx_imx8m.h b/include/configs/kontron_pitx_imx8m.h
> index 5e51f4fd4770..08c6b80abb9a 100644
> --- a/include/configs/kontron_pitx_imx8m.h
> +++ b/include/configs/kontron_pitx_imx8m.h
> @@ -17,7 +17,6 @@
>                  0x40, 0xd4, 0x5c, 0xca, 0x13, 0x99)
>
>  #ifdef CONFIG_SPL_BUILD
> -#define CONFIG_SPL_STACK               0x187FF0
>  #define CONFIG_SPL_BSS_START_ADDR       0x00180000
>  #define CONFIG_SYS_SPL_MALLOC_START     0x42200000
>  #define CONFIG_SYS_SPL_MALLOC_SIZE      SZ_512K
> diff --git a/include/configs/kontron_sl28.h b/include/configs/kontron_sl28.h
> index 129bd7ed1748..52778dd02b93 100644
> --- a/include/configs/kontron_sl28.h
> +++ b/include/configs/kontron_sl28.h
> @@ -42,7 +42,6 @@
>
>  /* SPL */
>  #define CONFIG_SPL_BSS_START_ADDR      0x80100000
> -#define CONFIG_SPL_STACK               (CONFIG_SYS_FSL_OCRAM_BASE + 0x9ff0)
>
>  #define CONFIG_SYS_SPL_MALLOC_SIZE     0x00100000
>  #define CONFIG_SYS_SPL_MALLOC_START    0x80200000
> diff --git a/include/configs/lager.h b/include/configs/lager.h
> index 98c82a0e5710..f3feaa539fcc 100644
> --- a/include/configs/lager.h
> +++ b/include/configs/lager.h
> @@ -34,6 +34,5 @@
>         "bootm_size=0x10000000\0"
>
>  /* SPL support */
> -#define CONFIG_SPL_STACK               0xe6340000
>
>  #endif /* __LAGER_H */
> diff --git a/include/configs/ls1021aiot.h b/include/configs/ls1021aiot.h
> index e8827157256b..614b399af508 100644
> --- a/include/configs/ls1021aiot.h
> +++ b/include/configs/ls1021aiot.h
> @@ -42,8 +42,6 @@
>  #define SDRAM_CFG_BI                   0x00000001
>
>  #ifdef CONFIG_SD_BOOT
> -#define CONFIG_SPL_STACK               0x1001d000
> -
>  #define CONFIG_SYS_SPL_MALLOC_START    (CONFIG_SYS_TEXT_BASE + \
>                 CONFIG_SYS_MONITOR_LEN)
>  #define CONFIG_SYS_SPL_MALLOC_SIZE     0x100000
> diff --git a/include/configs/ls1021aqds.h b/include/configs/ls1021aqds.h
> index d2e0f5f93623..fb50c82a653f 100644
> --- a/include/configs/ls1021aqds.h
> +++ b/include/configs/ls1021aqds.h
> @@ -11,8 +11,6 @@
>  #define CONFIG_SYS_INIT_RAM_SIZE       OCRAM_SIZE
>
>  #ifdef CONFIG_SD_BOOT
> -#define CONFIG_SPL_STACK               0x1001d000
> -
>  #define CONFIG_SYS_SPL_MALLOC_START    (CONFIG_SYS_TEXT_BASE + \
>                 CONFIG_SYS_MONITOR_LEN)
>  #define CONFIG_SYS_SPL_MALLOC_SIZE     0x100000
> @@ -21,8 +19,6 @@
>  #endif
>
>  #ifdef CONFIG_NAND_BOOT
> -#define CONFIG_SPL_STACK               0x1001d000
> -
>  #define CONFIG_SYS_NAND_U_BOOT_SIZE    (400 << 10)
>  #define CONFIG_SYS_NAND_U_BOOT_DST     CONFIG_SYS_TEXT_BASE
>  #define CONFIG_SYS_NAND_U_BOOT_START   CONFIG_SYS_TEXT_BASE
> diff --git a/include/configs/ls1021atsn.h b/include/configs/ls1021atsn.h
> index 35156a00b3a8..3e9175f50451 100644
> --- a/include/configs/ls1021atsn.h
> +++ b/include/configs/ls1021atsn.h
> @@ -44,8 +44,6 @@
>  #define CONFIG_U_BOOT_HDR_SIZE         (16 << 10)
>  #endif /* ifdef CONFIG_NXP_ESBC */
>
> -#define CONFIG_SPL_STACK               0x1001d000
> -
>  #define CONFIG_SYS_SPL_MALLOC_START    (CONFIG_SYS_TEXT_BASE + \
>                 CONFIG_SYS_MONITOR_LEN)
>  #define CONFIG_SYS_SPL_MALLOC_SIZE     0x100000
> diff --git a/include/configs/ls1021atwr.h b/include/configs/ls1021atwr.h
> index afff8fc3e2c8..4470d974ca97 100644
> --- a/include/configs/ls1021atwr.h
> +++ b/include/configs/ls1021atwr.h
> @@ -46,8 +46,6 @@
>  #define CONFIG_U_BOOT_HDR_SIZE                         (16 << 10)
>  #endif /* ifdef CONFIG_NXP_ESBC */
>
> -#define CONFIG_SPL_STACK               0x1001d000
> -
>  #define CONFIG_SYS_SPL_MALLOC_START    (CONFIG_SYS_TEXT_BASE + \
>                 CONFIG_SYS_MONITOR_LEN)
>  #define CONFIG_SYS_SPL_MALLOC_SIZE     0x100000
> diff --git a/include/configs/ls1043a_common.h b/include/configs/ls1043a_common.h
> index 710708398262..a09486a4170e 100644
> --- a/include/configs/ls1043a_common.h
> +++ b/include/configs/ls1043a_common.h
> @@ -46,9 +46,6 @@
>
>  /* SD boot SPL */
>  #ifdef CONFIG_SD_BOOT
> -
> -#define CONFIG_SPL_STACK               0x1001e000
> -
>  #define CONFIG_SYS_SPL_MALLOC_START    (CONFIG_SPL_BSS_START_ADDR + \
>                                         CONFIG_SPL_BSS_MAX_SIZE)
>  #define CONFIG_SYS_SPL_MALLOC_SIZE     0x100000
> @@ -70,7 +67,6 @@
>
>  /* NAND SPL */
>  #ifdef CONFIG_NAND_BOOT
> -#define CONFIG_SPL_STACK               0x1001d000
>  #define CONFIG_SYS_NAND_U_BOOT_DST     CONFIG_SYS_TEXT_BASE
>  #define CONFIG_SYS_NAND_U_BOOT_START   CONFIG_SYS_TEXT_BASE
>  #define CONFIG_SYS_SPL_MALLOC_START    0x80200000
> diff --git a/include/configs/ls1046a_common.h b/include/configs/ls1046a_common.h
> index bf808d15efa9..92fcc453f165 100644
> --- a/include/configs/ls1046a_common.h
> +++ b/include/configs/ls1046a_common.h
> @@ -46,7 +46,6 @@
>
>  /* SD boot SPL */
>  #ifdef CONFIG_SD_BOOT
> -#define CONFIG_SPL_STACK               0x10020000
>  #define CONFIG_SPL_BSS_START_ADDR      0x8f000000
>  #define CONFIG_SYS_SPL_MALLOC_START    (CONFIG_SPL_BSS_START_ADDR + \
>                                         CONFIG_SPL_BSS_MAX_SIZE)
> @@ -68,7 +67,6 @@
>
>  #if defined(CONFIG_QSPI_BOOT) && defined(CONFIG_SPL)
>  #define CONFIG_SPL_TARGET              "spl/u-boot-spl.pbl"
> -#define CONFIG_SPL_STACK               0x10020000
>  #define CONFIG_SPL_BSS_START_ADDR      0x8f000000
>  #define CONFIG_SYS_SPL_MALLOC_START    (CONFIG_SPL_BSS_START_ADDR + \
>                                         CONFIG_SPL_BSS_MAX_SIZE)
> @@ -78,7 +76,6 @@
>
>  /* NAND SPL */
>  #ifdef CONFIG_NAND_BOOT
> -#define CONFIG_SPL_STACK               0x1001f000
>  #define CONFIG_SYS_NAND_U_BOOT_DST     CONFIG_SYS_TEXT_BASE
>  #define CONFIG_SYS_NAND_U_BOOT_START   CONFIG_SYS_TEXT_BASE
>
> diff --git a/include/configs/ls1088a_common.h b/include/configs/ls1088a_common.h
> index 6ed180984e5b..1b8180f6f10b 100644
> --- a/include/configs/ls1088a_common.h
> +++ b/include/configs/ls1088a_common.h
> @@ -145,7 +145,6 @@ unsigned long long get_qixis_addr(void);
>
>  #ifdef CONFIG_SPL
>  #define CONFIG_SPL_BSS_START_ADDR      0x80100000
> -#define CONFIG_SPL_STACK               (CONFIG_SYS_FSL_OCRAM_BASE + 0x9ff0)
>  #define CONFIG_SPL_TARGET              "u-boot-with-spl.bin"
>
>  #define CONFIG_SYS_SPL_MALLOC_SIZE     0x00100000
> diff --git a/include/configs/ls2080a_common.h b/include/configs/ls2080a_common.h
> index 5d2b8ebea0d4..f33e369847c3 100644
> --- a/include/configs/ls2080a_common.h
> +++ b/include/configs/ls2080a_common.h
> @@ -138,7 +138,6 @@ unsigned long long get_qixis_addr(void);
>         " 0x580e00000 \0"
>
>  #define CONFIG_SPL_BSS_START_ADDR      0x80100000
> -#define CONFIG_SPL_STACK               (CONFIG_SYS_FSL_OCRAM_BASE + 0x9ff0)
>  #define CONFIG_SPL_TARGET              "u-boot-with-spl.bin"
>
>  #ifdef CONFIG_NAND_BOOT
> diff --git a/include/configs/m53menlo.h b/include/configs/m53menlo.h
> index 58d6418b02e9..433952c9d72c 100644
> --- a/include/configs/m53menlo.h
> +++ b/include/configs/m53menlo.h
> @@ -109,7 +109,6 @@
>   * NAND SPL
>   */
>  #define CONFIG_SPL_TARGET              "u-boot-with-nand-spl.imx"
> -#define CONFIG_SPL_STACK               0x70004000
>
>  #define CONFIG_SYS_NAND_SIZE           (256 * 1024 * 1024)
>
> diff --git a/include/configs/maxbcm.h b/include/configs/maxbcm.h
> index 939046f6de85..d728c1fc11b2 100644
> --- a/include/configs/maxbcm.h
> +++ b/include/configs/maxbcm.h
> @@ -51,8 +51,6 @@
>
>  #define CONFIG_SPL_BSS_START_ADDR      (0x40000000 + (128 << 10))
>
> -#define CONFIG_SPL_STACK               (0x40000000 + ((192 - 16) << 10))
> -
>  /* SPL related SPI defines */
>
>  /* Enable DDR support in SPL (DDR3 training from Marvell bin_hdr) */
> diff --git a/include/configs/microblaze-generic.h b/include/configs/microblaze-generic.h
> index 37bd47854922..e9c9bf9281ce 100644
> --- a/include/configs/microblaze-generic.h
> +++ b/include/configs/microblaze-generic.h
> @@ -128,9 +128,6 @@
>  /* BRAM size - will be generated */
>  #define CONFIG_SYS_INIT_RAM_SIZE       0x100000
>
> -# define CONFIG_SPL_STACK_ADDR         (CONFIG_SYS_INIT_RAM_ADDR + \
> -                                        CONFIG_SYS_INIT_RAM_SIZE)
> -
>  /* Just for sure that there is a space for stack */
>  #define CONFIG_SPL_STACK_SIZE          0x100
>
> diff --git a/include/configs/mt7629.h b/include/configs/mt7629.h
> index 64263ce2e637..246836a077b9 100644
> --- a/include/configs/mt7629.h
> +++ b/include/configs/mt7629.h
> @@ -20,7 +20,6 @@
>  /* Environment */
>
>  /* Defines for SPL */
> -#define CONFIG_SPL_STACK               0x106000
>
>  #define CONFIG_SPI_ADDR                        0x30000000
>  #define CONFIG_SYS_UBOOT_BASE          (CONFIG_SPI_ADDR + CONFIG_SPL_PAD_TO)
> diff --git a/include/configs/omapl138_lcdk.h b/include/configs/omapl138_lcdk.h
> index dbb87b9642e2..6fefb1eab900 100644
> --- a/include/configs/omapl138_lcdk.h
> +++ b/include/configs/omapl138_lcdk.h
> @@ -174,7 +174,6 @@
>  #define CONFIG_SYS_SPL_MALLOC_START    (CONFIG_SYS_TEXT_BASE - \
>                                                 CONFIG_SYS_MALLOC_LEN)
>  #define CONFIG_SYS_SPL_MALLOC_SIZE     CONFIG_SYS_MALLOC_LEN
> -#define CONFIG_SPL_STACK       0x8001ff00
>
>  /* additions for new relocation code, must added to all boards */
>  #define CONFIG_SYS_SDRAM_BASE          0xc0000000
> diff --git a/include/configs/openpiton-riscv64.h b/include/configs/openpiton-riscv64.h
> index 006ec360ab34..e194fbaeecf7 100644
> --- a/include/configs/openpiton-riscv64.h
> +++ b/include/configs/openpiton-riscv64.h
> @@ -22,8 +22,6 @@
>  #define CONFIG_SYS_SPL_MALLOC_START (CONFIG_SPL_BSS_START_ADDR + \
>                 CONFIG_SPL_BSS_MAX_SIZE)
>  #define CONFIG_SYS_SPL_MALLOC_SIZE  0x0100000
> -#define CONFIG_SPL_STACK    (0x80000000 + 0x04000000 - \
> -               GENERATED_GBL_DATA_SIZE)
>
>  #define CONFIG_SPL_GD_ADDR 0x85000000
>  #endif
> diff --git a/include/configs/phycore_imx8mm.h b/include/configs/phycore_imx8mm.h
> index 0366933cea26..284891414e22 100644
> --- a/include/configs/phycore_imx8mm.h
> +++ b/include/configs/phycore_imx8mm.h
> @@ -17,7 +17,6 @@
>                 (QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512)
>
>  #ifdef CONFIG_SPL_BUILD
> -#define CONFIG_SPL_STACK               0x920000
>  #define CONFIG_SPL_BSS_START_ADDR      0x910000
>  #define CONFIG_SYS_SPL_MALLOC_START    0x42200000
>  #define CONFIG_SYS_SPL_MALLOC_SIZE     SZ_512K
> diff --git a/include/configs/phycore_imx8mp.h b/include/configs/phycore_imx8mp.h
> index 8434156998aa..99aecdad4ef6 100644
> --- a/include/configs/phycore_imx8mp.h
> +++ b/include/configs/phycore_imx8mp.h
> @@ -17,7 +17,6 @@
>                 (QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512)
>
>  #ifdef CONFIG_SPL_BUILD
> -#define CONFIG_SPL_STACK               0x960000
>  #define CONFIG_SPL_BSS_START_ADDR      0x98FC00
>  #define CONFIG_SYS_SPL_MALLOC_START    0x42200000
>  #define CONFIG_SYS_SPL_MALLOC_SIZE     SZ_512K
> diff --git a/include/configs/pico-imx8mq.h b/include/configs/pico-imx8mq.h
> index c8dab24f90a2..10e3e23e8dc8 100644
> --- a/include/configs/pico-imx8mq.h
> +++ b/include/configs/pico-imx8mq.h
> @@ -13,7 +13,6 @@
>
>  #ifdef CONFIG_SPL_BUILD
>  /*#define CONFIG_ENABLE_DDR_TRAINING_DEBUG*/
> -#define CONFIG_SPL_STACK               0x187FF0
>  #define CONFIG_SPL_BSS_START_ADDR      0x00180000
>  #define CONFIG_SYS_SPL_MALLOC_START    0x42200000
>  #define CONFIG_SYS_SPL_MALLOC_SIZE     0x80000 /* 512 KB */
> diff --git a/include/configs/pm9g45.h b/include/configs/pm9g45.h
> index 56d2459b9786..6f49568484d9 100644
> --- a/include/configs/pm9g45.h
> +++ b/include/configs/pm9g45.h
> @@ -43,7 +43,6 @@
>  #endif
>
>  /* Defines for SPL */
> -#define CONFIG_SPL_STACK               0x310000
>
>  #define CONFIG_SYS_MONITOR_LEN         0x80000
>
> diff --git a/include/configs/porter.h b/include/configs/porter.h
> index d8c4ea105759..88fa65e0ffc1 100644
> --- a/include/configs/porter.h
> +++ b/include/configs/porter.h
> @@ -38,6 +38,5 @@
>         "bootm_size=0x10000000\0"
>
>  /* SPL support */
> -#define CONFIG_SPL_STACK               0xe6340000
>
>  #endif /* __PORTER_H */
> diff --git a/include/configs/px30_common.h b/include/configs/px30_common.h
> index 7b36cd765ea4..1cf239f8a634 100644
> --- a/include/configs/px30_common.h
> +++ b/include/configs/px30_common.h
> @@ -13,7 +13,6 @@
>  /* FIXME: ff020000 is pmu_mem (10k), while ff0e0000 is regular int_mem */
>  #define CONFIG_IRAM_BASE               0xff020000
>
> -#define CONFIG_SPL_STACK               0x00400000
>  #define CONFIG_SPL_BSS_START_ADDR      0x4000000
>  #define CONFIG_SYS_BOOTM_LEN           (64 << 20)      /* 64M */
>
> diff --git a/include/configs/rcar-gen3-common.h b/include/configs/rcar-gen3-common.h
> index 8b4c5c0f105e..6cda69159b45 100644
> --- a/include/configs/rcar-gen3-common.h
> +++ b/include/configs/rcar-gen3-common.h
> @@ -49,6 +49,5 @@
>  #else
>  #define CONFIG_SPL_BSS_START_ADDR      0xe631f000
>  #endif
> -#define CONFIG_SPL_STACK               0xe6304000
>
>  #endif /* __RCAR_GEN3_COMMON_H */
> diff --git a/include/configs/rk3036_common.h b/include/configs/rk3036_common.h
> index 0eded1838c2a..2f3260e449c1 100644
> --- a/include/configs/rk3036_common.h
> +++ b/include/configs/rk3036_common.h
> @@ -10,8 +10,6 @@
>
>  #define CONFIG_SYS_HZ_CLOCK            24000000
>
> -#define CONFIG_SPL_STACK               0x10081fff
> -
>  #define CONFIG_ROCKCHIP_MAX_INIT_SIZE  (4 << 10)
>  #define CONFIG_ROCKCHIP_CHIP_TAG       "RK30"
>
> diff --git a/include/configs/rk3066_common.h b/include/configs/rk3066_common.h
> index dd33d30e9e54..41e0d18f88c6 100644
> --- a/include/configs/rk3066_common.h
> +++ b/include/configs/rk3066_common.h
> @@ -11,8 +11,6 @@
>
>  #define CONFIG_IRAM_BASE               0x10080000
>
> -#define CONFIG_SPL_STACK               0x1008FFFF
> -
>  #define CONFIG_SYS_SDRAM_BASE          0x60000000
>  #define SDRAM_BANK_SIZE                        (1024UL << 20UL)
>  #define SDRAM_MAX_SIZE                 CONFIG_NR_DRAM_BANKS * SDRAM_BANK_SIZE
> diff --git a/include/configs/rk3188_common.h b/include/configs/rk3188_common.h
> index 466b0e748597..c1d66845412f 100644
> --- a/include/configs/rk3188_common.h
> +++ b/include/configs/rk3188_common.h
> @@ -15,8 +15,6 @@
>
>  /* spl size 32kb sram - 2kb bootrom */
>
> -#define CONFIG_SPL_STACK               0x10087fff
> -
>  #define CONFIG_SYS_SDRAM_BASE          0x60000000
>  #define SDRAM_BANK_SIZE                        (2UL << 30)
>  #define SDRAM_MAX_SIZE                 0x80000000
> diff --git a/include/configs/rk3288_common.h b/include/configs/rk3288_common.h
> index abeb6535ce35..844c154217bd 100644
> --- a/include/configs/rk3288_common.h
> +++ b/include/configs/rk3288_common.h
> @@ -13,8 +13,6 @@
>
>  #define CONFIG_SYS_HZ_CLOCK            24000000
>
> -#define CONFIG_SPL_STACK               0xff718000
> -
>  #define CONFIG_IRAM_BASE               0xff700000
>
>  /* RAW SD card / eMMC locations. */
> diff --git a/include/configs/rk3308_common.h b/include/configs/rk3308_common.h
> index 2433ea836529..2b0b367df785 100644
> --- a/include/configs/rk3308_common.h
> +++ b/include/configs/rk3308_common.h
> @@ -13,7 +13,6 @@
>  #define CONFIG_SYS_NS16550_MEM32
>
>  #define CONFIG_IRAM_BASE               0xfff80000
> -#define CONFIG_SPL_STACK               0x00400000
>  #define CONFIG_SYS_BOOTM_LEN           (64 << 20)      /* 64M */
>
>
> diff --git a/include/configs/rk3328_common.h b/include/configs/rk3328_common.h
> index 5141c48de787..25e2c6590014 100644
> --- a/include/configs/rk3328_common.h
> +++ b/include/configs/rk3328_common.h
> @@ -10,7 +10,6 @@
>
>  #define CONFIG_IRAM_BASE               0xff090000
>
> -#define CONFIG_SPL_STACK               0x00400000
>  #define CONFIG_SPL_BSS_START_ADDR      0x2000000
>
>  #define CONFIG_SYS_BOOTM_LEN   (64 << 20)      /* 64M */
> diff --git a/include/configs/rk3368_common.h b/include/configs/rk3368_common.h
> index 77817a7e73c2..1bdc8cf187b0 100644
> --- a/include/configs/rk3368_common.h
> +++ b/include/configs/rk3368_common.h
> @@ -17,7 +17,6 @@
>  #define CONFIG_IRAM_BASE               0xff8c0000
>
>  #define CONFIG_SPL_BSS_START_ADDR       0x400000
> -#define CONFIG_SPL_STACK                0x00188000
>
>  #define CONFIG_SYS_BOOTM_LEN   (64 << 20)      /* 64M */
>
> diff --git a/include/configs/rk3399_common.h b/include/configs/rk3399_common.h
> index 4582d34af859..112b8639ad75 100644
> --- a/include/configs/rk3399_common.h
> +++ b/include/configs/rk3399_common.h
> @@ -11,10 +11,8 @@
>  #define CONFIG_IRAM_BASE               0xff8c0000
>
>  #if defined(CONFIG_SPL_BUILD) && defined(CONFIG_TPL_BOOTROM_SUPPORT)
> -#define CONFIG_SPL_STACK               0x00400000
>  #define CONFIG_SPL_BSS_START_ADDR      0x00400000
>  #else
> -#define CONFIG_SPL_STACK               0xff8effff
>  /*  BSS setup */
>  #define CONFIG_SPL_BSS_START_ADDR       0xff8e0000
>  #endif
> diff --git a/include/configs/rk3568_common.h b/include/configs/rk3568_common.h
> index 2e726b00c96a..c0721aa1afb9 100644
> --- a/include/configs/rk3568_common.h
> +++ b/include/configs/rk3568_common.h
> @@ -10,7 +10,6 @@
>
>  #define CONFIG_IRAM_BASE               0xfdcc0000
>
> -#define CONFIG_SPL_STACK               0x00400000
>  #define CONFIG_SPL_BSS_START_ADDR      0x4000000
>
>  #define CONFIG_SYS_BOOTM_LEN           (64 << 20)      /* 64M */
> diff --git a/include/configs/sam9x60_curiosity.h b/include/configs/sam9x60_curiosity.h
> index 896697bf4152..afb1e3d0f105 100644
> --- a/include/configs/sam9x60_curiosity.h
> +++ b/include/configs/sam9x60_curiosity.h
> @@ -20,6 +20,4 @@
>  #define CONFIG_SYS_SDRAM_BASE          0x20000000
>  #define CONFIG_SYS_SDRAM_SIZE          0x8000000       /* 128 MB */
>
> -#define CONFIG_SPL_STACK         0x218000
> -
>  #endif
> diff --git a/include/configs/sama5d27_som1_ek.h b/include/configs/sama5d27_som1_ek.h
> index 2bb71e4f42f4..dd5f8d8c8018 100644
> --- a/include/configs/sama5d27_som1_ek.h
> +++ b/include/configs/sama5d27_som1_ek.h
> @@ -15,7 +15,6 @@
>  #define CONFIG_SYS_AT91_MAIN_CLOCK      24000000 /* from 24 MHz crystal */
>
>  /* SPL */
> -#define CONFIG_SPL_STACK               0x218000
>  #define CONFIG_SPL_BSS_START_ADDR      0x20000000
>  #define CONFIG_SYS_SPL_MALLOC_START    0x20080000
>  #define CONFIG_SYS_SPL_MALLOC_SIZE     0x80000
> diff --git a/include/configs/sama5d27_wlsom1_ek.h b/include/configs/sama5d27_wlsom1_ek.h
> index 86f7c2bade82..728dc9fb98b6 100644
> --- a/include/configs/sama5d27_wlsom1_ek.h
> +++ b/include/configs/sama5d27_wlsom1_ek.h
> @@ -20,7 +20,6 @@
>  #define CONFIG_SYS_SDRAM_SIZE          0x10000000
>
>  /* SPL */
> -#define CONFIG_SPL_STACK               0x218000
>  #define CONFIG_SPL_BSS_START_ADDR      0x20000000
>  #define CONFIG_SYS_SPL_MALLOC_START    0x20080000
>  #define CONFIG_SYS_SPL_MALLOC_SIZE     0x80000
> diff --git a/include/configs/sama5d2_icp.h b/include/configs/sama5d2_icp.h
> index f7f746e9b3e3..0645c21b6185 100644
> --- a/include/configs/sama5d2_icp.h
> +++ b/include/configs/sama5d2_icp.h
> @@ -18,8 +18,6 @@
>  #define CONFIG_SYS_SDRAM_BASE          0x20000000
>  #define CONFIG_SYS_SDRAM_SIZE          0x20000000
>
> -#define CONFIG_SPL_STACK               0x218000
> -
>  #ifdef CONFIG_SD_BOOT
>  /* u-boot env in sd/mmc card */
>  #define FAT_ENV_INTERFACE      "mmc"
> diff --git a/include/configs/sama5d2_xplained.h b/include/configs/sama5d2_xplained.h
> index b7cc8d05ce59..8481b0262c4a 100644
> --- a/include/configs/sama5d2_xplained.h
> +++ b/include/configs/sama5d2_xplained.h
> @@ -12,7 +12,6 @@
>  #include "at91-sama5_common.h"
>
>  /* SPL */
> -#define CONFIG_SPL_STACK               0x218000
>  #define CONFIG_SPL_BSS_START_ADDR      0x20000000
>  #define CONFIG_SYS_SPL_MALLOC_START    0x20080000
>  #define CONFIG_SYS_SPL_MALLOC_SIZE     0x80000
> diff --git a/include/configs/sama5d3_xplained.h b/include/configs/sama5d3_xplained.h
> index 384e8d6e613b..23ffab226b1a 100644
> --- a/include/configs/sama5d3_xplained.h
> +++ b/include/configs/sama5d3_xplained.h
> @@ -27,8 +27,6 @@
>  #define CONFIG_SYS_SDRAM_BASE           0x20000000
>  #define CONFIG_SYS_SDRAM_SIZE          0x10000000
>
> -#define CONFIG_SPL_STACK               0x318000
> -
>  /* NAND flash */
>  #ifdef CONFIG_CMD_NAND
>  #define CONFIG_SYS_MAX_NAND_DEVICE     1
> diff --git a/include/configs/sama5d3xek.h b/include/configs/sama5d3xek.h
> index 161914294c87..e293002f39d2 100644
> --- a/include/configs/sama5d3xek.h
> +++ b/include/configs/sama5d3xek.h
> @@ -38,8 +38,6 @@
>  #define CONFIG_SYS_SDRAM_BASE           0x20000000
>  #define CONFIG_SYS_SDRAM_SIZE          0x20000000
>
> -#define CONFIG_SPL_STACK               0x318000
> -
>  /* SerialFlash */
>
>  /* NAND flash */
> diff --git a/include/configs/sama5d4_xplained.h b/include/configs/sama5d4_xplained.h
> index 6328450b995f..825925c114ab 100644
> --- a/include/configs/sama5d4_xplained.h
> +++ b/include/configs/sama5d4_xplained.h
> @@ -15,8 +15,6 @@
>  #define CONFIG_SYS_SDRAM_BASE           0x20000000
>  #define CONFIG_SYS_SDRAM_SIZE          0x20000000
>
> -#define CONFIG_SPL_STACK               0x218000
> -
>  /* NAND flash */
>  #ifdef CONFIG_CMD_NAND
>  #define CONFIG_SYS_MAX_NAND_DEVICE     1
> diff --git a/include/configs/sama5d4ek.h b/include/configs/sama5d4ek.h
> index a00d2851bd03..d2466da6fcd8 100644
> --- a/include/configs/sama5d4ek.h
> +++ b/include/configs/sama5d4ek.h
> @@ -15,8 +15,6 @@
>  #define CONFIG_SYS_SDRAM_BASE           0x20000000
>  #define CONFIG_SYS_SDRAM_SIZE          0x20000000
>
> -#define CONFIG_SPL_STACK               0x218000
> -
>  /* NAND flash */
>  #ifdef CONFIG_CMD_NAND
>  #define CONFIG_SYS_MAX_NAND_DEVICE     1
> diff --git a/include/configs/sama7g5ek.h b/include/configs/sama7g5ek.h
> index 97bac63ddde1..78347373fca9 100644
> --- a/include/configs/sama7g5ek.h
> +++ b/include/configs/sama7g5ek.h
> @@ -16,6 +16,4 @@
>  #define CONFIG_SYS_SDRAM_BASE          0x60000000
>  #define CONFIG_SYS_SDRAM_SIZE          0x20000000
>
> -#define CONFIG_SPL_STACK               0x218000
> -
>  #endif
> diff --git a/include/configs/sifive-unleashed.h b/include/configs/sifive-unleashed.h
> index 31787310c343..58d70922e4e7 100644
> --- a/include/configs/sifive-unleashed.h
> +++ b/include/configs/sifive-unleashed.h
> @@ -18,9 +18,6 @@
>                                          CONFIG_SPL_BSS_MAX_SIZE)
>  #define CONFIG_SYS_SPL_MALLOC_SIZE     0x00100000
>
> -#define CONFIG_SPL_STACK       (0x08000000 + 0x001D0000 - \
> -                                GENERATED_GBL_DATA_SIZE)
> -
>  #endif
>
>  #define CONFIG_SYS_SDRAM_BASE          0x80000000
> diff --git a/include/configs/sifive-unmatched.h b/include/configs/sifive-unmatched.h
> index 54b41494f6f1..a88debddca2f 100644
> --- a/include/configs/sifive-unmatched.h
> +++ b/include/configs/sifive-unmatched.h
> @@ -18,9 +18,6 @@
>                                          CONFIG_SPL_BSS_MAX_SIZE)
>  #define CONFIG_SYS_SPL_MALLOC_SIZE     0x00100000
>
> -#define CONFIG_SPL_STACK       (0x08000000 + 0x001D0000 - \
> -                                GENERATED_GBL_DATA_SIZE)
> -
>  #endif
>
>  #define CONFIG_SYS_SDRAM_BASE          0x80000000
> diff --git a/include/configs/silk.h b/include/configs/silk.h
> index a300ae86fc9a..58613effaf47 100644
> --- a/include/configs/silk.h
> +++ b/include/configs/silk.h
> @@ -38,6 +38,5 @@
>         "bootm_size=0x10000000\0"
>
>  /* SPL support */
> -#define CONFIG_SPL_STACK               0xe6340000
>
>  #endif /* __SILK_H */
> diff --git a/include/configs/smartweb.h b/include/configs/smartweb.h
> index 533129f311b0..d84a2c262efa 100644
> --- a/include/configs/smartweb.h
> +++ b/include/configs/smartweb.h
> @@ -114,7 +114,6 @@
>
>  /* Defines for SPL */
>
> -#define CONFIG_SPL_STACK               0x301000
>  #define CONFIG_SPL_BSS_START_ADDR      CONFIG_SYS_SDRAM_BASE
>  #define CONFIG_SYS_SPL_MALLOC_START     (CONFIG_SPL_BSS_START_ADDR + \
>                                         CONFIG_SPL_BSS_MAX_SIZE)
> diff --git a/include/configs/sniper.h b/include/configs/sniper.h
> index 01697a5c82a1..923da0ef99f9 100644
> --- a/include/configs/sniper.h
> +++ b/include/configs/sniper.h
> @@ -51,7 +51,6 @@
>  #define CONFIG_SPL_BSS_START_ADDR      0x80000000
>  #define CONFIG_SYS_SPL_MALLOC_START    0x80208000
>  #define CONFIG_SYS_SPL_MALLOC_SIZE     (1024 * 1024)
> -#define CONFIG_SPL_STACK               LOW_LEVEL_SRAM_STACK
>
>  /*
>   * Serial
> diff --git a/include/configs/socfpga_common.h b/include/configs/socfpga_common.h
> index bdcb872cd064..441e3545aa4d 100644
> --- a/include/configs/socfpga_common.h
> +++ b/include/configs/socfpga_common.h
> @@ -35,10 +35,6 @@
>  #if ((CONFIG_SYS_BOOTCOUNT_ADDR > CONFIG_SYS_INIT_RAM_ADDR) && \
>       (CONFIG_SYS_BOOTCOUNT_ADDR < (CONFIG_SYS_INIT_RAM_ADDR +  \
>                                    CONFIG_SYS_INIT_RAM_SIZE)))
> -#define CONFIG_SPL_STACK               CONFIG_SYS_BOOTCOUNT_ADDR
> -#else
> -#define CONFIG_SPL_STACK                       \
> -       (CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_RAM_SIZE)
>  #endif
>
>  /*
> diff --git a/include/configs/socfpga_soc64_common.h b/include/configs/socfpga_soc64_common.h
> index c4ba1d14f931..b73ce9176097 100644
> --- a/include/configs/socfpga_soc64_common.h
> +++ b/include/configs/socfpga_soc64_common.h
> @@ -144,9 +144,6 @@ unsigned int cm_get_l4_sys_free_clk_hz(void);
>   *
>   */
>  #define CONFIG_SPL_TARGET              "spl/u-boot-spl-dtb.hex"
> -#define CONFIG_SPL_STACK               (CONFIG_SYS_INIT_RAM_ADDR  \
> -                                       + CONFIG_SYS_INIT_RAM_SIZE \
> -                                       - SOC64_HANDOFF_SIZE)
>  #define CONFIG_SPL_BSS_START_ADDR      (PHYS_SDRAM_1 + PHYS_SDRAM_1_SIZE \
>                                         - CONFIG_SPL_BSS_MAX_SIZE)
>  #define CONFIG_SYS_SPL_MALLOC_SIZE     (CONFIG_SYS_MALLOC_LEN)
> diff --git a/include/configs/stm32mp15_common.h b/include/configs/stm32mp15_common.h
> index ead3b91e67a2..588d4c1f31f1 100644
> --- a/include/configs/stm32mp15_common.h
> +++ b/include/configs/stm32mp15_common.h
> @@ -36,8 +36,6 @@
>
>  /* Restrict SPL to fit within SYSRAM */
>  #define STM32_SYSRAM_END               (STM32_SYSRAM_BASE + STM32_SYSRAM_SIZE)
> -#define CONFIG_SPL_STACK               (STM32_SYSRAM_BASE + \
> -                                        STM32_SYSRAM_SIZE)
>  #endif /* #ifdef CONFIG_SPL */
>  /*MMC SD*/
>  #define CONFIG_SYS_MMC_MAX_DEVICE      3
> diff --git a/include/configs/stout.h b/include/configs/stout.h
> index 4f7fc23dd2d8..f49e88cb17cb 100644
> --- a/include/configs/stout.h
> +++ b/include/configs/stout.h
> @@ -42,6 +42,5 @@
>         "bootm_size=0x10000000\0"
>
>  /* SPL support */
> -#define CONFIG_SPL_STACK               0xe6340000
>
>  #endif /* __STOUT_H */
> diff --git a/include/configs/sunxi-common.h b/include/configs/sunxi-common.h
> index 35a2a41d2281..3431366bcda3 100644
> --- a/include/configs/sunxi-common.h
> +++ b/include/configs/sunxi-common.h
> @@ -125,8 +125,6 @@
>  #define LOW_LEVEL_SRAM_STACK           0x00008000      /* End of sram */
>  #endif
>
> -#define CONFIG_SPL_STACK               LOW_LEVEL_SRAM_STACK
> -
>  /* Ethernet support */
>
>  #ifdef CONFIG_USB_EHCI_HCD
> diff --git a/include/configs/taurus.h b/include/configs/taurus.h
> index 238074bff4c9..d7dba72db4c2 100644
> --- a/include/configs/taurus.h
> +++ b/include/configs/taurus.h
> @@ -142,7 +142,6 @@
>  #endif /* #ifndef CONFIG_SPL_BUILD */
>
>  /* Defines for SPL */
> -#define        CONFIG_SPL_STACK                (ATMEL_BASE_SRAM1 + SZ_16K)
>  #define CONFIG_SYS_SPL_MALLOC_START     (CONFIG_SYS_TEXT_BASE - \
>                                         CONFIG_SYS_MALLOC_LEN)
>  #define CONFIG_SYS_SPL_MALLOC_SIZE      CONFIG_SYS_MALLOC_LEN
> diff --git a/include/configs/tegra114-common.h b/include/configs/tegra114-common.h
> index 09737211803b..fae00e88fe59 100644
> --- a/include/configs/tegra114-common.h
> +++ b/include/configs/tegra114-common.h
> @@ -55,7 +55,6 @@
>
>  /* Defines for SPL */
>  #define CONFIG_SYS_SPL_MALLOC_START    0x80090000
> -#define CONFIG_SPL_STACK               0x800ffffc
>
>  /* For USB EHCI controller */
>  #define CONFIG_USB_EHCI_TXFIFO_THRESH  0x10
> diff --git a/include/configs/tegra124-common.h b/include/configs/tegra124-common.h
> index df688dabd1ab..05f6bf0b471b 100644
> --- a/include/configs/tegra124-common.h
> +++ b/include/configs/tegra124-common.h
> @@ -57,7 +57,6 @@
>
>  /* Defines for SPL */
>  #define CONFIG_SYS_SPL_MALLOC_START    0x80090000
> -#define CONFIG_SPL_STACK               0x800ffffc
>
>  /* For USB EHCI controller */
>  #define CONFIG_USB_EHCI_TXFIFO_THRESH  0x10
> diff --git a/include/configs/tegra20-common.h b/include/configs/tegra20-common.h
> index fac869272857..97c1f5a2453d 100644
> --- a/include/configs/tegra20-common.h
> +++ b/include/configs/tegra20-common.h
> @@ -56,7 +56,6 @@
>
>  /* Defines for SPL */
>  #define CONFIG_SYS_SPL_MALLOC_START    0x00090000
> -#define CONFIG_SPL_STACK               0x000ffffc
>
>  /* Align LCD to 1MB boundary */
>  #define CONFIG_LCD_ALIGNMENT   MMU_SECTION_SIZE
> diff --git a/include/configs/tegra30-common.h b/include/configs/tegra30-common.h
> index b878b1a9e699..7107c06b9a7f 100644
> --- a/include/configs/tegra30-common.h
> +++ b/include/configs/tegra30-common.h
> @@ -52,7 +52,6 @@
>
>  /* Defines for SPL */
>  #define CONFIG_SYS_SPL_MALLOC_START    0x80090000
> -#define CONFIG_SPL_STACK               0x800ffffc
>
>  /* For USB EHCI controller */
>  #define CONFIG_USB_EHCI_TXFIFO_THRESH  0x10
> diff --git a/include/configs/theadorable.h b/include/configs/theadorable.h
> index 626261d0742f..e5e21ef3bbc9 100644
> --- a/include/configs/theadorable.h
> +++ b/include/configs/theadorable.h
> @@ -76,8 +76,6 @@
>
>  #define CONFIG_SPL_BSS_START_ADDR      (0x40000000 + (128 << 10))
>
> -#define CONFIG_SPL_STACK               (0x40000000 + ((192 - 16) << 10))
> -
>  /* Enable DDR support in SPL (DDR3 training from Marvell bin_hdr) */
>  #define CONFIG_SYS_SDRAM_SIZE          SZ_2G
>
> diff --git a/include/configs/ti_armv7_keystone2.h b/include/configs/ti_armv7_keystone2.h
> index b804bf3a716b..1cc593fdea29 100644
> --- a/include/configs/ti_armv7_keystone2.h
> +++ b/include/configs/ti_armv7_keystone2.h
> @@ -31,10 +31,6 @@
>                                         CONFIG_SPL_BSS_MAX_SIZE)
>  #define CONFIG_SYS_SPL_MALLOC_SIZE     (32 * 1024)
>  #define KEYSTONE_SPL_STACK_SIZE                (8 * 1024)
> -#define CONFIG_SPL_STACK               (CONFIG_SYS_SPL_MALLOC_START + \
> -                                       CONFIG_SYS_SPL_MALLOC_SIZE + \
> -                                       SPL_MALLOC_F_SIZE + \
> -                                       KEYSTONE_SPL_STACK_SIZE - 4)
>
>  /* SRAM scratch space entries  */
>  #define SRAM_SCRATCH_SPACE_ADDR                0xc0c23fc
> diff --git a/include/configs/turris_omnia.h b/include/configs/turris_omnia.h
> index 089828fa3d18..4dc27a31a4e5 100644
> --- a/include/configs/turris_omnia.h
> +++ b/include/configs/turris_omnia.h
> @@ -31,8 +31,6 @@
>
>  #define CONFIG_SPL_BSS_START_ADDR      (0x40000000 + CONFIG_SPL_SIZE)
>
> -#define CONFIG_SPL_STACK               (0x40000000 + ((192 - 16) << 10))
> -
>  #ifdef CONFIG_MVEBU_SPL_BOOT_DEVICE_MMC
>  /* SPL related MMC defines */
>  # ifdef CONFIG_SPL_BUILD
> diff --git a/include/configs/uniphier.h b/include/configs/uniphier.h
> index f5e096f38da5..6493569888d2 100644
> --- a/include/configs/uniphier.h
> +++ b/include/configs/uniphier.h
> @@ -174,7 +174,6 @@
>  #define CONFIG_SYS_BOOTMAPSZ                   0x20000000
>
>  /* only for SPL */
> -#define CONFIG_SPL_STACK               (0x00100000)
>
>  /* subtract sizeof(struct image_header) */
>  #define CONFIG_SYS_UBOOT_BASE                  (0x130000 - 0x40)
> diff --git a/include/configs/verdin-imx8mm.h b/include/configs/verdin-imx8mm.h
> index ef7ef022ce19..de796917820f 100644
> --- a/include/configs/verdin-imx8mm.h
> +++ b/include/configs/verdin-imx8mm.h
> @@ -16,7 +16,6 @@
>  #define CONFIG_SYS_BOOTM_LEN           SZ_64M
>
>  #ifdef CONFIG_SPL_BUILD
> -#define CONFIG_SPL_STACK               0x920000
>  #define CONFIG_SPL_BSS_START_ADDR      0x910000
>  #define CONFIG_SYS_SPL_MALLOC_START    0x42200000
>  #define CONFIG_SYS_SPL_MALLOC_SIZE     SZ_512K /* 512 KB */
> diff --git a/include/configs/verdin-imx8mp.h b/include/configs/verdin-imx8mp.h
> index daff4ccadfc6..e6eb986466cb 100644
> --- a/include/configs/verdin-imx8mp.h
> +++ b/include/configs/verdin-imx8mp.h
> @@ -15,7 +15,6 @@
>
>  #ifdef CONFIG_SPL_BUILD
>  /*#define CONFIG_ENABLE_DDR_TRAINING_DEBUG*/
> -#define CONFIG_SPL_STACK               0x960000
>  #define CONFIG_SPL_BSS_START_ADDR      0x0098fc00
>  #define CONFIG_SYS_SPL_MALLOC_START    0x42200000
>  #define CONFIG_SYS_SPL_MALLOC_SIZE     SZ_512K
> diff --git a/include/configs/work_92105.h b/include/configs/work_92105.h
> index 4df58c77bebb..8d1eee2fcac8 100644
> --- a/include/configs/work_92105.h
> +++ b/include/configs/work_92105.h
> @@ -60,7 +60,6 @@
>
>  /* SPL will be executed at offset 0 */
>  /* SPL will use SRAM as stack */
> -#define CONFIG_SPL_STACK     0x0000FFF8
>  /* Use the framework and generic lib */
>  /* SPL will use serial */
>  /* SPL will load U-Boot from NAND offset 0x40000 */
> diff --git a/include/configs/x530.h b/include/configs/x530.h
> index 601a7ee7d4f2..8b690cd9bf40 100644
> --- a/include/configs/x530.h
> +++ b/include/configs/x530.h
> @@ -71,6 +71,4 @@
>
>  #define CONFIG_SPL_BSS_START_ADDR      (0x40000000 + CONFIG_SPL_SIZE)
>
> -#define CONFIG_SPL_STACK               (0x40000000 + ((192 - 16) << 10))
> -
>  #endif /* _CONFIG_X530_H */
> diff --git a/include/configs/xea.h b/include/configs/xea.h
> index 01942eaf2ba5..07419f0afbbc 100644
> --- a/include/configs/xea.h
> +++ b/include/configs/xea.h
> @@ -15,7 +15,6 @@
>  #include <linux/sizes.h>
>
>  /* SPL */
> -#define CONFIG_SPL_STACK               0x20000
>
>  #define CONFIG_SYS_SPL_ARGS_ADDR       0x44000000
>
> diff --git a/include/configs/xilinx_zynqmp.h b/include/configs/xilinx_zynqmp.h
> index 725f3d29034f..9645f9cacbb4 100644
> --- a/include/configs/xilinx_zynqmp.h
> +++ b/include/configs/xilinx_zynqmp.h
> @@ -199,8 +199,6 @@
>         "dfu_bufsiz=0x1000\0"
>  #endif
>
> -#define CONFIG_SPL_STACK               0xfffffffc
> -
>  /* Just random location in OCM */
>  #define CONFIG_SPL_BSS_START_ADDR      0x0
>
> diff --git a/include/configs/zynq-common.h b/include/configs/zynq-common.h
> index 440e80c38034..a0e276bcc417 100644
> --- a/include/configs/zynq-common.h
> +++ b/include/configs/zynq-common.h
> @@ -237,7 +237,6 @@
>   * 0xfffffe00 is used for putting wfi loop.
>   * Set it up as limit for now.
>   */
> -#define CONFIG_SPL_STACK       0xfffffe00
>
>  /* BSS setup */
>  #define CONFIG_SPL_BSS_START_ADDR      0x100000
> --
> 2.25.1
>

^ permalink raw reply related	[flat|nested] 27+ messages in thread

* Re: [PATCH 01/20] Convert CONFIG_SPL_STACK to Kconfig
  2024-01-23  3:53 ` Kever Yang
@ 2024-01-23 17:58   ` Tom Rini
  2024-01-24  1:15     ` Kever Yang
  0 siblings, 1 reply; 27+ messages in thread
From: Tom Rini @ 2024-01-23 17:58 UTC (permalink / raw)
  To: Kever Yang; +Cc: u-boot

[-- Attachment #1: Type: text/plain, Size: 1015 bytes --]

On Tue, Jan 23, 2024 at 11:53:18AM +0800, Kever Yang wrote:

> Hi Tom,
> 
> rk3036 only has small size internal sram, so it can only use very
> simple SPL which only including dram init, and no SPL_FRAMEWORK
> support.
> In this convert, the CONFIG_SPL_STACK is lost for this SoC, any
> suggestions on this kind of issue?

Does this work?

diff --git a/common/spl/Kconfig b/common/spl/Kconfig
index e7b84fc1fa68..9deee0fdbea8 100644
--- a/common/spl/Kconfig
+++ b/common/spl/Kconfig
@@ -372,7 +372,8 @@ config SPL_SHARES_INIT_SP_ADDR
 
 config SPL_STACK
 	hex "Initial stack pointer location"
-	depends on (ARM || ARCH_JZ47XX || MICROBLAZE || RISCV) && SPL_FRAMEWORK
+	depends on (ARM || ARCH_JZ47XX || MICROBLAZE || RISCV) && \
+		SPL_FRAMEWORK || ROCKCHIP_RK3036
 	depends on !SPL_SHARES_INIT_SP_ADDR
 	default 0x946bb8 if ARCH_MX7
 	default 0x93ffb8 if ARCH_MX6 && MX6_OCRAM_256KB

You will have to update the ROCKCHIP_RK3036 platforms otherwise the
build will hang now.

-- 
Tom

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 659 bytes --]

^ permalink raw reply related	[flat|nested] 27+ messages in thread

* Re: [PATCH 01/20] Convert CONFIG_SPL_STACK to Kconfig
  2024-01-23 17:58   ` Tom Rini
@ 2024-01-24  1:15     ` Kever Yang
  2024-01-24  1:34       ` Tom Rini
  0 siblings, 1 reply; 27+ messages in thread
From: Kever Yang @ 2024-01-24  1:15 UTC (permalink / raw)
  To: Tom Rini; +Cc: u-boot

Hi Tom,

On 2024/1/24 01:58, Tom Rini wrote:
> On Tue, Jan 23, 2024 at 11:53:18AM +0800, Kever Yang wrote:
>
>> Hi Tom,
>>
>> rk3036 only has small size internal sram, so it can only use very
>> simple SPL which only including dram init, and no SPL_FRAMEWORK
>> support.
>> In this convert, the CONFIG_SPL_STACK is lost for this SoC, any
>> suggestions on this kind of issue?
> Does this work?
>
> diff --git a/common/spl/Kconfig b/common/spl/Kconfig
> index e7b84fc1fa68..9deee0fdbea8 100644
> --- a/common/spl/Kconfig
> +++ b/common/spl/Kconfig
> @@ -372,7 +372,8 @@ config SPL_SHARES_INIT_SP_ADDR
>   
>   config SPL_STACK
>   	hex "Initial stack pointer location"
> -	depends on (ARM || ARCH_JZ47XX || MICROBLAZE || RISCV) && SPL_FRAMEWORK
> +	depends on (ARM || ARCH_JZ47XX || MICROBLAZE || RISCV) && \
> +		SPL_FRAMEWORK || ROCKCHIP_RK3036
This works with adding CONFIG_SPL_STACK in rk3036 board defconfig.
>   	depends on !SPL_SHARES_INIT_SP_ADDR
>   	default 0x946bb8 if ARCH_MX7
>   	default 0x93ffb8 if ARCH_MX6 && MX6_OCRAM_256KB
>
> You will have to update the ROCKCHIP_RK3036 platforms otherwise the
> build will hang now.

What do you mean to update the platform?

The rk3036 case should be one of the available option for those 
"small"/low end SoCs has very limit

size of internal dram, only need minimal SPL+ U-Boot,  and no 
requirement for ATF/OPTEEwhich will have to use TPL+SPL+U-Boot.


The CONFIG_SPL_STACK is used in assemble init code, it doesn't need to 
depends on SPL_FRAMEWORK, isn't it?

Thanks,

- Kever

>

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [PATCH 01/20] Convert CONFIG_SPL_STACK to Kconfig
  2024-01-24  1:15     ` Kever Yang
@ 2024-01-24  1:34       ` Tom Rini
  2024-01-24  7:50         ` Kever Yang
  0 siblings, 1 reply; 27+ messages in thread
From: Tom Rini @ 2024-01-24  1:34 UTC (permalink / raw)
  To: Kever Yang; +Cc: u-boot

[-- Attachment #1: Type: text/plain, Size: 2036 bytes --]

On Wed, Jan 24, 2024 at 09:15:07AM +0800, Kever Yang wrote:
> Hi Tom,
> 
> On 2024/1/24 01:58, Tom Rini wrote:
> > On Tue, Jan 23, 2024 at 11:53:18AM +0800, Kever Yang wrote:
> > 
> > > Hi Tom,
> > > 
> > > rk3036 only has small size internal sram, so it can only use very
> > > simple SPL which only including dram init, and no SPL_FRAMEWORK
> > > support.
> > > In this convert, the CONFIG_SPL_STACK is lost for this SoC, any
> > > suggestions on this kind of issue?
> > Does this work?
> > 
> > diff --git a/common/spl/Kconfig b/common/spl/Kconfig
> > index e7b84fc1fa68..9deee0fdbea8 100644
> > --- a/common/spl/Kconfig
> > +++ b/common/spl/Kconfig
> > @@ -372,7 +372,8 @@ config SPL_SHARES_INIT_SP_ADDR
> >   config SPL_STACK
> >   	hex "Initial stack pointer location"
> > -	depends on (ARM || ARCH_JZ47XX || MICROBLAZE || RISCV) && SPL_FRAMEWORK
> > +	depends on (ARM || ARCH_JZ47XX || MICROBLAZE || RISCV) && \
> > +		SPL_FRAMEWORK || ROCKCHIP_RK3036
> This works with adding CONFIG_SPL_STACK in rk3036 board defconfig.
> >   	depends on !SPL_SHARES_INIT_SP_ADDR
> >   	default 0x946bb8 if ARCH_MX7
> >   	default 0x93ffb8 if ARCH_MX6 && MX6_OCRAM_256KB
> > 
> > You will have to update the ROCKCHIP_RK3036 platforms otherwise the
> > build will hang now.
> 
> What do you mean to update the platform?
> 
> The rk3036 case should be one of the available option for those "small"/low
> end SoCs has very limit
> 
> size of internal dram, only need minimal SPL+ U-Boot,  and no requirement
> for ATF/OPTEEwhich will have to use TPL+SPL+U-Boot.
> 
> 
> The CONFIG_SPL_STACK is used in assemble init code, it doesn't need to
> depends on SPL_FRAMEWORK, isn't it?

I just mean that with the above Kconfig change, all RK3036 platforms
must set a value for CONFIG_SPL_STACK at the same time, or they will
fail to build (and CI will get hung). It sounds like all RK3036
platforms need to set the value in order to work, so this isn't a bug,
just a feature. Is that clearer?

-- 
Tom

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 659 bytes --]

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [PATCH 01/20] Convert CONFIG_SPL_STACK to Kconfig
  2024-01-24  1:34       ` Tom Rini
@ 2024-01-24  7:50         ` Kever Yang
  0 siblings, 0 replies; 27+ messages in thread
From: Kever Yang @ 2024-01-24  7:50 UTC (permalink / raw)
  To: Tom Rini; +Cc: u-boot

Hi Tom,

On 2024/1/24 09:34, Tom Rini wrote:
> On Wed, Jan 24, 2024 at 09:15:07AM +0800, Kever Yang wrote:
>> Hi Tom,
>>
>> On 2024/1/24 01:58, Tom Rini wrote:
>>> On Tue, Jan 23, 2024 at 11:53:18AM +0800, Kever Yang wrote:
>>>
>>>> Hi Tom,
>>>>
>>>> rk3036 only has small size internal sram, so it can only use very
>>>> simple SPL which only including dram init, and no SPL_FRAMEWORK
>>>> support.
>>>> In this convert, the CONFIG_SPL_STACK is lost for this SoC, any
>>>> suggestions on this kind of issue?
>>> Does this work?
>>>
>>> diff --git a/common/spl/Kconfig b/common/spl/Kconfig
>>> index e7b84fc1fa68..9deee0fdbea8 100644
>>> --- a/common/spl/Kconfig
>>> +++ b/common/spl/Kconfig
>>> @@ -372,7 +372,8 @@ config SPL_SHARES_INIT_SP_ADDR
>>>    config SPL_STACK
>>>    	hex "Initial stack pointer location"
>>> -	depends on (ARM || ARCH_JZ47XX || MICROBLAZE || RISCV) && SPL_FRAMEWORK
>>> +	depends on (ARM || ARCH_JZ47XX || MICROBLAZE || RISCV) && \
>>> +		SPL_FRAMEWORK || ROCKCHIP_RK3036
>> This works with adding CONFIG_SPL_STACK in rk3036 board defconfig.
>>>    	depends on !SPL_SHARES_INIT_SP_ADDR
>>>    	default 0x946bb8 if ARCH_MX7
>>>    	default 0x93ffb8 if ARCH_MX6 && MX6_OCRAM_256KB
>>>
>>> You will have to update the ROCKCHIP_RK3036 platforms otherwise the
>>> build will hang now.
>> What do you mean to update the platform?
>>
>> The rk3036 case should be one of the available option for those "small"/low
>> end SoCs has very limit
>>
>> size of internal dram, only need minimal SPL+ U-Boot,  and no requirement
>> for ATF/OPTEEwhich will have to use TPL+SPL+U-Boot.
>>
>>
>> The CONFIG_SPL_STACK is used in assemble init code, it doesn't need to
>> depends on SPL_FRAMEWORK, isn't it?
> I just mean that with the above Kconfig change, all RK3036 platforms
> must set a value for CONFIG_SPL_STACK at the same time, or they will
> fail to build (and CI will get hung).

It doesn't hang because the build goes to another branch which not 
defined CONFIG_SPL_STACK,

the board get panic when it run the firmware.

> It sounds like all RK3036
> platforms need to set the value in order to work,

Yes, this is correct.

The init code doesn't define a correct SP, that should be a bug.


Thanks,
- Kever
> so this isn't a bug,
> just a feature. Is that clearer?
>

^ permalink raw reply	[flat|nested] 27+ messages in thread

end of thread, other threads:[~2024-01-24  7:51 UTC | newest]

Thread overview: 27+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-05-29 16:55 [PATCH 01/20] Convert CONFIG_SPL_STACK to Kconfig Tom Rini
2022-05-29 16:55 ` [PATCH 02/20] imx6: Update CONFIG_SPL_STACK defaults in Kconfig Tom Rini
2022-05-29 16:55 ` [PATCH 03/20] imx7: " Tom Rini
2022-05-29 16:55 ` [PATCH 04/20] Convert CONFIG_TPL_NAND_INIT to Kconfig Tom Rini
2022-05-29 16:55 ` [PATCH 05/20] Convert CONFIG_SPL_RELOC_TEXT_BASE et al " Tom Rini
2022-05-29 16:55 ` [PATCH 06/20] Convert CONFIG_SPL_BSS_START_ADDR " Tom Rini
2022-05-29 16:55 ` [PATCH 07/20] Convert CONFIG_SYS_SPL_MALLOC_SIZE et al " Tom Rini
2022-05-29 16:55 ` [PATCH 08/20] Remove CONFIG_SYS_SPL_LEN largely Tom Rini
2022-05-29 16:55 ` [PATCH 09/20] etamin: Remove CONFIG_SPL_CMT defines Tom Rini
2022-05-29 16:55 ` [PATCH 10/20] Convert CONFIG_SPL_GD_ADDR to Kconfig Tom Rini
2022-05-29 16:55 ` [PATCH 11/20] Drop CONFIG_SPL_SPI_FLASH_MINIMAL Tom Rini
2022-05-29 16:55 ` [PATCH 12/20] Remove CONFIG_SPL_STACK_SIZE Tom Rini
2022-05-29 16:55 ` [PATCH 13/20] Convert CONFIG_SPL_TARGET to Kconfig Tom Rini
2022-05-29 16:55 ` [PATCH 14/20] Convert CONFIG_SYS_SPL_ARGS_ADDR " Tom Rini
2022-05-29 16:55 ` [PATCH 15/20] ax25-ae350: Move CONFIG_SYS_FDT_BASE " Tom Rini
     [not found]   ` <HK0PR03MB29945ABCCE6928CEB0BA22A5C1DD9@HK0PR03MB2994.apcprd03.prod.outlook.com>
2022-06-02  1:14     ` Rick Chen
2022-05-29 16:55 ` [PATCH 16/20] Drop CONFIG_SPL_SIZE Tom Rini
2022-05-29 16:55 ` [PATCH 17/20] spl: Remove CONFIG_SPL_START_S_PATH and rework the logic behind it Tom Rini
2022-05-29 16:55 ` [PATCH 18/20] Convert CONFIG_SYS_NAND_SPL_KERNEL_OFFS to Kconfig Tom Rini
2022-05-29 16:55 ` [PATCH 19/20] Convert CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR et al " Tom Rini
2022-05-29 16:55 ` [PATCH 20/20] riotboard, syzygy_hub: Disable SPL_FALCON_BOOT_MMCSD Tom Rini
2022-06-06 21:36 ` [PATCH 01/20] Convert CONFIG_SPL_STACK to Kconfig Tom Rini
2024-01-23  3:53 ` Kever Yang
2024-01-23 17:58   ` Tom Rini
2024-01-24  1:15     ` Kever Yang
2024-01-24  1:34       ` Tom Rini
2024-01-24  7:50         ` Kever Yang

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.