u-boot.lists.denx.de archive mirror
 help / color / mirror / Atom feed
* [PATCH 00/45] vbe: Implement the full firmware flow
@ 2022-09-25 15:02 Simon Glass
  2022-09-25 15:02 ` [PATCH 01/45] Rename CONFIG_SYS_TEXT_BASE to CONFIG_TEXT_BASE Simon Glass
                   ` (44 more replies)
  0 siblings, 45 replies; 72+ messages in thread
From: Simon Glass @ 2022-09-25 15:02 UTC (permalink / raw)
  To: U-Boot Mailing List
  Cc: Tom Rini, Simon Glass, Alex Nemirovsky, Alexander Graf,
	Alexandre Vicenzi, Amjad Ouled-Ameur, Andre Przywara,
	Andrej Rosano, Biju Das, Dinh Nguyen, Dzmitry Sankouski,
	Eugeniy Paltsev, Frieder Schrempf, Giulio Benetti,
	Gregory CLEMENT, Heiko Stuebner, Heinrich Schuchardt, Huan Wang,
	Ilias Apalodimas, Jaehoon Chung, Jagan Teki, Jassi Brar,
	Jesse Taube, Lad Prabhakar, Lars Povlsen, Marcel Ziswiler,
	Martyn Welch, Mathew McBride, Matthias Brugger, Michal Simek,
	Mingming lee, Minkyu Kang, Nobuhiro Iwamatsu, Pali Rohár,
	Qiang Zhao, Ramon Fried, Rosy Song, SESA644425, Samuel Holland,
	Shengzhou Liu, Siddarth Gore, Stephan Gerhold, Tien Fong Chee,
	Tim Harvey, Vishnu Banavath, Vladimir Oltean, Walter Schweizer,
	Wasim Khan, Wills Wang, Zubair Lutfullah Kakakhel, u-boot

This series provides an implementation of VBE from TPL through to U-Boot
proper, using VBE to load the relevant firmware stages. It builds a single
image.bin file containing all the phases:

   TPL - initial phase, loads VPL using binman symbols
   VPL - main firmware phase, loads SPL using VBE parameters
   SPL - loads U-Boot proper using VBE parameters
   U-Boot - final firmware phase, where OS booting is processed

This series does not include the OS-booting phase. The previous series
included support for OS requests. The rest of it will be the subject of a
future series.

The implementation is entirely handled by sandbox. It should be possible
to enable this on a real board without much effort, but that is also the
subject of a future series.

Apart from future work, there is other one piece to be resolved. The
concept of a 'phase' is introduced into FIT configurations. Perhaps
instead this should be attached to an image, not a configuration,
since VPL should select the (only) configuration once, passing that
through to SPL to use as well? This would drop the need to verify
signatures, etc. in SPL.

This needs some more thought and investigation. Another idea is to use the
loadables feature with a list of images to load, e.g. loadables-vpl and
loadables-spl for the two phases.


Simon Glass (45):
  Rename CONFIG_SYS_TEXT_BASE to CONFIG_TEXT_BASE
  disk: Drop debug messages in part_efi
  bloblist: Drop debugging
  rsa: Avoid warning in padding_pss_verify()
  spl: Use binman suffix allow symbols of any SPL etype
  spl: Split up the board_init_r() function
  spl: Refactor controls for console output
  spl: Add a separate silence option for SPL
  CI: Install pyelftools for builds
  binman: Allow obtaining a symbol value
  binman: Split out looking up a symbol into a function
  binman: Handle writing ELF symbols in the Entry class
  binman: Support writing symbols into ELF files
  dm: blk: Add udevice functions
  dm: usb: Update the test to cover reading and writing
  dm: blk: mmc: Tidy up some Makefile rules for SPL
  dm: mmc: Allow sandbox emulator to build without writes
  sandbox: Drop message about writing sandbox state
  sandbox: Generalise SPL booting
  sandbox: Add a way to specify the sandbox executable
  bootstd: Add a way to set up a bootflow
  image: Move comment for fit_conf_find_compat()
  test: Report skippped tests
  test: Update tests to use the skip feature
  test: Support tests which can only be run manually
  image: Add the concept of a phase to FIT
  image: Allow loading a FIT config for a particular phase
  image: Correct strncpy() warning with image_set_name()
  vbe: Rename vbe_fixup to vbe_request
  vbe: Use a warning for a failed requests
  spl: Allow multiple loaders of the same type
  sandbox: Support obtaining the next phase from an image
  vbe: Support selecting operations by SPL phase
  vbe: Support reading the next SPL phase via VBE
  vbe: Move OS implementation into a separate file
  vbe: Drop the U-Boot prefix from the version
  vbe: Add Kconfig options for VPL
  vbe: Add info about the VBE device to the fwupd node
  sandbox: Add a binman image for VPL
  vbe: Correct pylint warnings in test_vbe
  vbe: Use a manual test
  vbe: Record which phases loaded using VBE
  vbe: Add docs and a test for the VBE command
  vbe: Add a subcommand to show the VBE state
  vbe: Add a test for the VBE flow into U-Boot proper

 .gitlab-ci.yml                                |   2 +
 Kconfig                                       |   2 +-
 Makefile                                      |  26 +--
 arch/arc/cpu/u-boot.lds                       |   2 +-
 arch/arm/Kconfig                              |   2 +-
 arch/arm/cpu/arm1176/start.S                  |   2 +-
 arch/arm/cpu/arm926ejs/mxs/Makefile           |   4 +-
 arch/arm/cpu/armv7/ls102xa/fdt.c              |   6 +-
 .../armv8/linux-kernel-image-header-vars.h    |   2 +-
 arch/arm/cpu/armv8/start.S                    |   2 +-
 .../dts/fsl-ls1028a-kontron-sl28-u-boot.dtsi  |   2 +-
 arch/arm/dts/imx8mm-u-boot.dtsi               |   2 +-
 arch/arm/dts/imx8mn-beacon-kit-u-boot.dtsi    |   2 +-
 .../dts/imx8mn-bsh-smm-s2-u-boot-common.dtsi  |   2 +-
 arch/arm/dts/imx8mn-ddr4-evk-u-boot.dtsi      |   2 +-
 arch/arm/dts/imx8mn-evk-u-boot.dtsi           |   2 +-
 .../dts/imx8mn-var-som-symphony-u-boot.dtsi   |   2 +-
 arch/arm/dts/imx8mn-venice-u-boot.dtsi        |   2 +-
 arch/arm/dts/imx8mp-u-boot.dtsi               |   2 +-
 arch/arm/dts/imx8mq-cm-u-boot.dtsi            |   2 +-
 arch/arm/dts/imx8mq-u-boot.dtsi               |   2 +-
 arch/arm/dts/rockchip-optee.dtsi              |   2 +-
 arch/arm/dts/sunxi-u-boot.dtsi                |   2 +-
 arch/arm/dts/tegra-u-boot.dtsi                |   2 +-
 arch/arm/include/asm/arch-mxs/sys_proto.h     |   2 +-
 arch/arm/include/asm/arch-sunxi/boot0.h       |   2 +-
 arch/arm/lib/crt0.S                           |   2 +-
 arch/arm/lib/relocate_64.S                    |   2 +-
 arch/arm/mach-apple/Kconfig                   |   4 +-
 arch/arm/mach-aspeed/Kconfig                  |   2 +-
 arch/arm/mach-at91/arm920t/lowlevel_init.S    |   4 +-
 arch/arm/mach-at91/arm926ejs/lowlevel_init.S  |   2 +-
 arch/arm/mach-exynos/spl_boot.c               |  10 +-
 arch/arm/mach-imx/Makefile                    |  10 +-
 arch/arm/mach-imx/imx8/cpu.c                  |   4 +-
 arch/arm/mach-imx/mx7/Kconfig                 |   2 +-
 arch/arm/mach-imx/spl.c                       |   2 +-
 arch/arm/mach-ipq40xx/Kconfig                 |   2 +-
 arch/arm/mach-k3/config_secure.mk             |   2 +-
 arch/arm/mach-k3/sysfw-loader.c               |   2 +-
 arch/arm/mach-keystone/config.mk              |   2 +-
 arch/arm/mach-nexell/include/mach/boot0.h     |   6 +-
 arch/arm/mach-npcm/Kconfig                    |   2 +-
 arch/arm/mach-octeontx/cpu.c                  |   2 +-
 arch/arm/mach-octeontx2/cpu.c                 |   2 +-
 arch/arm/mach-omap2/config_secure.mk          |   4 +-
 arch/arm/mach-owl/Kconfig                     |   2 +-
 arch/arm/mach-rockchip/Kconfig                |   2 +-
 arch/arm/mach-socfpga/Kconfig                 |   2 +-
 arch/arm/mach-stm32mp/Kconfig.13x             |   2 +-
 arch/arm/mach-stm32mp/Kconfig.15x             |   2 +-
 arch/arm/mach-sunxi/board.c                   |   2 +-
 arch/arm/mach-sunxi/spl_spi_sunxi.c           |   2 +-
 arch/arm/mach-zynqmp/mkimage_fit_atf.sh       |   2 +-
 arch/m68k/cpu/mcf52x2/start.S                 |  12 +-
 arch/m68k/cpu/mcf530x/start.S                 |   4 +-
 arch/m68k/cpu/mcf5445x/start.S                |  16 +-
 arch/microblaze/cpu/relocate.c                |   6 +-
 arch/microblaze/cpu/start.S                   |   8 +-
 arch/mips/mach-jz47xx/jz4780/jz4780.c         |   4 +-
 arch/mips/mach-mscc/lowlevel_init.S           |   2 +-
 arch/mips/mach-mtmips/Kconfig                 |   2 +-
 arch/powerpc/cpu/mpc85xx/cpu_init_early.c     |   4 +-
 arch/powerpc/cpu/mpc85xx/u-boot.lds           |   2 +-
 arch/powerpc/dts/kmcent2-u-boot.dtsi          |   4 +-
 arch/powerpc/dts/u-boot.dtsi                  |   4 +-
 arch/riscv/dts/binman.dtsi                    |   2 +-
 arch/sandbox/cpu/spl.c                        |  84 ++++++-
 arch/sandbox/cpu/start.c                      |  30 +++
 arch/sandbox/cpu/state.c                      |   2 +-
 arch/sandbox/dts/sandbox.dts                  |   7 +
 arch/sandbox/dts/sandbox_vpl.dtsi             |  78 +++++++
 arch/sandbox/dts/test.dts                     |  72 ++++--
 arch/sandbox/include/asm/spl.h                |   4 +
 arch/sandbox/include/asm/state.h              |   3 +-
 arch/sh/cpu/u-boot.lds                        |   2 +-
 arch/x86/Kconfig                              |   4 +-
 arch/x86/cpu/apollolake/spl.c                 |   2 +-
 arch/x86/cpu/quark/quark.c                    |   2 +-
 arch/x86/cpu/start.S                          |   6 +-
 arch/x86/cpu/u-boot-64.lds                    |   4 +-
 arch/x86/cpu/u-boot.lds                       |   2 +-
 arch/x86/lib/relocate.c                       |   6 +-
 arch/x86/lib/spl.c                            |   6 +-
 board/BuS/eb_cpu5282/eb_cpu5282.c             |   2 +-
 board/advantech/som-db5800-som-6867/Kconfig   |   2 +-
 board/armltd/vexpress64/Kconfig               |   4 +-
 board/beacon/beacon-rzg2m/beacon-rzg2m.c      |   2 +-
 board/broadcom/bcmstb/bcmstb.c                |   4 +-
 board/cobra5272/README                        |   8 +-
 board/congatec/cgtqmx8/cgtqmx8.c              |   2 +-
 .../congatec/conga-qeval20-qa3-e3845/Kconfig  |   2 +-
 board/coreboot/coreboot/Kconfig               |   2 +-
 board/cssi/MCR3000/Kconfig                    |   2 +-
 board/davinci/da8xxevm/README.da850           |   2 +-
 board/dfi/dfi-bt700/Kconfig                   |   2 +-
 board/efi/efi-x86_payload/Kconfig             |   2 +-
 board/emulation/qemu-arm/Kconfig              |   2 +-
 board/emulation/qemu-riscv/Kconfig            |   2 +-
 board/emulation/qemu-x86/Kconfig              |   2 +-
 .../freescale/imx8qm_mek/uboot-container.cfg  |   2 +-
 .../freescale/imx8qxp_mek/uboot-container.cfg |   2 +-
 board/freescale/ls1021atsn/ls1021atsn.c       |   2 +-
 board/freescale/ls1021atwr/ls1021atwr.c       |   2 +-
 board/freescale/ls1028a/Kconfig               |   4 +-
 board/google/chromebook_coral/Kconfig         |   2 +-
 board/google/chromebook_link/Kconfig          |   2 +-
 board/google/chromebook_samus/Kconfig         |   2 +-
 board/google/chromebox_panther/Kconfig        |   2 +-
 board/hoperun/hihope-rzg2/hihope-rzg2.c       |   2 +-
 board/hpe/gxp/Kconfig                         |   2 +-
 board/imgtec/boston/Kconfig                   |   2 +-
 board/imgtec/ci20/Kconfig                     |   2 +-
 board/imgtec/malta/Kconfig                    |   2 +-
 board/imgtec/xilfpga/Kconfig                  |   2 +-
 board/intel/bayleybay/Kconfig                 |   2 +-
 board/intel/cherryhill/Kconfig                |   2 +-
 board/intel/cougarcanyon2/Kconfig             |   2 +-
 board/intel/crownbay/Kconfig                  |   2 +-
 board/intel/edison/Kconfig                    |   2 +-
 board/intel/galileo/Kconfig                   |   2 +-
 board/intel/minnowmax/Kconfig                 |   2 +-
 board/intel/slimbootloader/Kconfig            |   2 +-
 board/keymile/common/common.c                 |   4 +-
 board/keymile/km_arm/km_arm.c                 |   2 +-
 board/kontron/sl28/Kconfig                    |   2 +-
 board/microchip/mpfs_icicle/Kconfig           |   2 +-
 board/microchip/pic32mzda/Kconfig             |   2 +-
 board/nokia/rx51/lowlevel_init.S              |   6 +-
 board/openpiton/riscv64/Kconfig               |   2 +-
 board/qca/ap121/Kconfig                       |   2 +-
 board/qca/ap143/Kconfig                       |   2 +-
 board/qca/ap152/Kconfig                       |   2 +-
 board/qualcomm/dragonboard820c/head.S         |   2 +-
 board/renesas/falcon/falcon.c                 |   2 +-
 board/siemens/capricorn/uboot-container.cfg   |   2 +-
 board/sifive/unleashed/Kconfig                |   2 +-
 board/sifive/unmatched/Kconfig                |   2 +-
 board/silinux/ek874/ek874.c                   |   2 +-
 board/sipeed/maix/Kconfig                     |   2 +-
 board/socrates/socrates.c                     |   2 +-
 board/synopsys/axs10x/headerize-axs.py        |   2 +-
 board/synopsys/hsdk/headerize-hsdk.py         |   2 +-
 board/ti/ks2_evm/board.c                      |   2 +-
 board/tplink/wdr4300/Kconfig                  |   2 +-
 board/tq/tqma6/Kconfig                        |   2 +-
 boot/Kconfig                                  | 156 ++++++++++++-
 boot/Makefile                                 |   4 +-
 boot/bootdev-uclass.c                         |   5 +-
 boot/bootflow.c                               |   9 +
 boot/bootmeth-uclass.c                        |   5 +-
 boot/image-fit.c                              | 110 ++++++----
 boot/image.c                                  |  18 ++
 boot/{vbe_fixup.c => vbe_request.c}           |   8 +-
 boot/vbe_simple.c                             | 142 +++---------
 boot/vbe_simple.h                             |  71 ++++++
 boot/vbe_simple_fw.c                          | 206 ++++++++++++++++++
 boot/vbe_simple_os.c                          | 104 +++++++++
 cmd/sf.c                                      |   2 +-
 cmd/vbe.c                                     |  30 ++-
 common/Kconfig                                |  22 ++
 common/autoboot.c                             |   8 +-
 common/bloblist.c                             |   1 -
 common/board_f.c                              |  10 +-
 common/board_r.c                              |   2 +-
 common/spl/Kconfig.vpl                        |  33 +++
 common/spl/spl.c                              | 157 ++++++++-----
 common/spl/spl_atf.c                          |   2 +-
 common/spl/spl_nand.c                         |   6 +-
 common/spl/spl_optee.S                        |   2 +-
 configs/M5208EVBE_defconfig                   |   2 +-
 configs/M5235EVB_Flash32_defconfig            |   2 +-
 configs/M5235EVB_defconfig                    |   2 +-
 configs/M5249EVB_defconfig                    |   2 +-
 configs/M5253DEMO_defconfig                   |   2 +-
 configs/M5272C3_defconfig                     |   2 +-
 configs/M5275EVB_defconfig                    |   2 +-
 configs/M5282EVB_defconfig                    |   2 +-
 configs/M53017EVB_defconfig                   |   2 +-
 configs/M5329AFEE_defconfig                   |   2 +-
 configs/M5329BFEE_defconfig                   |   2 +-
 configs/M5373EVB_defconfig                    |   2 +-
 configs/MCR3000_defconfig                     |   2 +-
 configs/MPC837XERDB_defconfig                 |   2 +-
 configs/MPC8548CDS_36BIT_defconfig            |   2 +-
 configs/MPC8548CDS_defconfig                  |   2 +-
 configs/MPC8548CDS_legacy_defconfig           |   2 +-
 configs/P1010RDB-PA_36BIT_NAND_defconfig      |   2 +-
 configs/P1010RDB-PA_36BIT_NOR_defconfig       |   2 +-
 configs/P1010RDB-PA_36BIT_SDCARD_defconfig    |   2 +-
 configs/P1010RDB-PA_36BIT_SPIFLASH_defconfig  |   2 +-
 configs/P1010RDB-PA_NAND_defconfig            |   2 +-
 configs/P1010RDB-PA_NOR_defconfig             |   2 +-
 configs/P1010RDB-PA_SDCARD_defconfig          |   2 +-
 configs/P1010RDB-PA_SPIFLASH_defconfig        |   2 +-
 configs/P1010RDB-PB_36BIT_NAND_defconfig      |   2 +-
 configs/P1010RDB-PB_36BIT_NOR_defconfig       |   2 +-
 configs/P1010RDB-PB_36BIT_SDCARD_defconfig    |   2 +-
 configs/P1010RDB-PB_36BIT_SPIFLASH_defconfig  |   2 +-
 configs/P1010RDB-PB_NAND_defconfig            |   2 +-
 configs/P1010RDB-PB_NOR_defconfig             |   2 +-
 configs/P1010RDB-PB_SDCARD_defconfig          |   2 +-
 configs/P1010RDB-PB_SPIFLASH_defconfig        |   2 +-
 configs/P1020RDB-PC_36BIT_NAND_defconfig      |   2 +-
 configs/P1020RDB-PC_36BIT_SDCARD_defconfig    |   2 +-
 configs/P1020RDB-PC_36BIT_SPIFLASH_defconfig  |   2 +-
 configs/P1020RDB-PC_36BIT_defconfig           |   2 +-
 configs/P1020RDB-PC_NAND_defconfig            |   2 +-
 configs/P1020RDB-PC_SDCARD_defconfig          |   2 +-
 configs/P1020RDB-PC_SPIFLASH_defconfig        |   2 +-
 configs/P1020RDB-PC_defconfig                 |   2 +-
 configs/P1020RDB-PD_NAND_defconfig            |   2 +-
 configs/P1020RDB-PD_SDCARD_defconfig          |   2 +-
 configs/P1020RDB-PD_SPIFLASH_defconfig        |   2 +-
 configs/P1020RDB-PD_defconfig                 |   2 +-
 configs/P2020RDB-PC_36BIT_NAND_defconfig      |   2 +-
 configs/P2020RDB-PC_36BIT_SDCARD_defconfig    |   2 +-
 configs/P2020RDB-PC_36BIT_SPIFLASH_defconfig  |   2 +-
 configs/P2020RDB-PC_36BIT_defconfig           |   2 +-
 configs/P2020RDB-PC_NAND_defconfig            |   2 +-
 configs/P2020RDB-PC_SDCARD_defconfig          |   2 +-
 configs/P2020RDB-PC_SPIFLASH_defconfig        |   2 +-
 configs/P2020RDB-PC_defconfig                 |   2 +-
 configs/P2041RDB_NAND_defconfig               |   2 +-
 configs/P2041RDB_SDCARD_defconfig             |   2 +-
 configs/P2041RDB_SPIFLASH_defconfig           |   2 +-
 configs/P2041RDB_defconfig                    |   2 +-
 configs/SBx81LIFKW_defconfig                  |   2 +-
 configs/SBx81LIFXCAT_defconfig                |   2 +-
 configs/T1024RDB_NAND_defconfig               |   2 +-
 configs/T1024RDB_SDCARD_defconfig             |   2 +-
 configs/T1024RDB_SPIFLASH_defconfig           |   2 +-
 configs/T1024RDB_defconfig                    |   2 +-
 configs/T1042D4RDB_NAND_defconfig             |   2 +-
 configs/T1042D4RDB_SDCARD_defconfig           |   2 +-
 configs/T1042D4RDB_SPIFLASH_defconfig         |   2 +-
 configs/T1042D4RDB_defconfig                  |   2 +-
 configs/T2080QDS_NAND_defconfig               |   2 +-
 configs/T2080QDS_SDCARD_defconfig             |   2 +-
 configs/T2080QDS_SECURE_BOOT_defconfig        |   2 +-
 configs/T2080QDS_SPIFLASH_defconfig           |   2 +-
 configs/T2080QDS_SRIO_PCIE_BOOT_defconfig     |   2 +-
 configs/T2080QDS_defconfig                    |   2 +-
 configs/T2080RDB_NAND_defconfig               |   2 +-
 configs/T2080RDB_SDCARD_defconfig             |   2 +-
 configs/T2080RDB_SPIFLASH_defconfig           |   2 +-
 configs/T2080RDB_defconfig                    |   2 +-
 configs/T2080RDB_revD_NAND_defconfig          |   2 +-
 configs/T2080RDB_revD_SDCARD_defconfig        |   2 +-
 configs/T2080RDB_revD_SPIFLASH_defconfig      |   2 +-
 configs/T2080RDB_revD_defconfig               |   2 +-
 configs/T4240RDB_SDCARD_defconfig             |   2 +-
 configs/T4240RDB_defconfig                    |   2 +-
 configs/a3y17lte_defconfig                    |   2 +-
 configs/a5y17lte_defconfig                    |   2 +-
 configs/a7y17lte_defconfig                    |   2 +-
 configs/ae350_rv32_defconfig                  |   2 +-
 configs/ae350_rv32_spl_defconfig              |   2 +-
 configs/ae350_rv32_spl_xip_defconfig          |   2 +-
 configs/ae350_rv32_xip_defconfig              |   2 +-
 configs/ae350_rv64_defconfig                  |   2 +-
 configs/ae350_rv64_spl_defconfig              |   2 +-
 configs/ae350_rv64_spl_xip_defconfig          |   2 +-
 configs/ae350_rv64_xip_defconfig              |   2 +-
 configs/alt_defconfig                         |   2 +-
 configs/am3517_evm_defconfig                  |   2 +-
 configs/am43xx_evm_qspiboot_defconfig         |   2 +-
 configs/amcore_defconfig                      |   2 +-
 configs/ap121_defconfig                       |   2 +-
 configs/ap143_defconfig                       |   2 +-
 configs/ap152_defconfig                       |   2 +-
 configs/apalis-imx8_defconfig                 |   2 +-
 configs/apalis-tk1_defconfig                  |   2 +-
 configs/apalis_imx6_defconfig                 |   2 +-
 configs/apalis_t30_defconfig                  |   2 +-
 configs/aristainetos2c_defconfig              |   2 +-
 configs/aristainetos2ccslb_defconfig          |   2 +-
 configs/arndale_defconfig                     |   2 +-
 configs/astro_mcf5373l_defconfig              |   2 +-
 configs/at91sam9260ek_dataflash_cs0_defconfig |   2 +-
 configs/at91sam9260ek_dataflash_cs1_defconfig |   2 +-
 configs/at91sam9260ek_nandflash_defconfig     |   2 +-
 configs/at91sam9261ek_dataflash_cs0_defconfig |   2 +-
 configs/at91sam9261ek_dataflash_cs3_defconfig |   2 +-
 configs/at91sam9261ek_nandflash_defconfig     |   2 +-
 configs/at91sam9263ek_dataflash_cs0_defconfig |   2 +-
 configs/at91sam9263ek_dataflash_defconfig     |   2 +-
 configs/at91sam9263ek_nandflash_defconfig     |   2 +-
 configs/at91sam9263ek_norflash_boot_defconfig |   2 +-
 configs/at91sam9263ek_norflash_defconfig      |   2 +-
 configs/at91sam9g10ek_dataflash_cs0_defconfig |   2 +-
 configs/at91sam9g10ek_dataflash_cs3_defconfig |   2 +-
 configs/at91sam9g10ek_nandflash_defconfig     |   2 +-
 configs/at91sam9g20ek_2mmc_defconfig          |   2 +-
 .../at91sam9g20ek_2mmc_nandflash_defconfig    |   2 +-
 configs/at91sam9g20ek_dataflash_cs0_defconfig |   2 +-
 configs/at91sam9g20ek_dataflash_cs1_defconfig |   2 +-
 configs/at91sam9g20ek_nandflash_defconfig     |   2 +-
 configs/at91sam9m10g45ek_mmc_defconfig        |   2 +-
 configs/at91sam9m10g45ek_nandflash_defconfig  |   2 +-
 configs/at91sam9n12ek_mmc_defconfig           |   2 +-
 configs/at91sam9n12ek_nandflash_defconfig     |   2 +-
 configs/at91sam9n12ek_spiflash_defconfig      |   2 +-
 configs/at91sam9rlek_dataflash_defconfig      |   2 +-
 configs/at91sam9rlek_mmc_defconfig            |   2 +-
 configs/at91sam9rlek_nandflash_defconfig      |   2 +-
 configs/at91sam9x5ek_dataflash_defconfig      |   2 +-
 configs/at91sam9x5ek_mmc_defconfig            |   2 +-
 configs/at91sam9x5ek_nandflash_defconfig      |   2 +-
 configs/at91sam9x5ek_spiflash_defconfig       |   2 +-
 configs/at91sam9xeek_dataflash_cs0_defconfig  |   2 +-
 configs/at91sam9xeek_dataflash_cs1_defconfig  |   2 +-
 configs/at91sam9xeek_nandflash_defconfig      |   2 +-
 ...edev_cc_v1_0_ultrazedev_som_v1_0_defconfig |   2 +-
 configs/axm_defconfig                         |   2 +-
 configs/axs101_defconfig                      |   2 +-
 configs/axs103_defconfig                      |   2 +-
 configs/bananapi-m5_defconfig                 |   2 +-
 configs/bayleybay_defconfig                   |   2 +-
 configs/bcm7260_defconfig                     |   2 +-
 configs/bcm7445_defconfig                     |   2 +-
 configs/bcm947622_defconfig                   |   2 +-
 configs/bcm963158_ram_defconfig               |   2 +-
 configs/bcm96753ref_ram_defconfig             |   2 +-
 configs/bcm968360bg_ram_defconfig             |   2 +-
 configs/bcm968380gerg_ram_defconfig           |   2 +-
 configs/bcm968580xref_ram_defconfig           |   2 +-
 configs/bcm_ns3_defconfig                     |   2 +-
 configs/beaver_defconfig                      |   2 +-
 configs/beelink-gsking-x_defconfig            |   2 +-
 configs/beelink-gtking_defconfig              |   2 +-
 configs/beelink-gtkingpro_defconfig           |   2 +-
 configs/bitmain_antminer_s9_defconfig         |   2 +-
 configs/bk4r1_defconfig                       |   2 +-
 configs/blanche_defconfig                     |   2 +-
 configs/boston32r2_defconfig                  |   2 +-
 configs/boston32r2el_defconfig                |   2 +-
 configs/boston32r6_defconfig                  |   2 +-
 configs/boston32r6el_defconfig                |   2 +-
 configs/boston64r2_defconfig                  |   2 +-
 configs/boston64r2el_defconfig                |   2 +-
 configs/boston64r6_defconfig                  |   2 +-
 configs/boston64r6el_defconfig                |   2 +-
 configs/brppt2_defconfig                      |   2 +-
 configs/cardhu_defconfig                      |   2 +-
 configs/cei-tk1-som_defconfig                 |   2 +-
 configs/cgtqmx8_defconfig                     |   2 +-
 configs/cherryhill_defconfig                  |   2 +-
 configs/chromebit_mickey_defconfig            |   2 +-
 configs/chromebook_bob_defconfig              |   2 +-
 configs/chromebook_coral_defconfig            |   2 +-
 configs/chromebook_jerry_defconfig            |   2 +-
 configs/chromebook_kevin_defconfig            |   2 +-
 configs/chromebook_link_defconfig             |   2 +-
 configs/chromebook_minnie_defconfig           |   2 +-
 configs/chromebook_samus_defconfig            |   2 +-
 configs/chromebook_samus_tpl_defconfig        |   2 +-
 configs/chromebook_speedy_defconfig           |   2 +-
 configs/chromebox_panther_defconfig           |   2 +-
 configs/ci20_mmc_defconfig                    |   2 +-
 configs/clearfog_defconfig                    |   2 +-
 configs/clearfog_gt_8k_defconfig              |   2 +-
 configs/cm_fx6_defconfig                      |   2 +-
 configs/cobra5272_defconfig                   |   2 +-
 configs/colibri-imx6ull-emmc_defconfig        |   2 +-
 configs/colibri-imx6ull_defconfig             |   2 +-
 configs/colibri-imx8x_defconfig               |   2 +-
 configs/colibri_imx6_defconfig                |   2 +-
 configs/colibri_t20_defconfig                 |   2 +-
 configs/colibri_t30_defconfig                 |   2 +-
 configs/colibri_vf_defconfig                  |   2 +-
 configs/comtrend_ar5315u_ram_defconfig        |   2 +-
 configs/comtrend_ar5387un_ram_defconfig       |   2 +-
 configs/comtrend_ct5361_ram_defconfig         |   2 +-
 configs/comtrend_vr3032u_ram_defconfig        |   2 +-
 configs/comtrend_wap5813n_ram_defconfig       |   2 +-
 ...-qeval20-qa3-e3845-internal-uart_defconfig |   2 +-
 configs/conga-qeval20-qa3-e3845_defconfig     |   2 +-
 configs/controlcenterdc_defconfig             |   2 +-
 configs/coreboot64_defconfig                  |   2 +-
 configs/coreboot_defconfig                    |   2 +-
 configs/corstone1000_defconfig                |   2 +-
 configs/cortina_presidio-asic-base_defconfig  |   2 +-
 configs/cortina_presidio-asic-emmc_defconfig  |   2 +-
 configs/cortina_presidio-asic-pnand_defconfig |   2 +-
 configs/corvus_defconfig                      |   2 +-
 configs/cougarcanyon2_defconfig               |   2 +-
 configs/crownbay_defconfig                    |   2 +-
 configs/crs305-1g-4s-bit_defconfig            |   2 +-
 configs/crs305-1g-4s_defconfig                |   2 +-
 configs/crs326-24g-2s-bit_defconfig           |   2 +-
 configs/crs326-24g-2s_defconfig               |   2 +-
 configs/crs328-4c-20s-4s-bit_defconfig        |   2 +-
 configs/crs328-4c-20s-4s_defconfig            |   2 +-
 configs/d2net_v2_defconfig                    |   2 +-
 configs/da850evm_defconfig                    |   2 +-
 configs/da850evm_direct_nor_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/db-xc3-24g4xg_defconfig               |   2 +-
 configs/deneb_defconfig                       |   2 +-
 configs/devkit3250_defconfig                  |   2 +-
 configs/devkit8000_defconfig                  |   2 +-
 configs/dfi-bt700-q7x-151_defconfig           |   2 +-
 configs/dh_imx6_defconfig                     |   2 +-
 configs/display5_defconfig                    |   2 +-
 configs/display5_factory_defconfig            |   2 +-
 configs/dns325_defconfig                      |   2 +-
 configs/dockstar_defconfig                    |   2 +-
 configs/draco_defconfig                       |   2 +-
 configs/dragonboard410c_defconfig             |   2 +-
 configs/dragonboard820c_defconfig             |   2 +-
 configs/dreamplug_defconfig                   |   2 +-
 configs/ds109_defconfig                       |   2 +-
 configs/ds414_defconfig                       |   2 +-
 configs/durian_defconfig                      |   2 +-
 configs/eDPU_defconfig                        |   2 +-
 configs/ea-lpc3250devkitv2_defconfig          |   2 +-
 configs/eb_cpu5282_defconfig                  |   2 +-
 configs/eb_cpu5282_internal_defconfig         |   2 +-
 configs/edison_defconfig                      |   2 +-
 configs/elgin-rv1108_defconfig                |   2 +-
 configs/emsdp_defconfig                       |   2 +-
 configs/espresso7420_defconfig                |   2 +-
 configs/etamin_defconfig                      |   2 +-
 configs/ethernut5_defconfig                   |   2 +-
 configs/ev-imx280-nano-x-mb_defconfig         |   2 +-
 configs/evb-ast2500_defconfig                 |   2 +-
 configs/evb-ast2600_defconfig                 |   2 +-
 configs/evb-px30_defconfig                    |   2 +-
 configs/evb-px5_defconfig                     |   2 +-
 configs/evb-rk3036_defconfig                  |   2 +-
 configs/evb-rk3128_defconfig                  |   2 +-
 configs/evb-rk3229_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/evb-rv1108_defconfig                  |   2 +-
 configs/ficus-rk3399_defconfig                |   2 +-
 configs/firefly-px30_defconfig                |   2 +-
 configs/firefly-rk3288_defconfig              |   2 +-
 configs/firefly-rk3399_defconfig              |   2 +-
 configs/galileo_defconfig                     |   2 +-
 .../gardena-smart-gateway-at91sam_defconfig   |   2 +-
 configs/gazerbeam_defconfig                   |   2 +-
 configs/ge_b1x5v2_defconfig                   |   2 +-
 configs/ge_bx50v3_defconfig                   |   2 +-
 configs/geekbox_defconfig                     |   2 +-
 configs/giedi_defconfig                       |   2 +-
 configs/goflexhome_defconfig                  |   2 +-
 configs/gose_defconfig                        |   2 +-
 configs/grpeach_defconfig                     |   2 +-
 configs/gurnard_defconfig                     |   2 +-
 configs/guruplug_defconfig                    |   2 +-
 configs/gwventana_emmc_defconfig              |   2 +-
 configs/gwventana_gw5904_defconfig            |   2 +-
 configs/gwventana_nand_defconfig              |   2 +-
 configs/harmony_defconfig                     |   2 +-
 configs/helios4_defconfig                     |   2 +-
 configs/highbank_defconfig                    |   2 +-
 configs/hihope_rzg2_defconfig                 |   2 +-
 configs/hikey960_defconfig                    |   2 +-
 configs/hikey_defconfig                       |   2 +-
 configs/hsdk_4xd_defconfig                    |   2 +-
 configs/hsdk_defconfig                        |   2 +-
 configs/huawei_hg556a_ram_defconfig           |   2 +-
 configs/ib62x0_defconfig                      |   2 +-
 configs/iconnect_defconfig                    |   2 +-
 configs/imx28_xea_defconfig                   |   2 +-
 configs/imx28_xea_sb_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/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_evk_fspi_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/imx93_11x11_evk_defconfig             |   2 +-
 configs/imxrt1020-evk_defconfig               |   2 +-
 configs/imxrt1050-evk_defconfig               |   2 +-
 configs/inetspace_v2_defconfig                |   2 +-
 configs/integratorap_cm720t_defconfig         |   2 +-
 configs/integratorap_cm920t_defconfig         |   2 +-
 configs/integratorap_cm926ejs_defconfig       |   2 +-
 configs/integratorap_cm946es_defconfig        |   2 +-
 configs/integratorcp_cm1136_defconfig         |   2 +-
 configs/integratorcp_cm920t_defconfig         |   2 +-
 configs/integratorcp_cm926ejs_defconfig       |   2 +-
 configs/integratorcp_cm946es_defconfig        |   2 +-
 configs/iot_devkit_defconfig                  |   2 +-
 configs/jethub_j100_defconfig                 |   2 +-
 configs/jethub_j80_defconfig                  |   2 +-
 configs/jetson-tk1_defconfig                  |   2 +-
 configs/k2e_evm_defconfig                     |   2 +-
 configs/k2e_hs_evm_defconfig                  |   2 +-
 configs/k2g_evm_defconfig                     |   2 +-
 configs/k2g_hs_evm_defconfig                  |   2 +-
 configs/k2hk_evm_defconfig                    |   2 +-
 configs/k2hk_hs_evm_defconfig                 |   2 +-
 configs/k2l_evm_defconfig                     |   2 +-
 configs/k2l_hs_evm_defconfig                  |   2 +-
 configs/khadas-edge-captain-rk3399_defconfig  |   2 +-
 configs/khadas-edge-rk3399_defconfig          |   2 +-
 configs/khadas-edge-v-rk3399_defconfig        |   2 +-
 configs/khadas-vim2_defconfig                 |   2 +-
 configs/khadas-vim3_android_ab_defconfig      |   2 +-
 configs/khadas-vim3_android_defconfig         |   2 +-
 configs/khadas-vim3_defconfig                 |   2 +-
 configs/khadas-vim3l_android_ab_defconfig     |   2 +-
 configs/khadas-vim3l_android_defconfig        |   2 +-
 configs/khadas-vim3l_defconfig                |   2 +-
 configs/khadas-vim_defconfig                  |   2 +-
 configs/km_kirkwood_128m16_defconfig          |   2 +-
 configs/km_kirkwood_defconfig                 |   2 +-
 configs/km_kirkwood_pci_defconfig             |   2 +-
 configs/kmcent2_defconfig                     |   2 +-
 configs/kmcoge5ne_defconfig                   |   2 +-
 configs/kmcoge5un_defconfig                   |   2 +-
 configs/kmeter1_defconfig                     |   2 +-
 configs/kmnusa_defconfig                      |   2 +-
 configs/kmopti2_defconfig                     |   2 +-
 configs/kmsupx5_defconfig                     |   2 +-
 configs/kmsuse2_defconfig                     |   2 +-
 configs/kmtepr2_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/kp_imx53_defconfig                    |   2 +-
 configs/kp_imx6q_tpc_defconfig                |   2 +-
 configs/kylin-rk3036_defconfig                |   2 +-
 configs/lager_defconfig                       |   2 +-
 configs/leez-rk3399_defconfig                 |   2 +-
 configs/legoev3_defconfig                     |   2 +-
 configs/libretech-ac_defconfig                |   2 +-
 configs/libretech-cc_defconfig                |   2 +-
 configs/libretech-cc_v2_defconfig             |   2 +-
 configs/libretech-s905d-pc_defconfig          |   2 +-
 configs/libretech-s912-pc_defconfig           |   2 +-
 configs/lion-rk3368_defconfig                 |   2 +-
 configs/liteboard_defconfig                   |   2 +-
 configs/ls1012a2g5rdb_qspi_defconfig          |   2 +-
 configs/ls1012a2g5rdb_tfa_defconfig           |   2 +-
 configs/ls1012afrdm_qspi_defconfig            |   2 +-
 configs/ls1012afrdm_tfa_defconfig             |   2 +-
 .../ls1012afrwy_qspi_SECURE_BOOT_defconfig    |   2 +-
 configs/ls1012afrwy_qspi_defconfig            |   2 +-
 configs/ls1012afrwy_tfa_SECURE_BOOT_defconfig |   2 +-
 configs/ls1012afrwy_tfa_defconfig             |   2 +-
 configs/ls1012aqds_qspi_defconfig             |   2 +-
 configs/ls1012aqds_tfa_SECURE_BOOT_defconfig  |   2 +-
 configs/ls1012aqds_tfa_defconfig              |   2 +-
 configs/ls1012ardb_qspi_SECURE_BOOT_defconfig |   2 +-
 configs/ls1012ardb_qspi_defconfig             |   2 +-
 configs/ls1012ardb_tfa_SECURE_BOOT_defconfig  |   2 +-
 configs/ls1012ardb_tfa_defconfig              |   2 +-
 configs/ls1021aiot_qspi_defconfig             |   2 +-
 configs/ls1021aiot_sdcard_defconfig           |   2 +-
 configs/ls1021aqds_ddr4_nor_defconfig         |   2 +-
 configs/ls1021aqds_ddr4_nor_lpuart_defconfig  |   2 +-
 configs/ls1021aqds_nand_defconfig             |   2 +-
 configs/ls1021aqds_nor_SECURE_BOOT_defconfig  |   2 +-
 configs/ls1021aqds_nor_defconfig              |   2 +-
 configs/ls1021aqds_nor_lpuart_defconfig       |   2 +-
 configs/ls1021aqds_qspi_defconfig             |   2 +-
 configs/ls1021aqds_sdcard_ifc_defconfig       |   2 +-
 configs/ls1021aqds_sdcard_qspi_defconfig      |   2 +-
 configs/ls1021atsn_qspi_defconfig             |   2 +-
 configs/ls1021atsn_sdcard_defconfig           |   2 +-
 configs/ls1021atwr_nor_SECURE_BOOT_defconfig  |   2 +-
 configs/ls1021atwr_nor_defconfig              |   2 +-
 configs/ls1021atwr_nor_lpuart_defconfig       |   2 +-
 configs/ls1021atwr_qspi_defconfig             |   2 +-
 ...s1021atwr_sdcard_ifc_SECURE_BOOT_defconfig |   2 +-
 configs/ls1021atwr_sdcard_ifc_defconfig       |   2 +-
 configs/ls1021atwr_sdcard_qspi_defconfig      |   2 +-
 configs/ls1043aqds_defconfig                  |   2 +-
 configs/ls1043aqds_lpuart_defconfig           |   2 +-
 configs/ls1043aqds_nand_defconfig             |   2 +-
 configs/ls1043aqds_nor_ddr3_defconfig         |   2 +-
 configs/ls1043aqds_qspi_defconfig             |   2 +-
 configs/ls1043aqds_sdcard_ifc_defconfig       |   2 +-
 configs/ls1043aqds_sdcard_qspi_defconfig      |   2 +-
 configs/ls1043aqds_tfa_SECURE_BOOT_defconfig  |   2 +-
 configs/ls1043aqds_tfa_defconfig              |   2 +-
 configs/ls1043ardb_SECURE_BOOT_defconfig      |   2 +-
 configs/ls1043ardb_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/ls1043ardb_tfa_SECURE_BOOT_defconfig  |   2 +-
 configs/ls1043ardb_tfa_defconfig              |   2 +-
 configs/ls1046afrwy_tfa_SECURE_BOOT_defconfig |   2 +-
 configs/ls1046afrwy_tfa_defconfig             |   2 +-
 configs/ls1046aqds_SECURE_BOOT_defconfig      |   2 +-
 configs/ls1046aqds_defconfig                  |   2 +-
 configs/ls1046aqds_lpuart_defconfig           |   2 +-
 configs/ls1046aqds_nand_defconfig             |   2 +-
 configs/ls1046aqds_qspi_defconfig             |   2 +-
 configs/ls1046aqds_sdcard_ifc_defconfig       |   2 +-
 configs/ls1046aqds_sdcard_qspi_defconfig      |   2 +-
 configs/ls1046aqds_tfa_SECURE_BOOT_defconfig  |   2 +-
 configs/ls1046aqds_tfa_defconfig              |   2 +-
 configs/ls1046ardb_emmc_defconfig             |   2 +-
 configs/ls1046ardb_qspi_SECURE_BOOT_defconfig |   2 +-
 configs/ls1046ardb_qspi_defconfig             |   2 +-
 configs/ls1046ardb_qspi_spl_defconfig         |   2 +-
 .../ls1046ardb_sdcard_SECURE_BOOT_defconfig   |   2 +-
 configs/ls1046ardb_sdcard_defconfig           |   2 +-
 configs/ls1046ardb_tfa_SECURE_BOOT_defconfig  |   2 +-
 configs/ls1046ardb_tfa_defconfig              |   2 +-
 configs/ls1088aqds_defconfig                  |   2 +-
 configs/ls1088aqds_qspi_SECURE_BOOT_defconfig |   2 +-
 configs/ls1088aqds_qspi_defconfig             |   2 +-
 configs/ls1088aqds_sdcard_ifc_defconfig       |   2 +-
 configs/ls1088aqds_sdcard_qspi_defconfig      |   2 +-
 configs/ls1088aqds_tfa_defconfig              |   2 +-
 configs/ls1088ardb_qspi_SECURE_BOOT_defconfig |   2 +-
 configs/ls1088ardb_qspi_defconfig             |   2 +-
 ...1088ardb_sdcard_qspi_SECURE_BOOT_defconfig |   2 +-
 configs/ls1088ardb_sdcard_qspi_defconfig      |   2 +-
 configs/ls1088ardb_tfa_SECURE_BOOT_defconfig  |   2 +-
 configs/ls1088ardb_tfa_defconfig              |   2 +-
 configs/ls2080aqds_SECURE_BOOT_defconfig      |   2 +-
 configs/ls2080aqds_defconfig                  |   2 +-
 configs/ls2080aqds_nand_defconfig             |   2 +-
 configs/ls2080aqds_qspi_defconfig             |   2 +-
 configs/ls2080aqds_sdcard_defconfig           |   2 +-
 configs/ls2080ardb_SECURE_BOOT_defconfig      |   2 +-
 configs/ls2080ardb_defconfig                  |   2 +-
 configs/ls2080ardb_nand_defconfig             |   2 +-
 configs/ls2081ardb_defconfig                  |   2 +-
 configs/ls2088aqds_tfa_defconfig              |   2 +-
 configs/ls2088ardb_qspi_SECURE_BOOT_defconfig |   2 +-
 configs/ls2088ardb_qspi_defconfig             |   2 +-
 configs/ls2088ardb_tfa_SECURE_BOOT_defconfig  |   2 +-
 configs/ls2088ardb_tfa_defconfig              |   2 +-
 configs/lschlv2_defconfig                     |   2 +-
 configs/lsxhl_defconfig                       |   2 +-
 configs/lx2160aqds_tfa_SECURE_BOOT_defconfig  |   2 +-
 configs/lx2160aqds_tfa_defconfig              |   2 +-
 configs/lx2160ardb_tfa_SECURE_BOOT_defconfig  |   2 +-
 configs/lx2160ardb_tfa_defconfig              |   2 +-
 configs/lx2160ardb_tfa_stmm_defconfig         |   2 +-
 configs/lx2162aqds_tfa_SECURE_BOOT_defconfig  |   2 +-
 configs/lx2162aqds_tfa_defconfig              |   2 +-
 .../lx2162aqds_tfa_verified_boot_defconfig    |   2 +-
 configs/m53menlo_defconfig                    |   2 +-
 configs/malta64_defconfig                     |   2 +-
 configs/malta64el_defconfig                   |   2 +-
 configs/malta_defconfig                       |   2 +-
 configs/maltael_defconfig                     |   2 +-
 configs/marsboard_defconfig                   |   2 +-
 configs/maxbcm_defconfig                      |   2 +-
 configs/mccmon6_nor_defconfig                 |   2 +-
 configs/mccmon6_sd_defconfig                  |   2 +-
 configs/medcom-wide_defconfig                 |   2 +-
 configs/meesc_dataflash_defconfig             |   2 +-
 configs/meesc_defconfig                       |   2 +-
 configs/microblaze-generic_defconfig          |   2 +-
 configs/minnowmax_defconfig                   |   2 +-
 configs/miqi-rk3288_defconfig                 |   2 +-
 configs/mk808_defconfig                       |   2 +-
 configs/mscc_jr2_defconfig                    |   2 +-
 configs/mscc_luton_defconfig                  |   2 +-
 configs/mscc_ocelot_defconfig                 |   2 +-
 configs/mscc_serval_defconfig                 |   2 +-
 configs/mscc_servalt_defconfig                |   2 +-
 configs/mt7622_rfb_defconfig                  |   2 +-
 configs/mt7623a_unielec_u7623_02_defconfig    |   2 +-
 configs/mt7623n_bpir2_defconfig               |   2 +-
 configs/mt7629_rfb_defconfig                  |   2 +-
 configs/mt8183_pumpkin_defconfig              |   2 +-
 configs/mt8512_bm1_emmc_defconfig             |   2 +-
 configs/mt8516_pumpkin_defconfig              |   2 +-
 configs/mt8518_ap1_emmc_defconfig             |   2 +-
 configs/mvebu_crb_cn9130_defconfig            |   2 +-
 configs/mvebu_db-88f3720_defconfig            |   2 +-
 configs/mvebu_db_armada8k_defconfig           |   2 +-
 configs/mvebu_db_cn9130_defconfig             |   2 +-
 configs/mvebu_espressobin-88f3720_defconfig   |   2 +-
 configs/mvebu_mcbin-88f8040_defconfig         |   2 +-
 configs/mvebu_puzzle-m801-88f8040_defconfig   |   2 +-
 configs/mx23_olinuxino_defconfig              |   2 +-
 configs/mx23evk_defconfig                     |   2 +-
 configs/mx28evk_defconfig                     |   2 +-
 configs/mx51evk_defconfig                     |   2 +-
 configs/mx53cx9020_defconfig                  |   2 +-
 configs/mx53loco_defconfig                    |   2 +-
 configs/mx53ppd_defconfig                     |   2 +-
 configs/mx6cuboxi_defconfig                   |   2 +-
 configs/mx6memcal_defconfig                   |   2 +-
 configs/mx6qsabrelite_defconfig               |   2 +-
 configs/mx6sabreauto_defconfig                |   2 +-
 configs/mx6sabresd_defconfig                  |   2 +-
 configs/mx6slevk_defconfig                    |   2 +-
 configs/mx6slevk_spinor_defconfig             |   2 +-
 configs/mx6slevk_spl_defconfig                |   2 +-
 configs/mx6sllevk_defconfig                   |   2 +-
 configs/mx6sllevk_plugin_defconfig            |   2 +-
 configs/mx6sxsabreauto_defconfig              |   2 +-
 configs/mx6sxsabresd_defconfig                |   2 +-
 configs/mx6ul_14x14_evk_defconfig             |   2 +-
 configs/mx6ul_9x9_evk_defconfig               |   2 +-
 configs/mx6ull_14x14_evk_defconfig            |   2 +-
 configs/mx6ull_14x14_evk_plugin_defconfig     |   2 +-
 configs/mx6ulz_14x14_evk_defconfig            |   2 +-
 configs/mx7ulp_com_defconfig                  |   2 +-
 configs/mx7ulp_evk_defconfig                  |   2 +-
 configs/mx7ulp_evk_plugin_defconfig           |   2 +-
 configs/myir_mys_6ulx_defconfig               |   2 +-
 configs/nanopc-t4-rk3399_defconfig            |   2 +-
 configs/nanopi-k2_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/nas220_defconfig                      |   2 +-
 configs/net2big_v2_defconfig                  |   2 +-
 configs/netgear_cg3100d_ram_defconfig         |   2 +-
 configs/netgear_dgnd3700v2_ram_defconfig      |   2 +-
 configs/netspace_lite_v2_defconfig            |   2 +-
 configs/netspace_max_v2_defconfig             |   2 +-
 configs/netspace_mini_v2_defconfig            |   2 +-
 configs/netspace_v2_defconfig                 |   2 +-
 configs/nitrogen6dl2g_defconfig               |   2 +-
 configs/nitrogen6dl_defconfig                 |   2 +-
 configs/nitrogen6q2g_defconfig                |   2 +-
 configs/nitrogen6q_defconfig                  |   2 +-
 configs/nitrogen6s1g_defconfig                |   2 +-
 configs/nitrogen6s_defconfig                  |   2 +-
 configs/novena_defconfig                      |   2 +-
 configs/nsa310s_defconfig                     |   2 +-
 configs/nsim_700_defconfig                    |   2 +-
 configs/nsim_700be_defconfig                  |   2 +-
 configs/nsim_hs38_defconfig                   |   2 +-
 configs/nsim_hs38be_defconfig                 |   2 +-
 configs/nyan-big_defconfig                    |   2 +-
 configs/o4-imx6ull-nano_defconfig             |   2 +-
 configs/octeon_ebb7304_defconfig              |   2 +-
 configs/octeon_nic23_defconfig                |   2 +-
 configs/octeontx2_95xx_defconfig              |   2 +-
 configs/octeontx2_96xx_defconfig              |   2 +-
 configs/octeontx_81xx_defconfig               |   2 +-
 configs/octeontx_83xx_defconfig               |   2 +-
 configs/odroid-c2_defconfig                   |   2 +-
 configs/odroid-c4_defconfig                   |   2 +-
 configs/odroid-go2_defconfig                  |   2 +-
 configs/odroid-hc4_defconfig                  |   2 +-
 configs/odroid-n2_defconfig                   |   2 +-
 configs/odroid-xu3_defconfig                  |   2 +-
 configs/odroid_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/omapl138_lcdk_defconfig               |   2 +-
 configs/openpiton_riscv64_defconfig           |   2 +-
 configs/openpiton_riscv64_spl_defconfig       |   2 +-
 configs/openrd_base_defconfig                 |   2 +-
 configs/openrd_client_defconfig               |   2 +-
 configs/openrd_ultimate_defconfig             |   2 +-
 configs/opos6uldev_defconfig                  |   2 +-
 configs/orangepi-rk3399_defconfig             |   2 +-
 configs/origen_defconfig                      |   2 +-
 configs/p200_defconfig                        |   2 +-
 configs/p201_defconfig                        |   2 +-
 configs/p212_defconfig                        |   2 +-
 configs/p2371-0000_defconfig                  |   2 +-
 configs/p2371-2180_defconfig                  |   2 +-
 configs/p2571_defconfig                       |   2 +-
 configs/p2771-0000-000_defconfig              |   2 +-
 configs/p2771-0000-500_defconfig              |   2 +-
 configs/p3450-0000_defconfig                  |   2 +-
 configs/paz00_defconfig                       |   2 +-
 configs/pcm052_defconfig                      |   2 +-
 configs/pcm058_defconfig                      |   2 +-
 configs/peach-pi_defconfig                    |   2 +-
 configs/peach-pit_defconfig                   |   2 +-
 configs/pg_wcom_expu1_defconfig               |   2 +-
 configs/pg_wcom_expu1_update_defconfig        |   2 +-
 configs/pg_wcom_seli8_defconfig               |   2 +-
 configs/pg_wcom_seli8_update_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/pic32mzdask_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-imx8mq_defconfig                 |   2 +-
 configs/pico-pi-imx6ul_defconfig              |   2 +-
 configs/pinebook-pro-rk3399_defconfig         |   2 +-
 configs/plutux_defconfig                      |   2 +-
 configs/pm9261_defconfig                      |   2 +-
 configs/pm9263_defconfig                      |   2 +-
 configs/pm9g45_defconfig                      |   2 +-
 configs/pogo_e02_defconfig                    |   2 +-
 configs/pogo_v4_defconfig                     |   2 +-
 configs/poleg_evb_defconfig                   |   2 +-
 configs/pomelo_defconfig                      |   2 +-
 configs/poplar_defconfig                      |   2 +-
 configs/popmetal-rk3288_defconfig             |   2 +-
 configs/porter_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                        |   2 +-
 configs/qemu-ppce500_defconfig                |   2 +-
 configs/qemu-x86_64_defconfig                 |   2 +-
 configs/qemu-x86_defconfig                    |   2 +-
 configs/r2dplus_defconfig                     |   2 +-
 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/radxa-zero_defconfig                  |   2 +-
 configs/rastaban_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/rpi_0_w_defconfig                     |   2 +-
 configs/rpi_2_defconfig                       |   2 +-
 configs/rpi_3_32b_defconfig                   |   2 +-
 configs/rpi_3_b_plus_defconfig                |   2 +-
 configs/rpi_3_defconfig                       |   2 +-
 configs/rpi_4_32b_defconfig                   |   2 +-
 configs/rpi_4_defconfig                       |   2 +-
 configs/rpi_arm64_defconfig                   |   2 +-
 configs/rpi_defconfig                         |   2 +-
 configs/rut_defconfig                         |   2 +-
 configs/rzg2_beacon_defconfig                 |   2 +-
 configs/s400_defconfig                        |   2 +-
 configs/s5p4418_nanopi2_defconfig             |   2 +-
 configs/s5p_goni_defconfig                    |   2 +-
 configs/s5pc210_universal_defconfig           |   2 +-
 configs/sagem_f@st1704_ram_defconfig          |   2 +-
 configs/sam9x60_curiosity_mmc_defconfig       |   2 +-
 configs/sam9x60ek_mmc_defconfig               |   2 +-
 configs/sam9x60ek_nandflash_defconfig         |   2 +-
 configs/sam9x60ek_qspiflash_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_icp_qspiflash_defconfig       |   2 +-
 configs/sama5d2_ptc_ek_mmc_defconfig          |   2 +-
 configs/sama5d2_ptc_ek_nandflash_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/sama5d36ek_cmp_mmc_defconfig          |   2 +-
 configs/sama5d36ek_cmp_nandflash_defconfig    |   2 +-
 configs/sama5d36ek_cmp_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/sama7g5ek_mmc1_defconfig              |   2 +-
 configs/sama7g5ek_mmc_defconfig               |   2 +-
 configs/sandbox64_defconfig                   |   2 +-
 configs/sandbox_defconfig                     |   2 +-
 configs/sandbox_flattree_defconfig            |   2 +-
 configs/sandbox_noinst_defconfig              |   2 +-
 configs/sandbox_spl_defconfig                 |   2 +-
 configs/sandbox_vpl_defconfig                 |  15 +-
 configs/seaboard_defconfig                    |   2 +-
 configs/seeed_npi_imx6ull_defconfig           |   2 +-
 configs/sei510_defconfig                      |   2 +-
 configs/sei610_defconfig                      |   2 +-
 configs/sfr_nb4-ser_ram_defconfig             |   2 +-
 configs/sheep-rk3368_defconfig                |   2 +-
 configs/sheevaplug_defconfig                  |   2 +-
 configs/silinux_ek874_defconfig               |   2 +-
 configs/silk_defconfig                        |   2 +-
 configs/sipeed_maix_smode_defconfig           |   2 +-
 configs/smartweb_defconfig                    |   2 +-
 configs/smdk5250_defconfig                    |   2 +-
 configs/smdk5420_defconfig                    |   2 +-
 configs/smdkc100_defconfig                    |   2 +-
 configs/smdkv310_defconfig                    |   2 +-
 configs/sniper_defconfig                      |   2 +-
 configs/snow_defconfig                        |   2 +-
 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/socrates_defconfig                    |   2 +-
 configs/som-db5800-som-6867_defconfig         |   2 +-
 configs/somlabs_visionsom_6ull_defconfig      |   2 +-
 configs/spring_defconfig                      |   2 +-
 configs/stemmy_defconfig                      |   2 +-
 configs/stih410-b2260_defconfig               |   2 +-
 configs/stm32746g-eval_defconfig              |   2 +-
 configs/stm32746g-eval_spl_defconfig          |   2 +-
 configs/stm32f429-discovery_defconfig         |   2 +-
 configs/stm32f429-evaluation_defconfig        |   2 +-
 configs/stm32f469-discovery_defconfig         |   2 +-
 configs/stm32f746-disco_defconfig             |   2 +-
 configs/stm32f746-disco_spl_defconfig         |   2 +-
 configs/stm32f769-disco_defconfig             |   2 +-
 configs/stm32f769-disco_spl_defconfig         |   2 +-
 configs/stm32h743-disco_defconfig             |   2 +-
 configs/stm32h743-eval_defconfig              |   2 +-
 configs/stm32h750-art-pi_defconfig            |   2 +-
 configs/stmark2_defconfig                     |   2 +-
 configs/stout_defconfig                       |   2 +-
 configs/stv0991_defconfig                     |   2 +-
 configs/synquacer_developerbox_defconfig      |   2 +-
 configs/syzygy_hub_defconfig                  |   2 +-
 configs/taurus_defconfig                      |   2 +-
 configs/tb100_defconfig                       |   2 +-
 configs/tbs2910_defconfig                     |   2 +-
 configs/tec-ng_defconfig                      |   2 +-
 configs/tec_defconfig                         |   2 +-
 configs/ten64_tfa_defconfig                   |   2 +-
 ...able-x86-conga-qa3-e3845-pcie-x4_defconfig |   2 +-
 .../theadorable-x86-conga-qa3-e3845_defconfig |   2 +-
 configs/theadorable-x86-dfi-bt700_defconfig   |   2 +-
 configs/theadorable_debug_defconfig           |   2 +-
 configs/thuban_defconfig                      |   2 +-
 configs/thunderx_88xx_defconfig               |   2 +-
 configs/tinker-rk3288_defconfig               |   2 +-
 configs/tinker-s-rk3288_defconfig             |   2 +-
 configs/tools-only_defconfig                  |   2 +-
 configs/topic_miami_defconfig                 |   2 +-
 configs/topic_miamilite_defconfig             |   2 +-
 configs/topic_miamiplus_defconfig             |   2 +-
 configs/total_compute_defconfig               |   2 +-
 configs/tplink_wdr4300_defconfig              |   2 +-
 configs/trats2_defconfig                      |   2 +-
 configs/trats_defconfig                       |   2 +-
 configs/trimslice_defconfig                   |   2 +-
 configs/tuge1_defconfig                       |   2 +-
 configs/turris_mox_defconfig                  |   2 +-
 configs/turris_omnia_defconfig                |   2 +-
 configs/tuxx1_defconfig                       |   2 +-
 configs/u200_defconfig                        |   2 +-
 configs/uDPU_defconfig                        |   2 +-
 configs/udoo_defconfig                        |   2 +-
 configs/udoo_neo_defconfig                    |   2 +-
 configs/uniphier_ld4_sld8_defconfig           |   2 +-
 configs/uniphier_v7_defconfig                 |   2 +-
 configs/uniphier_v8_defconfig                 |   2 +-
 configs/usb_a9263_dataflash_defconfig         |   2 +-
 configs/usbarmory_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/vexpress_ca9x4_defconfig              |   2 +-
 configs/vf610twr_defconfig                    |   2 +-
 configs/vf610twr_nand_defconfig               |   2 +-
 configs/vinco_defconfig                       |   2 +-
 configs/vining_2000_defconfig                 |   2 +-
 configs/vyasa-rk3288_defconfig                |   2 +-
 configs/wandboard_defconfig                   |   2 +-
 configs/wetek-core2_defconfig                 |   2 +-
 configs/work_92105_defconfig                  |   2 +-
 configs/x530_defconfig                        |   2 +-
 configs/xenguest_arm64_defconfig              |   2 +-
 configs/xilinx_versal_mini_defconfig          |   2 +-
 configs/xilinx_versal_mini_emmc0_defconfig    |   2 +-
 configs/xilinx_versal_mini_emmc1_defconfig    |   2 +-
 configs/xilinx_versal_virt_defconfig          |   2 +-
 configs/xilinx_zynq_virt_defconfig            |   2 +-
 configs/xilinx_zynqmp_mini_defconfig          |   2 +-
 configs/xilinx_zynqmp_mini_emmc0_defconfig    |   2 +-
 configs/xilinx_zynqmp_mini_emmc1_defconfig    |   2 +-
 configs/xilinx_zynqmp_mini_nand_defconfig     |   2 +-
 .../xilinx_zynqmp_mini_nand_single_defconfig  |   2 +-
 configs/xilinx_zynqmp_mini_qspi_defconfig     |   2 +-
 configs/xilinx_zynqmp_r5_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 +-
 disk/part_efi.c                               | 148 ++++++-------
 doc/README.arm-relocation                     |  10 +-
 doc/SPL/README.omap3                          |   6 +-
 doc/arch/m68k.rst                             |   2 +-
 doc/arch/sandbox.rst                          |   2 +-
 doc/board/coreboot/coreboot.rst               |   4 +-
 doc/board/google/chromebook_coral.rst         |   4 +-
 doc/board/google/chromebook_samus.rst         |   2 +-
 doc/board/intel/minnowmax.rst                 |   2 +-
 doc/board/intel/slimbootloader.rst            |   4 +-
 doc/board/nxp/mx6ul_14x14_evk.rst             |   4 +-
 doc/board/sipeed/maix.rst                     |   4 +-
 doc/chromium/chainload.rst                    |   8 +-
 doc/develop/moveconfig.rst                    |   4 +-
 doc/develop/tests_writing.rst                 |  22 ++
 doc/usage/cmd/vbe.rst                         | 103 +++++++++
 doc/usage/index.rst                           |   1 +
 drivers/Makefile                              |   1 +
 drivers/block/Makefile                        |   2 +-
 drivers/block/blk-uclass.c                    |  51 +++--
 drivers/mmc/Makefile                          |   2 +-
 drivers/mmc/sandbox_mmc.c                     |  10 +-
 drivers/scsi/scsi_emul.c                      |   9 +
 drivers/usb/emul/sandbox_flash.c              |  35 ++-
 include/blk.h                                 |  39 +++-
 include/bloblist.h                            |   1 +
 include/bootflow.h                            |  12 +
 include/bootstage.h                           |   2 +
 include/configs/MCR3000.h                     |   2 +-
 include/configs/MPC837XERDB.h                 |  10 +-
 include/configs/MPC8548CDS.h                  |  10 +-
 include/configs/P2041RDB.h                    |   6 +-
 include/configs/T102xRDB.h                    |   4 +-
 include/configs/T104xRDB.h                    |   2 +-
 include/configs/T208xQDS.h                    |   4 +-
 include/configs/T208xRDB.h                    |   4 +-
 include/configs/T4240RDB.h                    |   4 +-
 include/configs/am3517_evm.h                  |   2 +-
 include/configs/at91sam9260ek.h               |   2 +-
 include/configs/baltos.h                      |   2 +-
 include/configs/bcmstb.h                      |   2 +-
 include/configs/brppt1.h                      |   4 +-
 include/configs/cobra5272.h                   |   2 +-
 include/configs/corenet_ds.h                  |   6 +-
 include/configs/corvus.h                      |   6 +-
 include/configs/devkit3250.h                  |   6 +-
 include/configs/evb_ast2500.h                 |   2 +-
 include/configs/evb_ast2600.h                 |   2 +-
 .../configs/gardena-smart-gateway-at91sam.h   |   4 +-
 .../configs/gardena-smart-gateway-mt7688.h    |   2 +-
 include/configs/hikey.h                       |   2 +-
 include/configs/hikey960.h                    |   2 +-
 include/configs/imx6-engicam.h                |   2 +-
 include/configs/imx6_logic.h                  |   2 +-
 include/configs/kontron-sl-mx6ul.h            |   2 +-
 include/configs/linkit-smart-7688.h           |   2 +-
 include/configs/ls1021aqds.h                  |   4 +-
 include/configs/ls1043a_common.h              |   6 +-
 include/configs/ls1046a_common.h              |   4 +-
 include/configs/ls1046aqds.h                  |   2 +-
 include/configs/ls1088a_common.h              |   2 +-
 include/configs/ls2080a_common.h              |   2 +-
 include/configs/meesc.h                       |   2 +-
 include/configs/microblaze-generic.h          |   2 +-
 include/configs/mt7620.h                      |   2 +-
 include/configs/mt7622.h                      |   4 +-
 include/configs/mt7628.h                      |   2 +-
 include/configs/mt8512.h                      |   2 +-
 include/configs/mv-common.h                   |   2 +-
 include/configs/octeontx2_common.h            |   2 +-
 include/configs/octeontx_common.h             |   2 +-
 include/configs/p1_p2_rdb_pc.h                |  18 +-
 include/configs/rpi.h                         |   2 +-
 include/configs/siemens-am33x-common.h        |   2 +-
 include/configs/smartweb.h                    |   6 +-
 include/configs/taurus.h                      |   6 +-
 include/configs/ti_armv7_common.h             |   2 +-
 include/configs/vocore2.h                     |   2 +-
 include/configs/work_92105.h                  |   6 +-
 include/image.h                               | 137 +++++++++++-
 include/scsi.h                                |  10 +
 include/scsi_emul.h                           |  16 +-
 include/spl.h                                 |  26 ++-
 include/test/test.h                           |  10 +
 include/test/ut.h                             |   4 +-
 include/vbe.h                                 |  37 ++++
 lib/efi/efi_stub.c                            |  10 +-
 lib/efi_loader/efi_runtime.c                  |   8 +-
 lib/rsa/rsa-verify.c                          |   5 +
 lib/trace.c                                   |   4 +-
 test/boot/Makefile                            |   2 +
 test/boot/bootflow.c                          |   4 +-
 test/boot/bootmeth.c                          |  13 +-
 test/boot/image.c                             |  36 +++
 test/boot/vbe.c                               |  97 +++++++++
 test/boot/vbe_fixup.c                         |  19 +-
 test/boot/vbe_simple.c                        |   9 +-
 test/cmd_ut.c                                 |  16 +-
 test/dm/of_platdata.c                         |   2 +-
 test/dm/ofnode.c                              |  25 ++-
 test/dm/test-dm.c                             |   2 +-
 test/dm/usb.c                                 |  30 ++-
 test/py/conftest.py                           |   8 +-
 test/py/tests/test_event_dump.py              |   4 +-
 test/py/tests/test_vbe.py                     |  29 +--
 test/py/tests/test_vbe_vpl.py                 |  55 +++++
 test/test-main.c                              |  50 ++++-
 tools/binman/binman.rst                       |   4 +-
 tools/binman/elf.py                           |  92 ++++++--
 tools/binman/entries.rst                      |   2 +-
 tools/binman/entry.py                         |  16 +-
 tools/binman/etype/blob.py                    |   5 +-
 tools/binman/etype/fit.py                     |   2 +-
 tools/binman/etype/section.py                 |  60 +++--
 tools/binman/etype/u_boot_spl.py              |   7 +-
 tools/binman/etype/u_boot_spl_elf.py          |   3 +-
 tools/binman/etype/u_boot_spl_nodtb.py        |   6 +-
 tools/binman/etype/u_boot_tpl.py              |   6 +-
 tools/binman/etype/u_boot_tpl_elf.py          |   3 +-
 tools/binman/etype/u_boot_tpl_nodtb.py        |   6 +-
 tools/binman/etype/u_boot_vpl.py              |   6 +-
 tools/binman/etype/u_boot_vpl_elf.py          |  25 +++
 tools/binman/etype/u_boot_vpl_nodtb.py        |   6 +-
 tools/binman/etype/u_boot_with_ucode_ptr.py   |   2 +-
 tools/binman/ftest.py                         |  57 +++++
 tools/binman/test/256_symbols_elf.dts         |  27 +++
 tools/docker/Dockerfile                       |   1 +
 1183 files changed, 3511 insertions(+), 1761 deletions(-)
 create mode 100644 arch/sandbox/dts/sandbox_vpl.dtsi
 rename boot/{vbe_fixup.c => vbe_request.c} (96%)
 create mode 100644 boot/vbe_simple.h
 create mode 100644 boot/vbe_simple_fw.c
 create mode 100644 boot/vbe_simple_os.c
 create mode 100644 doc/usage/cmd/vbe.rst
 create mode 100644 test/boot/image.c
 create mode 100644 test/boot/vbe.c
 create mode 100644 test/py/tests/test_vbe_vpl.py
 create mode 100644 tools/binman/etype/u_boot_vpl_elf.py
 create mode 100644 tools/binman/test/256_symbols_elf.dts

-- 
2.37.3.998.g577e59143f-goog


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

* [PATCH 01/45] Rename CONFIG_SYS_TEXT_BASE to CONFIG_TEXT_BASE
  2022-09-25 15:02 [PATCH 00/45] vbe: Implement the full firmware flow Simon Glass
@ 2022-09-25 15:02 ` Simon Glass
  2022-09-25 15:02 ` [PATCH 02/45] disk: Drop debug messages in part_efi Simon Glass
                   ` (43 subsequent siblings)
  44 siblings, 0 replies; 72+ messages in thread
From: Simon Glass @ 2022-09-25 15:02 UTC (permalink / raw)
  To: U-Boot Mailing List
  Cc: Tom Rini, Simon Glass, Alex Nemirovsky, Alexander Graf,
	Alexandre Vicenzi, Amjad Ouled-Ameur, Andrej Rosano, Biju Das,
	Dinh Nguyen, Dzmitry Sankouski, Eugeniy Paltsev,
	Frieder Schrempf, Giulio Benetti, Gregory CLEMENT,
	Heiko Stuebner, Huan Wang, Ilias Apalodimas, Jaehoon Chung,
	Jagan Teki, Jassi Brar, Jernej Skrabec, Jesse Taube,
	Joel Stanley, Lad Prabhakar, Lars Povlsen, Marcel Ziswiler,
	Markus Niebel, Martyn Welch, Mathew McBride, Matthias Brugger,
	Michal Simek, Mingming lee, Minkyu Kang, Neil Armstrong,
	Nobuhiro Iwamatsu, Pali Rohár, Qiang Zhao, Rosy Song,
	Ryder Lee, Shengzhou Liu, Siddarth Gore, Stephan Gerhold,
	Tien Fong Chee, Tim Harvey, Vishnu Banavath, Vladimir Oltean,
	Walter Schweizer, Wasim Khan, Wills Wang,
	Zubair Lutfullah Kakakhel, u-boot

The current name is inconsistent with SPL which uses CONFIG_SPL_TEXT_BASE
and this makes it imposible to use CONFIG_VAL().

Rename it to resolve this problem.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 Kconfig                                       |  2 +-
 Makefile                                      | 26 +++++++++----------
 arch/arc/cpu/u-boot.lds                       |  2 +-
 arch/arm/Kconfig                              |  2 +-
 arch/arm/cpu/arm1176/start.S                  |  2 +-
 arch/arm/cpu/arm926ejs/mxs/Makefile           |  4 +--
 arch/arm/cpu/armv7/ls102xa/fdt.c              |  6 ++---
 .../armv8/linux-kernel-image-header-vars.h    |  2 +-
 arch/arm/cpu/armv8/start.S                    |  2 +-
 .../dts/fsl-ls1028a-kontron-sl28-u-boot.dtsi  |  2 +-
 arch/arm/dts/imx8mm-u-boot.dtsi               |  2 +-
 arch/arm/dts/imx8mn-beacon-kit-u-boot.dtsi    |  2 +-
 .../dts/imx8mn-bsh-smm-s2-u-boot-common.dtsi  |  2 +-
 arch/arm/dts/imx8mn-ddr4-evk-u-boot.dtsi      |  2 +-
 arch/arm/dts/imx8mn-evk-u-boot.dtsi           |  2 +-
 .../dts/imx8mn-var-som-symphony-u-boot.dtsi   |  2 +-
 arch/arm/dts/imx8mn-venice-u-boot.dtsi        |  2 +-
 arch/arm/dts/imx8mp-u-boot.dtsi               |  2 +-
 arch/arm/dts/imx8mq-cm-u-boot.dtsi            |  2 +-
 arch/arm/dts/imx8mq-u-boot.dtsi               |  2 +-
 arch/arm/dts/rockchip-optee.dtsi              |  2 +-
 arch/arm/dts/sunxi-u-boot.dtsi                |  2 +-
 arch/arm/dts/tegra-u-boot.dtsi                |  2 +-
 arch/arm/include/asm/arch-mxs/sys_proto.h     |  2 +-
 arch/arm/include/asm/arch-sunxi/boot0.h       |  2 +-
 arch/arm/lib/crt0.S                           |  2 +-
 arch/arm/lib/relocate_64.S                    |  2 +-
 arch/arm/mach-apple/Kconfig                   |  4 +--
 arch/arm/mach-aspeed/Kconfig                  |  2 +-
 arch/arm/mach-at91/arm920t/lowlevel_init.S    |  4 +--
 arch/arm/mach-at91/arm926ejs/lowlevel_init.S  |  2 +-
 arch/arm/mach-exynos/spl_boot.c               | 10 +++----
 arch/arm/mach-imx/Makefile                    | 10 +++----
 arch/arm/mach-imx/imx8/cpu.c                  |  4 +--
 arch/arm/mach-imx/mx7/Kconfig                 |  2 +-
 arch/arm/mach-imx/spl.c                       |  2 +-
 arch/arm/mach-ipq40xx/Kconfig                 |  2 +-
 arch/arm/mach-k3/config_secure.mk             |  2 +-
 arch/arm/mach-k3/sysfw-loader.c               |  2 +-
 arch/arm/mach-keystone/config.mk              |  2 +-
 arch/arm/mach-nexell/include/mach/boot0.h     |  6 ++---
 arch/arm/mach-npcm/Kconfig                    |  2 +-
 arch/arm/mach-octeontx/cpu.c                  |  2 +-
 arch/arm/mach-octeontx2/cpu.c                 |  2 +-
 arch/arm/mach-omap2/config_secure.mk          |  4 +--
 arch/arm/mach-owl/Kconfig                     |  2 +-
 arch/arm/mach-rockchip/Kconfig                |  2 +-
 arch/arm/mach-socfpga/Kconfig                 |  2 +-
 arch/arm/mach-stm32mp/Kconfig.13x             |  2 +-
 arch/arm/mach-stm32mp/Kconfig.15x             |  2 +-
 arch/arm/mach-sunxi/board.c                   |  2 +-
 arch/arm/mach-sunxi/spl_spi_sunxi.c           |  2 +-
 arch/arm/mach-zynqmp/mkimage_fit_atf.sh       |  2 +-
 arch/m68k/cpu/mcf52x2/start.S                 | 12 ++++-----
 arch/m68k/cpu/mcf530x/start.S                 |  4 +--
 arch/m68k/cpu/mcf5445x/start.S                | 16 ++++++------
 arch/microblaze/cpu/relocate.c                |  6 ++---
 arch/microblaze/cpu/start.S                   |  8 +++---
 arch/mips/mach-jz47xx/jz4780/jz4780.c         |  4 +--
 arch/mips/mach-mscc/lowlevel_init.S           |  2 +-
 arch/mips/mach-mtmips/Kconfig                 |  2 +-
 arch/powerpc/cpu/mpc85xx/cpu_init_early.c     |  4 +--
 arch/powerpc/cpu/mpc85xx/u-boot.lds           |  2 +-
 arch/powerpc/dts/kmcent2-u-boot.dtsi          |  4 +--
 arch/powerpc/dts/u-boot.dtsi                  |  4 +--
 arch/riscv/dts/binman.dtsi                    |  2 +-
 arch/sh/cpu/u-boot.lds                        |  2 +-
 arch/x86/Kconfig                              |  4 +--
 arch/x86/cpu/apollolake/spl.c                 |  2 +-
 arch/x86/cpu/quark/quark.c                    |  2 +-
 arch/x86/cpu/start.S                          |  6 ++---
 arch/x86/cpu/u-boot-64.lds                    |  4 +--
 arch/x86/cpu/u-boot.lds                       |  2 +-
 arch/x86/lib/relocate.c                       |  6 ++---
 arch/x86/lib/spl.c                            |  6 ++---
 board/BuS/eb_cpu5282/eb_cpu5282.c             |  2 +-
 board/advantech/som-db5800-som-6867/Kconfig   |  2 +-
 board/armltd/vexpress64/Kconfig               |  4 +--
 board/beacon/beacon-rzg2m/beacon-rzg2m.c      |  2 +-
 board/broadcom/bcmstb/bcmstb.c                |  4 +--
 board/cobra5272/README                        |  8 +++---
 board/congatec/cgtqmx8/cgtqmx8.c              |  2 +-
 .../congatec/conga-qeval20-qa3-e3845/Kconfig  |  2 +-
 board/coreboot/coreboot/Kconfig               |  2 +-
 board/cssi/MCR3000/Kconfig                    |  2 +-
 board/davinci/da8xxevm/README.da850           |  2 +-
 board/dfi/dfi-bt700/Kconfig                   |  2 +-
 board/efi/efi-x86_payload/Kconfig             |  2 +-
 board/emulation/qemu-arm/Kconfig              |  2 +-
 board/emulation/qemu-riscv/Kconfig            |  2 +-
 board/emulation/qemu-x86/Kconfig              |  2 +-
 .../freescale/imx8qm_mek/uboot-container.cfg  |  2 +-
 .../freescale/imx8qxp_mek/uboot-container.cfg |  2 +-
 board/freescale/ls1021atsn/ls1021atsn.c       |  2 +-
 board/freescale/ls1021atwr/ls1021atwr.c       |  2 +-
 board/freescale/ls1028a/Kconfig               |  4 +--
 board/google/chromebook_coral/Kconfig         |  2 +-
 board/google/chromebook_link/Kconfig          |  2 +-
 board/google/chromebook_samus/Kconfig         |  2 +-
 board/google/chromebox_panther/Kconfig        |  2 +-
 board/hoperun/hihope-rzg2/hihope-rzg2.c       |  2 +-
 board/hpe/gxp/Kconfig                         |  2 +-
 board/imgtec/boston/Kconfig                   |  2 +-
 board/imgtec/ci20/Kconfig                     |  2 +-
 board/imgtec/malta/Kconfig                    |  2 +-
 board/imgtec/xilfpga/Kconfig                  |  2 +-
 board/intel/bayleybay/Kconfig                 |  2 +-
 board/intel/cherryhill/Kconfig                |  2 +-
 board/intel/cougarcanyon2/Kconfig             |  2 +-
 board/intel/crownbay/Kconfig                  |  2 +-
 board/intel/edison/Kconfig                    |  2 +-
 board/intel/galileo/Kconfig                   |  2 +-
 board/intel/minnowmax/Kconfig                 |  2 +-
 board/intel/slimbootloader/Kconfig            |  2 +-
 board/keymile/common/common.c                 |  4 +--
 board/keymile/km_arm/km_arm.c                 |  2 +-
 board/kontron/sl28/Kconfig                    |  2 +-
 board/microchip/mpfs_icicle/Kconfig           |  2 +-
 board/microchip/pic32mzda/Kconfig             |  2 +-
 board/nokia/rx51/lowlevel_init.S              |  6 ++---
 board/openpiton/riscv64/Kconfig               |  2 +-
 board/qca/ap121/Kconfig                       |  2 +-
 board/qca/ap143/Kconfig                       |  2 +-
 board/qca/ap152/Kconfig                       |  2 +-
 board/qualcomm/dragonboard820c/head.S         |  2 +-
 board/renesas/falcon/falcon.c                 |  2 +-
 board/siemens/capricorn/uboot-container.cfg   |  2 +-
 board/sifive/unleashed/Kconfig                |  2 +-
 board/sifive/unmatched/Kconfig                |  2 +-
 board/silinux/ek874/ek874.c                   |  2 +-
 board/sipeed/maix/Kconfig                     |  2 +-
 board/socrates/socrates.c                     |  2 +-
 board/synopsys/axs10x/headerize-axs.py        |  2 +-
 board/synopsys/hsdk/headerize-hsdk.py         |  2 +-
 board/ti/ks2_evm/board.c                      |  2 +-
 board/tplink/wdr4300/Kconfig                  |  2 +-
 board/tq/tqma6/Kconfig                        |  2 +-
 boot/Kconfig                                  | 10 +++----
 cmd/sf.c                                      |  2 +-
 common/autoboot.c                             |  8 +++---
 common/board_f.c                              | 10 +++----
 common/board_r.c                              |  2 +-
 common/spl/spl.c                              |  8 +++---
 common/spl/spl_atf.c                          |  2 +-
 common/spl/spl_nand.c                         |  6 ++---
 common/spl/spl_optee.S                        |  2 +-
 configs/M5208EVBE_defconfig                   |  2 +-
 configs/M5235EVB_Flash32_defconfig            |  2 +-
 configs/M5235EVB_defconfig                    |  2 +-
 configs/M5249EVB_defconfig                    |  2 +-
 configs/M5253DEMO_defconfig                   |  2 +-
 configs/M5272C3_defconfig                     |  2 +-
 configs/M5275EVB_defconfig                    |  2 +-
 configs/M5282EVB_defconfig                    |  2 +-
 configs/M53017EVB_defconfig                   |  2 +-
 configs/M5329AFEE_defconfig                   |  2 +-
 configs/M5329BFEE_defconfig                   |  2 +-
 configs/M5373EVB_defconfig                    |  2 +-
 configs/MCR3000_defconfig                     |  2 +-
 configs/MPC837XERDB_defconfig                 |  2 +-
 configs/MPC8548CDS_36BIT_defconfig            |  2 +-
 configs/MPC8548CDS_defconfig                  |  2 +-
 configs/MPC8548CDS_legacy_defconfig           |  2 +-
 configs/P1010RDB-PA_36BIT_NAND_defconfig      |  2 +-
 configs/P1010RDB-PA_36BIT_NOR_defconfig       |  2 +-
 configs/P1010RDB-PA_36BIT_SDCARD_defconfig    |  2 +-
 configs/P1010RDB-PA_36BIT_SPIFLASH_defconfig  |  2 +-
 configs/P1010RDB-PA_NAND_defconfig            |  2 +-
 configs/P1010RDB-PA_NOR_defconfig             |  2 +-
 configs/P1010RDB-PA_SDCARD_defconfig          |  2 +-
 configs/P1010RDB-PA_SPIFLASH_defconfig        |  2 +-
 configs/P1010RDB-PB_36BIT_NAND_defconfig      |  2 +-
 configs/P1010RDB-PB_36BIT_NOR_defconfig       |  2 +-
 configs/P1010RDB-PB_36BIT_SDCARD_defconfig    |  2 +-
 configs/P1010RDB-PB_36BIT_SPIFLASH_defconfig  |  2 +-
 configs/P1010RDB-PB_NAND_defconfig            |  2 +-
 configs/P1010RDB-PB_NOR_defconfig             |  2 +-
 configs/P1010RDB-PB_SDCARD_defconfig          |  2 +-
 configs/P1010RDB-PB_SPIFLASH_defconfig        |  2 +-
 configs/P1020RDB-PC_36BIT_NAND_defconfig      |  2 +-
 configs/P1020RDB-PC_36BIT_SDCARD_defconfig    |  2 +-
 configs/P1020RDB-PC_36BIT_SPIFLASH_defconfig  |  2 +-
 configs/P1020RDB-PC_36BIT_defconfig           |  2 +-
 configs/P1020RDB-PC_NAND_defconfig            |  2 +-
 configs/P1020RDB-PC_SDCARD_defconfig          |  2 +-
 configs/P1020RDB-PC_SPIFLASH_defconfig        |  2 +-
 configs/P1020RDB-PC_defconfig                 |  2 +-
 configs/P1020RDB-PD_NAND_defconfig            |  2 +-
 configs/P1020RDB-PD_SDCARD_defconfig          |  2 +-
 configs/P1020RDB-PD_SPIFLASH_defconfig        |  2 +-
 configs/P1020RDB-PD_defconfig                 |  2 +-
 configs/P2020RDB-PC_36BIT_NAND_defconfig      |  2 +-
 configs/P2020RDB-PC_36BIT_SDCARD_defconfig    |  2 +-
 configs/P2020RDB-PC_36BIT_SPIFLASH_defconfig  |  2 +-
 configs/P2020RDB-PC_36BIT_defconfig           |  2 +-
 configs/P2020RDB-PC_NAND_defconfig            |  2 +-
 configs/P2020RDB-PC_SDCARD_defconfig          |  2 +-
 configs/P2020RDB-PC_SPIFLASH_defconfig        |  2 +-
 configs/P2020RDB-PC_defconfig                 |  2 +-
 configs/P2041RDB_NAND_defconfig               |  2 +-
 configs/P2041RDB_SDCARD_defconfig             |  2 +-
 configs/P2041RDB_SPIFLASH_defconfig           |  2 +-
 configs/P2041RDB_defconfig                    |  2 +-
 configs/SBx81LIFKW_defconfig                  |  2 +-
 configs/SBx81LIFXCAT_defconfig                |  2 +-
 configs/T1024RDB_NAND_defconfig               |  2 +-
 configs/T1024RDB_SDCARD_defconfig             |  2 +-
 configs/T1024RDB_SPIFLASH_defconfig           |  2 +-
 configs/T1024RDB_defconfig                    |  2 +-
 configs/T1042D4RDB_NAND_defconfig             |  2 +-
 configs/T1042D4RDB_SDCARD_defconfig           |  2 +-
 configs/T1042D4RDB_SPIFLASH_defconfig         |  2 +-
 configs/T1042D4RDB_defconfig                  |  2 +-
 configs/T2080QDS_NAND_defconfig               |  2 +-
 configs/T2080QDS_SDCARD_defconfig             |  2 +-
 configs/T2080QDS_SECURE_BOOT_defconfig        |  2 +-
 configs/T2080QDS_SPIFLASH_defconfig           |  2 +-
 configs/T2080QDS_SRIO_PCIE_BOOT_defconfig     |  2 +-
 configs/T2080QDS_defconfig                    |  2 +-
 configs/T2080RDB_NAND_defconfig               |  2 +-
 configs/T2080RDB_SDCARD_defconfig             |  2 +-
 configs/T2080RDB_SPIFLASH_defconfig           |  2 +-
 configs/T2080RDB_defconfig                    |  2 +-
 configs/T2080RDB_revD_NAND_defconfig          |  2 +-
 configs/T2080RDB_revD_SDCARD_defconfig        |  2 +-
 configs/T2080RDB_revD_SPIFLASH_defconfig      |  2 +-
 configs/T2080RDB_revD_defconfig               |  2 +-
 configs/T4240RDB_SDCARD_defconfig             |  2 +-
 configs/T4240RDB_defconfig                    |  2 +-
 configs/a3y17lte_defconfig                    |  2 +-
 configs/a5y17lte_defconfig                    |  2 +-
 configs/a7y17lte_defconfig                    |  2 +-
 configs/ae350_rv32_defconfig                  |  2 +-
 configs/ae350_rv32_spl_defconfig              |  2 +-
 configs/ae350_rv32_spl_xip_defconfig          |  2 +-
 configs/ae350_rv32_xip_defconfig              |  2 +-
 configs/ae350_rv64_defconfig                  |  2 +-
 configs/ae350_rv64_spl_defconfig              |  2 +-
 configs/ae350_rv64_spl_xip_defconfig          |  2 +-
 configs/ae350_rv64_xip_defconfig              |  2 +-
 configs/alt_defconfig                         |  2 +-
 configs/am3517_evm_defconfig                  |  2 +-
 configs/am43xx_evm_qspiboot_defconfig         |  2 +-
 configs/amcore_defconfig                      |  2 +-
 configs/ap121_defconfig                       |  2 +-
 configs/ap143_defconfig                       |  2 +-
 configs/ap152_defconfig                       |  2 +-
 configs/apalis-imx8_defconfig                 |  2 +-
 configs/apalis-tk1_defconfig                  |  2 +-
 configs/apalis_imx6_defconfig                 |  2 +-
 configs/apalis_t30_defconfig                  |  2 +-
 configs/aristainetos2c_defconfig              |  2 +-
 configs/aristainetos2ccslb_defconfig          |  2 +-
 configs/arndale_defconfig                     |  2 +-
 configs/astro_mcf5373l_defconfig              |  2 +-
 configs/at91sam9260ek_dataflash_cs0_defconfig |  2 +-
 configs/at91sam9260ek_dataflash_cs1_defconfig |  2 +-
 configs/at91sam9260ek_nandflash_defconfig     |  2 +-
 configs/at91sam9261ek_dataflash_cs0_defconfig |  2 +-
 configs/at91sam9261ek_dataflash_cs3_defconfig |  2 +-
 configs/at91sam9261ek_nandflash_defconfig     |  2 +-
 configs/at91sam9263ek_dataflash_cs0_defconfig |  2 +-
 configs/at91sam9263ek_dataflash_defconfig     |  2 +-
 configs/at91sam9263ek_nandflash_defconfig     |  2 +-
 configs/at91sam9263ek_norflash_boot_defconfig |  2 +-
 configs/at91sam9263ek_norflash_defconfig      |  2 +-
 configs/at91sam9g10ek_dataflash_cs0_defconfig |  2 +-
 configs/at91sam9g10ek_dataflash_cs3_defconfig |  2 +-
 configs/at91sam9g10ek_nandflash_defconfig     |  2 +-
 configs/at91sam9g20ek_2mmc_defconfig          |  2 +-
 .../at91sam9g20ek_2mmc_nandflash_defconfig    |  2 +-
 configs/at91sam9g20ek_dataflash_cs0_defconfig |  2 +-
 configs/at91sam9g20ek_dataflash_cs1_defconfig |  2 +-
 configs/at91sam9g20ek_nandflash_defconfig     |  2 +-
 configs/at91sam9m10g45ek_mmc_defconfig        |  2 +-
 configs/at91sam9m10g45ek_nandflash_defconfig  |  2 +-
 configs/at91sam9n12ek_mmc_defconfig           |  2 +-
 configs/at91sam9n12ek_nandflash_defconfig     |  2 +-
 configs/at91sam9n12ek_spiflash_defconfig      |  2 +-
 configs/at91sam9rlek_dataflash_defconfig      |  2 +-
 configs/at91sam9rlek_mmc_defconfig            |  2 +-
 configs/at91sam9rlek_nandflash_defconfig      |  2 +-
 configs/at91sam9x5ek_dataflash_defconfig      |  2 +-
 configs/at91sam9x5ek_mmc_defconfig            |  2 +-
 configs/at91sam9x5ek_nandflash_defconfig      |  2 +-
 configs/at91sam9x5ek_spiflash_defconfig       |  2 +-
 configs/at91sam9xeek_dataflash_cs0_defconfig  |  2 +-
 configs/at91sam9xeek_dataflash_cs1_defconfig  |  2 +-
 configs/at91sam9xeek_nandflash_defconfig      |  2 +-
 ...edev_cc_v1_0_ultrazedev_som_v1_0_defconfig |  2 +-
 configs/axm_defconfig                         |  2 +-
 configs/axs101_defconfig                      |  2 +-
 configs/axs103_defconfig                      |  2 +-
 configs/bananapi-m5_defconfig                 |  2 +-
 configs/bayleybay_defconfig                   |  2 +-
 configs/bcm7260_defconfig                     |  2 +-
 configs/bcm7445_defconfig                     |  2 +-
 configs/bcm947622_defconfig                   |  2 +-
 configs/bcm963158_ram_defconfig               |  2 +-
 configs/bcm96753ref_ram_defconfig             |  2 +-
 configs/bcm968360bg_ram_defconfig             |  2 +-
 configs/bcm968380gerg_ram_defconfig           |  2 +-
 configs/bcm968580xref_ram_defconfig           |  2 +-
 configs/bcm_ns3_defconfig                     |  2 +-
 configs/beaver_defconfig                      |  2 +-
 configs/beelink-gsking-x_defconfig            |  2 +-
 configs/beelink-gtking_defconfig              |  2 +-
 configs/beelink-gtkingpro_defconfig           |  2 +-
 configs/bitmain_antminer_s9_defconfig         |  2 +-
 configs/bk4r1_defconfig                       |  2 +-
 configs/blanche_defconfig                     |  2 +-
 configs/boston32r2_defconfig                  |  2 +-
 configs/boston32r2el_defconfig                |  2 +-
 configs/boston32r6_defconfig                  |  2 +-
 configs/boston32r6el_defconfig                |  2 +-
 configs/boston64r2_defconfig                  |  2 +-
 configs/boston64r2el_defconfig                |  2 +-
 configs/boston64r6_defconfig                  |  2 +-
 configs/boston64r6el_defconfig                |  2 +-
 configs/brppt2_defconfig                      |  2 +-
 configs/cardhu_defconfig                      |  2 +-
 configs/cei-tk1-som_defconfig                 |  2 +-
 configs/cgtqmx8_defconfig                     |  2 +-
 configs/cherryhill_defconfig                  |  2 +-
 configs/chromebit_mickey_defconfig            |  2 +-
 configs/chromebook_bob_defconfig              |  2 +-
 configs/chromebook_coral_defconfig            |  2 +-
 configs/chromebook_jerry_defconfig            |  2 +-
 configs/chromebook_kevin_defconfig            |  2 +-
 configs/chromebook_link_defconfig             |  2 +-
 configs/chromebook_minnie_defconfig           |  2 +-
 configs/chromebook_samus_defconfig            |  2 +-
 configs/chromebook_samus_tpl_defconfig        |  2 +-
 configs/chromebook_speedy_defconfig           |  2 +-
 configs/chromebox_panther_defconfig           |  2 +-
 configs/ci20_mmc_defconfig                    |  2 +-
 configs/clearfog_defconfig                    |  2 +-
 configs/clearfog_gt_8k_defconfig              |  2 +-
 configs/cm_fx6_defconfig                      |  2 +-
 configs/cobra5272_defconfig                   |  2 +-
 configs/colibri-imx6ull-emmc_defconfig        |  2 +-
 configs/colibri-imx6ull_defconfig             |  2 +-
 configs/colibri-imx8x_defconfig               |  2 +-
 configs/colibri_imx6_defconfig                |  2 +-
 configs/colibri_t20_defconfig                 |  2 +-
 configs/colibri_t30_defconfig                 |  2 +-
 configs/colibri_vf_defconfig                  |  2 +-
 configs/comtrend_ar5315u_ram_defconfig        |  2 +-
 configs/comtrend_ar5387un_ram_defconfig       |  2 +-
 configs/comtrend_ct5361_ram_defconfig         |  2 +-
 configs/comtrend_vr3032u_ram_defconfig        |  2 +-
 configs/comtrend_wap5813n_ram_defconfig       |  2 +-
 ...-qeval20-qa3-e3845-internal-uart_defconfig |  2 +-
 configs/conga-qeval20-qa3-e3845_defconfig     |  2 +-
 configs/controlcenterdc_defconfig             |  2 +-
 configs/coreboot64_defconfig                  |  2 +-
 configs/coreboot_defconfig                    |  2 +-
 configs/corstone1000_defconfig                |  2 +-
 configs/cortina_presidio-asic-base_defconfig  |  2 +-
 configs/cortina_presidio-asic-emmc_defconfig  |  2 +-
 configs/cortina_presidio-asic-pnand_defconfig |  2 +-
 configs/corvus_defconfig                      |  2 +-
 configs/cougarcanyon2_defconfig               |  2 +-
 configs/crownbay_defconfig                    |  2 +-
 configs/crs305-1g-4s-bit_defconfig            |  2 +-
 configs/crs305-1g-4s_defconfig                |  2 +-
 configs/crs326-24g-2s-bit_defconfig           |  2 +-
 configs/crs326-24g-2s_defconfig               |  2 +-
 configs/crs328-4c-20s-4s-bit_defconfig        |  2 +-
 configs/crs328-4c-20s-4s_defconfig            |  2 +-
 configs/d2net_v2_defconfig                    |  2 +-
 configs/da850evm_defconfig                    |  2 +-
 configs/da850evm_direct_nor_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/db-xc3-24g4xg_defconfig               |  2 +-
 configs/deneb_defconfig                       |  2 +-
 configs/devkit3250_defconfig                  |  2 +-
 configs/devkit8000_defconfig                  |  2 +-
 configs/dfi-bt700-q7x-151_defconfig           |  2 +-
 configs/dh_imx6_defconfig                     |  2 +-
 configs/display5_defconfig                    |  2 +-
 configs/display5_factory_defconfig            |  2 +-
 configs/dns325_defconfig                      |  2 +-
 configs/dockstar_defconfig                    |  2 +-
 configs/draco_defconfig                       |  2 +-
 configs/dragonboard410c_defconfig             |  2 +-
 configs/dragonboard820c_defconfig             |  2 +-
 configs/dreamplug_defconfig                   |  2 +-
 configs/ds109_defconfig                       |  2 +-
 configs/ds414_defconfig                       |  2 +-
 configs/durian_defconfig                      |  2 +-
 configs/eDPU_defconfig                        |  2 +-
 configs/ea-lpc3250devkitv2_defconfig          |  2 +-
 configs/eb_cpu5282_defconfig                  |  2 +-
 configs/eb_cpu5282_internal_defconfig         |  2 +-
 configs/edison_defconfig                      |  2 +-
 configs/elgin-rv1108_defconfig                |  2 +-
 configs/emsdp_defconfig                       |  2 +-
 configs/espresso7420_defconfig                |  2 +-
 configs/etamin_defconfig                      |  2 +-
 configs/ethernut5_defconfig                   |  2 +-
 configs/ev-imx280-nano-x-mb_defconfig         |  2 +-
 configs/evb-ast2500_defconfig                 |  2 +-
 configs/evb-ast2600_defconfig                 |  2 +-
 configs/evb-px30_defconfig                    |  2 +-
 configs/evb-px5_defconfig                     |  2 +-
 configs/evb-rk3036_defconfig                  |  2 +-
 configs/evb-rk3128_defconfig                  |  2 +-
 configs/evb-rk3229_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/evb-rv1108_defconfig                  |  2 +-
 configs/ficus-rk3399_defconfig                |  2 +-
 configs/firefly-px30_defconfig                |  2 +-
 configs/firefly-rk3288_defconfig              |  2 +-
 configs/firefly-rk3399_defconfig              |  2 +-
 configs/galileo_defconfig                     |  2 +-
 .../gardena-smart-gateway-at91sam_defconfig   |  2 +-
 configs/gazerbeam_defconfig                   |  2 +-
 configs/ge_b1x5v2_defconfig                   |  2 +-
 configs/ge_bx50v3_defconfig                   |  2 +-
 configs/geekbox_defconfig                     |  2 +-
 configs/giedi_defconfig                       |  2 +-
 configs/goflexhome_defconfig                  |  2 +-
 configs/gose_defconfig                        |  2 +-
 configs/grpeach_defconfig                     |  2 +-
 configs/gurnard_defconfig                     |  2 +-
 configs/guruplug_defconfig                    |  2 +-
 configs/gwventana_emmc_defconfig              |  2 +-
 configs/gwventana_gw5904_defconfig            |  2 +-
 configs/gwventana_nand_defconfig              |  2 +-
 configs/harmony_defconfig                     |  2 +-
 configs/helios4_defconfig                     |  2 +-
 configs/highbank_defconfig                    |  2 +-
 configs/hihope_rzg2_defconfig                 |  2 +-
 configs/hikey960_defconfig                    |  2 +-
 configs/hikey_defconfig                       |  2 +-
 configs/hsdk_4xd_defconfig                    |  2 +-
 configs/hsdk_defconfig                        |  2 +-
 configs/huawei_hg556a_ram_defconfig           |  2 +-
 configs/ib62x0_defconfig                      |  2 +-
 configs/iconnect_defconfig                    |  2 +-
 configs/imx28_xea_defconfig                   |  2 +-
 configs/imx28_xea_sb_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/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_evk_fspi_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/imx93_11x11_evk_defconfig             |  2 +-
 configs/imxrt1020-evk_defconfig               |  2 +-
 configs/imxrt1050-evk_defconfig               |  2 +-
 configs/inetspace_v2_defconfig                |  2 +-
 configs/integratorap_cm720t_defconfig         |  2 +-
 configs/integratorap_cm920t_defconfig         |  2 +-
 configs/integratorap_cm926ejs_defconfig       |  2 +-
 configs/integratorap_cm946es_defconfig        |  2 +-
 configs/integratorcp_cm1136_defconfig         |  2 +-
 configs/integratorcp_cm920t_defconfig         |  2 +-
 configs/integratorcp_cm926ejs_defconfig       |  2 +-
 configs/integratorcp_cm946es_defconfig        |  2 +-
 configs/iot_devkit_defconfig                  |  2 +-
 configs/jethub_j100_defconfig                 |  2 +-
 configs/jethub_j80_defconfig                  |  2 +-
 configs/jetson-tk1_defconfig                  |  2 +-
 configs/k2e_evm_defconfig                     |  2 +-
 configs/k2e_hs_evm_defconfig                  |  2 +-
 configs/k2g_evm_defconfig                     |  2 +-
 configs/k2g_hs_evm_defconfig                  |  2 +-
 configs/k2hk_evm_defconfig                    |  2 +-
 configs/k2hk_hs_evm_defconfig                 |  2 +-
 configs/k2l_evm_defconfig                     |  2 +-
 configs/k2l_hs_evm_defconfig                  |  2 +-
 configs/khadas-edge-captain-rk3399_defconfig  |  2 +-
 configs/khadas-edge-rk3399_defconfig          |  2 +-
 configs/khadas-edge-v-rk3399_defconfig        |  2 +-
 configs/khadas-vim2_defconfig                 |  2 +-
 configs/khadas-vim3_android_ab_defconfig      |  2 +-
 configs/khadas-vim3_android_defconfig         |  2 +-
 configs/khadas-vim3_defconfig                 |  2 +-
 configs/khadas-vim3l_android_ab_defconfig     |  2 +-
 configs/khadas-vim3l_android_defconfig        |  2 +-
 configs/khadas-vim3l_defconfig                |  2 +-
 configs/khadas-vim_defconfig                  |  2 +-
 configs/km_kirkwood_128m16_defconfig          |  2 +-
 configs/km_kirkwood_defconfig                 |  2 +-
 configs/km_kirkwood_pci_defconfig             |  2 +-
 configs/kmcent2_defconfig                     |  2 +-
 configs/kmcoge5ne_defconfig                   |  2 +-
 configs/kmcoge5un_defconfig                   |  2 +-
 configs/kmeter1_defconfig                     |  2 +-
 configs/kmnusa_defconfig                      |  2 +-
 configs/kmopti2_defconfig                     |  2 +-
 configs/kmsupx5_defconfig                     |  2 +-
 configs/kmsuse2_defconfig                     |  2 +-
 configs/kmtepr2_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/kp_imx53_defconfig                    |  2 +-
 configs/kp_imx6q_tpc_defconfig                |  2 +-
 configs/kylin-rk3036_defconfig                |  2 +-
 configs/lager_defconfig                       |  2 +-
 configs/leez-rk3399_defconfig                 |  2 +-
 configs/legoev3_defconfig                     |  2 +-
 configs/libretech-ac_defconfig                |  2 +-
 configs/libretech-cc_defconfig                |  2 +-
 configs/libretech-cc_v2_defconfig             |  2 +-
 configs/libretech-s905d-pc_defconfig          |  2 +-
 configs/libretech-s912-pc_defconfig           |  2 +-
 configs/lion-rk3368_defconfig                 |  2 +-
 configs/liteboard_defconfig                   |  2 +-
 configs/ls1012a2g5rdb_qspi_defconfig          |  2 +-
 configs/ls1012a2g5rdb_tfa_defconfig           |  2 +-
 configs/ls1012afrdm_qspi_defconfig            |  2 +-
 configs/ls1012afrdm_tfa_defconfig             |  2 +-
 .../ls1012afrwy_qspi_SECURE_BOOT_defconfig    |  2 +-
 configs/ls1012afrwy_qspi_defconfig            |  2 +-
 configs/ls1012afrwy_tfa_SECURE_BOOT_defconfig |  2 +-
 configs/ls1012afrwy_tfa_defconfig             |  2 +-
 configs/ls1012aqds_qspi_defconfig             |  2 +-
 configs/ls1012aqds_tfa_SECURE_BOOT_defconfig  |  2 +-
 configs/ls1012aqds_tfa_defconfig              |  2 +-
 configs/ls1012ardb_qspi_SECURE_BOOT_defconfig |  2 +-
 configs/ls1012ardb_qspi_defconfig             |  2 +-
 configs/ls1012ardb_tfa_SECURE_BOOT_defconfig  |  2 +-
 configs/ls1012ardb_tfa_defconfig              |  2 +-
 configs/ls1021aiot_qspi_defconfig             |  2 +-
 configs/ls1021aiot_sdcard_defconfig           |  2 +-
 configs/ls1021aqds_ddr4_nor_defconfig         |  2 +-
 configs/ls1021aqds_ddr4_nor_lpuart_defconfig  |  2 +-
 configs/ls1021aqds_nand_defconfig             |  2 +-
 configs/ls1021aqds_nor_SECURE_BOOT_defconfig  |  2 +-
 configs/ls1021aqds_nor_defconfig              |  2 +-
 configs/ls1021aqds_nor_lpuart_defconfig       |  2 +-
 configs/ls1021aqds_qspi_defconfig             |  2 +-
 configs/ls1021aqds_sdcard_ifc_defconfig       |  2 +-
 configs/ls1021aqds_sdcard_qspi_defconfig      |  2 +-
 configs/ls1021atsn_qspi_defconfig             |  2 +-
 configs/ls1021atsn_sdcard_defconfig           |  2 +-
 configs/ls1021atwr_nor_SECURE_BOOT_defconfig  |  2 +-
 configs/ls1021atwr_nor_defconfig              |  2 +-
 configs/ls1021atwr_nor_lpuart_defconfig       |  2 +-
 configs/ls1021atwr_qspi_defconfig             |  2 +-
 ...s1021atwr_sdcard_ifc_SECURE_BOOT_defconfig |  2 +-
 configs/ls1021atwr_sdcard_ifc_defconfig       |  2 +-
 configs/ls1021atwr_sdcard_qspi_defconfig      |  2 +-
 configs/ls1043aqds_defconfig                  |  2 +-
 configs/ls1043aqds_lpuart_defconfig           |  2 +-
 configs/ls1043aqds_nand_defconfig             |  2 +-
 configs/ls1043aqds_nor_ddr3_defconfig         |  2 +-
 configs/ls1043aqds_qspi_defconfig             |  2 +-
 configs/ls1043aqds_sdcard_ifc_defconfig       |  2 +-
 configs/ls1043aqds_sdcard_qspi_defconfig      |  2 +-
 configs/ls1043aqds_tfa_SECURE_BOOT_defconfig  |  2 +-
 configs/ls1043aqds_tfa_defconfig              |  2 +-
 configs/ls1043ardb_SECURE_BOOT_defconfig      |  2 +-
 configs/ls1043ardb_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/ls1043ardb_tfa_SECURE_BOOT_defconfig  |  2 +-
 configs/ls1043ardb_tfa_defconfig              |  2 +-
 configs/ls1046afrwy_tfa_SECURE_BOOT_defconfig |  2 +-
 configs/ls1046afrwy_tfa_defconfig             |  2 +-
 configs/ls1046aqds_SECURE_BOOT_defconfig      |  2 +-
 configs/ls1046aqds_defconfig                  |  2 +-
 configs/ls1046aqds_lpuart_defconfig           |  2 +-
 configs/ls1046aqds_nand_defconfig             |  2 +-
 configs/ls1046aqds_qspi_defconfig             |  2 +-
 configs/ls1046aqds_sdcard_ifc_defconfig       |  2 +-
 configs/ls1046aqds_sdcard_qspi_defconfig      |  2 +-
 configs/ls1046aqds_tfa_SECURE_BOOT_defconfig  |  2 +-
 configs/ls1046aqds_tfa_defconfig              |  2 +-
 configs/ls1046ardb_emmc_defconfig             |  2 +-
 configs/ls1046ardb_qspi_SECURE_BOOT_defconfig |  2 +-
 configs/ls1046ardb_qspi_defconfig             |  2 +-
 configs/ls1046ardb_qspi_spl_defconfig         |  2 +-
 .../ls1046ardb_sdcard_SECURE_BOOT_defconfig   |  2 +-
 configs/ls1046ardb_sdcard_defconfig           |  2 +-
 configs/ls1046ardb_tfa_SECURE_BOOT_defconfig  |  2 +-
 configs/ls1046ardb_tfa_defconfig              |  2 +-
 configs/ls1088aqds_defconfig                  |  2 +-
 configs/ls1088aqds_qspi_SECURE_BOOT_defconfig |  2 +-
 configs/ls1088aqds_qspi_defconfig             |  2 +-
 configs/ls1088aqds_sdcard_ifc_defconfig       |  2 +-
 configs/ls1088aqds_sdcard_qspi_defconfig      |  2 +-
 configs/ls1088aqds_tfa_defconfig              |  2 +-
 configs/ls1088ardb_qspi_SECURE_BOOT_defconfig |  2 +-
 configs/ls1088ardb_qspi_defconfig             |  2 +-
 ...1088ardb_sdcard_qspi_SECURE_BOOT_defconfig |  2 +-
 configs/ls1088ardb_sdcard_qspi_defconfig      |  2 +-
 configs/ls1088ardb_tfa_SECURE_BOOT_defconfig  |  2 +-
 configs/ls1088ardb_tfa_defconfig              |  2 +-
 configs/ls2080aqds_SECURE_BOOT_defconfig      |  2 +-
 configs/ls2080aqds_defconfig                  |  2 +-
 configs/ls2080aqds_nand_defconfig             |  2 +-
 configs/ls2080aqds_qspi_defconfig             |  2 +-
 configs/ls2080aqds_sdcard_defconfig           |  2 +-
 configs/ls2080ardb_SECURE_BOOT_defconfig      |  2 +-
 configs/ls2080ardb_defconfig                  |  2 +-
 configs/ls2080ardb_nand_defconfig             |  2 +-
 configs/ls2081ardb_defconfig                  |  2 +-
 configs/ls2088aqds_tfa_defconfig              |  2 +-
 configs/ls2088ardb_qspi_SECURE_BOOT_defconfig |  2 +-
 configs/ls2088ardb_qspi_defconfig             |  2 +-
 configs/ls2088ardb_tfa_SECURE_BOOT_defconfig  |  2 +-
 configs/ls2088ardb_tfa_defconfig              |  2 +-
 configs/lschlv2_defconfig                     |  2 +-
 configs/lsxhl_defconfig                       |  2 +-
 configs/lx2160aqds_tfa_SECURE_BOOT_defconfig  |  2 +-
 configs/lx2160aqds_tfa_defconfig              |  2 +-
 configs/lx2160ardb_tfa_SECURE_BOOT_defconfig  |  2 +-
 configs/lx2160ardb_tfa_defconfig              |  2 +-
 configs/lx2160ardb_tfa_stmm_defconfig         |  2 +-
 configs/lx2162aqds_tfa_SECURE_BOOT_defconfig  |  2 +-
 configs/lx2162aqds_tfa_defconfig              |  2 +-
 .../lx2162aqds_tfa_verified_boot_defconfig    |  2 +-
 configs/m53menlo_defconfig                    |  2 +-
 configs/malta64_defconfig                     |  2 +-
 configs/malta64el_defconfig                   |  2 +-
 configs/malta_defconfig                       |  2 +-
 configs/maltael_defconfig                     |  2 +-
 configs/marsboard_defconfig                   |  2 +-
 configs/maxbcm_defconfig                      |  2 +-
 configs/mccmon6_nor_defconfig                 |  2 +-
 configs/mccmon6_sd_defconfig                  |  2 +-
 configs/medcom-wide_defconfig                 |  2 +-
 configs/meesc_dataflash_defconfig             |  2 +-
 configs/meesc_defconfig                       |  2 +-
 configs/microblaze-generic_defconfig          |  2 +-
 configs/minnowmax_defconfig                   |  2 +-
 configs/miqi-rk3288_defconfig                 |  2 +-
 configs/mk808_defconfig                       |  2 +-
 configs/mscc_jr2_defconfig                    |  2 +-
 configs/mscc_luton_defconfig                  |  2 +-
 configs/mscc_ocelot_defconfig                 |  2 +-
 configs/mscc_serval_defconfig                 |  2 +-
 configs/mscc_servalt_defconfig                |  2 +-
 configs/mt7622_rfb_defconfig                  |  2 +-
 configs/mt7623a_unielec_u7623_02_defconfig    |  2 +-
 configs/mt7623n_bpir2_defconfig               |  2 +-
 configs/mt7629_rfb_defconfig                  |  2 +-
 configs/mt8183_pumpkin_defconfig              |  2 +-
 configs/mt8512_bm1_emmc_defconfig             |  2 +-
 configs/mt8516_pumpkin_defconfig              |  2 +-
 configs/mt8518_ap1_emmc_defconfig             |  2 +-
 configs/mvebu_crb_cn9130_defconfig            |  2 +-
 configs/mvebu_db-88f3720_defconfig            |  2 +-
 configs/mvebu_db_armada8k_defconfig           |  2 +-
 configs/mvebu_db_cn9130_defconfig             |  2 +-
 configs/mvebu_espressobin-88f3720_defconfig   |  2 +-
 configs/mvebu_mcbin-88f8040_defconfig         |  2 +-
 configs/mvebu_puzzle-m801-88f8040_defconfig   |  2 +-
 configs/mx23_olinuxino_defconfig              |  2 +-
 configs/mx23evk_defconfig                     |  2 +-
 configs/mx28evk_defconfig                     |  2 +-
 configs/mx51evk_defconfig                     |  2 +-
 configs/mx53cx9020_defconfig                  |  2 +-
 configs/mx53loco_defconfig                    |  2 +-
 configs/mx53ppd_defconfig                     |  2 +-
 configs/mx6cuboxi_defconfig                   |  2 +-
 configs/mx6memcal_defconfig                   |  2 +-
 configs/mx6qsabrelite_defconfig               |  2 +-
 configs/mx6sabreauto_defconfig                |  2 +-
 configs/mx6sabresd_defconfig                  |  2 +-
 configs/mx6slevk_defconfig                    |  2 +-
 configs/mx6slevk_spinor_defconfig             |  2 +-
 configs/mx6slevk_spl_defconfig                |  2 +-
 configs/mx6sllevk_defconfig                   |  2 +-
 configs/mx6sllevk_plugin_defconfig            |  2 +-
 configs/mx6sxsabreauto_defconfig              |  2 +-
 configs/mx6sxsabresd_defconfig                |  2 +-
 configs/mx6ul_14x14_evk_defconfig             |  2 +-
 configs/mx6ul_9x9_evk_defconfig               |  2 +-
 configs/mx6ull_14x14_evk_defconfig            |  2 +-
 configs/mx6ull_14x14_evk_plugin_defconfig     |  2 +-
 configs/mx6ulz_14x14_evk_defconfig            |  2 +-
 configs/mx7ulp_com_defconfig                  |  2 +-
 configs/mx7ulp_evk_defconfig                  |  2 +-
 configs/mx7ulp_evk_plugin_defconfig           |  2 +-
 configs/myir_mys_6ulx_defconfig               |  2 +-
 configs/nanopc-t4-rk3399_defconfig            |  2 +-
 configs/nanopi-k2_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/nas220_defconfig                      |  2 +-
 configs/net2big_v2_defconfig                  |  2 +-
 configs/netgear_cg3100d_ram_defconfig         |  2 +-
 configs/netgear_dgnd3700v2_ram_defconfig      |  2 +-
 configs/netspace_lite_v2_defconfig            |  2 +-
 configs/netspace_max_v2_defconfig             |  2 +-
 configs/netspace_mini_v2_defconfig            |  2 +-
 configs/netspace_v2_defconfig                 |  2 +-
 configs/nitrogen6dl2g_defconfig               |  2 +-
 configs/nitrogen6dl_defconfig                 |  2 +-
 configs/nitrogen6q2g_defconfig                |  2 +-
 configs/nitrogen6q_defconfig                  |  2 +-
 configs/nitrogen6s1g_defconfig                |  2 +-
 configs/nitrogen6s_defconfig                  |  2 +-
 configs/novena_defconfig                      |  2 +-
 configs/nsa310s_defconfig                     |  2 +-
 configs/nsim_700_defconfig                    |  2 +-
 configs/nsim_700be_defconfig                  |  2 +-
 configs/nsim_hs38_defconfig                   |  2 +-
 configs/nsim_hs38be_defconfig                 |  2 +-
 configs/nyan-big_defconfig                    |  2 +-
 configs/o4-imx6ull-nano_defconfig             |  2 +-
 configs/octeon_ebb7304_defconfig              |  2 +-
 configs/octeon_nic23_defconfig                |  2 +-
 configs/octeontx2_95xx_defconfig              |  2 +-
 configs/octeontx2_96xx_defconfig              |  2 +-
 configs/octeontx_81xx_defconfig               |  2 +-
 configs/octeontx_83xx_defconfig               |  2 +-
 configs/odroid-c2_defconfig                   |  2 +-
 configs/odroid-c4_defconfig                   |  2 +-
 configs/odroid-go2_defconfig                  |  2 +-
 configs/odroid-hc4_defconfig                  |  2 +-
 configs/odroid-n2_defconfig                   |  2 +-
 configs/odroid-xu3_defconfig                  |  2 +-
 configs/odroid_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/omapl138_lcdk_defconfig               |  2 +-
 configs/openpiton_riscv64_defconfig           |  2 +-
 configs/openpiton_riscv64_spl_defconfig       |  2 +-
 configs/openrd_base_defconfig                 |  2 +-
 configs/openrd_client_defconfig               |  2 +-
 configs/openrd_ultimate_defconfig             |  2 +-
 configs/opos6uldev_defconfig                  |  2 +-
 configs/orangepi-rk3399_defconfig             |  2 +-
 configs/origen_defconfig                      |  2 +-
 configs/p200_defconfig                        |  2 +-
 configs/p201_defconfig                        |  2 +-
 configs/p212_defconfig                        |  2 +-
 configs/p2371-0000_defconfig                  |  2 +-
 configs/p2371-2180_defconfig                  |  2 +-
 configs/p2571_defconfig                       |  2 +-
 configs/p2771-0000-000_defconfig              |  2 +-
 configs/p2771-0000-500_defconfig              |  2 +-
 configs/p3450-0000_defconfig                  |  2 +-
 configs/paz00_defconfig                       |  2 +-
 configs/pcm052_defconfig                      |  2 +-
 configs/pcm058_defconfig                      |  2 +-
 configs/peach-pi_defconfig                    |  2 +-
 configs/peach-pit_defconfig                   |  2 +-
 configs/pg_wcom_expu1_defconfig               |  2 +-
 configs/pg_wcom_expu1_update_defconfig        |  2 +-
 configs/pg_wcom_seli8_defconfig               |  2 +-
 configs/pg_wcom_seli8_update_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/pic32mzdask_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-imx8mq_defconfig                 |  2 +-
 configs/pico-pi-imx6ul_defconfig              |  2 +-
 configs/pinebook-pro-rk3399_defconfig         |  2 +-
 configs/plutux_defconfig                      |  2 +-
 configs/pm9261_defconfig                      |  2 +-
 configs/pm9263_defconfig                      |  2 +-
 configs/pm9g45_defconfig                      |  2 +-
 configs/pogo_e02_defconfig                    |  2 +-
 configs/pogo_v4_defconfig                     |  2 +-
 configs/poleg_evb_defconfig                   |  2 +-
 configs/pomelo_defconfig                      |  2 +-
 configs/poplar_defconfig                      |  2 +-
 configs/popmetal-rk3288_defconfig             |  2 +-
 configs/porter_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                        |  2 +-
 configs/qemu-ppce500_defconfig                |  2 +-
 configs/qemu-x86_64_defconfig                 |  2 +-
 configs/qemu-x86_defconfig                    |  2 +-
 configs/r2dplus_defconfig                     |  2 +-
 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/radxa-zero_defconfig                  |  2 +-
 configs/rastaban_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/rpi_0_w_defconfig                     |  2 +-
 configs/rpi_2_defconfig                       |  2 +-
 configs/rpi_3_32b_defconfig                   |  2 +-
 configs/rpi_3_b_plus_defconfig                |  2 +-
 configs/rpi_3_defconfig                       |  2 +-
 configs/rpi_4_32b_defconfig                   |  2 +-
 configs/rpi_4_defconfig                       |  2 +-
 configs/rpi_arm64_defconfig                   |  2 +-
 configs/rpi_defconfig                         |  2 +-
 configs/rut_defconfig                         |  2 +-
 configs/rzg2_beacon_defconfig                 |  2 +-
 configs/s400_defconfig                        |  2 +-
 configs/s5p4418_nanopi2_defconfig             |  2 +-
 configs/s5p_goni_defconfig                    |  2 +-
 configs/s5pc210_universal_defconfig           |  2 +-
 configs/sagem_f@st1704_ram_defconfig          |  2 +-
 configs/sam9x60_curiosity_mmc_defconfig       |  2 +-
 configs/sam9x60ek_mmc_defconfig               |  2 +-
 configs/sam9x60ek_nandflash_defconfig         |  2 +-
 configs/sam9x60ek_qspiflash_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_icp_qspiflash_defconfig       |  2 +-
 configs/sama5d2_ptc_ek_mmc_defconfig          |  2 +-
 configs/sama5d2_ptc_ek_nandflash_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/sama5d36ek_cmp_mmc_defconfig          |  2 +-
 configs/sama5d36ek_cmp_nandflash_defconfig    |  2 +-
 configs/sama5d36ek_cmp_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/sama7g5ek_mmc1_defconfig              |  2 +-
 configs/sama7g5ek_mmc_defconfig               |  2 +-
 configs/sandbox64_defconfig                   |  2 +-
 configs/sandbox_defconfig                     |  2 +-
 configs/sandbox_flattree_defconfig            |  2 +-
 configs/sandbox_noinst_defconfig              |  2 +-
 configs/sandbox_spl_defconfig                 |  2 +-
 configs/sandbox_vpl_defconfig                 |  2 +-
 configs/seaboard_defconfig                    |  2 +-
 configs/seeed_npi_imx6ull_defconfig           |  2 +-
 configs/sei510_defconfig                      |  2 +-
 configs/sei610_defconfig                      |  2 +-
 configs/sfr_nb4-ser_ram_defconfig             |  2 +-
 configs/sheep-rk3368_defconfig                |  2 +-
 configs/sheevaplug_defconfig                  |  2 +-
 configs/silinux_ek874_defconfig               |  2 +-
 configs/silk_defconfig                        |  2 +-
 configs/sipeed_maix_smode_defconfig           |  2 +-
 configs/smartweb_defconfig                    |  2 +-
 configs/smdk5250_defconfig                    |  2 +-
 configs/smdk5420_defconfig                    |  2 +-
 configs/smdkc100_defconfig                    |  2 +-
 configs/smdkv310_defconfig                    |  2 +-
 configs/sniper_defconfig                      |  2 +-
 configs/snow_defconfig                        |  2 +-
 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/socrates_defconfig                    |  2 +-
 configs/som-db5800-som-6867_defconfig         |  2 +-
 configs/somlabs_visionsom_6ull_defconfig      |  2 +-
 configs/spring_defconfig                      |  2 +-
 configs/stemmy_defconfig                      |  2 +-
 configs/stih410-b2260_defconfig               |  2 +-
 configs/stm32746g-eval_defconfig              |  2 +-
 configs/stm32746g-eval_spl_defconfig          |  2 +-
 configs/stm32f429-discovery_defconfig         |  2 +-
 configs/stm32f429-evaluation_defconfig        |  2 +-
 configs/stm32f469-discovery_defconfig         |  2 +-
 configs/stm32f746-disco_defconfig             |  2 +-
 configs/stm32f746-disco_spl_defconfig         |  2 +-
 configs/stm32f769-disco_defconfig             |  2 +-
 configs/stm32f769-disco_spl_defconfig         |  2 +-
 configs/stm32h743-disco_defconfig             |  2 +-
 configs/stm32h743-eval_defconfig              |  2 +-
 configs/stm32h750-art-pi_defconfig            |  2 +-
 configs/stmark2_defconfig                     |  2 +-
 configs/stout_defconfig                       |  2 +-
 configs/stv0991_defconfig                     |  2 +-
 configs/synquacer_developerbox_defconfig      |  2 +-
 configs/syzygy_hub_defconfig                  |  2 +-
 configs/taurus_defconfig                      |  2 +-
 configs/tb100_defconfig                       |  2 +-
 configs/tbs2910_defconfig                     |  2 +-
 configs/tec-ng_defconfig                      |  2 +-
 configs/tec_defconfig                         |  2 +-
 configs/ten64_tfa_defconfig                   |  2 +-
 ...able-x86-conga-qa3-e3845-pcie-x4_defconfig |  2 +-
 .../theadorable-x86-conga-qa3-e3845_defconfig |  2 +-
 configs/theadorable-x86-dfi-bt700_defconfig   |  2 +-
 configs/theadorable_debug_defconfig           |  2 +-
 configs/thuban_defconfig                      |  2 +-
 configs/thunderx_88xx_defconfig               |  2 +-
 configs/tinker-rk3288_defconfig               |  2 +-
 configs/tinker-s-rk3288_defconfig             |  2 +-
 configs/tools-only_defconfig                  |  2 +-
 configs/topic_miami_defconfig                 |  2 +-
 configs/topic_miamilite_defconfig             |  2 +-
 configs/topic_miamiplus_defconfig             |  2 +-
 configs/total_compute_defconfig               |  2 +-
 configs/tplink_wdr4300_defconfig              |  2 +-
 configs/trats2_defconfig                      |  2 +-
 configs/trats_defconfig                       |  2 +-
 configs/trimslice_defconfig                   |  2 +-
 configs/tuge1_defconfig                       |  2 +-
 configs/turris_mox_defconfig                  |  2 +-
 configs/turris_omnia_defconfig                |  2 +-
 configs/tuxx1_defconfig                       |  2 +-
 configs/u200_defconfig                        |  2 +-
 configs/uDPU_defconfig                        |  2 +-
 configs/udoo_defconfig                        |  2 +-
 configs/udoo_neo_defconfig                    |  2 +-
 configs/uniphier_ld4_sld8_defconfig           |  2 +-
 configs/uniphier_v7_defconfig                 |  2 +-
 configs/uniphier_v8_defconfig                 |  2 +-
 configs/usb_a9263_dataflash_defconfig         |  2 +-
 configs/usbarmory_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/vexpress_ca9x4_defconfig              |  2 +-
 configs/vf610twr_defconfig                    |  2 +-
 configs/vf610twr_nand_defconfig               |  2 +-
 configs/vinco_defconfig                       |  2 +-
 configs/vining_2000_defconfig                 |  2 +-
 configs/vyasa-rk3288_defconfig                |  2 +-
 configs/wandboard_defconfig                   |  2 +-
 configs/wetek-core2_defconfig                 |  2 +-
 configs/work_92105_defconfig                  |  2 +-
 configs/x530_defconfig                        |  2 +-
 configs/xenguest_arm64_defconfig              |  2 +-
 configs/xilinx_versal_mini_defconfig          |  2 +-
 configs/xilinx_versal_mini_emmc0_defconfig    |  2 +-
 configs/xilinx_versal_mini_emmc1_defconfig    |  2 +-
 configs/xilinx_versal_virt_defconfig          |  2 +-
 configs/xilinx_zynq_virt_defconfig            |  2 +-
 configs/xilinx_zynqmp_mini_defconfig          |  2 +-
 configs/xilinx_zynqmp_mini_emmc0_defconfig    |  2 +-
 configs/xilinx_zynqmp_mini_emmc1_defconfig    |  2 +-
 configs/xilinx_zynqmp_mini_nand_defconfig     |  2 +-
 .../xilinx_zynqmp_mini_nand_single_defconfig  |  2 +-
 configs/xilinx_zynqmp_mini_qspi_defconfig     |  2 +-
 configs/xilinx_zynqmp_r5_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 +-
 doc/README.arm-relocation                     | 10 +++----
 doc/SPL/README.omap3                          |  6 ++---
 doc/arch/m68k.rst                             |  2 +-
 doc/arch/sandbox.rst                          |  2 +-
 doc/board/coreboot/coreboot.rst               |  4 +--
 doc/board/google/chromebook_coral.rst         |  4 +--
 doc/board/google/chromebook_samus.rst         |  2 +-
 doc/board/intel/minnowmax.rst                 |  2 +-
 doc/board/intel/slimbootloader.rst            |  4 +--
 doc/board/nxp/mx6ul_14x14_evk.rst             |  4 +--
 doc/board/sipeed/maix.rst                     |  4 +--
 doc/chromium/chainload.rst                    |  8 +++---
 doc/develop/moveconfig.rst                    |  4 +--
 include/configs/MCR3000.h                     |  2 +-
 include/configs/MPC837XERDB.h                 | 10 +++----
 include/configs/MPC8548CDS.h                  | 10 +++----
 include/configs/P2041RDB.h                    |  6 ++---
 include/configs/T102xRDB.h                    |  4 +--
 include/configs/T104xRDB.h                    |  2 +-
 include/configs/T208xQDS.h                    |  4 +--
 include/configs/T208xRDB.h                    |  4 +--
 include/configs/T4240RDB.h                    |  4 +--
 include/configs/am3517_evm.h                  |  2 +-
 include/configs/at91sam9260ek.h               |  2 +-
 include/configs/baltos.h                      |  2 +-
 include/configs/bcmstb.h                      |  2 +-
 include/configs/brppt1.h                      |  4 +--
 include/configs/cobra5272.h                   |  2 +-
 include/configs/corenet_ds.h                  |  6 ++---
 include/configs/corvus.h                      |  6 ++---
 include/configs/devkit3250.h                  |  6 ++---
 include/configs/evb_ast2500.h                 |  2 +-
 include/configs/evb_ast2600.h                 |  2 +-
 .../configs/gardena-smart-gateway-at91sam.h   |  4 +--
 .../configs/gardena-smart-gateway-mt7688.h    |  2 +-
 include/configs/hikey.h                       |  2 +-
 include/configs/hikey960.h                    |  2 +-
 include/configs/imx6-engicam.h                |  2 +-
 include/configs/imx6_logic.h                  |  2 +-
 include/configs/kontron-sl-mx6ul.h            |  2 +-
 include/configs/linkit-smart-7688.h           |  2 +-
 include/configs/ls1021aqds.h                  |  4 +--
 include/configs/ls1043a_common.h              |  6 ++---
 include/configs/ls1046a_common.h              |  4 +--
 include/configs/ls1046aqds.h                  |  2 +-
 include/configs/ls1088a_common.h              |  2 +-
 include/configs/ls2080a_common.h              |  2 +-
 include/configs/meesc.h                       |  2 +-
 include/configs/microblaze-generic.h          |  2 +-
 include/configs/mt7620.h                      |  2 +-
 include/configs/mt7622.h                      |  4 +--
 include/configs/mt7628.h                      |  2 +-
 include/configs/mt8512.h                      |  2 +-
 include/configs/mv-common.h                   |  2 +-
 include/configs/octeontx2_common.h            |  2 +-
 include/configs/octeontx_common.h             |  2 +-
 include/configs/p1_p2_rdb_pc.h                | 18 ++++++-------
 include/configs/rpi.h                         |  2 +-
 include/configs/siemens-am33x-common.h        |  2 +-
 include/configs/smartweb.h                    |  6 ++---
 include/configs/taurus.h                      |  6 ++---
 include/configs/ti_armv7_common.h             |  2 +-
 include/configs/vocore2.h                     |  2 +-
 include/configs/work_92105.h                  |  6 ++---
 include/spl.h                                 |  4 +--
 lib/efi/efi_stub.c                            | 10 +++----
 lib/efi_loader/efi_runtime.c                  |  8 +++---
 lib/trace.c                                   |  4 +--
 tools/binman/binman.rst                       |  4 +--
 tools/binman/entries.rst                      |  2 +-
 tools/binman/etype/fit.py                     |  2 +-
 tools/binman/etype/u_boot_with_ucode_ptr.py   |  2 +-
 1104 files changed, 1254 insertions(+), 1254 deletions(-)

diff --git a/Kconfig b/Kconfig
index 991b260182e..10b749501c8 100644
--- a/Kconfig
+++ b/Kconfig
@@ -274,7 +274,7 @@ config HAS_CUSTOM_SYS_INIT_SP_ADDR
 config CUSTOM_SYS_INIT_SP_ADDR
 	hex "Static location for the initial stack pointer"
 	depends on HAS_CUSTOM_SYS_INIT_SP_ADDR
-	default SYS_TEXT_BASE if TFABOOT
+	default TEXT_BASE if TFABOOT
 
 config SYS_MALLOC_F
 	bool "Enable malloc() pool before relocation"
diff --git a/Makefile b/Makefile
index 0b8079cf81d..980557fea4d 100644
--- a/Makefile
+++ b/Makefile
@@ -1038,7 +1038,7 @@ LDFLAGS_u-boot += -z notext
 LDFLAGS_u-boot += --build-id=none
 
 ifeq ($(CONFIG_ARC)$(CONFIG_NIOS2)$(CONFIG_X86)$(CONFIG_XTENSA),)
-LDFLAGS_u-boot += -Ttext $(CONFIG_SYS_TEXT_BASE)
+LDFLAGS_u-boot += -Ttext $(CONFIG_TEXT_BASE)
 endif
 
 # insure the checker run with the right endianness
@@ -1327,7 +1327,7 @@ shell_cmd = { $(call echo-cmd,$(1)) $(cmd_$(1)); }
 
 quiet_cmd_objcopy_uboot = OBJCOPY $@
 ifdef cmd_static_rela
-cmd_objcopy_uboot = $(cmd_objcopy) && $(call shell_cmd,static_rela,$<,$@,$(CONFIG_SYS_TEXT_BASE)) || { rm -f $@; false; }
+cmd_objcopy_uboot = $(cmd_objcopy) && $(call shell_cmd,static_rela,$<,$@,$(CONFIG_TEXT_BASE)) || { rm -f $@; false; }
 else
 cmd_objcopy_uboot = $(cmd_objcopy)
 endif
@@ -1381,7 +1381,7 @@ u-boot.ldr.hex u-boot.ldr.srec: u-boot.ldr FORCE
 # from the SPL U-Boot version.
 #
 ifndef CONFIG_SYS_UBOOT_START
-CONFIG_SYS_UBOOT_START := $(CONFIG_SYS_TEXT_BASE)
+CONFIG_SYS_UBOOT_START := $(CONFIG_TEXT_BASE)
 endif
 
 # Boards with more complex image requirements can provide an .its source file
@@ -1406,7 +1406,7 @@ endif
 
 ifdef CONFIG_SPL_LOAD_FIT
 MKIMAGEFLAGS_u-boot.img = -f auto -A $(ARCH) -T firmware -C none -O u-boot \
-	-a $(CONFIG_SYS_TEXT_BASE) -e $(CONFIG_SYS_UBOOT_START) \
+	-a $(CONFIG_TEXT_BASE) -e $(CONFIG_SYS_UBOOT_START) \
 	-p $(CONFIG_FIT_EXTERNAL_OFFSET) \
 	-n "U-Boot $(UBOOTRELEASE) for $(BOARD) board" -E \
 	$(patsubst %,-b arch/$(ARCH)/dts/%.dtb,$(subst ",,$(DEVICE_TREE))) \
@@ -1414,10 +1414,10 @@ MKIMAGEFLAGS_u-boot.img = -f auto -A $(ARCH) -T firmware -C none -O u-boot \
 	$(patsubst %,-b arch/$(ARCH)/dts/%.dtbo,$(subst ",,$(CONFIG_OF_OVERLAY_LIST)))
 else
 MKIMAGEFLAGS_u-boot.img = -A $(ARCH) -T firmware -C none -O u-boot \
-	-a $(CONFIG_SYS_TEXT_BASE) -e $(CONFIG_SYS_UBOOT_START) \
+	-a $(CONFIG_TEXT_BASE) -e $(CONFIG_SYS_UBOOT_START) \
 	-n "U-Boot $(UBOOTRELEASE) for $(BOARD) board"
 MKIMAGEFLAGS_u-boot-ivt.img = -A $(ARCH) -T firmware_ivt -C none -O u-boot \
-	-a $(CONFIG_SYS_TEXT_BASE) -e $(CONFIG_SYS_UBOOT_START) \
+	-a $(CONFIG_TEXT_BASE) -e $(CONFIG_SYS_UBOOT_START) \
 	-n "U-Boot $(UBOOTRELEASE) for $(BOARD) board"
 u-boot-ivt.img: MKIMAGEOUTPUT = u-boot-ivt.img.log
 endif
@@ -1436,10 +1436,10 @@ KWD_CONFIG_FILE = $(shell \
 	fi)
 
 MKIMAGEFLAGS_u-boot.kwb = -n $(KWD_CONFIG_FILE) \
-	-T kwbimage -a $(CONFIG_SYS_TEXT_BASE) -e $(CONFIG_SYS_TEXT_BASE)
+	-T kwbimage -a $(CONFIG_TEXT_BASE) -e $(CONFIG_TEXT_BASE)
 
 MKIMAGEFLAGS_u-boot-spl.kwb = -n $(KWD_CONFIG_FILE) \
-	-T kwbimage -a $(CONFIG_SYS_TEXT_BASE) -e $(CONFIG_SYS_TEXT_BASE) \
+	-T kwbimage -a $(CONFIG_TEXT_BASE) -e $(CONFIG_TEXT_BASE) \
 	$(if $(KEYDIR),-k $(KEYDIR))
 
 MKIMAGEFLAGS_u-boot.pbl = -n $(srctree)/$(CONFIG_SYS_FSL_PBL_RCW:"%"=%) \
@@ -1452,7 +1452,7 @@ UBOOT_BIN := u-boot.bin
 endif
 
 MKIMAGEFLAGS_u-boot-lzma.img = -A $(ARCH) -T standalone -C lzma -O u-boot \
-	-a $(CONFIG_SYS_TEXT_BASE) -e $(CONFIG_SYS_UBOOT_START) \
+	-a $(CONFIG_TEXT_BASE) -e $(CONFIG_SYS_UBOOT_START) \
 	-n "U-Boot $(UBOOTRELEASE) for $(BOARD) board"
 
 u-boot.bin.lzma: u-boot.bin FORCE
@@ -1582,7 +1582,7 @@ u-boot.uim: u-boot.bin FORCE
 u-boot-with-spl.imx u-boot-with-nand-spl.imx: SPL $(if $(CONFIG_OF_SEPARATE),u-boot.img,u-boot.uim) FORCE
 	$(Q)$(MAKE) $(build)=arch/arm/mach-imx $@
 
-MKIMAGEFLAGS_u-boot.ubl = -n $(UBL_CONFIG) -T ublimage -e $(CONFIG_SYS_TEXT_BASE)
+MKIMAGEFLAGS_u-boot.ubl = -n $(UBL_CONFIG) -T ublimage -e $(CONFIG_TEXT_BASE)
 
 u-boot.ubl: u-boot-with-spl.bin FORCE
 	$(call if_changed,mkimage)
@@ -1733,8 +1733,8 @@ u-boot-img-spl-at-end.bin: u-boot.img spl/u-boot-spl.bin FORCE
 quiet_cmd_u-boot-elf ?= LD      $@
 	cmd_u-boot-elf ?= $(LD) u-boot-elf.o -o $@ \
 	$(if $(CONFIG_SYS_BIG_ENDIAN),-EB,-EL) \
-	-T u-boot-elf.lds --defsym=$(CONFIG_PLATFORM_ELFENTRY)=$(CONFIG_SYS_TEXT_BASE) \
-	-Ttext=$(CONFIG_SYS_TEXT_BASE)
+	-T u-boot-elf.lds --defsym=$(CONFIG_PLATFORM_ELFENTRY)=$(CONFIG_TEXT_BASE) \
+	-Ttext=$(CONFIG_TEXT_BASE)
 u-boot.elf: u-boot.bin u-boot-elf.lds
 	$(Q)$(OBJCOPY) -I binary $(PLATFORM_ELFFLAGS) $< u-boot-elf.o
 	$(call if_changed,u-boot-elf)
@@ -1755,7 +1755,7 @@ u-boot-mtk.bin: u-boot-with-spl.bin
 	$(call if_changed,copy)
 else
 MKIMAGEFLAGS_u-boot-mtk.bin = -T mtk_image \
-	-a $(CONFIG_SYS_TEXT_BASE) -e $(CONFIG_SYS_TEXT_BASE) \
+	-a $(CONFIG_TEXT_BASE) -e $(CONFIG_TEXT_BASE) \
 	-n "$(patsubst "%",%,$(CONFIG_MTK_BROM_HEADER_INFO))"
 
 u-boot-mtk.bin: u-boot.bin FORCE
diff --git a/arch/arc/cpu/u-boot.lds b/arch/arc/cpu/u-boot.lds
index 9f2973da659..6a52ce461e5 100644
--- a/arch/arc/cpu/u-boot.lds
+++ b/arch/arc/cpu/u-boot.lds
@@ -10,7 +10,7 @@ OUTPUT_ARCH(arc)
 ENTRY(_start)
 SECTIONS
 {
-	. = CONFIG_SYS_TEXT_BASE;
+	. = CONFIG_TEXT_BASE;
 	__image_copy_start = .;
 	. = ALIGN(1024);
 	__ivt_start = .;
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 03169eba8dd..1527642af0a 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -93,7 +93,7 @@ config LNX_KRNL_IMG_TEXT_OFFSET_BASE
 	depends on LINUX_KERNEL_IMAGE_HEADER
 	hex
 	help
-	  The value subtracted from CONFIG_SYS_TEXT_BASE to calculate the
+	  The value subtracted from CONFIG_TEXT_BASE to calculate the
 	  TEXT_OFFSET value written to the Linux kernel image header.
 
 config GICV2
diff --git a/arch/arm/cpu/arm1176/start.S b/arch/arm/cpu/arm1176/start.S
index 14029246844..5a1536539dc 100644
--- a/arch/arm/cpu/arm1176/start.S
+++ b/arch/arm/cpu/arm1176/start.S
@@ -88,7 +88,7 @@ cpu_init_crit:
 
 	/* Prepare to disable the MMU */
 	adr	r2, mmu_disable_phys
-	sub	r2, r2, #(CONFIG_SYS_PHY_UBOOT_BASE - CONFIG_SYS_TEXT_BASE)
+	sub	r2, r2, #(CONFIG_SYS_PHY_UBOOT_BASE - CONFIG_TEXT_BASE)
 	b	mmu_disable
 
 	.align 5
diff --git a/arch/arm/cpu/arm926ejs/mxs/Makefile b/arch/arm/cpu/arm926ejs/mxs/Makefile
index f60e61e4343..1638ef8fd8d 100644
--- a/arch/arm/cpu/arm926ejs/mxs/Makefile
+++ b/arch/arm/cpu/arm926ejs/mxs/Makefile
@@ -60,14 +60,14 @@ spl/u-boot-spl.ivt: spl/u-boot-spl.bin
 
 u-boot.ivt: u-boot.bin
 	$(call if_changed,mkalign_mxs)
-	$(call if_changed,mkivt_mxs,$(CONFIG_SYS_TEXT_BASE),\
+	$(call if_changed,mkivt_mxs,$(CONFIG_TEXT_BASE),\
 		0x40001000,0x40001040)
 
 spl/u-boot-spl.csf: spl/u-boot-spl.ivt spl/u-boot-spl.bin board/$(VENDOR)/$(BOARD)/sign/u-boot-spl.csf
 	$(call if_changed,mkcsfreq_mxs,$(CONFIG_SPL_TEXT_BASE),0x8000)
 
 u-boot.csf: u-boot.ivt u-boot.bin board/$(VENDOR)/$(BOARD)/sign/u-boot.csf
-	$(call if_changed,mkcsfreq_mxs,$(CONFIG_SYS_TEXT_BASE),0x40001000)
+	$(call if_changed,mkcsfreq_mxs,$(CONFIG_TEXT_BASE),0x40001000)
 
 %.sig: %.csf
 	$(call if_changed,mkcst_mxs)
diff --git a/arch/arm/cpu/armv7/ls102xa/fdt.c b/arch/arm/cpu/armv7/ls102xa/fdt.c
index e63a905eda1..83f9882d0b3 100644
--- a/arch/arm/cpu/armv7/ls102xa/fdt.c
+++ b/arch/arm/cpu/armv7/ls102xa/fdt.c
@@ -146,9 +146,9 @@ void ft_cpu_setup(void *blob, struct bd_info *bd)
 	 * Since second uboot binary has a head, that space need to be
 	 * reserved either(assuming its size is less than 0x1000).
 	 */
-	off = fdt_add_mem_rsv(blob, CONFIG_SYS_TEXT_BASE - UBOOT_HEAD_LEN,
-			CONFIG_SYS_MONITOR_LEN + CONFIG_SYS_SPL_MALLOC_SIZE +
-			UBOOT_HEAD_LEN);
+	off = fdt_add_mem_rsv(blob, CONFIG_TEXT_BASE - UBOOT_HEAD_LEN,
+			      CONFIG_SYS_MONITOR_LEN +
+			      CONFIG_SYS_SPL_MALLOC_SIZE + UBOOT_HEAD_LEN);
 	if (off < 0)
 		printf("Failed to reserve memory for SD boot deep sleep: %s\n",
 		       fdt_strerror(off));
diff --git a/arch/arm/cpu/armv8/linux-kernel-image-header-vars.h b/arch/arm/cpu/armv8/linux-kernel-image-header-vars.h
index b4220e4936f..b6394aee165 100644
--- a/arch/arm/cpu/armv8/linux-kernel-image-header-vars.h
+++ b/arch/arm/cpu/armv8/linux-kernel-image-header-vars.h
@@ -69,7 +69,7 @@
 				 (__HEAD_FLAG_PAGE_SIZE << 1) |	\
 				 (__HEAD_FLAG_PHYS_BASE << 3))
 
-#define TEXT_OFFSET (CONFIG_SYS_TEXT_BASE - \
+#define TEXT_OFFSET (CONFIG_TEXT_BASE - \
 			CONFIG_LNX_KRNL_IMG_TEXT_OFFSET_BASE)
 
 /*
diff --git a/arch/arm/cpu/armv8/start.S b/arch/arm/cpu/armv8/start.S
index 28f0df13f0d..f3ea8585770 100644
--- a/arch/arm/cpu/armv8/start.S
+++ b/arch/arm/cpu/armv8/start.S
@@ -35,7 +35,7 @@ _start:
 
 .globl	_TEXT_BASE
 _TEXT_BASE:
-	.quad	CONFIG_SYS_TEXT_BASE
+	.quad	CONFIG_TEXT_BASE
 
 /*
  * These are defined in the linker script.
diff --git a/arch/arm/dts/fsl-ls1028a-kontron-sl28-u-boot.dtsi b/arch/arm/dts/fsl-ls1028a-kontron-sl28-u-boot.dtsi
index 2dcb3c2a58f..08e7231793c 100644
--- a/arch/arm/dts/fsl-ls1028a-kontron-sl28-u-boot.dtsi
+++ b/arch/arm/dts/fsl-ls1028a-kontron-sl28-u-boot.dtsi
@@ -36,7 +36,7 @@
 					os = "u-boot";
 					arch = "arm";
 					compression = "none";
-					load = <CONFIG_SYS_TEXT_BASE>;
+					load = <CONFIG_TEXT_BASE>;
 
 					u-boot-nodtb {
 					};
diff --git a/arch/arm/dts/imx8mm-u-boot.dtsi b/arch/arm/dts/imx8mm-u-boot.dtsi
index f792b421e89..a5e30f79948 100644
--- a/arch/arm/dts/imx8mm-u-boot.dtsi
+++ b/arch/arm/dts/imx8mm-u-boot.dtsi
@@ -90,7 +90,7 @@
 					arch = "arm64";
 					compression = "none";
 					description = "U-Boot (64-bit)";
-					load = <CONFIG_SYS_TEXT_BASE>;
+					load = <CONFIG_TEXT_BASE>;
 					type = "standalone";
 
 					uboot-blob {
diff --git a/arch/arm/dts/imx8mn-beacon-kit-u-boot.dtsi b/arch/arm/dts/imx8mn-beacon-kit-u-boot.dtsi
index 5f839524028..90060240212 100644
--- a/arch/arm/dts/imx8mn-beacon-kit-u-boot.dtsi
+++ b/arch/arm/dts/imx8mn-beacon-kit-u-boot.dtsi
@@ -199,7 +199,7 @@
 					type = "standalone";
 					arch = "arm64";
 					compression = "none";
-					load = <CONFIG_SYS_TEXT_BASE>;
+					load = <CONFIG_TEXT_BASE>;
 
 					uboot_blob: blob-ext {
 						filename = "u-boot-nodtb.bin";
diff --git a/arch/arm/dts/imx8mn-bsh-smm-s2-u-boot-common.dtsi b/arch/arm/dts/imx8mn-bsh-smm-s2-u-boot-common.dtsi
index c4ae7ca4f31..f9b35c9b66d 100644
--- a/arch/arm/dts/imx8mn-bsh-smm-s2-u-boot-common.dtsi
+++ b/arch/arm/dts/imx8mn-bsh-smm-s2-u-boot-common.dtsi
@@ -150,7 +150,7 @@
 					arch = "arm64";
 					compression = "none";
 					description = "U-Boot (64-bit)";
-					load = <CONFIG_SYS_TEXT_BASE>;
+					load = <CONFIG_TEXT_BASE>;
 					type = "standalone";
 
 					uboot_blob {
diff --git a/arch/arm/dts/imx8mn-ddr4-evk-u-boot.dtsi b/arch/arm/dts/imx8mn-ddr4-evk-u-boot.dtsi
index 78773c198e4..7bf2d1ba2cd 100644
--- a/arch/arm/dts/imx8mn-ddr4-evk-u-boot.dtsi
+++ b/arch/arm/dts/imx8mn-ddr4-evk-u-boot.dtsi
@@ -207,7 +207,7 @@
 					type = "standalone";
 					arch = "arm64";
 					compression = "none";
-					load = <CONFIG_SYS_TEXT_BASE>;
+					load = <CONFIG_TEXT_BASE>;
 
 					uboot_blob: blob-ext {
 						filename = "u-boot-nodtb.bin";
diff --git a/arch/arm/dts/imx8mn-evk-u-boot.dtsi b/arch/arm/dts/imx8mn-evk-u-boot.dtsi
index c4b83d3f7ed..0de413e470f 100644
--- a/arch/arm/dts/imx8mn-evk-u-boot.dtsi
+++ b/arch/arm/dts/imx8mn-evk-u-boot.dtsi
@@ -88,7 +88,7 @@
 					type = "standalone";
 					arch = "arm64";
 					compression = "none";
-					load = <CONFIG_SYS_TEXT_BASE>;
+					load = <CONFIG_TEXT_BASE>;
 
 					uboot_blob: blob-ext {
 						filename = "u-boot-nodtb.bin";
diff --git a/arch/arm/dts/imx8mn-var-som-symphony-u-boot.dtsi b/arch/arm/dts/imx8mn-var-som-symphony-u-boot.dtsi
index ed1ab10ded3..31037a7cdeb 100644
--- a/arch/arm/dts/imx8mn-var-som-symphony-u-boot.dtsi
+++ b/arch/arm/dts/imx8mn-var-som-symphony-u-boot.dtsi
@@ -181,7 +181,7 @@
 					arch = "arm64";
 					compression = "none";
 					description = "U-Boot (64-bit)";
-					load = <CONFIG_SYS_TEXT_BASE>;
+					load = <CONFIG_TEXT_BASE>;
 					type = "standalone";
 
 					uboot_blob {
diff --git a/arch/arm/dts/imx8mn-venice-u-boot.dtsi b/arch/arm/dts/imx8mn-venice-u-boot.dtsi
index 9fb38714523..87acd54f410 100644
--- a/arch/arm/dts/imx8mn-venice-u-boot.dtsi
+++ b/arch/arm/dts/imx8mn-venice-u-boot.dtsi
@@ -177,7 +177,7 @@
 					arch = "arm64";
 					compression = "none";
 					description = "U-Boot (64-bit)";
-					load = <CONFIG_SYS_TEXT_BASE>;
+					load = <CONFIG_TEXT_BASE>;
 					type = "standalone";
 
 					uboot_blob {
diff --git a/arch/arm/dts/imx8mp-u-boot.dtsi b/arch/arm/dts/imx8mp-u-boot.dtsi
index adb24cccc3b..b5d640df7e1 100644
--- a/arch/arm/dts/imx8mp-u-boot.dtsi
+++ b/arch/arm/dts/imx8mp-u-boot.dtsi
@@ -113,7 +113,7 @@
 					type = "standalone";
 					arch = "arm64";
 					compression = "none";
-					load = <CONFIG_SYS_TEXT_BASE>;
+					load = <CONFIG_TEXT_BASE>;
 
 					uboot_blob: blob-ext {
 						filename = "u-boot-nodtb.bin";
diff --git a/arch/arm/dts/imx8mq-cm-u-boot.dtsi b/arch/arm/dts/imx8mq-cm-u-boot.dtsi
index cb4e36c387d..354f911a8af 100644
--- a/arch/arm/dts/imx8mq-cm-u-boot.dtsi
+++ b/arch/arm/dts/imx8mq-cm-u-boot.dtsi
@@ -77,7 +77,7 @@
 					type = "standalone";
 					arch = "arm64";
 					compression = "none";
-					load = <CONFIG_SYS_TEXT_BASE>;
+					load = <CONFIG_TEXT_BASE>;
 
 					uboot_blob: blob-ext {
 						filename = "u-boot-nodtb.bin";
diff --git a/arch/arm/dts/imx8mq-u-boot.dtsi b/arch/arm/dts/imx8mq-u-boot.dtsi
index e8b5f83706e..c69c6cc58b9 100644
--- a/arch/arm/dts/imx8mq-u-boot.dtsi
+++ b/arch/arm/dts/imx8mq-u-boot.dtsi
@@ -105,7 +105,7 @@
 					arch = "arm64";
 					compression = "none";
 					description = "U-Boot (64-bit)";
-					load = <CONFIG_SYS_TEXT_BASE>;
+					load = <CONFIG_TEXT_BASE>;
 					type = "standalone";
 
 					uboot-blob {
diff --git a/arch/arm/dts/rockchip-optee.dtsi b/arch/arm/dts/rockchip-optee.dtsi
index cde9b81b26b..328ba908450 100644
--- a/arch/arm/dts/rockchip-optee.dtsi
+++ b/arch/arm/dts/rockchip-optee.dtsi
@@ -21,7 +21,7 @@
 					os = "U-Boot";
 					arch = "arm";
 					compression = "none";
-					load = <CONFIG_SYS_TEXT_BASE>;
+					load = <CONFIG_TEXT_BASE>;
 
 					u-boot-nodtb {
 					};
diff --git a/arch/arm/dts/sunxi-u-boot.dtsi b/arch/arm/dts/sunxi-u-boot.dtsi
index 0f573e6d7ae..2028d5b6a90 100644
--- a/arch/arm/dts/sunxi-u-boot.dtsi
+++ b/arch/arm/dts/sunxi-u-boot.dtsi
@@ -47,7 +47,7 @@
 					os = "u-boot";
 					arch = "arm64";
 					compression = "none";
-					load = <CONFIG_SYS_TEXT_BASE>;
+					load = <CONFIG_TEXT_BASE>;
 
 					u-boot-nodtb {
 					};
diff --git a/arch/arm/dts/tegra-u-boot.dtsi b/arch/arm/dts/tegra-u-boot.dtsi
index fe19619919e..b3d0dec7757 100644
--- a/arch/arm/dts/tegra-u-boot.dtsi
+++ b/arch/arm/dts/tegra-u-boot.dtsi
@@ -1,7 +1,7 @@
 #include <config.h>
 
 #ifdef CONFIG_SPL_TEXT_BASE
-#define U_BOOT_OFFSET (CONFIG_SYS_TEXT_BASE - CONFIG_SPL_TEXT_BASE)
+#define U_BOOT_OFFSET (CONFIG_TEXT_BASE - CONFIG_SPL_TEXT_BASE)
 #else
 #define U_BOOT_OFFSET 0
 #endif
diff --git a/arch/arm/include/asm/arch-mxs/sys_proto.h b/arch/arm/include/asm/arch-mxs/sys_proto.h
index 20ee863ac7e..17afd1b29e4 100644
--- a/arch/arm/include/asm/arch-mxs/sys_proto.h
+++ b/arch/arm/include/asm/arch-mxs/sys_proto.h
@@ -85,7 +85,7 @@ static const struct mxs_pair mxs_boot_modes[] = {
 #define MXS_BM_SDMMC1_3V3		0x0a
 #define MXS_BM_SDMMC1_1V8		0x1a
 
-#define MXS_SPL_DATA ((struct mxs_spl_data *)(CONFIG_SYS_TEXT_BASE - 0x200))
+#define MXS_SPL_DATA ((struct mxs_spl_data *)(CONFIG_TEXT_BASE - 0x200))
 
 struct mxs_spl_data {
 	uint8_t		boot_mode_idx;
diff --git a/arch/arm/include/asm/arch-sunxi/boot0.h b/arch/arm/include/asm/arch-sunxi/boot0.h
index e8e8e38f055..46b7e073b59 100644
--- a/arch/arm/include/asm/arch-sunxi/boot0.h
+++ b/arch/arm/include/asm/arch-sunxi/boot0.h
@@ -47,7 +47,7 @@
 #ifdef CONFIG_SPL_BUILD
 	.word	CONFIG_SPL_TEXT_BASE
 #else
-	.word   CONFIG_SYS_TEXT_BASE
+	.word   CONFIG_TEXT_BASE
 #endif
 	.word	fel_stash - .
 #else
diff --git a/arch/arm/lib/crt0.S b/arch/arm/lib/crt0.S
index fe6b4472b93..6d566dca5c8 100644
--- a/arch/arm/lib/crt0.S
+++ b/arch/arm/lib/crt0.S
@@ -144,7 +144,7 @@ ENTRY(_main)
 	adr	r0, _main
 	ldr	r1, _start_ofs
 	add	r0, r1
-	ldr	r1, =CONFIG_SYS_TEXT_BASE
+	ldr	r1, =CONFIG_TEXT_BASE
 	sub	r1, r0
 	add	lr, r1
 #endif
diff --git a/arch/arm/lib/relocate_64.S b/arch/arm/lib/relocate_64.S
index 72e91f2704b..495a5f03ba7 100644
--- a/arch/arm/lib/relocate_64.S
+++ b/arch/arm/lib/relocate_64.S
@@ -37,7 +37,7 @@ ENTRY(relocate_code)
 	 * correctly apply relocations, we need to know the linked value.
 	 *
 	 * Linked &__image_copy_start, which we know was at
-	 * CONFIG_SYS_TEXT_BASE, which is stored in _TEXT_BASE, as a non-
+	 * CONFIG_TEXT_BASE, which is stored in _TEXT_BASE, as a non-
 	 * relocated value, since it isn't a symbol reference.
 	 */
 	ldr	x1, _TEXT_BASE		/* x1 <- Linked &__image_copy_start */
diff --git a/arch/arm/mach-apple/Kconfig b/arch/arm/mach-apple/Kconfig
index 75ee21e0f4c..294690ec0e8 100644
--- a/arch/arm/mach-apple/Kconfig
+++ b/arch/arm/mach-apple/Kconfig
@@ -1,6 +1,6 @@
 if ARCH_APPLE
 
-config SYS_TEXT_BASE
+config TEXT_BASE
 	default 0x00000000
 
 config SYS_CONFIG_NAME
@@ -16,6 +16,6 @@ config SYS_MALLOC_F_LEN
 	default 0x4000
 
 config LNX_KRNL_IMG_TEXT_OFFSET_BASE
-	default SYS_TEXT_BASE
+	default TEXT_BASE
 
 endif
diff --git a/arch/arm/mach-aspeed/Kconfig b/arch/arm/mach-aspeed/Kconfig
index 9a725f195a3..1e7dc10e170 100644
--- a/arch/arm/mach-aspeed/Kconfig
+++ b/arch/arm/mach-aspeed/Kconfig
@@ -6,7 +6,7 @@ config SYS_ARCH
 config SYS_SOC
 	default "aspeed"
 
-config SYS_TEXT_BASE
+config TEXT_BASE
 	default 0x00000000
 
 choice
diff --git a/arch/arm/mach-at91/arm920t/lowlevel_init.S b/arch/arm/mach-at91/arm920t/lowlevel_init.S
index 5e3cce03b7e..57e51c81059 100644
--- a/arch/arm/mach-at91/arm920t/lowlevel_init.S
+++ b/arch/arm/mach-at91/arm920t/lowlevel_init.S
@@ -22,9 +22,9 @@
 _MTEXT_BASE:
 #undef START_FROM_MEM
 #ifdef START_FROM_MEM
-	.word	CONFIG_SYS_TEXT_BASE-PHYS_FLASH_1
+	.word	CONFIG_TEXT_BASE-PHYS_FLASH_1
 #else
-	.word	CONFIG_SYS_TEXT_BASE
+	.word	CONFIG_TEXT_BASE
 #endif
 
 .globl lowlevel_init
diff --git a/arch/arm/mach-at91/arm926ejs/lowlevel_init.S b/arch/arm/mach-at91/arm926ejs/lowlevel_init.S
index 994f42eb4a2..c51eee2f17e 100644
--- a/arch/arm/mach-at91/arm926ejs/lowlevel_init.S
+++ b/arch/arm/mach-at91/arm926ejs/lowlevel_init.S
@@ -32,7 +32,7 @@ lowlevel_init:
 POS1:
 	adr	r5, POS1	/* r5 = POS1 run time */
 	ldr	r0, =POS1	/* r0 = POS1 compile */
-	sub	r5, r5, r0	/* r0 = CONFIG_SYS_TEXT_BASE-1 */
+	sub	r5, r5, r0	/* r0 = CONFIG_TEXT_BASE-1 */
 
 	/* memory control configuration 1 */
 	ldr	r0, =SMRDATA
diff --git a/arch/arm/mach-exynos/spl_boot.c b/arch/arm/mach-exynos/spl_boot.c
index 93fea9c749a..f5185390571 100644
--- a/arch/arm/mach-exynos/spl_boot.c
+++ b/arch/arm/mach-exynos/spl_boot.c
@@ -251,7 +251,7 @@ void copy_uboot_to_ram(void)
 #ifdef CONFIG_SPI_BOOTING
 	case BOOT_MODE_SERIAL:
 		/* Customised function to copy u-boot from SF */
-		exynos_spi_copy(param->uboot_size, CONFIG_SYS_TEXT_BASE);
+		exynos_spi_copy(param->uboot_size, CONFIG_TEXT_BASE);
 		break;
 #endif
 	case BOOT_MODE_SD:
@@ -267,7 +267,7 @@ void copy_uboot_to_ram(void)
 		copy_bl2_from_emmc = get_irom_func(EMMC44_INDEX);
 		end_bootop_from_emmc = get_irom_func(EMMC44_END_INDEX);
 
-		copy_bl2_from_emmc(BL2_SIZE_BLOC_COUNT, CONFIG_SYS_TEXT_BASE);
+		copy_bl2_from_emmc(BL2_SIZE_BLOC_COUNT, CONFIG_TEXT_BASE);
 		end_bootop_from_emmc();
 		break;
 #endif
@@ -279,7 +279,7 @@ void copy_uboot_to_ram(void)
 		 */
 		is_cr_z_set = config_branch_prediction(0);
 		usb_copy = get_irom_func(USB_INDEX);
-		usb_copy(0, (u32 *)CONFIG_SYS_TEXT_BASE);
+		usb_copy(0, (u32 *)CONFIG_TEXT_BASE);
 		config_branch_prediction(is_cr_z_set);
 		break;
 #endif
@@ -288,7 +288,7 @@ void copy_uboot_to_ram(void)
 	}
 
 	if (copy_bl2)
-		copy_bl2(offset, size, CONFIG_SYS_TEXT_BASE);
+		copy_bl2(offset, size, CONFIG_TEXT_BASE);
 }
 
 void memzero(void *s, size_t n)
@@ -329,7 +329,7 @@ void board_init_f(unsigned long bootflag)
 	copy_uboot_to_ram();
 
 	/* Jump to U-Boot image */
-	uboot = (void *)CONFIG_SYS_TEXT_BASE;
+	uboot = (void *)CONFIG_TEXT_BASE;
 	(*uboot)();
 	/* Never returns Here */
 }
diff --git a/arch/arm/mach-imx/Makefile b/arch/arm/mach-imx/Makefile
index 80c497e6d81..61b4f4f8cd3 100644
--- a/arch/arm/mach-imx/Makefile
+++ b/arch/arm/mach-imx/Makefile
@@ -126,7 +126,7 @@ DEPFILE_EXISTS := 0
 endif
 
 MKIMAGEFLAGS_u-boot.imx = -n $(filter-out $(PLUGIN).bin $< $(PHONY),$^) \
-	-T $(IMAGE_TYPE) -e $(CONFIG_SYS_TEXT_BASE)
+	-T $(IMAGE_TYPE) -e $(CONFIG_TEXT_BASE)
 u-boot.imx: MKIMAGEOUTPUT = u-boot.imx.log
 
 u-boot.imx: u-boot.bin u-boot.cfgout $(PLUGIN).bin FORCE
@@ -134,7 +134,7 @@ u-boot.imx: u-boot.bin u-boot.cfgout $(PLUGIN).bin FORCE
 
 ifeq ($(CONFIG_MULTI_DTB_FIT),y)
 MKIMAGEFLAGS_u-boot-dtb.imx = -n $(filter-out $(PLUGIN).bin $< $(PHONY),$^) \
-	-T $(IMAGE_TYPE) -e $(CONFIG_SYS_TEXT_BASE)
+	-T $(IMAGE_TYPE) -e $(CONFIG_TEXT_BASE)
 u-boot-dtb.imx: MKIMAGEOUTPUT = u-boot-dtb.imx.log
 
 u-boot-dtb.imx: u-boot-fit-dtb.bin u-boot-dtb.cfgout $(PLUGIN).bin FORCE
@@ -143,7 +143,7 @@ ifeq ($(DEPFILE_EXISTS),0)
 endif
 else ifeq ($(CONFIG_OF_SEPARATE),y)
 MKIMAGEFLAGS_u-boot-dtb.imx = -n $(filter-out $(PLUGIN).bin $< $(PHONY),$^) \
-	-T $(IMAGE_TYPE) -e $(CONFIG_SYS_TEXT_BASE)
+	-T $(IMAGE_TYPE) -e $(CONFIG_TEXT_BASE)
 u-boot-dtb.imx: MKIMAGEOUTPUT = u-boot-dtb.imx.log
 
 u-boot-dtb.imx: u-boot-dtb.bin u-boot-dtb.cfgout $(PLUGIN).bin FORCE
@@ -207,8 +207,8 @@ SPL: MKIMAGEOUTPUT = SPL.log
 SPL: spl/u-boot-spl.bin spl/u-boot-spl.cfgout $(PLUGIN).bin FORCE
 	$(call if_changed,mkimage)
 
-MKIMAGEFLAGS_u-boot.uim = -A arm -O U-Boot -a $(CONFIG_SYS_TEXT_BASE) \
-		-e $(CONFIG_SYS_TEXT_BASE) -C none -T firmware
+MKIMAGEFLAGS_u-boot.uim = -A arm -O U-Boot -a $(CONFIG_TEXT_BASE) \
+		-e $(CONFIG_TEXT_BASE) -C none -T firmware
 
 u-boot.uim: u-boot.bin FORCE
 	$(call if_changed,mkimage)
diff --git a/arch/arm/mach-imx/imx8/cpu.c b/arch/arm/mach-imx/imx8/cpu.c
index 936c8f865aa..be1f4edded1 100644
--- a/arch/arm/mach-imx/imx8/cpu.c
+++ b/arch/arm/mach-imx/imx8/cpu.c
@@ -313,8 +313,8 @@ phys_size_t get_effective_memsize(void)
 
 			/* Find the memory region runs the U-Boot */
 			if (start >= phys_sdram_1_start && start <= end1 &&
-			    (start <= CONFIG_SYS_TEXT_BASE &&
-			    end >= CONFIG_SYS_TEXT_BASE)) {
+			    (start <= CONFIG_TEXT_BASE &&
+			    end >= CONFIG_TEXT_BASE)) {
 				if ((end + 1) <=
 				    ((sc_faddr_t)phys_sdram_1_start +
 				    phys_sdram_1_size))
diff --git a/arch/arm/mach-imx/mx7/Kconfig b/arch/arm/mach-imx/mx7/Kconfig
index 4f9f51c9b05..3c388183bc2 100644
--- a/arch/arm/mach-imx/mx7/Kconfig
+++ b/arch/arm/mach-imx/mx7/Kconfig
@@ -16,7 +16,7 @@ config MX7D
 	select ROM_UNIFIED_SECTIONS
 	imply CMD_FUSE
 
-config SYS_TEXT_BASE
+config TEXT_BASE
 	default 0x87800000
 
 config SPL_TEXT_BASE
diff --git a/arch/arm/mach-imx/spl.c b/arch/arm/mach-imx/spl.c
index ef00969a5e0..6b8f4115c4e 100644
--- a/arch/arm/mach-imx/spl.c
+++ b/arch/arm/mach-imx/spl.c
@@ -341,7 +341,7 @@ void *board_spl_fit_buffer_addr(ulong fit_size, int sectors, int bl_len)
 	if (bl_len < 512)
 		bl_len = 512;
 
-	return  (void *)((CONFIG_SYS_TEXT_BASE - fit_size - bl_len -
+	return  (void *)((CONFIG_TEXT_BASE - fit_size - bl_len -
 			align_len) & ~align_len);
 }
 #endif
diff --git a/arch/arm/mach-ipq40xx/Kconfig b/arch/arm/mach-ipq40xx/Kconfig
index 4eef80e9352..f9db55c42aa 100644
--- a/arch/arm/mach-ipq40xx/Kconfig
+++ b/arch/arm/mach-ipq40xx/Kconfig
@@ -6,7 +6,7 @@ config SYS_SOC
 config SYS_MALLOC_F_LEN
 	default 0x2000
 
-config SYS_TEXT_BASE
+config TEXT_BASE
 	default 0x87300000
 
 config NR_DRAM_BANKS
diff --git a/arch/arm/mach-k3/config_secure.mk b/arch/arm/mach-k3/config_secure.mk
index 6d63c57665a..9cc1f9eb24f 100644
--- a/arch/arm/mach-k3/config_secure.mk
+++ b/arch/arm/mach-k3/config_secure.mk
@@ -30,7 +30,7 @@ tispl.bin_HS: $(obj)/u-boot-spl-nodtb.bin_HS $(patsubst %,$(obj)/dts/%.dtb_HS,$(
 	$(call if_changed,mkfitimage)
 
 MKIMAGEFLAGS_u-boot.img_HS = -f auto -A $(ARCH) -T firmware -C none -O u-boot \
-	-a $(CONFIG_SYS_TEXT_BASE) -e $(CONFIG_SYS_UBOOT_START) \
+	-a $(CONFIG_TEXT_BASE) -e $(CONFIG_SYS_UBOOT_START) \
 	-n "U-Boot $(UBOOTRELEASE) for $(BOARD) board" -E \
 	$(patsubst %,-b arch/$(ARCH)/dts/%.dtb_HS,$(subst ",,$(CONFIG_OF_LIST)))
 
diff --git a/arch/arm/mach-k3/sysfw-loader.c b/arch/arm/mach-k3/sysfw-loader.c
index aea640b5700..c4c5c371100 100644
--- a/arch/arm/mach-k3/sysfw-loader.c
+++ b/arch/arm/mach-k3/sysfw-loader.c
@@ -91,7 +91,7 @@ static void *sysfw_load_address;
 struct legacy_img_hdr *spl_get_load_buffer(ssize_t offset, size_t size)
 {
 	if (sysfw_loaded)
-		return (struct legacy_img_hdr *)(CONFIG_SYS_TEXT_BASE + offset);
+		return (struct legacy_img_hdr *)(CONFIG_TEXT_BASE + offset);
 	else if (sysfw_load_address)
 		return sysfw_load_address;
 	else
diff --git a/arch/arm/mach-keystone/config.mk b/arch/arm/mach-keystone/config.mk
index 5a16891f234..8eccbdb3018 100644
--- a/arch/arm/mach-keystone/config.mk
+++ b/arch/arm/mach-keystone/config.mk
@@ -27,7 +27,7 @@ u-boot-spi.gph: spl/u-boot-spl.gph u-boot.img FORCE
 
 ifndef CONFIG_SPL_BUILD
 MKIMAGEFLAGS_MLO = -A $(ARCH) -T gpimage -C none \
-	-a $(CONFIG_SYS_TEXT_BASE) -e $(CONFIG_SYS_TEXT_BASE) -n U-Boot
+	-a $(CONFIG_TEXT_BASE) -e $(CONFIG_TEXT_BASE) -n U-Boot
 MLO: u-boot.bin FORCE
 	$(call if_changed,mkimage)
 	@dd if=/dev/zero bs=8 count=1 2>/dev/null >> $@
diff --git a/arch/arm/mach-nexell/include/mach/boot0.h b/arch/arm/mach-nexell/include/mach/boot0.h
index e05c07ece6a..29f37d3ba4c 100644
--- a/arch/arm/mach-nexell/include/mach/boot0.h
+++ b/arch/arm/mach-nexell/include/mach/boot0.h
@@ -5,7 +5,7 @@
  * The NSIH (first 512 Bytes of u-boot.bin) is necessary for the
  * 2nd-Bootloader to get information like load address of U-Boot.
  *
- * 0x400 must be added to CONFIG_SYS_TEXT_BASE to have the actual load and
+ * 0x400 must be added to CONFIG_TEXT_BASE to have the actual load and
  * start address because 2nd-Bootloader loads with an offset of 0x400
  * (NSIH + 0x200 bytes are not loaded into RAM).
  *
@@ -23,9 +23,9 @@
 	.word	(_end - _start) + 20 * 1024	/* 0x50: load size
 						 *       (bin + 20k for DTB) */
 	.space	0x4
-	.word	CONFIG_SYS_TEXT_BASE + 0x400	/* 0x58: load address */
+	.word	CONFIG_TEXT_BASE + 0x400	/* 0x58: load address */
 	.word	0x00000000
-	.word	CONFIG_SYS_TEXT_BASE + 0x400	/* 0x60: start address */
+	.word	CONFIG_TEXT_BASE + 0x400	/* 0x60: start address */
 	.space	0x198
 	.byte	'N'				/* 0x1FC: "NSIH" signature */
 	.byte	'S'
diff --git a/arch/arm/mach-npcm/Kconfig b/arch/arm/mach-npcm/Kconfig
index cf5043d6b82..2c569bb3703 100644
--- a/arch/arm/mach-npcm/Kconfig
+++ b/arch/arm/mach-npcm/Kconfig
@@ -3,7 +3,7 @@ if ARCH_NPCM
 config SYS_ARCH
 	default "arm"
 
-config SYS_TEXT_BASE
+config TEXT_BASE
 	default 0x8000
 
 choice
diff --git a/arch/arm/mach-octeontx/cpu.c b/arch/arm/mach-octeontx/cpu.c
index 7bd74fe4f67..aa5f4585c6f 100644
--- a/arch/arm/mach-octeontx/cpu.c
+++ b/arch/arm/mach-octeontx/cpu.c
@@ -46,7 +46,7 @@ struct mm_region *mem_map = otx_mem_map;
 void mem_map_fill(void)
 {
 	int banks = OTX_MEM_MAP_USED;
-	u32 dram_start = CONFIG_SYS_TEXT_BASE;
+	u32 dram_start = CONFIG_TEXT_BASE;
 
 	if (otx_is_soc(CN83XX)) {
 		otx_mem_map[banks].virt = 0x8c0000000000UL;
diff --git a/arch/arm/mach-octeontx2/cpu.c b/arch/arm/mach-octeontx2/cpu.c
index afa458c09b8..723deef719b 100644
--- a/arch/arm/mach-octeontx2/cpu.c
+++ b/arch/arm/mach-octeontx2/cpu.c
@@ -51,7 +51,7 @@ struct mm_region *mem_map = otx2_mem_map;
 void mem_map_fill(void)
 {
 	int banks = OTX2_MEM_MAP_USED;
-	u32 dram_start = CONFIG_SYS_TEXT_BASE;
+	u32 dram_start = CONFIG_TEXT_BASE;
 
 	for (int i = 0; i < CONFIG_NR_DRAM_BANKS; i++) {
 		otx2_mem_map[banks].virt = dram_start;
diff --git a/arch/arm/mach-omap2/config_secure.mk b/arch/arm/mach-omap2/config_secure.mk
index 0629afd0ee8..f76262bb0ce 100644
--- a/arch/arm/mach-omap2/config_secure.mk
+++ b/arch/arm/mach-omap2/config_secure.mk
@@ -10,7 +10,7 @@ cmd_mkomapsecimg = $(TI_SECURE_DEV_PKG)/scripts/create-boot-image.sh \
 	$(if $(KBUILD_VERBOSE:1=), >/dev/null)
 else
 cmd_mkomapsecimg = $(TI_SECURE_DEV_PKG)/scripts/create-boot-image.sh \
-	$(patsubst u-boot_HS_%,%,$(@F)) $< $@ $(CONFIG_SYS_TEXT_BASE) \
+	$(patsubst u-boot_HS_%,%,$(@F)) $< $@ $(CONFIG_TEXT_BASE) \
 	$(if $(KBUILD_VERBOSE:1=), >/dev/null)
 endif
 else
@@ -102,7 +102,7 @@ u-boot_HS_XIP_X-LOADER: $(obj)/u-boot.bin FORCE
 ifdef CONFIG_SPL_LOAD_FIT
 
 MKIMAGEFLAGS_u-boot_HS.img = -f auto -A $(ARCH) -T firmware -C none -O u-boot \
-	-a $(CONFIG_SYS_TEXT_BASE) -e $(CONFIG_SYS_UBOOT_START) \
+	-a $(CONFIG_TEXT_BASE) -e $(CONFIG_SYS_UBOOT_START) \
 	-n "U-Boot $(UBOOTRELEASE) for $(BOARD) board" -E \
 	$(patsubst %,-b arch/$(ARCH)/dts/%.dtb_HS,$(subst ",,$(CONFIG_OF_LIST)))
 
diff --git a/arch/arm/mach-owl/Kconfig b/arch/arm/mach-owl/Kconfig
index cde2ade30b8..76d3998884d 100644
--- a/arch/arm/mach-owl/Kconfig
+++ b/arch/arm/mach-owl/Kconfig
@@ -14,7 +14,7 @@ config MACH_S700
 
 endchoice
 
-config SYS_TEXT_BASE
+config TEXT_BASE
         default 0x11000000
 
 config SYS_CONFIG_NAME
diff --git a/arch/arm/mach-rockchip/Kconfig b/arch/arm/mach-rockchip/Kconfig
index c561a77e6a1..aa850c12a14 100644
--- a/arch/arm/mach-rockchip/Kconfig
+++ b/arch/arm/mach-rockchip/Kconfig
@@ -433,7 +433,7 @@ config ROCKCHIP_SPI_IMAGE
 	  the start of the image.
 
 config LNX_KRNL_IMG_TEXT_OFFSET_BASE
-	default SYS_TEXT_BASE
+	default TEXT_BASE
 
 source "arch/arm/mach-rockchip/px30/Kconfig"
 source "arch/arm/mach-rockchip/rk3036/Kconfig"
diff --git a/arch/arm/mach-socfpga/Kconfig b/arch/arm/mach-socfpga/Kconfig
index df44530e83a..503c82d388c 100644
--- a/arch/arm/mach-socfpga/Kconfig
+++ b/arch/arm/mach-socfpga/Kconfig
@@ -40,7 +40,7 @@ config SYS_MALLOC_F_LEN
 	default 0x2000 if TARGET_SOCFPGA_ARRIA10
 	default 0x2000 if TARGET_SOCFPGA_GEN5
 
-config SYS_TEXT_BASE
+config TEXT_BASE
 	default 0x01000040 if TARGET_SOCFPGA_ARRIA10
 	default 0x01000040 if TARGET_SOCFPGA_GEN5
 
diff --git a/arch/arm/mach-stm32mp/Kconfig.13x b/arch/arm/mach-stm32mp/Kconfig.13x
index 5fc000986e1..acc02a5a187 100644
--- a/arch/arm/mach-stm32mp/Kconfig.13x
+++ b/arch/arm/mach-stm32mp/Kconfig.13x
@@ -19,7 +19,7 @@ config TARGET_ST_STM32MP13x
 
 endchoice
 
-config SYS_TEXT_BASE
+config TEXT_BASE
 	default 0xC0000000
 
 config PRE_CON_BUF_ADDR
diff --git a/arch/arm/mach-stm32mp/Kconfig.15x b/arch/arm/mach-stm32mp/Kconfig.15x
index d516270292a..14e4a705fc3 100644
--- a/arch/arm/mach-stm32mp/Kconfig.15x
+++ b/arch/arm/mach-stm32mp/Kconfig.15x
@@ -93,7 +93,7 @@ config SPL_STM32MP15_PWR
 		This config enables implementation of driver-model pmic and
 		regulator uclass features for access to STM32MP15x PWR in SPL.
 
-config SYS_TEXT_BASE
+config TEXT_BASE
 	default 0xC0100000
 
 config PRE_CON_BUF_ADDR
diff --git a/arch/arm/mach-sunxi/board.c b/arch/arm/mach-sunxi/board.c
index 8f7c894286d..430529a5c64 100644
--- a/arch/arm/mach-sunxi/board.c
+++ b/arch/arm/mach-sunxi/board.c
@@ -359,7 +359,7 @@ __weak void sunxi_sram_init(void)
 static bool sunxi_valid_emmc_boot(struct mmc *mmc)
 {
 	struct blk_desc *bd = mmc_get_blk_desc(mmc);
-	uint32_t *buffer = (void *)(uintptr_t)CONFIG_SYS_TEXT_BASE;
+	u32 *buffer = (void *)(uintptr_t)CONFIG_TEXT_BASE;
 	struct boot_file_head *egon_head = (void *)buffer;
 	int bootpart = EXT_CSD_EXTRACT_BOOT_PART(mmc->part_config);
 	uint32_t spl_size, emmc_checksum, chksum = 0;
diff --git a/arch/arm/mach-sunxi/spl_spi_sunxi.c b/arch/arm/mach-sunxi/spl_spi_sunxi.c
index 925bf85f2d2..dbff309629e 100644
--- a/arch/arm/mach-sunxi/spl_spi_sunxi.c
+++ b/arch/arm/mach-sunxi/spl_spi_sunxi.c
@@ -338,7 +338,7 @@ static int spl_spi_load_image(struct spl_image_info *spl_image,
 	struct legacy_img_hdr *header;
 	uint32_t load_offset = sunxi_get_spl_size();
 
-	header = (struct legacy_img_hdr *)CONFIG_SYS_TEXT_BASE;
+	header = (struct legacy_img_hdr *)CONFIG_TEXT_BASE;
 	load_offset = max_t(uint32_t, load_offset, CONFIG_SYS_SPI_U_BOOT_OFFS);
 
 	spi0_init();
diff --git a/arch/arm/mach-zynqmp/mkimage_fit_atf.sh b/arch/arm/mach-zynqmp/mkimage_fit_atf.sh
index 40ed23b0ba6..cdecb1c1d35 100755
--- a/arch/arm/mach-zynqmp/mkimage_fit_atf.sh
+++ b/arch/arm/mach-zynqmp/mkimage_fit_atf.sh
@@ -26,7 +26,7 @@ TEE_LOAD_ADDR_LOW=`printf 0x%x $((TEE_LOAD_ADDR & 0xffffffff))`
 TEE_LOAD_ADDR_HIGH=`printf 0x%x $((TEE_LOAD_ADDR >> 32))`
 
 if [ -z "$BL33_LOAD_ADDR" ];then
-	BL33_LOAD_ADDR=`awk '/CONFIG_SYS_TEXT_BASE/ { print $3 }' include/generated/autoconf.h`
+	BL33_LOAD_ADDR=`awk '/CONFIG_TEXT_BASE/ { print $3 }' include/generated/autoconf.h`
 fi
 BL33_LOAD_ADDR_LOW=`printf 0x%x $((BL33_LOAD_ADDR & 0xffffffff))`
 BL33_LOAD_ADDR_HIGH=`printf 0x%x $((BL33_LOAD_ADDR >> 32))`
diff --git a/arch/m68k/cpu/mcf52x2/start.S b/arch/m68k/cpu/mcf52x2/start.S
index 4488a6e4c7f..6dddbe76f3a 100644
--- a/arch/m68k/cpu/mcf52x2/start.S
+++ b/arch/m68k/cpu/mcf52x2/start.S
@@ -35,8 +35,8 @@
  */
 _vectors:
 .long	0x00000000		/* Flash offset is 0 until we setup CS0 */
-#if defined(CONFIG_M5282) && (CONFIG_SYS_TEXT_BASE == CONFIG_SYS_INT_FLASH_BASE)
-.long	_start - CONFIG_SYS_TEXT_BASE
+#if defined(CONFIG_M5282) && (CONFIG_TEXT_BASE == CONFIG_SYS_INT_FLASH_BASE)
+.long	_start - CONFIG_TEXT_BASE
 #else
 .long	_START
 #endif
@@ -83,7 +83,7 @@ _vectors:
 
 #if defined(CONFIG_SYS_INT_FLASH_BASE) && \
     (defined(CONFIG_M5282) || defined(CONFIG_M5281))
-#if (CONFIG_SYS_TEXT_BASE == CONFIG_SYS_INT_FLASH_BASE)
+#if (CONFIG_TEXT_BASE == CONFIG_SYS_INT_FLASH_BASE)
 .long	0x55AA55AA,0xAA55AA55		/* CFM Backdoorkey */
 .long	0xFFFFFFFF			/* all sectors protected */
 .long	0x00000000			/* supervisor/User restriction */
@@ -130,7 +130,7 @@ _start:
 	movec	%d0, %RAMBAR1
 
 #if defined(CONFIG_M5282)
-#if (CONFIG_SYS_TEXT_BASE == CONFIG_SYS_INT_FLASH_BASE)
+#if (CONFIG_TEXT_BASE == CONFIG_SYS_INT_FLASH_BASE)
 	/*
 	 * Setup code in SRAM to initialize FLASHBAR,
 	 * if start from internal Flash
@@ -156,7 +156,7 @@ _after_flashbar_copy:
 	/* Setup code to initialize FLASHBAR, if start from external Memory */
 	move.l	#(CONFIG_SYS_INT_FLASH_BASE + CONFIG_SYS_INT_FLASH_ENABLE), %d0
 	movec	%d0, %FLASHBAR
-#endif /* (CONFIG_SYS_TEXT_BASE == CONFIG_SYS_INT_FLASH_BASE) */
+#endif /* (CONFIG_TEXT_BASE == CONFIG_SYS_INT_FLASH_BASE) */
 
 #endif
 #endif
@@ -165,7 +165,7 @@ _after_flashbar_copy:
 	 * therefore no VBR to set
 	 */
 #if !defined(CONFIG_MONITOR_IS_IN_RAM)
-#if defined(CONFIG_M5282) && (CONFIG_SYS_TEXT_BASE == CONFIG_SYS_INT_FLASH_BASE)
+#if defined(CONFIG_M5282) && (CONFIG_TEXT_BASE == CONFIG_SYS_INT_FLASH_BASE)
 	move.l	#CONFIG_SYS_INT_FLASH_BASE, %d0
 #else
 	move.l	#CONFIG_SYS_FLASH_BASE, %d0
diff --git a/arch/m68k/cpu/mcf530x/start.S b/arch/m68k/cpu/mcf530x/start.S
index 287e8e7873c..644c372bdd2 100644
--- a/arch/m68k/cpu/mcf530x/start.S
+++ b/arch/m68k/cpu/mcf530x/start.S
@@ -39,8 +39,8 @@ _vectors:
 /* Flash offset is 0 until we setup CS0 */
 .long	0x00000000
 #if defined(CONFIG_M5307) && \
-	   (CONFIG_SYS_TEXT_BASE == CONFIG_SYS_INT_FLASH_BASE)
-.long	_start - CONFIG_SYS_TEXT_BASE
+	   (CONFIG_TEXT_BASE == CONFIG_SYS_INT_FLASH_BASE)
+.long	_start - CONFIG_TEXT_BASE
 #else
 .long	_START
 #endif
diff --git a/arch/m68k/cpu/mcf5445x/start.S b/arch/m68k/cpu/mcf5445x/start.S
index 27bcd40c5c1..aea8f3090fe 100644
--- a/arch/m68k/cpu/mcf5445x/start.S
+++ b/arch/m68k/cpu/mcf5445x/start.S
@@ -26,10 +26,10 @@
 	rte;
 
 #if defined(CONFIG_SERIAL_BOOT)
-#define ASM_DRAMINIT	(asm_dram_init - CONFIG_SYS_TEXT_BASE + \
+#define ASM_DRAMINIT	(asm_dram_init - CONFIG_TEXT_BASE + \
 	CONFIG_SYS_INIT_RAM_ADDR)
-#define ASM_DRAMINIT_N	(asm_dram_init - CONFIG_SYS_TEXT_BASE)
-#define ASM_SBF_IMG_HDR	(asm_sbf_img_hdr - CONFIG_SYS_TEXT_BASE + \
+#define ASM_DRAMINIT_N	(asm_dram_init - CONFIG_TEXT_BASE)
+#define ASM_SBF_IMG_HDR	(asm_sbf_img_hdr - CONFIG_TEXT_BASE + \
 	CONFIG_SYS_INIT_RAM_ADDR)
 #endif
 
@@ -116,7 +116,7 @@ vector192_255:
 asm_sbf_img_hdr:
 	.long	0x00000000		/* checksum, not yet implemented */
 	.long	0x00040000		/* image length */
-	.long	CONFIG_SYS_TEXT_BASE	/* image to be relocated at */
+	.long	CONFIG_TEXT_BASE	/* image to be relocated at */
 
 asm_dram_init:
 	move.w	#0x2700,%sr		/* Mask off Interrupt */
@@ -271,7 +271,7 @@ asm_dspi_rd_loop2:
 	jsr	asm_dspi_rd_status
 
 	/* jump to memory and execute */
-	move.l	#(CONFIG_SYS_TEXT_BASE + 0x400), %a0
+	move.l	#(CONFIG_TEXT_BASE + 0x400), %a0
 	jmp	(%a0)
 
 asm_dspi_wr_status:
@@ -298,7 +298,7 @@ asm_dspi_rd_status:
 	/* copy 4 boot pages to dram as soon as possible */
 	/* each page is 996 bytes (1056 total with 60 ECC bytes */
 	move.l  #0x00000000, %a1	/* src */
-	move.l	#CONFIG_SYS_TEXT_BASE, %a2		/* dst */
+	move.l	#CONFIG_TEXT_BASE, %a2		/* dst */
 	move.l	#0x3E0, %d0		/* sz in long */
 
 asm_boot_nand_copy:
@@ -381,7 +381,7 @@ asm_nand_init:
 	move.l	#4, %d2			/* start at 4 */
 	move.l  #0xFC0FFF04, %a0	/* cmd2 */
 	move.l  #0xFC0FFF0C, %a1	/* rar */
-	move.l	#(CONFIG_SYS_TEXT_BASE + 0xF80), %a2
+	move.l	#(CONFIG_TEXT_BASE + 0xF80), %a2
 
 asm_nand_read:
 	move.l	#0x11000000, %d0	/* rar */
@@ -419,7 +419,7 @@ asm_nand_copy:
 	bgt	asm_nand_read
 
 	/* jump to memory and execute */
-	move.l	#(CONFIG_SYS_TEXT_BASE + 0x400), %a0
+	move.l	#(CONFIG_TEXT_BASE + 0x400), %a0
 	jmp	(%a0)
 
 #endif			/* CONFIG_SYS_NAND_BOOT */
diff --git a/arch/microblaze/cpu/relocate.c b/arch/microblaze/cpu/relocate.c
index b00d02b1dfc..7a15fb2ec39 100644
--- a/arch/microblaze/cpu/relocate.c
+++ b/arch/microblaze/cpu/relocate.c
@@ -19,7 +19,7 @@
  * @rela_start: rela section start
  * @rela_end: rela section end
  * @dyn_start: dynamic section start
- * @origin_addr: address where u-boot starts(doesn't need to be CONFIG_SYS_TEXT_BASE)
+ * @origin_addr: address where u-boot starts(doesn't need to be CONFIG_TEXT_BASE)
  */
 void mb_fix_rela(u32 reloc_addr, u32 verbose, u32 rela_start,
 		 u32 rela_end, u32 dyn_start, u32 origin_addr)
@@ -29,9 +29,9 @@ void mb_fix_rela(u32 reloc_addr, u32 verbose, u32 rela_start,
 	/*
 	 * Return in case u-boot.elf is used directly.
 	 * Skip it when u-boot.bin is loaded to different address than
-	 * CONFIG_SYS_TEXT_BASE. In this case relocation is necessary to run.
+	 * CONFIG_TEXT_BASE. In this case relocation is necessary to run.
 	 */
-	if (reloc_addr == CONFIG_SYS_TEXT_BASE) {
+	if (reloc_addr == CONFIG_TEXT_BASE) {
 		debug_cond(verbose,
 			   "Relocation address is the same - skip relocation\n");
 		return;
diff --git a/arch/microblaze/cpu/start.S b/arch/microblaze/cpu/start.S
index a877db305e4..7079d9e1704 100644
--- a/arch/microblaze/cpu/start.S
+++ b/arch/microblaze/cpu/start.S
@@ -55,15 +55,15 @@ uboot_sym_start:
 	add	r6, r0, r0
 
 	lwi	r7, r20, ALIGNMENT_ADDR
-	addi	r7, r7, -CONFIG_SYS_TEXT_BASE
+	addi	r7, r7, -CONFIG_TEXT_BASE
 	add	r7, r7, r5
 	lwi	r8, r20, ALIGNMENT_ADDR + 0x4
-	addi	r8, r8, -CONFIG_SYS_TEXT_BASE
+	addi	r8, r8, -CONFIG_TEXT_BASE
 	add	r8, r8, r5
 	lwi	r9, r20, ALIGNMENT_ADDR + 0x8
-	addi	r9, r9, -CONFIG_SYS_TEXT_BASE
+	addi	r9, r9, -CONFIG_TEXT_BASE
 	add	r9, r9, r5
-	addi	r10, r0, CONFIG_SYS_TEXT_BASE
+	addi	r10, r0, CONFIG_TEXT_BASE
 
 	brlid	r15, mb_fix_rela
 	nop
diff --git a/arch/mips/mach-jz47xx/jz4780/jz4780.c b/arch/mips/mach-jz47xx/jz4780/jz4780.c
index 310c0934a44..06797b6d226 100644
--- a/arch/mips/mach-jz47xx/jz4780/jz4780.c
+++ b/arch/mips/mach-jz47xx/jz4780/jz4780.c
@@ -58,7 +58,7 @@ void board_init_f(ulong dummy)
 	if (ret)
 		hang();
 
-	header = (struct legacy_img_hdr *)(CONFIG_SYS_TEXT_BASE -
+	header = (struct legacy_img_hdr *)(CONFIG_TEXT_BASE -
 					 sizeof(struct legacy_img_hdr));
 
 	count = blk_dread(mmc_get_blk_desc(mmc),
@@ -68,7 +68,7 @@ void board_init_f(ulong dummy)
 		hang();
 
 	image_entry_noargs_t image_entry =
-		(image_entry_noargs_t)CONFIG_SYS_TEXT_BASE;
+		(image_entry_noargs_t)CONFIG_TEXT_BASE;
 
 	image_entry();
 
diff --git a/arch/mips/mach-mscc/lowlevel_init.S b/arch/mips/mach-mscc/lowlevel_init.S
index 91f29ae252c..0c24cb5f22d 100644
--- a/arch/mips/mach-mscc/lowlevel_init.S
+++ b/arch/mips/mach-mscc/lowlevel_init.S
@@ -21,7 +21,7 @@ LEAF(lowlevel_init)
 
 	/* Modify ra/s0 such we return to physical NOR location */
 	li	t0, 0x0fffffff
-	li	t1, CONFIG_SYS_TEXT_BASE
+	li	t1, CONFIG_TEXT_BASE
 	and	s0, ra, t0
 	add	s0, s0, t1
 
diff --git a/arch/mips/mach-mtmips/Kconfig b/arch/mips/mach-mtmips/Kconfig
index d46be503a2b..15b2792e619 100644
--- a/arch/mips/mach-mtmips/Kconfig
+++ b/arch/mips/mach-mtmips/Kconfig
@@ -28,7 +28,7 @@ config SYS_ICACHE_LINE_SIZE
 config SYS_SCACHE_LINE_SIZE
 	default 32 if SOC_MT7621
 
-config SYS_TEXT_BASE
+config TEXT_BASE
 	default 0x9c000000 if !SPL && !SOC_MT7621
 	default 0x80200000 if SPL || SOC_MT7621
 
diff --git a/arch/powerpc/cpu/mpc85xx/cpu_init_early.c b/arch/powerpc/cpu/mpc85xx/cpu_init_early.c
index 1bba216371b..8d629d3b960 100644
--- a/arch/powerpc/cpu/mpc85xx/cpu_init_early.c
+++ b/arch/powerpc/cpu/mpc85xx/cpu_init_early.c
@@ -30,7 +30,7 @@ void setup_ifc(void)
 	_mas0 = MAS0_TLBSEL(1) | MAS0_ESEL(15);
 	_mas1 = MAS1_VALID | MAS1_TID(0) | MAS1_TS | MAS1_IPROT |
 			MAS1_TSIZE(BOOKE_PAGESZ_4M);
-	_mas2 = FSL_BOOKE_MAS2(CONFIG_SYS_TEXT_BASE, MAS2_I|MAS2_G);
+	_mas2 = FSL_BOOKE_MAS2(CONFIG_TEXT_BASE, MAS2_I | MAS2_G);
 	_mas3 = FSL_BOOKE_MAS3(flash_phys, 0, MAS3_SW|MAS3_SR|MAS3_SX);
 	_mas7 = FSL_BOOKE_MAS7(flash_phys);
 
@@ -58,7 +58,7 @@ void setup_ifc(void)
 			MAS0_ESEL(CONFIG_SYS_PPC_E500_DEBUG_TLB);
 	_mas1 = MAS1_VALID | MAS1_TID(0) | MAS1_IPROT |
 			MAS1_TSIZE(BOOKE_PAGESZ_4M);
-	_mas2 = FSL_BOOKE_MAS2(CONFIG_SYS_TEXT_BASE, MAS2_I|MAS2_G);
+	_mas2 = FSL_BOOKE_MAS2(CONFIG_TEXT_BASE, MAS2_I | MAS2_G);
 	_mas3 = FSL_BOOKE_MAS3(flash_phys, 0, MAS3_SW|MAS3_SR|MAS3_SX);
 	_mas7 = FSL_BOOKE_MAS7(flash_phys);
 
diff --git a/arch/powerpc/cpu/mpc85xx/u-boot.lds b/arch/powerpc/cpu/mpc85xx/u-boot.lds
index c766f20cb03..fa3aa954cbb 100644
--- a/arch/powerpc/cpu/mpc85xx/u-boot.lds
+++ b/arch/powerpc/cpu/mpc85xx/u-boot.lds
@@ -18,7 +18,7 @@ SECTIONS
 {
   /* Optional boot sector */
 #if defined(CONFIG_FSL_PREPBL_ESDHC_BOOT_SECTOR) && !defined(CONFIG_SPL)
-  .bootsect CONFIG_SYS_TEXT_BASE - CONFIG_FSL_PREPBL_ESDHC_BOOT_SECTOR_DATA * 512 : {
+  .bootsect CONFIG_TEXT_BASE - CONFIG_FSL_PREPBL_ESDHC_BOOT_SECTOR_DATA * 512 : {
     KEEP(arch/powerpc/cpu/mpc85xx/start.o (.bootsect))
     . = CONFIG_FSL_PREPBL_ESDHC_BOOT_SECTOR_DATA * 512;
   }
diff --git a/arch/powerpc/dts/kmcent2-u-boot.dtsi b/arch/powerpc/dts/kmcent2-u-boot.dtsi
index ab76a9f1226..3b4d51e4914 100644
--- a/arch/powerpc/dts/kmcent2-u-boot.dtsi
+++ b/arch/powerpc/dts/kmcent2-u-boot.dtsi
@@ -77,13 +77,13 @@
 
 	binman {
 		filename = "u-boot-with-dtb.bin";
-		skip-at-start = <CONFIG_SYS_TEXT_BASE>;
+		skip-at-start = <CONFIG_TEXT_BASE>;
 		sort-by-offset;
 		pad-byte = <0xff>;
 		size = <CONFIG_SYS_MONITOR_LEN>;
 
 		u-boot-with-ucode-ptr {
-			offset = <CONFIG_SYS_TEXT_BASE>;
+			offset = <CONFIG_TEXT_BASE>;
 			optional-ucode;
 		};
 
diff --git a/arch/powerpc/dts/u-boot.dtsi b/arch/powerpc/dts/u-boot.dtsi
index 67de476a45e..b0c69b5fd85 100644
--- a/arch/powerpc/dts/u-boot.dtsi
+++ b/arch/powerpc/dts/u-boot.dtsi
@@ -8,13 +8,13 @@
 / {
 	binman {
 		filename = "u-boot-with-dtb.bin";
-		skip-at-start = <CONFIG_SYS_TEXT_BASE>;
+		skip-at-start = <CONFIG_TEXT_BASE>;
 		sort-by-offset;
 		pad-byte = <0xff>;
 		size = <CONFIG_SYS_MONITOR_LEN>;
 
 		u-boot-with-ucode-ptr {
-			offset = <CONFIG_SYS_TEXT_BASE>;
+			offset = <CONFIG_TEXT_BASE>;
 			optional-ucode;
 		};
 
diff --git a/arch/riscv/dts/binman.dtsi b/arch/riscv/dts/binman.dtsi
index 5757ef65ea4..b8fc8f7f35e 100644
--- a/arch/riscv/dts/binman.dtsi
+++ b/arch/riscv/dts/binman.dtsi
@@ -27,7 +27,7 @@
 					os = "U-Boot";
 					arch = "riscv";
 					compression = "none";
-					load = <CONFIG_SYS_TEXT_BASE>;
+					load = <CONFIG_TEXT_BASE>;
 
 					uboot_blob: blob-ext {
 						filename = "u-boot-nodtb.bin";
diff --git a/arch/sh/cpu/u-boot.lds b/arch/sh/cpu/u-boot.lds
index ff80ce78f3e..85ee547b4aa 100644
--- a/arch/sh/cpu/u-boot.lds
+++ b/arch/sh/cpu/u-boot.lds
@@ -25,7 +25,7 @@ ENTRY(_start)
 
 SECTIONS
 {
-	. = CONFIG_SYS_TEXT_BASE;
+	. = CONFIG_TEXT_BASE;
 	reloc_dst = .;
 
 	PROVIDE (_ftext = .);
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
index 7e86c6a0cd0..21218a63de6 100644
--- a/arch/x86/Kconfig
+++ b/arch/x86/Kconfig
@@ -924,8 +924,8 @@ config CACHE_QOS_SIZE_PER_BIT
 
 config X86_OFFSET_U_BOOT
 	hex "Offset of U-Boot in ROM image"
-	depends on HAVE_SYS_TEXT_BASE
-	default SYS_TEXT_BASE
+	depends on HAVE_TEXT_BASE
+	default TEXT_BASE
 
 config X86_OFFSET_SPL
 	hex "Offset of SPL in ROM image"
diff --git a/arch/x86/cpu/apollolake/spl.c b/arch/x86/cpu/apollolake/spl.c
index f2d25734c60..6078d5a200e 100644
--- a/arch/x86/cpu/apollolake/spl.c
+++ b/arch/x86/cpu/apollolake/spl.c
@@ -118,7 +118,7 @@ static int spl_fast_spi_load_image(struct spl_image_info *spl_image,
 
 	spl_image->size = CONFIG_SYS_MONITOR_LEN;  /* We don't know SPL size */
 	spl_image->entry_point = spl_phase() == PHASE_TPL ?
-		CONFIG_SPL_TEXT_BASE : CONFIG_SYS_TEXT_BASE;
+		CONFIG_SPL_TEXT_BASE : CONFIG_TEXT_BASE;
 	spl_image->load_addr = spl_image->entry_point;
 	spl_image->os = IH_OS_U_BOOT;
 	spl_image->name = "U-Boot";
diff --git a/arch/x86/cpu/quark/quark.c b/arch/x86/cpu/quark/quark.c
index e016fae04f9..0a1fbb34d40 100644
--- a/arch/x86/cpu/quark/quark.c
+++ b/arch/x86/cpu/quark/quark.c
@@ -49,7 +49,7 @@ static void quark_setup_mtrr(void)
 
 	/* variable range MTRR#0: ROM area */
 	mask = ~(CONFIG_SYS_MONITOR_LEN - 1);
-	base = CONFIG_SYS_TEXT_BASE & mask;
+	base = CONFIG_TEXT_BASE & mask;
 	msg_port_write(MSG_PORT_HOST_BRIDGE, MTRR_VAR_PHYBASE(MTRR_VAR_ROM),
 		       base | MTRR_TYPE_WRBACK);
 	msg_port_write(MSG_PORT_HOST_BRIDGE, MTRR_VAR_PHYMASK(MTRR_VAR_ROM),
diff --git a/arch/x86/cpu/start.S b/arch/x86/cpu/start.S
index 897fd926c0a..0ef27cc5a00 100644
--- a/arch/x86/cpu/start.S
+++ b/arch/x86/cpu/start.S
@@ -237,15 +237,15 @@ multiboot_header:
 	/* checksum */
 	.long	-0x1BADB002 - (1 << 16)
 	/* header addr */
-	.long	multiboot_header - _x86boot_start + CONFIG_SYS_TEXT_BASE
+	.long	multiboot_header - _x86boot_start + CONFIG_TEXT_BASE
 	/* load addr */
-	.long	CONFIG_SYS_TEXT_BASE
+	.long	CONFIG_TEXT_BASE
 	/* load end addr */
 	.long	0
 	/* bss end addr */
 	.long	0
 	/* entry addr */
-	.long	CONFIG_SYS_TEXT_BASE
+	.long	CONFIG_TEXT_BASE
 
 #ifdef CONFIG_X86_LOAD_FROM_32_BIT
 	/*
diff --git a/arch/x86/cpu/u-boot-64.lds b/arch/x86/cpu/u-boot-64.lds
index 53c56043a9e..d0398ff00d7 100644
--- a/arch/x86/cpu/u-boot-64.lds
+++ b/arch/x86/cpu/u-boot-64.lds
@@ -15,8 +15,8 @@ SECTIONS
 	/DISCARD/ : { *(__u_boot_list_2_cmd_*) }
 #endif
 
-#ifdef CONFIG_SYS_TEXT_BASE
-	. = CONFIG_SYS_TEXT_BASE;	/* Location of bootcode in flash */
+#ifdef CONFIG_TEXT_BASE
+	. = CONFIG_TEXT_BASE;	/* Location of bootcode in flash */
 #endif
 	__text_start = .;
 
diff --git a/arch/x86/cpu/u-boot.lds b/arch/x86/cpu/u-boot.lds
index 7c872098342..a31f4220a00 100644
--- a/arch/x86/cpu/u-boot.lds
+++ b/arch/x86/cpu/u-boot.lds
@@ -15,7 +15,7 @@ SECTIONS
 	/DISCARD/ : { *(__u_boot_list_2_cmd_*) }
 #endif
 
-	. = CONFIG_SYS_TEXT_BASE;	/* Location of bootcode in flash */
+	. = CONFIG_TEXT_BASE;	/* Location of bootcode in flash */
 	__text_start = .;
 
 	.text.start : { *(.text.start); }
diff --git a/arch/x86/lib/relocate.c b/arch/x86/lib/relocate.c
index 9060d19d46a..5b1b420a643 100644
--- a/arch/x86/lib/relocate.c
+++ b/arch/x86/lib/relocate.c
@@ -162,10 +162,10 @@ int do_elf_reloc_fixups(void)
 	if (re_src == re_end)
 		panic("No relocation data");
 
-#ifdef CONFIG_SYS_TEXT_BASE
-	text_base = CONFIG_SYS_TEXT_BASE;
+#ifdef CONFIG_TEXT_BASE
+	text_base = CONFIG_TEXT_BASE;
 #else
-	panic("No CONFIG_SYS_TEXT_BASE");
+	panic("No CONFIG_TEXT_BASE");
 #endif
 #if CONFIG_IS_ENABLED(X86_64)
 	do_elf_reloc_fixups64(text_base, size, re_src, re_end);
diff --git a/arch/x86/lib/spl.c b/arch/x86/lib/spl.c
index 2d50c62964c..34ef68f2bb7 100644
--- a/arch/x86/lib/spl.c
+++ b/arch/x86/lib/spl.c
@@ -66,7 +66,7 @@ static int x86_spl_init(void)
 	 * TODO(sjg@chromium.org): We use this area of RAM for the stack
 	 * and global_data in SPL. Once U-Boot starts up and releocates it
 	 * is not needed. We could make this a CONFIG option or perhaps
-	 * place it immediately below CONFIG_SYS_TEXT_BASE.
+	 * place it immediately below CONFIG_TEXT_BASE.
 	 */
 	__maybe_unused char *ptr = (char *)0x110000;
 #else
@@ -209,8 +209,8 @@ static int spl_board_load_image(struct spl_image_info *spl_image,
 				struct spl_boot_device *bootdev)
 {
 	spl_image->size = CONFIG_SYS_MONITOR_LEN;
-	spl_image->entry_point = CONFIG_SYS_TEXT_BASE;
-	spl_image->load_addr = CONFIG_SYS_TEXT_BASE;
+	spl_image->entry_point = CONFIG_TEXT_BASE;
+	spl_image->load_addr = CONFIG_TEXT_BASE;
 	spl_image->os = IH_OS_U_BOOT;
 	spl_image->name = "U-Boot";
 
diff --git a/board/BuS/eb_cpu5282/eb_cpu5282.c b/board/BuS/eb_cpu5282/eb_cpu5282.c
index b739bc3ca6a..064e767838b 100644
--- a/board/BuS/eb_cpu5282/eb_cpu5282.c
+++ b/board/BuS/eb_cpu5282/eb_cpu5282.c
@@ -31,7 +31,7 @@ extern unsigned long display_height;
 int checkboard (void)
 {
 	puts("Board: EB+CPU5282 (BuS Elektronik GmbH & Co. KG)\n");
-#if (CONFIG_SYS_TEXT_BASE ==  CONFIG_SYS_INT_FLASH_BASE)
+#if (CONFIG_TEXT_BASE ==  CONFIG_SYS_INT_FLASH_BASE)
 	puts("       Boot from Internal FLASH\n");
 #endif
 	return 0;
diff --git a/board/advantech/som-db5800-som-6867/Kconfig b/board/advantech/som-db5800-som-6867/Kconfig
index 35d58fcd019..4070d5903ce 100644
--- a/board/advantech/som-db5800-som-6867/Kconfig
+++ b/board/advantech/som-db5800-som-6867/Kconfig
@@ -12,7 +12,7 @@ config SYS_SOC
 config SYS_CONFIG_NAME
 	default "som-db5800-som-6867"
 
-config SYS_TEXT_BASE
+config TEXT_BASE
 	default 0xfff00000
 
 config BOARD_SPECIFIC_OPTIONS # dummy
diff --git a/board/armltd/vexpress64/Kconfig b/board/armltd/vexpress64/Kconfig
index a0314c65379..c7adae0ea71 100644
--- a/board/armltd/vexpress64/Kconfig
+++ b/board/armltd/vexpress64/Kconfig
@@ -54,9 +54,9 @@ config JUNO_DTB_PART
 	  device tree blob to configure U-Boot.
 
 config LNX_KRNL_IMG_TEXT_OFFSET_BASE
-	default SYS_TEXT_BASE
+	default TEXT_BASE
 
-config SYS_TEXT_BASE
+config TEXT_BASE
 	default 0x88000000 if TARGET_VEXPRESS64_BASE_FVP
 	default 0xe0000000 if TARGET_VEXPRESS64_JUNO
 	default 0x00001000 if TARGET_VEXPRESS64_BASER_FVP
diff --git a/board/beacon/beacon-rzg2m/beacon-rzg2m.c b/board/beacon/beacon-rzg2m/beacon-rzg2m.c
index 4b41c6fdaa2..99fe1edfb33 100644
--- a/board/beacon/beacon-rzg2m/beacon-rzg2m.c
+++ b/board/beacon/beacon-rzg2m/beacon-rzg2m.c
@@ -12,7 +12,7 @@ DECLARE_GLOBAL_DATA_PTR;
 int board_init(void)
 {
 	/* address of boot parameters */
-	gd->bd->bi_boot_params = CONFIG_SYS_TEXT_BASE + 0x50000;
+	gd->bd->bi_boot_params = CONFIG_TEXT_BASE + 0x50000;
 
 	return 0;
 }
diff --git a/board/broadcom/bcmstb/bcmstb.c b/board/broadcom/bcmstb/bcmstb.c
index 07aeb0981c0..aead6f099e8 100644
--- a/board/broadcom/bcmstb/bcmstb.c
+++ b/board/broadcom/bcmstb/bcmstb.c
@@ -61,13 +61,13 @@ int dram_init_banksize(void)
 
 	/*
 	 * On this SoC, U-Boot is running as an ELF file.  Change the
-	 * relocation address to CONFIG_SYS_TEXT_BASE, so that in
+	 * relocation address to CONFIG_TEXT_BASE, so that in
 	 * setup_reloc, gd->reloc_off works out to 0, effectively
 	 * disabling relocation.  Otherwise U-Boot hangs in the setup
 	 * instructions just before relocate_code in
 	 * arch/arm/lib/crt0.S.
 	 */
-	gd->relocaddr = CONFIG_SYS_TEXT_BASE;
+	gd->relocaddr = CONFIG_TEXT_BASE;
 
 	return 0;
 }
diff --git a/board/cobra5272/README b/board/cobra5272/README
index 1dad7e3eaf6..ac62e557a07 100644
--- a/board/cobra5272/README
+++ b/board/cobra5272/README
@@ -89,9 +89,9 @@ please first check:
 	=> u-boot as single bootloader starting from flash
 
 
-	in board/cobra5272/config.mk CONFIG_SYS_TEXT_BASE should be
+	in board/cobra5272/config.mk CONFIG_TEXT_BASE should be
 
-		CONFIG_SYS_TEXT_BASE = 0xffe00000
+		CONFIG_TEXT_BASE = 0xffe00000
 
 	=> linking address for u-boot as single bootloader stored in flash
 
@@ -128,9 +128,9 @@ please modify the settings:
 	=> u-boot as RAM version, chainloaded by another bootloader or using bdm cable
 
 
-	in board/cobra5272/config.mk CONFIG_SYS_TEXT_BASE should be
+	in board/cobra5272/config.mk CONFIG_TEXT_BASE should be
 
-		CONFIG_SYS_TEXT_BASE = 0x00020000
+		CONFIG_TEXT_BASE = 0x00020000
 
 	=> target linking address for RAM
 
diff --git a/board/congatec/cgtqmx8/cgtqmx8.c b/board/congatec/cgtqmx8/cgtqmx8.c
index a50a052df76..c211cb58396 100644
--- a/board/congatec/cgtqmx8/cgtqmx8.c
+++ b/board/congatec/cgtqmx8/cgtqmx8.c
@@ -425,7 +425,7 @@ int board_late_init(void)
 	char *end_of_uboot;
 	char command[256];
 
-	end_of_uboot = (char *)(ulong)(CONFIG_SYS_TEXT_BASE + _end_ofs
+	end_of_uboot = (char *)(ulong)(CONFIG_TEXT_BASE + _end_ofs
 			+ fdt_totalsize(gd->fdt_blob));
 	end_of_uboot += 9;
 
diff --git a/board/congatec/conga-qeval20-qa3-e3845/Kconfig b/board/congatec/conga-qeval20-qa3-e3845/Kconfig
index 64692509fd7..2cdc34c7c0c 100644
--- a/board/congatec/conga-qeval20-qa3-e3845/Kconfig
+++ b/board/congatec/conga-qeval20-qa3-e3845/Kconfig
@@ -11,7 +11,7 @@ config SYS_CONFIG_NAME
 	default "conga-qeval20-qa3-e3845" if TARGET_CONGA_QEVAL20_QA3_E3845
 	default "theadorable-x86-conga-qa3-e3845" if TARGET_THEADORABLE_X86_CONGA_QA3_E3845
 
-config SYS_TEXT_BASE
+config TEXT_BASE
 	default 0xfff00000
 
 config BOARD_SPECIFIC_OPTIONS # dummy
diff --git a/board/coreboot/coreboot/Kconfig b/board/coreboot/coreboot/Kconfig
index 05e9b3b6f75..4f41ce1abf1 100644
--- a/board/coreboot/coreboot/Kconfig
+++ b/board/coreboot/coreboot/Kconfig
@@ -9,7 +9,7 @@ config SYS_VENDOR
 config SYS_SOC
 	default "coreboot"
 
-config SYS_TEXT_BASE
+config TEXT_BASE
 	default 0x01110000
 
 config BOARD_SPECIFIC_OPTIONS # dummy
diff --git a/board/cssi/MCR3000/Kconfig b/board/cssi/MCR3000/Kconfig
index ecfd90fd4c4..dbe2d5f0a3a 100644
--- a/board/cssi/MCR3000/Kconfig
+++ b/board/cssi/MCR3000/Kconfig
@@ -9,7 +9,7 @@ config SYS_VENDOR
 config SYS_CONFIG_NAME
 	default "MCR3000"
 
-config SYS_TEXT_BASE
+config TEXT_BASE
 	default 0x04000000
 
 endif
diff --git a/board/davinci/da8xxevm/README.da850 b/board/davinci/da8xxevm/README.da850
index 8cebdcc1bb7..50ef401b7c9 100644
--- a/board/davinci/da8xxevm/README.da850
+++ b/board/davinci/da8xxevm/README.da850
@@ -124,7 +124,7 @@ NOR Flash is XIP (execute-in-place), so no AIS (or SPL) is needed. The
 u-boot.bin is directy flashed, but CONFIT_DA850_LOWLEVEL must be set
 to initialize hardware that's normally done by SPL.
 
-For this case, CONFIG_SYS_TEXT_BASE=0x60000000 which is the address to
+For this case, CONFIG_TEXT_BASE=0x60000000 which is the address to
 which the bootloader jumps when powered on.
 
 Example:
diff --git a/board/dfi/dfi-bt700/Kconfig b/board/dfi/dfi-bt700/Kconfig
index 50c7b2a2f42..413f42a3205 100644
--- a/board/dfi/dfi-bt700/Kconfig
+++ b/board/dfi/dfi-bt700/Kconfig
@@ -11,7 +11,7 @@ config SYS_CONFIG_NAME
 	default "dfi-bt700" if TARGET_Q7X_151_DFI_BT700
 	default "theadorable-x86-dfi-bt700" if TARGET_THEADORABLE_X86_DFI_BT700
 
-config SYS_TEXT_BASE
+config TEXT_BASE
 	default 0xfff00000
 
 config BOARD_SPECIFIC_OPTIONS # dummy
diff --git a/board/efi/efi-x86_payload/Kconfig b/board/efi/efi-x86_payload/Kconfig
index 08dd0c2edd7..6d062499346 100644
--- a/board/efi/efi-x86_payload/Kconfig
+++ b/board/efi/efi-x86_payload/Kconfig
@@ -12,7 +12,7 @@ config SYS_SOC
 config SYS_CONFIG_NAME
 	default "efi-x86_payload"
 
-config SYS_TEXT_BASE
+config TEXT_BASE
 	default 0x00200000
 
 config BOARD_SPECIFIC_OPTIONS # dummy
diff --git a/board/emulation/qemu-arm/Kconfig b/board/emulation/qemu-arm/Kconfig
index 95dbefa78ba..ed9949651c4 100644
--- a/board/emulation/qemu-arm/Kconfig
+++ b/board/emulation/qemu-arm/Kconfig
@@ -1,6 +1,6 @@
 if TARGET_QEMU_ARM_32BIT || TARGET_QEMU_ARM_64BIT
 
-config SYS_TEXT_BASE
+config TEXT_BASE
 	default 0x00000000
 
 config BOARD_SPECIFIC_OPTIONS # dummy
diff --git a/board/emulation/qemu-riscv/Kconfig b/board/emulation/qemu-riscv/Kconfig
index d8c57e6bb05..35a65256b4b 100644
--- a/board/emulation/qemu-riscv/Kconfig
+++ b/board/emulation/qemu-riscv/Kconfig
@@ -12,7 +12,7 @@ config SYS_CPU
 config SYS_CONFIG_NAME
 	default "qemu-riscv"
 
-config SYS_TEXT_BASE
+config TEXT_BASE
 	default 0x81200000 if SPL
 	default 0x80000000 if !RISCV_SMODE
 	default 0x80200000 if RISCV_SMODE && ARCH_RV64I
diff --git a/board/emulation/qemu-x86/Kconfig b/board/emulation/qemu-x86/Kconfig
index 9bb8a726ed9..787751abba4 100644
--- a/board/emulation/qemu-x86/Kconfig
+++ b/board/emulation/qemu-x86/Kconfig
@@ -12,7 +12,7 @@ config SYS_SOC
 config SYS_CONFIG_NAME
 	default "qemu-x86"
 
-config SYS_TEXT_BASE
+config TEXT_BASE
 	default 0xfff00000 if !SUPPORT_SPL
 	default 0x01110000 if SUPPORT_SPL
 
diff --git a/board/freescale/imx8qm_mek/uboot-container.cfg b/board/freescale/imx8qm_mek/uboot-container.cfg
index 93c5d39ae9b..e25aa76fe18 100644
--- a/board/freescale/imx8qm_mek/uboot-container.cfg
+++ b/board/freescale/imx8qm_mek/uboot-container.cfg
@@ -9,4 +9,4 @@ BOOT_FROM SD 0x400
 SOC_TYPE IMX8QM
 CONTAINER
 IMAGE A35 bl31.bin	0x80000000
-IMAGE A35 u-boot.bin	CONFIG_SYS_TEXT_BASE
+IMAGE A35 u-boot.bin	CONFIG_TEXT_BASE
diff --git a/board/freescale/imx8qxp_mek/uboot-container.cfg b/board/freescale/imx8qxp_mek/uboot-container.cfg
index b53896f2354..b481c98f929 100644
--- a/board/freescale/imx8qxp_mek/uboot-container.cfg
+++ b/board/freescale/imx8qxp_mek/uboot-container.cfg
@@ -9,4 +9,4 @@ BOOT_FROM SD 0x400
 SOC_TYPE IMX8QX
 CONTAINER
 IMAGE A35 bl31.bin	0x80000000
-IMAGE A35 u-boot.bin	CONFIG_SYS_TEXT_BASE
+IMAGE A35 u-boot.bin	CONFIG_TEXT_BASE
diff --git a/board/freescale/ls1021atsn/ls1021atsn.c b/board/freescale/ls1021atsn/ls1021atsn.c
index f016088670f..245c9dfb18e 100644
--- a/board/freescale/ls1021atsn/ls1021atsn.c
+++ b/board/freescale/ls1021atsn/ls1021atsn.c
@@ -188,7 +188,7 @@ void board_init_f(ulong dummy)
 	 * in last boot.
 	 */
 	if (is_warm_boot()) {
-		second_uboot = (void (*)(void))CONFIG_SYS_TEXT_BASE;
+		second_uboot = (void (*)(void))CONFIG_TEXT_BASE;
 		second_uboot();
 	}
 
diff --git a/board/freescale/ls1021atwr/ls1021atwr.c b/board/freescale/ls1021atwr/ls1021atwr.c
index 746b35a678b..fa87df73582 100644
--- a/board/freescale/ls1021atwr/ls1021atwr.c
+++ b/board/freescale/ls1021atwr/ls1021atwr.c
@@ -439,7 +439,7 @@ void board_init_f(ulong dummy)
 	 * in last boot.
 	 */
 	if (is_warm_boot()) {
-		second_uboot = (void (*)(void))CONFIG_SYS_TEXT_BASE;
+		second_uboot = (void (*)(void))CONFIG_TEXT_BASE;
 		second_uboot();
 	}
 
diff --git a/board/freescale/ls1028a/Kconfig b/board/freescale/ls1028a/Kconfig
index 5c27f0f726d..7d73d20c8f0 100644
--- a/board/freescale/ls1028a/Kconfig
+++ b/board/freescale/ls1028a/Kconfig
@@ -15,7 +15,7 @@ config SYS_CONFIG_NAME
 config EMMC_BOOT
 	bool "Support for booting from EMMC"
 
-config SYS_TEXT_BASE
+config TEXT_BASE
 	default 0x96000000 if SD_BOOT || EMMC_BOOT
 	default 0x82000000 if TFABOOT
 	default 0x20100000
@@ -51,7 +51,7 @@ config SYS_CONFIG_NAME
 config EMMC_BOOT
 	bool "Support for booting from EMMC"
 
-config SYS_TEXT_BASE
+config TEXT_BASE
 	default 0x96000000 if SD_BOOT || EMMC_BOOT
 	default 0x82000000 if TFABOOT
 	default 0x20100000
diff --git a/board/google/chromebook_coral/Kconfig b/board/google/chromebook_coral/Kconfig
index 53c651c3f9e..ff656fbf3a0 100644
--- a/board/google/chromebook_coral/Kconfig
+++ b/board/google/chromebook_coral/Kconfig
@@ -12,7 +12,7 @@ config SYS_SOC
 config SYS_CONFIG_NAME
 	default "chromebook_coral"
 
-config SYS_TEXT_BASE
+config TEXT_BASE
 	default 0xffe00000
 
 config BOARD_SPECIFIC_OPTIONS # dummy
diff --git a/board/google/chromebook_link/Kconfig b/board/google/chromebook_link/Kconfig
index dd29ddf694b..a6c244f9f76 100644
--- a/board/google/chromebook_link/Kconfig
+++ b/board/google/chromebook_link/Kconfig
@@ -12,7 +12,7 @@ config SYS_SOC
 config SYS_CONFIG_NAME
 	default "chromebook_link"
 
-config SYS_TEXT_BASE
+config TEXT_BASE
 	default 0xfff00000 if !SUPPORT_SPL
 	default 0x10000000 if SUPPORT_SPL
 
diff --git a/board/google/chromebook_samus/Kconfig b/board/google/chromebook_samus/Kconfig
index 9f66d799887..011968aefdb 100644
--- a/board/google/chromebook_samus/Kconfig
+++ b/board/google/chromebook_samus/Kconfig
@@ -13,7 +13,7 @@ config SYS_CONFIG_NAME
 	default "chromebook_samus" if TARGET_CHROMEBOOK_SAMUS
 	default "chromebook_samus" if TARGET_CHROMEBOOK_SAMUS_TPL
 
-config SYS_TEXT_BASE
+config TEXT_BASE
 	default 0xffe00000
 
 config BOARD_SPECIFIC_OPTIONS # dummy
diff --git a/board/google/chromebox_panther/Kconfig b/board/google/chromebox_panther/Kconfig
index 875df9d59ff..423a9a25f1b 100644
--- a/board/google/chromebox_panther/Kconfig
+++ b/board/google/chromebox_panther/Kconfig
@@ -12,7 +12,7 @@ config SYS_SOC
 config SYS_CONFIG_NAME
 	default "chromebox_panther"
 
-config SYS_TEXT_BASE
+config TEXT_BASE
 	default 0xfff00000
 
 # Panther actually uses haswell, not ivybridge, so this is just a placeholder
diff --git a/board/hoperun/hihope-rzg2/hihope-rzg2.c b/board/hoperun/hihope-rzg2/hihope-rzg2.c
index c1db387b275..3372290120b 100644
--- a/board/hoperun/hihope-rzg2/hihope-rzg2.c
+++ b/board/hoperun/hihope-rzg2/hihope-rzg2.c
@@ -39,7 +39,7 @@ int board_init(void)
 	u32 i;
 
 	/* address of boot parameters */
-	gd->bd->bi_boot_params = CONFIG_SYS_TEXT_BASE + 0x50000;
+	gd->bd->bi_boot_params = CONFIG_TEXT_BASE + 0x50000;
 
 	/* Configure the HSUSB block */
 	mstp_clrbits_le32(SMSTPCR7, SMSTPCR7, HSUSB_MSTP704);
diff --git a/board/hpe/gxp/Kconfig b/board/hpe/gxp/Kconfig
index 5b154a3f6e5..75364557bfc 100644
--- a/board/hpe/gxp/Kconfig
+++ b/board/hpe/gxp/Kconfig
@@ -42,5 +42,5 @@ config SYS_VENDOR
 config SYS_CONFIG_NAME
 	default "gxp"
 
-config SYS_TEXT_BASE
+config TEXT_BASE
 	default 0x50000000
diff --git a/board/imgtec/boston/Kconfig b/board/imgtec/boston/Kconfig
index ab76a3c6268..5537788001a 100644
--- a/board/imgtec/boston/Kconfig
+++ b/board/imgtec/boston/Kconfig
@@ -9,7 +9,7 @@ config SYS_VENDOR
 config SYS_CONFIG_NAME
 	default "boston"
 
-config SYS_TEXT_BASE
+config TEXT_BASE
 	default 0x9fc00000 if 32BIT
 	default 0xffffffff9fc00000 if 64BIT
 
diff --git a/board/imgtec/ci20/Kconfig b/board/imgtec/ci20/Kconfig
index 82bf65d64f1..953785fea3d 100644
--- a/board/imgtec/ci20/Kconfig
+++ b/board/imgtec/ci20/Kconfig
@@ -9,7 +9,7 @@ config SYS_VENDOR
 config SYS_CONFIG_NAME
 	default "ci20"
 
-config SYS_TEXT_BASE
+config TEXT_BASE
 	default 0x80000000
 
 endif
diff --git a/board/imgtec/malta/Kconfig b/board/imgtec/malta/Kconfig
index 98eb4d16c71..4d124b3a1e9 100644
--- a/board/imgtec/malta/Kconfig
+++ b/board/imgtec/malta/Kconfig
@@ -9,7 +9,7 @@ config SYS_VENDOR
 config SYS_CONFIG_NAME
 	default "malta"
 
-config SYS_TEXT_BASE
+config TEXT_BASE
 	default 0xbe000000 if 32BIT
 	default 0xffffffffbe000000 if 64BIT
 
diff --git a/board/imgtec/xilfpga/Kconfig b/board/imgtec/xilfpga/Kconfig
index b0782780f64..13e2d041769 100644
--- a/board/imgtec/xilfpga/Kconfig
+++ b/board/imgtec/xilfpga/Kconfig
@@ -9,7 +9,7 @@ config SYS_VENDOR
 config SYS_CONFIG_NAME
 	default "imgtec_xilfpga"
 
-config SYS_TEXT_BASE
+config TEXT_BASE
 	default 0x80C00000
 
 endif
diff --git a/board/intel/bayleybay/Kconfig b/board/intel/bayleybay/Kconfig
index a62249936fa..97228d63087 100644
--- a/board/intel/bayleybay/Kconfig
+++ b/board/intel/bayleybay/Kconfig
@@ -12,7 +12,7 @@ config SYS_SOC
 config SYS_CONFIG_NAME
 	default "bayleybay"
 
-config SYS_TEXT_BASE
+config TEXT_BASE
 	default 0xfff00000
 
 config BOARD_SPECIFIC_OPTIONS # dummy
diff --git a/board/intel/cherryhill/Kconfig b/board/intel/cherryhill/Kconfig
index a4fa004bfe0..009cd93b6d4 100644
--- a/board/intel/cherryhill/Kconfig
+++ b/board/intel/cherryhill/Kconfig
@@ -12,7 +12,7 @@ config SYS_SOC
 config SYS_CONFIG_NAME
 	default "cherryhill"
 
-config SYS_TEXT_BASE
+config TEXT_BASE
 	default 0xffe00000
 
 config BOARD_SPECIFIC_OPTIONS # dummy
diff --git a/board/intel/cougarcanyon2/Kconfig b/board/intel/cougarcanyon2/Kconfig
index ed764485a51..32407025bc1 100644
--- a/board/intel/cougarcanyon2/Kconfig
+++ b/board/intel/cougarcanyon2/Kconfig
@@ -12,7 +12,7 @@ config SYS_SOC
 config SYS_CONFIG_NAME
 	default "cougarcanyon2"
 
-config SYS_TEXT_BASE
+config TEXT_BASE
 	default 0xffe00000
 
 config BOARD_SPECIFIC_OPTIONS # dummy
diff --git a/board/intel/crownbay/Kconfig b/board/intel/crownbay/Kconfig
index 1eed227c75f..eb2290cfafb 100644
--- a/board/intel/crownbay/Kconfig
+++ b/board/intel/crownbay/Kconfig
@@ -12,7 +12,7 @@ config SYS_SOC
 config SYS_CONFIG_NAME
 	default "crownbay"
 
-config SYS_TEXT_BASE
+config TEXT_BASE
 	default 0xfff00000
 
 config BOARD_SPECIFIC_OPTIONS # dummy
diff --git a/board/intel/edison/Kconfig b/board/intel/edison/Kconfig
index 23b2af4821d..5efda4b3a55 100644
--- a/board/intel/edison/Kconfig
+++ b/board/intel/edison/Kconfig
@@ -15,7 +15,7 @@ config SYS_CONFIG_NAME
 config SYS_MALLOC_LEN
 	default 0x08000000
 
-config SYS_TEXT_BASE
+config TEXT_BASE
 	default 0x01101000
 
 config ROM_TABLE_ADDR
diff --git a/board/intel/galileo/Kconfig b/board/intel/galileo/Kconfig
index fb8d94fb5b1..4c0451da48d 100644
--- a/board/intel/galileo/Kconfig
+++ b/board/intel/galileo/Kconfig
@@ -12,7 +12,7 @@ config SYS_SOC
 config SYS_CONFIG_NAME
 	default "galileo"
 
-config SYS_TEXT_BASE
+config TEXT_BASE
 	default 0xfff10000
 
 config BOARD_SPECIFIC_OPTIONS # dummy
diff --git a/board/intel/minnowmax/Kconfig b/board/intel/minnowmax/Kconfig
index 82a6ca904e9..a03ef867801 100644
--- a/board/intel/minnowmax/Kconfig
+++ b/board/intel/minnowmax/Kconfig
@@ -12,7 +12,7 @@ config SYS_SOC
 config SYS_CONFIG_NAME
 	default "minnowmax"
 
-config SYS_TEXT_BASE
+config TEXT_BASE
 	default 0xfff00000
 
 config BOARD_SPECIFIC_OPTIONS # dummy
diff --git a/board/intel/slimbootloader/Kconfig b/board/intel/slimbootloader/Kconfig
index 8c7e22cc339..015ed51dc89 100644
--- a/board/intel/slimbootloader/Kconfig
+++ b/board/intel/slimbootloader/Kconfig
@@ -16,7 +16,7 @@ config SYS_SOC
 config SYS_CONFIG_NAME
 	default "slimbootloader"
 
-config SYS_TEXT_BASE
+config TEXT_BASE
 	default 0x00100000
 
 config BOARD_SPECIFIC_OPTIONS
diff --git a/board/keymile/common/common.c b/board/keymile/common/common.c
index 3999f487192..c8138dcf305 100644
--- a/board/keymile/common/common.c
+++ b/board/keymile/common/common.c
@@ -116,7 +116,7 @@ void check_for_uboot_update(void)
 			}
 		}
 		printf("Check update: starting factory image @%08x ...\n",
-		       CONFIG_SYS_TEXT_BASE);
+		       CONFIG_TEXT_BASE);
 	} else if (IS_ENABLED(CONFIG_PG_WCOM_UBOOT_UPDATE)) {
 		/*
 		 * When running in field updated u-boot, make sure that
@@ -124,7 +124,7 @@ void check_for_uboot_update(void)
 		 */
 		WARN_ON(bootcount > CONFIG_BOOTCOUNT_BOOTLIMIT);
 		printf("Check update: updated u-boot starting @%08x ...\n",
-		       CONFIG_SYS_TEXT_BASE);
+		       CONFIG_TEXT_BASE);
 	}
 }
 #endif
diff --git a/board/keymile/km_arm/km_arm.c b/board/keymile/km_arm/km_arm.c
index e9af090a3bc..78f6eb3ae7a 100644
--- a/board/keymile/km_arm/km_arm.c
+++ b/board/keymile/km_arm/km_arm.c
@@ -504,7 +504,7 @@ int arch_memory_test_prepare(u32 *vstart, u32 *size, phys_addr_t *phys_offset)
 	*vstart = CONFIG_SYS_SDRAM_BASE;
 
 	/* we go up to relocation plus a 1 MB margin */
-	*size = CONFIG_SYS_TEXT_BASE - (1 << 20);
+	*size = CONFIG_TEXT_BASE - (1 << 20);
 
 	return 0;
 }
diff --git a/board/kontron/sl28/Kconfig b/board/kontron/sl28/Kconfig
index abcacc3185f..2981e5703eb 100644
--- a/board/kontron/sl28/Kconfig
+++ b/board/kontron/sl28/Kconfig
@@ -12,7 +12,7 @@ config SYS_SOC
 config SYS_CONFIG_NAME
 	default "kontron_sl28"
 
-config SYS_TEXT_BASE
+config TEXT_BASE
 	default 0x96000000
 
 config SL28_SPL_LOADS_ATF_BL31
diff --git a/board/microchip/mpfs_icicle/Kconfig b/board/microchip/mpfs_icicle/Kconfig
index 092e4112151..e37091373ff 100644
--- a/board/microchip/mpfs_icicle/Kconfig
+++ b/board/microchip/mpfs_icicle/Kconfig
@@ -12,7 +12,7 @@ config SYS_CPU
 config SYS_CONFIG_NAME
 	default "microchip_mpfs_icicle"
 
-config SYS_TEXT_BASE
+config TEXT_BASE
 	default 0x80000000 if !RISCV_SMODE
 	default 0x80200000 if RISCV_SMODE
 
diff --git a/board/microchip/pic32mzda/Kconfig b/board/microchip/pic32mzda/Kconfig
index 4f08e98b97a..0c097660296 100644
--- a/board/microchip/pic32mzda/Kconfig
+++ b/board/microchip/pic32mzda/Kconfig
@@ -10,7 +10,7 @@ config SYS_VENDOR
 config SYS_CONFIG_NAME
 	default "pic32mzdask"
 
-config SYS_TEXT_BASE
+config TEXT_BASE
 	default 0x9d004000
 
 endif
diff --git a/board/nokia/rx51/lowlevel_init.S b/board/nokia/rx51/lowlevel_init.S
index c1785bc3f72..c5fc12554e2 100644
--- a/board/nokia/rx51/lowlevel_init.S
+++ b/board/nokia/rx51/lowlevel_init.S
@@ -7,7 +7,7 @@
 #include <config.h>
 
 kernoffs:		/* offset of kernel image from this address */
-	.word KERNEL_OFFSET - (. - CONFIG_SYS_TEXT_BASE)
+	.word KERNEL_OFFSET - (. - CONFIG_TEXT_BASE)
 
 kernaddr:		/* address of kernel after copying */
 	.word KERNEL_ADDRESS
@@ -37,13 +37,13 @@ save_boot_params:
  *
  * Nokia X-Loader is loading secondary image to address 0x80400000.
  * NOLO is loading boot image to random place, so it doesn't really
- * matter what is set in CONFIG_SYS_TEXT_BASE. We have to detect
+ * matter what is set in CONFIG_TEXT_BASE. We have to detect
  * KERNEL_OFFSET from the current execution address and copy it to
  * absolute address KERNEL_ADDRESS.
  *
  * Note that U-Boot has to be compiled with CONFIG_POSITION_INDEPENDENT
  * because it is loaded at random address and not to the fixed address
- * (CONFIG_SYS_TEXT_BASE).
+ * (CONFIG_TEXT_BASE).
  */
 
 copy_kernel_start:
diff --git a/board/openpiton/riscv64/Kconfig b/board/openpiton/riscv64/Kconfig
index 193c890046e..eb0db8a64c8 100644
--- a/board/openpiton/riscv64/Kconfig
+++ b/board/openpiton/riscv64/Kconfig
@@ -12,7 +12,7 @@ config SYS_CPU
 config SYS_CONFIG_NAME
 	default "openpiton-riscv64"
 
-config SYS_TEXT_BASE
+config TEXT_BASE
 	default 0x81000000 if SPL
 	default 0x80000000 if !RISCV_SMODE
 	default 0x81000000 if RISCV_SMODE
diff --git a/board/qca/ap121/Kconfig b/board/qca/ap121/Kconfig
index 4fd6a7167a5..bf24d898a55 100644
--- a/board/qca/ap121/Kconfig
+++ b/board/qca/ap121/Kconfig
@@ -9,7 +9,7 @@ config SYS_BOARD
 config SYS_CONFIG_NAME
 	default "ap121"
 
-config SYS_TEXT_BASE
+config TEXT_BASE
 	default 0x9f000000
 
 config SYS_DCACHE_SIZE
diff --git a/board/qca/ap143/Kconfig b/board/qca/ap143/Kconfig
index 74c632a03e7..d2a0985f6f0 100644
--- a/board/qca/ap143/Kconfig
+++ b/board/qca/ap143/Kconfig
@@ -9,7 +9,7 @@ config SYS_BOARD
 config SYS_CONFIG_NAME
 	default "ap143"
 
-config SYS_TEXT_BASE
+config TEXT_BASE
 	default 0x9f000000
 
 config SYS_DCACHE_SIZE
diff --git a/board/qca/ap152/Kconfig b/board/qca/ap152/Kconfig
index f6ad498e85c..fe28b1ff526 100644
--- a/board/qca/ap152/Kconfig
+++ b/board/qca/ap152/Kconfig
@@ -9,7 +9,7 @@ config SYS_BOARD
 config SYS_CONFIG_NAME
 	default "ap152"
 
-config SYS_TEXT_BASE
+config TEXT_BASE
 	default 0x9f000000
 
 endif
diff --git a/board/qualcomm/dragonboard820c/head.S b/board/qualcomm/dragonboard820c/head.S
index 29be61a90dd..b052a858fd3 100644
--- a/board/qualcomm/dragonboard820c/head.S
+++ b/board/qualcomm/dragonboard820c/head.S
@@ -20,7 +20,7 @@
 _arm64_header:
 	b _start
 	.word 0
-	.quad   CONFIG_SYS_TEXT_BASE-PHYS_SDRAM_1 /* Image load offset, LE */
+	.quad   CONFIG_TEXT_BASE-PHYS_SDRAM_1 /* Image load offset, LE */
 	.quad   0    /* Effective size of kernel image, little-endian */
 	.quad   0    /* kernel flags, little-endian */
 	.quad   0    /* reserved */
diff --git a/board/renesas/falcon/falcon.c b/board/renesas/falcon/falcon.c
index 3e743847167..b0cb4e747b6 100644
--- a/board/renesas/falcon/falcon.c
+++ b/board/renesas/falcon/falcon.c
@@ -84,7 +84,7 @@ int board_early_init_f(void)
 int board_init(void)
 {
 	/* address of boot parameters */
-	gd->bd->bi_boot_params = CONFIG_SYS_TEXT_BASE + 0x50000;
+	gd->bd->bi_boot_params = CONFIG_TEXT_BASE + 0x50000;
 
 	init_gic_v3();
 
diff --git a/board/siemens/capricorn/uboot-container.cfg b/board/siemens/capricorn/uboot-container.cfg
index b53896f2354..b481c98f929 100644
--- a/board/siemens/capricorn/uboot-container.cfg
+++ b/board/siemens/capricorn/uboot-container.cfg
@@ -9,4 +9,4 @@ BOOT_FROM SD 0x400
 SOC_TYPE IMX8QX
 CONTAINER
 IMAGE A35 bl31.bin	0x80000000
-IMAGE A35 u-boot.bin	CONFIG_SYS_TEXT_BASE
+IMAGE A35 u-boot.bin	CONFIG_TEXT_BASE
diff --git a/board/sifive/unleashed/Kconfig b/board/sifive/unleashed/Kconfig
index b3b4342a1fb..5d842c36cfc 100644
--- a/board/sifive/unleashed/Kconfig
+++ b/board/sifive/unleashed/Kconfig
@@ -12,7 +12,7 @@ config SYS_CPU
 config SYS_CONFIG_NAME
 	default "sifive-unleashed"
 
-config SYS_TEXT_BASE
+config TEXT_BASE
 	default 0x80200000 if SPL
 	default 0x80000000 if !RISCV_SMODE
 	default 0x80200000 if RISCV_SMODE
diff --git a/board/sifive/unmatched/Kconfig b/board/sifive/unmatched/Kconfig
index fe213fd5047..bc1f33bde30 100644
--- a/board/sifive/unmatched/Kconfig
+++ b/board/sifive/unmatched/Kconfig
@@ -12,7 +12,7 @@ config SYS_CPU
 config SYS_CONFIG_NAME
 	default "sifive-unmatched"
 
-config SYS_TEXT_BASE
+config TEXT_BASE
 	default 0x80200000 if SPL
 	default 0x80000000 if !RISCV_SMODE
 	default 0x80200000 if RISCV_SMODE
diff --git a/board/silinux/ek874/ek874.c b/board/silinux/ek874/ek874.c
index 1e948489f36..6dc804a0c06 100644
--- a/board/silinux/ek874/ek874.c
+++ b/board/silinux/ek874/ek874.c
@@ -19,7 +19,7 @@ DECLARE_GLOBAL_DATA_PTR;
 int board_init(void)
 {
 	/* address of boot parameters */
-	gd->bd->bi_boot_params = CONFIG_SYS_TEXT_BASE + 0x50000;
+	gd->bd->bi_boot_params = CONFIG_TEXT_BASE + 0x50000;
 
 	return 0;
 }
diff --git a/board/sipeed/maix/Kconfig b/board/sipeed/maix/Kconfig
index b1d7a7ad936..2d212ec5a34 100644
--- a/board/sipeed/maix/Kconfig
+++ b/board/sipeed/maix/Kconfig
@@ -15,7 +15,7 @@ config SYS_CPU
 config SYS_CONFIG_NAME
 	default "sipeed-maix"
 
-config SYS_TEXT_BASE
+config TEXT_BASE
 	default 0x80000000
 
 config DEFAULT_DEVICE_TREE
diff --git a/board/socrates/socrates.c b/board/socrates/socrates.c
index f9e1bc63164..33b72614d76 100644
--- a/board/socrates/socrates.c
+++ b/board/socrates/socrates.c
@@ -223,7 +223,7 @@ void *board_fdt_blob_setup(int *err)
 	void *fw_dtb;
 
 	*err = 0;
-	fw_dtb = (void *)(CONFIG_SYS_TEXT_BASE - CONFIG_ENV_SECT_SIZE);
+	fw_dtb = (void *)(CONFIG_TEXT_BASE - CONFIG_ENV_SECT_SIZE);
 	if (fdt_magic(fw_dtb) != FDT_MAGIC) {
 		printf("DTB is not passed via %x\n", (u32)fw_dtb);
 		*err = -ENXIO;
diff --git a/board/synopsys/axs10x/headerize-axs.py b/board/synopsys/axs10x/headerize-axs.py
index fa6aaf350c2..3275218dc20 100644
--- a/board/synopsys/axs10x/headerize-axs.py
+++ b/board/synopsys/axs10x/headerize-axs.py
@@ -65,7 +65,7 @@ def main():
     arc_id              = 0x53
 
     # initial header values: place where preloader will store u-boot binary,
-    # should be equal to CONFIG_SYS_TEXT_BASE
+    # should be equal to CONFIG_TEXT_BASE
     image_copy_adr  = 0x81000000
 
     # initial constant header values, do not change these values
diff --git a/board/synopsys/hsdk/headerize-hsdk.py b/board/synopsys/hsdk/headerize-hsdk.py
index 7b047cf4a38..327c93cdbaf 100644
--- a/board/synopsys/hsdk/headerize-hsdk.py
+++ b/board/synopsys/hsdk/headerize-hsdk.py
@@ -55,7 +55,7 @@ def main():
     uboot_scrypt_file   = "u-boot-update.txt"
 
     # initial header values: place where preloader will store u-boot binary,
-    # should be equal to CONFIG_SYS_TEXT_BASE
+    # should be equal to CONFIG_TEXT_BASE
     image_copy_adr  = 0x81000000
 
     # initial constant header values, do not change these values
diff --git a/board/ti/ks2_evm/board.c b/board/ti/ks2_evm/board.c
index 5ba3aa35a9f..51e8de4b891 100644
--- a/board/ti/ks2_evm/board.c
+++ b/board/ti/ks2_evm/board.c
@@ -66,7 +66,7 @@ int dram_init(void)
 
 struct legacy_img_hdr *spl_get_load_buffer(ssize_t offset, size_t size)
 {
-	return (struct legacy_img_hdr *)(CONFIG_SYS_TEXT_BASE);
+	return (struct legacy_img_hdr *)(CONFIG_TEXT_BASE);
 }
 
 int board_init(void)
diff --git a/board/tplink/wdr4300/Kconfig b/board/tplink/wdr4300/Kconfig
index 67a0228773b..bf0bd467a5f 100644
--- a/board/tplink/wdr4300/Kconfig
+++ b/board/tplink/wdr4300/Kconfig
@@ -12,7 +12,7 @@ config SYS_BOARD
 config SYS_CONFIG_NAME
 	default "tplink_wdr4300"
 
-config SYS_TEXT_BASE
+config TEXT_BASE
 	default 0xa1000000
 
 config SYS_DCACHE_SIZE
diff --git a/board/tq/tqma6/Kconfig b/board/tq/tqma6/Kconfig
index cb1b8749cea..1cd90718f4a 100644
--- a/board/tq/tqma6/Kconfig
+++ b/board/tq/tqma6/Kconfig
@@ -84,7 +84,7 @@ config WRU4
 
 endchoice
 
-config SYS_TEXT_BASE
+config TEXT_BASE
 	default 0x2fc00000 if TQMA6S
 	default 0x4fc00000 if TQMA6Q || TQMA6DL
 
diff --git a/boot/Kconfig b/boot/Kconfig
index 6b3b8f072cb..e393dca10e2 100644
--- a/boot/Kconfig
+++ b/boot/Kconfig
@@ -487,14 +487,14 @@ config OF_STDOUT_VIA_ALIAS
 	  incorrect when used with device tree as this option does not
 	  exist / should not be used.
 
-config HAVE_SYS_TEXT_BASE
+config HAVE_TEXT_BASE
 	bool
 	depends on !NIOS2 && !XTENSA
 	depends on !EFI_APP
 	default y
 
-config SYS_TEXT_BASE
-	depends on HAVE_SYS_TEXT_BASE
+config TEXT_BASE
+	depends on HAVE_TEXT_BASE
 	default 0x0 if POSITION_INDEPENDENT
 	default 0x80800000 if ARCH_OMAP2PLUS || ARCH_K3
 	default 0x81700000 if MACH_SUNIV
@@ -515,10 +515,10 @@ config HAVE_SYS_MONITOR_BASE
 config SYS_MONITOR_BASE
 	depends on HAVE_SYS_MONITOR_BASE
 	hex "Physical start address of boot monitor code"
-	default SYS_TEXT_BASE
+	default TEXT_BASE
 	help
 	  The physical start address of boot monitor code (which is the same as
-	  CONFIG_SYS_TEXT_BASE when linking) and the same as CONFIG_SYS_FLASH_BASE
+	  CONFIG_TEXT_BASE when linking) and the same as CONFIG_SYS_FLASH_BASE
 	  when booting from flash.
 
 config SPL_SYS_MONITOR_BASE
diff --git a/cmd/sf.c b/cmd/sf.c
index bd102f5af9d..5fe16a40043 100644
--- a/cmd/sf.c
+++ b/cmd/sf.c
@@ -554,7 +554,7 @@ static int do_spi_flash_test(int argc, char *const argv[])
 		return 1;
 	}
 
-	from = map_sysmem(CONFIG_SYS_TEXT_BASE, 0);
+	from = map_sysmem(CONFIG_TEXT_BASE, 0);
 	memcpy(buf, from, len);
 	ret = spi_flash_test(flash, buf, len, offset, vbuf);
 	free(vbuf);
diff --git a/common/autoboot.c b/common/autoboot.c
index 63f2587941d..81d44417244 100644
--- a/common/autoboot.c
+++ b/common/autoboot.c
@@ -421,19 +421,19 @@ static int abortboot(int bootdelay)
 
 static void process_fdt_options(const void *blob)
 {
-#ifdef CONFIG_SYS_TEXT_BASE
+#ifdef CONFIG_TEXT_BASE
 	ulong addr;
 
 	/* Add an env variable to point to a kernel payload, if available */
 	addr = ofnode_conf_read_int("kernel-offset", 0);
 	if (addr)
-		env_set_addr("kernaddr", (void *)(CONFIG_SYS_TEXT_BASE + addr));
+		env_set_addr("kernaddr", (void *)(CONFIG_TEXT_BASE + addr));
 
 	/* Add an env variable to point to a root disk, if available */
 	addr = ofnode_conf_read_int("rootdisk-offset", 0);
 	if (addr)
-		env_set_addr("rootaddr", (void *)(CONFIG_SYS_TEXT_BASE + addr));
-#endif /* CONFIG_SYS_TEXT_BASE */
+		env_set_addr("rootaddr", (void *)(CONFIG_TEXT_BASE + addr));
+#endif /* CONFIG_TEXT_BASE */
 }
 
 const char *bootdelay_process(void)
diff --git a/common/board_f.c b/common/board_f.c
index deb46be1822..b85d22f3bbc 100644
--- a/common/board_f.c
+++ b/common/board_f.c
@@ -146,8 +146,8 @@ static int display_text_info(void)
 	bss_start = (ulong)&__bss_start;
 	bss_end = (ulong)&__bss_end;
 
-#ifdef CONFIG_SYS_TEXT_BASE
-	text_base = CONFIG_SYS_TEXT_BASE;
+#ifdef CONFIG_TEXT_BASE
+	text_base = CONFIG_TEXT_BASE;
 #else
 	text_base = CONFIG_SYS_MONITOR_BASE;
 #endif
@@ -679,7 +679,7 @@ static int reloc_bloblist(void)
 static int setup_reloc(void)
 {
 	if (!(gd->flags & GD_FLG_SKIP_RELOC)) {
-#ifdef CONFIG_SYS_TEXT_BASE
+#ifdef CONFIG_TEXT_BASE
 #ifdef ARM
 		gd->reloc_off = gd->relocaddr - (unsigned long)__image_copy_start;
 #elif defined(CONFIG_MICROBLAZE)
@@ -689,9 +689,9 @@ static int setup_reloc(void)
 		 * On all ColdFire arch cpu, monitor code starts always
 		 * just after the default vector table location, so at 0x400
 		 */
-		gd->reloc_off = gd->relocaddr - (CONFIG_SYS_TEXT_BASE + 0x400);
+		gd->reloc_off = gd->relocaddr - (CONFIG_TEXT_BASE + 0x400);
 #elif !defined(CONFIG_SANDBOX)
-		gd->reloc_off = gd->relocaddr - CONFIG_SYS_TEXT_BASE;
+		gd->reloc_off = gd->relocaddr - CONFIG_TEXT_BASE;
 #endif
 #endif
 	}
diff --git a/common/board_r.c b/common/board_r.c
index 42e2695341d..a703158586b 100644
--- a/common/board_r.c
+++ b/common/board_r.c
@@ -369,7 +369,7 @@ static int initr_flash(void)
 
 #if defined(CONFIG_OXC) || defined(CONFIG_RMU)
 	/* flash mapped at end of memory map */
-	bd->bi_flashoffset = CONFIG_SYS_TEXT_BASE + flash_size;
+	bd->bi_flashoffset = CONFIG_TEXT_BASE + flash_size;
 #elif CONFIG_SYS_MONITOR_BASE == CONFIG_SYS_FLASH_BASE
 	bd->bi_flashoffset = monitor_flash_len;	/* reserved area for monitor */
 #endif
diff --git a/common/spl/spl.c b/common/spl/spl.c
index d97d5eccb9d..e550d1cb174 100644
--- a/common/spl/spl.c
+++ b/common/spl/spl.c
@@ -44,7 +44,7 @@ DECLARE_GLOBAL_DATA_PTR;
 DECLARE_BINMAN_MAGIC_SYM;
 
 #ifndef CONFIG_SYS_UBOOT_START
-#define CONFIG_SYS_UBOOT_START	CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_UBOOT_START	CONFIG_TEXT_BASE
 #endif
 #ifndef CONFIG_SYS_MONITOR_LEN
 /* Unknown U-Boot size, let's assume it will not be more than 200 KB */
@@ -187,7 +187,7 @@ ulong spl_get_image_text_base(void)
 		return CONFIG_VPL_TEXT_BASE;
 #endif
 	return spl_next_phase() == PHASE_SPL ? CONFIG_SPL_TEXT_BASE :
-		CONFIG_SYS_TEXT_BASE;
+		CONFIG_TEXT_BASE;
 }
 
 /*
@@ -224,7 +224,7 @@ __weak void spl_board_prepare_for_boot(void)
 
 __weak struct legacy_img_hdr *spl_get_load_buffer(ssize_t offset, size_t size)
 {
-	return map_sysmem(CONFIG_SYS_TEXT_BASE + offset, 0);
+	return map_sysmem(CONFIG_TEXT_BASE + offset, 0);
 }
 
 void spl_set_header_raw_uboot(struct spl_image_info *spl_image)
@@ -244,7 +244,7 @@ void spl_set_header_raw_uboot(struct spl_image_info *spl_image)
 		spl_image->load_addr = u_boot_pos;
 	} else {
 		spl_image->entry_point = CONFIG_SYS_UBOOT_START;
-		spl_image->load_addr = CONFIG_SYS_TEXT_BASE;
+		spl_image->load_addr = CONFIG_TEXT_BASE;
 	}
 	spl_image->os = IH_OS_U_BOOT;
 	spl_image->name = "U-Boot";
diff --git a/common/spl/spl_atf.c b/common/spl/spl_atf.c
index e1b68dd5616..46ca3577956 100644
--- a/common/spl/spl_atf.c
+++ b/common/spl/spl_atf.c
@@ -254,7 +254,7 @@ uintptr_t spl_fit_images_get_entry(void *blob, int node)
 void spl_invoke_atf(struct spl_image_info *spl_image)
 {
 	uintptr_t  bl32_entry = 0;
-	uintptr_t  bl33_entry = CONFIG_SYS_TEXT_BASE;
+	uintptr_t  bl33_entry = CONFIG_TEXT_BASE;
 	void *blob = spl_image->fdt_addr;
 	uintptr_t platform_param = (uintptr_t)blob;
 	int node;
diff --git a/common/spl/spl_nand.c b/common/spl/spl_nand.c
index a16738818c1..36b5f8af812 100644
--- a/common/spl/spl_nand.c
+++ b/common/spl/spl_nand.c
@@ -157,11 +157,11 @@ static int spl_nand_load_image(struct spl_image_info *spl_image,
 		 */
 		nand_spl_load_image(CONFIG_CMD_SPL_NAND_OFS,
 			CONFIG_CMD_SPL_WRITE_SIZE,
-			(void *)CONFIG_SYS_TEXT_BASE);
+			(void *)CONFIG_TEXT_BASE);
 		/* copy to destintion */
 		for (dst = (int *)CONFIG_SYS_SPL_ARGS_ADDR,
-				src = (int *)CONFIG_SYS_TEXT_BASE;
-				src < (int *)(CONFIG_SYS_TEXT_BASE +
+				src = (int *)CONFIG_TEXT_BASE;
+				src < (int *)(CONFIG_TEXT_BASE +
 				CONFIG_CMD_SPL_WRITE_SIZE);
 				src++, dst++) {
 			writel(readl(src), dst);
diff --git a/common/spl/spl_optee.S b/common/spl/spl_optee.S
index 8bd1949ddf3..a269904d386 100644
--- a/common/spl/spl_optee.S
+++ b/common/spl/spl_optee.S
@@ -7,6 +7,6 @@
 #include <asm/assembler.h>
 
 ENTRY(spl_optee_entry)
-	ldr lr, =CONFIG_SYS_TEXT_BASE
+	ldr lr, =CONFIG_TEXT_BASE
 	mov pc, r3
 ENDPROC(spl_optee_entry)
diff --git a/configs/M5208EVBE_defconfig b/configs/M5208EVBE_defconfig
index 9513b02d874..255a4f12c17 100644
--- a/configs/M5208EVBE_defconfig
+++ b/configs/M5208EVBE_defconfig
@@ -1,5 +1,5 @@
 CONFIG_M68K=y
-CONFIG_SYS_TEXT_BASE=0x0
+CONFIG_TEXT_BASE=0x0
 CONFIG_SYS_MALLOC_LEN=0x20000
 CONFIG_ENV_SIZE=0x1000
 CONFIG_ENV_SECT_SIZE=0x2000
diff --git a/configs/M5235EVB_Flash32_defconfig b/configs/M5235EVB_Flash32_defconfig
index 6a2b700fc78..b5842c7d55a 100644
--- a/configs/M5235EVB_Flash32_defconfig
+++ b/configs/M5235EVB_Flash32_defconfig
@@ -1,5 +1,5 @@
 CONFIG_M68K=y
-CONFIG_SYS_TEXT_BASE=0xFFC00000
+CONFIG_TEXT_BASE=0xFFC00000
 CONFIG_SYS_MALLOC_LEN=0x20000
 CONFIG_ENV_SIZE=0x2000
 CONFIG_ENV_SECT_SIZE=0x2000
diff --git a/configs/M5235EVB_defconfig b/configs/M5235EVB_defconfig
index 09f3602611b..3e9cacc4403 100644
--- a/configs/M5235EVB_defconfig
+++ b/configs/M5235EVB_defconfig
@@ -1,5 +1,5 @@
 CONFIG_M68K=y
-CONFIG_SYS_TEXT_BASE=0xFFE00000
+CONFIG_TEXT_BASE=0xFFE00000
 CONFIG_SYS_MALLOC_LEN=0x20000
 CONFIG_ENV_SIZE=0x2000
 CONFIG_ENV_SECT_SIZE=0x2000
diff --git a/configs/M5249EVB_defconfig b/configs/M5249EVB_defconfig
index e4fb7ab96a8..5c6bd24de36 100644
--- a/configs/M5249EVB_defconfig
+++ b/configs/M5249EVB_defconfig
@@ -1,5 +1,5 @@
 CONFIG_M68K=y
-CONFIG_SYS_TEXT_BASE=0xFFE00000
+CONFIG_TEXT_BASE=0xFFE00000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_ENV_SIZE=0x2000
 CONFIG_ENV_SECT_SIZE=0x2000
diff --git a/configs/M5253DEMO_defconfig b/configs/M5253DEMO_defconfig
index a73aca082c3..2510774cba3 100644
--- a/configs/M5253DEMO_defconfig
+++ b/configs/M5253DEMO_defconfig
@@ -1,5 +1,5 @@
 CONFIG_M68K=y
-CONFIG_SYS_TEXT_BASE=0xFF800000
+CONFIG_TEXT_BASE=0xFF800000
 CONFIG_SYS_MALLOC_LEN=0x40000
 CONFIG_ENV_SIZE=0x1000
 CONFIG_ENV_SECT_SIZE=0x1000
diff --git a/configs/M5272C3_defconfig b/configs/M5272C3_defconfig
index 3be9296cd24..fda10e77f67 100644
--- a/configs/M5272C3_defconfig
+++ b/configs/M5272C3_defconfig
@@ -1,5 +1,5 @@
 CONFIG_M68K=y
-CONFIG_SYS_TEXT_BASE=0xFFE00000
+CONFIG_TEXT_BASE=0xFFE00000
 CONFIG_SYS_MALLOC_LEN=0x40000
 CONFIG_ENV_SIZE=0x2000
 CONFIG_ENV_SECT_SIZE=0x2000
diff --git a/configs/M5275EVB_defconfig b/configs/M5275EVB_defconfig
index 977d38ab64d..49caafc6f17 100644
--- a/configs/M5275EVB_defconfig
+++ b/configs/M5275EVB_defconfig
@@ -1,5 +1,5 @@
 CONFIG_M68K=y
-CONFIG_SYS_TEXT_BASE=0xFFE00000
+CONFIG_TEXT_BASE=0xFFE00000
 CONFIG_SYS_MALLOC_LEN=0x40000
 CONFIG_ENV_SIZE=0x2000
 CONFIG_ENV_SECT_SIZE=0x2000
diff --git a/configs/M5282EVB_defconfig b/configs/M5282EVB_defconfig
index 4b393abe112..4519e5651c6 100644
--- a/configs/M5282EVB_defconfig
+++ b/configs/M5282EVB_defconfig
@@ -1,5 +1,5 @@
 CONFIG_M68K=y
-CONFIG_SYS_TEXT_BASE=0xFFE00000
+CONFIG_TEXT_BASE=0xFFE00000
 CONFIG_SYS_MALLOC_LEN=0x40000
 CONFIG_ENV_SIZE=0x2000
 CONFIG_ENV_SECT_SIZE=0x2000
diff --git a/configs/M53017EVB_defconfig b/configs/M53017EVB_defconfig
index 986a9322ea9..fa32e1454b3 100644
--- a/configs/M53017EVB_defconfig
+++ b/configs/M53017EVB_defconfig
@@ -1,5 +1,5 @@
 CONFIG_M68K=y
-CONFIG_SYS_TEXT_BASE=0x0
+CONFIG_TEXT_BASE=0x0
 CONFIG_SYS_MALLOC_LEN=0x20000
 CONFIG_ENV_SIZE=0x1000
 CONFIG_ENV_SECT_SIZE=0x8000
diff --git a/configs/M5329AFEE_defconfig b/configs/M5329AFEE_defconfig
index 0d513b75917..0c2fbaf1a08 100644
--- a/configs/M5329AFEE_defconfig
+++ b/configs/M5329AFEE_defconfig
@@ -1,5 +1,5 @@
 CONFIG_M68K=y
-CONFIG_SYS_TEXT_BASE=0x0
+CONFIG_TEXT_BASE=0x0
 CONFIG_SYS_MALLOC_LEN=0x20000
 CONFIG_ENV_SIZE=0x2000
 CONFIG_ENV_SECT_SIZE=0x2000
diff --git a/configs/M5329BFEE_defconfig b/configs/M5329BFEE_defconfig
index f3c2d9f179c..f4b9b2d2c21 100644
--- a/configs/M5329BFEE_defconfig
+++ b/configs/M5329BFEE_defconfig
@@ -1,5 +1,5 @@
 CONFIG_M68K=y
-CONFIG_SYS_TEXT_BASE=0x0
+CONFIG_TEXT_BASE=0x0
 CONFIG_SYS_MALLOC_LEN=0x20000
 CONFIG_ENV_SIZE=0x2000
 CONFIG_ENV_SECT_SIZE=0x2000
diff --git a/configs/M5373EVB_defconfig b/configs/M5373EVB_defconfig
index f462b1bb28c..922f345d6d7 100644
--- a/configs/M5373EVB_defconfig
+++ b/configs/M5373EVB_defconfig
@@ -1,5 +1,5 @@
 CONFIG_M68K=y
-CONFIG_SYS_TEXT_BASE=0x0
+CONFIG_TEXT_BASE=0x0
 CONFIG_SYS_MALLOC_LEN=0x20000
 CONFIG_ENV_SIZE=0x2000
 CONFIG_ENV_SECT_SIZE=0x2000
diff --git a/configs/MCR3000_defconfig b/configs/MCR3000_defconfig
index 802cb5afb24..d32151f43e4 100644
--- a/configs/MCR3000_defconfig
+++ b/configs/MCR3000_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0x4000000
+CONFIG_TEXT_BASE=0x4000000
 CONFIG_ENV_SIZE=0x2000
 CONFIG_ENV_SECT_SIZE=0x2000
 CONFIG_DEFAULT_DEVICE_TREE="mcr3000"
diff --git a/configs/MPC837XERDB_defconfig b/configs/MPC837XERDB_defconfig
index 9353467fa40..9ce3939eb3d 100644
--- a/configs/MPC837XERDB_defconfig
+++ b/configs/MPC837XERDB_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0xFE000000
+CONFIG_TEXT_BASE=0xFE000000
 CONFIG_SYS_MALLOC_LEN=0x80000
 CONFIG_ENV_SIZE=0x4000
 CONFIG_ENV_SECT_SIZE=0x10000
diff --git a/configs/MPC8548CDS_36BIT_defconfig b/configs/MPC8548CDS_36BIT_defconfig
index feb0be5a494..02a9eaf96bc 100644
--- a/configs/MPC8548CDS_36BIT_defconfig
+++ b/configs/MPC8548CDS_36BIT_defconfig
@@ -1,6 +1,6 @@
 CONFIG_PPC=y
 CONFIG_SYS_IMMR=0xE0000000
-CONFIG_SYS_TEXT_BASE=0xFFF80000
+CONFIG_TEXT_BASE=0xFFF80000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_ENV_SIZE=0x2000
 CONFIG_ENV_SECT_SIZE=0x20000
diff --git a/configs/MPC8548CDS_defconfig b/configs/MPC8548CDS_defconfig
index 945347941b4..5f9023ca920 100644
--- a/configs/MPC8548CDS_defconfig
+++ b/configs/MPC8548CDS_defconfig
@@ -1,6 +1,6 @@
 CONFIG_PPC=y
 CONFIG_SYS_IMMR=0xE0000000
-CONFIG_SYS_TEXT_BASE=0xFFF80000
+CONFIG_TEXT_BASE=0xFFF80000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_ENV_SIZE=0x2000
 CONFIG_ENV_SECT_SIZE=0x20000
diff --git a/configs/MPC8548CDS_legacy_defconfig b/configs/MPC8548CDS_legacy_defconfig
index f069451697d..dfe1a824924 100644
--- a/configs/MPC8548CDS_legacy_defconfig
+++ b/configs/MPC8548CDS_legacy_defconfig
@@ -1,6 +1,6 @@
 CONFIG_PPC=y
 CONFIG_SYS_IMMR=0xE0000000
-CONFIG_SYS_TEXT_BASE=0xFFF80000
+CONFIG_TEXT_BASE=0xFFF80000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_ENV_SIZE=0x2000
 CONFIG_ENV_SECT_SIZE=0x20000
diff --git a/configs/P1010RDB-PA_36BIT_NAND_defconfig b/configs/P1010RDB-PA_36BIT_NAND_defconfig
index 4fd3488fdc2..ff9bdd52117 100644
--- a/configs/P1010RDB-PA_36BIT_NAND_defconfig
+++ b/configs/P1010RDB-PA_36BIT_NAND_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0x11000000
+CONFIG_TEXT_BASE=0x11000000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_ENV_SIZE=0x4000
 CONFIG_ENV_OFFSET=0x100000
diff --git a/configs/P1010RDB-PA_36BIT_NOR_defconfig b/configs/P1010RDB-PA_36BIT_NOR_defconfig
index 0e7b9313489..590619495b9 100644
--- a/configs/P1010RDB-PA_36BIT_NOR_defconfig
+++ b/configs/P1010RDB-PA_36BIT_NOR_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0xEFF40000
+CONFIG_TEXT_BASE=0xEFF40000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_ENV_SIZE=0x2000
 CONFIG_ENV_SECT_SIZE=0x20000
diff --git a/configs/P1010RDB-PA_36BIT_SDCARD_defconfig b/configs/P1010RDB-PA_36BIT_SDCARD_defconfig
index f55d337f273..e674006767a 100644
--- a/configs/P1010RDB-PA_36BIT_SDCARD_defconfig
+++ b/configs/P1010RDB-PA_36BIT_SDCARD_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0x11000000
+CONFIG_TEXT_BASE=0x11000000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/P1010RDB-PA_36BIT_SPIFLASH_defconfig b/configs/P1010RDB-PA_36BIT_SPIFLASH_defconfig
index 2aa662ca500..05c23bf8ab0 100644
--- a/configs/P1010RDB-PA_36BIT_SPIFLASH_defconfig
+++ b/configs/P1010RDB-PA_36BIT_SPIFLASH_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0x11000000
+CONFIG_TEXT_BASE=0x11000000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/P1010RDB-PA_NAND_defconfig b/configs/P1010RDB-PA_NAND_defconfig
index 62b90f863ab..a7b1fc2092a 100644
--- a/configs/P1010RDB-PA_NAND_defconfig
+++ b/configs/P1010RDB-PA_NAND_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0x11000000
+CONFIG_TEXT_BASE=0x11000000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_ENV_SIZE=0x4000
 CONFIG_ENV_OFFSET=0x100000
diff --git a/configs/P1010RDB-PA_NOR_defconfig b/configs/P1010RDB-PA_NOR_defconfig
index ee0e1d8441b..8e787fe7e2e 100644
--- a/configs/P1010RDB-PA_NOR_defconfig
+++ b/configs/P1010RDB-PA_NOR_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0xEFF40000
+CONFIG_TEXT_BASE=0xEFF40000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_ENV_SIZE=0x2000
 CONFIG_ENV_SECT_SIZE=0x20000
diff --git a/configs/P1010RDB-PA_SDCARD_defconfig b/configs/P1010RDB-PA_SDCARD_defconfig
index 1906754ffa2..1e6ec4ef3c2 100644
--- a/configs/P1010RDB-PA_SDCARD_defconfig
+++ b/configs/P1010RDB-PA_SDCARD_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0x11000000
+CONFIG_TEXT_BASE=0x11000000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/P1010RDB-PA_SPIFLASH_defconfig b/configs/P1010RDB-PA_SPIFLASH_defconfig
index 84676ca8c58..87a7da7aaaf 100644
--- a/configs/P1010RDB-PA_SPIFLASH_defconfig
+++ b/configs/P1010RDB-PA_SPIFLASH_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0x11000000
+CONFIG_TEXT_BASE=0x11000000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/P1010RDB-PB_36BIT_NAND_defconfig b/configs/P1010RDB-PB_36BIT_NAND_defconfig
index edc2f9e2418..85e3bb03a4d 100644
--- a/configs/P1010RDB-PB_36BIT_NAND_defconfig
+++ b/configs/P1010RDB-PB_36BIT_NAND_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0x11000000
+CONFIG_TEXT_BASE=0x11000000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_ENV_SIZE=0x4000
 CONFIG_ENV_OFFSET=0x100000
diff --git a/configs/P1010RDB-PB_36BIT_NOR_defconfig b/configs/P1010RDB-PB_36BIT_NOR_defconfig
index 02c94765e8d..2fbae6afeee 100644
--- a/configs/P1010RDB-PB_36BIT_NOR_defconfig
+++ b/configs/P1010RDB-PB_36BIT_NOR_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0xEFF40000
+CONFIG_TEXT_BASE=0xEFF40000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_ENV_SIZE=0x2000
 CONFIG_ENV_SECT_SIZE=0x20000
diff --git a/configs/P1010RDB-PB_36BIT_SDCARD_defconfig b/configs/P1010RDB-PB_36BIT_SDCARD_defconfig
index 7d740819201..4a1bf64e8f6 100644
--- a/configs/P1010RDB-PB_36BIT_SDCARD_defconfig
+++ b/configs/P1010RDB-PB_36BIT_SDCARD_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0x11000000
+CONFIG_TEXT_BASE=0x11000000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/P1010RDB-PB_36BIT_SPIFLASH_defconfig b/configs/P1010RDB-PB_36BIT_SPIFLASH_defconfig
index f83ae52184a..eec8294c960 100644
--- a/configs/P1010RDB-PB_36BIT_SPIFLASH_defconfig
+++ b/configs/P1010RDB-PB_36BIT_SPIFLASH_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0x11000000
+CONFIG_TEXT_BASE=0x11000000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/P1010RDB-PB_NAND_defconfig b/configs/P1010RDB-PB_NAND_defconfig
index 75543769ada..cc8e8181c95 100644
--- a/configs/P1010RDB-PB_NAND_defconfig
+++ b/configs/P1010RDB-PB_NAND_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0x11000000
+CONFIG_TEXT_BASE=0x11000000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_ENV_SIZE=0x4000
 CONFIG_ENV_OFFSET=0x100000
diff --git a/configs/P1010RDB-PB_NOR_defconfig b/configs/P1010RDB-PB_NOR_defconfig
index b6b7dd5b5b2..69d030ecdf6 100644
--- a/configs/P1010RDB-PB_NOR_defconfig
+++ b/configs/P1010RDB-PB_NOR_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0xEFF40000
+CONFIG_TEXT_BASE=0xEFF40000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_ENV_SIZE=0x2000
 CONFIG_ENV_SECT_SIZE=0x20000
diff --git a/configs/P1010RDB-PB_SDCARD_defconfig b/configs/P1010RDB-PB_SDCARD_defconfig
index df4414e9806..3eed05d5621 100644
--- a/configs/P1010RDB-PB_SDCARD_defconfig
+++ b/configs/P1010RDB-PB_SDCARD_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0x11000000
+CONFIG_TEXT_BASE=0x11000000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/P1010RDB-PB_SPIFLASH_defconfig b/configs/P1010RDB-PB_SPIFLASH_defconfig
index 72035b553ba..00b45482026 100644
--- a/configs/P1010RDB-PB_SPIFLASH_defconfig
+++ b/configs/P1010RDB-PB_SPIFLASH_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0x11000000
+CONFIG_TEXT_BASE=0x11000000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/P1020RDB-PC_36BIT_NAND_defconfig b/configs/P1020RDB-PC_36BIT_NAND_defconfig
index ffae8163e2c..001b707d45e 100644
--- a/configs/P1020RDB-PC_36BIT_NAND_defconfig
+++ b/configs/P1020RDB-PC_36BIT_NAND_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0x11000000
+CONFIG_TEXT_BASE=0x11000000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_ENV_SIZE=0x4000
 CONFIG_ENV_OFFSET=0x100000
diff --git a/configs/P1020RDB-PC_36BIT_SDCARD_defconfig b/configs/P1020RDB-PC_36BIT_SDCARD_defconfig
index 4f27d27f04d..fc9305c86af 100644
--- a/configs/P1020RDB-PC_36BIT_SDCARD_defconfig
+++ b/configs/P1020RDB-PC_36BIT_SDCARD_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0x11000000
+CONFIG_TEXT_BASE=0x11000000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/P1020RDB-PC_36BIT_SPIFLASH_defconfig b/configs/P1020RDB-PC_36BIT_SPIFLASH_defconfig
index 3795b4c947d..cdabbc89027 100644
--- a/configs/P1020RDB-PC_36BIT_SPIFLASH_defconfig
+++ b/configs/P1020RDB-PC_36BIT_SPIFLASH_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0x11000000
+CONFIG_TEXT_BASE=0x11000000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/P1020RDB-PC_36BIT_defconfig b/configs/P1020RDB-PC_36BIT_defconfig
index 9a0be6aa23c..52799ca8274 100644
--- a/configs/P1020RDB-PC_36BIT_defconfig
+++ b/configs/P1020RDB-PC_36BIT_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0xEFF40000
+CONFIG_TEXT_BASE=0xEFF40000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_ENV_SIZE=0x2000
 CONFIG_ENV_SECT_SIZE=0x20000
diff --git a/configs/P1020RDB-PC_NAND_defconfig b/configs/P1020RDB-PC_NAND_defconfig
index 4aae792b15b..5b12b4ad9d6 100644
--- a/configs/P1020RDB-PC_NAND_defconfig
+++ b/configs/P1020RDB-PC_NAND_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0x11000000
+CONFIG_TEXT_BASE=0x11000000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_ENV_SIZE=0x4000
 CONFIG_ENV_OFFSET=0x100000
diff --git a/configs/P1020RDB-PC_SDCARD_defconfig b/configs/P1020RDB-PC_SDCARD_defconfig
index 70d9166f6c2..bf1be789594 100644
--- a/configs/P1020RDB-PC_SDCARD_defconfig
+++ b/configs/P1020RDB-PC_SDCARD_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0x11000000
+CONFIG_TEXT_BASE=0x11000000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/P1020RDB-PC_SPIFLASH_defconfig b/configs/P1020RDB-PC_SPIFLASH_defconfig
index 713a16b26cb..378c11e1f0d 100644
--- a/configs/P1020RDB-PC_SPIFLASH_defconfig
+++ b/configs/P1020RDB-PC_SPIFLASH_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0x11000000
+CONFIG_TEXT_BASE=0x11000000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/P1020RDB-PC_defconfig b/configs/P1020RDB-PC_defconfig
index 039767b7a13..2e21fee7a4d 100644
--- a/configs/P1020RDB-PC_defconfig
+++ b/configs/P1020RDB-PC_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0xEFF40000
+CONFIG_TEXT_BASE=0xEFF40000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_ENV_SIZE=0x2000
 CONFIG_ENV_SECT_SIZE=0x20000
diff --git a/configs/P1020RDB-PD_NAND_defconfig b/configs/P1020RDB-PD_NAND_defconfig
index 3bd41330f3b..43cd400307e 100644
--- a/configs/P1020RDB-PD_NAND_defconfig
+++ b/configs/P1020RDB-PD_NAND_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0x11000000
+CONFIG_TEXT_BASE=0x11000000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_ENV_SIZE=0x20000
 CONFIG_ENV_OFFSET=0x100000
diff --git a/configs/P1020RDB-PD_SDCARD_defconfig b/configs/P1020RDB-PD_SDCARD_defconfig
index 4c8fd9d57d9..67bf5dd186b 100644
--- a/configs/P1020RDB-PD_SDCARD_defconfig
+++ b/configs/P1020RDB-PD_SDCARD_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0x11000000
+CONFIG_TEXT_BASE=0x11000000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/P1020RDB-PD_SPIFLASH_defconfig b/configs/P1020RDB-PD_SPIFLASH_defconfig
index 43261098310..0aa38ec24d3 100644
--- a/configs/P1020RDB-PD_SPIFLASH_defconfig
+++ b/configs/P1020RDB-PD_SPIFLASH_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0x11000000
+CONFIG_TEXT_BASE=0x11000000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/P1020RDB-PD_defconfig b/configs/P1020RDB-PD_defconfig
index 65032b86590..8d7c924dab8 100644
--- a/configs/P1020RDB-PD_defconfig
+++ b/configs/P1020RDB-PD_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0xEFF40000
+CONFIG_TEXT_BASE=0xEFF40000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_ENV_SIZE=0x2000
 CONFIG_ENV_SECT_SIZE=0x20000
diff --git a/configs/P2020RDB-PC_36BIT_NAND_defconfig b/configs/P2020RDB-PC_36BIT_NAND_defconfig
index 43d24112ef5..cc59a994ca1 100644
--- a/configs/P2020RDB-PC_36BIT_NAND_defconfig
+++ b/configs/P2020RDB-PC_36BIT_NAND_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0x11000000
+CONFIG_TEXT_BASE=0x11000000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_ENV_SIZE=0x4000
 CONFIG_ENV_OFFSET=0x100000
diff --git a/configs/P2020RDB-PC_36BIT_SDCARD_defconfig b/configs/P2020RDB-PC_36BIT_SDCARD_defconfig
index 22c97ac1117..ea6f55b6507 100644
--- a/configs/P2020RDB-PC_36BIT_SDCARD_defconfig
+++ b/configs/P2020RDB-PC_36BIT_SDCARD_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0x11000000
+CONFIG_TEXT_BASE=0x11000000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/P2020RDB-PC_36BIT_SPIFLASH_defconfig b/configs/P2020RDB-PC_36BIT_SPIFLASH_defconfig
index bf161934776..bfd6f9b0941 100644
--- a/configs/P2020RDB-PC_36BIT_SPIFLASH_defconfig
+++ b/configs/P2020RDB-PC_36BIT_SPIFLASH_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0x11000000
+CONFIG_TEXT_BASE=0x11000000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/P2020RDB-PC_36BIT_defconfig b/configs/P2020RDB-PC_36BIT_defconfig
index ac9ee070c7e..f97d2b4aac0 100644
--- a/configs/P2020RDB-PC_36BIT_defconfig
+++ b/configs/P2020RDB-PC_36BIT_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0xEFF40000
+CONFIG_TEXT_BASE=0xEFF40000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_ENV_SIZE=0x2000
 CONFIG_ENV_SECT_SIZE=0x20000
diff --git a/configs/P2020RDB-PC_NAND_defconfig b/configs/P2020RDB-PC_NAND_defconfig
index c6507a7a4be..e86ad75b053 100644
--- a/configs/P2020RDB-PC_NAND_defconfig
+++ b/configs/P2020RDB-PC_NAND_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0x11000000
+CONFIG_TEXT_BASE=0x11000000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_ENV_SIZE=0x4000
 CONFIG_ENV_OFFSET=0x100000
diff --git a/configs/P2020RDB-PC_SDCARD_defconfig b/configs/P2020RDB-PC_SDCARD_defconfig
index a9c07579d92..dc63117d50f 100644
--- a/configs/P2020RDB-PC_SDCARD_defconfig
+++ b/configs/P2020RDB-PC_SDCARD_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0x11000000
+CONFIG_TEXT_BASE=0x11000000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/P2020RDB-PC_SPIFLASH_defconfig b/configs/P2020RDB-PC_SPIFLASH_defconfig
index 4cff74da8e4..b1e220c8b83 100644
--- a/configs/P2020RDB-PC_SPIFLASH_defconfig
+++ b/configs/P2020RDB-PC_SPIFLASH_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0x11000000
+CONFIG_TEXT_BASE=0x11000000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/P2020RDB-PC_defconfig b/configs/P2020RDB-PC_defconfig
index fa12271b7be..0e28abbb2f5 100644
--- a/configs/P2020RDB-PC_defconfig
+++ b/configs/P2020RDB-PC_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0xEFF40000
+CONFIG_TEXT_BASE=0xEFF40000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_ENV_SIZE=0x2000
 CONFIG_ENV_SECT_SIZE=0x20000
diff --git a/configs/P2041RDB_NAND_defconfig b/configs/P2041RDB_NAND_defconfig
index e3483c5b520..8e0046f2f1b 100644
--- a/configs/P2041RDB_NAND_defconfig
+++ b/configs/P2041RDB_NAND_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0xFFF40000
+CONFIG_TEXT_BASE=0xFFF40000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_ENV_SIZE=0x20000
 CONFIG_ENV_OFFSET=0xE0000
diff --git a/configs/P2041RDB_SDCARD_defconfig b/configs/P2041RDB_SDCARD_defconfig
index c224cf57057..e04afe46d99 100644
--- a/configs/P2041RDB_SDCARD_defconfig
+++ b/configs/P2041RDB_SDCARD_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0xFFF40000
+CONFIG_TEXT_BASE=0xFFF40000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_ENV_SIZE=0x2000
 CONFIG_ENV_OFFSET=0xCF400
diff --git a/configs/P2041RDB_SPIFLASH_defconfig b/configs/P2041RDB_SPIFLASH_defconfig
index 08d25c31810..e69aa7a3e5d 100644
--- a/configs/P2041RDB_SPIFLASH_defconfig
+++ b/configs/P2041RDB_SPIFLASH_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0xFFF40000
+CONFIG_TEXT_BASE=0xFFF40000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_ENV_SIZE=0x2000
 CONFIG_ENV_OFFSET=0x100000
diff --git a/configs/P2041RDB_defconfig b/configs/P2041RDB_defconfig
index 535201b1bd0..a7cba188c10 100644
--- a/configs/P2041RDB_defconfig
+++ b/configs/P2041RDB_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0xEFF40000
+CONFIG_TEXT_BASE=0xEFF40000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_ENV_SIZE=0x2000
 CONFIG_ENV_SECT_SIZE=0x20000
diff --git a/configs/SBx81LIFKW_defconfig b/configs/SBx81LIFKW_defconfig
index 0b610ef0f63..f2b59770635 100644
--- a/configs/SBx81LIFKW_defconfig
+++ b/configs/SBx81LIFKW_defconfig
@@ -4,7 +4,7 @@ CONFIG_SYS_DCACHE_OFF=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_KIRKWOOD=y
 CONFIG_SYS_KWD_CONFIG="board/alliedtelesis/SBx81LIFKW/kwbimage.cfg"
-CONFIG_SYS_TEXT_BASE=0x00600000
+CONFIG_TEXT_BASE=0x00600000
 CONFIG_TARGET_SBx81LIFKW=y
 CONFIG_ENV_SIZE=0x2000
 CONFIG_ENV_OFFSET=0xC0000
diff --git a/configs/SBx81LIFXCAT_defconfig b/configs/SBx81LIFXCAT_defconfig
index 52a5b4db82c..bdbfc6a86b0 100644
--- a/configs/SBx81LIFXCAT_defconfig
+++ b/configs/SBx81LIFXCAT_defconfig
@@ -4,7 +4,7 @@ CONFIG_SYS_DCACHE_OFF=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_KIRKWOOD=y
 CONFIG_SYS_KWD_CONFIG="board/alliedtelesis/SBx81LIFXCAT/kwbimage.cfg"
-CONFIG_SYS_TEXT_BASE=0x00600000
+CONFIG_TEXT_BASE=0x00600000
 CONFIG_TARGET_SBx81LIFXCAT=y
 CONFIG_ENV_SIZE=0x2000
 CONFIG_ENV_OFFSET=0xC0000
diff --git a/configs/T1024RDB_NAND_defconfig b/configs/T1024RDB_NAND_defconfig
index eaae3178b14..b0437c038f1 100644
--- a/configs/T1024RDB_NAND_defconfig
+++ b/configs/T1024RDB_NAND_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0x30000000
+CONFIG_TEXT_BASE=0x30000000
 CONFIG_SYS_MALLOC_LEN=0xa00000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/T1024RDB_SDCARD_defconfig b/configs/T1024RDB_SDCARD_defconfig
index a52ae10eb1a..60d633167e8 100644
--- a/configs/T1024RDB_SDCARD_defconfig
+++ b/configs/T1024RDB_SDCARD_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0x30000000
+CONFIG_TEXT_BASE=0x30000000
 CONFIG_SYS_MALLOC_LEN=0xa00000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/T1024RDB_SPIFLASH_defconfig b/configs/T1024RDB_SPIFLASH_defconfig
index ff522a2e3ec..39525a321c1 100644
--- a/configs/T1024RDB_SPIFLASH_defconfig
+++ b/configs/T1024RDB_SPIFLASH_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0x30000000
+CONFIG_TEXT_BASE=0x30000000
 CONFIG_SYS_MALLOC_LEN=0xa00000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/T1024RDB_defconfig b/configs/T1024RDB_defconfig
index 2c17f78a337..4a785ee03ce 100644
--- a/configs/T1024RDB_defconfig
+++ b/configs/T1024RDB_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0xEFF40000
+CONFIG_TEXT_BASE=0xEFF40000
 CONFIG_SYS_MALLOC_LEN=0xa00000
 CONFIG_ENV_SIZE=0x2000
 CONFIG_ENV_SECT_SIZE=0x20000
diff --git a/configs/T1042D4RDB_NAND_defconfig b/configs/T1042D4RDB_NAND_defconfig
index 5814583c5ed..cc5ab7f3acc 100644
--- a/configs/T1042D4RDB_NAND_defconfig
+++ b/configs/T1042D4RDB_NAND_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0x30000000
+CONFIG_TEXT_BASE=0x30000000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/T1042D4RDB_SDCARD_defconfig b/configs/T1042D4RDB_SDCARD_defconfig
index f78797c2e5f..2dd00a41b86 100644
--- a/configs/T1042D4RDB_SDCARD_defconfig
+++ b/configs/T1042D4RDB_SDCARD_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0x30000000
+CONFIG_TEXT_BASE=0x30000000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/T1042D4RDB_SPIFLASH_defconfig b/configs/T1042D4RDB_SPIFLASH_defconfig
index 1e53e5ef721..3a144822a8d 100644
--- a/configs/T1042D4RDB_SPIFLASH_defconfig
+++ b/configs/T1042D4RDB_SPIFLASH_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0x30000000
+CONFIG_TEXT_BASE=0x30000000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/T1042D4RDB_defconfig b/configs/T1042D4RDB_defconfig
index e0544092b4a..b365dafff65 100644
--- a/configs/T1042D4RDB_defconfig
+++ b/configs/T1042D4RDB_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0xEFF40000
+CONFIG_TEXT_BASE=0xEFF40000
 CONFIG_ENV_SIZE=0x2000
 CONFIG_ENV_SECT_SIZE=0x20000
 CONFIG_DEFAULT_DEVICE_TREE="t1042d4rdb"
diff --git a/configs/T2080QDS_NAND_defconfig b/configs/T2080QDS_NAND_defconfig
index 7dd7cb8fb19..c3536744d4d 100644
--- a/configs/T2080QDS_NAND_defconfig
+++ b/configs/T2080QDS_NAND_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0x00200000
+CONFIG_TEXT_BASE=0x00200000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/T2080QDS_SDCARD_defconfig b/configs/T2080QDS_SDCARD_defconfig
index 9fec1eb88cd..405d6db2787 100644
--- a/configs/T2080QDS_SDCARD_defconfig
+++ b/configs/T2080QDS_SDCARD_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0x00200000
+CONFIG_TEXT_BASE=0x00200000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/T2080QDS_SECURE_BOOT_defconfig b/configs/T2080QDS_SECURE_BOOT_defconfig
index 878a37dacae..a719f41a51c 100644
--- a/configs/T2080QDS_SECURE_BOOT_defconfig
+++ b/configs/T2080QDS_SECURE_BOOT_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0xEFF40000
+CONFIG_TEXT_BASE=0xEFF40000
 CONFIG_ENV_SIZE=0x2000
 CONFIG_DEFAULT_DEVICE_TREE="t2080qds"
 CONFIG_MPC85xx=y
diff --git a/configs/T2080QDS_SPIFLASH_defconfig b/configs/T2080QDS_SPIFLASH_defconfig
index 1353f3311b9..877efe77bfc 100644
--- a/configs/T2080QDS_SPIFLASH_defconfig
+++ b/configs/T2080QDS_SPIFLASH_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0x00200000
+CONFIG_TEXT_BASE=0x00200000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/T2080QDS_SRIO_PCIE_BOOT_defconfig b/configs/T2080QDS_SRIO_PCIE_BOOT_defconfig
index 6b166c50d54..8a6a6dc8de8 100644
--- a/configs/T2080QDS_SRIO_PCIE_BOOT_defconfig
+++ b/configs/T2080QDS_SRIO_PCIE_BOOT_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0xFFF40000
+CONFIG_TEXT_BASE=0xFFF40000
 CONFIG_ENV_SIZE=0x2000
 CONFIG_DEFAULT_DEVICE_TREE="t2080qds"
 CONFIG_ENV_ADDR=0xFFE20000
diff --git a/configs/T2080QDS_defconfig b/configs/T2080QDS_defconfig
index 7c797c8aaa0..1eaf3015a0d 100644
--- a/configs/T2080QDS_defconfig
+++ b/configs/T2080QDS_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0xEFF40000
+CONFIG_TEXT_BASE=0xEFF40000
 CONFIG_ENV_SIZE=0x2000
 CONFIG_ENV_SECT_SIZE=0x20000
 CONFIG_DEFAULT_DEVICE_TREE="t2080qds"
diff --git a/configs/T2080RDB_NAND_defconfig b/configs/T2080RDB_NAND_defconfig
index 8040be8f6c0..81521db9599 100644
--- a/configs/T2080RDB_NAND_defconfig
+++ b/configs/T2080RDB_NAND_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0x00200000
+CONFIG_TEXT_BASE=0x00200000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/T2080RDB_SDCARD_defconfig b/configs/T2080RDB_SDCARD_defconfig
index c51994d3a64..6cec9e600a8 100644
--- a/configs/T2080RDB_SDCARD_defconfig
+++ b/configs/T2080RDB_SDCARD_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0x00200000
+CONFIG_TEXT_BASE=0x00200000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/T2080RDB_SPIFLASH_defconfig b/configs/T2080RDB_SPIFLASH_defconfig
index 47748d33ff5..10745d2f71a 100644
--- a/configs/T2080RDB_SPIFLASH_defconfig
+++ b/configs/T2080RDB_SPIFLASH_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0x00200000
+CONFIG_TEXT_BASE=0x00200000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/T2080RDB_defconfig b/configs/T2080RDB_defconfig
index bb8334f7023..353fbad2eb5 100644
--- a/configs/T2080RDB_defconfig
+++ b/configs/T2080RDB_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0xEFF40000
+CONFIG_TEXT_BASE=0xEFF40000
 CONFIG_ENV_SIZE=0x2000
 CONFIG_ENV_SECT_SIZE=0x20000
 CONFIG_DEFAULT_DEVICE_TREE="t2080rdb"
diff --git a/configs/T2080RDB_revD_NAND_defconfig b/configs/T2080RDB_revD_NAND_defconfig
index 1fde65f78d5..3316f1fb343 100644
--- a/configs/T2080RDB_revD_NAND_defconfig
+++ b/configs/T2080RDB_revD_NAND_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0x00200000
+CONFIG_TEXT_BASE=0x00200000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/T2080RDB_revD_SDCARD_defconfig b/configs/T2080RDB_revD_SDCARD_defconfig
index 93a3649735c..79e34187f14 100644
--- a/configs/T2080RDB_revD_SDCARD_defconfig
+++ b/configs/T2080RDB_revD_SDCARD_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0x00200000
+CONFIG_TEXT_BASE=0x00200000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/T2080RDB_revD_SPIFLASH_defconfig b/configs/T2080RDB_revD_SPIFLASH_defconfig
index 64ae8ea7b45..811d0b2f945 100644
--- a/configs/T2080RDB_revD_SPIFLASH_defconfig
+++ b/configs/T2080RDB_revD_SPIFLASH_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0x00200000
+CONFIG_TEXT_BASE=0x00200000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/T2080RDB_revD_defconfig b/configs/T2080RDB_revD_defconfig
index fa852e4515f..861f2c8234d 100644
--- a/configs/T2080RDB_revD_defconfig
+++ b/configs/T2080RDB_revD_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0xEFF40000
+CONFIG_TEXT_BASE=0xEFF40000
 CONFIG_ENV_SIZE=0x2000
 CONFIG_ENV_SECT_SIZE=0x20000
 CONFIG_DEFAULT_DEVICE_TREE="t2080rdb"
diff --git a/configs/T4240RDB_SDCARD_defconfig b/configs/T4240RDB_SDCARD_defconfig
index 34733e4c79d..21ca91d44b1 100644
--- a/configs/T4240RDB_SDCARD_defconfig
+++ b/configs/T4240RDB_SDCARD_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0x00200000
+CONFIG_TEXT_BASE=0x00200000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/T4240RDB_defconfig b/configs/T4240RDB_defconfig
index 966e4a81db9..8dbe63214ec 100644
--- a/configs/T4240RDB_defconfig
+++ b/configs/T4240RDB_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0xEFF40000
+CONFIG_TEXT_BASE=0xEFF40000
 CONFIG_ENV_SIZE=0x2000
 CONFIG_ENV_SECT_SIZE=0x20000
 CONFIG_DEFAULT_DEVICE_TREE="t4240rdb"
diff --git a/configs/a3y17lte_defconfig b/configs/a3y17lte_defconfig
index 9c0427236b9..124fb8d4761 100644
--- a/configs/a3y17lte_defconfig
+++ b/configs/a3y17lte_defconfig
@@ -3,7 +3,7 @@ CONFIG_SYS_CONFIG_NAME="exynos78x0-common"
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=26000000
 CONFIG_ARCH_EXYNOS=y
-CONFIG_SYS_TEXT_BASE=0x40001000
+CONFIG_TEXT_BASE=0x40001000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_ARCH_EXYNOS7=y
 CONFIG_TARGET_A3Y17LTE=y
diff --git a/configs/a5y17lte_defconfig b/configs/a5y17lte_defconfig
index ea0773e7a26..ffb0b3f474a 100644
--- a/configs/a5y17lte_defconfig
+++ b/configs/a5y17lte_defconfig
@@ -3,7 +3,7 @@ CONFIG_SYS_CONFIG_NAME="exynos78x0-common"
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=26000000
 CONFIG_ARCH_EXYNOS=y
-CONFIG_SYS_TEXT_BASE=0x40001000
+CONFIG_TEXT_BASE=0x40001000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_ARCH_EXYNOS7=y
 CONFIG_TARGET_A5Y17LTE=y
diff --git a/configs/a7y17lte_defconfig b/configs/a7y17lte_defconfig
index 952c72b760d..8c1229d8d5e 100644
--- a/configs/a7y17lte_defconfig
+++ b/configs/a7y17lte_defconfig
@@ -3,7 +3,7 @@ CONFIG_SYS_CONFIG_NAME="exynos78x0-common"
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=26000000
 CONFIG_ARCH_EXYNOS=y
-CONFIG_SYS_TEXT_BASE=0x40001000
+CONFIG_TEXT_BASE=0x40001000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_ARCH_EXYNOS7=y
 CONFIG_TARGET_A7Y17LTE=y
diff --git a/configs/ae350_rv32_defconfig b/configs/ae350_rv32_defconfig
index b73755d9d1e..cbfc97dc3df 100644
--- a/configs/ae350_rv32_defconfig
+++ b/configs/ae350_rv32_defconfig
@@ -1,5 +1,5 @@
 CONFIG_RISCV=y
-CONFIG_SYS_TEXT_BASE=0x00000000
+CONFIG_TEXT_BASE=0x00000000
 CONFIG_SYS_MALLOC_LEN=0x80000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SECT_SIZE=0x1000
diff --git a/configs/ae350_rv32_spl_defconfig b/configs/ae350_rv32_spl_defconfig
index 9b79cc41b55..c76bbcc01f3 100644
--- a/configs/ae350_rv32_spl_defconfig
+++ b/configs/ae350_rv32_spl_defconfig
@@ -1,5 +1,5 @@
 CONFIG_RISCV=y
-CONFIG_SYS_TEXT_BASE=0x01200000
+CONFIG_TEXT_BASE=0x01200000
 CONFIG_SYS_MALLOC_LEN=0x80000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SECT_SIZE=0x1000
diff --git a/configs/ae350_rv32_spl_xip_defconfig b/configs/ae350_rv32_spl_xip_defconfig
index c7b6ea4730d..f162aba5208 100644
--- a/configs/ae350_rv32_spl_xip_defconfig
+++ b/configs/ae350_rv32_spl_xip_defconfig
@@ -1,5 +1,5 @@
 CONFIG_RISCV=y
-CONFIG_SYS_TEXT_BASE=0x01200000
+CONFIG_TEXT_BASE=0x01200000
 CONFIG_SYS_MALLOC_LEN=0x80000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SECT_SIZE=0x1000
diff --git a/configs/ae350_rv32_xip_defconfig b/configs/ae350_rv32_xip_defconfig
index f5bbece8eba..64be1ee30d5 100644
--- a/configs/ae350_rv32_xip_defconfig
+++ b/configs/ae350_rv32_xip_defconfig
@@ -1,5 +1,5 @@
 CONFIG_RISCV=y
-CONFIG_SYS_TEXT_BASE=0x80000000
+CONFIG_TEXT_BASE=0x80000000
 CONFIG_SYS_MALLOC_LEN=0x80000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SECT_SIZE=0x1000
diff --git a/configs/ae350_rv64_defconfig b/configs/ae350_rv64_defconfig
index a2bbdd8c89d..65b3fc646f3 100644
--- a/configs/ae350_rv64_defconfig
+++ b/configs/ae350_rv64_defconfig
@@ -1,5 +1,5 @@
 CONFIG_RISCV=y
-CONFIG_SYS_TEXT_BASE=0x00000000
+CONFIG_TEXT_BASE=0x00000000
 CONFIG_SYS_MALLOC_LEN=0x80000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SECT_SIZE=0x1000
diff --git a/configs/ae350_rv64_spl_defconfig b/configs/ae350_rv64_spl_defconfig
index 4c33ca23833..26abe86b0c2 100644
--- a/configs/ae350_rv64_spl_defconfig
+++ b/configs/ae350_rv64_spl_defconfig
@@ -1,5 +1,5 @@
 CONFIG_RISCV=y
-CONFIG_SYS_TEXT_BASE=0x01200000
+CONFIG_TEXT_BASE=0x01200000
 CONFIG_SYS_MALLOC_LEN=0x80000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SECT_SIZE=0x1000
diff --git a/configs/ae350_rv64_spl_xip_defconfig b/configs/ae350_rv64_spl_xip_defconfig
index a197c97736b..7bf295b419a 100644
--- a/configs/ae350_rv64_spl_xip_defconfig
+++ b/configs/ae350_rv64_spl_xip_defconfig
@@ -1,5 +1,5 @@
 CONFIG_RISCV=y
-CONFIG_SYS_TEXT_BASE=0x01200000
+CONFIG_TEXT_BASE=0x01200000
 CONFIG_SYS_MALLOC_LEN=0x80000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SECT_SIZE=0x1000
diff --git a/configs/ae350_rv64_xip_defconfig b/configs/ae350_rv64_xip_defconfig
index 4bf778b8b89..f4deee6871c 100644
--- a/configs/ae350_rv64_xip_defconfig
+++ b/configs/ae350_rv64_xip_defconfig
@@ -1,5 +1,5 @@
 CONFIG_RISCV=y
-CONFIG_SYS_TEXT_BASE=0x80000000
+CONFIG_TEXT_BASE=0x80000000
 CONFIG_SYS_MALLOC_LEN=0x80000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SECT_SIZE=0x1000
diff --git a/configs/alt_defconfig b/configs/alt_defconfig
index 4549cd5d0d7..b43e8f4b6f7 100644
--- a/configs/alt_defconfig
+++ b/configs/alt_defconfig
@@ -4,7 +4,7 @@ CONFIG_ENABLE_ARM_SOC_BOOT0_HOOK=y
 # CONFIG_SPL_USE_ARCH_MEMCPY is not set
 # CONFIG_SPL_USE_ARCH_MEMSET is not set
 CONFIG_ARCH_RMOBILE=y
-CONFIG_SYS_TEXT_BASE=0x50000000
+CONFIG_TEXT_BASE=0x50000000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_SYS_MALLOC_F_LEN=0x8000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/am3517_evm_defconfig b/configs/am3517_evm_defconfig
index c6accc66ed8..4d3d02d2c8e 100644
--- a/configs/am3517_evm_defconfig
+++ b/configs/am3517_evm_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 # CONFIG_SPL_USE_ARCH_MEMCPY is not set
 # CONFIG_SPL_USE_ARCH_MEMSET is not set
 CONFIG_ARCH_OMAP2PLUS=y
-CONFIG_SYS_TEXT_BASE=0x80100000
+CONFIG_TEXT_BASE=0x80100000
 CONFIG_SYS_MALLOC_F_LEN=0x4000
 CONFIG_TI_COMMON_CMD_OPTIONS=y
 CONFIG_NR_DRAM_BANKS=2
diff --git a/configs/am43xx_evm_qspiboot_defconfig b/configs/am43xx_evm_qspiboot_defconfig
index 18be57a2fe9..4d02b5dfb51 100644
--- a/configs/am43xx_evm_qspiboot_defconfig
+++ b/configs/am43xx_evm_qspiboot_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_ARCH_CPU_INIT=y
 # CONFIG_SYS_THUMB_BUILD is not set
 CONFIG_ARCH_OMAP2PLUS=y
-CONFIG_SYS_TEXT_BASE=0x30000000
+CONFIG_TEXT_BASE=0x30000000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_ENV_SIZE=0x10000
 CONFIG_ENV_OFFSET=0x110000
diff --git a/configs/amcore_defconfig b/configs/amcore_defconfig
index 6054e808638..14a6187b05b 100644
--- a/configs/amcore_defconfig
+++ b/configs/amcore_defconfig
@@ -1,5 +1,5 @@
 CONFIG_M68K=y
-CONFIG_SYS_TEXT_BASE=0xFFC00000
+CONFIG_TEXT_BASE=0xFFC00000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_SYS_MALLOC_F_LEN=0x800
 CONFIG_ENV_SIZE=0x1000
diff --git a/configs/ap121_defconfig b/configs/ap121_defconfig
index f39051ecb39..1f4a79395ee 100644
--- a/configs/ap121_defconfig
+++ b/configs/ap121_defconfig
@@ -1,5 +1,5 @@
 CONFIG_MIPS=y
-CONFIG_SYS_TEXT_BASE=0x9F000000
+CONFIG_TEXT_BASE=0x9F000000
 CONFIG_SYS_MALLOC_LEN=0x40000
 CONFIG_ENV_SIZE=0x10000
 CONFIG_ENV_OFFSET=0x40000
diff --git a/configs/ap143_defconfig b/configs/ap143_defconfig
index e49e74c30a2..b902657dce1 100644
--- a/configs/ap143_defconfig
+++ b/configs/ap143_defconfig
@@ -1,5 +1,5 @@
 CONFIG_MIPS=y
-CONFIG_SYS_TEXT_BASE=0x9F000000
+CONFIG_TEXT_BASE=0x9F000000
 CONFIG_SYS_MALLOC_LEN=0x40000
 CONFIG_SYS_MALLOC_F_LEN=0x800
 CONFIG_ENV_SIZE=0x10000
diff --git a/configs/ap152_defconfig b/configs/ap152_defconfig
index fe3f752e0e4..b46b18121b8 100644
--- a/configs/ap152_defconfig
+++ b/configs/ap152_defconfig
@@ -1,5 +1,5 @@
 CONFIG_MIPS=y
-CONFIG_SYS_TEXT_BASE=0x9F000000
+CONFIG_TEXT_BASE=0x9F000000
 CONFIG_SYS_MALLOC_LEN=0x40000
 CONFIG_SYS_MALLOC_F_LEN=0x800
 CONFIG_ENV_SIZE=0x10000
diff --git a/configs/apalis-imx8_defconfig b/configs/apalis-imx8_defconfig
index 32e105a557a..6226d50c8ac 100644
--- a/configs/apalis-imx8_defconfig
+++ b/configs/apalis-imx8_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_IMX8=y
-CONFIG_SYS_TEXT_BASE=0x80020000
+CONFIG_TEXT_BASE=0x80020000
 CONFIG_SYS_MALLOC_LEN=0x2800000
 CONFIG_SYS_MALLOC_F_LEN=0x4000
 CONFIG_NR_DRAM_BANKS=3
diff --git a/configs/apalis-tk1_defconfig b/configs/apalis-tk1_defconfig
index 47ac0ef2720..70ef62a778b 100644
--- a/configs/apalis-tk1_defconfig
+++ b/configs/apalis-tk1_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SYS_L2CACHE_OFF=y
 CONFIG_ARCH_TEGRA=y
-CONFIG_SYS_TEXT_BASE=0x80110000
+CONFIG_TEXT_BASE=0x80110000
 CONFIG_SYS_MALLOC_F_LEN=0x2000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/apalis_imx6_defconfig b/configs/apalis_imx6_defconfig
index 5960aef698f..5da33449a13 100644
--- a/configs/apalis_imx6_defconfig
+++ b/configs/apalis_imx6_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x17800000
+CONFIG_TEXT_BASE=0x17800000
 CONFIG_SYS_MALLOC_LEN=0x2000000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/apalis_t30_defconfig b/configs/apalis_t30_defconfig
index d1d2c9047b8..587af469183 100644
--- a/configs/apalis_t30_defconfig
+++ b/configs/apalis_t30_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SYS_L2CACHE_OFF=y
 CONFIG_ARCH_TEGRA=y
-CONFIG_SYS_TEXT_BASE=0x80110000
+CONFIG_TEXT_BASE=0x80110000
 CONFIG_SYS_MALLOC_F_LEN=0x2000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/aristainetos2c_defconfig b/configs/aristainetos2c_defconfig
index 7c421f5ae99..37c09bed9fe 100644
--- a/configs/aristainetos2c_defconfig
+++ b/configs/aristainetos2c_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x17800000
+CONFIG_TEXT_BASE=0x17800000
 CONFIG_SYS_MALLOC_F_LEN=0x13000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_OFFSET=0xD0000
diff --git a/configs/aristainetos2ccslb_defconfig b/configs/aristainetos2ccslb_defconfig
index ed7e8c57ad7..a5e0d72a534 100644
--- a/configs/aristainetos2ccslb_defconfig
+++ b/configs/aristainetos2ccslb_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x17800000
+CONFIG_TEXT_BASE=0x17800000
 CONFIG_SYS_MALLOC_F_LEN=0x13000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_OFFSET=0xD0000
diff --git a/configs/arndale_defconfig b/configs/arndale_defconfig
index 005eabf55a8..30c695001fc 100644
--- a/configs/arndale_defconfig
+++ b/configs/arndale_defconfig
@@ -3,7 +3,7 @@ CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_SPL_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_EXYNOS=y
-CONFIG_SYS_TEXT_BASE=0x43E00000
+CONFIG_TEXT_BASE=0x43E00000
 CONFIG_SYS_MALLOC_LEN=0x5004000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_ARCH_EXYNOS5=y
diff --git a/configs/astro_mcf5373l_defconfig b/configs/astro_mcf5373l_defconfig
index f0c91d4ca45..d920ab4900c 100644
--- a/configs/astro_mcf5373l_defconfig
+++ b/configs/astro_mcf5373l_defconfig
@@ -1,5 +1,5 @@
 CONFIG_M68K=y
-CONFIG_SYS_TEXT_BASE=0x00000000
+CONFIG_TEXT_BASE=0x00000000
 CONFIG_SYS_MALLOC_LEN=0x20000
 CONFIG_ENV_SIZE=0x8000
 CONFIG_ENV_SECT_SIZE=0x8000
diff --git a/configs/at91sam9260ek_dataflash_cs0_defconfig b/configs/at91sam9260ek_dataflash_cs0_defconfig
index f81265f852b..8b50c5162fa 100644
--- a/configs/at91sam9260ek_dataflash_cs0_defconfig
+++ b/configs/at91sam9260ek_dataflash_cs0_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x21f00000
+CONFIG_TEXT_BASE=0x21f00000
 CONFIG_SYS_MALLOC_LEN=0x2d000
 CONFIG_TARGET_AT91SAM9260EK=y
 CONFIG_ATMEL_LEGACY=y
diff --git a/configs/at91sam9260ek_dataflash_cs1_defconfig b/configs/at91sam9260ek_dataflash_cs1_defconfig
index 3e3151754dc..6fef988f55b 100644
--- a/configs/at91sam9260ek_dataflash_cs1_defconfig
+++ b/configs/at91sam9260ek_dataflash_cs1_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x21f00000
+CONFIG_TEXT_BASE=0x21f00000
 CONFIG_SYS_MALLOC_LEN=0x2d000
 CONFIG_TARGET_AT91SAM9260EK=y
 CONFIG_ATMEL_LEGACY=y
diff --git a/configs/at91sam9260ek_nandflash_defconfig b/configs/at91sam9260ek_nandflash_defconfig
index 29adedf0fd2..9e5c099215e 100644
--- a/configs/at91sam9260ek_nandflash_defconfig
+++ b/configs/at91sam9260ek_nandflash_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x21f00000
+CONFIG_TEXT_BASE=0x21f00000
 CONFIG_SYS_MALLOC_LEN=0x80000
 CONFIG_TARGET_AT91SAM9260EK=y
 CONFIG_ATMEL_LEGACY=y
diff --git a/configs/at91sam9261ek_dataflash_cs0_defconfig b/configs/at91sam9261ek_dataflash_cs0_defconfig
index 5a935c6bdce..c983fc5cbbf 100644
--- a/configs/at91sam9261ek_dataflash_cs0_defconfig
+++ b/configs/at91sam9261ek_dataflash_cs0_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x21f00000
+CONFIG_TEXT_BASE=0x21f00000
 CONFIG_SYS_MALLOC_LEN=0x2d000
 CONFIG_TARGET_AT91SAM9261EK=y
 CONFIG_ATMEL_LEGACY=y
diff --git a/configs/at91sam9261ek_dataflash_cs3_defconfig b/configs/at91sam9261ek_dataflash_cs3_defconfig
index 8b20a856bac..1625ca16792 100644
--- a/configs/at91sam9261ek_dataflash_cs3_defconfig
+++ b/configs/at91sam9261ek_dataflash_cs3_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x21f00000
+CONFIG_TEXT_BASE=0x21f00000
 CONFIG_SYS_MALLOC_LEN=0x2d000
 CONFIG_TARGET_AT91SAM9261EK=y
 CONFIG_ATMEL_LEGACY=y
diff --git a/configs/at91sam9261ek_nandflash_defconfig b/configs/at91sam9261ek_nandflash_defconfig
index b6020624342..a07f2e7e927 100644
--- a/configs/at91sam9261ek_nandflash_defconfig
+++ b/configs/at91sam9261ek_nandflash_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x21f00000
+CONFIG_TEXT_BASE=0x21f00000
 CONFIG_SYS_MALLOC_LEN=0x80000
 CONFIG_TARGET_AT91SAM9261EK=y
 CONFIG_ATMEL_LEGACY=y
diff --git a/configs/at91sam9263ek_dataflash_cs0_defconfig b/configs/at91sam9263ek_dataflash_cs0_defconfig
index 8d9ccc942af..ed7fe7bd061 100644
--- a/configs/at91sam9263ek_dataflash_cs0_defconfig
+++ b/configs/at91sam9263ek_dataflash_cs0_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x21F00000
+CONFIG_TEXT_BASE=0x21F00000
 CONFIG_SYS_MALLOC_LEN=0x2d000
 CONFIG_TARGET_AT91SAM9263EK=y
 CONFIG_ATMEL_LEGACY=y
diff --git a/configs/at91sam9263ek_dataflash_defconfig b/configs/at91sam9263ek_dataflash_defconfig
index 8d9ccc942af..ed7fe7bd061 100644
--- a/configs/at91sam9263ek_dataflash_defconfig
+++ b/configs/at91sam9263ek_dataflash_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x21F00000
+CONFIG_TEXT_BASE=0x21F00000
 CONFIG_SYS_MALLOC_LEN=0x2d000
 CONFIG_TARGET_AT91SAM9263EK=y
 CONFIG_ATMEL_LEGACY=y
diff --git a/configs/at91sam9263ek_nandflash_defconfig b/configs/at91sam9263ek_nandflash_defconfig
index 466461771ad..fd25d5b0b9d 100644
--- a/configs/at91sam9263ek_nandflash_defconfig
+++ b/configs/at91sam9263ek_nandflash_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x21F00000
+CONFIG_TEXT_BASE=0x21F00000
 CONFIG_SYS_MALLOC_LEN=0x80000
 CONFIG_TARGET_AT91SAM9263EK=y
 CONFIG_ATMEL_LEGACY=y
diff --git a/configs/at91sam9263ek_norflash_boot_defconfig b/configs/at91sam9263ek_norflash_boot_defconfig
index 80d35348ac6..2cc8dd02ecb 100644
--- a/configs/at91sam9263ek_norflash_boot_defconfig
+++ b/configs/at91sam9263ek_norflash_boot_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x0000000
+CONFIG_TEXT_BASE=0x0000000
 CONFIG_SYS_MALLOC_LEN=0x50000
 CONFIG_TARGET_AT91SAM9263EK=y
 CONFIG_ATMEL_LEGACY=y
diff --git a/configs/at91sam9263ek_norflash_defconfig b/configs/at91sam9263ek_norflash_defconfig
index 748d8bc62f6..c3ad120c89d 100644
--- a/configs/at91sam9263ek_norflash_defconfig
+++ b/configs/at91sam9263ek_norflash_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x21F00000
+CONFIG_TEXT_BASE=0x21F00000
 CONFIG_SYS_MALLOC_LEN=0x50000
 CONFIG_TARGET_AT91SAM9263EK=y
 CONFIG_ATMEL_LEGACY=y
diff --git a/configs/at91sam9g10ek_dataflash_cs0_defconfig b/configs/at91sam9g10ek_dataflash_cs0_defconfig
index d570c928d89..c5b95956374 100644
--- a/configs/at91sam9g10ek_dataflash_cs0_defconfig
+++ b/configs/at91sam9g10ek_dataflash_cs0_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x21f00000
+CONFIG_TEXT_BASE=0x21f00000
 CONFIG_SYS_MALLOC_LEN=0x2d000
 CONFIG_TARGET_AT91SAM9261EK=y
 CONFIG_ATMEL_LEGACY=y
diff --git a/configs/at91sam9g10ek_dataflash_cs3_defconfig b/configs/at91sam9g10ek_dataflash_cs3_defconfig
index 0bc3787a4c0..92177c24623 100644
--- a/configs/at91sam9g10ek_dataflash_cs3_defconfig
+++ b/configs/at91sam9g10ek_dataflash_cs3_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x21f00000
+CONFIG_TEXT_BASE=0x21f00000
 CONFIG_SYS_MALLOC_LEN=0x2d000
 CONFIG_TARGET_AT91SAM9261EK=y
 CONFIG_ATMEL_LEGACY=y
diff --git a/configs/at91sam9g10ek_nandflash_defconfig b/configs/at91sam9g10ek_nandflash_defconfig
index e78a3a8b335..74c96c7c80c 100644
--- a/configs/at91sam9g10ek_nandflash_defconfig
+++ b/configs/at91sam9g10ek_nandflash_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x21f00000
+CONFIG_TEXT_BASE=0x21f00000
 CONFIG_SYS_MALLOC_LEN=0x80000
 CONFIG_TARGET_AT91SAM9261EK=y
 CONFIG_ATMEL_LEGACY=y
diff --git a/configs/at91sam9g20ek_2mmc_defconfig b/configs/at91sam9g20ek_2mmc_defconfig
index da6dbea35c2..2e9c7a218f1 100644
--- a/configs/at91sam9g20ek_2mmc_defconfig
+++ b/configs/at91sam9g20ek_2mmc_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x21f00000
+CONFIG_TEXT_BASE=0x21f00000
 CONFIG_SYS_MALLOC_LEN=0x23000
 CONFIG_TARGET_AT91SAM9260EK=y
 CONFIG_ATMEL_LEGACY=y
diff --git a/configs/at91sam9g20ek_2mmc_nandflash_defconfig b/configs/at91sam9g20ek_2mmc_nandflash_defconfig
index 20af937fce8..40c19cfd404 100644
--- a/configs/at91sam9g20ek_2mmc_nandflash_defconfig
+++ b/configs/at91sam9g20ek_2mmc_nandflash_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x21f00000
+CONFIG_TEXT_BASE=0x21f00000
 CONFIG_SYS_MALLOC_LEN=0x80000
 CONFIG_TARGET_AT91SAM9260EK=y
 CONFIG_ATMEL_LEGACY=y
diff --git a/configs/at91sam9g20ek_dataflash_cs0_defconfig b/configs/at91sam9g20ek_dataflash_cs0_defconfig
index aacc9d1fd6d..0ffcca6de59 100644
--- a/configs/at91sam9g20ek_dataflash_cs0_defconfig
+++ b/configs/at91sam9g20ek_dataflash_cs0_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x21f00000
+CONFIG_TEXT_BASE=0x21f00000
 CONFIG_SYS_MALLOC_LEN=0x2d000
 CONFIG_TARGET_AT91SAM9260EK=y
 CONFIG_ATMEL_LEGACY=y
diff --git a/configs/at91sam9g20ek_dataflash_cs1_defconfig b/configs/at91sam9g20ek_dataflash_cs1_defconfig
index 053829ec2fb..6be31186a4f 100644
--- a/configs/at91sam9g20ek_dataflash_cs1_defconfig
+++ b/configs/at91sam9g20ek_dataflash_cs1_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x21f00000
+CONFIG_TEXT_BASE=0x21f00000
 CONFIG_SYS_MALLOC_LEN=0x2d000
 CONFIG_TARGET_AT91SAM9260EK=y
 CONFIG_ATMEL_LEGACY=y
diff --git a/configs/at91sam9g20ek_nandflash_defconfig b/configs/at91sam9g20ek_nandflash_defconfig
index 4506eac999d..ae196c1af0f 100644
--- a/configs/at91sam9g20ek_nandflash_defconfig
+++ b/configs/at91sam9g20ek_nandflash_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x21f00000
+CONFIG_TEXT_BASE=0x21f00000
 CONFIG_SYS_MALLOC_LEN=0x80000
 CONFIG_TARGET_AT91SAM9260EK=y
 CONFIG_ATMEL_LEGACY=y
diff --git a/configs/at91sam9m10g45ek_mmc_defconfig b/configs/at91sam9m10g45ek_mmc_defconfig
index 8938193a8a7..482379ca2ed 100644
--- a/configs/at91sam9m10g45ek_mmc_defconfig
+++ b/configs/at91sam9m10g45ek_mmc_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x73f00000
+CONFIG_TEXT_BASE=0x73f00000
 CONFIG_SYS_MALLOC_LEN=0x2c000
 CONFIG_TARGET_AT91SAM9M10G45EK=y
 CONFIG_ATMEL_LEGACY=y
diff --git a/configs/at91sam9m10g45ek_nandflash_defconfig b/configs/at91sam9m10g45ek_nandflash_defconfig
index 57362bc3a45..3b682bfd77c 100644
--- a/configs/at91sam9m10g45ek_nandflash_defconfig
+++ b/configs/at91sam9m10g45ek_nandflash_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x73f00000
+CONFIG_TEXT_BASE=0x73f00000
 CONFIG_SYS_MALLOC_LEN=0x80000
 CONFIG_TARGET_AT91SAM9M10G45EK=y
 CONFIG_ATMEL_LEGACY=y
diff --git a/configs/at91sam9n12ek_mmc_defconfig b/configs/at91sam9n12ek_mmc_defconfig
index 45d74aa7ca3..ca50bbfc447 100644
--- a/configs/at91sam9n12ek_mmc_defconfig
+++ b/configs/at91sam9n12ek_mmc_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x26f00000
+CONFIG_TEXT_BASE=0x26f00000
 CONFIG_TARGET_AT91SAM9N12EK=y
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x4000
diff --git a/configs/at91sam9n12ek_nandflash_defconfig b/configs/at91sam9n12ek_nandflash_defconfig
index 6cd733f0271..76b086d0362 100644
--- a/configs/at91sam9n12ek_nandflash_defconfig
+++ b/configs/at91sam9n12ek_nandflash_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x26f00000
+CONFIG_TEXT_BASE=0x26f00000
 CONFIG_TARGET_AT91SAM9N12EK=y
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_DM_GPIO=y
diff --git a/configs/at91sam9n12ek_spiflash_defconfig b/configs/at91sam9n12ek_spiflash_defconfig
index 89400372c57..07d5aaa975d 100644
--- a/configs/at91sam9n12ek_spiflash_defconfig
+++ b/configs/at91sam9n12ek_spiflash_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x26f00000
+CONFIG_TEXT_BASE=0x26f00000
 CONFIG_TARGET_AT91SAM9N12EK=y
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x3000
diff --git a/configs/at91sam9rlek_dataflash_defconfig b/configs/at91sam9rlek_dataflash_defconfig
index ede5d533dea..7eccbc899a5 100644
--- a/configs/at91sam9rlek_dataflash_defconfig
+++ b/configs/at91sam9rlek_dataflash_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x21F00000
+CONFIG_TEXT_BASE=0x21F00000
 CONFIG_SYS_MALLOC_LEN=0x2d000
 CONFIG_TARGET_AT91SAM9RLEK=y
 CONFIG_ATMEL_LEGACY=y
diff --git a/configs/at91sam9rlek_mmc_defconfig b/configs/at91sam9rlek_mmc_defconfig
index 1c9a8b37e12..67859f80af5 100644
--- a/configs/at91sam9rlek_mmc_defconfig
+++ b/configs/at91sam9rlek_mmc_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x21F00000
+CONFIG_TEXT_BASE=0x21F00000
 CONFIG_SYS_MALLOC_LEN=0x2c000
 CONFIG_TARGET_AT91SAM9RLEK=y
 CONFIG_ATMEL_LEGACY=y
diff --git a/configs/at91sam9rlek_nandflash_defconfig b/configs/at91sam9rlek_nandflash_defconfig
index 482f94c6a49..164ebbe3985 100644
--- a/configs/at91sam9rlek_nandflash_defconfig
+++ b/configs/at91sam9rlek_nandflash_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x21F00000
+CONFIG_TEXT_BASE=0x21F00000
 CONFIG_SYS_MALLOC_LEN=0x80000
 CONFIG_TARGET_AT91SAM9RLEK=y
 CONFIG_ATMEL_LEGACY=y
diff --git a/configs/at91sam9x5ek_dataflash_defconfig b/configs/at91sam9x5ek_dataflash_defconfig
index 8ebeac2fb57..2b286768d97 100644
--- a/configs/at91sam9x5ek_dataflash_defconfig
+++ b/configs/at91sam9x5ek_dataflash_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x26f00000
+CONFIG_TEXT_BASE=0x26f00000
 CONFIG_SYS_MALLOC_LEN=0x81000
 CONFIG_TARGET_AT91SAM9X5EK=y
 CONFIG_ATMEL_LEGACY=y
diff --git a/configs/at91sam9x5ek_mmc_defconfig b/configs/at91sam9x5ek_mmc_defconfig
index 6649986e641..b20afeabd70 100644
--- a/configs/at91sam9x5ek_mmc_defconfig
+++ b/configs/at91sam9x5ek_mmc_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x26f00000
+CONFIG_TEXT_BASE=0x26f00000
 CONFIG_SYS_MALLOC_LEN=0x81000
 CONFIG_TARGET_AT91SAM9X5EK=y
 CONFIG_ATMEL_LEGACY=y
diff --git a/configs/at91sam9x5ek_nandflash_defconfig b/configs/at91sam9x5ek_nandflash_defconfig
index a9371ad1973..a7d6ecda2df 100644
--- a/configs/at91sam9x5ek_nandflash_defconfig
+++ b/configs/at91sam9x5ek_nandflash_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x26f00000
+CONFIG_TEXT_BASE=0x26f00000
 CONFIG_SYS_MALLOC_LEN=0x81000
 CONFIG_TARGET_AT91SAM9X5EK=y
 CONFIG_ATMEL_LEGACY=y
diff --git a/configs/at91sam9x5ek_spiflash_defconfig b/configs/at91sam9x5ek_spiflash_defconfig
index 1f7d5954ade..995092ed111 100644
--- a/configs/at91sam9x5ek_spiflash_defconfig
+++ b/configs/at91sam9x5ek_spiflash_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x26f00000
+CONFIG_TEXT_BASE=0x26f00000
 CONFIG_SYS_MALLOC_LEN=0x81000
 CONFIG_TARGET_AT91SAM9X5EK=y
 CONFIG_ATMEL_LEGACY=y
diff --git a/configs/at91sam9xeek_dataflash_cs0_defconfig b/configs/at91sam9xeek_dataflash_cs0_defconfig
index f81265f852b..8b50c5162fa 100644
--- a/configs/at91sam9xeek_dataflash_cs0_defconfig
+++ b/configs/at91sam9xeek_dataflash_cs0_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x21f00000
+CONFIG_TEXT_BASE=0x21f00000
 CONFIG_SYS_MALLOC_LEN=0x2d000
 CONFIG_TARGET_AT91SAM9260EK=y
 CONFIG_ATMEL_LEGACY=y
diff --git a/configs/at91sam9xeek_dataflash_cs1_defconfig b/configs/at91sam9xeek_dataflash_cs1_defconfig
index 3e3151754dc..6fef988f55b 100644
--- a/configs/at91sam9xeek_dataflash_cs1_defconfig
+++ b/configs/at91sam9xeek_dataflash_cs1_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x21f00000
+CONFIG_TEXT_BASE=0x21f00000
 CONFIG_SYS_MALLOC_LEN=0x2d000
 CONFIG_TARGET_AT91SAM9260EK=y
 CONFIG_ATMEL_LEGACY=y
diff --git a/configs/at91sam9xeek_nandflash_defconfig b/configs/at91sam9xeek_nandflash_defconfig
index 29adedf0fd2..9e5c099215e 100644
--- a/configs/at91sam9xeek_nandflash_defconfig
+++ b/configs/at91sam9xeek_nandflash_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x21f00000
+CONFIG_TEXT_BASE=0x21f00000
 CONFIG_SYS_MALLOC_LEN=0x80000
 CONFIG_TARGET_AT91SAM9260EK=y
 CONFIG_ATMEL_LEGACY=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 f04fa64450c..943b4da21d1 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
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_ZYNQMP=y
-CONFIG_SYS_TEXT_BASE=0x8000000
+CONFIG_TEXT_BASE=0x8000000
 CONFIG_SYS_MALLOC_LEN=0x4008000
 CONFIG_SYS_MALLOC_F_LEN=0x8000
 CONFIG_DM_GPIO=y
diff --git a/configs/axm_defconfig b/configs/axm_defconfig
index dd5efbca86d..b3e011324ee 100644
--- a/configs/axm_defconfig
+++ b/configs/axm_defconfig
@@ -7,7 +7,7 @@ CONFIG_SYS_THUMB_BUILD=y
 # CONFIG_SPL_USE_ARCH_MEMCPY is not set
 # CONFIG_SPL_USE_ARCH_MEMSET is not set
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x21000000
+CONFIG_TEXT_BASE=0x21000000
 CONFIG_SYS_MALLOC_LEN=0x460000
 CONFIG_TARGET_TAURUS=y
 CONFIG_AT91_GPIO_PULLUP=y
diff --git a/configs/axs101_defconfig b/configs/axs101_defconfig
index 94e7752c77e..a5436db7ac7 100644
--- a/configs/axs101_defconfig
+++ b/configs/axs101_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARC=y
 CONFIG_TARGET_AXS101=y
-CONFIG_SYS_TEXT_BASE=0x81000000
+CONFIG_TEXT_BASE=0x81000000
 CONFIG_SYS_MALLOC_LEN=0x0200000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_DM_GPIO=y
diff --git a/configs/axs103_defconfig b/configs/axs103_defconfig
index f486e375f1c..1270a3db471 100644
--- a/configs/axs103_defconfig
+++ b/configs/axs103_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARC=y
 CONFIG_ISA_ARCV2=y
-CONFIG_SYS_TEXT_BASE=0x81000000
+CONFIG_TEXT_BASE=0x81000000
 CONFIG_SYS_MALLOC_LEN=0x0200000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_DM_GPIO=y
diff --git a/configs/bananapi-m5_defconfig b/configs/bananapi-m5_defconfig
index 6ab2d8ef0c4..afa621df3b8 100644
--- a/configs/bananapi-m5_defconfig
+++ b/configs/bananapi-m5_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MESON=y
-CONFIG_SYS_TEXT_BASE=0x01000000
+CONFIG_TEXT_BASE=0x01000000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
 CONFIG_DM_GPIO=y
diff --git a/configs/bayleybay_defconfig b/configs/bayleybay_defconfig
index d1a467dfe79..5f43f4c0ee9 100644
--- a/configs/bayleybay_defconfig
+++ b/configs/bayleybay_defconfig
@@ -1,5 +1,5 @@
 CONFIG_X86=y
-CONFIG_SYS_TEXT_BASE=0xFFF00000
+CONFIG_TEXT_BASE=0xFFF00000
 CONFIG_NR_DRAM_BANKS=8
 CONFIG_ENV_SIZE=0x1000
 CONFIG_ENV_OFFSET=0x6FF000
diff --git a/configs/bcm7260_defconfig b/configs/bcm7260_defconfig
index e8ae5efdc42..920e8828460 100644
--- a/configs/bcm7260_defconfig
+++ b/configs/bcm7260_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_BCMSTB=y
-CONFIG_SYS_TEXT_BASE=0x10100000
+CONFIG_TEXT_BASE=0x10100000
 CONFIG_SYS_MALLOC_LEN=0x2800000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_TARGET_BCM7260=y
diff --git a/configs/bcm7445_defconfig b/configs/bcm7445_defconfig
index 525e0d1c3f4..b44eabaa425 100644
--- a/configs/bcm7445_defconfig
+++ b/configs/bcm7445_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_BCMSTB=y
-CONFIG_SYS_TEXT_BASE=0x80100000
+CONFIG_TEXT_BASE=0x80100000
 CONFIG_SYS_MALLOC_LEN=0xa00000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_TARGET_BCM7445=y
diff --git a/configs/bcm947622_defconfig b/configs/bcm947622_defconfig
index c61fbe1848e..c9811467b52 100644
--- a/configs/bcm947622_defconfig
+++ b/configs/bcm947622_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_BCMBCA=y
-CONFIG_SYS_TEXT_BASE=0x01000000
+CONFIG_TEXT_BASE=0x01000000
 CONFIG_SYS_MALLOC_LEN=0x2000000
 CONFIG_SYS_MALLOC_F_LEN=0x8000
 CONFIG_BCM47622=y
diff --git a/configs/bcm963158_ram_defconfig b/configs/bcm963158_ram_defconfig
index c0fda57ff78..a493a5a6a3b 100644
--- a/configs/bcm963158_ram_defconfig
+++ b/configs/bcm963158_ram_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 # CONFIG_ARM64_SUPPORT_AARCH32 is not set
 CONFIG_ARCH_BCM63158=y
-CONFIG_SYS_TEXT_BASE=0x10000000
+CONFIG_TEXT_BASE=0x10000000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_SYS_MALLOC_F_LEN=0x8000
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/bcm96753ref_ram_defconfig b/configs/bcm96753ref_ram_defconfig
index 59ac1cdf7e1..de79b29aa00 100644
--- a/configs/bcm96753ref_ram_defconfig
+++ b/configs/bcm96753ref_ram_defconfig
@@ -3,7 +3,7 @@ CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_SKIP_LOWLEVEL_INIT_ONLY=y
 CONFIG_SYS_ARCH_TIMER=y
 CONFIG_ARCH_BCM6753=y
-CONFIG_SYS_TEXT_BASE=0x1000000
+CONFIG_TEXT_BASE=0x1000000
 CONFIG_SYS_MALLOC_F_LEN=0x1000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x20000
diff --git a/configs/bcm968360bg_ram_defconfig b/configs/bcm968360bg_ram_defconfig
index a83d4efd55b..d0a62f4a9f8 100644
--- a/configs/bcm968360bg_ram_defconfig
+++ b/configs/bcm968360bg_ram_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_BCM68360=y
-CONFIG_SYS_TEXT_BASE=0x10000000
+CONFIG_TEXT_BASE=0x10000000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_SYS_MALLOC_F_LEN=0x8000
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/bcm968380gerg_ram_defconfig b/configs/bcm968380gerg_ram_defconfig
index 284fa2fdef9..6ddec1b063e 100644
--- a/configs/bcm968380gerg_ram_defconfig
+++ b/configs/bcm968380gerg_ram_defconfig
@@ -1,6 +1,6 @@
 CONFIG_MIPS=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
-CONFIG_SYS_TEXT_BASE=0x80010000
+CONFIG_TEXT_BASE=0x80010000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
 CONFIG_DM_GPIO=y
diff --git a/configs/bcm968580xref_ram_defconfig b/configs/bcm968580xref_ram_defconfig
index 4320739809c..59fb4435bd4 100644
--- a/configs/bcm968580xref_ram_defconfig
+++ b/configs/bcm968580xref_ram_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_BCM6858=y
-CONFIG_SYS_TEXT_BASE=0x10000000
+CONFIG_TEXT_BASE=0x10000000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_SYS_MALLOC_F_LEN=0x8000
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/bcm_ns3_defconfig b/configs/bcm_ns3_defconfig
index 487c030bea1..b18671a3c67 100644
--- a/configs/bcm_ns3_defconfig
+++ b/configs/bcm_ns3_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_GIC_V3_ITS=y
 CONFIG_TARGET_BCMNS3=y
-CONFIG_SYS_TEXT_BASE=0xFF000000
+CONFIG_TEXT_BASE=0xFF000000
 CONFIG_SYS_MALLOC_LEN=0xc00000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_NR_DRAM_BANKS=2
diff --git a/configs/beaver_defconfig b/configs/beaver_defconfig
index 088ce8eee02..24f619ca768 100644
--- a/configs/beaver_defconfig
+++ b/configs/beaver_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SYS_L2CACHE_OFF=y
 CONFIG_ARCH_TEGRA=y
-CONFIG_SYS_TEXT_BASE=0x80110000
+CONFIG_TEXT_BASE=0x80110000
 CONFIG_SYS_MALLOC_LEN=0x2500000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/beelink-gsking-x_defconfig b/configs/beelink-gsking-x_defconfig
index 2c8c642dcb2..8e7865d4144 100644
--- a/configs/beelink-gsking-x_defconfig
+++ b/configs/beelink-gsking-x_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SYS_BOARD="beelink-s922x"
 CONFIG_ARCH_MESON=y
-CONFIG_SYS_TEXT_BASE=0x01000000
+CONFIG_TEXT_BASE=0x01000000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
 CONFIG_DM_GPIO=y
diff --git a/configs/beelink-gtking_defconfig b/configs/beelink-gtking_defconfig
index 9848252e7e9..04cc38e2786 100644
--- a/configs/beelink-gtking_defconfig
+++ b/configs/beelink-gtking_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SYS_BOARD="beelink-s922x"
 CONFIG_ARCH_MESON=y
-CONFIG_SYS_TEXT_BASE=0x01000000
+CONFIG_TEXT_BASE=0x01000000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
 CONFIG_DM_GPIO=y
diff --git a/configs/beelink-gtkingpro_defconfig b/configs/beelink-gtkingpro_defconfig
index 484e039fe03..a0b618592c2 100644
--- a/configs/beelink-gtkingpro_defconfig
+++ b/configs/beelink-gtkingpro_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SYS_BOARD="beelink-s922x"
 CONFIG_ARCH_MESON=y
-CONFIG_SYS_TEXT_BASE=0x01000000
+CONFIG_TEXT_BASE=0x01000000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
 CONFIG_DM_GPIO=y
diff --git a/configs/bitmain_antminer_s9_defconfig b/configs/bitmain_antminer_s9_defconfig
index 30f3f8e3a16..cbcbc9b18db 100644
--- a/configs/bitmain_antminer_s9_defconfig
+++ b/configs/bitmain_antminer_s9_defconfig
@@ -5,7 +5,7 @@ CONFIG_SYS_CONFIG_NAME="bitmain_antminer_s9"
 CONFIG_SPL_SYS_DCACHE_OFF=y
 CONFIG_SYS_L2CACHE_OFF=y
 CONFIG_ARCH_ZYNQ=y
-CONFIG_SYS_TEXT_BASE=0x4000000
+CONFIG_TEXT_BASE=0x4000000
 CONFIG_ENV_OFFSET=0x300000
 CONFIG_DM_GPIO=y
 CONFIG_DEFAULT_DEVICE_TREE="bitmain-antminer-s9"
diff --git a/configs/bk4r1_defconfig b/configs/bk4r1_defconfig
index a0edb5976cd..3f5f60d868a 100644
--- a/configs/bk4r1_defconfig
+++ b/configs/bk4r1_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_SYS_THUMB_BUILD=y
 CONFIG_ARCH_VF610=y
-CONFIG_SYS_TEXT_BASE=0x3f401000
+CONFIG_TEXT_BASE=0x3f401000
 CONFIG_SYS_MALLOC_LEN=0x402000
 CONFIG_SYS_MALLOC_F_LEN=0x800
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/blanche_defconfig b/configs/blanche_defconfig
index 3cbec64a8f2..f82b23387cf 100644
--- a/configs/blanche_defconfig
+++ b/configs/blanche_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ENABLE_ARM_SOC_BOOT0_HOOK=y
 CONFIG_ARCH_RMOBILE=y
-CONFIG_SYS_TEXT_BASE=0x00000000
+CONFIG_TEXT_BASE=0x00000000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_SYS_MALLOC_F_LEN=0x8000
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/boston32r2_defconfig b/configs/boston32r2_defconfig
index bb1d525429d..c680995805b 100644
--- a/configs/boston32r2_defconfig
+++ b/configs/boston32r2_defconfig
@@ -1,5 +1,5 @@
 CONFIG_MIPS=y
-CONFIG_SYS_TEXT_BASE=0x9FC00000
+CONFIG_TEXT_BASE=0x9FC00000
 CONFIG_SYS_MALLOC_LEN=0x40000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_ENV_SIZE=0x20000
diff --git a/configs/boston32r2el_defconfig b/configs/boston32r2el_defconfig
index 82a61e3731a..831ee94b0c7 100644
--- a/configs/boston32r2el_defconfig
+++ b/configs/boston32r2el_defconfig
@@ -1,5 +1,5 @@
 CONFIG_MIPS=y
-CONFIG_SYS_TEXT_BASE=0x9FC00000
+CONFIG_TEXT_BASE=0x9FC00000
 CONFIG_SYS_MALLOC_LEN=0x40000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_ENV_SIZE=0x20000
diff --git a/configs/boston32r6_defconfig b/configs/boston32r6_defconfig
index f2c6cfd64bd..312616a4c20 100644
--- a/configs/boston32r6_defconfig
+++ b/configs/boston32r6_defconfig
@@ -1,5 +1,5 @@
 CONFIG_MIPS=y
-CONFIG_SYS_TEXT_BASE=0x9FC00000
+CONFIG_TEXT_BASE=0x9FC00000
 CONFIG_SYS_MALLOC_LEN=0x40000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_ENV_SIZE=0x20000
diff --git a/configs/boston32r6el_defconfig b/configs/boston32r6el_defconfig
index 60e1180f093..50032dd3dba 100644
--- a/configs/boston32r6el_defconfig
+++ b/configs/boston32r6el_defconfig
@@ -1,5 +1,5 @@
 CONFIG_MIPS=y
-CONFIG_SYS_TEXT_BASE=0x9FC00000
+CONFIG_TEXT_BASE=0x9FC00000
 CONFIG_SYS_MALLOC_LEN=0x40000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_ENV_SIZE=0x20000
diff --git a/configs/boston64r2_defconfig b/configs/boston64r2_defconfig
index 7459ee432b8..9bfe4a72f88 100644
--- a/configs/boston64r2_defconfig
+++ b/configs/boston64r2_defconfig
@@ -1,5 +1,5 @@
 CONFIG_MIPS=y
-CONFIG_SYS_TEXT_BASE=0xFFFFFFFF9FC00000
+CONFIG_TEXT_BASE=0xFFFFFFFF9FC00000
 CONFIG_SYS_MALLOC_LEN=0x40000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_ENV_SIZE=0x20000
diff --git a/configs/boston64r2el_defconfig b/configs/boston64r2el_defconfig
index d9296a9be7f..9d28e07df66 100644
--- a/configs/boston64r2el_defconfig
+++ b/configs/boston64r2el_defconfig
@@ -1,5 +1,5 @@
 CONFIG_MIPS=y
-CONFIG_SYS_TEXT_BASE=0xFFFFFFFF9FC00000
+CONFIG_TEXT_BASE=0xFFFFFFFF9FC00000
 CONFIG_SYS_MALLOC_LEN=0x40000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_ENV_SIZE=0x20000
diff --git a/configs/boston64r6_defconfig b/configs/boston64r6_defconfig
index fa9ef1521d5..7f6c158a4c3 100644
--- a/configs/boston64r6_defconfig
+++ b/configs/boston64r6_defconfig
@@ -1,5 +1,5 @@
 CONFIG_MIPS=y
-CONFIG_SYS_TEXT_BASE=0xFFFFFFFF9FC00000
+CONFIG_TEXT_BASE=0xFFFFFFFF9FC00000
 CONFIG_SYS_MALLOC_LEN=0x40000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_ENV_SIZE=0x20000
diff --git a/configs/boston64r6el_defconfig b/configs/boston64r6el_defconfig
index 31c353457ab..e203d2085f5 100644
--- a/configs/boston64r6el_defconfig
+++ b/configs/boston64r6el_defconfig
@@ -1,5 +1,5 @@
 CONFIG_MIPS=y
-CONFIG_SYS_TEXT_BASE=0xFFFFFFFF9FC00000
+CONFIG_TEXT_BASE=0xFFFFFFFF9FC00000
 CONFIG_SYS_MALLOC_LEN=0x40000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_ENV_SIZE=0x20000
diff --git a/configs/brppt2_defconfig b/configs/brppt2_defconfig
index e2c36e13add..00ef3d9908e 100644
--- a/configs/brppt2_defconfig
+++ b/configs/brppt2_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 # CONFIG_SPL_SYS_THUMB_BUILD is not set
 CONFIG_SYS_L2CACHE_OFF=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x17800000
+CONFIG_TEXT_BASE=0x17800000
 CONFIG_SYS_MALLOC_LEN=0xa00000
 CONFIG_SYS_MALLOC_F_LEN=0x1000
 CONFIG_SPL_GPIO=y
diff --git a/configs/cardhu_defconfig b/configs/cardhu_defconfig
index c2960eb6d0d..87aa9304cde 100644
--- a/configs/cardhu_defconfig
+++ b/configs/cardhu_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SYS_L2CACHE_OFF=y
 CONFIG_ARCH_TEGRA=y
-CONFIG_SYS_TEXT_BASE=0x80110000
+CONFIG_TEXT_BASE=0x80110000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x2000
 CONFIG_ENV_OFFSET=0xFFFFE000
diff --git a/configs/cei-tk1-som_defconfig b/configs/cei-tk1-som_defconfig
index 424657d7101..f716f6272f5 100644
--- a/configs/cei-tk1-som_defconfig
+++ b/configs/cei-tk1-som_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SYS_L2CACHE_OFF=y
 CONFIG_ARCH_TEGRA=y
-CONFIG_SYS_TEXT_BASE=0x80110000
+CONFIG_TEXT_BASE=0x80110000
 CONFIG_SYS_MALLOC_LEN=0x2500000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/cgtqmx8_defconfig b/configs/cgtqmx8_defconfig
index ddc65a06b9d..ba2b09fb441 100644
--- a/configs/cgtqmx8_defconfig
+++ b/configs/cgtqmx8_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_IMX8=y
-CONFIG_SYS_TEXT_BASE=0x80020000
+CONFIG_TEXT_BASE=0x80020000
 CONFIG_SYS_MALLOC_LEN=0x2400000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/cherryhill_defconfig b/configs/cherryhill_defconfig
index 9c3d26a36e1..becb0a73c83 100644
--- a/configs/cherryhill_defconfig
+++ b/configs/cherryhill_defconfig
@@ -1,5 +1,5 @@
 CONFIG_X86=y
-CONFIG_SYS_TEXT_BASE=0xFFE00000
+CONFIG_TEXT_BASE=0xFFE00000
 CONFIG_NR_DRAM_BANKS=8
 CONFIG_ENV_SIZE=0x1000
 CONFIG_ENV_OFFSET=0x5F0000
diff --git a/configs/chromebit_mickey_defconfig b/configs/chromebit_mickey_defconfig
index dad3b36b993..d3c79e250b4 100644
--- a/configs/chromebit_mickey_defconfig
+++ b/configs/chromebit_mickey_defconfig
@@ -3,7 +3,7 @@ CONFIG_SPL_SKIP_LOWLEVEL_INIT=y
 CONFIG_SYS_ARCH_TIMER=y
 # CONFIG_SPL_USE_ARCH_MEMCPY is not set
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x00100000
+CONFIG_TEXT_BASE=0x00100000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_DEFAULT_DEVICE_TREE="rk3288-veyron-mickey"
 CONFIG_SPL_TEXT_BASE=0xff704000
diff --git a/configs/chromebook_bob_defconfig b/configs/chromebook_bob_defconfig
index d81129a2d8e..2f9c604d61e 100644
--- a/configs/chromebook_bob_defconfig
+++ b/configs/chromebook_bob_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=24000000
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x00200000
+CONFIG_TEXT_BASE=0x00200000
 CONFIG_SPL_GPIO=y
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_OFFSET=0x3F8000
diff --git a/configs/chromebook_coral_defconfig b/configs/chromebook_coral_defconfig
index 60c50e75be6..45905c6792b 100644
--- a/configs/chromebook_coral_defconfig
+++ b/configs/chromebook_coral_defconfig
@@ -1,5 +1,5 @@
 CONFIG_X86=y
-CONFIG_SYS_TEXT_BASE=0x1110000
+CONFIG_TEXT_BASE=0x1110000
 CONFIG_SYS_MALLOC_F_LEN=0x3d00
 CONFIG_NR_DRAM_BANKS=8
 CONFIG_MAX_CPUS=8
diff --git a/configs/chromebook_jerry_defconfig b/configs/chromebook_jerry_defconfig
index 35d546e6315..1732941176b 100644
--- a/configs/chromebook_jerry_defconfig
+++ b/configs/chromebook_jerry_defconfig
@@ -3,7 +3,7 @@ CONFIG_SPL_SKIP_LOWLEVEL_INIT=y
 CONFIG_SYS_ARCH_TIMER=y
 # CONFIG_SPL_USE_ARCH_MEMCPY is not set
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x00100000
+CONFIG_TEXT_BASE=0x00100000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_DEFAULT_DEVICE_TREE="rk3288-veyron-jerry"
 CONFIG_SPL_TEXT_BASE=0xff704000
diff --git a/configs/chromebook_kevin_defconfig b/configs/chromebook_kevin_defconfig
index bafa9fb4def..5368614dff5 100644
--- a/configs/chromebook_kevin_defconfig
+++ b/configs/chromebook_kevin_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=24000000
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x00200000
+CONFIG_TEXT_BASE=0x00200000
 CONFIG_SPL_GPIO=y
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_OFFSET=0x3F8000
diff --git a/configs/chromebook_link_defconfig b/configs/chromebook_link_defconfig
index fa3641e42f5..541b7fadead 100644
--- a/configs/chromebook_link_defconfig
+++ b/configs/chromebook_link_defconfig
@@ -1,5 +1,5 @@
 CONFIG_X86=y
-CONFIG_SYS_TEXT_BASE=0xFFEF0000
+CONFIG_TEXT_BASE=0xFFEF0000
 CONFIG_SYS_MALLOC_F_LEN=0x2400
 CONFIG_NR_DRAM_BANKS=8
 CONFIG_ENV_SIZE=0x1000
diff --git a/configs/chromebook_minnie_defconfig b/configs/chromebook_minnie_defconfig
index 60fc528a8ce..35d9c2ec9e1 100644
--- a/configs/chromebook_minnie_defconfig
+++ b/configs/chromebook_minnie_defconfig
@@ -3,7 +3,7 @@ CONFIG_SPL_SKIP_LOWLEVEL_INIT=y
 CONFIG_SYS_ARCH_TIMER=y
 # CONFIG_SPL_USE_ARCH_MEMCPY is not set
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x00100000
+CONFIG_TEXT_BASE=0x00100000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_DEFAULT_DEVICE_TREE="rk3288-veyron-minnie"
 CONFIG_SPL_TEXT_BASE=0xff704000
diff --git a/configs/chromebook_samus_defconfig b/configs/chromebook_samus_defconfig
index 56a0d6c8a8e..27bf046f991 100644
--- a/configs/chromebook_samus_defconfig
+++ b/configs/chromebook_samus_defconfig
@@ -1,5 +1,5 @@
 CONFIG_X86=y
-CONFIG_SYS_TEXT_BASE=0xFFE00000
+CONFIG_TEXT_BASE=0xFFE00000
 CONFIG_SYS_MALLOC_F_LEN=0x1d00
 CONFIG_NR_DRAM_BANKS=8
 CONFIG_ENV_SIZE=0x1000
diff --git a/configs/chromebook_samus_tpl_defconfig b/configs/chromebook_samus_tpl_defconfig
index 1e1091fa7ee..e9222648758 100644
--- a/configs/chromebook_samus_tpl_defconfig
+++ b/configs/chromebook_samus_tpl_defconfig
@@ -1,5 +1,5 @@
 CONFIG_X86=y
-CONFIG_SYS_TEXT_BASE=0xffed0000
+CONFIG_TEXT_BASE=0xffed0000
 CONFIG_SYS_MALLOC_F_LEN=0x1a00
 CONFIG_NR_DRAM_BANKS=8
 CONFIG_ENV_SIZE=0x1000
diff --git a/configs/chromebook_speedy_defconfig b/configs/chromebook_speedy_defconfig
index e6f03faa87e..61bca1fc44c 100644
--- a/configs/chromebook_speedy_defconfig
+++ b/configs/chromebook_speedy_defconfig
@@ -3,7 +3,7 @@ CONFIG_SPL_SKIP_LOWLEVEL_INIT=y
 CONFIG_SYS_ARCH_TIMER=y
 # CONFIG_SPL_USE_ARCH_MEMCPY is not set
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x00100000
+CONFIG_TEXT_BASE=0x00100000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_DEFAULT_DEVICE_TREE="rk3288-veyron-speedy"
 CONFIG_SPL_TEXT_BASE=0xff704000
diff --git a/configs/chromebox_panther_defconfig b/configs/chromebox_panther_defconfig
index 870843ada58..b78e98c2045 100644
--- a/configs/chromebox_panther_defconfig
+++ b/configs/chromebox_panther_defconfig
@@ -1,5 +1,5 @@
 CONFIG_X86=y
-CONFIG_SYS_TEXT_BASE=0xFFF00000
+CONFIG_TEXT_BASE=0xFFF00000
 CONFIG_NR_DRAM_BANKS=8
 CONFIG_ENV_SIZE=0x1000
 CONFIG_ENV_OFFSET=0x3F8000
diff --git a/configs/ci20_mmc_defconfig b/configs/ci20_mmc_defconfig
index 07848a5933e..8b75883c031 100644
--- a/configs/ci20_mmc_defconfig
+++ b/configs/ci20_mmc_defconfig
@@ -1,6 +1,6 @@
 CONFIG_MIPS=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
-CONFIG_SYS_TEXT_BASE=0x80010000
+CONFIG_TEXT_BASE=0x80010000
 CONFIG_SYS_MALLOC_LEN=0x4000000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/clearfog_defconfig b/configs/clearfog_defconfig
index 3bbd1d6d8ef..f91942865a3 100644
--- a/configs/clearfog_defconfig
+++ b/configs/clearfog_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_SYS_THUMB_BUILD=y
 CONFIG_ARCH_MVEBU=y
-CONFIG_SYS_TEXT_BASE=0x00800000
+CONFIG_TEXT_BASE=0x00800000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
 CONFIG_NR_DRAM_BANKS=2
diff --git a/configs/clearfog_gt_8k_defconfig b/configs/clearfog_gt_8k_defconfig
index baafe3c58c6..58f3ec08b37 100644
--- a/configs/clearfog_gt_8k_defconfig
+++ b/configs/clearfog_gt_8k_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_MVEBU=y
-CONFIG_SYS_TEXT_BASE=0x00000000
+CONFIG_TEXT_BASE=0x00000000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_TARGET_MVEBU_ARMADA_8K=y
 CONFIG_ENV_SIZE=0x10000
diff --git a/configs/cm_fx6_defconfig b/configs/cm_fx6_defconfig
index e323438506f..db20b9b58d8 100644
--- a/configs/cm_fx6_defconfig
+++ b/configs/cm_fx6_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x17800000
+CONFIG_TEXT_BASE=0x17800000
 CONFIG_SYS_MALLOC_LEN=0xa00000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/cobra5272_defconfig b/configs/cobra5272_defconfig
index e8c91b8beff..4eaedf6464d 100644
--- a/configs/cobra5272_defconfig
+++ b/configs/cobra5272_defconfig
@@ -1,5 +1,5 @@
 CONFIG_M68K=y
-CONFIG_SYS_TEXT_BASE=0xFFE00000
+CONFIG_TEXT_BASE=0xFFE00000
 CONFIG_SYS_MALLOC_LEN=0x40000
 CONFIG_ENV_SIZE=0x2000
 CONFIG_ENV_SECT_SIZE=0x2000
diff --git a/configs/colibri-imx6ull-emmc_defconfig b/configs/colibri-imx6ull-emmc_defconfig
index e6ed9b5fd0f..0c121197085 100644
--- a/configs/colibri-imx6ull-emmc_defconfig
+++ b/configs/colibri-imx6ull-emmc_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x87800000
+CONFIG_TEXT_BASE=0x87800000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
 CONFIG_ENV_OFFSET=0xFFFFDE00
diff --git a/configs/colibri-imx6ull_defconfig b/configs/colibri-imx6ull_defconfig
index d65f2533ca2..5cac9256807 100644
--- a/configs/colibri-imx6ull_defconfig
+++ b/configs/colibri-imx6ull_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x87800000
+CONFIG_TEXT_BASE=0x87800000
 CONFIG_SYS_MALLOC_LEN=0x2000000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x20000
diff --git a/configs/colibri-imx8x_defconfig b/configs/colibri-imx8x_defconfig
index 1a207f99d00..fb9171a7037 100644
--- a/configs/colibri-imx8x_defconfig
+++ b/configs/colibri-imx8x_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_IMX8=y
-CONFIG_SYS_TEXT_BASE=0x80020000
+CONFIG_TEXT_BASE=0x80020000
 CONFIG_SYS_MALLOC_LEN=0x2800000
 CONFIG_SYS_MALLOC_F_LEN=0x4000
 CONFIG_NR_DRAM_BANKS=3
diff --git a/configs/colibri_imx6_defconfig b/configs/colibri_imx6_defconfig
index 5cf398b09e2..ba92731d08d 100644
--- a/configs/colibri_imx6_defconfig
+++ b/configs/colibri_imx6_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x17800000
+CONFIG_TEXT_BASE=0x17800000
 CONFIG_SYS_MALLOC_LEN=0x2000000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/colibri_t20_defconfig b/configs/colibri_t20_defconfig
index 02e4a7c0b47..224de949c26 100644
--- a/configs/colibri_t20_defconfig
+++ b/configs/colibri_t20_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SYS_L2CACHE_OFF=y
 CONFIG_ARCH_TEGRA=y
-CONFIG_SYS_TEXT_BASE=0x00110000
+CONFIG_TEXT_BASE=0x00110000
 CONFIG_SYS_MALLOC_F_LEN=0x2000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x10000
diff --git a/configs/colibri_t30_defconfig b/configs/colibri_t30_defconfig
index 86e421c1d4f..a616eae1a6c 100644
--- a/configs/colibri_t30_defconfig
+++ b/configs/colibri_t30_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SYS_L2CACHE_OFF=y
 CONFIG_ARCH_TEGRA=y
-CONFIG_SYS_TEXT_BASE=0x80110000
+CONFIG_TEXT_BASE=0x80110000
 CONFIG_SYS_MALLOC_F_LEN=0x2000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/colibri_vf_defconfig b/configs/colibri_vf_defconfig
index 2c4983f5dfe..dbc74f58e07 100644
--- a/configs/colibri_vf_defconfig
+++ b/configs/colibri_vf_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_SYS_THUMB_BUILD=y
 CONFIG_ARCH_VF610=y
-CONFIG_SYS_TEXT_BASE=0x3f401000
+CONFIG_TEXT_BASE=0x3f401000
 CONFIG_SYS_MALLOC_LEN=0x0220000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x20000
diff --git a/configs/comtrend_ar5315u_ram_defconfig b/configs/comtrend_ar5315u_ram_defconfig
index 013ce0a1374..b7b5865c02c 100644
--- a/configs/comtrend_ar5315u_ram_defconfig
+++ b/configs/comtrend_ar5315u_ram_defconfig
@@ -1,6 +1,6 @@
 CONFIG_MIPS=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
-CONFIG_SYS_TEXT_BASE=0x80010000
+CONFIG_TEXT_BASE=0x80010000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
 CONFIG_DM_GPIO=y
diff --git a/configs/comtrend_ar5387un_ram_defconfig b/configs/comtrend_ar5387un_ram_defconfig
index 052e0ac541e..f1647a0c8f6 100644
--- a/configs/comtrend_ar5387un_ram_defconfig
+++ b/configs/comtrend_ar5387un_ram_defconfig
@@ -1,6 +1,6 @@
 CONFIG_MIPS=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
-CONFIG_SYS_TEXT_BASE=0x80010000
+CONFIG_TEXT_BASE=0x80010000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
 CONFIG_DM_GPIO=y
diff --git a/configs/comtrend_ct5361_ram_defconfig b/configs/comtrend_ct5361_ram_defconfig
index 608a888015b..e2f44d552e9 100644
--- a/configs/comtrend_ct5361_ram_defconfig
+++ b/configs/comtrend_ct5361_ram_defconfig
@@ -1,6 +1,6 @@
 CONFIG_MIPS=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
-CONFIG_SYS_TEXT_BASE=0x80010000
+CONFIG_TEXT_BASE=0x80010000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
 CONFIG_DM_GPIO=y
diff --git a/configs/comtrend_vr3032u_ram_defconfig b/configs/comtrend_vr3032u_ram_defconfig
index 7f6573b73f8..c92059d3457 100644
--- a/configs/comtrend_vr3032u_ram_defconfig
+++ b/configs/comtrend_vr3032u_ram_defconfig
@@ -1,6 +1,6 @@
 CONFIG_MIPS=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
-CONFIG_SYS_TEXT_BASE=0x80010000
+CONFIG_TEXT_BASE=0x80010000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
 CONFIG_DM_GPIO=y
diff --git a/configs/comtrend_wap5813n_ram_defconfig b/configs/comtrend_wap5813n_ram_defconfig
index 09f62cb7d25..0663418fb7b 100644
--- a/configs/comtrend_wap5813n_ram_defconfig
+++ b/configs/comtrend_wap5813n_ram_defconfig
@@ -1,6 +1,6 @@
 CONFIG_MIPS=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
-CONFIG_SYS_TEXT_BASE=0x80010000
+CONFIG_TEXT_BASE=0x80010000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
 CONFIG_DM_GPIO=y
diff --git a/configs/conga-qeval20-qa3-e3845-internal-uart_defconfig b/configs/conga-qeval20-qa3-e3845-internal-uart_defconfig
index 8b6957da162..0d904675f73 100644
--- a/configs/conga-qeval20-qa3-e3845-internal-uart_defconfig
+++ b/configs/conga-qeval20-qa3-e3845-internal-uart_defconfig
@@ -1,5 +1,5 @@
 CONFIG_X86=y
-CONFIG_SYS_TEXT_BASE=0xFFF00000
+CONFIG_TEXT_BASE=0xFFF00000
 CONFIG_NR_DRAM_BANKS=8
 CONFIG_ENV_SIZE=0x1000
 CONFIG_ENV_OFFSET=0x6EF000
diff --git a/configs/conga-qeval20-qa3-e3845_defconfig b/configs/conga-qeval20-qa3-e3845_defconfig
index 286abe2f829..6fed3f2ecda 100644
--- a/configs/conga-qeval20-qa3-e3845_defconfig
+++ b/configs/conga-qeval20-qa3-e3845_defconfig
@@ -1,5 +1,5 @@
 CONFIG_X86=y
-CONFIG_SYS_TEXT_BASE=0xFFF00000
+CONFIG_TEXT_BASE=0xFFF00000
 CONFIG_NR_DRAM_BANKS=8
 CONFIG_ENV_SIZE=0x1000
 CONFIG_ENV_OFFSET=0x6EF000
diff --git a/configs/controlcenterdc_defconfig b/configs/controlcenterdc_defconfig
index 5efb5933938..e8fb032bbae 100644
--- a/configs/controlcenterdc_defconfig
+++ b/configs/controlcenterdc_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_MVEBU=y
-CONFIG_SYS_TEXT_BASE=0x00800000
+CONFIG_TEXT_BASE=0x00800000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/coreboot64_defconfig b/configs/coreboot64_defconfig
index a42fc3974aa..20c0c181696 100644
--- a/configs/coreboot64_defconfig
+++ b/configs/coreboot64_defconfig
@@ -1,5 +1,5 @@
 CONFIG_X86=y
-CONFIG_SYS_TEXT_BASE=0x1120000
+CONFIG_TEXT_BASE=0x1120000
 CONFIG_NR_DRAM_BANKS=8
 CONFIG_ENV_SIZE=0x1000
 CONFIG_DEFAULT_DEVICE_TREE="coreboot"
diff --git a/configs/coreboot_defconfig b/configs/coreboot_defconfig
index fcd48148f12..d8c5be66ad7 100644
--- a/configs/coreboot_defconfig
+++ b/configs/coreboot_defconfig
@@ -1,5 +1,5 @@
 CONFIG_X86=y
-CONFIG_SYS_TEXT_BASE=0x1110000
+CONFIG_TEXT_BASE=0x1110000
 CONFIG_NR_DRAM_BANKS=8
 CONFIG_ENV_SIZE=0x1000
 CONFIG_DEFAULT_DEVICE_TREE="coreboot"
diff --git a/configs/corstone1000_defconfig b/configs/corstone1000_defconfig
index ed2e0fe70a7..dddfa275076 100644
--- a/configs/corstone1000_defconfig
+++ b/configs/corstone1000_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_TARGET_CORSTONE1000=y
-CONFIG_SYS_TEXT_BASE=0x80000000
+CONFIG_TEXT_BASE=0x80000000
 CONFIG_SYS_MALLOC_LEN=0x2000000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_DEFAULT_DEVICE_TREE="corstone1000-mps3"
diff --git a/configs/cortina_presidio-asic-base_defconfig b/configs/cortina_presidio-asic-base_defconfig
index 1b7df4d0342..168d5d9bcbd 100644
--- a/configs/cortina_presidio-asic-base_defconfig
+++ b/configs/cortina_presidio-asic-base_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 # CONFIG_SYS_ARCH_TIMER is not set
 CONFIG_TARGET_PRESIDIO_ASIC=y
-CONFIG_SYS_TEXT_BASE=0x04000000
+CONFIG_TEXT_BASE=0x04000000
 CONFIG_SYS_MALLOC_LEN=0x820000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/cortina_presidio-asic-emmc_defconfig b/configs/cortina_presidio-asic-emmc_defconfig
index 73eb4482e33..00aa7519e85 100644
--- a/configs/cortina_presidio-asic-emmc_defconfig
+++ b/configs/cortina_presidio-asic-emmc_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 # CONFIG_SYS_ARCH_TIMER is not set
 CONFIG_TARGET_PRESIDIO_ASIC=y
-CONFIG_SYS_TEXT_BASE=0x04000000
+CONFIG_TEXT_BASE=0x04000000
 CONFIG_SYS_MALLOC_LEN=0x820000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/cortina_presidio-asic-pnand_defconfig b/configs/cortina_presidio-asic-pnand_defconfig
index 1a49eb0e480..48d63038c06 100644
--- a/configs/cortina_presidio-asic-pnand_defconfig
+++ b/configs/cortina_presidio-asic-pnand_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 # CONFIG_SYS_ARCH_TIMER is not set
 CONFIG_TARGET_PRESIDIO_ASIC=y
-CONFIG_SYS_TEXT_BASE=0x04000000
+CONFIG_TEXT_BASE=0x04000000
 CONFIG_SYS_MALLOC_LEN=0x820000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/corvus_defconfig b/configs/corvus_defconfig
index 971372c695e..c8b4eb4d287 100644
--- a/configs/corvus_defconfig
+++ b/configs/corvus_defconfig
@@ -5,7 +5,7 @@ CONFIG_SYS_THUMB_BUILD=y
 # CONFIG_SPL_USE_ARCH_MEMCPY is not set
 # CONFIG_SPL_USE_ARCH_MEMSET is not set
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x72000000
+CONFIG_TEXT_BASE=0x72000000
 CONFIG_SYS_MALLOC_LEN=0x460000
 CONFIG_SYS_MALLOC_F_LEN=0x800
 CONFIG_TARGET_CORVUS=y
diff --git a/configs/cougarcanyon2_defconfig b/configs/cougarcanyon2_defconfig
index 7ee0cb746e4..c9afb9dc96c 100644
--- a/configs/cougarcanyon2_defconfig
+++ b/configs/cougarcanyon2_defconfig
@@ -1,5 +1,5 @@
 CONFIG_X86=y
-CONFIG_SYS_TEXT_BASE=0xFFE00000
+CONFIG_TEXT_BASE=0xFFE00000
 CONFIG_NR_DRAM_BANKS=8
 CONFIG_ENV_SIZE=0x1000
 CONFIG_ENV_OFFSET=0x5FF000
diff --git a/configs/crownbay_defconfig b/configs/crownbay_defconfig
index fdd0d2badb0..4521172f42b 100644
--- a/configs/crownbay_defconfig
+++ b/configs/crownbay_defconfig
@@ -1,5 +1,5 @@
 CONFIG_X86=y
-CONFIG_SYS_TEXT_BASE=0xFFF00000
+CONFIG_TEXT_BASE=0xFFF00000
 CONFIG_NR_DRAM_BANKS=8
 CONFIG_ENV_SIZE=0x1000
 CONFIG_ENV_OFFSET=0x0
diff --git a/configs/crs305-1g-4s-bit_defconfig b/configs/crs305-1g-4s-bit_defconfig
index 463f474a8fb..6ff40e6d63c 100644
--- a/configs/crs305-1g-4s-bit_defconfig
+++ b/configs/crs305-1g-4s-bit_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_MVEBU=y
 CONFIG_SYS_KWD_CONFIG="board/mikrotik/crs3xx-98dx3236/kwbimage.cfg"
-CONFIG_SYS_TEXT_BASE=0x00800000
+CONFIG_TEXT_BASE=0x00800000
 CONFIG_TARGET_CRS3XX_98DX3236=y
 CONFIG_ENV_SIZE=0x10000
 CONFIG_ENV_OFFSET=0x1F0000
diff --git a/configs/crs305-1g-4s_defconfig b/configs/crs305-1g-4s_defconfig
index 84d23a24cc8..f190f2d801b 100644
--- a/configs/crs305-1g-4s_defconfig
+++ b/configs/crs305-1g-4s_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_MVEBU=y
 CONFIG_SYS_KWD_CONFIG="board/mikrotik/crs3xx-98dx3236/kwbimage.cfg"
-CONFIG_SYS_TEXT_BASE=0x00800000
+CONFIG_TEXT_BASE=0x00800000
 CONFIG_TARGET_CRS3XX_98DX3236=y
 CONFIG_ENV_SIZE=0x10000
 CONFIG_ENV_OFFSET=0x1F0000
diff --git a/configs/crs326-24g-2s-bit_defconfig b/configs/crs326-24g-2s-bit_defconfig
index 1eb70e5a321..cf0b00dd7b7 100644
--- a/configs/crs326-24g-2s-bit_defconfig
+++ b/configs/crs326-24g-2s-bit_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_MVEBU=y
 CONFIG_SYS_KWD_CONFIG="board/mikrotik/crs3xx-98dx3236/kwbimage.cfg"
-CONFIG_SYS_TEXT_BASE=0x00800000
+CONFIG_TEXT_BASE=0x00800000
 CONFIG_TARGET_CRS3XX_98DX3236=y
 CONFIG_ENV_SIZE=0x10000
 CONFIG_ENV_OFFSET=0x1F0000
diff --git a/configs/crs326-24g-2s_defconfig b/configs/crs326-24g-2s_defconfig
index 44cb0b0663b..96ec5b80131 100644
--- a/configs/crs326-24g-2s_defconfig
+++ b/configs/crs326-24g-2s_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_MVEBU=y
 CONFIG_SYS_KWD_CONFIG="board/mikrotik/crs3xx-98dx3236/kwbimage.cfg"
-CONFIG_SYS_TEXT_BASE=0x00800000
+CONFIG_TEXT_BASE=0x00800000
 CONFIG_TARGET_CRS3XX_98DX3236=y
 CONFIG_ENV_SIZE=0x10000
 CONFIG_ENV_OFFSET=0x1F0000
diff --git a/configs/crs328-4c-20s-4s-bit_defconfig b/configs/crs328-4c-20s-4s-bit_defconfig
index 95008cf1cb1..6f91a9947ff 100644
--- a/configs/crs328-4c-20s-4s-bit_defconfig
+++ b/configs/crs328-4c-20s-4s-bit_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_MVEBU=y
 CONFIG_SYS_KWD_CONFIG="board/mikrotik/crs3xx-98dx3236/kwbimage.cfg"
-CONFIG_SYS_TEXT_BASE=0x00800000
+CONFIG_TEXT_BASE=0x00800000
 CONFIG_TARGET_CRS3XX_98DX3236=y
 CONFIG_ENV_SIZE=0x10000
 CONFIG_ENV_OFFSET=0x1F0000
diff --git a/configs/crs328-4c-20s-4s_defconfig b/configs/crs328-4c-20s-4s_defconfig
index 2f6cade9bdd..a51da7a134a 100644
--- a/configs/crs328-4c-20s-4s_defconfig
+++ b/configs/crs328-4c-20s-4s_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_MVEBU=y
 CONFIG_SYS_KWD_CONFIG="board/mikrotik/crs3xx-98dx3236/kwbimage.cfg"
-CONFIG_SYS_TEXT_BASE=0x00800000
+CONFIG_TEXT_BASE=0x00800000
 CONFIG_TARGET_CRS3XX_98DX3236=y
 CONFIG_ENV_SIZE=0x10000
 CONFIG_ENV_OFFSET=0x1F0000
diff --git a/configs/d2net_v2_defconfig b/configs/d2net_v2_defconfig
index f2703189dcd..5ff643bd94f 100644
--- a/configs/d2net_v2_defconfig
+++ b/configs/d2net_v2_defconfig
@@ -4,7 +4,7 @@ CONFIG_SYS_DCACHE_OFF=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_KIRKWOOD=y
 CONFIG_SYS_KWD_CONFIG="board/LaCie/net2big_v2/kwbimage.cfg"
-CONFIG_SYS_TEXT_BASE=0x600000
+CONFIG_TEXT_BASE=0x600000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_TARGET_NET2BIG_V2=y
 CONFIG_ENV_SIZE=0x1000
diff --git a/configs/da850evm_defconfig b/configs/da850evm_defconfig
index ebf585d8051..5973da1d85a 100644
--- a/configs/da850evm_defconfig
+++ b/configs/da850evm_defconfig
@@ -3,7 +3,7 @@ CONFIG_SKIP_LOWLEVEL_INIT_ONLY=y
 CONFIG_SPL_SKIP_LOWLEVEL_INIT_ONLY=y
 CONFIG_SYS_THUMB_BUILD=y
 CONFIG_ARCH_DAVINCI=y
-CONFIG_SYS_TEXT_BASE=0xc1080000
+CONFIG_TEXT_BASE=0xc1080000
 CONFIG_SYS_MALLOC_LEN=0x110000
 CONFIG_SYS_MALLOC_F_LEN=0x800
 CONFIG_TARGET_DA850EVM=y
diff --git a/configs/da850evm_direct_nor_defconfig b/configs/da850evm_direct_nor_defconfig
index a616d417afb..e26af03d2d6 100644
--- a/configs/da850evm_direct_nor_defconfig
+++ b/configs/da850evm_direct_nor_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT_ONLY=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_DAVINCI=y
-CONFIG_SYS_TEXT_BASE=0x60000000
+CONFIG_TEXT_BASE=0x60000000
 CONFIG_SYS_MALLOC_LEN=0x110000
 CONFIG_SYS_MALLOC_F_LEN=0x800
 CONFIG_TARGET_DA850EVM=y
diff --git a/configs/da850evm_nand_defconfig b/configs/da850evm_nand_defconfig
index 4bbfb328f8e..22f7a7743b3 100644
--- a/configs/da850evm_nand_defconfig
+++ b/configs/da850evm_nand_defconfig
@@ -3,7 +3,7 @@ CONFIG_SKIP_LOWLEVEL_INIT_ONLY=y
 CONFIG_SPL_SKIP_LOWLEVEL_INIT_ONLY=y
 CONFIG_SYS_THUMB_BUILD=y
 CONFIG_ARCH_DAVINCI=y
-CONFIG_SYS_TEXT_BASE=0xc1080000
+CONFIG_TEXT_BASE=0xc1080000
 CONFIG_SYS_MALLOC_LEN=0x110000
 CONFIG_SYS_MALLOC_F_LEN=0x800
 CONFIG_TARGET_DA850EVM=y
diff --git a/configs/dalmore_defconfig b/configs/dalmore_defconfig
index 2fef3a4daa2..cc46f4eda41 100644
--- a/configs/dalmore_defconfig
+++ b/configs/dalmore_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SYS_L2CACHE_OFF=y
 CONFIG_ARCH_TEGRA=y
-CONFIG_SYS_TEXT_BASE=0x80110000
+CONFIG_TEXT_BASE=0x80110000
 CONFIG_SYS_MALLOC_LEN=0x2500000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/db-88f6720_defconfig b/configs/db-88f6720_defconfig
index c08203e030a..bb3e524b90a 100644
--- a/configs/db-88f6720_defconfig
+++ b/configs/db-88f6720_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_MVEBU=y
-CONFIG_SYS_TEXT_BASE=0x00800000
+CONFIG_TEXT_BASE=0x00800000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
 CONFIG_NR_DRAM_BANKS=2
diff --git a/configs/db-88f6820-amc_defconfig b/configs/db-88f6820-amc_defconfig
index 07e0b1b6f4a..b33bb66b595 100644
--- a/configs/db-88f6820-amc_defconfig
+++ b/configs/db-88f6820-amc_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_MVEBU=y
-CONFIG_SYS_TEXT_BASE=0x00800000
+CONFIG_TEXT_BASE=0x00800000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
 CONFIG_NR_DRAM_BANKS=2
diff --git a/configs/db-88f6820-gp_defconfig b/configs/db-88f6820-gp_defconfig
index 390f229e58a..cf42e3b6014 100644
--- a/configs/db-88f6820-gp_defconfig
+++ b/configs/db-88f6820-gp_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_MVEBU=y
-CONFIG_SYS_TEXT_BASE=0x00800000
+CONFIG_TEXT_BASE=0x00800000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
 CONFIG_NR_DRAM_BANKS=2
diff --git a/configs/db-mv784mp-gp_defconfig b/configs/db-mv784mp-gp_defconfig
index 55efa373285..ace34007405 100644
--- a/configs/db-mv784mp-gp_defconfig
+++ b/configs/db-mv784mp-gp_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_MVEBU=y
-CONFIG_SYS_TEXT_BASE=0x00800000
+CONFIG_TEXT_BASE=0x00800000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
 CONFIG_NR_DRAM_BANKS=2
diff --git a/configs/db-xc3-24g4xg_defconfig b/configs/db-xc3-24g4xg_defconfig
index 995835a96b3..0555448e6bb 100644
--- a/configs/db-xc3-24g4xg_defconfig
+++ b/configs/db-xc3-24g4xg_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_MVEBU=y
 CONFIG_SYS_KWD_CONFIG="board/Marvell/db-xc3-24g4xg/kwbimage.cfg"
-CONFIG_SYS_TEXT_BASE=0x00800000
+CONFIG_TEXT_BASE=0x00800000
 CONFIG_TARGET_DB_XC3_24G4XG=y
 CONFIG_ENV_SIZE=0x10000
 CONFIG_ENV_OFFSET=0x100000
diff --git a/configs/deneb_defconfig b/configs/deneb_defconfig
index 2497b5d9222..cb4dd332024 100644
--- a/configs/deneb_defconfig
+++ b/configs/deneb_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_IMX8=y
-CONFIG_SYS_TEXT_BASE=0x80020000
+CONFIG_TEXT_BASE=0x80020000
 CONFIG_SYS_MALLOC_LEN=0x2800000
 CONFIG_SYS_MALLOC_F_LEN=0x4000
 CONFIG_SPL_GPIO=y
diff --git a/configs/devkit3250_defconfig b/configs/devkit3250_defconfig
index 744ffbd9433..1232ca576bb 100644
--- a/configs/devkit3250_defconfig
+++ b/configs/devkit3250_defconfig
@@ -4,7 +4,7 @@ CONFIG_SYS_ICACHE_OFF=y
 CONFIG_SYS_DCACHE_OFF=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_LPC32XX=y
-CONFIG_SYS_TEXT_BASE=0x83F00000
+CONFIG_TEXT_BASE=0x83F00000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/devkit8000_defconfig b/configs/devkit8000_defconfig
index 9244787fb7d..2c3dc314c3e 100644
--- a/configs/devkit8000_defconfig
+++ b/configs/devkit8000_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_OMAP2PLUS=y
-CONFIG_SYS_TEXT_BASE=0x80100000
+CONFIG_TEXT_BASE=0x80100000
 CONFIG_SYS_MALLOC_LEN=0x40000
 CONFIG_SYS_MALLOC_F_LEN=0x4000
 CONFIG_NR_DRAM_BANKS=2
diff --git a/configs/dfi-bt700-q7x-151_defconfig b/configs/dfi-bt700-q7x-151_defconfig
index 35e2c1a326f..f9b1bae4130 100644
--- a/configs/dfi-bt700-q7x-151_defconfig
+++ b/configs/dfi-bt700-q7x-151_defconfig
@@ -1,5 +1,5 @@
 CONFIG_X86=y
-CONFIG_SYS_TEXT_BASE=0xFFF00000
+CONFIG_TEXT_BASE=0xFFF00000
 CONFIG_NR_DRAM_BANKS=8
 CONFIG_ENV_SIZE=0x1000
 CONFIG_ENV_OFFSET=0x6EF000
diff --git a/configs/dh_imx6_defconfig b/configs/dh_imx6_defconfig
index c7fb2c67a7f..300f95edff6 100644
--- a/configs/dh_imx6_defconfig
+++ b/configs/dh_imx6_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SPL_SYS_L2_PL310=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x17800000
+CONFIG_TEXT_BASE=0x17800000
 CONFIG_SYS_MALLOC_F_LEN=0x1000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/display5_defconfig b/configs/display5_defconfig
index 29397cb3fbd..fbd1e4f7182 100644
--- a/configs/display5_defconfig
+++ b/configs/display5_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x17800000
+CONFIG_TEXT_BASE=0x17800000
 CONFIG_SYS_MALLOC_LEN=0x1000000
 CONFIG_SYS_MALLOC_F_LEN=0x1000
 CONFIG_SPL_GPIO=y
diff --git a/configs/display5_factory_defconfig b/configs/display5_factory_defconfig
index 7ae636738de..c02dfbd9e79 100644
--- a/configs/display5_factory_defconfig
+++ b/configs/display5_factory_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x17800000
+CONFIG_TEXT_BASE=0x17800000
 CONFIG_SYS_MALLOC_LEN=0x1000000
 CONFIG_SYS_MALLOC_F_LEN=0x1000
 CONFIG_SPL_GPIO=y
diff --git a/configs/dns325_defconfig b/configs/dns325_defconfig
index 242cc36fcef..b51bfd8711e 100644
--- a/configs/dns325_defconfig
+++ b/configs/dns325_defconfig
@@ -4,7 +4,7 @@ CONFIG_SYS_DCACHE_OFF=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_KIRKWOOD=y
 CONFIG_SYS_KWD_CONFIG="board/d-link/dns325/kwbimage.cfg"
-CONFIG_SYS_TEXT_BASE=0x600000
+CONFIG_TEXT_BASE=0x600000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_TARGET_DNS325=y
 CONFIG_ENV_SIZE=0x20000
diff --git a/configs/dockstar_defconfig b/configs/dockstar_defconfig
index d43423c45ef..a02dacb7e31 100644
--- a/configs/dockstar_defconfig
+++ b/configs/dockstar_defconfig
@@ -5,7 +5,7 @@ CONFIG_ARCH_CPU_INIT=y
 CONFIG_SYS_THUMB_BUILD=y
 CONFIG_ARCH_KIRKWOOD=y
 CONFIG_SYS_KWD_CONFIG="board/Seagate/dockstar/kwbimage.cfg"
-CONFIG_SYS_TEXT_BASE=0x600000
+CONFIG_TEXT_BASE=0x600000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_TARGET_DOCKSTAR=y
 CONFIG_ENV_SIZE=0x20000
diff --git a/configs/draco_defconfig b/configs/draco_defconfig
index 148ec5aa02e..cc1fb489eb1 100644
--- a/configs/draco_defconfig
+++ b/configs/draco_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_OMAP2PLUS=y
-CONFIG_SYS_TEXT_BASE=0x80100000
+CONFIG_TEXT_BASE=0x80100000
 CONFIG_SYS_MALLOC_LEN=0x1000000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/dragonboard410c_defconfig b/configs/dragonboard410c_defconfig
index e5e70a2adab..929889a8a7b 100644
--- a/configs/dragonboard410c_defconfig
+++ b/configs/dragonboard410c_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=19000000
 CONFIG_ARCH_SNAPDRAGON=y
-CONFIG_SYS_TEXT_BASE=0x8f600000
+CONFIG_TEXT_BASE=0x8f600000
 CONFIG_SYS_MALLOC_LEN=0x802000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/dragonboard820c_defconfig b/configs/dragonboard820c_defconfig
index e2e2e627aec..b9ddf2174e0 100644
--- a/configs/dragonboard820c_defconfig
+++ b/configs/dragonboard820c_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=19000000
 CONFIG_ARCH_SNAPDRAGON=y
-CONFIG_SYS_TEXT_BASE=0x80080000
+CONFIG_TEXT_BASE=0x80080000
 CONFIG_SYS_MALLOC_LEN=0x804000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x4000
diff --git a/configs/dreamplug_defconfig b/configs/dreamplug_defconfig
index 24090c81aaf..57edd6b8341 100644
--- a/configs/dreamplug_defconfig
+++ b/configs/dreamplug_defconfig
@@ -4,7 +4,7 @@ CONFIG_SYS_DCACHE_OFF=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_KIRKWOOD=y
 CONFIG_SYS_KWD_CONFIG="board/Marvell/dreamplug/kwbimage.cfg"
-CONFIG_SYS_TEXT_BASE=0x600000
+CONFIG_TEXT_BASE=0x600000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_TARGET_DREAMPLUG=y
 CONFIG_ENV_SIZE=0x1000
diff --git a/configs/ds109_defconfig b/configs/ds109_defconfig
index db52e5deca3..d334bd7c642 100644
--- a/configs/ds109_defconfig
+++ b/configs/ds109_defconfig
@@ -7,7 +7,7 @@ CONFIG_SUPPORT_PASSING_ATAGS=y
 CONFIG_CMDLINE_TAG=y
 CONFIG_INITRD_TAG=y
 CONFIG_SYS_KWD_CONFIG="board/Synology/ds109/kwbimage.cfg"
-CONFIG_SYS_TEXT_BASE=0x600000
+CONFIG_TEXT_BASE=0x600000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_TARGET_DS109=y
 CONFIG_ENV_SIZE=0x10000
diff --git a/configs/ds414_defconfig b/configs/ds414_defconfig
index 0577ac22bce..1b7e36be964 100644
--- a/configs/ds414_defconfig
+++ b/configs/ds414_defconfig
@@ -4,7 +4,7 @@ CONFIG_ARCH_MVEBU=y
 CONFIG_SUPPORT_PASSING_ATAGS=y
 CONFIG_CMDLINE_TAG=y
 CONFIG_INITRD_TAG=y
-CONFIG_SYS_TEXT_BASE=0x00800000
+CONFIG_TEXT_BASE=0x00800000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
 CONFIG_NR_DRAM_BANKS=2
diff --git a/configs/durian_defconfig b/configs/durian_defconfig
index 4d2ccab8a07..5461e4f5994 100644
--- a/configs/durian_defconfig
+++ b/configs/durian_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_ARM_SMCCC=y
 CONFIG_TARGET_DURIAN=y
-CONFIG_SYS_TEXT_BASE=0x500000
+CONFIG_TEXT_BASE=0x500000
 CONFIG_SYS_MALLOC_LEN=0x101000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/eDPU_defconfig b/configs/eDPU_defconfig
index 7c3c9779bcc..777ff8953d2 100644
--- a/configs/eDPU_defconfig
+++ b/configs/eDPU_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_MVEBU=y
-CONFIG_SYS_TEXT_BASE=0x00000000
+CONFIG_TEXT_BASE=0x00000000
 CONFIG_TARGET_MVEBU_ARMADA_37XX=y
 CONFIG_MVEBU_EFUSE=y
 CONFIG_ENV_SIZE=0x10000
diff --git a/configs/ea-lpc3250devkitv2_defconfig b/configs/ea-lpc3250devkitv2_defconfig
index 729bd398d70..d24fa85fa9b 100644
--- a/configs/ea-lpc3250devkitv2_defconfig
+++ b/configs/ea-lpc3250devkitv2_defconfig
@@ -4,7 +4,7 @@ CONFIG_SYS_ICACHE_OFF=y
 CONFIG_SYS_DCACHE_OFF=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_LPC32XX=y
-CONFIG_SYS_TEXT_BASE=0x83000000
+CONFIG_TEXT_BASE=0x83000000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_TARGET_EA_LPC3250DEVKITV2=y
diff --git a/configs/eb_cpu5282_defconfig b/configs/eb_cpu5282_defconfig
index b46d1637716..9d3b4d35c2f 100644
--- a/configs/eb_cpu5282_defconfig
+++ b/configs/eb_cpu5282_defconfig
@@ -1,5 +1,5 @@
 CONFIG_M68K=y
-CONFIG_SYS_TEXT_BASE=0xFF000000
+CONFIG_TEXT_BASE=0xFF000000
 CONFIG_ENV_SIZE=0x20000
 CONFIG_ENV_SECT_SIZE=0x20000
 CONFIG_DEFAULT_DEVICE_TREE="eb_cpu5282"
diff --git a/configs/eb_cpu5282_internal_defconfig b/configs/eb_cpu5282_internal_defconfig
index cd0fe911108..27c23c48269 100644
--- a/configs/eb_cpu5282_internal_defconfig
+++ b/configs/eb_cpu5282_internal_defconfig
@@ -1,5 +1,5 @@
 CONFIG_M68K=y
-CONFIG_SYS_TEXT_BASE=0xF0000000
+CONFIG_TEXT_BASE=0xF0000000
 CONFIG_ENV_SIZE=0x20000
 CONFIG_ENV_SECT_SIZE=0x20000
 CONFIG_DEFAULT_DEVICE_TREE="eb_cpu5282_internal"
diff --git a/configs/edison_defconfig b/configs/edison_defconfig
index dbca94525ed..8238a1b78f9 100644
--- a/configs/edison_defconfig
+++ b/configs/edison_defconfig
@@ -1,5 +1,5 @@
 CONFIG_X86=y
-CONFIG_SYS_TEXT_BASE=0x1101000
+CONFIG_TEXT_BASE=0x1101000
 CONFIG_SYS_MALLOC_LEN=0x8000000
 CONFIG_NR_DRAM_BANKS=3
 CONFIG_ENV_SIZE=0x10000
diff --git a/configs/elgin-rv1108_defconfig b/configs/elgin-rv1108_defconfig
index adfc56c6410..a3a96f9526c 100644
--- a/configs/elgin-rv1108_defconfig
+++ b/configs/elgin-rv1108_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x60000000
+CONFIG_TEXT_BASE=0x60000000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_OFFSET=0x3F8000
 CONFIG_DEFAULT_DEVICE_TREE="rv1108-elgin-r1"
diff --git a/configs/emsdp_defconfig b/configs/emsdp_defconfig
index 0578d6d8f22..8c364566d55 100644
--- a/configs/emsdp_defconfig
+++ b/configs/emsdp_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARC=y
 CONFIG_ISA_ARCV2=y
 CONFIG_CPU_ARCEM6=y
 CONFIG_TARGET_EMSDP=y
-CONFIG_SYS_TEXT_BASE=0x00000000
+CONFIG_TEXT_BASE=0x00000000
 CONFIG_SYS_MALLOC_LEN=0x10000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_ENV_SIZE=0x1000
diff --git a/configs/espresso7420_defconfig b/configs/espresso7420_defconfig
index f8841028c50..a003f854af2 100644
--- a/configs/espresso7420_defconfig
+++ b/configs/espresso7420_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_EXYNOS=y
-CONFIG_SYS_TEXT_BASE=0x43E00000
+CONFIG_TEXT_BASE=0x43E00000
 CONFIG_SYS_MALLOC_LEN=0x5004000
 CONFIG_ARCH_EXYNOS7=y
 CONFIG_NR_DRAM_BANKS=8
diff --git a/configs/etamin_defconfig b/configs/etamin_defconfig
index af59b27445b..7bc3ac2a659 100644
--- a/configs/etamin_defconfig
+++ b/configs/etamin_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_OMAP2PLUS=y
-CONFIG_SYS_TEXT_BASE=0x80100000
+CONFIG_TEXT_BASE=0x80100000
 CONFIG_SYS_MALLOC_LEN=0x1000000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/ethernut5_defconfig b/configs/ethernut5_defconfig
index 0de06d5882b..e057dc9969c 100644
--- a/configs/ethernut5_defconfig
+++ b/configs/ethernut5_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x27000000
+CONFIG_TEXT_BASE=0x27000000
 CONFIG_SYS_MALLOC_LEN=0x121000
 CONFIG_TARGET_ETHERNUT5=y
 CONFIG_AT91_EFLASH=y
diff --git a/configs/ev-imx280-nano-x-mb_defconfig b/configs/ev-imx280-nano-x-mb_defconfig
index 8b69b613355..0686916011e 100644
--- a/configs/ev-imx280-nano-x-mb_defconfig
+++ b/configs/ev-imx280-nano-x-mb_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x87800000
+CONFIG_TEXT_BASE=0x87800000
 CONFIG_SYS_MALLOC_LEN=0xa00000
 CONFIG_MX6ULL=y
 CONFIG_TARGET_O4_IMX6ULL_NANO=y
diff --git a/configs/evb-ast2500_defconfig b/configs/evb-ast2500_defconfig
index 3061cbec412..2648ef66da3 100644
--- a/configs/evb-ast2500_defconfig
+++ b/configs/evb-ast2500_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SYS_DCACHE_OFF=y
 CONFIG_ARCH_ASPEED=y
-CONFIG_SYS_TEXT_BASE=0x0
+CONFIG_TEXT_BASE=0x0
 CONFIG_SYS_MALLOC_LEN=0x2000000
 CONFIG_TARGET_EVB_AST2500=y
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/evb-ast2600_defconfig b/configs/evb-ast2600_defconfig
index 1981f895d6d..6a0b4e8c5e1 100644
--- a/configs/evb-ast2600_defconfig
+++ b/configs/evb-ast2600_defconfig
@@ -3,7 +3,7 @@ CONFIG_SYS_DCACHE_OFF=y
 CONFIG_POSITION_INDEPENDENT=y
 CONFIG_SPL_SYS_THUMB_BUILD=y
 CONFIG_ARCH_ASPEED=y
-CONFIG_SYS_TEXT_BASE=0x80000000
+CONFIG_TEXT_BASE=0x80000000
 CONFIG_SYS_MALLOC_LEN=0x2000000
 CONFIG_SYS_MALLOC_F_LEN=0x800
 CONFIG_ASPEED_AST2600=y
diff --git a/configs/evb-px30_defconfig b/configs/evb-px30_defconfig
index 240a044b2ab..bcb20cdd5ec 100644
--- a/configs/evb-px30_defconfig
+++ b/configs/evb-px30_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=24000000
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x00200000
+CONFIG_TEXT_BASE=0x00200000
 CONFIG_SYS_MALLOC_F_LEN=0x2000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/evb-px5_defconfig b/configs/evb-px5_defconfig
index 8112b42c94d..47581ad9da8 100644
--- a/configs/evb-px5_defconfig
+++ b/configs/evb-px5_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=24000000
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x00200000
+CONFIG_TEXT_BASE=0x00200000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_OFFSET=0x3F8000
 CONFIG_DEFAULT_DEVICE_TREE="rk3368-px5-evb"
diff --git a/configs/evb-rk3036_defconfig b/configs/evb-rk3036_defconfig
index 7bc535e68cf..8ef40d847c7 100644
--- a/configs/evb-rk3036_defconfig
+++ b/configs/evb-rk3036_defconfig
@@ -5,7 +5,7 @@ CONFIG_SYS_ARCH_TIMER=y
 # CONFIG_SPL_USE_ARCH_MEMCPY is not set
 # CONFIG_SPL_USE_ARCH_MEMSET is not set
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x60000000
+CONFIG_TEXT_BASE=0x60000000
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_DEFAULT_DEVICE_TREE="rk3036-sdk"
diff --git a/configs/evb-rk3128_defconfig b/configs/evb-rk3128_defconfig
index 6526933274a..b3fe35382f8 100644
--- a/configs/evb-rk3128_defconfig
+++ b/configs/evb-rk3128_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_SYS_ARCH_TIMER=y
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x60000000
+CONFIG_TEXT_BASE=0x60000000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_OFFSET=0x0
 CONFIG_DEFAULT_DEVICE_TREE="rk3128-evb"
diff --git a/configs/evb-rk3229_defconfig b/configs/evb-rk3229_defconfig
index c8833e68ec7..4cb6621bbe5 100644
--- a/configs/evb-rk3229_defconfig
+++ b/configs/evb-rk3229_defconfig
@@ -4,7 +4,7 @@ CONFIG_SPL_SKIP_LOWLEVEL_INIT=y
 CONFIG_TPL_SKIP_LOWLEVEL_INIT=y
 CONFIG_SYS_ARCH_TIMER=y
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x61000000
+CONFIG_TEXT_BASE=0x61000000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_OFFSET=0x3F8000
 CONFIG_DEFAULT_DEVICE_TREE="rk3229-evb"
diff --git a/configs/evb-rk3288_defconfig b/configs/evb-rk3288_defconfig
index 40e235b1ca7..55c115207e5 100644
--- a/configs/evb-rk3288_defconfig
+++ b/configs/evb-rk3288_defconfig
@@ -3,7 +3,7 @@ CONFIG_SPL_SKIP_LOWLEVEL_INIT_ONLY=y
 CONFIG_TPL_SKIP_LOWLEVEL_INIT_ONLY=y
 CONFIG_SYS_ARCH_TIMER=y
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x01000000
+CONFIG_TEXT_BASE=0x01000000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_OFFSET=0x3F8000
 CONFIG_DEFAULT_DEVICE_TREE="rk3288-evb"
diff --git a/configs/evb-rk3308_defconfig b/configs/evb-rk3308_defconfig
index e6a31d3a23a..8502fcc51e6 100644
--- a/configs/evb-rk3308_defconfig
+++ b/configs/evb-rk3308_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=24000000
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x00600000
+CONFIG_TEXT_BASE=0x00600000
 CONFIG_SYS_MALLOC_F_LEN=0x2000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/evb-rk3328_defconfig b/configs/evb-rk3328_defconfig
index 251cc3f3cfa..d8939279652 100644
--- a/configs/evb-rk3328_defconfig
+++ b/configs/evb-rk3328_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=24000000
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x00200000
+CONFIG_TEXT_BASE=0x00200000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_OFFSET=0x3F8000
 CONFIG_DEFAULT_DEVICE_TREE="rk3328-evb"
diff --git a/configs/evb-rk3399_defconfig b/configs/evb-rk3399_defconfig
index b55e0c21e62..a0d36ded0ab 100644
--- a/configs/evb-rk3399_defconfig
+++ b/configs/evb-rk3399_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=24000000
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x00200000
+CONFIG_TEXT_BASE=0x00200000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_OFFSET=0x3F8000
 CONFIG_DEFAULT_DEVICE_TREE="rk3399-evb"
diff --git a/configs/evb-rk3568_defconfig b/configs/evb-rk3568_defconfig
index f24f7bbcc1f..db3acf5be53 100644
--- a/configs/evb-rk3568_defconfig
+++ b/configs/evb-rk3568_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=24000000
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x00a00000
+CONFIG_TEXT_BASE=0x00a00000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
 CONFIG_NR_DRAM_BANKS=2
diff --git a/configs/evb-rv1108_defconfig b/configs/evb-rv1108_defconfig
index fc0f052416d..ede8e1f04bc 100644
--- a/configs/evb-rv1108_defconfig
+++ b/configs/evb-rv1108_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x60000000
+CONFIG_TEXT_BASE=0x60000000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_DEFAULT_DEVICE_TREE="rv1108-evb"
 CONFIG_ROCKCHIP_RV1108=y
diff --git a/configs/ficus-rk3399_defconfig b/configs/ficus-rk3399_defconfig
index 10a60f655bb..d48dcc1a0ec 100644
--- a/configs/ficus-rk3399_defconfig
+++ b/configs/ficus-rk3399_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=24000000
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x00200000
+CONFIG_TEXT_BASE=0x00200000
 CONFIG_ENV_OFFSET=0x3F8000
 CONFIG_DEFAULT_DEVICE_TREE="rk3399-ficus"
 CONFIG_SPL_TEXT_BASE=0xff8c2000
diff --git a/configs/firefly-px30_defconfig b/configs/firefly-px30_defconfig
index 4bc2031086d..38f0ae8dab1 100644
--- a/configs/firefly-px30_defconfig
+++ b/configs/firefly-px30_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=24000000
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x00200000
+CONFIG_TEXT_BASE=0x00200000
 CONFIG_SYS_MALLOC_F_LEN=0x2000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/firefly-rk3288_defconfig b/configs/firefly-rk3288_defconfig
index 1349d6464d1..7d21a5d1aea 100644
--- a/configs/firefly-rk3288_defconfig
+++ b/configs/firefly-rk3288_defconfig
@@ -3,7 +3,7 @@ CONFIG_SPL_SKIP_LOWLEVEL_INIT_ONLY=y
 CONFIG_TPL_SKIP_LOWLEVEL_INIT_ONLY=y
 CONFIG_SYS_ARCH_TIMER=y
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x01000000
+CONFIG_TEXT_BASE=0x01000000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_OFFSET=0x3F8000
 CONFIG_DEFAULT_DEVICE_TREE="rk3288-firefly"
diff --git a/configs/firefly-rk3399_defconfig b/configs/firefly-rk3399_defconfig
index 1d7885abd22..a37870628c6 100644
--- a/configs/firefly-rk3399_defconfig
+++ b/configs/firefly-rk3399_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=24000000
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x00200000
+CONFIG_TEXT_BASE=0x00200000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_OFFSET=0x3F8000
 CONFIG_DEFAULT_DEVICE_TREE="rk3399-firefly"
diff --git a/configs/galileo_defconfig b/configs/galileo_defconfig
index 5ae13d5a1e2..141467bbe35 100644
--- a/configs/galileo_defconfig
+++ b/configs/galileo_defconfig
@@ -1,5 +1,5 @@
 CONFIG_X86=y
-CONFIG_SYS_TEXT_BASE=0xFFF10000
+CONFIG_TEXT_BASE=0xFFF10000
 CONFIG_NR_DRAM_BANKS=8
 CONFIG_ENV_SIZE=0x1000
 CONFIG_ENV_OFFSET=0x0
diff --git a/configs/gardena-smart-gateway-at91sam_defconfig b/configs/gardena-smart-gateway-at91sam_defconfig
index 5574b9d17fe..d5df1c4d33e 100644
--- a/configs/gardena-smart-gateway-at91sam_defconfig
+++ b/configs/gardena-smart-gateway-at91sam_defconfig
@@ -3,7 +3,7 @@ CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_SPL_SKIP_LOWLEVEL_INIT_ONLY=y
 CONFIG_SYS_THUMB_BUILD=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x22900000
+CONFIG_TEXT_BASE=0x22900000
 CONFIG_SYS_MALLOC_LEN=0x1000000
 CONFIG_TARGET_GARDENA_SMART_GATEWAY_AT91SAM=y
 CONFIG_ATMEL_LEGACY=y
diff --git a/configs/gazerbeam_defconfig b/configs/gazerbeam_defconfig
index bee7277483c..be9994b2ee0 100644
--- a/configs/gazerbeam_defconfig
+++ b/configs/gazerbeam_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0xFE000000
+CONFIG_TEXT_BASE=0xFE000000
 CONFIG_SYS_MALLOC_LEN=0x80000
 CONFIG_SYS_MALLOC_F_LEN=0x600
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/ge_b1x5v2_defconfig b/configs/ge_b1x5v2_defconfig
index fefd9901e80..39bc1a7b9ee 100644
--- a/configs/ge_b1x5v2_defconfig
+++ b/configs/ge_b1x5v2_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x17800000
+CONFIG_TEXT_BASE=0x17800000
 CONFIG_SYS_MALLOC_LEN=0xa00000
 CONFIG_SYS_MALLOC_F_LEN=0x4000
 CONFIG_SPL_GPIO=y
diff --git a/configs/ge_bx50v3_defconfig b/configs/ge_bx50v3_defconfig
index b59d0b9c98c..f99f19bbe80 100644
--- a/configs/ge_bx50v3_defconfig
+++ b/configs/ge_bx50v3_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x17800000
+CONFIG_TEXT_BASE=0x17800000
 CONFIG_SYS_MALLOC_LEN=0xa00000
 CONFIG_SYS_MALLOC_F_LEN=0x4000
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/geekbox_defconfig b/configs/geekbox_defconfig
index 2ef8b41c779..1d7832b9591 100644
--- a/configs/geekbox_defconfig
+++ b/configs/geekbox_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=24000000
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x00200000
+CONFIG_TEXT_BASE=0x00200000
 CONFIG_SYS_MALLOC_F_LEN=0x1000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_DEFAULT_DEVICE_TREE="rk3368-geekbox"
diff --git a/configs/giedi_defconfig b/configs/giedi_defconfig
index ab7fa511729..e20830df4a2 100644
--- a/configs/giedi_defconfig
+++ b/configs/giedi_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_IMX8=y
-CONFIG_SYS_TEXT_BASE=0x80020000
+CONFIG_TEXT_BASE=0x80020000
 CONFIG_SYS_MALLOC_LEN=0x2800000
 CONFIG_SYS_MALLOC_F_LEN=0x4000
 CONFIG_SPL_GPIO=y
diff --git a/configs/goflexhome_defconfig b/configs/goflexhome_defconfig
index 0856a31c763..23202fac4fe 100644
--- a/configs/goflexhome_defconfig
+++ b/configs/goflexhome_defconfig
@@ -5,7 +5,7 @@ CONFIG_ARCH_CPU_INIT=y
 CONFIG_SYS_THUMB_BUILD=y
 CONFIG_ARCH_KIRKWOOD=y
 CONFIG_SYS_KWD_CONFIG="board/Seagate/goflexhome/kwbimage.cfg"
-CONFIG_SYS_TEXT_BASE=0x600000
+CONFIG_TEXT_BASE=0x600000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_TARGET_GOFLEXHOME=y
 CONFIG_ENV_SIZE=0x20000
diff --git a/configs/gose_defconfig b/configs/gose_defconfig
index 930755c668f..8e0b2189dfe 100644
--- a/configs/gose_defconfig
+++ b/configs/gose_defconfig
@@ -4,7 +4,7 @@ CONFIG_ENABLE_ARM_SOC_BOOT0_HOOK=y
 # CONFIG_SPL_USE_ARCH_MEMCPY is not set
 # CONFIG_SPL_USE_ARCH_MEMSET is not set
 CONFIG_ARCH_RMOBILE=y
-CONFIG_SYS_TEXT_BASE=0x50000000
+CONFIG_TEXT_BASE=0x50000000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_SYS_MALLOC_F_LEN=0x8000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/grpeach_defconfig b/configs/grpeach_defconfig
index 946d81cc04c..c468446560c 100644
--- a/configs/grpeach_defconfig
+++ b/configs/grpeach_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_RMOBILE=y
-CONFIG_SYS_TEXT_BASE=0x18000000
+CONFIG_TEXT_BASE=0x18000000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/gurnard_defconfig b/configs/gurnard_defconfig
index 01546de8fda..66db268a2cd 100644
--- a/configs/gurnard_defconfig
+++ b/configs/gurnard_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT_ONLY=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x73f00000
+CONFIG_TEXT_BASE=0x73f00000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_TARGET_GURNARD=y
diff --git a/configs/guruplug_defconfig b/configs/guruplug_defconfig
index c5cbce52a9b..ac6208d3b0e 100644
--- a/configs/guruplug_defconfig
+++ b/configs/guruplug_defconfig
@@ -4,7 +4,7 @@ CONFIG_SYS_DCACHE_OFF=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_KIRKWOOD=y
 CONFIG_SYS_KWD_CONFIG="board/Marvell/guruplug/kwbimage.cfg"
-CONFIG_SYS_TEXT_BASE=0x600000
+CONFIG_TEXT_BASE=0x600000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_TARGET_GURUPLUG=y
 CONFIG_ENV_SIZE=0x20000
diff --git a/configs/gwventana_emmc_defconfig b/configs/gwventana_emmc_defconfig
index 01a4d28caf6..ffc688a19c1 100644
--- a/configs/gwventana_emmc_defconfig
+++ b/configs/gwventana_emmc_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x17800000
+CONFIG_TEXT_BASE=0x17800000
 CONFIG_SYS_MALLOC_LEN=0xa00000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/gwventana_gw5904_defconfig b/configs/gwventana_gw5904_defconfig
index fb5870fa580..4171029083b 100644
--- a/configs/gwventana_gw5904_defconfig
+++ b/configs/gwventana_gw5904_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x17800000
+CONFIG_TEXT_BASE=0x17800000
 CONFIG_SYS_MALLOC_LEN=0xa00000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/gwventana_nand_defconfig b/configs/gwventana_nand_defconfig
index 9f38dfabb67..6cf601e92d7 100644
--- a/configs/gwventana_nand_defconfig
+++ b/configs/gwventana_nand_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x17800000
+CONFIG_TEXT_BASE=0x17800000
 CONFIG_SYS_MALLOC_LEN=0xa00000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/harmony_defconfig b/configs/harmony_defconfig
index 0dc0485c6cb..f0912ea2bc9 100644
--- a/configs/harmony_defconfig
+++ b/configs/harmony_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SYS_L2CACHE_OFF=y
 CONFIG_ARCH_TEGRA=y
-CONFIG_SYS_TEXT_BASE=0x00110000
+CONFIG_TEXT_BASE=0x00110000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x2000
 CONFIG_ENV_OFFSET=0x1FFE0000
diff --git a/configs/helios4_defconfig b/configs/helios4_defconfig
index 2bc0b028409..d5d68f98f97 100644
--- a/configs/helios4_defconfig
+++ b/configs/helios4_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_SYS_THUMB_BUILD=y
 CONFIG_ARCH_MVEBU=y
-CONFIG_SYS_TEXT_BASE=0x00800000
+CONFIG_TEXT_BASE=0x00800000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
 CONFIG_NR_DRAM_BANKS=2
diff --git a/configs/highbank_defconfig b/configs/highbank_defconfig
index 4fc73560102..943df631204 100644
--- a/configs/highbank_defconfig
+++ b/configs/highbank_defconfig
@@ -3,7 +3,7 @@ CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_SYS_DCACHE_OFF=y
 CONFIG_SYS_THUMB_BUILD=y
 CONFIG_ARCH_HIGHBANK=y
-CONFIG_SYS_TEXT_BASE=0x00008000
+CONFIG_TEXT_BASE=0x00008000
 CONFIG_SYS_MALLOC_LEN=0x80000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_NR_DRAM_BANKS=2
diff --git a/configs/hihope_rzg2_defconfig b/configs/hihope_rzg2_defconfig
index f9a2e73b11e..086715fbad3 100644
--- a/configs/hihope_rzg2_defconfig
+++ b/configs/hihope_rzg2_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=16666666
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_RMOBILE=y
-CONFIG_SYS_TEXT_BASE=0x50000000
+CONFIG_TEXT_BASE=0x50000000
 CONFIG_SYS_MALLOC_LEN=0x4000000
 CONFIG_ENV_SIZE=0x20000
 CONFIG_ENV_OFFSET=0xFFFE0000
diff --git a/configs/hikey960_defconfig b/configs/hikey960_defconfig
index f212f3b9164..1fd6d6daf15 100644
--- a/configs/hikey960_defconfig
+++ b/configs/hikey960_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=19000000
 CONFIG_TARGET_HIKEY960=y
-CONFIG_SYS_TEXT_BASE=0x1ac98000
+CONFIG_TEXT_BASE=0x1ac98000
 CONFIG_SYS_MALLOC_LEN=0x801000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x1000
diff --git a/configs/hikey_defconfig b/configs/hikey_defconfig
index 59d61faeaf1..9eec9281849 100644
--- a/configs/hikey_defconfig
+++ b/configs/hikey_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=19000000
-CONFIG_SYS_TEXT_BASE=0x35000000
+CONFIG_TEXT_BASE=0x35000000
 CONFIG_SYS_MALLOC_LEN=0x801000
 CONFIG_NR_DRAM_BANKS=6
 CONFIG_ENV_SIZE=0x1000
diff --git a/configs/hsdk_4xd_defconfig b/configs/hsdk_4xd_defconfig
index bcdae7d2e8e..49489e433c4 100644
--- a/configs/hsdk_4xd_defconfig
+++ b/configs/hsdk_4xd_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARC=y
 CONFIG_ISA_ARCV2=y
 CONFIG_TARGET_HSDK=y
 CONFIG_BOARD_HSDK_4XD=y
-CONFIG_SYS_TEXT_BASE=0x81000000
+CONFIG_TEXT_BASE=0x81000000
 CONFIG_SYS_MALLOC_LEN=0x0200000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_DM_GPIO=y
diff --git a/configs/hsdk_defconfig b/configs/hsdk_defconfig
index 943cd696885..705ba6d9667 100644
--- a/configs/hsdk_defconfig
+++ b/configs/hsdk_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARC=y
 CONFIG_ISA_ARCV2=y
 CONFIG_TARGET_HSDK=y
-CONFIG_SYS_TEXT_BASE=0x81000000
+CONFIG_TEXT_BASE=0x81000000
 CONFIG_SYS_MALLOC_LEN=0x0200000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_DM_GPIO=y
diff --git a/configs/huawei_hg556a_ram_defconfig b/configs/huawei_hg556a_ram_defconfig
index 0788cf5c157..aafec58c819 100644
--- a/configs/huawei_hg556a_ram_defconfig
+++ b/configs/huawei_hg556a_ram_defconfig
@@ -1,6 +1,6 @@
 CONFIG_MIPS=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
-CONFIG_SYS_TEXT_BASE=0x80010000
+CONFIG_TEXT_BASE=0x80010000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
 CONFIG_DM_GPIO=y
diff --git a/configs/ib62x0_defconfig b/configs/ib62x0_defconfig
index c77fb0cf9ad..7036d5e4b69 100644
--- a/configs/ib62x0_defconfig
+++ b/configs/ib62x0_defconfig
@@ -4,7 +4,7 @@ CONFIG_SYS_DCACHE_OFF=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_KIRKWOOD=y
 CONFIG_SYS_KWD_CONFIG="board/raidsonic/ib62x0/kwbimage.cfg"
-CONFIG_SYS_TEXT_BASE=0x600000
+CONFIG_TEXT_BASE=0x600000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_TARGET_IB62X0=y
 CONFIG_ENV_SIZE=0x20000
diff --git a/configs/iconnect_defconfig b/configs/iconnect_defconfig
index 1c66b42de81..2228a8de233 100644
--- a/configs/iconnect_defconfig
+++ b/configs/iconnect_defconfig
@@ -5,7 +5,7 @@ CONFIG_ARCH_CPU_INIT=y
 CONFIG_SYS_THUMB_BUILD=y
 CONFIG_ARCH_KIRKWOOD=y
 CONFIG_SYS_KWD_CONFIG="board/iomega/iconnect/kwbimage.cfg"
-CONFIG_SYS_TEXT_BASE=0x600000
+CONFIG_TEXT_BASE=0x600000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_TARGET_ICONNECT=y
 CONFIG_ENV_SIZE=0x20000
diff --git a/configs/imx28_xea_defconfig b/configs/imx28_xea_defconfig
index d7e103daa1e..2581151e5bf 100644
--- a/configs/imx28_xea_defconfig
+++ b/configs/imx28_xea_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SPL_SYS_THUMB_BUILD=y
 CONFIG_ARCH_MX28=y
-CONFIG_SYS_TEXT_BASE=0x40002000
+CONFIG_TEXT_BASE=0x40002000
 CONFIG_SYS_MALLOC_F_LEN=0x800
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/imx28_xea_sb_defconfig b/configs/imx28_xea_sb_defconfig
index fd1e9fdc72e..d1098237c25 100644
--- a/configs/imx28_xea_sb_defconfig
+++ b/configs/imx28_xea_sb_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SPL_SYS_THUMB_BUILD=y
 CONFIG_ARCH_MX28=y
-CONFIG_SYS_TEXT_BASE=0x40002000
+CONFIG_TEXT_BASE=0x40002000
 CONFIG_SYS_MALLOC_F_LEN=0x800
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/imx6dl_icore_nand_defconfig b/configs/imx6dl_icore_nand_defconfig
index 51c4a489e6d..c5da855a704 100644
--- a/configs/imx6dl_icore_nand_defconfig
+++ b/configs/imx6dl_icore_nand_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x17800000
+CONFIG_TEXT_BASE=0x17800000
 CONFIG_SYS_MALLOC_LEN=0x1000000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/imx6dl_mamoj_defconfig b/configs/imx6dl_mamoj_defconfig
index 067498d80e3..1f10375ef48 100644
--- a/configs/imx6dl_mamoj_defconfig
+++ b/configs/imx6dl_mamoj_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x17800000
+CONFIG_TEXT_BASE=0x17800000
 CONFIG_SYS_MALLOC_LEN=0x2300000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x20000
diff --git a/configs/imx6q_bosch_acc_defconfig b/configs/imx6q_bosch_acc_defconfig
index 7ed31d6b882..23bd92bcb55 100644
--- a/configs/imx6q_bosch_acc_defconfig
+++ b/configs/imx6q_bosch_acc_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x17780000
+CONFIG_TEXT_BASE=0x17780000
 CONFIG_SYS_MALLOC_LEN=0x01000000
 CONFIG_SYS_MALLOC_F_LEN=0x9000
 CONFIG_SPL_GPIO=y
diff --git a/configs/imx6q_icore_nand_defconfig b/configs/imx6q_icore_nand_defconfig
index 62533f1ac60..7ae5f453629 100644
--- a/configs/imx6q_icore_nand_defconfig
+++ b/configs/imx6q_icore_nand_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x17800000
+CONFIG_TEXT_BASE=0x17800000
 CONFIG_SYS_MALLOC_LEN=0x1000000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/imx6q_logic_defconfig b/configs/imx6q_logic_defconfig
index 98c54c7b347..e5228baaec5 100644
--- a/configs/imx6q_logic_defconfig
+++ b/configs/imx6q_logic_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x17800000
+CONFIG_TEXT_BASE=0x17800000
 CONFIG_SYS_MALLOC_LEN=0xa00000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/imx6qdl_icore_mipi_defconfig b/configs/imx6qdl_icore_mipi_defconfig
index e4b1866a0d0..d90e42c723b 100644
--- a/configs/imx6qdl_icore_mipi_defconfig
+++ b/configs/imx6qdl_icore_mipi_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x17800000
+CONFIG_TEXT_BASE=0x17800000
 CONFIG_SYS_MALLOC_LEN=0x1000000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/imx6qdl_icore_mmc_defconfig b/configs/imx6qdl_icore_mmc_defconfig
index 0ace5d93713..ac73798a422 100644
--- a/configs/imx6qdl_icore_mmc_defconfig
+++ b/configs/imx6qdl_icore_mmc_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x17800000
+CONFIG_TEXT_BASE=0x17800000
 CONFIG_SYS_MALLOC_LEN=0x1000000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/imx6qdl_icore_nand_defconfig b/configs/imx6qdl_icore_nand_defconfig
index 62533f1ac60..7ae5f453629 100644
--- a/configs/imx6qdl_icore_nand_defconfig
+++ b/configs/imx6qdl_icore_nand_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x17800000
+CONFIG_TEXT_BASE=0x17800000
 CONFIG_SYS_MALLOC_LEN=0x1000000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/imx6qdl_icore_rqs_defconfig b/configs/imx6qdl_icore_rqs_defconfig
index d3592a0744c..e497d28ff28 100644
--- a/configs/imx6qdl_icore_rqs_defconfig
+++ b/configs/imx6qdl_icore_rqs_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x17800000
+CONFIG_TEXT_BASE=0x17800000
 CONFIG_SYS_MALLOC_LEN=0x1000000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/imx6ul_geam_mmc_defconfig b/configs/imx6ul_geam_mmc_defconfig
index e5dd7c0f394..0880cc77bf4 100644
--- a/configs/imx6ul_geam_mmc_defconfig
+++ b/configs/imx6ul_geam_mmc_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x87800000
+CONFIG_TEXT_BASE=0x87800000
 CONFIG_SYS_MALLOC_LEN=0x1000000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/imx6ul_geam_nand_defconfig b/configs/imx6ul_geam_nand_defconfig
index f60e4113f24..0b989e64847 100644
--- a/configs/imx6ul_geam_nand_defconfig
+++ b/configs/imx6ul_geam_nand_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x87800000
+CONFIG_TEXT_BASE=0x87800000
 CONFIG_SYS_MALLOC_LEN=0x1000000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/imx6ul_isiot_emmc_defconfig b/configs/imx6ul_isiot_emmc_defconfig
index 3bca92c5b9e..eeb0ef77667 100644
--- a/configs/imx6ul_isiot_emmc_defconfig
+++ b/configs/imx6ul_isiot_emmc_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x87800000
+CONFIG_TEXT_BASE=0x87800000
 CONFIG_SYS_MALLOC_LEN=0x1000000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/imx6ul_isiot_nand_defconfig b/configs/imx6ul_isiot_nand_defconfig
index 70b53fca752..8318197fdef 100644
--- a/configs/imx6ul_isiot_nand_defconfig
+++ b/configs/imx6ul_isiot_nand_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x87800000
+CONFIG_TEXT_BASE=0x87800000
 CONFIG_SYS_MALLOC_LEN=0x1000000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/imx8mm-cl-iot-gate-optee_defconfig b/configs/imx8mm-cl-iot-gate-optee_defconfig
index 9ab217354b6..bb105811c47 100644
--- a/configs/imx8mm-cl-iot-gate-optee_defconfig
+++ b/configs/imx8mm-cl-iot-gate-optee_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_IMX8M=y
-CONFIG_SYS_TEXT_BASE=0x40200000
+CONFIG_TEXT_BASE=0x40200000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/imx8mm-cl-iot-gate_defconfig b/configs/imx8mm-cl-iot-gate_defconfig
index 73d938834a1..548fb7bf7a2 100644
--- a/configs/imx8mm-cl-iot-gate_defconfig
+++ b/configs/imx8mm-cl-iot-gate_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_IMX8M=y
-CONFIG_SYS_TEXT_BASE=0x40200000
+CONFIG_TEXT_BASE=0x40200000
 CONFIG_SYS_MALLOC_LEN=0x2000000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/imx8mm-icore-mx8mm-ctouch2_defconfig b/configs/imx8mm-icore-mx8mm-ctouch2_defconfig
index d3e0b054181..18d605e0446 100644
--- a/configs/imx8mm-icore-mx8mm-ctouch2_defconfig
+++ b/configs/imx8mm-icore-mx8mm-ctouch2_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_IMX8M=y
-CONFIG_SYS_TEXT_BASE=0x40200000
+CONFIG_TEXT_BASE=0x40200000
 CONFIG_SYS_MALLOC_LEN=0x2000000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/imx8mm-icore-mx8mm-edimm2.2_defconfig b/configs/imx8mm-icore-mx8mm-edimm2.2_defconfig
index 29addb5356a..9fe30e2030b 100644
--- a/configs/imx8mm-icore-mx8mm-edimm2.2_defconfig
+++ b/configs/imx8mm-icore-mx8mm-edimm2.2_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_IMX8M=y
-CONFIG_SYS_TEXT_BASE=0x40200000
+CONFIG_TEXT_BASE=0x40200000
 CONFIG_SYS_MALLOC_LEN=0x2000000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/imx8mm-mx8menlo_defconfig b/configs/imx8mm-mx8menlo_defconfig
index 702162f86de..7f5918072fa 100644
--- a/configs/imx8mm-mx8menlo_defconfig
+++ b/configs/imx8mm-mx8menlo_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_IMX8M=y
-CONFIG_SYS_TEXT_BASE=0x40200000
+CONFIG_TEXT_BASE=0x40200000
 CONFIG_SYS_MALLOC_LEN=0x2000000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/imx8mm_beacon_defconfig b/configs/imx8mm_beacon_defconfig
index e37ce01c192..b66f8bfea06 100644
--- a/configs/imx8mm_beacon_defconfig
+++ b/configs/imx8mm_beacon_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_IMX8M=y
-CONFIG_SYS_TEXT_BASE=0x40200000
+CONFIG_TEXT_BASE=0x40200000
 CONFIG_SYS_MALLOC_LEN=0x2000000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/imx8mm_data_modul_edm_sbc_defconfig b/configs/imx8mm_data_modul_edm_sbc_defconfig
index b246fbdc9e8..a18c2ca3ff3 100644
--- a/configs/imx8mm_data_modul_edm_sbc_defconfig
+++ b/configs/imx8mm_data_modul_edm_sbc_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_IMX8M=y
-CONFIG_SYS_TEXT_BASE=0x40200000
+CONFIG_TEXT_BASE=0x40200000
 CONFIG_SYS_MALLOC_LEN=0x1000000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/imx8mm_evk_defconfig b/configs/imx8mm_evk_defconfig
index 7bcedcd51f5..1b86559d3ca 100644
--- a/configs/imx8mm_evk_defconfig
+++ b/configs/imx8mm_evk_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_IMX8M=y
-CONFIG_SYS_TEXT_BASE=0x40200000
+CONFIG_TEXT_BASE=0x40200000
 CONFIG_SYS_MALLOC_LEN=0x2000000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/imx8mm_evk_fspi_defconfig b/configs/imx8mm_evk_fspi_defconfig
index 21fd7e08db1..66e85ed2fcd 100644
--- a/configs/imx8mm_evk_fspi_defconfig
+++ b/configs/imx8mm_evk_fspi_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_IMX8M=y
-CONFIG_SYS_TEXT_BASE=0x40200000
+CONFIG_TEXT_BASE=0x40200000
 CONFIG_SYS_MALLOC_LEN=0x2000000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/imx8mm_venice_defconfig b/configs/imx8mm_venice_defconfig
index dfe2a51722a..01e4229b60e 100644
--- a/configs/imx8mm_venice_defconfig
+++ b/configs/imx8mm_venice_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_IMX8M=y
-CONFIG_SYS_TEXT_BASE=0x40200000
+CONFIG_TEXT_BASE=0x40200000
 CONFIG_SYS_MALLOC_LEN=0x2000000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/imx8mn_beacon_2g_defconfig b/configs/imx8mn_beacon_2g_defconfig
index 613945a9ec6..3f6a42b5bd0 100644
--- a/configs/imx8mn_beacon_2g_defconfig
+++ b/configs/imx8mn_beacon_2g_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_IMX8M=y
-CONFIG_SYS_TEXT_BASE=0x40200000
+CONFIG_TEXT_BASE=0x40200000
 CONFIG_SYS_MALLOC_LEN=0x2000000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/imx8mn_beacon_defconfig b/configs/imx8mn_beacon_defconfig
index cc1583524ba..0d8601ad395 100644
--- a/configs/imx8mn_beacon_defconfig
+++ b/configs/imx8mn_beacon_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_IMX8M=y
-CONFIG_SYS_TEXT_BASE=0x40200000
+CONFIG_TEXT_BASE=0x40200000
 CONFIG_SYS_MALLOC_LEN=0x2000000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/imx8mn_bsh_smm_s2_defconfig b/configs/imx8mn_bsh_smm_s2_defconfig
index 588597f92b9..b695a69ecaa 100644
--- a/configs/imx8mn_bsh_smm_s2_defconfig
+++ b/configs/imx8mn_bsh_smm_s2_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_IMX8M=y
-CONFIG_SYS_TEXT_BASE=0x40200000
+CONFIG_TEXT_BASE=0x40200000
 CONFIG_SYS_MALLOC_LEN=0x2000000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/imx8mn_bsh_smm_s2pro_defconfig b/configs/imx8mn_bsh_smm_s2pro_defconfig
index 5763948feea..34893fc6b8d 100644
--- a/configs/imx8mn_bsh_smm_s2pro_defconfig
+++ b/configs/imx8mn_bsh_smm_s2pro_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_IMX8M=y
-CONFIG_SYS_TEXT_BASE=0x40200000
+CONFIG_TEXT_BASE=0x40200000
 CONFIG_SYS_MALLOC_LEN=0x2000000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/imx8mn_ddr4_evk_defconfig b/configs/imx8mn_ddr4_evk_defconfig
index b99319afa64..c70bb7e6d7d 100644
--- a/configs/imx8mn_ddr4_evk_defconfig
+++ b/configs/imx8mn_ddr4_evk_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_IMX8M=y
-CONFIG_SYS_TEXT_BASE=0x40200000
+CONFIG_TEXT_BASE=0x40200000
 CONFIG_SYS_MALLOC_LEN=0x2000000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/imx8mn_evk_defconfig b/configs/imx8mn_evk_defconfig
index 4bf40eb97d7..b40ffea9789 100644
--- a/configs/imx8mn_evk_defconfig
+++ b/configs/imx8mn_evk_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_IMX8M=y
-CONFIG_SYS_TEXT_BASE=0x40200000
+CONFIG_TEXT_BASE=0x40200000
 CONFIG_SYS_MALLOC_LEN=0x2000000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/imx8mn_var_som_defconfig b/configs/imx8mn_var_som_defconfig
index 8e4f6a419c9..1ff1909e906 100644
--- a/configs/imx8mn_var_som_defconfig
+++ b/configs/imx8mn_var_som_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_IMX8M=y
-CONFIG_SYS_TEXT_BASE=0x40200000
+CONFIG_TEXT_BASE=0x40200000
 CONFIG_SYS_MALLOC_LEN=0x2000000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/imx8mn_venice_defconfig b/configs/imx8mn_venice_defconfig
index fa3821fc3a7..7c09f0b4750 100644
--- a/configs/imx8mn_venice_defconfig
+++ b/configs/imx8mn_venice_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_IMX8M=y
-CONFIG_SYS_TEXT_BASE=0x40200000
+CONFIG_TEXT_BASE=0x40200000
 CONFIG_SYS_MALLOC_LEN=0x2000000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/imx8mp_dhcom_pdk2_defconfig b/configs/imx8mp_dhcom_pdk2_defconfig
index ff8f53d2395..3417658588d 100644
--- a/configs/imx8mp_dhcom_pdk2_defconfig
+++ b/configs/imx8mp_dhcom_pdk2_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_IMX8M=y
-CONFIG_SYS_TEXT_BASE=0x40200000
+CONFIG_TEXT_BASE=0x40200000
 CONFIG_SYS_MALLOC_LEN=0x1000000
 CONFIG_SYS_MALLOC_F_LEN=0x18000
 CONFIG_SPL_GPIO=y
diff --git a/configs/imx8mp_evk_defconfig b/configs/imx8mp_evk_defconfig
index 0be1951e740..f8b903d71e2 100644
--- a/configs/imx8mp_evk_defconfig
+++ b/configs/imx8mp_evk_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_IMX8M=y
-CONFIG_SYS_TEXT_BASE=0x40200000
+CONFIG_TEXT_BASE=0x40200000
 CONFIG_SYS_MALLOC_LEN=0x2000000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/imx8mp_rsb3720a1_4G_defconfig b/configs/imx8mp_rsb3720a1_4G_defconfig
index 378489072f3..487b44be014 100644
--- a/configs/imx8mp_rsb3720a1_4G_defconfig
+++ b/configs/imx8mp_rsb3720a1_4G_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_IMX8M=y
-CONFIG_SYS_TEXT_BASE=0x40200000
+CONFIG_TEXT_BASE=0x40200000
 CONFIG_SYS_MALLOC_LEN=0x2000000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/imx8mp_rsb3720a1_6G_defconfig b/configs/imx8mp_rsb3720a1_6G_defconfig
index 469ba34de0c..a5d73d8c2e7 100644
--- a/configs/imx8mp_rsb3720a1_6G_defconfig
+++ b/configs/imx8mp_rsb3720a1_6G_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_IMX8M=y
-CONFIG_SYS_TEXT_BASE=0x40200000
+CONFIG_TEXT_BASE=0x40200000
 CONFIG_SYS_MALLOC_LEN=0x2000000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/imx8mp_venice_defconfig b/configs/imx8mp_venice_defconfig
index ded9b7ffec8..6c02c7a2ba2 100644
--- a/configs/imx8mp_venice_defconfig
+++ b/configs/imx8mp_venice_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_IMX8M=y
-CONFIG_SYS_TEXT_BASE=0x40200000
+CONFIG_TEXT_BASE=0x40200000
 CONFIG_SYS_MALLOC_LEN=0x2000000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/imx8mq_cm_defconfig b/configs/imx8mq_cm_defconfig
index 74123b257ad..7a92fccd5d7 100644
--- a/configs/imx8mq_cm_defconfig
+++ b/configs/imx8mq_cm_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_IMX8M=y
-CONFIG_SYS_TEXT_BASE=0x40200000
+CONFIG_TEXT_BASE=0x40200000
 CONFIG_SYS_MALLOC_LEN=0x600000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/imx8mq_evk_defconfig b/configs/imx8mq_evk_defconfig
index cf207295e54..252565da11e 100644
--- a/configs/imx8mq_evk_defconfig
+++ b/configs/imx8mq_evk_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_IMX8M=y
-CONFIG_SYS_TEXT_BASE=0x40200000
+CONFIG_TEXT_BASE=0x40200000
 CONFIG_SYS_MALLOC_LEN=0x600000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/imx8mq_phanbell_defconfig b/configs/imx8mq_phanbell_defconfig
index 372cd03ed0d..16cd4cc70c0 100644
--- a/configs/imx8mq_phanbell_defconfig
+++ b/configs/imx8mq_phanbell_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_IMX8M=y
-CONFIG_SYS_TEXT_BASE=0x40200000
+CONFIG_TEXT_BASE=0x40200000
 CONFIG_SYS_MALLOC_LEN=0x600000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/imx8qm_mek_defconfig b/configs/imx8qm_mek_defconfig
index b973b809bef..da27383e687 100644
--- a/configs/imx8qm_mek_defconfig
+++ b/configs/imx8qm_mek_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_IMX8=y
-CONFIG_SYS_TEXT_BASE=0x80020000
+CONFIG_TEXT_BASE=0x80020000
 CONFIG_SYS_MALLOC_LEN=0x2400000
 CONFIG_SYS_MALLOC_F_LEN=0x8000
 CONFIG_SPL_GPIO=y
diff --git a/configs/imx8qm_rom7720_a1_4G_defconfig b/configs/imx8qm_rom7720_a1_4G_defconfig
index 8e1c0712f14..c3c93bfdf8a 100644
--- a/configs/imx8qm_rom7720_a1_4G_defconfig
+++ b/configs/imx8qm_rom7720_a1_4G_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_IMX8=y
-CONFIG_SYS_TEXT_BASE=0x80020000
+CONFIG_TEXT_BASE=0x80020000
 CONFIG_SYS_MALLOC_LEN=0x2800000
 CONFIG_SYS_MALLOC_F_LEN=0x4000
 CONFIG_SPL_GPIO=y
diff --git a/configs/imx8qxp_mek_defconfig b/configs/imx8qxp_mek_defconfig
index 73600c5a8c2..3865eb393f5 100644
--- a/configs/imx8qxp_mek_defconfig
+++ b/configs/imx8qxp_mek_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_IMX8=y
-CONFIG_SYS_TEXT_BASE=0x80020000
+CONFIG_TEXT_BASE=0x80020000
 CONFIG_SYS_MALLOC_LEN=0x2400000
 CONFIG_SYS_MALLOC_F_LEN=0x4000
 CONFIG_SPL_GPIO=y
diff --git a/configs/imx8ulp_evk_defconfig b/configs/imx8ulp_evk_defconfig
index f9198cf7247..962c46965c8 100644
--- a/configs/imx8ulp_evk_defconfig
+++ b/configs/imx8ulp_evk_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_IMX8ULP=y
-CONFIG_SYS_TEXT_BASE=0x80200000
+CONFIG_TEXT_BASE=0x80200000
 CONFIG_SYS_MALLOC_LEN=0x1002000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/imx93_11x11_evk_defconfig b/configs/imx93_11x11_evk_defconfig
index 72ec466b7f2..10e315c77f7 100644
--- a/configs/imx93_11x11_evk_defconfig
+++ b/configs/imx93_11x11_evk_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_IMX9=y
-CONFIG_SYS_TEXT_BASE=0x80200000
+CONFIG_TEXT_BASE=0x80200000
 CONFIG_SYS_MALLOC_LEN=0x2000000
 CONFIG_SYS_MALLOC_F_LEN=0x18000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/imxrt1020-evk_defconfig b/configs/imxrt1020-evk_defconfig
index 4101fd872f6..2ae9067f722 100644
--- a/configs/imxrt1020-evk_defconfig
+++ b/configs/imxrt1020-evk_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_IMXRT=y
-CONFIG_SYS_TEXT_BASE=0x80002000
+CONFIG_TEXT_BASE=0x80002000
 CONFIG_SYS_MALLOC_LEN=0x40000
 CONFIG_SYS_MALLOC_F_LEN=0x8000
 CONFIG_SPL_GPIO=y
diff --git a/configs/imxrt1050-evk_defconfig b/configs/imxrt1050-evk_defconfig
index 9ab4d766225..eb2c27aded9 100644
--- a/configs/imxrt1050-evk_defconfig
+++ b/configs/imxrt1050-evk_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SYS_DCACHE_OFF=y
 # CONFIG_SPL_SYS_DCACHE_OFF is not set
 CONFIG_ARCH_IMXRT=y
-CONFIG_SYS_TEXT_BASE=0x80002000
+CONFIG_TEXT_BASE=0x80002000
 CONFIG_SYS_MALLOC_LEN=0x40000
 CONFIG_SYS_MALLOC_F_LEN=0x8000
 CONFIG_SPL_GPIO=y
diff --git a/configs/inetspace_v2_defconfig b/configs/inetspace_v2_defconfig
index 5ea37d11424..a4c59a60863 100644
--- a/configs/inetspace_v2_defconfig
+++ b/configs/inetspace_v2_defconfig
@@ -4,7 +4,7 @@ CONFIG_SYS_DCACHE_OFF=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_KIRKWOOD=y
 CONFIG_SYS_KWD_CONFIG="board/LaCie/netspace_v2/kwbimage-is2.cfg"
-CONFIG_SYS_TEXT_BASE=0x600000
+CONFIG_TEXT_BASE=0x600000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_TARGET_NETSPACE_V2=y
 CONFIG_ENV_SIZE=0x1000
diff --git a/configs/integratorap_cm720t_defconfig b/configs/integratorap_cm720t_defconfig
index b697e2ac777..e2709ec5218 100644
--- a/configs/integratorap_cm720t_defconfig
+++ b/configs/integratorap_cm720t_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_INTEGRATOR=y
-CONFIG_SYS_TEXT_BASE=0x01000000
+CONFIG_TEXT_BASE=0x01000000
 CONFIG_SYS_MALLOC_LEN=0x28000
 CONFIG_ARCH_INTEGRATOR_AP=y
 CONFIG_CM720T=y
diff --git a/configs/integratorap_cm920t_defconfig b/configs/integratorap_cm920t_defconfig
index 1b5301e6ae4..e8baca158b8 100644
--- a/configs/integratorap_cm920t_defconfig
+++ b/configs/integratorap_cm920t_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_INTEGRATOR=y
-CONFIG_SYS_TEXT_BASE=0x01000000
+CONFIG_TEXT_BASE=0x01000000
 CONFIG_SYS_MALLOC_LEN=0x28000
 CONFIG_ARCH_INTEGRATOR_AP=y
 CONFIG_CM920T=y
diff --git a/configs/integratorap_cm926ejs_defconfig b/configs/integratorap_cm926ejs_defconfig
index 7147827005a..04032c8b946 100644
--- a/configs/integratorap_cm926ejs_defconfig
+++ b/configs/integratorap_cm926ejs_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_INTEGRATOR=y
-CONFIG_SYS_TEXT_BASE=0x01000000
+CONFIG_TEXT_BASE=0x01000000
 CONFIG_SYS_MALLOC_LEN=0x28000
 CONFIG_ARCH_INTEGRATOR_AP=y
 CONFIG_CM926EJ_S=y
diff --git a/configs/integratorap_cm946es_defconfig b/configs/integratorap_cm946es_defconfig
index ddadd128113..3d910d3d48d 100644
--- a/configs/integratorap_cm946es_defconfig
+++ b/configs/integratorap_cm946es_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_INTEGRATOR=y
-CONFIG_SYS_TEXT_BASE=0x01000000
+CONFIG_TEXT_BASE=0x01000000
 CONFIG_SYS_MALLOC_LEN=0x28000
 CONFIG_ARCH_INTEGRATOR_AP=y
 CONFIG_CM946ES=y
diff --git a/configs/integratorcp_cm1136_defconfig b/configs/integratorcp_cm1136_defconfig
index c9623cc6a18..71f399b58c3 100644
--- a/configs/integratorcp_cm1136_defconfig
+++ b/configs/integratorcp_cm1136_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_INTEGRATOR=y
-CONFIG_SYS_TEXT_BASE=0x01000000
+CONFIG_TEXT_BASE=0x01000000
 CONFIG_SYS_MALLOC_LEN=0x22000
 CONFIG_ARCH_INTEGRATOR_CP=y
 CONFIG_CM1136=y
diff --git a/configs/integratorcp_cm920t_defconfig b/configs/integratorcp_cm920t_defconfig
index 64a4b81496c..7585d6d154c 100644
--- a/configs/integratorcp_cm920t_defconfig
+++ b/configs/integratorcp_cm920t_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_INTEGRATOR=y
-CONFIG_SYS_TEXT_BASE=0x01000000
+CONFIG_TEXT_BASE=0x01000000
 CONFIG_SYS_MALLOC_LEN=0x22000
 CONFIG_ARCH_INTEGRATOR_CP=y
 CONFIG_CM920T=y
diff --git a/configs/integratorcp_cm926ejs_defconfig b/configs/integratorcp_cm926ejs_defconfig
index 4a72befd5ae..6f8c1965766 100644
--- a/configs/integratorcp_cm926ejs_defconfig
+++ b/configs/integratorcp_cm926ejs_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_INTEGRATOR=y
-CONFIG_SYS_TEXT_BASE=0x01000000
+CONFIG_TEXT_BASE=0x01000000
 CONFIG_SYS_MALLOC_LEN=0x22000
 CONFIG_ARCH_INTEGRATOR_CP=y
 CONFIG_CM926EJ_S=y
diff --git a/configs/integratorcp_cm946es_defconfig b/configs/integratorcp_cm946es_defconfig
index 9b3fda0b249..6efa39f34d9 100644
--- a/configs/integratorcp_cm946es_defconfig
+++ b/configs/integratorcp_cm946es_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_INTEGRATOR=y
-CONFIG_SYS_TEXT_BASE=0x01000000
+CONFIG_TEXT_BASE=0x01000000
 CONFIG_SYS_MALLOC_LEN=0x22000
 CONFIG_ARCH_INTEGRATOR_CP=y
 CONFIG_CM946ES=y
diff --git a/configs/iot_devkit_defconfig b/configs/iot_devkit_defconfig
index 34eede7cb6d..ddc3a2b651b 100644
--- a/configs/iot_devkit_defconfig
+++ b/configs/iot_devkit_defconfig
@@ -4,7 +4,7 @@ CONFIG_CPU_ARCEM6=y
 CONFIG_SYS_ICACHE_OFF=y
 CONFIG_SYS_DCACHE_OFF=y
 CONFIG_TARGET_IOT_DEVKIT=y
-CONFIG_SYS_TEXT_BASE=0x00000000
+CONFIG_TEXT_BASE=0x00000000
 CONFIG_SYS_MALLOC_LEN=0x10000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_ENV_SIZE=0x1000
diff --git a/configs/jethub_j100_defconfig b/configs/jethub_j100_defconfig
index 87a44d43356..c2651580f87 100644
--- a/configs/jethub_j100_defconfig
+++ b/configs/jethub_j100_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SYS_BOARD="jethub-j100"
 CONFIG_SYS_CONFIG_NAME="jethub"
 CONFIG_ARCH_MESON=y
-CONFIG_SYS_TEXT_BASE=0x01000000
+CONFIG_TEXT_BASE=0x01000000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
 CONFIG_DM_GPIO=y
diff --git a/configs/jethub_j80_defconfig b/configs/jethub_j80_defconfig
index 7ca2e18da33..f3c47a001a6 100644
--- a/configs/jethub_j80_defconfig
+++ b/configs/jethub_j80_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SYS_BOARD="jethub-j80"
 CONFIG_SYS_CONFIG_NAME="jethub"
 CONFIG_ARCH_MESON=y
-CONFIG_SYS_TEXT_BASE=0x01000000
+CONFIG_TEXT_BASE=0x01000000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
 CONFIG_DM_GPIO=y
diff --git a/configs/jetson-tk1_defconfig b/configs/jetson-tk1_defconfig
index f4f0063abcf..11879740999 100644
--- a/configs/jetson-tk1_defconfig
+++ b/configs/jetson-tk1_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SYS_L2CACHE_OFF=y
 CONFIG_ARCH_TEGRA=y
-CONFIG_SYS_TEXT_BASE=0x80110000
+CONFIG_TEXT_BASE=0x80110000
 CONFIG_SYS_MALLOC_LEN=0x2500000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/k2e_evm_defconfig b/configs/k2e_evm_defconfig
index 0789bc927d2..63a3e58ba60 100644
--- a/configs/k2e_evm_defconfig
+++ b/configs/k2e_evm_defconfig
@@ -4,7 +4,7 @@ CONFIG_SPL_SKIP_LOWLEVEL_INIT=y
 CONFIG_SYS_DCACHE_OFF=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_KEYSTONE=y
-CONFIG_SYS_TEXT_BASE=0xC000000
+CONFIG_TEXT_BASE=0xC000000
 CONFIG_SYS_MALLOC_LEN=0x2000000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_TI_COMMON_CMD_OPTIONS=y
diff --git a/configs/k2e_hs_evm_defconfig b/configs/k2e_hs_evm_defconfig
index 4ded49d4f38..56a262017bd 100644
--- a/configs/k2e_hs_evm_defconfig
+++ b/configs/k2e_hs_evm_defconfig
@@ -4,7 +4,7 @@ CONFIG_SYS_DCACHE_OFF=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_KEYSTONE=y
 CONFIG_TI_SECURE_DEVICE=y
-CONFIG_SYS_TEXT_BASE=0xC000060
+CONFIG_TEXT_BASE=0xC000060
 CONFIG_SYS_MALLOC_LEN=0x2000000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_TI_COMMON_CMD_OPTIONS=y
diff --git a/configs/k2g_evm_defconfig b/configs/k2g_evm_defconfig
index f0d106a3b27..551a4895da8 100644
--- a/configs/k2g_evm_defconfig
+++ b/configs/k2g_evm_defconfig
@@ -4,7 +4,7 @@ CONFIG_SPL_SKIP_LOWLEVEL_INIT=y
 CONFIG_SYS_DCACHE_OFF=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_KEYSTONE=y
-CONFIG_SYS_TEXT_BASE=0xC000000
+CONFIG_TEXT_BASE=0xC000000
 CONFIG_SYS_MALLOC_LEN=0x2000000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_TI_COMMON_CMD_OPTIONS=y
diff --git a/configs/k2g_hs_evm_defconfig b/configs/k2g_hs_evm_defconfig
index 41e36f95eda..d1243ba07f5 100644
--- a/configs/k2g_hs_evm_defconfig
+++ b/configs/k2g_hs_evm_defconfig
@@ -4,7 +4,7 @@ CONFIG_SYS_DCACHE_OFF=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_KEYSTONE=y
 CONFIG_TI_SECURE_DEVICE=y
-CONFIG_SYS_TEXT_BASE=0xC000060
+CONFIG_TEXT_BASE=0xC000060
 CONFIG_SYS_MALLOC_LEN=0x2000000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_TI_COMMON_CMD_OPTIONS=y
diff --git a/configs/k2hk_evm_defconfig b/configs/k2hk_evm_defconfig
index e6e71942a7e..5459509a4e2 100644
--- a/configs/k2hk_evm_defconfig
+++ b/configs/k2hk_evm_defconfig
@@ -4,7 +4,7 @@ CONFIG_SPL_SKIP_LOWLEVEL_INIT=y
 CONFIG_SYS_DCACHE_OFF=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_KEYSTONE=y
-CONFIG_SYS_TEXT_BASE=0xC000000
+CONFIG_TEXT_BASE=0xC000000
 CONFIG_SYS_MALLOC_LEN=0x2000000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_TI_COMMON_CMD_OPTIONS=y
diff --git a/configs/k2hk_hs_evm_defconfig b/configs/k2hk_hs_evm_defconfig
index 6b9b982112b..55daa4bb52f 100644
--- a/configs/k2hk_hs_evm_defconfig
+++ b/configs/k2hk_hs_evm_defconfig
@@ -4,7 +4,7 @@ CONFIG_SYS_DCACHE_OFF=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_KEYSTONE=y
 CONFIG_TI_SECURE_DEVICE=y
-CONFIG_SYS_TEXT_BASE=0xC000060
+CONFIG_TEXT_BASE=0xC000060
 CONFIG_SYS_MALLOC_LEN=0x2000000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_TI_COMMON_CMD_OPTIONS=y
diff --git a/configs/k2l_evm_defconfig b/configs/k2l_evm_defconfig
index 18f2ef6dd19..f6ebf086469 100644
--- a/configs/k2l_evm_defconfig
+++ b/configs/k2l_evm_defconfig
@@ -4,7 +4,7 @@ CONFIG_SPL_SKIP_LOWLEVEL_INIT=y
 CONFIG_SYS_DCACHE_OFF=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_KEYSTONE=y
-CONFIG_SYS_TEXT_BASE=0xC000000
+CONFIG_TEXT_BASE=0xC000000
 CONFIG_SYS_MALLOC_LEN=0x2000000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_TI_COMMON_CMD_OPTIONS=y
diff --git a/configs/k2l_hs_evm_defconfig b/configs/k2l_hs_evm_defconfig
index 518b062dc3e..cf8baeb32d7 100644
--- a/configs/k2l_hs_evm_defconfig
+++ b/configs/k2l_hs_evm_defconfig
@@ -4,7 +4,7 @@ CONFIG_SYS_DCACHE_OFF=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_KEYSTONE=y
 CONFIG_TI_SECURE_DEVICE=y
-CONFIG_SYS_TEXT_BASE=0xC000060
+CONFIG_TEXT_BASE=0xC000060
 CONFIG_SYS_MALLOC_LEN=0x2000000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_TI_COMMON_CMD_OPTIONS=y
diff --git a/configs/khadas-edge-captain-rk3399_defconfig b/configs/khadas-edge-captain-rk3399_defconfig
index b0dabfaf431..43aa3d9a4a6 100644
--- a/configs/khadas-edge-captain-rk3399_defconfig
+++ b/configs/khadas-edge-captain-rk3399_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=24000000
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x00200000
+CONFIG_TEXT_BASE=0x00200000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_OFFSET=0x3F8000
 CONFIG_DEFAULT_DEVICE_TREE="rk3399-khadas-edge-captain"
diff --git a/configs/khadas-edge-rk3399_defconfig b/configs/khadas-edge-rk3399_defconfig
index 93a9f0009da..467e478ea4d 100644
--- a/configs/khadas-edge-rk3399_defconfig
+++ b/configs/khadas-edge-rk3399_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=24000000
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x00200000
+CONFIG_TEXT_BASE=0x00200000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_OFFSET=0x3F8000
 CONFIG_DEFAULT_DEVICE_TREE="rk3399-khadas-edge"
diff --git a/configs/khadas-edge-v-rk3399_defconfig b/configs/khadas-edge-v-rk3399_defconfig
index bc540f4c780..a9d218a2ca6 100644
--- a/configs/khadas-edge-v-rk3399_defconfig
+++ b/configs/khadas-edge-v-rk3399_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=24000000
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x00200000
+CONFIG_TEXT_BASE=0x00200000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_OFFSET=0x3F8000
 CONFIG_DEFAULT_DEVICE_TREE="rk3399-khadas-edge-v"
diff --git a/configs/khadas-vim2_defconfig b/configs/khadas-vim2_defconfig
index 5b3aa635aaf..a8d11a83c98 100644
--- a/configs/khadas-vim2_defconfig
+++ b/configs/khadas-vim2_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MESON=y
-CONFIG_SYS_TEXT_BASE=0x01000000
+CONFIG_TEXT_BASE=0x01000000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
 CONFIG_DM_GPIO=y
diff --git a/configs/khadas-vim3_android_ab_defconfig b/configs/khadas-vim3_android_ab_defconfig
index f3e9f11a8ed..bd2462a3298 100644
--- a/configs/khadas-vim3_android_ab_defconfig
+++ b/configs/khadas-vim3_android_ab_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SYS_BOARD="vim3"
 CONFIG_SYS_CONFIG_NAME="khadas-vim3_android"
 CONFIG_ARCH_MESON=y
-CONFIG_SYS_TEXT_BASE=0x01000000
+CONFIG_TEXT_BASE=0x01000000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x10000
 CONFIG_DM_GPIO=y
diff --git a/configs/khadas-vim3_android_defconfig b/configs/khadas-vim3_android_defconfig
index f076b6e4e56..0a16032740e 100644
--- a/configs/khadas-vim3_android_defconfig
+++ b/configs/khadas-vim3_android_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SYS_BOARD="vim3"
 CONFIG_SYS_CONFIG_NAME="khadas-vim3_android"
 CONFIG_ARCH_MESON=y
-CONFIG_SYS_TEXT_BASE=0x01000000
+CONFIG_TEXT_BASE=0x01000000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x10000
 CONFIG_DM_GPIO=y
diff --git a/configs/khadas-vim3_defconfig b/configs/khadas-vim3_defconfig
index 0cf4bac809b..4096e0b4dea 100644
--- a/configs/khadas-vim3_defconfig
+++ b/configs/khadas-vim3_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SYS_BOARD="vim3"
 CONFIG_ARCH_MESON=y
-CONFIG_SYS_TEXT_BASE=0x01000000
+CONFIG_TEXT_BASE=0x01000000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
 CONFIG_DM_GPIO=y
diff --git a/configs/khadas-vim3l_android_ab_defconfig b/configs/khadas-vim3l_android_ab_defconfig
index 828ce6dee9d..1346c8011a6 100644
--- a/configs/khadas-vim3l_android_ab_defconfig
+++ b/configs/khadas-vim3l_android_ab_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SYS_BOARD="vim3"
 CONFIG_SYS_CONFIG_NAME="khadas-vim3l_android"
 CONFIG_ARCH_MESON=y
-CONFIG_SYS_TEXT_BASE=0x01000000
+CONFIG_TEXT_BASE=0x01000000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x10000
 CONFIG_DM_GPIO=y
diff --git a/configs/khadas-vim3l_android_defconfig b/configs/khadas-vim3l_android_defconfig
index ee1fa5c31f8..8237dafc357 100644
--- a/configs/khadas-vim3l_android_defconfig
+++ b/configs/khadas-vim3l_android_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SYS_BOARD="vim3"
 CONFIG_SYS_CONFIG_NAME="khadas-vim3l_android"
 CONFIG_ARCH_MESON=y
-CONFIG_SYS_TEXT_BASE=0x01000000
+CONFIG_TEXT_BASE=0x01000000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x10000
 CONFIG_DM_GPIO=y
diff --git a/configs/khadas-vim3l_defconfig b/configs/khadas-vim3l_defconfig
index f1524f562ac..d58303cb717 100644
--- a/configs/khadas-vim3l_defconfig
+++ b/configs/khadas-vim3l_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SYS_BOARD="vim3"
 CONFIG_ARCH_MESON=y
-CONFIG_SYS_TEXT_BASE=0x01000000
+CONFIG_TEXT_BASE=0x01000000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
 CONFIG_DM_GPIO=y
diff --git a/configs/khadas-vim_defconfig b/configs/khadas-vim_defconfig
index bdabd5dff19..d1ed45ff88e 100644
--- a/configs/khadas-vim_defconfig
+++ b/configs/khadas-vim_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MESON=y
-CONFIG_SYS_TEXT_BASE=0x01000000
+CONFIG_TEXT_BASE=0x01000000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
 CONFIG_DM_GPIO=y
diff --git a/configs/km_kirkwood_128m16_defconfig b/configs/km_kirkwood_128m16_defconfig
index 054038fdd04..958f5d3d3b0 100644
--- a/configs/km_kirkwood_128m16_defconfig
+++ b/configs/km_kirkwood_128m16_defconfig
@@ -4,7 +4,7 @@ CONFIG_SYS_DCACHE_OFF=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_KIRKWOOD=y
 CONFIG_SYS_KWD_CONFIG="board/keymile/km_arm/kwbimage_128M16_1.cfg"
-CONFIG_SYS_TEXT_BASE=0x07d00000
+CONFIG_TEXT_BASE=0x07d00000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_TARGET_KM_KIRKWOOD=y
 # CONFIG_KIRKWOOD_PCIE_INIT is not set
diff --git a/configs/km_kirkwood_defconfig b/configs/km_kirkwood_defconfig
index ac2deeb27c2..f48cb7d06ef 100644
--- a/configs/km_kirkwood_defconfig
+++ b/configs/km_kirkwood_defconfig
@@ -4,7 +4,7 @@ CONFIG_SYS_DCACHE_OFF=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_KIRKWOOD=y
 CONFIG_SYS_KWD_CONFIG="board/keymile/km_arm/kwbimage.cfg"
-CONFIG_SYS_TEXT_BASE=0x07d00000
+CONFIG_TEXT_BASE=0x07d00000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_TARGET_KM_KIRKWOOD=y
 # CONFIG_KIRKWOOD_PCIE_INIT is not set
diff --git a/configs/km_kirkwood_pci_defconfig b/configs/km_kirkwood_pci_defconfig
index 80746791fe3..3902de3b91b 100644
--- a/configs/km_kirkwood_pci_defconfig
+++ b/configs/km_kirkwood_pci_defconfig
@@ -4,7 +4,7 @@ CONFIG_SYS_DCACHE_OFF=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_KIRKWOOD=y
 CONFIG_SYS_KWD_CONFIG="board/keymile/km_arm/kwbimage.cfg"
-CONFIG_SYS_TEXT_BASE=0x07d00000
+CONFIG_TEXT_BASE=0x07d00000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_TARGET_KM_KIRKWOOD=y
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/kmcent2_defconfig b/configs/kmcent2_defconfig
index 00325add541..724d4fe2f5c 100644
--- a/configs/kmcent2_defconfig
+++ b/configs/kmcent2_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0xebf40000
+CONFIG_TEXT_BASE=0xebf40000
 CONFIG_SYS_MALLOC_F_LEN=0x1000
 CONFIG_ENV_SIZE=0x4000
 CONFIG_ENV_SECT_SIZE=0x20000
diff --git a/configs/kmcoge5ne_defconfig b/configs/kmcoge5ne_defconfig
index 34ab31565ca..9b3fee71240 100644
--- a/configs/kmcoge5ne_defconfig
+++ b/configs/kmcoge5ne_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0xF0000000
+CONFIG_TEXT_BASE=0xF0000000
 CONFIG_ENV_SIZE=0x4000
 CONFIG_ENV_SECT_SIZE=0x20000
 CONFIG_DEFAULT_DEVICE_TREE="kmcoge5ne"
diff --git a/configs/kmcoge5un_defconfig b/configs/kmcoge5un_defconfig
index 5766f49d774..a0cf13676ed 100644
--- a/configs/kmcoge5un_defconfig
+++ b/configs/kmcoge5un_defconfig
@@ -4,7 +4,7 @@ CONFIG_SYS_DCACHE_OFF=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_KIRKWOOD=y
 CONFIG_SYS_KWD_CONFIG="board/keymile/km_arm/kwbimage_256M8_1.cfg"
-CONFIG_SYS_TEXT_BASE=0x07d00000
+CONFIG_TEXT_BASE=0x07d00000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_TARGET_KM_KIRKWOOD=y
 # CONFIG_KIRKWOOD_PCIE_INIT is not set
diff --git a/configs/kmeter1_defconfig b/configs/kmeter1_defconfig
index 98f23dbbf17..0aba19bf4f7 100644
--- a/configs/kmeter1_defconfig
+++ b/configs/kmeter1_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0xF0000000
+CONFIG_TEXT_BASE=0xF0000000
 CONFIG_SYS_MALLOC_F_LEN=0x800
 CONFIG_ENV_SIZE=0x4000
 CONFIG_ENV_SECT_SIZE=0x20000
diff --git a/configs/kmnusa_defconfig b/configs/kmnusa_defconfig
index a309acae7dc..ffcca9dc188 100644
--- a/configs/kmnusa_defconfig
+++ b/configs/kmnusa_defconfig
@@ -4,7 +4,7 @@ CONFIG_SYS_DCACHE_OFF=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_KIRKWOOD=y
 CONFIG_SYS_KWD_CONFIG="board/keymile/km_arm/kwbimage_128M16_1.cfg"
-CONFIG_SYS_TEXT_BASE=0x07d00000
+CONFIG_TEXT_BASE=0x07d00000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_TARGET_KM_KIRKWOOD=y
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/kmopti2_defconfig b/configs/kmopti2_defconfig
index 6a6f20890a7..b3f993d5fd0 100644
--- a/configs/kmopti2_defconfig
+++ b/configs/kmopti2_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0xF0000000
+CONFIG_TEXT_BASE=0xF0000000
 CONFIG_ENV_SIZE=0x4000
 CONFIG_ENV_SECT_SIZE=0x20000
 CONFIG_DEFAULT_DEVICE_TREE="kmopti2"
diff --git a/configs/kmsupx5_defconfig b/configs/kmsupx5_defconfig
index d251eba0d04..d3e85c049f9 100644
--- a/configs/kmsupx5_defconfig
+++ b/configs/kmsupx5_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0xF0000000
+CONFIG_TEXT_BASE=0xF0000000
 CONFIG_ENV_SIZE=0x4000
 CONFIG_ENV_SECT_SIZE=0x20000
 CONFIG_DEFAULT_DEVICE_TREE="kmsupm5"
diff --git a/configs/kmsuse2_defconfig b/configs/kmsuse2_defconfig
index de44deb1ad1..5afda41bf79 100644
--- a/configs/kmsuse2_defconfig
+++ b/configs/kmsuse2_defconfig
@@ -4,7 +4,7 @@ CONFIG_SYS_DCACHE_OFF=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_KIRKWOOD=y
 CONFIG_SYS_KWD_CONFIG="board/keymile/km_arm/kwbimage_128M16_1.cfg"
-CONFIG_SYS_TEXT_BASE=0x07d00000
+CONFIG_TEXT_BASE=0x07d00000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_TARGET_KM_KIRKWOOD=y
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/kmtepr2_defconfig b/configs/kmtepr2_defconfig
index 5bb3d9c1160..cf2f59b39b5 100644
--- a/configs/kmtepr2_defconfig
+++ b/configs/kmtepr2_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0xF0000000
+CONFIG_TEXT_BASE=0xF0000000
 CONFIG_ENV_SIZE=0x4000
 CONFIG_ENV_SECT_SIZE=0x20000
 CONFIG_DEFAULT_DEVICE_TREE="kmtepr2"
diff --git a/configs/koelsch_defconfig b/configs/koelsch_defconfig
index ee4bb102a79..92523756642 100644
--- a/configs/koelsch_defconfig
+++ b/configs/koelsch_defconfig
@@ -4,7 +4,7 @@ CONFIG_ENABLE_ARM_SOC_BOOT0_HOOK=y
 # CONFIG_SPL_USE_ARCH_MEMCPY is not set
 # CONFIG_SPL_USE_ARCH_MEMSET is not set
 CONFIG_ARCH_RMOBILE=y
-CONFIG_SYS_TEXT_BASE=0x50000000
+CONFIG_TEXT_BASE=0x50000000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_SYS_MALLOC_F_LEN=0x8000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/kontron-sl-mx6ul_defconfig b/configs/kontron-sl-mx6ul_defconfig
index bfe6cb8bff5..6c476a4b677 100644
--- a/configs/kontron-sl-mx6ul_defconfig
+++ b/configs/kontron-sl-mx6ul_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x87800000
+CONFIG_TEXT_BASE=0x87800000
 CONFIG_SYS_MALLOC_LEN=0x4000000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/kontron-sl-mx8mm_defconfig b/configs/kontron-sl-mx8mm_defconfig
index 5387f65926f..e267b441c51 100644
--- a/configs/kontron-sl-mx8mm_defconfig
+++ b/configs/kontron-sl-mx8mm_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_IMX8M=y
-CONFIG_SYS_TEXT_BASE=0x40200000
+CONFIG_TEXT_BASE=0x40200000
 CONFIG_SYS_MALLOC_LEN=0x4000000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/kontron_pitx_imx8m_defconfig b/configs/kontron_pitx_imx8m_defconfig
index 284aa6d6b8b..05c09ae3c5b 100644
--- a/configs/kontron_pitx_imx8m_defconfig
+++ b/configs/kontron_pitx_imx8m_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_IMX8M=y
-CONFIG_SYS_TEXT_BASE=0x40200000
+CONFIG_TEXT_BASE=0x40200000
 CONFIG_SYS_MALLOC_LEN=0x600000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/kp_imx53_defconfig b/configs/kp_imx53_defconfig
index 6f60aa96f12..14cb69d9f19 100644
--- a/configs/kp_imx53_defconfig
+++ b/configs/kp_imx53_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX5=y
-CONFIG_SYS_TEXT_BASE=0x77800000
+CONFIG_TEXT_BASE=0x77800000
 CONFIG_SYS_MALLOC_LEN=0x2000000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/kp_imx6q_tpc_defconfig b/configs/kp_imx6q_tpc_defconfig
index 8c5010d6052..b2972017d6a 100644
--- a/configs/kp_imx6q_tpc_defconfig
+++ b/configs/kp_imx6q_tpc_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x17800000
+CONFIG_TEXT_BASE=0x17800000
 CONFIG_SYS_MALLOC_F_LEN=0x2200
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/kylin-rk3036_defconfig b/configs/kylin-rk3036_defconfig
index 4f17de826c8..1ad635daa98 100644
--- a/configs/kylin-rk3036_defconfig
+++ b/configs/kylin-rk3036_defconfig
@@ -5,7 +5,7 @@ CONFIG_SYS_ARCH_TIMER=y
 # CONFIG_SPL_USE_ARCH_MEMCPY is not set
 # CONFIG_SPL_USE_ARCH_MEMSET is not set
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x60000000
+CONFIG_TEXT_BASE=0x60000000
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_OFFSET=0x3F8000
diff --git a/configs/lager_defconfig b/configs/lager_defconfig
index b8946437cf6..cc5f4c517b6 100644
--- a/configs/lager_defconfig
+++ b/configs/lager_defconfig
@@ -4,7 +4,7 @@ CONFIG_ENABLE_ARM_SOC_BOOT0_HOOK=y
 # CONFIG_SPL_USE_ARCH_MEMCPY is not set
 # CONFIG_SPL_USE_ARCH_MEMSET is not set
 CONFIG_ARCH_RMOBILE=y
-CONFIG_SYS_TEXT_BASE=0x50000000
+CONFIG_TEXT_BASE=0x50000000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_SYS_MALLOC_F_LEN=0x8000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/leez-rk3399_defconfig b/configs/leez-rk3399_defconfig
index 264230c014d..a8326f03a23 100644
--- a/configs/leez-rk3399_defconfig
+++ b/configs/leez-rk3399_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=24000000
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x00200000
+CONFIG_TEXT_BASE=0x00200000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_OFFSET=0x3F8000
 CONFIG_DEFAULT_DEVICE_TREE="rk3399-leez-p710"
diff --git a/configs/legoev3_defconfig b/configs/legoev3_defconfig
index 36e3d706923..15a169c9987 100644
--- a/configs/legoev3_defconfig
+++ b/configs/legoev3_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_DAVINCI=y
-CONFIG_SYS_TEXT_BASE=0xc1080000
+CONFIG_TEXT_BASE=0xc1080000
 CONFIG_SYS_MALLOC_LEN=0x110000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_TARGET_LEGOEV3=y
diff --git a/configs/libretech-ac_defconfig b/configs/libretech-ac_defconfig
index f3734c50669..2259fa313ac 100644
--- a/configs/libretech-ac_defconfig
+++ b/configs/libretech-ac_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SYS_CONFIG_NAME="libretech-ac"
 CONFIG_ARCH_MESON=y
-CONFIG_SYS_TEXT_BASE=0x01000000
+CONFIG_TEXT_BASE=0x01000000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
 CONFIG_ENV_OFFSET=0xFFFF0000
diff --git a/configs/libretech-cc_defconfig b/configs/libretech-cc_defconfig
index 7bb85289ea2..fb21eb5c160 100644
--- a/configs/libretech-cc_defconfig
+++ b/configs/libretech-cc_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MESON=y
-CONFIG_SYS_TEXT_BASE=0x01000000
+CONFIG_TEXT_BASE=0x01000000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
 CONFIG_DM_GPIO=y
diff --git a/configs/libretech-cc_v2_defconfig b/configs/libretech-cc_v2_defconfig
index 2181115f07b..a4f5e07afaf 100644
--- a/configs/libretech-cc_v2_defconfig
+++ b/configs/libretech-cc_v2_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MESON=y
-CONFIG_SYS_TEXT_BASE=0x01000000
+CONFIG_TEXT_BASE=0x01000000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
 CONFIG_ENV_OFFSET=0xFFFF0000
diff --git a/configs/libretech-s905d-pc_defconfig b/configs/libretech-s905d-pc_defconfig
index 402b8a2cf74..30bf22a2522 100644
--- a/configs/libretech-s905d-pc_defconfig
+++ b/configs/libretech-s905d-pc_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SYS_BOARD="q200"
 CONFIG_ARCH_MESON=y
-CONFIG_SYS_TEXT_BASE=0x01000000
+CONFIG_TEXT_BASE=0x01000000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x10000
 CONFIG_ENV_OFFSET=0xFFFF0000
diff --git a/configs/libretech-s912-pc_defconfig b/configs/libretech-s912-pc_defconfig
index 7819e723109..24ce0198350 100644
--- a/configs/libretech-s912-pc_defconfig
+++ b/configs/libretech-s912-pc_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MESON=y
-CONFIG_SYS_TEXT_BASE=0x01000000
+CONFIG_TEXT_BASE=0x01000000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x10000
 CONFIG_ENV_OFFSET=0xFFFF0000
diff --git a/configs/lion-rk3368_defconfig b/configs/lion-rk3368_defconfig
index 5f7c5a00919..0b21e232d34 100644
--- a/configs/lion-rk3368_defconfig
+++ b/configs/lion-rk3368_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=24000000
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x00200000
+CONFIG_TEXT_BASE=0x00200000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_OFFSET=0x3F8000
 CONFIG_DEFAULT_DEVICE_TREE="rk3368-lion-haikou"
diff --git a/configs/liteboard_defconfig b/configs/liteboard_defconfig
index c96ea617cf1..06f9fd7b847 100644
--- a/configs/liteboard_defconfig
+++ b/configs/liteboard_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x87800000
+CONFIG_TEXT_BASE=0x87800000
 CONFIG_SYS_MALLOC_LEN=0x1000000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/ls1012a2g5rdb_qspi_defconfig b/configs/ls1012a2g5rdb_qspi_defconfig
index 20326acf981..15c391eb04d 100644
--- a/configs/ls1012a2g5rdb_qspi_defconfig
+++ b/configs/ls1012a2g5rdb_qspi_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_TARGET_LS1012A2G5RDB=y
-CONFIG_SYS_TEXT_BASE=0x40100000
+CONFIG_TEXT_BASE=0x40100000
 CONFIG_SYS_MALLOC_LEN=0x500000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/ls1012a2g5rdb_tfa_defconfig b/configs/ls1012a2g5rdb_tfa_defconfig
index ab2b5bbe1da..c402fd48461 100644
--- a/configs/ls1012a2g5rdb_tfa_defconfig
+++ b/configs/ls1012a2g5rdb_tfa_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_TARGET_LS1012A2G5RDB=y
 CONFIG_TFABOOT=y
-CONFIG_SYS_TEXT_BASE=0x82000000
+CONFIG_TEXT_BASE=0x82000000
 CONFIG_SYS_MALLOC_LEN=0x500000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/ls1012afrdm_qspi_defconfig b/configs/ls1012afrdm_qspi_defconfig
index ba77948d3ed..2c9e6e2df32 100644
--- a/configs/ls1012afrdm_qspi_defconfig
+++ b/configs/ls1012afrdm_qspi_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_TARGET_LS1012AFRDM=y
-CONFIG_SYS_TEXT_BASE=0x40100000
+CONFIG_TEXT_BASE=0x40100000
 CONFIG_SYS_MALLOC_LEN=0x500000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/ls1012afrdm_tfa_defconfig b/configs/ls1012afrdm_tfa_defconfig
index 65f868875df..32a42fd6822 100644
--- a/configs/ls1012afrdm_tfa_defconfig
+++ b/configs/ls1012afrdm_tfa_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_TARGET_LS1012AFRDM=y
 CONFIG_TFABOOT=y
-CONFIG_SYS_TEXT_BASE=0x82000000
+CONFIG_TEXT_BASE=0x82000000
 CONFIG_SYS_MALLOC_LEN=0x500000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/ls1012afrwy_qspi_SECURE_BOOT_defconfig b/configs/ls1012afrwy_qspi_SECURE_BOOT_defconfig
index 3790abdfdbf..1524ed61046 100644
--- a/configs/ls1012afrwy_qspi_SECURE_BOOT_defconfig
+++ b/configs/ls1012afrwy_qspi_SECURE_BOOT_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_TARGET_LS1012AFRWY=y
-CONFIG_SYS_TEXT_BASE=0x40100000
+CONFIG_TEXT_BASE=0x40100000
 CONFIG_SYS_MALLOC_LEN=0x500000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/ls1012afrwy_qspi_defconfig b/configs/ls1012afrwy_qspi_defconfig
index e466f113364..9c450b3ccc2 100644
--- a/configs/ls1012afrwy_qspi_defconfig
+++ b/configs/ls1012afrwy_qspi_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_TARGET_LS1012AFRWY=y
-CONFIG_SYS_TEXT_BASE=0x40100000
+CONFIG_TEXT_BASE=0x40100000
 CONFIG_SYS_MALLOC_LEN=0x500000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/ls1012afrwy_tfa_SECURE_BOOT_defconfig b/configs/ls1012afrwy_tfa_SECURE_BOOT_defconfig
index ca6062e5e67..bbd7d6f2889 100644
--- a/configs/ls1012afrwy_tfa_SECURE_BOOT_defconfig
+++ b/configs/ls1012afrwy_tfa_SECURE_BOOT_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_TARGET_LS1012AFRWY=y
 CONFIG_TFABOOT=y
-CONFIG_SYS_TEXT_BASE=0x82000000
+CONFIG_TEXT_BASE=0x82000000
 CONFIG_SYS_MALLOC_LEN=0x500000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/ls1012afrwy_tfa_defconfig b/configs/ls1012afrwy_tfa_defconfig
index 802d2b400ff..cbaa1463860 100644
--- a/configs/ls1012afrwy_tfa_defconfig
+++ b/configs/ls1012afrwy_tfa_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_TARGET_LS1012AFRWY=y
 CONFIG_TFABOOT=y
-CONFIG_SYS_TEXT_BASE=0x82000000
+CONFIG_TEXT_BASE=0x82000000
 CONFIG_SYS_MALLOC_LEN=0x500000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/ls1012aqds_qspi_defconfig b/configs/ls1012aqds_qspi_defconfig
index fe3172c33e7..af37172760d 100644
--- a/configs/ls1012aqds_qspi_defconfig
+++ b/configs/ls1012aqds_qspi_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_TARGET_LS1012AQDS=y
-CONFIG_SYS_TEXT_BASE=0x40100000
+CONFIG_TEXT_BASE=0x40100000
 CONFIG_SYS_MALLOC_LEN=0x500000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/ls1012aqds_tfa_SECURE_BOOT_defconfig b/configs/ls1012aqds_tfa_SECURE_BOOT_defconfig
index 396be4d92fd..4ae0a19e5a8 100644
--- a/configs/ls1012aqds_tfa_SECURE_BOOT_defconfig
+++ b/configs/ls1012aqds_tfa_SECURE_BOOT_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_TARGET_LS1012AQDS=y
 CONFIG_TFABOOT=y
-CONFIG_SYS_TEXT_BASE=0x82000000
+CONFIG_TEXT_BASE=0x82000000
 CONFIG_SYS_MALLOC_LEN=0x500000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/ls1012aqds_tfa_defconfig b/configs/ls1012aqds_tfa_defconfig
index 497e8eebf74..0af4067e118 100644
--- a/configs/ls1012aqds_tfa_defconfig
+++ b/configs/ls1012aqds_tfa_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_TARGET_LS1012AQDS=y
 CONFIG_TFABOOT=y
-CONFIG_SYS_TEXT_BASE=0x82000000
+CONFIG_TEXT_BASE=0x82000000
 CONFIG_SYS_MALLOC_LEN=0x500000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/ls1012ardb_qspi_SECURE_BOOT_defconfig b/configs/ls1012ardb_qspi_SECURE_BOOT_defconfig
index 6147d4b0bce..a4234e8f5e6 100644
--- a/configs/ls1012ardb_qspi_SECURE_BOOT_defconfig
+++ b/configs/ls1012ardb_qspi_SECURE_BOOT_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_TARGET_LS1012ARDB=y
-CONFIG_SYS_TEXT_BASE=0x40100000
+CONFIG_TEXT_BASE=0x40100000
 CONFIG_SYS_MALLOC_LEN=0x500000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/ls1012ardb_qspi_defconfig b/configs/ls1012ardb_qspi_defconfig
index 01363359699..d13214aea36 100644
--- a/configs/ls1012ardb_qspi_defconfig
+++ b/configs/ls1012ardb_qspi_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_TARGET_LS1012ARDB=y
-CONFIG_SYS_TEXT_BASE=0x40100000
+CONFIG_TEXT_BASE=0x40100000
 CONFIG_SYS_MALLOC_LEN=0x500000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/ls1012ardb_tfa_SECURE_BOOT_defconfig b/configs/ls1012ardb_tfa_SECURE_BOOT_defconfig
index 3fad11227b1..dd194846df3 100644
--- a/configs/ls1012ardb_tfa_SECURE_BOOT_defconfig
+++ b/configs/ls1012ardb_tfa_SECURE_BOOT_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_TARGET_LS1012ARDB=y
 CONFIG_TFABOOT=y
-CONFIG_SYS_TEXT_BASE=0x82000000
+CONFIG_TEXT_BASE=0x82000000
 CONFIG_SYS_MALLOC_LEN=0x500000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/ls1012ardb_tfa_defconfig b/configs/ls1012ardb_tfa_defconfig
index 161c0dee097..654102a9371 100644
--- a/configs/ls1012ardb_tfa_defconfig
+++ b/configs/ls1012ardb_tfa_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_TARGET_LS1012ARDB=y
 CONFIG_TFABOOT=y
-CONFIG_SYS_TEXT_BASE=0x82000000
+CONFIG_TEXT_BASE=0x82000000
 CONFIG_SYS_MALLOC_LEN=0x500000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/ls1021aiot_qspi_defconfig b/configs/ls1021aiot_qspi_defconfig
index d731936d529..af74540780c 100644
--- a/configs/ls1021aiot_qspi_defconfig
+++ b/configs/ls1021aiot_qspi_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=12500000
 CONFIG_TARGET_LS1021AIOT=y
-CONFIG_SYS_TEXT_BASE=0x40010000
+CONFIG_TEXT_BASE=0x40010000
 CONFIG_SYS_MALLOC_LEN=0x1002000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/ls1021aiot_sdcard_defconfig b/configs/ls1021aiot_sdcard_defconfig
index c71ab781869..a140a303bdd 100644
--- a/configs/ls1021aiot_sdcard_defconfig
+++ b/configs/ls1021aiot_sdcard_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=12500000
 CONFIG_TARGET_LS1021AIOT=y
-CONFIG_SYS_TEXT_BASE=0x82000000
+CONFIG_TEXT_BASE=0x82000000
 CONFIG_SYS_MALLOC_LEN=0x1002000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/ls1021aqds_ddr4_nor_defconfig b/configs/ls1021aqds_ddr4_nor_defconfig
index 778f22ac911..c55a167079f 100644
--- a/configs/ls1021aqds_ddr4_nor_defconfig
+++ b/configs/ls1021aqds_ddr4_nor_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=12500000
 CONFIG_TARGET_LS1021AQDS=y
-CONFIG_SYS_TEXT_BASE=0x60100000
+CONFIG_TEXT_BASE=0x60100000
 CONFIG_SYS_MALLOC_LEN=0x1002000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/ls1021aqds_ddr4_nor_lpuart_defconfig b/configs/ls1021aqds_ddr4_nor_lpuart_defconfig
index bf6ddb6cf01..fba249ebd5c 100644
--- a/configs/ls1021aqds_ddr4_nor_lpuart_defconfig
+++ b/configs/ls1021aqds_ddr4_nor_lpuart_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=12500000
 CONFIG_TARGET_LS1021AQDS=y
-CONFIG_SYS_TEXT_BASE=0x60100000
+CONFIG_TEXT_BASE=0x60100000
 CONFIG_SYS_MALLOC_LEN=0x1002000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/ls1021aqds_nand_defconfig b/configs/ls1021aqds_nand_defconfig
index da92ac13a10..4dbc647b237 100644
--- a/configs/ls1021aqds_nand_defconfig
+++ b/configs/ls1021aqds_nand_defconfig
@@ -3,7 +3,7 @@ CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_SPL_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=12500000
 CONFIG_TARGET_LS1021AQDS=y
-CONFIG_SYS_TEXT_BASE=0x82000000
+CONFIG_TEXT_BASE=0x82000000
 CONFIG_SYS_MALLOC_LEN=0x1002000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/ls1021aqds_nor_SECURE_BOOT_defconfig b/configs/ls1021aqds_nor_SECURE_BOOT_defconfig
index ee2c6b82edc..d0c34d85ee8 100644
--- a/configs/ls1021aqds_nor_SECURE_BOOT_defconfig
+++ b/configs/ls1021aqds_nor_SECURE_BOOT_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=12500000
 CONFIG_TARGET_LS1021AQDS=y
-CONFIG_SYS_TEXT_BASE=0x60100000
+CONFIG_TEXT_BASE=0x60100000
 CONFIG_SYS_MALLOC_LEN=0x1002000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/ls1021aqds_nor_defconfig b/configs/ls1021aqds_nor_defconfig
index 484ff026ba7..8052c750a89 100644
--- a/configs/ls1021aqds_nor_defconfig
+++ b/configs/ls1021aqds_nor_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=12500000
 CONFIG_TARGET_LS1021AQDS=y
-CONFIG_SYS_TEXT_BASE=0x60100000
+CONFIG_TEXT_BASE=0x60100000
 CONFIG_SYS_MALLOC_LEN=0x1002000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/ls1021aqds_nor_lpuart_defconfig b/configs/ls1021aqds_nor_lpuart_defconfig
index c19fd26dd6d..cd0bdb18590 100644
--- a/configs/ls1021aqds_nor_lpuart_defconfig
+++ b/configs/ls1021aqds_nor_lpuart_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=12500000
 CONFIG_TARGET_LS1021AQDS=y
-CONFIG_SYS_TEXT_BASE=0x60100000
+CONFIG_TEXT_BASE=0x60100000
 CONFIG_SYS_MALLOC_LEN=0x1002000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/ls1021aqds_qspi_defconfig b/configs/ls1021aqds_qspi_defconfig
index 750a5a501e5..4530a02e4bb 100644
--- a/configs/ls1021aqds_qspi_defconfig
+++ b/configs/ls1021aqds_qspi_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=12500000
 CONFIG_TARGET_LS1021AQDS=y
-CONFIG_SYS_TEXT_BASE=0x40100000
+CONFIG_TEXT_BASE=0x40100000
 CONFIG_SYS_MALLOC_LEN=0x1002000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/ls1021aqds_sdcard_ifc_defconfig b/configs/ls1021aqds_sdcard_ifc_defconfig
index 66cee0b3d6e..aed2c61efb6 100644
--- a/configs/ls1021aqds_sdcard_ifc_defconfig
+++ b/configs/ls1021aqds_sdcard_ifc_defconfig
@@ -3,7 +3,7 @@ CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_SPL_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=12500000
 CONFIG_TARGET_LS1021AQDS=y
-CONFIG_SYS_TEXT_BASE=0x82000000
+CONFIG_TEXT_BASE=0x82000000
 CONFIG_SYS_MALLOC_LEN=0x1002000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/ls1021aqds_sdcard_qspi_defconfig b/configs/ls1021aqds_sdcard_qspi_defconfig
index 71eff4582f9..8a03487e403 100644
--- a/configs/ls1021aqds_sdcard_qspi_defconfig
+++ b/configs/ls1021aqds_sdcard_qspi_defconfig
@@ -3,7 +3,7 @@ CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_SPL_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=12500000
 CONFIG_TARGET_LS1021AQDS=y
-CONFIG_SYS_TEXT_BASE=0x82000000
+CONFIG_TEXT_BASE=0x82000000
 CONFIG_SYS_MALLOC_LEN=0x1002000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/ls1021atsn_qspi_defconfig b/configs/ls1021atsn_qspi_defconfig
index 8ca47afe505..38728b160df 100644
--- a/configs/ls1021atsn_qspi_defconfig
+++ b/configs/ls1021atsn_qspi_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=12500000
 CONFIG_TARGET_LS1021ATSN=y
-CONFIG_SYS_TEXT_BASE=0x40100000
+CONFIG_TEXT_BASE=0x40100000
 CONFIG_SYS_MALLOC_LEN=0x1002000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/ls1021atsn_sdcard_defconfig b/configs/ls1021atsn_sdcard_defconfig
index 7817cfccfb3..fda3f8140db 100644
--- a/configs/ls1021atsn_sdcard_defconfig
+++ b/configs/ls1021atsn_sdcard_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=12500000
 CONFIG_TARGET_LS1021ATSN=y
-CONFIG_SYS_TEXT_BASE=0x82000000
+CONFIG_TEXT_BASE=0x82000000
 CONFIG_SYS_MALLOC_LEN=0x1020000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/ls1021atwr_nor_SECURE_BOOT_defconfig b/configs/ls1021atwr_nor_SECURE_BOOT_defconfig
index f66aacc9912..e98072a1f9f 100644
--- a/configs/ls1021atwr_nor_SECURE_BOOT_defconfig
+++ b/configs/ls1021atwr_nor_SECURE_BOOT_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=12500000
 CONFIG_TARGET_LS1021ATWR=y
-CONFIG_SYS_TEXT_BASE=0x60100000
+CONFIG_TEXT_BASE=0x60100000
 CONFIG_SYS_MALLOC_LEN=0x1020000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x20000
diff --git a/configs/ls1021atwr_nor_defconfig b/configs/ls1021atwr_nor_defconfig
index 110cf5d3d2b..5278fc8f30f 100644
--- a/configs/ls1021atwr_nor_defconfig
+++ b/configs/ls1021atwr_nor_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=12500000
 CONFIG_TARGET_LS1021ATWR=y
-CONFIG_SYS_TEXT_BASE=0x60100000
+CONFIG_TEXT_BASE=0x60100000
 CONFIG_SYS_MALLOC_LEN=0x1020000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x20000
diff --git a/configs/ls1021atwr_nor_lpuart_defconfig b/configs/ls1021atwr_nor_lpuart_defconfig
index 9d8dbbf043b..d8de46a7cd3 100644
--- a/configs/ls1021atwr_nor_lpuart_defconfig
+++ b/configs/ls1021atwr_nor_lpuart_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=12500000
 CONFIG_TARGET_LS1021ATWR=y
-CONFIG_SYS_TEXT_BASE=0x60100000
+CONFIG_TEXT_BASE=0x60100000
 CONFIG_SYS_MALLOC_LEN=0x1020000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x20000
diff --git a/configs/ls1021atwr_qspi_defconfig b/configs/ls1021atwr_qspi_defconfig
index 039c9842e99..dbb36fba2e2 100644
--- a/configs/ls1021atwr_qspi_defconfig
+++ b/configs/ls1021atwr_qspi_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=12500000
 CONFIG_TARGET_LS1021ATWR=y
-CONFIG_SYS_TEXT_BASE=0x40100000
+CONFIG_TEXT_BASE=0x40100000
 CONFIG_SYS_MALLOC_LEN=0x1002000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/ls1021atwr_sdcard_ifc_SECURE_BOOT_defconfig b/configs/ls1021atwr_sdcard_ifc_SECURE_BOOT_defconfig
index a916959d57c..c1513053f42 100644
--- a/configs/ls1021atwr_sdcard_ifc_SECURE_BOOT_defconfig
+++ b/configs/ls1021atwr_sdcard_ifc_SECURE_BOOT_defconfig
@@ -3,7 +3,7 @@ CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_SPL_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=12500000
 CONFIG_TARGET_LS1021ATWR=y
-CONFIG_SYS_TEXT_BASE=0x82000000
+CONFIG_TEXT_BASE=0x82000000
 CONFIG_SYS_MALLOC_LEN=0x1020000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/ls1021atwr_sdcard_ifc_defconfig b/configs/ls1021atwr_sdcard_ifc_defconfig
index 65f033aed95..7916bc55b1e 100644
--- a/configs/ls1021atwr_sdcard_ifc_defconfig
+++ b/configs/ls1021atwr_sdcard_ifc_defconfig
@@ -3,7 +3,7 @@ CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_SPL_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=12500000
 CONFIG_TARGET_LS1021ATWR=y
-CONFIG_SYS_TEXT_BASE=0x82000000
+CONFIG_TEXT_BASE=0x82000000
 CONFIG_SYS_MALLOC_LEN=0x1020000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/ls1021atwr_sdcard_qspi_defconfig b/configs/ls1021atwr_sdcard_qspi_defconfig
index 45c91797270..1207dcbfdd5 100644
--- a/configs/ls1021atwr_sdcard_qspi_defconfig
+++ b/configs/ls1021atwr_sdcard_qspi_defconfig
@@ -3,7 +3,7 @@ CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_SPL_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=12500000
 CONFIG_TARGET_LS1021ATWR=y
-CONFIG_SYS_TEXT_BASE=0x82000000
+CONFIG_TEXT_BASE=0x82000000
 CONFIG_SYS_MALLOC_LEN=0x1020000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/ls1043aqds_defconfig b/configs/ls1043aqds_defconfig
index 8f736ea4529..7964a237c0a 100644
--- a/configs/ls1043aqds_defconfig
+++ b/configs/ls1043aqds_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_TARGET_LS1043AQDS=y
-CONFIG_SYS_TEXT_BASE=0x60100000
+CONFIG_TEXT_BASE=0x60100000
 CONFIG_SYS_MALLOC_LEN=0x120000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x20000
diff --git a/configs/ls1043aqds_lpuart_defconfig b/configs/ls1043aqds_lpuart_defconfig
index 2a97e27ecfc..1ecac0e2ad7 100644
--- a/configs/ls1043aqds_lpuart_defconfig
+++ b/configs/ls1043aqds_lpuart_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_TARGET_LS1043AQDS=y
-CONFIG_SYS_TEXT_BASE=0x60100000
+CONFIG_TEXT_BASE=0x60100000
 CONFIG_SYS_MALLOC_LEN=0x120000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x20000
diff --git a/configs/ls1043aqds_nand_defconfig b/configs/ls1043aqds_nand_defconfig
index b0e8a472d32..0edc2ac4d10 100644
--- a/configs/ls1043aqds_nand_defconfig
+++ b/configs/ls1043aqds_nand_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_TARGET_LS1043AQDS=y
-CONFIG_SYS_TEXT_BASE=0x82000000
+CONFIG_TEXT_BASE=0x82000000
 CONFIG_SYS_MALLOC_LEN=0x102000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/ls1043aqds_nor_ddr3_defconfig b/configs/ls1043aqds_nor_ddr3_defconfig
index c6fc5449c15..f1d49228670 100644
--- a/configs/ls1043aqds_nor_ddr3_defconfig
+++ b/configs/ls1043aqds_nor_ddr3_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_TARGET_LS1043AQDS=y
-CONFIG_SYS_TEXT_BASE=0x60100000
+CONFIG_TEXT_BASE=0x60100000
 CONFIG_SYS_MALLOC_LEN=0x120000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x20000
diff --git a/configs/ls1043aqds_qspi_defconfig b/configs/ls1043aqds_qspi_defconfig
index 9b278fd0f40..8b5ef179b37 100644
--- a/configs/ls1043aqds_qspi_defconfig
+++ b/configs/ls1043aqds_qspi_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_TARGET_LS1043AQDS=y
-CONFIG_SYS_TEXT_BASE=0x40100000
+CONFIG_TEXT_BASE=0x40100000
 CONFIG_SYS_MALLOC_LEN=0x102000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/ls1043aqds_sdcard_ifc_defconfig b/configs/ls1043aqds_sdcard_ifc_defconfig
index 0bb001305da..b7d987cc873 100644
--- a/configs/ls1043aqds_sdcard_ifc_defconfig
+++ b/configs/ls1043aqds_sdcard_ifc_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_TARGET_LS1043AQDS=y
-CONFIG_SYS_TEXT_BASE=0x82000000
+CONFIG_TEXT_BASE=0x82000000
 CONFIG_SYS_MALLOC_LEN=0x102000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/ls1043aqds_sdcard_qspi_defconfig b/configs/ls1043aqds_sdcard_qspi_defconfig
index 7a2b8e68c27..e6c7f3ec4b4 100644
--- a/configs/ls1043aqds_sdcard_qspi_defconfig
+++ b/configs/ls1043aqds_sdcard_qspi_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_TARGET_LS1043AQDS=y
-CONFIG_SYS_TEXT_BASE=0x82000000
+CONFIG_TEXT_BASE=0x82000000
 CONFIG_SYS_MALLOC_LEN=0x102000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/ls1043aqds_tfa_SECURE_BOOT_defconfig b/configs/ls1043aqds_tfa_SECURE_BOOT_defconfig
index 9e323a4a5c5..0929aa1f6e6 100644
--- a/configs/ls1043aqds_tfa_SECURE_BOOT_defconfig
+++ b/configs/ls1043aqds_tfa_SECURE_BOOT_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_TARGET_LS1043AQDS=y
 CONFIG_TFABOOT=y
-CONFIG_SYS_TEXT_BASE=0x82000000
+CONFIG_TEXT_BASE=0x82000000
 CONFIG_SYS_MALLOC_LEN=0x102000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/ls1043aqds_tfa_defconfig b/configs/ls1043aqds_tfa_defconfig
index 665c1ddbf3d..46a0f562a75 100644
--- a/configs/ls1043aqds_tfa_defconfig
+++ b/configs/ls1043aqds_tfa_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_TARGET_LS1043AQDS=y
 CONFIG_TFABOOT=y
-CONFIG_SYS_TEXT_BASE=0x82000000
+CONFIG_TEXT_BASE=0x82000000
 CONFIG_SYS_MALLOC_LEN=0x102000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/ls1043ardb_SECURE_BOOT_defconfig b/configs/ls1043ardb_SECURE_BOOT_defconfig
index 5632a95d7b9..8987e94e0fb 100644
--- a/configs/ls1043ardb_SECURE_BOOT_defconfig
+++ b/configs/ls1043ardb_SECURE_BOOT_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_TARGET_LS1043ARDB=y
-CONFIG_SYS_TEXT_BASE=0x60100000
+CONFIG_TEXT_BASE=0x60100000
 CONFIG_SYS_MALLOC_LEN=0x120000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x20000
diff --git a/configs/ls1043ardb_defconfig b/configs/ls1043ardb_defconfig
index 39e50b2fdb6..b9ff194be5e 100644
--- a/configs/ls1043ardb_defconfig
+++ b/configs/ls1043ardb_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_TARGET_LS1043ARDB=y
-CONFIG_SYS_TEXT_BASE=0x60100000
+CONFIG_TEXT_BASE=0x60100000
 CONFIG_SYS_MALLOC_LEN=0x120000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x20000
diff --git a/configs/ls1043ardb_nand_SECURE_BOOT_defconfig b/configs/ls1043ardb_nand_SECURE_BOOT_defconfig
index 4ce6d5deea2..5bc7bf94e22 100644
--- a/configs/ls1043ardb_nand_SECURE_BOOT_defconfig
+++ b/configs/ls1043ardb_nand_SECURE_BOOT_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_TARGET_LS1043ARDB=y
-CONFIG_SYS_TEXT_BASE=0x82000000
+CONFIG_TEXT_BASE=0x82000000
 CONFIG_SYS_MALLOC_LEN=0x102000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/ls1043ardb_nand_defconfig b/configs/ls1043ardb_nand_defconfig
index 9e969c04ec1..d7e33136a21 100644
--- a/configs/ls1043ardb_nand_defconfig
+++ b/configs/ls1043ardb_nand_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_TARGET_LS1043ARDB=y
-CONFIG_SYS_TEXT_BASE=0x82000000
+CONFIG_TEXT_BASE=0x82000000
 CONFIG_SYS_MALLOC_LEN=0x102000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/ls1043ardb_sdcard_SECURE_BOOT_defconfig b/configs/ls1043ardb_sdcard_SECURE_BOOT_defconfig
index 95d1ca752ec..16f1b72a24a 100644
--- a/configs/ls1043ardb_sdcard_SECURE_BOOT_defconfig
+++ b/configs/ls1043ardb_sdcard_SECURE_BOOT_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_TARGET_LS1043ARDB=y
-CONFIG_SYS_TEXT_BASE=0x82000000
+CONFIG_TEXT_BASE=0x82000000
 CONFIG_SYS_MALLOC_LEN=0x102000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/ls1043ardb_sdcard_defconfig b/configs/ls1043ardb_sdcard_defconfig
index e731695ec4a..d5352189818 100644
--- a/configs/ls1043ardb_sdcard_defconfig
+++ b/configs/ls1043ardb_sdcard_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_TARGET_LS1043ARDB=y
-CONFIG_SYS_TEXT_BASE=0x82000000
+CONFIG_TEXT_BASE=0x82000000
 CONFIG_SYS_MALLOC_LEN=0x102000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/ls1043ardb_tfa_SECURE_BOOT_defconfig b/configs/ls1043ardb_tfa_SECURE_BOOT_defconfig
index 374abeb1dc0..671031920ed 100644
--- a/configs/ls1043ardb_tfa_SECURE_BOOT_defconfig
+++ b/configs/ls1043ardb_tfa_SECURE_BOOT_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_TARGET_LS1043ARDB=y
 CONFIG_TFABOOT=y
-CONFIG_SYS_TEXT_BASE=0x82000000
+CONFIG_TEXT_BASE=0x82000000
 CONFIG_SYS_MALLOC_LEN=0x102000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/ls1043ardb_tfa_defconfig b/configs/ls1043ardb_tfa_defconfig
index 1b408ebfed0..5743d9a36fe 100644
--- a/configs/ls1043ardb_tfa_defconfig
+++ b/configs/ls1043ardb_tfa_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_TARGET_LS1043ARDB=y
 CONFIG_TFABOOT=y
-CONFIG_SYS_TEXT_BASE=0x82000000
+CONFIG_TEXT_BASE=0x82000000
 CONFIG_SYS_MALLOC_LEN=0x102000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/ls1046afrwy_tfa_SECURE_BOOT_defconfig b/configs/ls1046afrwy_tfa_SECURE_BOOT_defconfig
index 1be7002a185..5f2e071481a 100644
--- a/configs/ls1046afrwy_tfa_SECURE_BOOT_defconfig
+++ b/configs/ls1046afrwy_tfa_SECURE_BOOT_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_TARGET_LS1046AFRWY=y
 CONFIG_TFABOOT=y
-CONFIG_SYS_TEXT_BASE=0x82000000
+CONFIG_TEXT_BASE=0x82000000
 CONFIG_SYS_MALLOC_LEN=0x102000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/ls1046afrwy_tfa_defconfig b/configs/ls1046afrwy_tfa_defconfig
index f41434c7419..9ae76171b15 100644
--- a/configs/ls1046afrwy_tfa_defconfig
+++ b/configs/ls1046afrwy_tfa_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_TARGET_LS1046AFRWY=y
 CONFIG_TFABOOT=y
-CONFIG_SYS_TEXT_BASE=0x82000000
+CONFIG_TEXT_BASE=0x82000000
 CONFIG_SYS_MALLOC_LEN=0x102000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/ls1046aqds_SECURE_BOOT_defconfig b/configs/ls1046aqds_SECURE_BOOT_defconfig
index 121228c266c..053827fbfa4 100644
--- a/configs/ls1046aqds_SECURE_BOOT_defconfig
+++ b/configs/ls1046aqds_SECURE_BOOT_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_TARGET_LS1046AQDS=y
-CONFIG_SYS_TEXT_BASE=0x60100000
+CONFIG_TEXT_BASE=0x60100000
 CONFIG_SYS_MALLOC_LEN=0x120000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x20000
diff --git a/configs/ls1046aqds_defconfig b/configs/ls1046aqds_defconfig
index 864a352e99d..c95869b3e28 100644
--- a/configs/ls1046aqds_defconfig
+++ b/configs/ls1046aqds_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_TARGET_LS1046AQDS=y
-CONFIG_SYS_TEXT_BASE=0x60100000
+CONFIG_TEXT_BASE=0x60100000
 CONFIG_SYS_MALLOC_LEN=0x120000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x20000
diff --git a/configs/ls1046aqds_lpuart_defconfig b/configs/ls1046aqds_lpuart_defconfig
index 5323f7f0645..e11db6e0c64 100644
--- a/configs/ls1046aqds_lpuart_defconfig
+++ b/configs/ls1046aqds_lpuart_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_TARGET_LS1046AQDS=y
-CONFIG_SYS_TEXT_BASE=0x60100000
+CONFIG_TEXT_BASE=0x60100000
 CONFIG_SYS_MALLOC_LEN=0x120000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x20000
diff --git a/configs/ls1046aqds_nand_defconfig b/configs/ls1046aqds_nand_defconfig
index b44336d19fa..e108f55e611 100644
--- a/configs/ls1046aqds_nand_defconfig
+++ b/configs/ls1046aqds_nand_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_TARGET_LS1046AQDS=y
-CONFIG_SYS_TEXT_BASE=0x82000000
+CONFIG_TEXT_BASE=0x82000000
 CONFIG_SYS_MALLOC_LEN=0x102000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/ls1046aqds_qspi_defconfig b/configs/ls1046aqds_qspi_defconfig
index 27800069676..3ee1b1a2ceb 100644
--- a/configs/ls1046aqds_qspi_defconfig
+++ b/configs/ls1046aqds_qspi_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_TARGET_LS1046AQDS=y
-CONFIG_SYS_TEXT_BASE=0x40100000
+CONFIG_TEXT_BASE=0x40100000
 CONFIG_SYS_MALLOC_LEN=0x102000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/ls1046aqds_sdcard_ifc_defconfig b/configs/ls1046aqds_sdcard_ifc_defconfig
index ff9faad7185..98afe8e11a3 100644
--- a/configs/ls1046aqds_sdcard_ifc_defconfig
+++ b/configs/ls1046aqds_sdcard_ifc_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_TARGET_LS1046AQDS=y
-CONFIG_SYS_TEXT_BASE=0x82000000
+CONFIG_TEXT_BASE=0x82000000
 CONFIG_SYS_MALLOC_LEN=0x102000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/ls1046aqds_sdcard_qspi_defconfig b/configs/ls1046aqds_sdcard_qspi_defconfig
index 7bf45fdd1b5..43f95060fba 100644
--- a/configs/ls1046aqds_sdcard_qspi_defconfig
+++ b/configs/ls1046aqds_sdcard_qspi_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_TARGET_LS1046AQDS=y
-CONFIG_SYS_TEXT_BASE=0x82000000
+CONFIG_TEXT_BASE=0x82000000
 CONFIG_SYS_MALLOC_LEN=0x102000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/ls1046aqds_tfa_SECURE_BOOT_defconfig b/configs/ls1046aqds_tfa_SECURE_BOOT_defconfig
index 72ba77c4e29..41f11d55ea9 100644
--- a/configs/ls1046aqds_tfa_SECURE_BOOT_defconfig
+++ b/configs/ls1046aqds_tfa_SECURE_BOOT_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_TARGET_LS1046AQDS=y
 CONFIG_TFABOOT=y
-CONFIG_SYS_TEXT_BASE=0x82000000
+CONFIG_TEXT_BASE=0x82000000
 CONFIG_SYS_MALLOC_LEN=0x102000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/ls1046aqds_tfa_defconfig b/configs/ls1046aqds_tfa_defconfig
index e3721001f6c..06bc4756683 100644
--- a/configs/ls1046aqds_tfa_defconfig
+++ b/configs/ls1046aqds_tfa_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_TARGET_LS1046AQDS=y
 CONFIG_TFABOOT=y
-CONFIG_SYS_TEXT_BASE=0x82000000
+CONFIG_TEXT_BASE=0x82000000
 CONFIG_SYS_MALLOC_LEN=0x102000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/ls1046ardb_emmc_defconfig b/configs/ls1046ardb_emmc_defconfig
index 680b64f2bd9..d3d9ede8012 100644
--- a/configs/ls1046ardb_emmc_defconfig
+++ b/configs/ls1046ardb_emmc_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_TARGET_LS1046ARDB=y
-CONFIG_SYS_TEXT_BASE=0x82000000
+CONFIG_TEXT_BASE=0x82000000
 CONFIG_SYS_MALLOC_LEN=0x102000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/ls1046ardb_qspi_SECURE_BOOT_defconfig b/configs/ls1046ardb_qspi_SECURE_BOOT_defconfig
index b7dd4fec881..8f6f34802e4 100644
--- a/configs/ls1046ardb_qspi_SECURE_BOOT_defconfig
+++ b/configs/ls1046ardb_qspi_SECURE_BOOT_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_TARGET_LS1046ARDB=y
-CONFIG_SYS_TEXT_BASE=0x40100000
+CONFIG_TEXT_BASE=0x40100000
 CONFIG_SYS_MALLOC_LEN=0x102000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/ls1046ardb_qspi_defconfig b/configs/ls1046ardb_qspi_defconfig
index b4fad17250f..48be1a39451 100644
--- a/configs/ls1046ardb_qspi_defconfig
+++ b/configs/ls1046ardb_qspi_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_TARGET_LS1046ARDB=y
-CONFIG_SYS_TEXT_BASE=0x40100000
+CONFIG_TEXT_BASE=0x40100000
 CONFIG_SYS_MALLOC_LEN=0x102000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/ls1046ardb_qspi_spl_defconfig b/configs/ls1046ardb_qspi_spl_defconfig
index ad895a70352..4c6312cb2d8 100644
--- a/configs/ls1046ardb_qspi_spl_defconfig
+++ b/configs/ls1046ardb_qspi_spl_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_TARGET_LS1046ARDB=y
-CONFIG_SYS_TEXT_BASE=0x82000000
+CONFIG_TEXT_BASE=0x82000000
 CONFIG_SYS_MALLOC_LEN=0x102000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/ls1046ardb_sdcard_SECURE_BOOT_defconfig b/configs/ls1046ardb_sdcard_SECURE_BOOT_defconfig
index afd2c17d710..e8998d08fc4 100644
--- a/configs/ls1046ardb_sdcard_SECURE_BOOT_defconfig
+++ b/configs/ls1046ardb_sdcard_SECURE_BOOT_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_TARGET_LS1046ARDB=y
-CONFIG_SYS_TEXT_BASE=0x82000000
+CONFIG_TEXT_BASE=0x82000000
 CONFIG_SYS_MALLOC_LEN=0x102000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/ls1046ardb_sdcard_defconfig b/configs/ls1046ardb_sdcard_defconfig
index b39ccc36c22..5bd5054daef 100644
--- a/configs/ls1046ardb_sdcard_defconfig
+++ b/configs/ls1046ardb_sdcard_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_TARGET_LS1046ARDB=y
-CONFIG_SYS_TEXT_BASE=0x82000000
+CONFIG_TEXT_BASE=0x82000000
 CONFIG_SYS_MALLOC_LEN=0x102000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/ls1046ardb_tfa_SECURE_BOOT_defconfig b/configs/ls1046ardb_tfa_SECURE_BOOT_defconfig
index cbad81ae02b..fce3975af2f 100644
--- a/configs/ls1046ardb_tfa_SECURE_BOOT_defconfig
+++ b/configs/ls1046ardb_tfa_SECURE_BOOT_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_TARGET_LS1046ARDB=y
 CONFIG_TFABOOT=y
-CONFIG_SYS_TEXT_BASE=0x82000000
+CONFIG_TEXT_BASE=0x82000000
 CONFIG_SYS_MALLOC_LEN=0x102000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/ls1046ardb_tfa_defconfig b/configs/ls1046ardb_tfa_defconfig
index 228c4683783..beb9822b3e6 100644
--- a/configs/ls1046ardb_tfa_defconfig
+++ b/configs/ls1046ardb_tfa_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_TARGET_LS1046ARDB=y
 CONFIG_TFABOOT=y
-CONFIG_SYS_TEXT_BASE=0x82000000
+CONFIG_TEXT_BASE=0x82000000
 CONFIG_SYS_MALLOC_LEN=0x102000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/ls1088aqds_defconfig b/configs/ls1088aqds_defconfig
index 48258e33a4e..2da7b2a601b 100644
--- a/configs/ls1088aqds_defconfig
+++ b/configs/ls1088aqds_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_GIC_V3_ITS=y
 CONFIG_TARGET_LS1088AQDS=y
-CONFIG_SYS_TEXT_BASE=0x30100000
+CONFIG_TEXT_BASE=0x30100000
 CONFIG_SYS_MALLOC_LEN=0x0220000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x20000
diff --git a/configs/ls1088aqds_qspi_SECURE_BOOT_defconfig b/configs/ls1088aqds_qspi_SECURE_BOOT_defconfig
index d3d5cf42f5b..5f1b0ead376 100644
--- a/configs/ls1088aqds_qspi_SECURE_BOOT_defconfig
+++ b/configs/ls1088aqds_qspi_SECURE_BOOT_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_GIC_V3_ITS=y
 CONFIG_TARGET_LS1088AQDS=y
-CONFIG_SYS_TEXT_BASE=0x20100000
+CONFIG_TEXT_BASE=0x20100000
 CONFIG_SYS_MALLOC_LEN=0x202000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/ls1088aqds_qspi_defconfig b/configs/ls1088aqds_qspi_defconfig
index 13cae395470..602925a8c6a 100644
--- a/configs/ls1088aqds_qspi_defconfig
+++ b/configs/ls1088aqds_qspi_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_GIC_V3_ITS=y
 CONFIG_TARGET_LS1088AQDS=y
-CONFIG_SYS_TEXT_BASE=0x20100000
+CONFIG_TEXT_BASE=0x20100000
 CONFIG_SYS_MALLOC_LEN=0x202000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/ls1088aqds_sdcard_ifc_defconfig b/configs/ls1088aqds_sdcard_ifc_defconfig
index 1140cc1cc92..dac252846bc 100644
--- a/configs/ls1088aqds_sdcard_ifc_defconfig
+++ b/configs/ls1088aqds_sdcard_ifc_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_GIC_V3_ITS=y
 CONFIG_TARGET_LS1088AQDS=y
-CONFIG_SYS_TEXT_BASE=0x80400000
+CONFIG_TEXT_BASE=0x80400000
 CONFIG_SYS_MALLOC_LEN=0x202000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/ls1088aqds_sdcard_qspi_defconfig b/configs/ls1088aqds_sdcard_qspi_defconfig
index e947273a018..b1be8df2f17 100644
--- a/configs/ls1088aqds_sdcard_qspi_defconfig
+++ b/configs/ls1088aqds_sdcard_qspi_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_GIC_V3_ITS=y
 CONFIG_TARGET_LS1088AQDS=y
-CONFIG_SYS_TEXT_BASE=0x80400000
+CONFIG_TEXT_BASE=0x80400000
 CONFIG_SYS_MALLOC_LEN=0x202000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/ls1088aqds_tfa_defconfig b/configs/ls1088aqds_tfa_defconfig
index 0b8e6293981..ccfa9f9f88a 100644
--- a/configs/ls1088aqds_tfa_defconfig
+++ b/configs/ls1088aqds_tfa_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_GIC_V3_ITS=y
 CONFIG_TARGET_LS1088AQDS=y
 CONFIG_TFABOOT=y
-CONFIG_SYS_TEXT_BASE=0x82000000
+CONFIG_TEXT_BASE=0x82000000
 CONFIG_SYS_MALLOC_LEN=0x0220000
 CONFIG_SYS_MALLOC_F_LEN=0x6000
 CONFIG_NR_DRAM_BANKS=2
diff --git a/configs/ls1088ardb_qspi_SECURE_BOOT_defconfig b/configs/ls1088ardb_qspi_SECURE_BOOT_defconfig
index ed430dd8afb..7767fc4cce4 100644
--- a/configs/ls1088ardb_qspi_SECURE_BOOT_defconfig
+++ b/configs/ls1088ardb_qspi_SECURE_BOOT_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_GIC_V3_ITS=y
 CONFIG_TARGET_LS1088ARDB=y
-CONFIG_SYS_TEXT_BASE=0x20100000
+CONFIG_TEXT_BASE=0x20100000
 CONFIG_SYS_MALLOC_LEN=0x202000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/ls1088ardb_qspi_defconfig b/configs/ls1088ardb_qspi_defconfig
index f920cc9e9e7..47128107a0a 100644
--- a/configs/ls1088ardb_qspi_defconfig
+++ b/configs/ls1088ardb_qspi_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_GIC_V3_ITS=y
 CONFIG_TARGET_LS1088ARDB=y
-CONFIG_SYS_TEXT_BASE=0x20100000
+CONFIG_TEXT_BASE=0x20100000
 CONFIG_SYS_MALLOC_LEN=0x202000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/ls1088ardb_sdcard_qspi_SECURE_BOOT_defconfig b/configs/ls1088ardb_sdcard_qspi_SECURE_BOOT_defconfig
index c569bdaabc6..4389437a667 100644
--- a/configs/ls1088ardb_sdcard_qspi_SECURE_BOOT_defconfig
+++ b/configs/ls1088ardb_sdcard_qspi_SECURE_BOOT_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_GIC_V3_ITS=y
 CONFIG_TARGET_LS1088ARDB=y
-CONFIG_SYS_TEXT_BASE=0x80400000
+CONFIG_TEXT_BASE=0x80400000
 CONFIG_SYS_MALLOC_LEN=0x202000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/ls1088ardb_sdcard_qspi_defconfig b/configs/ls1088ardb_sdcard_qspi_defconfig
index 56d94d86a0f..be617c72b5e 100644
--- a/configs/ls1088ardb_sdcard_qspi_defconfig
+++ b/configs/ls1088ardb_sdcard_qspi_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_GIC_V3_ITS=y
 CONFIG_TARGET_LS1088ARDB=y
-CONFIG_SYS_TEXT_BASE=0x80400000
+CONFIG_TEXT_BASE=0x80400000
 CONFIG_SYS_MALLOC_LEN=0x202000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/ls1088ardb_tfa_SECURE_BOOT_defconfig b/configs/ls1088ardb_tfa_SECURE_BOOT_defconfig
index 62c3cee99d8..7577e1bef65 100644
--- a/configs/ls1088ardb_tfa_SECURE_BOOT_defconfig
+++ b/configs/ls1088ardb_tfa_SECURE_BOOT_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_GIC_V3_ITS=y
 CONFIG_TARGET_LS1088ARDB=y
 CONFIG_TFABOOT=y
-CONFIG_SYS_TEXT_BASE=0x82000000
+CONFIG_TEXT_BASE=0x82000000
 CONFIG_SYS_MALLOC_LEN=0x202000
 CONFIG_SYS_MALLOC_F_LEN=0x6000
 CONFIG_NR_DRAM_BANKS=2
diff --git a/configs/ls1088ardb_tfa_defconfig b/configs/ls1088ardb_tfa_defconfig
index e67a7431117..8820df05a21 100644
--- a/configs/ls1088ardb_tfa_defconfig
+++ b/configs/ls1088ardb_tfa_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_GIC_V3_ITS=y
 CONFIG_TARGET_LS1088ARDB=y
 CONFIG_TFABOOT=y
-CONFIG_SYS_TEXT_BASE=0x82000000
+CONFIG_TEXT_BASE=0x82000000
 CONFIG_SYS_MALLOC_LEN=0x202000
 CONFIG_SYS_MALLOC_F_LEN=0x6000
 CONFIG_NR_DRAM_BANKS=2
diff --git a/configs/ls2080aqds_SECURE_BOOT_defconfig b/configs/ls2080aqds_SECURE_BOOT_defconfig
index 034f15760b4..8b2f39bbfe1 100644
--- a/configs/ls2080aqds_SECURE_BOOT_defconfig
+++ b/configs/ls2080aqds_SECURE_BOOT_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_GIC_V3_ITS=y
 CONFIG_TARGET_LS2080AQDS=y
-CONFIG_SYS_TEXT_BASE=0x30100000
+CONFIG_TEXT_BASE=0x30100000
 CONFIG_SYS_MALLOC_LEN=0x202000
 CONFIG_NR_DRAM_BANKS=3
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/ls2080aqds_defconfig b/configs/ls2080aqds_defconfig
index d8efe46f3c6..e4c547c5b7b 100644
--- a/configs/ls2080aqds_defconfig
+++ b/configs/ls2080aqds_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_GIC_V3_ITS=y
 CONFIG_TARGET_LS2080AQDS=y
-CONFIG_SYS_TEXT_BASE=0x30100000
+CONFIG_TEXT_BASE=0x30100000
 CONFIG_SYS_MALLOC_LEN=0x202000
 CONFIG_NR_DRAM_BANKS=3
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/ls2080aqds_nand_defconfig b/configs/ls2080aqds_nand_defconfig
index a0fbb7d3c34..d919268bdc6 100644
--- a/configs/ls2080aqds_nand_defconfig
+++ b/configs/ls2080aqds_nand_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_GIC_V3_ITS=y
 CONFIG_TARGET_LS2080AQDS=y
-CONFIG_SYS_TEXT_BASE=0x80400000
+CONFIG_TEXT_BASE=0x80400000
 CONFIG_SYS_MALLOC_LEN=0x202000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/ls2080aqds_qspi_defconfig b/configs/ls2080aqds_qspi_defconfig
index 9925333678b..12433a10465 100644
--- a/configs/ls2080aqds_qspi_defconfig
+++ b/configs/ls2080aqds_qspi_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_GIC_V3_ITS=y
 CONFIG_TARGET_LS2080AQDS=y
-CONFIG_SYS_TEXT_BASE=0x20100000
+CONFIG_TEXT_BASE=0x20100000
 CONFIG_SYS_MALLOC_LEN=0x202000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_NR_DRAM_BANKS=3
diff --git a/configs/ls2080aqds_sdcard_defconfig b/configs/ls2080aqds_sdcard_defconfig
index 9d852531092..681adeb068e 100644
--- a/configs/ls2080aqds_sdcard_defconfig
+++ b/configs/ls2080aqds_sdcard_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_GIC_V3_ITS=y
 CONFIG_TARGET_LS2080AQDS=y
-CONFIG_SYS_TEXT_BASE=0x80400000
+CONFIG_TEXT_BASE=0x80400000
 CONFIG_SYS_MALLOC_LEN=0x0220000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/ls2080ardb_SECURE_BOOT_defconfig b/configs/ls2080ardb_SECURE_BOOT_defconfig
index 46dde0b6b8b..bb6d2f9b401 100644
--- a/configs/ls2080ardb_SECURE_BOOT_defconfig
+++ b/configs/ls2080ardb_SECURE_BOOT_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_GIC_V3_ITS=y
 CONFIG_TARGET_LS2080ARDB=y
-CONFIG_SYS_TEXT_BASE=0x30100000
+CONFIG_TEXT_BASE=0x30100000
 CONFIG_SYS_MALLOC_LEN=0x202000
 CONFIG_NR_DRAM_BANKS=3
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/ls2080ardb_defconfig b/configs/ls2080ardb_defconfig
index 87129967f25..a256e8344df 100644
--- a/configs/ls2080ardb_defconfig
+++ b/configs/ls2080ardb_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_GIC_V3_ITS=y
 CONFIG_TARGET_LS2080ARDB=y
-CONFIG_SYS_TEXT_BASE=0x30100000
+CONFIG_TEXT_BASE=0x30100000
 CONFIG_SYS_MALLOC_LEN=0x202000
 CONFIG_NR_DRAM_BANKS=3
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/ls2080ardb_nand_defconfig b/configs/ls2080ardb_nand_defconfig
index da463ebf42b..5e838899f39 100644
--- a/configs/ls2080ardb_nand_defconfig
+++ b/configs/ls2080ardb_nand_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_GIC_V3_ITS=y
 CONFIG_TARGET_LS2080ARDB=y
-CONFIG_SYS_TEXT_BASE=0x80400000
+CONFIG_TEXT_BASE=0x80400000
 CONFIG_SYS_MALLOC_LEN=0x202000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/ls2081ardb_defconfig b/configs/ls2081ardb_defconfig
index cc4bbaca436..ac4e9cc8f3e 100644
--- a/configs/ls2081ardb_defconfig
+++ b/configs/ls2081ardb_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_GIC_V3_ITS=y
 CONFIG_TARGET_LS2081ARDB=y
-CONFIG_SYS_TEXT_BASE=0x20100000
+CONFIG_TEXT_BASE=0x20100000
 CONFIG_SYS_MALLOC_LEN=0x202000
 CONFIG_NR_DRAM_BANKS=3
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/ls2088aqds_tfa_defconfig b/configs/ls2088aqds_tfa_defconfig
index 12a0125777a..5f5306ccdb5 100644
--- a/configs/ls2088aqds_tfa_defconfig
+++ b/configs/ls2088aqds_tfa_defconfig
@@ -3,7 +3,7 @@ CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_GIC_V3_ITS=y
 CONFIG_TARGET_LS2080AQDS=y
 CONFIG_TFABOOT=y
-CONFIG_SYS_TEXT_BASE=0x82000000
+CONFIG_TEXT_BASE=0x82000000
 CONFIG_SYS_MALLOC_LEN=0x0220000
 CONFIG_NR_DRAM_BANKS=3
 CONFIG_ENV_SIZE=0x20000
diff --git a/configs/ls2088ardb_qspi_SECURE_BOOT_defconfig b/configs/ls2088ardb_qspi_SECURE_BOOT_defconfig
index a5438b73408..18028ac2cd0 100644
--- a/configs/ls2088ardb_qspi_SECURE_BOOT_defconfig
+++ b/configs/ls2088ardb_qspi_SECURE_BOOT_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_GIC_V3_ITS=y
 CONFIG_TARGET_LS2080ARDB=y
-CONFIG_SYS_TEXT_BASE=0x20100000
+CONFIG_TEXT_BASE=0x20100000
 CONFIG_SYS_MALLOC_LEN=0x202000
 CONFIG_NR_DRAM_BANKS=3
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/ls2088ardb_qspi_defconfig b/configs/ls2088ardb_qspi_defconfig
index 395ba7660e8..e179684559a 100644
--- a/configs/ls2088ardb_qspi_defconfig
+++ b/configs/ls2088ardb_qspi_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_GIC_V3_ITS=y
 CONFIG_TARGET_LS2080ARDB=y
-CONFIG_SYS_TEXT_BASE=0x20100000
+CONFIG_TEXT_BASE=0x20100000
 CONFIG_SYS_MALLOC_LEN=0x202000
 CONFIG_NR_DRAM_BANKS=3
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/ls2088ardb_tfa_SECURE_BOOT_defconfig b/configs/ls2088ardb_tfa_SECURE_BOOT_defconfig
index 66b6d53da04..3b17dcea461 100644
--- a/configs/ls2088ardb_tfa_SECURE_BOOT_defconfig
+++ b/configs/ls2088ardb_tfa_SECURE_BOOT_defconfig
@@ -3,7 +3,7 @@ CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_GIC_V3_ITS=y
 CONFIG_TARGET_LS2080ARDB=y
 CONFIG_TFABOOT=y
-CONFIG_SYS_TEXT_BASE=0x82000000
+CONFIG_TEXT_BASE=0x82000000
 CONFIG_SYS_MALLOC_LEN=0x202000
 CONFIG_SYS_MALLOC_F_LEN=0x6000
 CONFIG_NR_DRAM_BANKS=3
diff --git a/configs/ls2088ardb_tfa_defconfig b/configs/ls2088ardb_tfa_defconfig
index 6fd1556d01b..0f149faa6dc 100644
--- a/configs/ls2088ardb_tfa_defconfig
+++ b/configs/ls2088ardb_tfa_defconfig
@@ -3,7 +3,7 @@ CONFIG_COUNTER_FREQUENCY=25000000
 CONFIG_GIC_V3_ITS=y
 CONFIG_TARGET_LS2080ARDB=y
 CONFIG_TFABOOT=y
-CONFIG_SYS_TEXT_BASE=0x82000000
+CONFIG_TEXT_BASE=0x82000000
 CONFIG_SYS_MALLOC_LEN=0x202000
 CONFIG_SYS_MALLOC_F_LEN=0x6000
 CONFIG_NR_DRAM_BANKS=3
diff --git a/configs/lschlv2_defconfig b/configs/lschlv2_defconfig
index cfccfdcfc40..ae5b1ca4940 100644
--- a/configs/lschlv2_defconfig
+++ b/configs/lschlv2_defconfig
@@ -7,7 +7,7 @@ CONFIG_SUPPORT_PASSING_ATAGS=y
 CONFIG_CMDLINE_TAG=y
 CONFIG_INITRD_TAG=y
 CONFIG_SYS_KWD_CONFIG="board/buffalo/lsxl/kwbimage-lschl.cfg"
-CONFIG_SYS_TEXT_BASE=0x600000
+CONFIG_TEXT_BASE=0x600000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_TARGET_LSXL=y
 CONFIG_ENV_SIZE=0x10000
diff --git a/configs/lsxhl_defconfig b/configs/lsxhl_defconfig
index 1945b72450c..a12540cf3e1 100644
--- a/configs/lsxhl_defconfig
+++ b/configs/lsxhl_defconfig
@@ -7,7 +7,7 @@ CONFIG_SUPPORT_PASSING_ATAGS=y
 CONFIG_CMDLINE_TAG=y
 CONFIG_INITRD_TAG=y
 CONFIG_SYS_KWD_CONFIG="board/buffalo/lsxl/kwbimage-lsxhl.cfg"
-CONFIG_SYS_TEXT_BASE=0x600000
+CONFIG_TEXT_BASE=0x600000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_TARGET_LSXL=y
 CONFIG_LSXHL=y
diff --git a/configs/lx2160aqds_tfa_SECURE_BOOT_defconfig b/configs/lx2160aqds_tfa_SECURE_BOOT_defconfig
index 89c8b96f20a..ba569fee6db 100644
--- a/configs/lx2160aqds_tfa_SECURE_BOOT_defconfig
+++ b/configs/lx2160aqds_tfa_SECURE_BOOT_defconfig
@@ -3,7 +3,7 @@ CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_GIC_V3_ITS=y
 CONFIG_TARGET_LX2160AQDS=y
 CONFIG_TFABOOT=y
-CONFIG_SYS_TEXT_BASE=0x82000000
+CONFIG_TEXT_BASE=0x82000000
 CONFIG_SYS_MALLOC_LEN=0x202000
 CONFIG_SYS_MALLOC_F_LEN=0x6000
 CONFIG_NR_DRAM_BANKS=3
diff --git a/configs/lx2160aqds_tfa_defconfig b/configs/lx2160aqds_tfa_defconfig
index 88482bef13c..02e9bd91c7b 100644
--- a/configs/lx2160aqds_tfa_defconfig
+++ b/configs/lx2160aqds_tfa_defconfig
@@ -3,7 +3,7 @@ CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_GIC_V3_ITS=y
 CONFIG_TARGET_LX2160AQDS=y
 CONFIG_TFABOOT=y
-CONFIG_SYS_TEXT_BASE=0x82000000
+CONFIG_TEXT_BASE=0x82000000
 CONFIG_SYS_MALLOC_LEN=0x202000
 CONFIG_SYS_MALLOC_F_LEN=0x6000
 CONFIG_NR_DRAM_BANKS=3
diff --git a/configs/lx2160ardb_tfa_SECURE_BOOT_defconfig b/configs/lx2160ardb_tfa_SECURE_BOOT_defconfig
index eb6014864c1..6a79a72ce23 100644
--- a/configs/lx2160ardb_tfa_SECURE_BOOT_defconfig
+++ b/configs/lx2160ardb_tfa_SECURE_BOOT_defconfig
@@ -3,7 +3,7 @@ CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_GIC_V3_ITS=y
 CONFIG_TARGET_LX2160ARDB=y
 CONFIG_TFABOOT=y
-CONFIG_SYS_TEXT_BASE=0x82000000
+CONFIG_TEXT_BASE=0x82000000
 CONFIG_SYS_MALLOC_LEN=0x202000
 CONFIG_SYS_MALLOC_F_LEN=0x6000
 CONFIG_NR_DRAM_BANKS=3
diff --git a/configs/lx2160ardb_tfa_defconfig b/configs/lx2160ardb_tfa_defconfig
index 998339c16ae..dc189ba1973 100644
--- a/configs/lx2160ardb_tfa_defconfig
+++ b/configs/lx2160ardb_tfa_defconfig
@@ -3,7 +3,7 @@ CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_GIC_V3_ITS=y
 CONFIG_TARGET_LX2160ARDB=y
 CONFIG_TFABOOT=y
-CONFIG_SYS_TEXT_BASE=0x82000000
+CONFIG_TEXT_BASE=0x82000000
 CONFIG_SYS_MALLOC_LEN=0x202000
 CONFIG_SYS_MALLOC_F_LEN=0x6000
 CONFIG_NR_DRAM_BANKS=3
diff --git a/configs/lx2160ardb_tfa_stmm_defconfig b/configs/lx2160ardb_tfa_stmm_defconfig
index 6d3813041a3..9d9f269d216 100644
--- a/configs/lx2160ardb_tfa_stmm_defconfig
+++ b/configs/lx2160ardb_tfa_stmm_defconfig
@@ -3,7 +3,7 @@ CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_GIC_V3_ITS=y
 CONFIG_TARGET_LX2160ARDB=y
 CONFIG_TFABOOT=y
-CONFIG_SYS_TEXT_BASE=0x82000000
+CONFIG_TEXT_BASE=0x82000000
 CONFIG_SYS_MALLOC_LEN=0x202000
 CONFIG_SYS_MALLOC_F_LEN=0x6000
 CONFIG_NR_DRAM_BANKS=3
diff --git a/configs/lx2162aqds_tfa_SECURE_BOOT_defconfig b/configs/lx2162aqds_tfa_SECURE_BOOT_defconfig
index 90ebff4d8c0..097a2fcb080 100644
--- a/configs/lx2162aqds_tfa_SECURE_BOOT_defconfig
+++ b/configs/lx2162aqds_tfa_SECURE_BOOT_defconfig
@@ -3,7 +3,7 @@ CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_GIC_V3_ITS=y
 CONFIG_TARGET_LX2162AQDS=y
 CONFIG_TFABOOT=y
-CONFIG_SYS_TEXT_BASE=0x82000000
+CONFIG_TEXT_BASE=0x82000000
 CONFIG_SYS_MALLOC_LEN=0x202000
 CONFIG_SYS_MALLOC_F_LEN=0x6000
 CONFIG_NR_DRAM_BANKS=3
diff --git a/configs/lx2162aqds_tfa_defconfig b/configs/lx2162aqds_tfa_defconfig
index b178c8d20a3..de55b1d8a63 100644
--- a/configs/lx2162aqds_tfa_defconfig
+++ b/configs/lx2162aqds_tfa_defconfig
@@ -3,7 +3,7 @@ CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_GIC_V3_ITS=y
 CONFIG_TARGET_LX2162AQDS=y
 CONFIG_TFABOOT=y
-CONFIG_SYS_TEXT_BASE=0x82000000
+CONFIG_TEXT_BASE=0x82000000
 CONFIG_SYS_MALLOC_LEN=0x202000
 CONFIG_SYS_MALLOC_F_LEN=0x6000
 CONFIG_NR_DRAM_BANKS=3
diff --git a/configs/lx2162aqds_tfa_verified_boot_defconfig b/configs/lx2162aqds_tfa_verified_boot_defconfig
index 1f4826eec35..0467ca7c5f5 100644
--- a/configs/lx2162aqds_tfa_verified_boot_defconfig
+++ b/configs/lx2162aqds_tfa_verified_boot_defconfig
@@ -3,7 +3,7 @@ CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_GIC_V3_ITS=y
 CONFIG_TARGET_LX2162AQDS=y
 CONFIG_TFABOOT=y
-CONFIG_SYS_TEXT_BASE=0x82000000
+CONFIG_TEXT_BASE=0x82000000
 CONFIG_SYS_MALLOC_LEN=0x202000
 CONFIG_SYS_MALLOC_F_LEN=0x6000
 CONFIG_NR_DRAM_BANKS=3
diff --git a/configs/m53menlo_defconfig b/configs/m53menlo_defconfig
index 5db591a2120..01510504a98 100644
--- a/configs/m53menlo_defconfig
+++ b/configs/m53menlo_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SYS_THUMB_BUILD=y
 CONFIG_ARCH_MX5=y
-CONFIG_SYS_TEXT_BASE=0x71000000
+CONFIG_TEXT_BASE=0x71000000
 CONFIG_SYS_MALLOC_LEN=0xa00000
 CONFIG_SYS_MALLOC_F_LEN=0x8000
 CONFIG_SPL_GPIO=y
diff --git a/configs/malta64_defconfig b/configs/malta64_defconfig
index ab8750de504..f6bb2d01cfa 100644
--- a/configs/malta64_defconfig
+++ b/configs/malta64_defconfig
@@ -1,5 +1,5 @@
 CONFIG_MIPS=y
-CONFIG_SYS_TEXT_BASE=0xFFFFFFFFBE000000
+CONFIG_TEXT_BASE=0xFFFFFFFFBE000000
 CONFIG_SYS_MALLOC_LEN=0x20000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_ENV_SIZE=0x20000
diff --git a/configs/malta64el_defconfig b/configs/malta64el_defconfig
index 58368e24d1b..7d119668787 100644
--- a/configs/malta64el_defconfig
+++ b/configs/malta64el_defconfig
@@ -1,5 +1,5 @@
 CONFIG_MIPS=y
-CONFIG_SYS_TEXT_BASE=0xFFFFFFFFBE000000
+CONFIG_TEXT_BASE=0xFFFFFFFFBE000000
 CONFIG_SYS_MALLOC_LEN=0x20000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_ENV_SIZE=0x20000
diff --git a/configs/malta_defconfig b/configs/malta_defconfig
index 9911c710175..f0b46bf6689 100644
--- a/configs/malta_defconfig
+++ b/configs/malta_defconfig
@@ -1,5 +1,5 @@
 CONFIG_MIPS=y
-CONFIG_SYS_TEXT_BASE=0xBE000000
+CONFIG_TEXT_BASE=0xBE000000
 CONFIG_SYS_MALLOC_LEN=0x20000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_ENV_SIZE=0x20000
diff --git a/configs/maltael_defconfig b/configs/maltael_defconfig
index 8bebdfab8c1..c1829acb289 100644
--- a/configs/maltael_defconfig
+++ b/configs/maltael_defconfig
@@ -1,5 +1,5 @@
 CONFIG_MIPS=y
-CONFIG_SYS_TEXT_BASE=0xBE000000
+CONFIG_TEXT_BASE=0xBE000000
 CONFIG_SYS_MALLOC_LEN=0x20000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_ENV_SIZE=0x20000
diff --git a/configs/marsboard_defconfig b/configs/marsboard_defconfig
index 4fe153216b2..8667d457c00 100644
--- a/configs/marsboard_defconfig
+++ b/configs/marsboard_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x17800000
+CONFIG_TEXT_BASE=0x17800000
 CONFIG_SYS_MALLOC_LEN=0xa00000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/maxbcm_defconfig b/configs/maxbcm_defconfig
index 35005fcc354..5afacfd4ede 100644
--- a/configs/maxbcm_defconfig
+++ b/configs/maxbcm_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_MVEBU=y
-CONFIG_SYS_TEXT_BASE=0x00800000
+CONFIG_TEXT_BASE=0x00800000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
 CONFIG_NR_DRAM_BANKS=2
diff --git a/configs/mccmon6_nor_defconfig b/configs/mccmon6_nor_defconfig
index 1fae517ea04..2566bdef168 100644
--- a/configs/mccmon6_nor_defconfig
+++ b/configs/mccmon6_nor_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x17800000
+CONFIG_TEXT_BASE=0x17800000
 CONFIG_SYS_MALLOC_LEN=0xa00000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/mccmon6_sd_defconfig b/configs/mccmon6_sd_defconfig
index 111c0f07c7c..93e40b6b6b8 100644
--- a/configs/mccmon6_sd_defconfig
+++ b/configs/mccmon6_sd_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x17800000
+CONFIG_TEXT_BASE=0x17800000
 CONFIG_SYS_MALLOC_LEN=0xa00000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/medcom-wide_defconfig b/configs/medcom-wide_defconfig
index d51a124ed49..d889b97ff1c 100644
--- a/configs/medcom-wide_defconfig
+++ b/configs/medcom-wide_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SYS_L2CACHE_OFF=y
 CONFIG_ARCH_TEGRA=y
-CONFIG_SYS_TEXT_BASE=0x00110000
+CONFIG_TEXT_BASE=0x00110000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x2000
 CONFIG_ENV_OFFSET=0x1FFE0000
diff --git a/configs/meesc_dataflash_defconfig b/configs/meesc_dataflash_defconfig
index 315c4841825..ee86c73c28e 100644
--- a/configs/meesc_dataflash_defconfig
+++ b/configs/meesc_dataflash_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x21F00000
+CONFIG_TEXT_BASE=0x21F00000
 CONFIG_SYS_MALLOC_LEN=0x2d000
 CONFIG_TARGET_MEESC=y
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/meesc_defconfig b/configs/meesc_defconfig
index 9246f095254..7c4bdc0f23d 100644
--- a/configs/meesc_defconfig
+++ b/configs/meesc_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x21F00000
+CONFIG_TEXT_BASE=0x21F00000
 CONFIG_SYS_MALLOC_LEN=0x80000
 CONFIG_TARGET_MEESC=y
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/microblaze-generic_defconfig b/configs/microblaze-generic_defconfig
index 01c93d5c4ee..1a23dc51d6e 100644
--- a/configs/microblaze-generic_defconfig
+++ b/configs/microblaze-generic_defconfig
@@ -1,5 +1,5 @@
 CONFIG_MICROBLAZE=y
-CONFIG_SYS_TEXT_BASE=0x29000000
+CONFIG_TEXT_BASE=0x29000000
 CONFIG_SYS_MALLOC_LEN=0xc0000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/minnowmax_defconfig b/configs/minnowmax_defconfig
index 2e9edc6c4ee..66f3036313c 100644
--- a/configs/minnowmax_defconfig
+++ b/configs/minnowmax_defconfig
@@ -1,5 +1,5 @@
 CONFIG_X86=y
-CONFIG_SYS_TEXT_BASE=0xFFF00000
+CONFIG_TEXT_BASE=0xFFF00000
 CONFIG_NR_DRAM_BANKS=8
 CONFIG_ENV_SIZE=0x1000
 CONFIG_ENV_OFFSET=0x6EF000
diff --git a/configs/miqi-rk3288_defconfig b/configs/miqi-rk3288_defconfig
index 75675e6095f..b4be47e89cb 100644
--- a/configs/miqi-rk3288_defconfig
+++ b/configs/miqi-rk3288_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SPL_SKIP_LOWLEVEL_INIT_ONLY=y
 CONFIG_SYS_ARCH_TIMER=y
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x00000000
+CONFIG_TEXT_BASE=0x00000000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_OFFSET=0x3F8000
 CONFIG_DEFAULT_DEVICE_TREE="rk3288-miqi"
diff --git a/configs/mk808_defconfig b/configs/mk808_defconfig
index 80ecc881247..99d4893a109 100644
--- a/configs/mk808_defconfig
+++ b/configs/mk808_defconfig
@@ -7,7 +7,7 @@ CONFIG_TPL_SKIP_LOWLEVEL_INIT_ONLY=y
 # CONFIG_SPL_USE_ARCH_MEMCPY is not set
 # CONFIG_SPL_USE_ARCH_MEMSET is not set
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x60408000
+CONFIG_TEXT_BASE=0x60408000
 CONFIG_SYS_MALLOC_F_LEN=0x2000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x8000
diff --git a/configs/mscc_jr2_defconfig b/configs/mscc_jr2_defconfig
index c7b40a81162..1b0d32e396c 100644
--- a/configs/mscc_jr2_defconfig
+++ b/configs/mscc_jr2_defconfig
@@ -1,5 +1,5 @@
 CONFIG_MIPS=y
-CONFIG_SYS_TEXT_BASE=0x40000000
+CONFIG_TEXT_BASE=0x40000000
 CONFIG_SYS_MALLOC_LEN=0x1f0000
 CONFIG_ENV_SIZE=0x2000
 CONFIG_ENV_OFFSET=0x100000
diff --git a/configs/mscc_luton_defconfig b/configs/mscc_luton_defconfig
index 15339d4543a..30f7802482d 100644
--- a/configs/mscc_luton_defconfig
+++ b/configs/mscc_luton_defconfig
@@ -1,5 +1,5 @@
 CONFIG_MIPS=y
-CONFIG_SYS_TEXT_BASE=0x40000000
+CONFIG_TEXT_BASE=0x40000000
 CONFIG_SYS_MALLOC_LEN=0x1f0000
 CONFIG_ENV_SIZE=0x2000
 CONFIG_ENV_OFFSET=0x100000
diff --git a/configs/mscc_ocelot_defconfig b/configs/mscc_ocelot_defconfig
index d82140549b5..cd1d92316d4 100644
--- a/configs/mscc_ocelot_defconfig
+++ b/configs/mscc_ocelot_defconfig
@@ -1,5 +1,5 @@
 CONFIG_MIPS=y
-CONFIG_SYS_TEXT_BASE=0x40000000
+CONFIG_TEXT_BASE=0x40000000
 CONFIG_SYS_MALLOC_LEN=0x1f0000
 CONFIG_ENV_SIZE=0x2000
 CONFIG_ENV_OFFSET=0x100000
diff --git a/configs/mscc_serval_defconfig b/configs/mscc_serval_defconfig
index 9c30b6a9739..b5d019009d5 100644
--- a/configs/mscc_serval_defconfig
+++ b/configs/mscc_serval_defconfig
@@ -1,5 +1,5 @@
 CONFIG_MIPS=y
-CONFIG_SYS_TEXT_BASE=0x40000000
+CONFIG_TEXT_BASE=0x40000000
 CONFIG_SYS_MALLOC_LEN=0x1f0000
 CONFIG_ENV_SIZE=0x2000
 CONFIG_ENV_OFFSET=0x100000
diff --git a/configs/mscc_servalt_defconfig b/configs/mscc_servalt_defconfig
index 1c6edeb94f0..d471654f8e1 100644
--- a/configs/mscc_servalt_defconfig
+++ b/configs/mscc_servalt_defconfig
@@ -1,5 +1,5 @@
 CONFIG_MIPS=y
-CONFIG_SYS_TEXT_BASE=0x40000000
+CONFIG_TEXT_BASE=0x40000000
 CONFIG_SYS_MALLOC_LEN=0x1f0000
 CONFIG_ENV_SIZE=0x2000
 CONFIG_ENV_OFFSET=0x100000
diff --git a/configs/mt7622_rfb_defconfig b/configs/mt7622_rfb_defconfig
index 82660d83410..a0d33c0ffd6 100644
--- a/configs/mt7622_rfb_defconfig
+++ b/configs/mt7622_rfb_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_POSITION_INDEPENDENT=y
 CONFIG_ARCH_MEDIATEK=y
-CONFIG_SYS_TEXT_BASE=0x41e00000
+CONFIG_TEXT_BASE=0x41e00000
 CONFIG_SYS_MALLOC_F_LEN=0x4000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_DEFAULT_DEVICE_TREE="mt7622-rfb"
diff --git a/configs/mt7623a_unielec_u7623_02_defconfig b/configs/mt7623a_unielec_u7623_02_defconfig
index f052d5e9a1c..82397b2e32f 100644
--- a/configs/mt7623a_unielec_u7623_02_defconfig
+++ b/configs/mt7623a_unielec_u7623_02_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SYS_THUMB_BUILD=y
 CONFIG_ARCH_MEDIATEK=y
-CONFIG_SYS_TEXT_BASE=0x81e00000
+CONFIG_TEXT_BASE=0x81e00000
 CONFIG_SYS_MALLOC_F_LEN=0x4000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x1000
diff --git a/configs/mt7623n_bpir2_defconfig b/configs/mt7623n_bpir2_defconfig
index 8e101a5258e..34960c09641 100644
--- a/configs/mt7623n_bpir2_defconfig
+++ b/configs/mt7623n_bpir2_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SYS_THUMB_BUILD=y
 CONFIG_ARCH_MEDIATEK=y
-CONFIG_SYS_TEXT_BASE=0x81e00000
+CONFIG_TEXT_BASE=0x81e00000
 CONFIG_SYS_MALLOC_F_LEN=0x4000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x1000
diff --git a/configs/mt7629_rfb_defconfig b/configs/mt7629_rfb_defconfig
index 314a07d554a..b5dbbea4f39 100644
--- a/configs/mt7629_rfb_defconfig
+++ b/configs/mt7629_rfb_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SYS_ARCH_TIMER=y
 CONFIG_SYS_THUMB_BUILD=y
 CONFIG_ARCH_MEDIATEK=y
-CONFIG_SYS_TEXT_BASE=0x41e00000
+CONFIG_TEXT_BASE=0x41e00000
 CONFIG_SYS_MALLOC_F_LEN=0x4000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x1000
diff --git a/configs/mt8183_pumpkin_defconfig b/configs/mt8183_pumpkin_defconfig
index 3c96d4eacb1..88f7234957d 100644
--- a/configs/mt8183_pumpkin_defconfig
+++ b/configs/mt8183_pumpkin_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=13000000
 CONFIG_POSITION_INDEPENDENT=y
 CONFIG_ARCH_MEDIATEK=y
-CONFIG_SYS_TEXT_BASE=0x4c000000
+CONFIG_TEXT_BASE=0x4c000000
 CONFIG_SYS_MALLOC_F_LEN=0x4000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x1000
diff --git a/configs/mt8512_bm1_emmc_defconfig b/configs/mt8512_bm1_emmc_defconfig
index cea990860bd..772306c1525 100644
--- a/configs/mt8512_bm1_emmc_defconfig
+++ b/configs/mt8512_bm1_emmc_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=13000000
 CONFIG_POSITION_INDEPENDENT=y
 CONFIG_ARCH_MEDIATEK=y
-CONFIG_SYS_TEXT_BASE=0x44e00000
+CONFIG_TEXT_BASE=0x44e00000
 CONFIG_SYS_MALLOC_LEN=0x2000000
 CONFIG_SYS_MALLOC_F_LEN=0x4000
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/mt8516_pumpkin_defconfig b/configs/mt8516_pumpkin_defconfig
index 0425ffd0f97..0f31e0538aa 100644
--- a/configs/mt8516_pumpkin_defconfig
+++ b/configs/mt8516_pumpkin_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=13000000
 CONFIG_POSITION_INDEPENDENT=y
 CONFIG_ARCH_MEDIATEK=y
-CONFIG_SYS_TEXT_BASE=0x4C000000
+CONFIG_TEXT_BASE=0x4C000000
 CONFIG_SYS_MALLOC_F_LEN=0x4000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x1000
diff --git a/configs/mt8518_ap1_emmc_defconfig b/configs/mt8518_ap1_emmc_defconfig
index 2072eb6d73c..d75e299ce0d 100644
--- a/configs/mt8518_ap1_emmc_defconfig
+++ b/configs/mt8518_ap1_emmc_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=13000000
 CONFIG_POSITION_INDEPENDENT=y
 CONFIG_ARCH_MEDIATEK=y
-CONFIG_SYS_TEXT_BASE=0x40008000
+CONFIG_TEXT_BASE=0x40008000
 CONFIG_SYS_MALLOC_LEN=0x2000000
 CONFIG_SYS_MALLOC_F_LEN=0x4000
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/mvebu_crb_cn9130_defconfig b/configs/mvebu_crb_cn9130_defconfig
index da45c42ddb5..1d5b1db9dda 100644
--- a/configs/mvebu_crb_cn9130_defconfig
+++ b/configs/mvebu_crb_cn9130_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_MVEBU=y
-CONFIG_SYS_TEXT_BASE=0x00000000
+CONFIG_TEXT_BASE=0x00000000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_TARGET_OCTEONTX2_CN913x=y
 CONFIG_ENV_SIZE=0x10000
diff --git a/configs/mvebu_db-88f3720_defconfig b/configs/mvebu_db-88f3720_defconfig
index 437d438f8ff..fab085e184a 100644
--- a/configs/mvebu_db-88f3720_defconfig
+++ b/configs/mvebu_db-88f3720_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_MVEBU=y
-CONFIG_SYS_TEXT_BASE=0x00000000
+CONFIG_TEXT_BASE=0x00000000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_TARGET_MVEBU_ARMADA_37XX=y
 CONFIG_MVEBU_EFUSE=y
diff --git a/configs/mvebu_db_armada8k_defconfig b/configs/mvebu_db_armada8k_defconfig
index 2eee745ed67..44aec08c61d 100644
--- a/configs/mvebu_db_armada8k_defconfig
+++ b/configs/mvebu_db_armada8k_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_MVEBU=y
-CONFIG_SYS_TEXT_BASE=0x00000000
+CONFIG_TEXT_BASE=0x00000000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_TARGET_MVEBU_ARMADA_8K=y
 CONFIG_ENV_SIZE=0x10000
diff --git a/configs/mvebu_db_cn9130_defconfig b/configs/mvebu_db_cn9130_defconfig
index 59f17ff59d9..b2170347eb1 100644
--- a/configs/mvebu_db_cn9130_defconfig
+++ b/configs/mvebu_db_cn9130_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_MVEBU=y
-CONFIG_SYS_TEXT_BASE=0x00000000
+CONFIG_TEXT_BASE=0x00000000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_TARGET_OCTEONTX2_CN913x=y
 CONFIG_ENV_SIZE=0x10000
diff --git a/configs/mvebu_espressobin-88f3720_defconfig b/configs/mvebu_espressobin-88f3720_defconfig
index dd1f9121506..09b8ea6b5b7 100644
--- a/configs/mvebu_espressobin-88f3720_defconfig
+++ b/configs/mvebu_espressobin-88f3720_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_MVEBU=y
-CONFIG_SYS_TEXT_BASE=0x00000000
+CONFIG_TEXT_BASE=0x00000000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_TARGET_MVEBU_ARMADA_37XX=y
 CONFIG_MVEBU_EFUSE=y
diff --git a/configs/mvebu_mcbin-88f8040_defconfig b/configs/mvebu_mcbin-88f8040_defconfig
index 8164beb1413..d580bfc6eea 100644
--- a/configs/mvebu_mcbin-88f8040_defconfig
+++ b/configs/mvebu_mcbin-88f8040_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_MVEBU=y
-CONFIG_SYS_TEXT_BASE=0x00000000
+CONFIG_TEXT_BASE=0x00000000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_TARGET_MVEBU_ARMADA_8K=y
 CONFIG_ENV_SIZE=0x10000
diff --git a/configs/mvebu_puzzle-m801-88f8040_defconfig b/configs/mvebu_puzzle-m801-88f8040_defconfig
index 25ae690fe60..06112b373b2 100644
--- a/configs/mvebu_puzzle-m801-88f8040_defconfig
+++ b/configs/mvebu_puzzle-m801-88f8040_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_MVEBU=y
-CONFIG_SYS_TEXT_BASE=0x00000000
+CONFIG_TEXT_BASE=0x00000000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_TARGET_MVEBU_ARMADA_8K=y
 CONFIG_ENV_SIZE=0x10000
diff --git a/configs/mx23_olinuxino_defconfig b/configs/mx23_olinuxino_defconfig
index 9ff772434b7..f949a75d5ad 100644
--- a/configs/mx23_olinuxino_defconfig
+++ b/configs/mx23_olinuxino_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX23=y
-CONFIG_SYS_TEXT_BASE=0x40002000
+CONFIG_TEXT_BASE=0x40002000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/mx23evk_defconfig b/configs/mx23evk_defconfig
index 56122873c4f..0992ada8052 100644
--- a/configs/mx23evk_defconfig
+++ b/configs/mx23evk_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX23=y
-CONFIG_SYS_TEXT_BASE=0x40002000
+CONFIG_TEXT_BASE=0x40002000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/mx28evk_defconfig b/configs/mx28evk_defconfig
index bdfad9fec62..642e8603db1 100644
--- a/configs/mx28evk_defconfig
+++ b/configs/mx28evk_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX28=y
-CONFIG_SYS_TEXT_BASE=0x40002000
+CONFIG_TEXT_BASE=0x40002000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/mx51evk_defconfig b/configs/mx51evk_defconfig
index 82260a98321..cabbbca7302 100644
--- a/configs/mx51evk_defconfig
+++ b/configs/mx51evk_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX5=y
-CONFIG_SYS_TEXT_BASE=0x97800000
+CONFIG_TEXT_BASE=0x97800000
 CONFIG_SYS_MALLOC_LEN=0xa00000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/mx53cx9020_defconfig b/configs/mx53cx9020_defconfig
index 6c3ba9cda74..00f975dedd3 100644
--- a/configs/mx53cx9020_defconfig
+++ b/configs/mx53cx9020_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX5=y
-CONFIG_SYS_TEXT_BASE=0x77800000
+CONFIG_TEXT_BASE=0x77800000
 CONFIG_SYS_MALLOC_LEN=0x2000000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/mx53loco_defconfig b/configs/mx53loco_defconfig
index cf0fd41a996..b2e896b576a 100644
--- a/configs/mx53loco_defconfig
+++ b/configs/mx53loco_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX5=y
-CONFIG_SYS_TEXT_BASE=0x77800000
+CONFIG_TEXT_BASE=0x77800000
 CONFIG_SYS_MALLOC_LEN=0xa00000
 CONFIG_SYS_MALLOC_F_LEN=0x8000
 CONFIG_NR_DRAM_BANKS=2
diff --git a/configs/mx53ppd_defconfig b/configs/mx53ppd_defconfig
index c9c6b652014..af462905888 100644
--- a/configs/mx53ppd_defconfig
+++ b/configs/mx53ppd_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX5=y
-CONFIG_SYS_TEXT_BASE=0x77800000
+CONFIG_TEXT_BASE=0x77800000
 CONFIG_SYS_MALLOC_LEN=0xa00000
 CONFIG_SYS_MALLOC_F_LEN=0x4000
 CONFIG_NR_DRAM_BANKS=2
diff --git a/configs/mx6cuboxi_defconfig b/configs/mx6cuboxi_defconfig
index 46d0e8c9903..3913b0d6e3b 100644
--- a/configs/mx6cuboxi_defconfig
+++ b/configs/mx6cuboxi_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x17800000
+CONFIG_TEXT_BASE=0x17800000
 CONFIG_SYS_MALLOC_LEN=0xa00000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/mx6memcal_defconfig b/configs/mx6memcal_defconfig
index 021e8a6151e..821ae73b5c6 100644
--- a/configs/mx6memcal_defconfig
+++ b/configs/mx6memcal_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x17800000
+CONFIG_TEXT_BASE=0x17800000
 CONFIG_SYS_MALLOC_LEN=0x4000000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/mx6qsabrelite_defconfig b/configs/mx6qsabrelite_defconfig
index 8ccf6b76a5f..6d14cac929b 100644
--- a/configs/mx6qsabrelite_defconfig
+++ b/configs/mx6qsabrelite_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x17800000
+CONFIG_TEXT_BASE=0x17800000
 CONFIG_SYS_MALLOC_LEN=0xa00000
 CONFIG_SYS_MALLOC_F_LEN=0x4000
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/mx6sabreauto_defconfig b/configs/mx6sabreauto_defconfig
index 093bb85c201..21777f6f8f4 100644
--- a/configs/mx6sabreauto_defconfig
+++ b/configs/mx6sabreauto_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x17800000
+CONFIG_TEXT_BASE=0x17800000
 CONFIG_SYS_MALLOC_LEN=0xa00000
 CONFIG_SYS_MALLOC_F_LEN=0x4000
 CONFIG_SPL_GPIO=y
diff --git a/configs/mx6sabresd_defconfig b/configs/mx6sabresd_defconfig
index 5db81821424..4f15d828987 100644
--- a/configs/mx6sabresd_defconfig
+++ b/configs/mx6sabresd_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x17800000
+CONFIG_TEXT_BASE=0x17800000
 CONFIG_SYS_MALLOC_LEN=0xa00000
 CONFIG_SYS_MALLOC_F_LEN=0x4000
 CONFIG_SPL_GPIO=y
diff --git a/configs/mx6slevk_defconfig b/configs/mx6slevk_defconfig
index 59369ba1526..8239e42f744 100644
--- a/configs/mx6slevk_defconfig
+++ b/configs/mx6slevk_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x87800000
+CONFIG_TEXT_BASE=0x87800000
 CONFIG_SYS_MALLOC_LEN=0x300000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/mx6slevk_spinor_defconfig b/configs/mx6slevk_spinor_defconfig
index 7785cd5a6a3..8992cb962b6 100644
--- a/configs/mx6slevk_spinor_defconfig
+++ b/configs/mx6slevk_spinor_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x87800000
+CONFIG_TEXT_BASE=0x87800000
 CONFIG_SYS_MALLOC_LEN=0x300000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/mx6slevk_spl_defconfig b/configs/mx6slevk_spl_defconfig
index 697d002b3f1..70c43d141e7 100644
--- a/configs/mx6slevk_spl_defconfig
+++ b/configs/mx6slevk_spl_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x87800000
+CONFIG_TEXT_BASE=0x87800000
 CONFIG_SYS_MALLOC_LEN=0x300000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/mx6sllevk_defconfig b/configs/mx6sllevk_defconfig
index ec6843e5743..39a15ae830e 100644
--- a/configs/mx6sllevk_defconfig
+++ b/configs/mx6sllevk_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x87800000
+CONFIG_TEXT_BASE=0x87800000
 CONFIG_SYS_MALLOC_LEN=0x1000000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/mx6sllevk_plugin_defconfig b/configs/mx6sllevk_plugin_defconfig
index bd44298cb29..47d82540aca 100644
--- a/configs/mx6sllevk_plugin_defconfig
+++ b/configs/mx6sllevk_plugin_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x87800000
+CONFIG_TEXT_BASE=0x87800000
 CONFIG_SYS_MALLOC_LEN=0x1000000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/mx6sxsabreauto_defconfig b/configs/mx6sxsabreauto_defconfig
index 13ba8b70501..78780a8c706 100644
--- a/configs/mx6sxsabreauto_defconfig
+++ b/configs/mx6sxsabreauto_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x87800000
+CONFIG_TEXT_BASE=0x87800000
 CONFIG_SYS_MALLOC_LEN=0x300000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/mx6sxsabresd_defconfig b/configs/mx6sxsabresd_defconfig
index 2c9a90566a7..a37df31381e 100644
--- a/configs/mx6sxsabresd_defconfig
+++ b/configs/mx6sxsabresd_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x87800000
+CONFIG_TEXT_BASE=0x87800000
 CONFIG_SYS_MALLOC_LEN=0x300000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/mx6ul_14x14_evk_defconfig b/configs/mx6ul_14x14_evk_defconfig
index b87973fa0b9..ba53ae442bb 100644
--- a/configs/mx6ul_14x14_evk_defconfig
+++ b/configs/mx6ul_14x14_evk_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x87800000
+CONFIG_TEXT_BASE=0x87800000
 CONFIG_SYS_MALLOC_LEN=0x1000000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/mx6ul_9x9_evk_defconfig b/configs/mx6ul_9x9_evk_defconfig
index 8062095dd47..180b6d061f1 100644
--- a/configs/mx6ul_9x9_evk_defconfig
+++ b/configs/mx6ul_9x9_evk_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x87800000
+CONFIG_TEXT_BASE=0x87800000
 CONFIG_SYS_MALLOC_LEN=0x1000000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/mx6ull_14x14_evk_defconfig b/configs/mx6ull_14x14_evk_defconfig
index aba288f289f..65db621f156 100644
--- a/configs/mx6ull_14x14_evk_defconfig
+++ b/configs/mx6ull_14x14_evk_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x87800000
+CONFIG_TEXT_BASE=0x87800000
 CONFIG_SYS_MALLOC_LEN=0x1000000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/mx6ull_14x14_evk_plugin_defconfig b/configs/mx6ull_14x14_evk_plugin_defconfig
index dd5dc9eac98..55ddd7eabbd 100644
--- a/configs/mx6ull_14x14_evk_plugin_defconfig
+++ b/configs/mx6ull_14x14_evk_plugin_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x87800000
+CONFIG_TEXT_BASE=0x87800000
 CONFIG_SYS_MALLOC_LEN=0x1000000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/mx6ulz_14x14_evk_defconfig b/configs/mx6ulz_14x14_evk_defconfig
index a3afd12d2cb..0c1b442b682 100644
--- a/configs/mx6ulz_14x14_evk_defconfig
+++ b/configs/mx6ulz_14x14_evk_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x87800000
+CONFIG_TEXT_BASE=0x87800000
 CONFIG_SYS_MALLOC_LEN=0x1000000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/mx7ulp_com_defconfig b/configs/mx7ulp_com_defconfig
index 2b55fbd3b29..abe196f425f 100644
--- a/configs/mx7ulp_com_defconfig
+++ b/configs/mx7ulp_com_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX7ULP=y
-CONFIG_SYS_TEXT_BASE=0x67800000
+CONFIG_TEXT_BASE=0x67800000
 CONFIG_SYS_MALLOC_LEN=0x800000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/mx7ulp_evk_defconfig b/configs/mx7ulp_evk_defconfig
index 95cd22a59d8..ba2a97cfb2b 100644
--- a/configs/mx7ulp_evk_defconfig
+++ b/configs/mx7ulp_evk_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX7ULP=y
-CONFIG_SYS_TEXT_BASE=0x67800000
+CONFIG_TEXT_BASE=0x67800000
 CONFIG_SYS_MALLOC_LEN=0x800000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/mx7ulp_evk_plugin_defconfig b/configs/mx7ulp_evk_plugin_defconfig
index 45cdd74f09a..b31a477f07d 100644
--- a/configs/mx7ulp_evk_plugin_defconfig
+++ b/configs/mx7ulp_evk_plugin_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX7ULP=y
-CONFIG_SYS_TEXT_BASE=0x67800000
+CONFIG_TEXT_BASE=0x67800000
 CONFIG_SYS_MALLOC_LEN=0x800000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/myir_mys_6ulx_defconfig b/configs/myir_mys_6ulx_defconfig
index f748b4dd66b..f25289386e2 100644
--- a/configs/myir_mys_6ulx_defconfig
+++ b/configs/myir_mys_6ulx_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x87800000
+CONFIG_TEXT_BASE=0x87800000
 CONFIG_SYS_MALLOC_LEN=0x1000000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/nanopc-t4-rk3399_defconfig b/configs/nanopc-t4-rk3399_defconfig
index 951fd0cd11e..5a0591fb757 100644
--- a/configs/nanopc-t4-rk3399_defconfig
+++ b/configs/nanopc-t4-rk3399_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=24000000
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x00200000
+CONFIG_TEXT_BASE=0x00200000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_OFFSET=0x3F8000
 CONFIG_DEFAULT_DEVICE_TREE="rk3399-nanopc-t4"
diff --git a/configs/nanopi-k2_defconfig b/configs/nanopi-k2_defconfig
index 74f8f0c5ea0..2fc56fdbfa5 100644
--- a/configs/nanopi-k2_defconfig
+++ b/configs/nanopi-k2_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MESON=y
-CONFIG_SYS_TEXT_BASE=0x01000000
+CONFIG_TEXT_BASE=0x01000000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
 CONFIG_DM_GPIO=y
diff --git a/configs/nanopi-m4-2gb-rk3399_defconfig b/configs/nanopi-m4-2gb-rk3399_defconfig
index 7d0e1f2364f..6684fab6bbb 100644
--- a/configs/nanopi-m4-2gb-rk3399_defconfig
+++ b/configs/nanopi-m4-2gb-rk3399_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=24000000
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x00200000
+CONFIG_TEXT_BASE=0x00200000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_OFFSET=0x3F8000
 CONFIG_DEFAULT_DEVICE_TREE="rk3399-nanopi-m4-2gb"
diff --git a/configs/nanopi-m4-rk3399_defconfig b/configs/nanopi-m4-rk3399_defconfig
index 379ec879685..c73190d4ce8 100644
--- a/configs/nanopi-m4-rk3399_defconfig
+++ b/configs/nanopi-m4-rk3399_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=24000000
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x00200000
+CONFIG_TEXT_BASE=0x00200000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_OFFSET=0x3F8000
 CONFIG_DEFAULT_DEVICE_TREE="rk3399-nanopi-m4"
diff --git a/configs/nanopi-m4b-rk3399_defconfig b/configs/nanopi-m4b-rk3399_defconfig
index 06cefc5e36e..c292bd37eb5 100644
--- a/configs/nanopi-m4b-rk3399_defconfig
+++ b/configs/nanopi-m4b-rk3399_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=24000000
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x00200000
+CONFIG_TEXT_BASE=0x00200000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_OFFSET=0x3F8000
 CONFIG_DEFAULT_DEVICE_TREE="rk3399-nanopi-m4b"
diff --git a/configs/nanopi-neo4-rk3399_defconfig b/configs/nanopi-neo4-rk3399_defconfig
index 4bfbeb10df9..36e9b74587a 100644
--- a/configs/nanopi-neo4-rk3399_defconfig
+++ b/configs/nanopi-neo4-rk3399_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=24000000
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x00200000
+CONFIG_TEXT_BASE=0x00200000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_OFFSET=0x3F8000
 CONFIG_DEFAULT_DEVICE_TREE="rk3399-nanopi-neo4"
diff --git a/configs/nanopi-r2s-rk3328_defconfig b/configs/nanopi-r2s-rk3328_defconfig
index 4dfb7782d98..d53fa743836 100644
--- a/configs/nanopi-r2s-rk3328_defconfig
+++ b/configs/nanopi-r2s-rk3328_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=24000000
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x00200000
+CONFIG_TEXT_BASE=0x00200000
 CONFIG_SPL_GPIO=y
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_OFFSET=0x3F8000
diff --git a/configs/nanopi-r4s-rk3399_defconfig b/configs/nanopi-r4s-rk3399_defconfig
index d8854abbb17..39354a62ad6 100644
--- a/configs/nanopi-r4s-rk3399_defconfig
+++ b/configs/nanopi-r4s-rk3399_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=24000000
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x00200000
+CONFIG_TEXT_BASE=0x00200000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_OFFSET=0x3F8000
 CONFIG_DEFAULT_DEVICE_TREE="rk3399-nanopi-r4s"
diff --git a/configs/nas220_defconfig b/configs/nas220_defconfig
index 07c00c88fff..71d55a59302 100644
--- a/configs/nas220_defconfig
+++ b/configs/nas220_defconfig
@@ -4,7 +4,7 @@ CONFIG_SYS_DCACHE_OFF=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_KIRKWOOD=y
 CONFIG_SYS_KWD_CONFIG="board/Seagate/nas220/kwbimage.cfg"
-CONFIG_SYS_TEXT_BASE=0x600000
+CONFIG_TEXT_BASE=0x600000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_TARGET_NAS220=y
 CONFIG_ENV_SIZE=0x10000
diff --git a/configs/net2big_v2_defconfig b/configs/net2big_v2_defconfig
index a987fbb44fe..5a1bd11702a 100644
--- a/configs/net2big_v2_defconfig
+++ b/configs/net2big_v2_defconfig
@@ -4,7 +4,7 @@ CONFIG_SYS_DCACHE_OFF=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_KIRKWOOD=y
 CONFIG_SYS_KWD_CONFIG="board/LaCie/net2big_v2/kwbimage.cfg"
-CONFIG_SYS_TEXT_BASE=0x600000
+CONFIG_TEXT_BASE=0x600000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_TARGET_NET2BIG_V2=y
 CONFIG_NET2BIG_V2=y
diff --git a/configs/netgear_cg3100d_ram_defconfig b/configs/netgear_cg3100d_ram_defconfig
index d997e6ae1a1..ef7c60adc23 100644
--- a/configs/netgear_cg3100d_ram_defconfig
+++ b/configs/netgear_cg3100d_ram_defconfig
@@ -1,6 +1,6 @@
 CONFIG_MIPS=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
-CONFIG_SYS_TEXT_BASE=0x80010000
+CONFIG_TEXT_BASE=0x80010000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
 CONFIG_DM_GPIO=y
diff --git a/configs/netgear_dgnd3700v2_ram_defconfig b/configs/netgear_dgnd3700v2_ram_defconfig
index cbe1d212af6..8cf5f1bc54a 100644
--- a/configs/netgear_dgnd3700v2_ram_defconfig
+++ b/configs/netgear_dgnd3700v2_ram_defconfig
@@ -1,6 +1,6 @@
 CONFIG_MIPS=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
-CONFIG_SYS_TEXT_BASE=0x80010000
+CONFIG_TEXT_BASE=0x80010000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
 CONFIG_DM_GPIO=y
diff --git a/configs/netspace_lite_v2_defconfig b/configs/netspace_lite_v2_defconfig
index fe6ff790a63..3f2c7d8d141 100644
--- a/configs/netspace_lite_v2_defconfig
+++ b/configs/netspace_lite_v2_defconfig
@@ -4,7 +4,7 @@ CONFIG_SYS_DCACHE_OFF=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_KIRKWOOD=y
 CONFIG_SYS_KWD_CONFIG="board/LaCie/netspace_v2/kwbimage-ns2l.cfg"
-CONFIG_SYS_TEXT_BASE=0x600000
+CONFIG_TEXT_BASE=0x600000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_TARGET_NETSPACE_V2=y
 CONFIG_NETSPACE_LITE_V2=y
diff --git a/configs/netspace_max_v2_defconfig b/configs/netspace_max_v2_defconfig
index d1913807bb1..095af1abd5b 100644
--- a/configs/netspace_max_v2_defconfig
+++ b/configs/netspace_max_v2_defconfig
@@ -4,7 +4,7 @@ CONFIG_SYS_DCACHE_OFF=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_KIRKWOOD=y
 CONFIG_SYS_KWD_CONFIG="board/LaCie/netspace_v2/kwbimage.cfg"
-CONFIG_SYS_TEXT_BASE=0x600000
+CONFIG_TEXT_BASE=0x600000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_TARGET_NETSPACE_V2=y
 CONFIG_NETSPACE_MAX_V2=y
diff --git a/configs/netspace_mini_v2_defconfig b/configs/netspace_mini_v2_defconfig
index 5ce2fbdb93c..eabfddd1acc 100644
--- a/configs/netspace_mini_v2_defconfig
+++ b/configs/netspace_mini_v2_defconfig
@@ -4,7 +4,7 @@ CONFIG_SYS_DCACHE_OFF=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_KIRKWOOD=y
 CONFIG_SYS_KWD_CONFIG="board/LaCie/netspace_v2/kwbimage-ns2l.cfg"
-CONFIG_SYS_TEXT_BASE=0x600000
+CONFIG_TEXT_BASE=0x600000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_TARGET_NETSPACE_V2=y
 CONFIG_NETSPACE_MINI_V2=y
diff --git a/configs/netspace_v2_defconfig b/configs/netspace_v2_defconfig
index 0134bae5bba..2a656752231 100644
--- a/configs/netspace_v2_defconfig
+++ b/configs/netspace_v2_defconfig
@@ -4,7 +4,7 @@ CONFIG_SYS_DCACHE_OFF=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_KIRKWOOD=y
 CONFIG_SYS_KWD_CONFIG="board/LaCie/netspace_v2/kwbimage.cfg"
-CONFIG_SYS_TEXT_BASE=0x600000
+CONFIG_TEXT_BASE=0x600000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_TARGET_NETSPACE_V2=y
 CONFIG_NETSPACE_V2=y
diff --git a/configs/nitrogen6dl2g_defconfig b/configs/nitrogen6dl2g_defconfig
index ad3ad70a9d5..384d2006239 100644
--- a/configs/nitrogen6dl2g_defconfig
+++ b/configs/nitrogen6dl2g_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x17800000
+CONFIG_TEXT_BASE=0x17800000
 CONFIG_SYS_MALLOC_LEN=0xa00000
 CONFIG_SYS_MALLOC_F_LEN=0x4000
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/nitrogen6dl_defconfig b/configs/nitrogen6dl_defconfig
index 4c92f6fd529..3a2f5613b5a 100644
--- a/configs/nitrogen6dl_defconfig
+++ b/configs/nitrogen6dl_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x17800000
+CONFIG_TEXT_BASE=0x17800000
 CONFIG_SYS_MALLOC_LEN=0xa00000
 CONFIG_SYS_MALLOC_F_LEN=0x4000
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/nitrogen6q2g_defconfig b/configs/nitrogen6q2g_defconfig
index 14b80c0f2d3..18921be41cd 100644
--- a/configs/nitrogen6q2g_defconfig
+++ b/configs/nitrogen6q2g_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x17800000
+CONFIG_TEXT_BASE=0x17800000
 CONFIG_SYS_MALLOC_LEN=0xa00000
 CONFIG_SYS_MALLOC_F_LEN=0x4000
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/nitrogen6q_defconfig b/configs/nitrogen6q_defconfig
index 90566f11926..72cbdbc1ea1 100644
--- a/configs/nitrogen6q_defconfig
+++ b/configs/nitrogen6q_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x17800000
+CONFIG_TEXT_BASE=0x17800000
 CONFIG_SYS_MALLOC_LEN=0xa00000
 CONFIG_SYS_MALLOC_F_LEN=0x4000
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/nitrogen6s1g_defconfig b/configs/nitrogen6s1g_defconfig
index 59753b68f23..8a80d530255 100644
--- a/configs/nitrogen6s1g_defconfig
+++ b/configs/nitrogen6s1g_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x17800000
+CONFIG_TEXT_BASE=0x17800000
 CONFIG_SYS_MALLOC_LEN=0xa00000
 CONFIG_SYS_MALLOC_F_LEN=0x4000
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/nitrogen6s_defconfig b/configs/nitrogen6s_defconfig
index 2a21a207129..73cb794a662 100644
--- a/configs/nitrogen6s_defconfig
+++ b/configs/nitrogen6s_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x17800000
+CONFIG_TEXT_BASE=0x17800000
 CONFIG_SYS_MALLOC_LEN=0xa00000
 CONFIG_SYS_MALLOC_F_LEN=0x4000
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/novena_defconfig b/configs/novena_defconfig
index d4ab93850c4..1da676d2af0 100644
--- a/configs/novena_defconfig
+++ b/configs/novena_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x17800000
+CONFIG_TEXT_BASE=0x17800000
 CONFIG_SYS_MALLOC_LEN=0x4000000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/nsa310s_defconfig b/configs/nsa310s_defconfig
index 5d8777ee768..3a3dce59f01 100644
--- a/configs/nsa310s_defconfig
+++ b/configs/nsa310s_defconfig
@@ -8,7 +8,7 @@ CONFIG_SUPPORT_PASSING_ATAGS=y
 CONFIG_CMDLINE_TAG=y
 CONFIG_INITRD_TAG=y
 CONFIG_SYS_KWD_CONFIG="board/zyxel/nsa310s/kwbimage.cfg"
-CONFIG_SYS_TEXT_BASE=0x600000
+CONFIG_TEXT_BASE=0x600000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_TARGET_NSA310S=y
diff --git a/configs/nsim_700_defconfig b/configs/nsim_700_defconfig
index 5fec30c995b..970bdbddc8e 100644
--- a/configs/nsim_700_defconfig
+++ b/configs/nsim_700_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARC=y
 CONFIG_TARGET_NSIM=y
 CONFIG_NSIM_BOARD_CPPFLAGS="-mcpu=arc700 -mlock -mswape"
-CONFIG_SYS_TEXT_BASE=0x81000000
+CONFIG_TEXT_BASE=0x81000000
 CONFIG_SYS_MALLOC_LEN=0x0200000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_DEFAULT_DEVICE_TREE="nsim"
diff --git a/configs/nsim_700be_defconfig b/configs/nsim_700be_defconfig
index 32f43f42097..f5e88d8dda3 100644
--- a/configs/nsim_700be_defconfig
+++ b/configs/nsim_700be_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARC=y
 CONFIG_CPU_BIG_ENDIAN=y
 CONFIG_TARGET_NSIM=y
 CONFIG_NSIM_BOARD_CPPFLAGS="-mcpu=arc700 -mlock -mswape"
-CONFIG_SYS_TEXT_BASE=0x81000000
+CONFIG_TEXT_BASE=0x81000000
 CONFIG_SYS_MALLOC_LEN=0x0200000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_DEFAULT_DEVICE_TREE="nsim"
diff --git a/configs/nsim_hs38_defconfig b/configs/nsim_hs38_defconfig
index 9b85dc41410..1afabe67170 100644
--- a/configs/nsim_hs38_defconfig
+++ b/configs/nsim_hs38_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARC=y
 CONFIG_ISA_ARCV2=y
 CONFIG_TARGET_NSIM=y
 CONFIG_NSIM_BOARD_CPPFLAGS="-mcpu=archs"
-CONFIG_SYS_TEXT_BASE=0x81000000
+CONFIG_TEXT_BASE=0x81000000
 CONFIG_SYS_MALLOC_LEN=0x0200000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_DEFAULT_DEVICE_TREE="nsim"
diff --git a/configs/nsim_hs38be_defconfig b/configs/nsim_hs38be_defconfig
index e0589c41c65..3ef599f232b 100644
--- a/configs/nsim_hs38be_defconfig
+++ b/configs/nsim_hs38be_defconfig
@@ -3,7 +3,7 @@ CONFIG_ISA_ARCV2=y
 CONFIG_CPU_BIG_ENDIAN=y
 CONFIG_TARGET_NSIM=y
 CONFIG_NSIM_BOARD_CPPFLAGS="-mcpu=archs"
-CONFIG_SYS_TEXT_BASE=0x81000000
+CONFIG_TEXT_BASE=0x81000000
 CONFIG_SYS_MALLOC_LEN=0x0200000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_DEFAULT_DEVICE_TREE="nsim"
diff --git a/configs/nyan-big_defconfig b/configs/nyan-big_defconfig
index 6607edde8db..c6d34d5f26d 100644
--- a/configs/nyan-big_defconfig
+++ b/configs/nyan-big_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SYS_L2CACHE_OFF=y
 CONFIG_ARCH_TEGRA=y
-CONFIG_SYS_TEXT_BASE=0x81000100
+CONFIG_TEXT_BASE=0x81000100
 CONFIG_SYS_MALLOC_LEN=0x2500000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/o4-imx6ull-nano_defconfig b/configs/o4-imx6ull-nano_defconfig
index b2eacbded90..94cdf24a170 100644
--- a/configs/o4-imx6ull-nano_defconfig
+++ b/configs/o4-imx6ull-nano_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x87800000
+CONFIG_TEXT_BASE=0x87800000
 CONFIG_SYS_MALLOC_LEN=0xa00000
 CONFIG_MX6ULL=y
 CONFIG_TARGET_O4_IMX6ULL_NANO=y
diff --git a/configs/octeon_ebb7304_defconfig b/configs/octeon_ebb7304_defconfig
index cf251abb958..b966b1d24f0 100644
--- a/configs/octeon_ebb7304_defconfig
+++ b/configs/octeon_ebb7304_defconfig
@@ -1,5 +1,5 @@
 CONFIG_MIPS=y
-CONFIG_SYS_TEXT_BASE=0xffffffff80000000
+CONFIG_TEXT_BASE=0xffffffff80000000
 CONFIG_SYS_MALLOC_LEN=0x1000000
 CONFIG_SYS_MALLOC_F_LEN=0x4000
 CONFIG_NR_DRAM_BANKS=2
diff --git a/configs/octeon_nic23_defconfig b/configs/octeon_nic23_defconfig
index abc79144377..f6b86299a30 100644
--- a/configs/octeon_nic23_defconfig
+++ b/configs/octeon_nic23_defconfig
@@ -1,5 +1,5 @@
 CONFIG_MIPS=y
-CONFIG_SYS_TEXT_BASE=0xffffffff80000000
+CONFIG_TEXT_BASE=0xffffffff80000000
 CONFIG_SYS_MALLOC_LEN=0x1000000
 CONFIG_SYS_MALLOC_F_LEN=0x4000
 CONFIG_NR_DRAM_BANKS=2
diff --git a/configs/octeontx2_95xx_defconfig b/configs/octeontx2_95xx_defconfig
index 700d49ebeda..f4ffe12854e 100644
--- a/configs/octeontx2_95xx_defconfig
+++ b/configs/octeontx2_95xx_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 # CONFIG_ARM64_SUPPORT_AARCH32 is not set
 CONFIG_ARCH_OCTEONTX2=y
-CONFIG_SYS_TEXT_BASE=0x04000000
+CONFIG_TEXT_BASE=0x04000000
 CONFIG_SYS_MALLOC_LEN=0x4008000
 CONFIG_SYS_MALLOC_F_LEN=0x4000
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/octeontx2_96xx_defconfig b/configs/octeontx2_96xx_defconfig
index fe67c4860a1..7ff8d2bb8c0 100644
--- a/configs/octeontx2_96xx_defconfig
+++ b/configs/octeontx2_96xx_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 # CONFIG_ARM64_SUPPORT_AARCH32 is not set
 CONFIG_ARCH_OCTEONTX2=y
-CONFIG_SYS_TEXT_BASE=0x04000000
+CONFIG_TEXT_BASE=0x04000000
 CONFIG_SYS_MALLOC_LEN=0x4008000
 CONFIG_SYS_MALLOC_F_LEN=0x4000
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/octeontx_81xx_defconfig b/configs/octeontx_81xx_defconfig
index c4a22cfd7f2..dbf561703d7 100644
--- a/configs/octeontx_81xx_defconfig
+++ b/configs/octeontx_81xx_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 # CONFIG_ARM64_SUPPORT_AARCH32 is not set
 CONFIG_ARCH_OCTEONTX=y
-CONFIG_SYS_TEXT_BASE=0x2800000
+CONFIG_TEXT_BASE=0x2800000
 CONFIG_SYS_MALLOC_LEN=0x4008000
 CONFIG_SYS_MALLOC_F_LEN=0x4000
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/octeontx_83xx_defconfig b/configs/octeontx_83xx_defconfig
index 4bd662a3180..bfd23fc94a8 100644
--- a/configs/octeontx_83xx_defconfig
+++ b/configs/octeontx_83xx_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 # CONFIG_ARM64_SUPPORT_AARCH32 is not set
 CONFIG_ARCH_OCTEONTX=y
-CONFIG_SYS_TEXT_BASE=0x2800000
+CONFIG_TEXT_BASE=0x2800000
 CONFIG_SYS_MALLOC_LEN=0x4008000
 CONFIG_SYS_MALLOC_F_LEN=0x4000
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/odroid-c2_defconfig b/configs/odroid-c2_defconfig
index 024a2e27d6c..994c1702778 100644
--- a/configs/odroid-c2_defconfig
+++ b/configs/odroid-c2_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MESON=y
-CONFIG_SYS_TEXT_BASE=0x01000000
+CONFIG_TEXT_BASE=0x01000000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
 CONFIG_DM_GPIO=y
diff --git a/configs/odroid-c4_defconfig b/configs/odroid-c4_defconfig
index d244e71866e..c2aa40800ab 100644
--- a/configs/odroid-c4_defconfig
+++ b/configs/odroid-c4_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SYS_BOARD="odroid-n2"
 CONFIG_ARCH_MESON=y
-CONFIG_SYS_TEXT_BASE=0x01000000
+CONFIG_TEXT_BASE=0x01000000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
 CONFIG_DM_GPIO=y
diff --git a/configs/odroid-go2_defconfig b/configs/odroid-go2_defconfig
index f8e432239b5..663c958a2ae 100644
--- a/configs/odroid-go2_defconfig
+++ b/configs/odroid-go2_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=24000000
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x00200000
+CONFIG_TEXT_BASE=0x00200000
 CONFIG_SYS_MALLOC_F_LEN=0x2000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/odroid-hc4_defconfig b/configs/odroid-hc4_defconfig
index fe70d5f12a1..bc13d5083c7 100644
--- a/configs/odroid-hc4_defconfig
+++ b/configs/odroid-hc4_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SYS_BOARD="odroid-n2"
 CONFIG_ARCH_MESON=y
-CONFIG_SYS_TEXT_BASE=0x01000000
+CONFIG_TEXT_BASE=0x01000000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
 CONFIG_DM_GPIO=y
diff --git a/configs/odroid-n2_defconfig b/configs/odroid-n2_defconfig
index 3703d7e17ce..84d912bf14a 100644
--- a/configs/odroid-n2_defconfig
+++ b/configs/odroid-n2_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SYS_BOARD="odroid-n2"
 CONFIG_ARCH_MESON=y
-CONFIG_SYS_TEXT_BASE=0x01000000
+CONFIG_TEXT_BASE=0x01000000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
 CONFIG_DM_GPIO=y
diff --git a/configs/odroid-xu3_defconfig b/configs/odroid-xu3_defconfig
index b2f6741094c..47f7c5d9747 100644
--- a/configs/odroid-xu3_defconfig
+++ b/configs/odroid-xu3_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_EXYNOS=y
-CONFIG_SYS_TEXT_BASE=0x43E00000
+CONFIG_TEXT_BASE=0x43E00000
 CONFIG_SYS_MALLOC_LEN=0x5004000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_ARCH_EXYNOS5=y
diff --git a/configs/odroid_defconfig b/configs/odroid_defconfig
index bd487719815..f57eb1ec91e 100644
--- a/configs/odroid_defconfig
+++ b/configs/odroid_defconfig
@@ -3,7 +3,7 @@ CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_SYS_L2CACHE_OFF=y
 CONFIG_ARCH_EXYNOS=y
-CONFIG_SYS_TEXT_BASE=0x43e00000
+CONFIG_TEXT_BASE=0x43e00000
 CONFIG_SYS_MALLOC_LEN=0x5004000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_ARCH_EXYNOS4=y
diff --git a/configs/omap35_logic_defconfig b/configs/omap35_logic_defconfig
index 945d7b6e7d8..e350e220298 100644
--- a/configs/omap35_logic_defconfig
+++ b/configs/omap35_logic_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 # CONFIG_SPL_USE_ARCH_MEMCPY is not set
 # CONFIG_SPL_USE_ARCH_MEMSET is not set
 CONFIG_ARCH_OMAP2PLUS=y
-CONFIG_SYS_TEXT_BASE=0x80100000
+CONFIG_TEXT_BASE=0x80100000
 CONFIG_SYS_MALLOC_F_LEN=0x3000
 CONFIG_TI_COMMON_CMD_OPTIONS=y
 # CONFIG_SPL_GPIO is not set
diff --git a/configs/omap35_logic_somlv_defconfig b/configs/omap35_logic_somlv_defconfig
index e7d1c4ee37f..adf98563237 100644
--- a/configs/omap35_logic_somlv_defconfig
+++ b/configs/omap35_logic_somlv_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 # CONFIG_SPL_USE_ARCH_MEMCPY is not set
 # CONFIG_SPL_USE_ARCH_MEMSET is not set
 CONFIG_ARCH_OMAP2PLUS=y
-CONFIG_SYS_TEXT_BASE=0x80100000
+CONFIG_TEXT_BASE=0x80100000
 CONFIG_SYS_MALLOC_F_LEN=0x3000
 CONFIG_TI_COMMON_CMD_OPTIONS=y
 # CONFIG_SPL_GPIO is not set
diff --git a/configs/omap3_logic_defconfig b/configs/omap3_logic_defconfig
index bca52bb27cb..e9419a4b91b 100644
--- a/configs/omap3_logic_defconfig
+++ b/configs/omap3_logic_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 # CONFIG_SPL_USE_ARCH_MEMCPY is not set
 # CONFIG_SPL_USE_ARCH_MEMSET is not set
 CONFIG_ARCH_OMAP2PLUS=y
-CONFIG_SYS_TEXT_BASE=0x80100000
+CONFIG_TEXT_BASE=0x80100000
 CONFIG_SYS_MALLOC_F_LEN=0x3000
 CONFIG_TI_COMMON_CMD_OPTIONS=y
 # CONFIG_SPL_GPIO is not set
diff --git a/configs/omap3_logic_somlv_defconfig b/configs/omap3_logic_somlv_defconfig
index 6b5ddb9d6f0..d7574f04e45 100644
--- a/configs/omap3_logic_somlv_defconfig
+++ b/configs/omap3_logic_somlv_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 # CONFIG_SPL_USE_ARCH_MEMCPY is not set
 # CONFIG_SPL_USE_ARCH_MEMSET is not set
 CONFIG_ARCH_OMAP2PLUS=y
-CONFIG_SYS_TEXT_BASE=0x80100000
+CONFIG_TEXT_BASE=0x80100000
 CONFIG_SYS_MALLOC_F_LEN=0x3000
 CONFIG_TI_COMMON_CMD_OPTIONS=y
 # CONFIG_SPL_GPIO is not set
diff --git a/configs/omapl138_lcdk_defconfig b/configs/omapl138_lcdk_defconfig
index cc33fb91b77..a38e465152a 100644
--- a/configs/omapl138_lcdk_defconfig
+++ b/configs/omapl138_lcdk_defconfig
@@ -3,7 +3,7 @@ CONFIG_SKIP_LOWLEVEL_INIT_ONLY=y
 CONFIG_SPL_SKIP_LOWLEVEL_INIT_ONLY=y
 CONFIG_SYS_THUMB_BUILD=y
 CONFIG_ARCH_DAVINCI=y
-CONFIG_SYS_TEXT_BASE=0xc1080000
+CONFIG_TEXT_BASE=0xc1080000
 CONFIG_SYS_MALLOC_LEN=0x110000
 CONFIG_SYS_MALLOC_F_LEN=0x800
 CONFIG_TARGET_OMAPL138_LCDK=y
diff --git a/configs/openpiton_riscv64_defconfig b/configs/openpiton_riscv64_defconfig
index 176b374cce4..04c37f48c17 100644
--- a/configs/openpiton_riscv64_defconfig
+++ b/configs/openpiton_riscv64_defconfig
@@ -1,5 +1,5 @@
 CONFIG_RISCV=y
-CONFIG_SYS_TEXT_BASE=0x80200000
+CONFIG_TEXT_BASE=0x80200000
 CONFIG_SYS_MALLOC_LEN=0x10000000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_DEFAULT_DEVICE_TREE="openpiton-riscv64"
diff --git a/configs/openpiton_riscv64_spl_defconfig b/configs/openpiton_riscv64_spl_defconfig
index 6bb68b833e3..b7ccb683427 100644
--- a/configs/openpiton_riscv64_spl_defconfig
+++ b/configs/openpiton_riscv64_spl_defconfig
@@ -1,5 +1,5 @@
 CONFIG_RISCV=y
-CONFIG_SYS_TEXT_BASE=0x80000000
+CONFIG_TEXT_BASE=0x80000000
 CONFIG_SYS_MALLOC_LEN=0x10000000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_DEFAULT_DEVICE_TREE="openpiton-riscv64"
diff --git a/configs/openrd_base_defconfig b/configs/openrd_base_defconfig
index ba5d3a6bfc3..e6f91814a85 100644
--- a/configs/openrd_base_defconfig
+++ b/configs/openrd_base_defconfig
@@ -5,7 +5,7 @@ CONFIG_ARCH_CPU_INIT=y
 CONFIG_SYS_THUMB_BUILD=y
 CONFIG_ARCH_KIRKWOOD=y
 CONFIG_SYS_KWD_CONFIG="board/Marvell/openrd/kwbimage.cfg"
-CONFIG_SYS_TEXT_BASE=0x600000
+CONFIG_TEXT_BASE=0x600000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_TARGET_OPENRD=y
 CONFIG_ENV_SIZE=0x20000
diff --git a/configs/openrd_client_defconfig b/configs/openrd_client_defconfig
index 0ee6ce3a65e..8aafa718389 100644
--- a/configs/openrd_client_defconfig
+++ b/configs/openrd_client_defconfig
@@ -5,7 +5,7 @@ CONFIG_ARCH_CPU_INIT=y
 CONFIG_SYS_THUMB_BUILD=y
 CONFIG_ARCH_KIRKWOOD=y
 CONFIG_SYS_KWD_CONFIG="board/Marvell/openrd/kwbimage.cfg"
-CONFIG_SYS_TEXT_BASE=0x600000
+CONFIG_TEXT_BASE=0x600000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_TARGET_OPENRD=y
 CONFIG_BOARD_IS_OPENRD_CLIENT=y
diff --git a/configs/openrd_ultimate_defconfig b/configs/openrd_ultimate_defconfig
index f7e8a3ee4e7..a0411032f5b 100644
--- a/configs/openrd_ultimate_defconfig
+++ b/configs/openrd_ultimate_defconfig
@@ -5,7 +5,7 @@ CONFIG_ARCH_CPU_INIT=y
 CONFIG_SYS_THUMB_BUILD=y
 CONFIG_ARCH_KIRKWOOD=y
 CONFIG_SYS_KWD_CONFIG="board/Marvell/openrd/kwbimage.cfg"
-CONFIG_SYS_TEXT_BASE=0x600000
+CONFIG_TEXT_BASE=0x600000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_TARGET_OPENRD=y
 CONFIG_BOARD_IS_OPENRD_ULTIMATE=y
diff --git a/configs/opos6uldev_defconfig b/configs/opos6uldev_defconfig
index e508b63b769..c251ad42eb9 100644
--- a/configs/opos6uldev_defconfig
+++ b/configs/opos6uldev_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x87800000
+CONFIG_TEXT_BASE=0x87800000
 CONFIG_SYS_MALLOC_LEN=0x1000000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/orangepi-rk3399_defconfig b/configs/orangepi-rk3399_defconfig
index fa117ba8d15..39245e8784b 100644
--- a/configs/orangepi-rk3399_defconfig
+++ b/configs/orangepi-rk3399_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=24000000
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x00200000
+CONFIG_TEXT_BASE=0x00200000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_OFFSET=0x3F8000
 CONFIG_DEFAULT_DEVICE_TREE="rk3399-orangepi"
diff --git a/configs/origen_defconfig b/configs/origen_defconfig
index 79e3af950ec..aafefab1219 100644
--- a/configs/origen_defconfig
+++ b/configs/origen_defconfig
@@ -4,7 +4,7 @@ CONFIG_SPL_SKIP_LOWLEVEL_INIT=y
 CONFIG_SYS_DCACHE_OFF=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_EXYNOS=y
-CONFIG_SYS_TEXT_BASE=0x43E00000
+CONFIG_TEXT_BASE=0x43E00000
 CONFIG_SYS_MALLOC_LEN=0x5004000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_ARCH_EXYNOS4=y
diff --git a/configs/p200_defconfig b/configs/p200_defconfig
index ad872f4a9f3..41f9079c217 100644
--- a/configs/p200_defconfig
+++ b/configs/p200_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MESON=y
-CONFIG_SYS_TEXT_BASE=0x01000000
+CONFIG_TEXT_BASE=0x01000000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
 CONFIG_DM_GPIO=y
diff --git a/configs/p201_defconfig b/configs/p201_defconfig
index b61d34f2251..32f47dbf864 100644
--- a/configs/p201_defconfig
+++ b/configs/p201_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SYS_BOARD="p201"
 CONFIG_ARCH_MESON=y
-CONFIG_SYS_TEXT_BASE=0x01000000
+CONFIG_TEXT_BASE=0x01000000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
 CONFIG_DM_GPIO=y
diff --git a/configs/p212_defconfig b/configs/p212_defconfig
index 55092f321b1..ffd003a158e 100644
--- a/configs/p212_defconfig
+++ b/configs/p212_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MESON=y
-CONFIG_SYS_TEXT_BASE=0x01000000
+CONFIG_TEXT_BASE=0x01000000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
 CONFIG_DM_GPIO=y
diff --git a/configs/p2371-0000_defconfig b/configs/p2371-0000_defconfig
index a33a7fcccd8..e8074914c8a 100644
--- a/configs/p2371-0000_defconfig
+++ b/configs/p2371-0000_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SYS_L2CACHE_OFF=y
 CONFIG_ARCH_TEGRA=y
-CONFIG_SYS_TEXT_BASE=0x80080000
+CONFIG_TEXT_BASE=0x80080000
 CONFIG_SYS_MALLOC_LEN=0x2500000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/p2371-2180_defconfig b/configs/p2371-2180_defconfig
index b95a8f68528..ca630a4d9a8 100644
--- a/configs/p2371-2180_defconfig
+++ b/configs/p2371-2180_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=19200000
 CONFIG_SYS_L2CACHE_OFF=y
 CONFIG_ARCH_TEGRA=y
-CONFIG_SYS_TEXT_BASE=0x80080000
+CONFIG_TEXT_BASE=0x80080000
 CONFIG_SYS_MALLOC_LEN=0x2500000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/p2571_defconfig b/configs/p2571_defconfig
index 0dfd36e553b..bc3fb3e5ae3 100644
--- a/configs/p2571_defconfig
+++ b/configs/p2571_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SYS_L2CACHE_OFF=y
 CONFIG_ARCH_TEGRA=y
-CONFIG_SYS_TEXT_BASE=0x80080000
+CONFIG_TEXT_BASE=0x80080000
 CONFIG_SYS_MALLOC_LEN=0x2500000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/p2771-0000-000_defconfig b/configs/p2771-0000-000_defconfig
index e291c378089..8b1d2b286b8 100644
--- a/configs/p2771-0000-000_defconfig
+++ b/configs/p2771-0000-000_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=19200000
 CONFIG_SYS_L2CACHE_OFF=y
 CONFIG_ARCH_TEGRA=y
-CONFIG_SYS_TEXT_BASE=0x80080000
+CONFIG_TEXT_BASE=0x80080000
 CONFIG_NR_DRAM_BANKS=1026
 CONFIG_ENV_SIZE=0x2000
 CONFIG_ENV_OFFSET=0xFFFFE000
diff --git a/configs/p2771-0000-500_defconfig b/configs/p2771-0000-500_defconfig
index 12282f37848..4a2f6222923 100644
--- a/configs/p2771-0000-500_defconfig
+++ b/configs/p2771-0000-500_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=19200000
 CONFIG_SYS_L2CACHE_OFF=y
 CONFIG_ARCH_TEGRA=y
-CONFIG_SYS_TEXT_BASE=0x80080000
+CONFIG_TEXT_BASE=0x80080000
 CONFIG_NR_DRAM_BANKS=1026
 CONFIG_ENV_SIZE=0x2000
 CONFIG_ENV_OFFSET=0xFFFFE000
diff --git a/configs/p3450-0000_defconfig b/configs/p3450-0000_defconfig
index b199fbeaf40..01605466e39 100644
--- a/configs/p3450-0000_defconfig
+++ b/configs/p3450-0000_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=19200000
 CONFIG_SYS_L2CACHE_OFF=y
 CONFIG_ARCH_TEGRA=y
-CONFIG_SYS_TEXT_BASE=0x80080000
+CONFIG_TEXT_BASE=0x80080000
 CONFIG_SYS_MALLOC_LEN=0x2500000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/paz00_defconfig b/configs/paz00_defconfig
index bb115221f6c..7031b5808ca 100644
--- a/configs/paz00_defconfig
+++ b/configs/paz00_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SYS_L2CACHE_OFF=y
 CONFIG_ARCH_TEGRA=y
-CONFIG_SYS_TEXT_BASE=0x00110000
+CONFIG_TEXT_BASE=0x00110000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x2000
 CONFIG_ENV_OFFSET=0xFFFFE000
diff --git a/configs/pcm052_defconfig b/configs/pcm052_defconfig
index a74b9378755..70b6faae36a 100644
--- a/configs/pcm052_defconfig
+++ b/configs/pcm052_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_SYS_THUMB_BUILD=y
 CONFIG_ARCH_VF610=y
-CONFIG_SYS_TEXT_BASE=0x3f401000
+CONFIG_TEXT_BASE=0x3f401000
 CONFIG_SYS_MALLOC_LEN=0x202000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/pcm058_defconfig b/configs/pcm058_defconfig
index 8d9ee88b477..459bfb04959 100644
--- a/configs/pcm058_defconfig
+++ b/configs/pcm058_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x17800000
+CONFIG_TEXT_BASE=0x17800000
 CONFIG_SYS_MALLOC_LEN=0x800000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/peach-pi_defconfig b/configs/peach-pi_defconfig
index 51210f88a00..cf79bdcf1ee 100644
--- a/configs/peach-pi_defconfig
+++ b/configs/peach-pi_defconfig
@@ -3,7 +3,7 @@ CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_SPL_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_EXYNOS=y
-CONFIG_SYS_TEXT_BASE=0x23E00000
+CONFIG_TEXT_BASE=0x23E00000
 CONFIG_SYS_MALLOC_LEN=0x5004000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_ARCH_EXYNOS5=y
diff --git a/configs/peach-pit_defconfig b/configs/peach-pit_defconfig
index e2fbb8a0ab9..f6b1aa59ca7 100644
--- a/configs/peach-pit_defconfig
+++ b/configs/peach-pit_defconfig
@@ -3,7 +3,7 @@ CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_SPL_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_EXYNOS=y
-CONFIG_SYS_TEXT_BASE=0x23E00000
+CONFIG_TEXT_BASE=0x23E00000
 CONFIG_SYS_MALLOC_LEN=0x5004000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_ARCH_EXYNOS5=y
diff --git a/configs/pg_wcom_expu1_defconfig b/configs/pg_wcom_expu1_defconfig
index aa4deac3df3..a697d7c69c3 100644
--- a/configs/pg_wcom_expu1_defconfig
+++ b/configs/pg_wcom_expu1_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=8333333
 CONFIG_TARGET_PG_WCOM_EXPU1=y
-CONFIG_SYS_TEXT_BASE=0x60100000
+CONFIG_TEXT_BASE=0x60100000
 CONFIG_SYS_MALLOC_LEN=0x1004000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x4000
diff --git a/configs/pg_wcom_expu1_update_defconfig b/configs/pg_wcom_expu1_update_defconfig
index ba82a4f0d0f..4946ace8e65 100644
--- a/configs/pg_wcom_expu1_update_defconfig
+++ b/configs/pg_wcom_expu1_update_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=8333333
 CONFIG_TARGET_PG_WCOM_EXPU1=y
-CONFIG_SYS_TEXT_BASE=0x60240000
+CONFIG_TEXT_BASE=0x60240000
 CONFIG_SYS_MALLOC_LEN=0x1004000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x4000
diff --git a/configs/pg_wcom_seli8_defconfig b/configs/pg_wcom_seli8_defconfig
index c1b60aa5166..145c2b52e14 100644
--- a/configs/pg_wcom_seli8_defconfig
+++ b/configs/pg_wcom_seli8_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=8333333
 CONFIG_TARGET_PG_WCOM_SELI8=y
-CONFIG_SYS_TEXT_BASE=0x60100000
+CONFIG_TEXT_BASE=0x60100000
 CONFIG_SYS_MALLOC_LEN=0x1004000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x4000
diff --git a/configs/pg_wcom_seli8_update_defconfig b/configs/pg_wcom_seli8_update_defconfig
index 5aef18d5866..3073b8f8d51 100644
--- a/configs/pg_wcom_seli8_update_defconfig
+++ b/configs/pg_wcom_seli8_update_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=8333333
 CONFIG_TARGET_PG_WCOM_SELI8=y
-CONFIG_SYS_TEXT_BASE=0x60240000
+CONFIG_TEXT_BASE=0x60240000
 CONFIG_SYS_MALLOC_LEN=0x1004000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x4000
diff --git a/configs/phycore-imx8mm_defconfig b/configs/phycore-imx8mm_defconfig
index 9b8c09a73ab..ca2bf19734b 100644
--- a/configs/phycore-imx8mm_defconfig
+++ b/configs/phycore-imx8mm_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_IMX8M=y
-CONFIG_SYS_TEXT_BASE=0x40200000
+CONFIG_TEXT_BASE=0x40200000
 CONFIG_SYS_MALLOC_LEN=0x2000000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/phycore-imx8mp_defconfig b/configs/phycore-imx8mp_defconfig
index ac8c4e6836e..0c1cad8086b 100644
--- a/configs/phycore-imx8mp_defconfig
+++ b/configs/phycore-imx8mp_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_IMX8M=y
-CONFIG_SYS_TEXT_BASE=0x40200000
+CONFIG_TEXT_BASE=0x40200000
 CONFIG_SYS_MALLOC_LEN=0x2000000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/phycore-rk3288_defconfig b/configs/phycore-rk3288_defconfig
index cfe02dfe216..025eb325a8d 100644
--- a/configs/phycore-rk3288_defconfig
+++ b/configs/phycore-rk3288_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SPL_SKIP_LOWLEVEL_INIT_ONLY=y
 CONFIG_SYS_ARCH_TIMER=y
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x00000000
+CONFIG_TEXT_BASE=0x00000000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_OFFSET=0x3F8000
 CONFIG_DEFAULT_DEVICE_TREE="rk3288-phycore-rdk"
diff --git a/configs/phycore_pcl063_defconfig b/configs/phycore_pcl063_defconfig
index b9d2a976636..b5eea3cf85b 100644
--- a/configs/phycore_pcl063_defconfig
+++ b/configs/phycore_pcl063_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x87800000
+CONFIG_TEXT_BASE=0x87800000
 CONFIG_SYS_MALLOC_LEN=0x1000000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/phycore_pcl063_ull_defconfig b/configs/phycore_pcl063_ull_defconfig
index f172b065bfc..5a734c0fc84 100644
--- a/configs/phycore_pcl063_ull_defconfig
+++ b/configs/phycore_pcl063_ull_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x87800000
+CONFIG_TEXT_BASE=0x87800000
 CONFIG_SYS_MALLOC_LEN=0x1000000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/pic32mzdask_defconfig b/configs/pic32mzdask_defconfig
index 19303f8c9d1..d4eb6f42088 100644
--- a/configs/pic32mzdask_defconfig
+++ b/configs/pic32mzdask_defconfig
@@ -1,5 +1,5 @@
 CONFIG_MIPS=y
-CONFIG_SYS_TEXT_BASE=0x9D004000
+CONFIG_TEXT_BASE=0x9D004000
 CONFIG_SYS_MALLOC_LEN=0x40000
 CONFIG_SYS_MALLOC_F_LEN=0x600
 CONFIG_ENV_SIZE=0x4000
diff --git a/configs/pico-dwarf-imx6ul_defconfig b/configs/pico-dwarf-imx6ul_defconfig
index d6ca9e658ef..d7031bc9d58 100644
--- a/configs/pico-dwarf-imx6ul_defconfig
+++ b/configs/pico-dwarf-imx6ul_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x87800000
+CONFIG_TEXT_BASE=0x87800000
 CONFIG_SYS_MALLOC_LEN=0x2300000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/pico-hobbit-imx6ul_defconfig b/configs/pico-hobbit-imx6ul_defconfig
index 6dc37540293..48ede496169 100644
--- a/configs/pico-hobbit-imx6ul_defconfig
+++ b/configs/pico-hobbit-imx6ul_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x87800000
+CONFIG_TEXT_BASE=0x87800000
 CONFIG_SYS_MALLOC_LEN=0x2300000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/pico-imx6_defconfig b/configs/pico-imx6_defconfig
index ef724618ed9..681ba025690 100644
--- a/configs/pico-imx6_defconfig
+++ b/configs/pico-imx6_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x17800000
+CONFIG_TEXT_BASE=0x17800000
 CONFIG_SYS_MALLOC_LEN=0x2300000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/pico-imx6ul_defconfig b/configs/pico-imx6ul_defconfig
index 7384b9b6eac..7b6ef31feb1 100644
--- a/configs/pico-imx6ul_defconfig
+++ b/configs/pico-imx6ul_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x87800000
+CONFIG_TEXT_BASE=0x87800000
 CONFIG_SYS_MALLOC_LEN=0x2300000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/pico-imx8mq_defconfig b/configs/pico-imx8mq_defconfig
index 39136e1c8b9..8867317f375 100644
--- a/configs/pico-imx8mq_defconfig
+++ b/configs/pico-imx8mq_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_IMX8M=y
-CONFIG_SYS_TEXT_BASE=0x40200000
+CONFIG_TEXT_BASE=0x40200000
 CONFIG_SYS_MALLOC_LEN=0x600000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/pico-pi-imx6ul_defconfig b/configs/pico-pi-imx6ul_defconfig
index faf3c842134..62381ef3049 100644
--- a/configs/pico-pi-imx6ul_defconfig
+++ b/configs/pico-pi-imx6ul_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x87800000
+CONFIG_TEXT_BASE=0x87800000
 CONFIG_SYS_MALLOC_LEN=0x2300000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/pinebook-pro-rk3399_defconfig b/configs/pinebook-pro-rk3399_defconfig
index 5d9a8418998..7931cf2068f 100644
--- a/configs/pinebook-pro-rk3399_defconfig
+++ b/configs/pinebook-pro-rk3399_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=24000000
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x00200000
+CONFIG_TEXT_BASE=0x00200000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x8000
 CONFIG_ENV_OFFSET=0x3F8000
diff --git a/configs/plutux_defconfig b/configs/plutux_defconfig
index 958392fd6c3..170ac86468d 100644
--- a/configs/plutux_defconfig
+++ b/configs/plutux_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SYS_L2CACHE_OFF=y
 CONFIG_ARCH_TEGRA=y
-CONFIG_SYS_TEXT_BASE=0x00110000
+CONFIG_TEXT_BASE=0x00110000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x2000
 CONFIG_ENV_OFFSET=0x1FFE0000
diff --git a/configs/pm9261_defconfig b/configs/pm9261_defconfig
index cd73fe41f98..8f5ee2ee94a 100644
--- a/configs/pm9261_defconfig
+++ b/configs/pm9261_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0
+CONFIG_TEXT_BASE=0
 CONFIG_SYS_MALLOC_LEN=0x50000
 CONFIG_TARGET_PM9261=y
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/pm9263_defconfig b/configs/pm9263_defconfig
index 67fb1b94831..deaec021fe0 100644
--- a/configs/pm9263_defconfig
+++ b/configs/pm9263_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0
+CONFIG_TEXT_BASE=0
 CONFIG_SYS_MALLOC_LEN=0x50000
 CONFIG_TARGET_PM9263=y
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/pm9g45_defconfig b/configs/pm9g45_defconfig
index 015fa5c4122..5cf5bec4abb 100644
--- a/configs/pm9g45_defconfig
+++ b/configs/pm9g45_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x73f00000
+CONFIG_TEXT_BASE=0x73f00000
 CONFIG_SYS_MALLOC_LEN=0x80000
 CONFIG_TARGET_PM9G45=y
 CONFIG_ATMEL_LEGACY=y
diff --git a/configs/pogo_e02_defconfig b/configs/pogo_e02_defconfig
index 15b883b6b09..e7ef1b02fe0 100644
--- a/configs/pogo_e02_defconfig
+++ b/configs/pogo_e02_defconfig
@@ -5,7 +5,7 @@ CONFIG_ARCH_CPU_INIT=y
 CONFIG_SYS_THUMB_BUILD=y
 CONFIG_ARCH_KIRKWOOD=y
 CONFIG_SYS_KWD_CONFIG="board/cloudengines/pogo_e02/kwbimage.cfg"
-CONFIG_SYS_TEXT_BASE=0x600000
+CONFIG_TEXT_BASE=0x600000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_TARGET_POGO_E02=y
 CONFIG_ENV_SIZE=0x20000
diff --git a/configs/pogo_v4_defconfig b/configs/pogo_v4_defconfig
index f402ae67ffb..8b822867dd6 100644
--- a/configs/pogo_v4_defconfig
+++ b/configs/pogo_v4_defconfig
@@ -8,7 +8,7 @@ CONFIG_SUPPORT_PASSING_ATAGS=y
 CONFIG_CMDLINE_TAG=y
 CONFIG_INITRD_TAG=y
 CONFIG_SYS_KWD_CONFIG="board/cloudengines/pogo_v4/kwbimage.cfg"
-CONFIG_SYS_TEXT_BASE=0x600000
+CONFIG_TEXT_BASE=0x600000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_TARGET_POGO_V4=y
 CONFIG_ENV_SIZE=0x20000
diff --git a/configs/poleg_evb_defconfig b/configs/poleg_evb_defconfig
index 597a72eed9d..914fc39a7e3 100644
--- a/configs/poleg_evb_defconfig
+++ b/configs/poleg_evb_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_SYS_L2_PL310=y
 CONFIG_ARCH_NPCM=y
-CONFIG_SYS_TEXT_BASE=0x8200
+CONFIG_TEXT_BASE=0x8200
 CONFIG_SYS_MALLOC_LEN=0x240000
 CONFIG_SYS_MALLOC_F_LEN=0x1000
 CONFIG_NR_DRAM_BANKS=2
diff --git a/configs/pomelo_defconfig b/configs/pomelo_defconfig
index ee5abb0e1e3..be6806f8b92 100644
--- a/configs/pomelo_defconfig
+++ b/configs/pomelo_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_TARGET_POMELO=y
-CONFIG_SYS_TEXT_BASE=0x180000
+CONFIG_TEXT_BASE=0x180000
 CONFIG_SYS_MALLOC_LEN=0x101000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/poplar_defconfig b/configs/poplar_defconfig
index f32b80f48e1..70dde31c837 100644
--- a/configs/poplar_defconfig
+++ b/configs/poplar_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_TARGET_POPLAR=y
-CONFIG_SYS_TEXT_BASE=0x37000000
+CONFIG_TEXT_BASE=0x37000000
 CONFIG_SYS_MALLOC_LEN=0x2000000
 CONFIG_SYS_MALLOC_F_LEN=0x4000
 CONFIG_NR_DRAM_BANKS=2
diff --git a/configs/popmetal-rk3288_defconfig b/configs/popmetal-rk3288_defconfig
index c010a8d7fa3..2d250e020dd 100644
--- a/configs/popmetal-rk3288_defconfig
+++ b/configs/popmetal-rk3288_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SPL_SKIP_LOWLEVEL_INIT_ONLY=y
 CONFIG_SYS_ARCH_TIMER=y
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x00000000
+CONFIG_TEXT_BASE=0x00000000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_OFFSET=0x3F8000
 CONFIG_DEFAULT_DEVICE_TREE="rk3288-popmetal"
diff --git a/configs/porter_defconfig b/configs/porter_defconfig
index 302291285f9..aedaa9b1951 100644
--- a/configs/porter_defconfig
+++ b/configs/porter_defconfig
@@ -4,7 +4,7 @@ CONFIG_ENABLE_ARM_SOC_BOOT0_HOOK=y
 # CONFIG_SPL_USE_ARCH_MEMCPY is not set
 # CONFIG_SPL_USE_ARCH_MEMSET is not set
 CONFIG_ARCH_RMOBILE=y
-CONFIG_SYS_TEXT_BASE=0x50000000
+CONFIG_TEXT_BASE=0x50000000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_SYS_MALLOC_F_LEN=0x8000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/puma-rk3399_defconfig b/configs/puma-rk3399_defconfig
index 6acc442ba84..a2ed654e750 100644
--- a/configs/puma-rk3399_defconfig
+++ b/configs/puma-rk3399_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=24000000
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x00200000
+CONFIG_TEXT_BASE=0x00200000
 CONFIG_SPL_GPIO=y
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_OFFSET=0x3F8000
diff --git a/configs/px30-core-ctouch2-of10-px30_defconfig b/configs/px30-core-ctouch2-of10-px30_defconfig
index 625460b34e5..bfd34d0f5d7 100644
--- a/configs/px30-core-ctouch2-of10-px30_defconfig
+++ b/configs/px30-core-ctouch2-of10-px30_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=24000000
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x00200000
+CONFIG_TEXT_BASE=0x00200000
 CONFIG_SYS_MALLOC_F_LEN=0x2000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/px30-core-ctouch2-px30_defconfig b/configs/px30-core-ctouch2-px30_defconfig
index bca46982125..c1334055f32 100644
--- a/configs/px30-core-ctouch2-px30_defconfig
+++ b/configs/px30-core-ctouch2-px30_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=24000000
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x00200000
+CONFIG_TEXT_BASE=0x00200000
 CONFIG_SYS_MALLOC_F_LEN=0x2000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/px30-core-edimm2.2-px30_defconfig b/configs/px30-core-edimm2.2-px30_defconfig
index c13af9320e9..53a73013850 100644
--- a/configs/px30-core-edimm2.2-px30_defconfig
+++ b/configs/px30-core-edimm2.2-px30_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=24000000
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x00200000
+CONFIG_TEXT_BASE=0x00200000
 CONFIG_SYS_MALLOC_F_LEN=0x2000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/pxm2_defconfig b/configs/pxm2_defconfig
index 8802bdeffb1..88197ea2e19 100644
--- a/configs/pxm2_defconfig
+++ b/configs/pxm2_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_OMAP2PLUS=y
-CONFIG_SYS_TEXT_BASE=0x80100000
+CONFIG_TEXT_BASE=0x80100000
 CONFIG_SYS_MALLOC_LEN=0x1000000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/qemu-ppce500_defconfig b/configs/qemu-ppce500_defconfig
index 7756f5f4aef..fb0d630bf56 100644
--- a/configs/qemu-ppce500_defconfig
+++ b/configs/qemu-ppce500_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0xf00000
+CONFIG_TEXT_BASE=0xf00000
 CONFIG_ENV_SIZE=0x2000
 CONFIG_DEFAULT_DEVICE_TREE="qemu-ppce500"
 CONFIG_SYS_CLK_FREQ=33000000
diff --git a/configs/qemu-x86_64_defconfig b/configs/qemu-x86_64_defconfig
index b81e60658fd..8433b5734f6 100644
--- a/configs/qemu-x86_64_defconfig
+++ b/configs/qemu-x86_64_defconfig
@@ -1,5 +1,5 @@
 CONFIG_X86=y
-CONFIG_SYS_TEXT_BASE=0x1110000
+CONFIG_TEXT_BASE=0x1110000
 CONFIG_SYS_MALLOC_F_LEN=0x1000
 CONFIG_NR_DRAM_BANKS=8
 CONFIG_ENV_SIZE=0x40000
diff --git a/configs/qemu-x86_defconfig b/configs/qemu-x86_defconfig
index c65b5868cd2..f82f628d5bb 100644
--- a/configs/qemu-x86_defconfig
+++ b/configs/qemu-x86_defconfig
@@ -1,5 +1,5 @@
 CONFIG_X86=y
-CONFIG_SYS_TEXT_BASE=0xFFF00000
+CONFIG_TEXT_BASE=0xFFF00000
 CONFIG_SYS_MALLOC_F_LEN=0x1000
 CONFIG_NR_DRAM_BANKS=8
 CONFIG_ENV_SIZE=0x40000
diff --git a/configs/r2dplus_defconfig b/configs/r2dplus_defconfig
index ab4fcc6dddb..9426b38bd6c 100644
--- a/configs/r2dplus_defconfig
+++ b/configs/r2dplus_defconfig
@@ -1,5 +1,5 @@
 CONFIG_SH=y
-CONFIG_SYS_TEXT_BASE=0x8FE00000
+CONFIG_TEXT_BASE=0x8FE00000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_ENV_SIZE=0x40000
diff --git a/configs/r8a77970_eagle_defconfig b/configs/r8a77970_eagle_defconfig
index 5f524ae4ad3..9716ebff926 100644
--- a/configs/r8a77970_eagle_defconfig
+++ b/configs/r8a77970_eagle_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=16666666
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_RMOBILE=y
-CONFIG_SYS_TEXT_BASE=0x50000000
+CONFIG_TEXT_BASE=0x50000000
 CONFIG_SYS_MALLOC_LEN=0x4000000
 CONFIG_SYS_MALLOC_F_LEN=0x2000
 CONFIG_ENV_SIZE=0x40000
diff --git a/configs/r8a77980_condor_defconfig b/configs/r8a77980_condor_defconfig
index 9e1b17addad..a05b92d41b2 100644
--- a/configs/r8a77980_condor_defconfig
+++ b/configs/r8a77980_condor_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=16666666
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_RMOBILE=y
-CONFIG_SYS_TEXT_BASE=0x50000000
+CONFIG_TEXT_BASE=0x50000000
 CONFIG_SYS_MALLOC_LEN=0x4000000
 CONFIG_SYS_MALLOC_F_LEN=0x2000
 CONFIG_ENV_SIZE=0x40000
diff --git a/configs/r8a77990_ebisu_defconfig b/configs/r8a77990_ebisu_defconfig
index ff7a8fb99a4..1ee826b748c 100644
--- a/configs/r8a77990_ebisu_defconfig
+++ b/configs/r8a77990_ebisu_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=16666666
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_RMOBILE=y
-CONFIG_SYS_TEXT_BASE=0x50000000
+CONFIG_TEXT_BASE=0x50000000
 CONFIG_SYS_MALLOC_LEN=0x4000000
 CONFIG_SYS_MALLOC_F_LEN=0x2000
 CONFIG_ENV_SIZE=0x20000
diff --git a/configs/r8a77995_draak_defconfig b/configs/r8a77995_draak_defconfig
index 64f9583b9f5..12e8704bf42 100644
--- a/configs/r8a77995_draak_defconfig
+++ b/configs/r8a77995_draak_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=16666666
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_RMOBILE=y
-CONFIG_SYS_TEXT_BASE=0x50000000
+CONFIG_TEXT_BASE=0x50000000
 CONFIG_SYS_MALLOC_LEN=0x4000000
 CONFIG_SYS_MALLOC_F_LEN=0x2000
 CONFIG_ENV_SIZE=0x20000
diff --git a/configs/r8a779a0_falcon_defconfig b/configs/r8a779a0_falcon_defconfig
index 7375973d0fa..7ccedf77240 100644
--- a/configs/r8a779a0_falcon_defconfig
+++ b/configs/r8a779a0_falcon_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=16666666
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_RMOBILE=y
-CONFIG_SYS_TEXT_BASE=0x50000000
+CONFIG_TEXT_BASE=0x50000000
 CONFIG_SYS_MALLOC_LEN=0x4000000
 CONFIG_ENV_SIZE=0x40000
 CONFIG_ENV_OFFSET=0xC00000
diff --git a/configs/radxa-zero_defconfig b/configs/radxa-zero_defconfig
index d3744f48a31..6fb3397dc50 100644
--- a/configs/radxa-zero_defconfig
+++ b/configs/radxa-zero_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MESON=y
-CONFIG_SYS_TEXT_BASE=0x01000000
+CONFIG_TEXT_BASE=0x01000000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
 CONFIG_DM_GPIO=y
diff --git a/configs/rastaban_defconfig b/configs/rastaban_defconfig
index 1a8c03c70ed..861f0f59bc8 100644
--- a/configs/rastaban_defconfig
+++ b/configs/rastaban_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_OMAP2PLUS=y
-CONFIG_SYS_TEXT_BASE=0x80100000
+CONFIG_TEXT_BASE=0x80100000
 CONFIG_SYS_MALLOC_LEN=0x1000000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/rcar3_ulcb_defconfig b/configs/rcar3_ulcb_defconfig
index b00e9f4e2bf..f462bab5a8d 100644
--- a/configs/rcar3_ulcb_defconfig
+++ b/configs/rcar3_ulcb_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=16666666
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_RMOBILE=y
-CONFIG_SYS_TEXT_BASE=0x50000000
+CONFIG_TEXT_BASE=0x50000000
 CONFIG_SYS_MALLOC_LEN=0x4000000
 CONFIG_SYS_MALLOC_F_LEN=0x2000
 CONFIG_ENV_SIZE=0x20000
diff --git a/configs/riotboard_defconfig b/configs/riotboard_defconfig
index 512e9d15765..e56a8d03317 100644
--- a/configs/riotboard_defconfig
+++ b/configs/riotboard_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x17800000
+CONFIG_TEXT_BASE=0x17800000
 CONFIG_SYS_MALLOC_LEN=0xa00000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/roc-cc-rk3308_defconfig b/configs/roc-cc-rk3308_defconfig
index 8b0717511c4..670211e2e9d 100644
--- a/configs/roc-cc-rk3308_defconfig
+++ b/configs/roc-cc-rk3308_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=24000000
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x00600000
+CONFIG_TEXT_BASE=0x00600000
 CONFIG_SYS_MALLOC_F_LEN=0x2000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/roc-cc-rk3328_defconfig b/configs/roc-cc-rk3328_defconfig
index 8e2e5302e40..90367ed006e 100644
--- a/configs/roc-cc-rk3328_defconfig
+++ b/configs/roc-cc-rk3328_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=24000000
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x00200000
+CONFIG_TEXT_BASE=0x00200000
 CONFIG_SPL_GPIO=y
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_OFFSET=0x3F8000
diff --git a/configs/roc-pc-mezzanine-rk3399_defconfig b/configs/roc-pc-mezzanine-rk3399_defconfig
index be1f9db43e8..c6df8bbf972 100644
--- a/configs/roc-pc-mezzanine-rk3399_defconfig
+++ b/configs/roc-pc-mezzanine-rk3399_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=24000000
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x00200000
+CONFIG_TEXT_BASE=0x00200000
 CONFIG_SPL_GPIO=y
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x8000
diff --git a/configs/roc-pc-rk3399_defconfig b/configs/roc-pc-rk3399_defconfig
index 4625e47537c..c2b5bed1617 100644
--- a/configs/roc-pc-rk3399_defconfig
+++ b/configs/roc-pc-rk3399_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=24000000
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x00200000
+CONFIG_TEXT_BASE=0x00200000
 CONFIG_SPL_GPIO=y
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x8000
diff --git a/configs/rock-pi-4-rk3399_defconfig b/configs/rock-pi-4-rk3399_defconfig
index f8a57f68381..2f11846911d 100644
--- a/configs/rock-pi-4-rk3399_defconfig
+++ b/configs/rock-pi-4-rk3399_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=24000000
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x00200000
+CONFIG_TEXT_BASE=0x00200000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_OFFSET=0x3F8000
 CONFIG_DEFAULT_DEVICE_TREE="rk3399-rock-pi-4b"
diff --git a/configs/rock-pi-4c-rk3399_defconfig b/configs/rock-pi-4c-rk3399_defconfig
index 9aa7809bd09..55cea78d412 100644
--- a/configs/rock-pi-4c-rk3399_defconfig
+++ b/configs/rock-pi-4c-rk3399_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=24000000
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x00200000
+CONFIG_TEXT_BASE=0x00200000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_OFFSET=0x3F8000
 CONFIG_DEFAULT_DEVICE_TREE="rk3399-rock-pi-4c"
diff --git a/configs/rock-pi-e-rk3328_defconfig b/configs/rock-pi-e-rk3328_defconfig
index 9831670137e..fa2f4e4a16a 100644
--- a/configs/rock-pi-e-rk3328_defconfig
+++ b/configs/rock-pi-e-rk3328_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=24000000
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x00200000
+CONFIG_TEXT_BASE=0x00200000
 CONFIG_SPL_GPIO=y
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_OFFSET=0x3F8000
diff --git a/configs/rock-pi-n10-rk3399pro_defconfig b/configs/rock-pi-n10-rk3399pro_defconfig
index ed77ac2d1da..57757c4c6ca 100644
--- a/configs/rock-pi-n10-rk3399pro_defconfig
+++ b/configs/rock-pi-n10-rk3399pro_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=24000000
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x00200000
+CONFIG_TEXT_BASE=0x00200000
 CONFIG_SPL_GPIO=y
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_OFFSET=0x3F8000
diff --git a/configs/rock-pi-n8-rk3288_defconfig b/configs/rock-pi-n8-rk3288_defconfig
index 6227ad39c13..9bbff223337 100644
--- a/configs/rock-pi-n8-rk3288_defconfig
+++ b/configs/rock-pi-n8-rk3288_defconfig
@@ -5,7 +5,7 @@ CONFIG_SYS_ARCH_TIMER=y
 # CONFIG_SPL_USE_ARCH_MEMCPY is not set
 # CONFIG_SPL_USE_ARCH_MEMSET is not set
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x00100000
+CONFIG_TEXT_BASE=0x00100000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_OFFSET=0x3F8000
 CONFIG_DEFAULT_DEVICE_TREE="rk3288-rock-pi-n8"
diff --git a/configs/rock2_defconfig b/configs/rock2_defconfig
index d639ed23385..56878571ff4 100644
--- a/configs/rock2_defconfig
+++ b/configs/rock2_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SPL_SKIP_LOWLEVEL_INIT_ONLY=y
 CONFIG_SYS_ARCH_TIMER=y
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x00000000
+CONFIG_TEXT_BASE=0x00000000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_OFFSET=0x3F8000
 CONFIG_DEFAULT_DEVICE_TREE="rk3288-rock2-square"
diff --git a/configs/rock64-rk3328_defconfig b/configs/rock64-rk3328_defconfig
index 9ca6f3a3a18..719eff11cf0 100644
--- a/configs/rock64-rk3328_defconfig
+++ b/configs/rock64-rk3328_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=24000000
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x00200000
+CONFIG_TEXT_BASE=0x00200000
 CONFIG_SPL_GPIO=y
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_OFFSET=0x3F8000
diff --git a/configs/rock960-rk3399_defconfig b/configs/rock960-rk3399_defconfig
index daa0d3ddf5d..a6f303d900b 100644
--- a/configs/rock960-rk3399_defconfig
+++ b/configs/rock960-rk3399_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=24000000
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x00200000
+CONFIG_TEXT_BASE=0x00200000
 CONFIG_ENV_OFFSET=0x3F8000
 CONFIG_DEFAULT_DEVICE_TREE="rk3399-rock960"
 CONFIG_SYS_PROMPT="rock960 => "
diff --git a/configs/rock_defconfig b/configs/rock_defconfig
index e99272ef226..bd6183ba5b8 100644
--- a/configs/rock_defconfig
+++ b/configs/rock_defconfig
@@ -4,7 +4,7 @@ CONFIG_SPL_SKIP_LOWLEVEL_INIT_ONLY=y
 # CONFIG_SPL_USE_ARCH_MEMCPY is not set
 # CONFIG_SPL_USE_ARCH_MEMSET is not set
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x60000000
+CONFIG_TEXT_BASE=0x60000000
 CONFIG_SYS_MALLOC_F_LEN=0x2000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_OFFSET=0x3F8000
diff --git a/configs/rockpro64-rk3399_defconfig b/configs/rockpro64-rk3399_defconfig
index 87fe8c40463..b7ca2ca94e5 100644
--- a/configs/rockpro64-rk3399_defconfig
+++ b/configs/rockpro64-rk3399_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=24000000
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x00200000
+CONFIG_TEXT_BASE=0x00200000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x8000
 CONFIG_ENV_OFFSET=0x3F8000
diff --git a/configs/rpi_0_w_defconfig b/configs/rpi_0_w_defconfig
index 0bac245df3e..3c0cbae2b8f 100644
--- a/configs/rpi_0_w_defconfig
+++ b/configs/rpi_0_w_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_BCM283X=y
-CONFIG_SYS_TEXT_BASE=0x00008000
+CONFIG_TEXT_BASE=0x00008000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_TARGET_RPI_0_W=y
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/rpi_2_defconfig b/configs/rpi_2_defconfig
index 700a15267ca..43d5e00403d 100644
--- a/configs/rpi_2_defconfig
+++ b/configs/rpi_2_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_BCM283X=y
-CONFIG_SYS_TEXT_BASE=0x00008000
+CONFIG_TEXT_BASE=0x00008000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_TARGET_RPI_2=y
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/rpi_3_32b_defconfig b/configs/rpi_3_32b_defconfig
index 06aefc4d434..b56801f4589 100644
--- a/configs/rpi_3_32b_defconfig
+++ b/configs/rpi_3_32b_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_BCM283X=y
-CONFIG_SYS_TEXT_BASE=0x00008000
+CONFIG_TEXT_BASE=0x00008000
 CONFIG_TARGET_RPI_3_32B=y
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x4000
diff --git a/configs/rpi_3_b_plus_defconfig b/configs/rpi_3_b_plus_defconfig
index 05b3bac8f56..77a65360764 100644
--- a/configs/rpi_3_b_plus_defconfig
+++ b/configs/rpi_3_b_plus_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_BCM283X=y
-CONFIG_SYS_TEXT_BASE=0x00080000
+CONFIG_TEXT_BASE=0x00080000
 CONFIG_TARGET_RPI_3=y
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x4000
diff --git a/configs/rpi_3_defconfig b/configs/rpi_3_defconfig
index c9ecc6e4d1e..b584368fa41 100644
--- a/configs/rpi_3_defconfig
+++ b/configs/rpi_3_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_BCM283X=y
-CONFIG_SYS_TEXT_BASE=0x00080000
+CONFIG_TEXT_BASE=0x00080000
 CONFIG_TARGET_RPI_3=y
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x4000
diff --git a/configs/rpi_4_32b_defconfig b/configs/rpi_4_32b_defconfig
index e9c18f6b274..2e08e30cf2e 100644
--- a/configs/rpi_4_32b_defconfig
+++ b/configs/rpi_4_32b_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_BCM283X=y
-CONFIG_SYS_TEXT_BASE=0x00008000
+CONFIG_TEXT_BASE=0x00008000
 CONFIG_TARGET_RPI_4_32B=y
 CONFIG_ENV_SIZE=0x4000
 CONFIG_DEFAULT_DEVICE_TREE="bcm2711-rpi-4-b"
diff --git a/configs/rpi_4_defconfig b/configs/rpi_4_defconfig
index 1163750558e..96e7a5c838d 100644
--- a/configs/rpi_4_defconfig
+++ b/configs/rpi_4_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_BCM283X=y
-CONFIG_SYS_TEXT_BASE=0x00080000
+CONFIG_TEXT_BASE=0x00080000
 CONFIG_TARGET_RPI_4=y
 CONFIG_ENV_SIZE=0x4000
 CONFIG_DEFAULT_DEVICE_TREE="bcm2711-rpi-4-b"
diff --git a/configs/rpi_arm64_defconfig b/configs/rpi_arm64_defconfig
index 364a1532df2..4e9fb1bb618 100644
--- a/configs/rpi_arm64_defconfig
+++ b/configs/rpi_arm64_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_BCM283X=y
-CONFIG_SYS_TEXT_BASE=0x00080000
+CONFIG_TEXT_BASE=0x00080000
 CONFIG_TARGET_RPI_ARM64=y
 CONFIG_ENV_SIZE=0x4000
 CONFIG_DEFAULT_DEVICE_TREE="bcm2711-rpi-4-b"
diff --git a/configs/rpi_defconfig b/configs/rpi_defconfig
index 7a0540ac9d5..7377bd44c2b 100644
--- a/configs/rpi_defconfig
+++ b/configs/rpi_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_BCM283X=y
-CONFIG_SYS_TEXT_BASE=0x00008000
+CONFIG_TEXT_BASE=0x00008000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_TARGET_RPI=y
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/rut_defconfig b/configs/rut_defconfig
index 4cfd5bf223b..92da62ef6c5 100644
--- a/configs/rut_defconfig
+++ b/configs/rut_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_OMAP2PLUS=y
-CONFIG_SYS_TEXT_BASE=0x80100000
+CONFIG_TEXT_BASE=0x80100000
 CONFIG_SYS_MALLOC_LEN=0x1000000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/rzg2_beacon_defconfig b/configs/rzg2_beacon_defconfig
index ffcaaccc337..d3e77c6e70f 100644
--- a/configs/rzg2_beacon_defconfig
+++ b/configs/rzg2_beacon_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_RMOBILE=y
-CONFIG_SYS_TEXT_BASE=0x50000000
+CONFIG_TEXT_BASE=0x50000000
 CONFIG_SYS_MALLOC_LEN=0x4000000
 CONFIG_SYS_MALLOC_F_LEN=0x2000
 CONFIG_ENV_OFFSET=0x0
diff --git a/configs/s400_defconfig b/configs/s400_defconfig
index bcb83843d08..827bd548c7e 100644
--- a/configs/s400_defconfig
+++ b/configs/s400_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MESON=y
-CONFIG_SYS_TEXT_BASE=0x01000000
+CONFIG_TEXT_BASE=0x01000000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
 CONFIG_DM_GPIO=y
diff --git a/configs/s5p4418_nanopi2_defconfig b/configs/s5p4418_nanopi2_defconfig
index f3a316513c5..dacc8d51a64 100644
--- a/configs/s5p4418_nanopi2_defconfig
+++ b/configs/s5p4418_nanopi2_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SYS_DCACHE_OFF=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_NEXELL=y
-CONFIG_SYS_TEXT_BASE=0x74C00000
+CONFIG_TEXT_BASE=0x74C00000
 CONFIG_SYS_MALLOC_LEN=0x2000000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/s5p_goni_defconfig b/configs/s5p_goni_defconfig
index d5a1219646f..4f29a2b5f5e 100644
--- a/configs/s5p_goni_defconfig
+++ b/configs/s5p_goni_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_S5PC1XX=y
-CONFIG_SYS_TEXT_BASE=0x34800000
+CONFIG_TEXT_BASE=0x34800000
 CONFIG_SYS_MALLOC_LEN=0x5001000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_NR_DRAM_BANKS=3
diff --git a/configs/s5pc210_universal_defconfig b/configs/s5pc210_universal_defconfig
index c2e1b67ce6f..84e6c0f8993 100644
--- a/configs/s5pc210_universal_defconfig
+++ b/configs/s5pc210_universal_defconfig
@@ -3,7 +3,7 @@ CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_SYS_L2CACHE_OFF=y
 CONFIG_ARCH_EXYNOS=y
-CONFIG_SYS_TEXT_BASE=0x44800000
+CONFIG_TEXT_BASE=0x44800000
 CONFIG_SYS_MALLOC_LEN=0x5001000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_ARCH_EXYNOS4=y
diff --git a/configs/sagem_f@st1704_ram_defconfig b/configs/sagem_f@st1704_ram_defconfig
index 87199fde7bc..744e132ed6f 100644
--- a/configs/sagem_f@st1704_ram_defconfig
+++ b/configs/sagem_f@st1704_ram_defconfig
@@ -1,6 +1,6 @@
 CONFIG_MIPS=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
-CONFIG_SYS_TEXT_BASE=0x80010000
+CONFIG_TEXT_BASE=0x80010000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
 CONFIG_DM_GPIO=y
diff --git a/configs/sam9x60_curiosity_mmc_defconfig b/configs/sam9x60_curiosity_mmc_defconfig
index 99f61d732a1..06f1119edf5 100644
--- a/configs/sam9x60_curiosity_mmc_defconfig
+++ b/configs/sam9x60_curiosity_mmc_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x23f00000
+CONFIG_TEXT_BASE=0x23f00000
 CONFIG_SYS_MALLOC_LEN=0x81000
 CONFIG_SYS_MALLOC_F_LEN=0x8000
 CONFIG_TARGET_SAM9X60_CURIOSITY=y
diff --git a/configs/sam9x60ek_mmc_defconfig b/configs/sam9x60ek_mmc_defconfig
index ed8281ccbd5..6699ccf8500 100644
--- a/configs/sam9x60ek_mmc_defconfig
+++ b/configs/sam9x60ek_mmc_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x23f00000
+CONFIG_TEXT_BASE=0x23f00000
 CONFIG_SYS_MALLOC_LEN=0x81000
 CONFIG_SYS_MALLOC_F_LEN=0x8000
 CONFIG_TARGET_SAM9X60EK=y
diff --git a/configs/sam9x60ek_nandflash_defconfig b/configs/sam9x60ek_nandflash_defconfig
index ed8f04f953d..2346db5227f 100644
--- a/configs/sam9x60ek_nandflash_defconfig
+++ b/configs/sam9x60ek_nandflash_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x23f00000
+CONFIG_TEXT_BASE=0x23f00000
 CONFIG_SYS_MALLOC_LEN=0x81000
 CONFIG_SYS_MALLOC_F_LEN=0x8000
 CONFIG_TARGET_SAM9X60EK=y
diff --git a/configs/sam9x60ek_qspiflash_defconfig b/configs/sam9x60ek_qspiflash_defconfig
index 607a88dece9..79b88740cb0 100644
--- a/configs/sam9x60ek_qspiflash_defconfig
+++ b/configs/sam9x60ek_qspiflash_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x23f00000
+CONFIG_TEXT_BASE=0x23f00000
 CONFIG_SYS_MALLOC_LEN=0x81000
 CONFIG_SYS_MALLOC_F_LEN=0x8000
 CONFIG_TARGET_SAM9X60EK=y
diff --git a/configs/sama5d27_giantboard_defconfig b/configs/sama5d27_giantboard_defconfig
index df5be2357ec..83b225f788a 100644
--- a/configs/sama5d27_giantboard_defconfig
+++ b/configs/sama5d27_giantboard_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x23f00000
+CONFIG_TEXT_BASE=0x23f00000
 CONFIG_TARGET_SAMA5D27_SOM1_EK=y
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/sama5d27_som1_ek_mmc1_defconfig b/configs/sama5d27_som1_ek_mmc1_defconfig
index 7d6e7472269..943d379550e 100644
--- a/configs/sama5d27_som1_ek_mmc1_defconfig
+++ b/configs/sama5d27_som1_ek_mmc1_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x23f00000
+CONFIG_TEXT_BASE=0x23f00000
 CONFIG_TARGET_SAMA5D27_SOM1_EK=y
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/sama5d27_som1_ek_mmc_defconfig b/configs/sama5d27_som1_ek_mmc_defconfig
index 84ab87f8b1b..52e800f37a1 100644
--- a/configs/sama5d27_som1_ek_mmc_defconfig
+++ b/configs/sama5d27_som1_ek_mmc_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x23f00000
+CONFIG_TEXT_BASE=0x23f00000
 CONFIG_TARGET_SAMA5D27_SOM1_EK=y
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/sama5d27_som1_ek_qspiflash_defconfig b/configs/sama5d27_som1_ek_qspiflash_defconfig
index ffe6563091f..2c0d36cb0d2 100644
--- a/configs/sama5d27_som1_ek_qspiflash_defconfig
+++ b/configs/sama5d27_som1_ek_qspiflash_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x23f00000
+CONFIG_TEXT_BASE=0x23f00000
 CONFIG_TARGET_SAMA5D27_SOM1_EK=y
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/sama5d27_wlsom1_ek_mmc_defconfig b/configs/sama5d27_wlsom1_ek_mmc_defconfig
index 370fd190b24..12b37138e49 100644
--- a/configs/sama5d27_wlsom1_ek_mmc_defconfig
+++ b/configs/sama5d27_wlsom1_ek_mmc_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x26f00000
+CONFIG_TEXT_BASE=0x26f00000
 CONFIG_TARGET_SAMA5D27_WLSOM1_EK=y
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/sama5d27_wlsom1_ek_qspiflash_defconfig b/configs/sama5d27_wlsom1_ek_qspiflash_defconfig
index d6f8c165232..18a44b071bd 100644
--- a/configs/sama5d27_wlsom1_ek_qspiflash_defconfig
+++ b/configs/sama5d27_wlsom1_ek_qspiflash_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x26f00000
+CONFIG_TEXT_BASE=0x26f00000
 CONFIG_TARGET_SAMA5D27_WLSOM1_EK=y
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/sama5d2_icp_mmc_defconfig b/configs/sama5d2_icp_mmc_defconfig
index d61bbb8ef17..9b9a20fa5e8 100644
--- a/configs/sama5d2_icp_mmc_defconfig
+++ b/configs/sama5d2_icp_mmc_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x26f00000
+CONFIG_TEXT_BASE=0x26f00000
 CONFIG_TARGET_SAMA5D2_ICP=y
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/sama5d2_icp_qspiflash_defconfig b/configs/sama5d2_icp_qspiflash_defconfig
index 4a9bd54375c..a47bbe69bc9 100644
--- a/configs/sama5d2_icp_qspiflash_defconfig
+++ b/configs/sama5d2_icp_qspiflash_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x26f00000
+CONFIG_TEXT_BASE=0x26f00000
 CONFIG_TARGET_SAMA5D2_ICP=y
 CONFIG_ENV_SIZE=0x4000
 CONFIG_DM_GPIO=y
diff --git a/configs/sama5d2_ptc_ek_mmc_defconfig b/configs/sama5d2_ptc_ek_mmc_defconfig
index 1b168ab1a3e..f9f6ffb979d 100644
--- a/configs/sama5d2_ptc_ek_mmc_defconfig
+++ b/configs/sama5d2_ptc_ek_mmc_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x26f00000
+CONFIG_TEXT_BASE=0x26f00000
 CONFIG_TARGET_SAMA5D2_PTC_EK=y
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x4000
diff --git a/configs/sama5d2_ptc_ek_nandflash_defconfig b/configs/sama5d2_ptc_ek_nandflash_defconfig
index 7077bfba9c9..d01e28ff1dc 100644
--- a/configs/sama5d2_ptc_ek_nandflash_defconfig
+++ b/configs/sama5d2_ptc_ek_nandflash_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x26f00000
+CONFIG_TEXT_BASE=0x26f00000
 CONFIG_TARGET_SAMA5D2_PTC_EK=y
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_DM_GPIO=y
diff --git a/configs/sama5d2_xplained_emmc_defconfig b/configs/sama5d2_xplained_emmc_defconfig
index 666fa6c8703..d32d47b9740 100644
--- a/configs/sama5d2_xplained_emmc_defconfig
+++ b/configs/sama5d2_xplained_emmc_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x26f00000
+CONFIG_TEXT_BASE=0x26f00000
 CONFIG_TARGET_SAMA5D2_XPLAINED=y
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/sama5d2_xplained_mmc_defconfig b/configs/sama5d2_xplained_mmc_defconfig
index 4e31813aa7d..e5971b72173 100644
--- a/configs/sama5d2_xplained_mmc_defconfig
+++ b/configs/sama5d2_xplained_mmc_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x26f00000
+CONFIG_TEXT_BASE=0x26f00000
 CONFIG_TARGET_SAMA5D2_XPLAINED=y
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/sama5d2_xplained_qspiflash_defconfig b/configs/sama5d2_xplained_qspiflash_defconfig
index bbc6e4b83e7..39d988d0168 100644
--- a/configs/sama5d2_xplained_qspiflash_defconfig
+++ b/configs/sama5d2_xplained_qspiflash_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x26f00000
+CONFIG_TEXT_BASE=0x26f00000
 CONFIG_TARGET_SAMA5D2_XPLAINED=y
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/sama5d2_xplained_spiflash_defconfig b/configs/sama5d2_xplained_spiflash_defconfig
index 350e401048a..ce50081600e 100644
--- a/configs/sama5d2_xplained_spiflash_defconfig
+++ b/configs/sama5d2_xplained_spiflash_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x26f00000
+CONFIG_TEXT_BASE=0x26f00000
 CONFIG_TARGET_SAMA5D2_XPLAINED=y
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/sama5d36ek_cmp_mmc_defconfig b/configs/sama5d36ek_cmp_mmc_defconfig
index 023adb32fbc..da9c88ec480 100644
--- a/configs/sama5d36ek_cmp_mmc_defconfig
+++ b/configs/sama5d36ek_cmp_mmc_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x26f00000
+CONFIG_TEXT_BASE=0x26f00000
 CONFIG_TARGET_SAMA5D3XEK=y
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x4000
diff --git a/configs/sama5d36ek_cmp_nandflash_defconfig b/configs/sama5d36ek_cmp_nandflash_defconfig
index 0e304aa7fd0..a8a39580ee1 100644
--- a/configs/sama5d36ek_cmp_nandflash_defconfig
+++ b/configs/sama5d36ek_cmp_nandflash_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x26f00000
+CONFIG_TEXT_BASE=0x26f00000
 CONFIG_TARGET_SAMA5D3XEK=y
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_DM_GPIO=y
diff --git a/configs/sama5d36ek_cmp_spiflash_defconfig b/configs/sama5d36ek_cmp_spiflash_defconfig
index c956a7187a0..1f387e45a3b 100644
--- a/configs/sama5d36ek_cmp_spiflash_defconfig
+++ b/configs/sama5d36ek_cmp_spiflash_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x26f00000
+CONFIG_TEXT_BASE=0x26f00000
 CONFIG_TARGET_SAMA5D3XEK=y
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/sama5d3_xplained_mmc_defconfig b/configs/sama5d3_xplained_mmc_defconfig
index e2be9c26b13..1d4003e7926 100644
--- a/configs/sama5d3_xplained_mmc_defconfig
+++ b/configs/sama5d3_xplained_mmc_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x26f00000
+CONFIG_TEXT_BASE=0x26f00000
 CONFIG_TARGET_SAMA5D3_XPLAINED=y
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/sama5d3_xplained_nandflash_defconfig b/configs/sama5d3_xplained_nandflash_defconfig
index 2ea43620606..798d9dc235e 100644
--- a/configs/sama5d3_xplained_nandflash_defconfig
+++ b/configs/sama5d3_xplained_nandflash_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x26f00000
+CONFIG_TEXT_BASE=0x26f00000
 CONFIG_TARGET_SAMA5D3_XPLAINED=y
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/sama5d3xek_mmc_defconfig b/configs/sama5d3xek_mmc_defconfig
index 4e4638aa539..369bab4cdd4 100644
--- a/configs/sama5d3xek_mmc_defconfig
+++ b/configs/sama5d3xek_mmc_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x26f00000
+CONFIG_TEXT_BASE=0x26f00000
 CONFIG_TARGET_SAMA5D3XEK=y
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/sama5d3xek_nandflash_defconfig b/configs/sama5d3xek_nandflash_defconfig
index c050f77ea9e..2e6fee2f2ea 100644
--- a/configs/sama5d3xek_nandflash_defconfig
+++ b/configs/sama5d3xek_nandflash_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x26f00000
+CONFIG_TEXT_BASE=0x26f00000
 CONFIG_TARGET_SAMA5D3XEK=y
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/sama5d3xek_spiflash_defconfig b/configs/sama5d3xek_spiflash_defconfig
index c9c2f77f2ab..bf19079d448 100644
--- a/configs/sama5d3xek_spiflash_defconfig
+++ b/configs/sama5d3xek_spiflash_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x26f00000
+CONFIG_TEXT_BASE=0x26f00000
 CONFIG_TARGET_SAMA5D3XEK=y
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/sama5d4_xplained_mmc_defconfig b/configs/sama5d4_xplained_mmc_defconfig
index 8cae9a32800..74874334911 100644
--- a/configs/sama5d4_xplained_mmc_defconfig
+++ b/configs/sama5d4_xplained_mmc_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x26f00000
+CONFIG_TEXT_BASE=0x26f00000
 CONFIG_TARGET_SAMA5D4_XPLAINED=y
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/sama5d4_xplained_nandflash_defconfig b/configs/sama5d4_xplained_nandflash_defconfig
index bec2b664270..c2478422321 100644
--- a/configs/sama5d4_xplained_nandflash_defconfig
+++ b/configs/sama5d4_xplained_nandflash_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x26f00000
+CONFIG_TEXT_BASE=0x26f00000
 CONFIG_TARGET_SAMA5D4_XPLAINED=y
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/sama5d4_xplained_spiflash_defconfig b/configs/sama5d4_xplained_spiflash_defconfig
index 5d0e8afa275..38bca280bc0 100644
--- a/configs/sama5d4_xplained_spiflash_defconfig
+++ b/configs/sama5d4_xplained_spiflash_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x26f00000
+CONFIG_TEXT_BASE=0x26f00000
 CONFIG_TARGET_SAMA5D4_XPLAINED=y
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/sama5d4ek_mmc_defconfig b/configs/sama5d4ek_mmc_defconfig
index f639aa0e6c5..a0d31eac1be 100644
--- a/configs/sama5d4ek_mmc_defconfig
+++ b/configs/sama5d4ek_mmc_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x26f00000
+CONFIG_TEXT_BASE=0x26f00000
 CONFIG_TARGET_SAMA5D4EK=y
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/sama5d4ek_nandflash_defconfig b/configs/sama5d4ek_nandflash_defconfig
index 175512b2ad2..797ad206c74 100644
--- a/configs/sama5d4ek_nandflash_defconfig
+++ b/configs/sama5d4ek_nandflash_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x26f00000
+CONFIG_TEXT_BASE=0x26f00000
 CONFIG_TARGET_SAMA5D4EK=y
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/sama5d4ek_spiflash_defconfig b/configs/sama5d4ek_spiflash_defconfig
index d014f88d71f..308a3dc5766 100644
--- a/configs/sama5d4ek_spiflash_defconfig
+++ b/configs/sama5d4ek_spiflash_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x26f00000
+CONFIG_TEXT_BASE=0x26f00000
 CONFIG_TARGET_SAMA5D4EK=y
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/sama7g5ek_mmc1_defconfig b/configs/sama7g5ek_mmc1_defconfig
index 0aa434b7a74..ec9569799ea 100644
--- a/configs/sama7g5ek_mmc1_defconfig
+++ b/configs/sama7g5ek_mmc1_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x66f00000
+CONFIG_TEXT_BASE=0x66f00000
 CONFIG_SYS_MALLOC_F_LEN=0x11000
 CONFIG_TARGET_SAMA7G5EK=y
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/sama7g5ek_mmc_defconfig b/configs/sama7g5ek_mmc_defconfig
index 92fdd5a7bdb..7f40f854049 100644
--- a/configs/sama7g5ek_mmc_defconfig
+++ b/configs/sama7g5ek_mmc_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x66f00000
+CONFIG_TEXT_BASE=0x66f00000
 CONFIG_SYS_MALLOC_F_LEN=0x11000
 CONFIG_TARGET_SAMA7G5EK=y
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/sandbox64_defconfig b/configs/sandbox64_defconfig
index b20b181ab1f..27dfe8bd037 100644
--- a/configs/sandbox64_defconfig
+++ b/configs/sandbox64_defconfig
@@ -1,4 +1,4 @@
-CONFIG_SYS_TEXT_BASE=0
+CONFIG_TEXT_BASE=0
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
 CONFIG_DEFAULT_DEVICE_TREE="sandbox64"
diff --git a/configs/sandbox_defconfig b/configs/sandbox_defconfig
index df6a28ef249..a192a0762b3 100644
--- a/configs/sandbox_defconfig
+++ b/configs/sandbox_defconfig
@@ -1,4 +1,4 @@
-CONFIG_SYS_TEXT_BASE=0
+CONFIG_TEXT_BASE=0
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
 CONFIG_DEFAULT_DEVICE_TREE="sandbox"
diff --git a/configs/sandbox_flattree_defconfig b/configs/sandbox_flattree_defconfig
index 0d8e3132320..38535e83d1c 100644
--- a/configs/sandbox_flattree_defconfig
+++ b/configs/sandbox_flattree_defconfig
@@ -1,4 +1,4 @@
-CONFIG_SYS_TEXT_BASE=0
+CONFIG_TEXT_BASE=0
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
 CONFIG_DEFAULT_DEVICE_TREE="sandbox"
diff --git a/configs/sandbox_noinst_defconfig b/configs/sandbox_noinst_defconfig
index 8bf10bb3ee1..15a0e58ef59 100644
--- a/configs/sandbox_noinst_defconfig
+++ b/configs/sandbox_noinst_defconfig
@@ -1,4 +1,4 @@
-CONFIG_SYS_TEXT_BASE=0x200000
+CONFIG_TEXT_BASE=0x200000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/sandbox_spl_defconfig b/configs/sandbox_spl_defconfig
index c33f17186de..3e508d7cf70 100644
--- a/configs/sandbox_spl_defconfig
+++ b/configs/sandbox_spl_defconfig
@@ -1,4 +1,4 @@
-CONFIG_SYS_TEXT_BASE=0x200000
+CONFIG_TEXT_BASE=0x200000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/sandbox_vpl_defconfig b/configs/sandbox_vpl_defconfig
index be8186ead32..8bd88020580 100644
--- a/configs/sandbox_vpl_defconfig
+++ b/configs/sandbox_vpl_defconfig
@@ -1,4 +1,4 @@
-CONFIG_SYS_TEXT_BASE=0x200000
+CONFIG_TEXT_BASE=0x200000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/seaboard_defconfig b/configs/seaboard_defconfig
index e3895f520e7..6151e150c1e 100644
--- a/configs/seaboard_defconfig
+++ b/configs/seaboard_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SYS_L2CACHE_OFF=y
 CONFIG_ARCH_TEGRA=y
-CONFIG_SYS_TEXT_BASE=0x00110000
+CONFIG_TEXT_BASE=0x00110000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x2000
 CONFIG_ENV_OFFSET=0xFFFFE000
diff --git a/configs/seeed_npi_imx6ull_defconfig b/configs/seeed_npi_imx6ull_defconfig
index e12a7d85060..b239d22b693 100644
--- a/configs/seeed_npi_imx6ull_defconfig
+++ b/configs/seeed_npi_imx6ull_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x87800000
+CONFIG_TEXT_BASE=0x87800000
 CONFIG_SYS_MALLOC_LEN=0x0200000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/sei510_defconfig b/configs/sei510_defconfig
index b26e065a3da..c27ab551b13 100644
--- a/configs/sei510_defconfig
+++ b/configs/sei510_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SYS_BOARD="sei510"
 CONFIG_SYS_CONFIG_NAME="sei510"
 CONFIG_ARCH_MESON=y
-CONFIG_SYS_TEXT_BASE=0x01000000
+CONFIG_TEXT_BASE=0x01000000
 CONFIG_SYS_MALLOC_LEN=0x8000000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x10000
diff --git a/configs/sei610_defconfig b/configs/sei610_defconfig
index 2302c9eeef0..973c7e7dee9 100644
--- a/configs/sei610_defconfig
+++ b/configs/sei610_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SYS_BOARD="sei610"
 CONFIG_SYS_CONFIG_NAME="sei610"
 CONFIG_ARCH_MESON=y
-CONFIG_SYS_TEXT_BASE=0x01000000
+CONFIG_TEXT_BASE=0x01000000
 CONFIG_SYS_MALLOC_LEN=0x8000000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x10000
diff --git a/configs/sfr_nb4-ser_ram_defconfig b/configs/sfr_nb4-ser_ram_defconfig
index f32e943705f..6260939553b 100644
--- a/configs/sfr_nb4-ser_ram_defconfig
+++ b/configs/sfr_nb4-ser_ram_defconfig
@@ -1,6 +1,6 @@
 CONFIG_MIPS=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
-CONFIG_SYS_TEXT_BASE=0x80010000
+CONFIG_TEXT_BASE=0x80010000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
 CONFIG_DM_GPIO=y
diff --git a/configs/sheep-rk3368_defconfig b/configs/sheep-rk3368_defconfig
index 06dacef8a7d..01f104a97d0 100644
--- a/configs/sheep-rk3368_defconfig
+++ b/configs/sheep-rk3368_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_COUNTER_FREQUENCY=24000000
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x00200000
+CONFIG_TEXT_BASE=0x00200000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_DEFAULT_DEVICE_TREE="rk3368-sheep"
 CONFIG_ROCKCHIP_RK3368=y
diff --git a/configs/sheevaplug_defconfig b/configs/sheevaplug_defconfig
index edbc2eefa3c..6bd2b7544c4 100644
--- a/configs/sheevaplug_defconfig
+++ b/configs/sheevaplug_defconfig
@@ -5,7 +5,7 @@ CONFIG_ARCH_CPU_INIT=y
 CONFIG_SYS_THUMB_BUILD=y
 CONFIG_ARCH_KIRKWOOD=y
 CONFIG_SYS_KWD_CONFIG="board/Marvell/sheevaplug/kwbimage.cfg"
-CONFIG_SYS_TEXT_BASE=0x600000
+CONFIG_TEXT_BASE=0x600000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_TARGET_SHEEVAPLUG=y
 CONFIG_ENV_SIZE=0x20000
diff --git a/configs/silinux_ek874_defconfig b/configs/silinux_ek874_defconfig
index b29540a5778..2ef2f7c68ba 100644
--- a/configs/silinux_ek874_defconfig
+++ b/configs/silinux_ek874_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=16666666
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_RMOBILE=y
-CONFIG_SYS_TEXT_BASE=0x50000000
+CONFIG_TEXT_BASE=0x50000000
 CONFIG_SYS_MALLOC_LEN=0x4000000
 CONFIG_SYS_MALLOC_F_LEN=0x2000
 CONFIG_ENV_SIZE=0x10000
diff --git a/configs/silk_defconfig b/configs/silk_defconfig
index 84985008fe2..38a14767ade 100644
--- a/configs/silk_defconfig
+++ b/configs/silk_defconfig
@@ -4,7 +4,7 @@ CONFIG_ENABLE_ARM_SOC_BOOT0_HOOK=y
 # CONFIG_SPL_USE_ARCH_MEMCPY is not set
 # CONFIG_SPL_USE_ARCH_MEMSET is not set
 CONFIG_ARCH_RMOBILE=y
-CONFIG_SYS_TEXT_BASE=0x50000000
+CONFIG_TEXT_BASE=0x50000000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_SYS_MALLOC_F_LEN=0x8000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/sipeed_maix_smode_defconfig b/configs/sipeed_maix_smode_defconfig
index d1bfbdfbd06..738df1c27fd 100644
--- a/configs/sipeed_maix_smode_defconfig
+++ b/configs/sipeed_maix_smode_defconfig
@@ -1,5 +1,5 @@
 CONFIG_RISCV=y
-CONFIG_SYS_TEXT_BASE=0x80020000
+CONFIG_TEXT_BASE=0x80020000
 CONFIG_SYS_MALLOC_LEN=0x20000
 CONFIG_ENV_SIZE=0x1000
 CONFIG_ENV_OFFSET=0xfff000
diff --git a/configs/smartweb_defconfig b/configs/smartweb_defconfig
index 7201a6d2089..36e77ef076f 100644
--- a/configs/smartweb_defconfig
+++ b/configs/smartweb_defconfig
@@ -7,7 +7,7 @@ CONFIG_SPL_SYS_THUMB_BUILD=y
 # CONFIG_SPL_USE_ARCH_MEMCPY is not set
 # CONFIG_SPL_USE_ARCH_MEMSET is not set
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x23000000
+CONFIG_TEXT_BASE=0x23000000
 CONFIG_SYS_MALLOC_LEN=0x460000
 CONFIG_TARGET_SMARTWEB=y
 CONFIG_AT91_GPIO_PULLUP=y
diff --git a/configs/smdk5250_defconfig b/configs/smdk5250_defconfig
index 263fcee706f..e617c0f97c4 100644
--- a/configs/smdk5250_defconfig
+++ b/configs/smdk5250_defconfig
@@ -5,7 +5,7 @@ CONFIG_ARCH_CPU_INIT=y
 # CONFIG_SPL_USE_ARCH_MEMCPY is not set
 # CONFIG_SPL_USE_ARCH_MEMSET is not set
 CONFIG_ARCH_EXYNOS=y
-CONFIG_SYS_TEXT_BASE=0x43E00000
+CONFIG_TEXT_BASE=0x43E00000
 CONFIG_SYS_MALLOC_LEN=0x5004000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_ARCH_EXYNOS5=y
diff --git a/configs/smdk5420_defconfig b/configs/smdk5420_defconfig
index 3a22f6b26fa..bfc6940b92d 100644
--- a/configs/smdk5420_defconfig
+++ b/configs/smdk5420_defconfig
@@ -3,7 +3,7 @@ CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_SPL_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_EXYNOS=y
-CONFIG_SYS_TEXT_BASE=0x23E00000
+CONFIG_TEXT_BASE=0x23E00000
 CONFIG_SYS_MALLOC_LEN=0x5004000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_ARCH_EXYNOS5=y
diff --git a/configs/smdkc100_defconfig b/configs/smdkc100_defconfig
index b0048545b55..1476935a178 100644
--- a/configs/smdkc100_defconfig
+++ b/configs/smdkc100_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_S5PC1XX=y
-CONFIG_SYS_TEXT_BASE=0x34800000
+CONFIG_TEXT_BASE=0x34800000
 CONFIG_SYS_MALLOC_LEN=0x120000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/smdkv310_defconfig b/configs/smdkv310_defconfig
index 92d315ccc06..cdfc8b758a2 100644
--- a/configs/smdkv310_defconfig
+++ b/configs/smdkv310_defconfig
@@ -3,7 +3,7 @@ CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_SPL_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_EXYNOS=y
-CONFIG_SYS_TEXT_BASE=0x43E00000
+CONFIG_TEXT_BASE=0x43E00000
 CONFIG_SYS_MALLOC_LEN=0x5004000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_ARCH_EXYNOS4=y
diff --git a/configs/sniper_defconfig b/configs/sniper_defconfig
index cfa43ad4490..bae9b0e2546 100644
--- a/configs/sniper_defconfig
+++ b/configs/sniper_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 # CONFIG_SYS_THUMB_BUILD is not set
 CONFIG_ARCH_OMAP2PLUS=y
-CONFIG_SYS_TEXT_BASE=0x80100000
+CONFIG_TEXT_BASE=0x80100000
 CONFIG_SYS_MALLOC_LEN=0x120000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_NR_DRAM_BANKS=2
diff --git a/configs/snow_defconfig b/configs/snow_defconfig
index 57cb6bddf9e..c83c89b3094 100644
--- a/configs/snow_defconfig
+++ b/configs/snow_defconfig
@@ -5,7 +5,7 @@ CONFIG_ARCH_CPU_INIT=y
 # CONFIG_SPL_USE_ARCH_MEMCPY is not set
 # CONFIG_SPL_USE_ARCH_MEMSET is not set
 CONFIG_ARCH_EXYNOS=y
-CONFIG_SYS_TEXT_BASE=0x43E00000
+CONFIG_TEXT_BASE=0x43E00000
 CONFIG_SYS_MALLOC_LEN=0x5004000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_ARCH_EXYNOS5=y
diff --git a/configs/socfpga_agilex_atf_defconfig b/configs/socfpga_agilex_atf_defconfig
index 4356171c143..167e05b0aa5 100644
--- a/configs/socfpga_agilex_atf_defconfig
+++ b/configs/socfpga_agilex_atf_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=400000000
 CONFIG_ARCH_SOCFPGA=y
-CONFIG_SYS_TEXT_BASE=0x200000
+CONFIG_TEXT_BASE=0x200000
 CONFIG_SYS_MALLOC_LEN=0x500000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_SPL_LDSCRIPT="arch/arm/mach-socfpga/u-boot-spl-soc64.lds"
diff --git a/configs/socfpga_agilex_defconfig b/configs/socfpga_agilex_defconfig
index 0603dd15ecb..e5864ebda21 100644
--- a/configs/socfpga_agilex_defconfig
+++ b/configs/socfpga_agilex_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=400000000
 CONFIG_ARCH_SOCFPGA=y
-CONFIG_SYS_TEXT_BASE=0x1000
+CONFIG_TEXT_BASE=0x1000
 CONFIG_SYS_MALLOC_LEN=0x500000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x1000
diff --git a/configs/socfpga_agilex_vab_defconfig b/configs/socfpga_agilex_vab_defconfig
index f568f5525ea..bcdeb6d17cf 100644
--- a/configs/socfpga_agilex_vab_defconfig
+++ b/configs/socfpga_agilex_vab_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=400000000
 CONFIG_ARCH_SOCFPGA=y
-CONFIG_SYS_TEXT_BASE=0x200000
+CONFIG_TEXT_BASE=0x200000
 CONFIG_SYS_MALLOC_LEN=0x500000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_SPL_LDSCRIPT="arch/arm/mach-socfpga/u-boot-spl-soc64.lds"
diff --git a/configs/socfpga_n5x_atf_defconfig b/configs/socfpga_n5x_atf_defconfig
index 775e1111a26..453fd87bd22 100644
--- a/configs/socfpga_n5x_atf_defconfig
+++ b/configs/socfpga_n5x_atf_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=400000000
 CONFIG_ARCH_SOCFPGA=y
-CONFIG_SYS_TEXT_BASE=0x200000
+CONFIG_TEXT_BASE=0x200000
 CONFIG_SYS_MALLOC_LEN=0x500000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_SPL_LDSCRIPT="arch/arm/mach-socfpga/u-boot-spl-soc64.lds"
diff --git a/configs/socfpga_n5x_defconfig b/configs/socfpga_n5x_defconfig
index 59f46a1f086..ae717919972 100644
--- a/configs/socfpga_n5x_defconfig
+++ b/configs/socfpga_n5x_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=400000000
 CONFIG_ARCH_SOCFPGA=y
-CONFIG_SYS_TEXT_BASE=0x1000
+CONFIG_TEXT_BASE=0x1000
 CONFIG_SYS_MALLOC_LEN=0x500000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x1000
diff --git a/configs/socfpga_n5x_vab_defconfig b/configs/socfpga_n5x_vab_defconfig
index 073c1fbaebd..259b8ddf85e 100644
--- a/configs/socfpga_n5x_vab_defconfig
+++ b/configs/socfpga_n5x_vab_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=400000000
 CONFIG_ARCH_SOCFPGA=y
-CONFIG_SYS_TEXT_BASE=0x200000
+CONFIG_TEXT_BASE=0x200000
 CONFIG_SYS_MALLOC_LEN=0x500000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_SPL_LDSCRIPT="arch/arm/mach-socfpga/u-boot-spl-soc64.lds"
diff --git a/configs/socfpga_stratix10_atf_defconfig b/configs/socfpga_stratix10_atf_defconfig
index 9ffbd83031a..acb1ce9e0c9 100644
--- a/configs/socfpga_stratix10_atf_defconfig
+++ b/configs/socfpga_stratix10_atf_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=400000000
 CONFIG_ARCH_SOCFPGA=y
-CONFIG_SYS_TEXT_BASE=0x200000
+CONFIG_TEXT_BASE=0x200000
 CONFIG_SYS_MALLOC_LEN=0x500000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_SPL_LDSCRIPT="arch/arm/mach-socfpga/u-boot-spl-soc64.lds"
diff --git a/configs/socfpga_stratix10_defconfig b/configs/socfpga_stratix10_defconfig
index 4915d534d3b..90a44f29815 100644
--- a/configs/socfpga_stratix10_defconfig
+++ b/configs/socfpga_stratix10_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=400000000
 CONFIG_ARCH_SOCFPGA=y
-CONFIG_SYS_TEXT_BASE=0x1000
+CONFIG_TEXT_BASE=0x1000
 CONFIG_SYS_MALLOC_LEN=0x500000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x1000
diff --git a/configs/socrates_defconfig b/configs/socrates_defconfig
index 251586178ec..d3c69bb369f 100644
--- a/configs/socrates_defconfig
+++ b/configs/socrates_defconfig
@@ -1,6 +1,6 @@
 CONFIG_PPC=y
 CONFIG_SYS_IMMR=0xE0000000
-CONFIG_SYS_TEXT_BASE=0xfff80000
+CONFIG_TEXT_BASE=0xfff80000
 CONFIG_ENV_SIZE=0x4000
 CONFIG_ENV_SECT_SIZE=0x20000
 CONFIG_DEFAULT_DEVICE_TREE="socrates"
diff --git a/configs/som-db5800-som-6867_defconfig b/configs/som-db5800-som-6867_defconfig
index d912ac70bc1..5d401e6c2d7 100644
--- a/configs/som-db5800-som-6867_defconfig
+++ b/configs/som-db5800-som-6867_defconfig
@@ -1,5 +1,5 @@
 CONFIG_X86=y
-CONFIG_SYS_TEXT_BASE=0xFFF00000
+CONFIG_TEXT_BASE=0xFFF00000
 CONFIG_NR_DRAM_BANKS=8
 CONFIG_ENV_SIZE=0x1000
 CONFIG_ENV_OFFSET=0x6EF000
diff --git a/configs/somlabs_visionsom_6ull_defconfig b/configs/somlabs_visionsom_6ull_defconfig
index b99266fec74..0968e6dd86d 100644
--- a/configs/somlabs_visionsom_6ull_defconfig
+++ b/configs/somlabs_visionsom_6ull_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x87800000
+CONFIG_TEXT_BASE=0x87800000
 CONFIG_SYS_MALLOC_LEN=0x1000000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/spring_defconfig b/configs/spring_defconfig
index ab9dd9df6de..8fb75bf9ed1 100644
--- a/configs/spring_defconfig
+++ b/configs/spring_defconfig
@@ -5,7 +5,7 @@ CONFIG_ARCH_CPU_INIT=y
 # CONFIG_SPL_USE_ARCH_MEMCPY is not set
 # CONFIG_SPL_USE_ARCH_MEMSET is not set
 CONFIG_ARCH_EXYNOS=y
-CONFIG_SYS_TEXT_BASE=0x43E00000
+CONFIG_TEXT_BASE=0x43E00000
 CONFIG_SYS_MALLOC_LEN=0x5004000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_ARCH_EXYNOS5=y
diff --git a/configs/stemmy_defconfig b/configs/stemmy_defconfig
index f1d3ef5b123..187fdcf8bb6 100644
--- a/configs/stemmy_defconfig
+++ b/configs/stemmy_defconfig
@@ -5,7 +5,7 @@ CONFIG_ARCH_U8500=y
 CONFIG_SUPPORT_PASSING_ATAGS=y
 # CONFIG_SETUP_MEMORY_TAGS is not set
 CONFIG_INITRD_TAG=y
-CONFIG_SYS_TEXT_BASE=0x100000
+CONFIG_TEXT_BASE=0x100000
 CONFIG_SYS_MALLOC_LEN=0x0200000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_NR_DRAM_BANKS=2
diff --git a/configs/stih410-b2260_defconfig b/configs/stih410-b2260_defconfig
index ce3a0384f00..b49c476047d 100644
--- a/configs/stih410-b2260_defconfig
+++ b/configs/stih410-b2260_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_STI=y
-CONFIG_SYS_TEXT_BASE=0x7D600000
+CONFIG_TEXT_BASE=0x7D600000
 CONFIG_SYS_MALLOC_LEN=0x1800000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/stm32746g-eval_defconfig b/configs/stm32746g-eval_defconfig
index 58232a7114c..78d0a38e198 100644
--- a/configs/stm32746g-eval_defconfig
+++ b/configs/stm32746g-eval_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_STM32=y
-CONFIG_SYS_TEXT_BASE=0x08000000
+CONFIG_TEXT_BASE=0x08000000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_SYS_MALLOC_F_LEN=0xE00
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/stm32746g-eval_spl_defconfig b/configs/stm32746g-eval_spl_defconfig
index a3b71464540..d25a919bea3 100644
--- a/configs/stm32746g-eval_spl_defconfig
+++ b/configs/stm32746g-eval_spl_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_STM32=y
-CONFIG_SYS_TEXT_BASE=0x08008000
+CONFIG_TEXT_BASE=0x08008000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_SYS_MALLOC_F_LEN=0xE00
 CONFIG_SPL_GPIO=y
diff --git a/configs/stm32f429-discovery_defconfig b/configs/stm32f429-discovery_defconfig
index e6e595d495a..b68aa709727 100644
--- a/configs/stm32f429-discovery_defconfig
+++ b/configs/stm32f429-discovery_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_STM32=y
-CONFIG_SYS_TEXT_BASE=0x08000000
+CONFIG_TEXT_BASE=0x08000000
 CONFIG_SYS_MALLOC_LEN=0x0200000
 CONFIG_SYS_MALLOC_F_LEN=0xF00
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/stm32f429-evaluation_defconfig b/configs/stm32f429-evaluation_defconfig
index 073f27168a0..0c2b2c4c272 100644
--- a/configs/stm32f429-evaluation_defconfig
+++ b/configs/stm32f429-evaluation_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_STM32=y
-CONFIG_SYS_TEXT_BASE=0x08000000
+CONFIG_TEXT_BASE=0x08000000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_SYS_MALLOC_F_LEN=0xF00
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/stm32f469-discovery_defconfig b/configs/stm32f469-discovery_defconfig
index bd3693275ef..12098b2e068 100644
--- a/configs/stm32f469-discovery_defconfig
+++ b/configs/stm32f469-discovery_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_STM32=y
-CONFIG_SYS_TEXT_BASE=0x08000000
+CONFIG_TEXT_BASE=0x08000000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_SYS_MALLOC_F_LEN=0xF00
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/stm32f746-disco_defconfig b/configs/stm32f746-disco_defconfig
index ed537b05784..112cce07a03 100644
--- a/configs/stm32f746-disco_defconfig
+++ b/configs/stm32f746-disco_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_STM32=y
-CONFIG_SYS_TEXT_BASE=0x08000000
+CONFIG_TEXT_BASE=0x08000000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_SYS_MALLOC_F_LEN=0xE00
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/stm32f746-disco_spl_defconfig b/configs/stm32f746-disco_spl_defconfig
index e7b1acc433a..d441eebb305 100644
--- a/configs/stm32f746-disco_spl_defconfig
+++ b/configs/stm32f746-disco_spl_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_STM32=y
-CONFIG_SYS_TEXT_BASE=0x08008000
+CONFIG_TEXT_BASE=0x08008000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_SYS_MALLOC_F_LEN=0xE00
 CONFIG_SPL_GPIO=y
diff --git a/configs/stm32f769-disco_defconfig b/configs/stm32f769-disco_defconfig
index 1333c060d16..163c75f2f23 100644
--- a/configs/stm32f769-disco_defconfig
+++ b/configs/stm32f769-disco_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_STM32=y
-CONFIG_SYS_TEXT_BASE=0x08000000
+CONFIG_TEXT_BASE=0x08000000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_SYS_MALLOC_F_LEN=0xE00
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/stm32f769-disco_spl_defconfig b/configs/stm32f769-disco_spl_defconfig
index 16763e29c31..b00509a673e 100644
--- a/configs/stm32f769-disco_spl_defconfig
+++ b/configs/stm32f769-disco_spl_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_STM32=y
-CONFIG_SYS_TEXT_BASE=0x08008000
+CONFIG_TEXT_BASE=0x08008000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_SYS_MALLOC_F_LEN=0xE00
 CONFIG_SPL_GPIO=y
diff --git a/configs/stm32h743-disco_defconfig b/configs/stm32h743-disco_defconfig
index d33da430656..2e72739cc48 100644
--- a/configs/stm32h743-disco_defconfig
+++ b/configs/stm32h743-disco_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_STM32=y
-CONFIG_SYS_TEXT_BASE=0x08000000
+CONFIG_TEXT_BASE=0x08000000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_SYS_MALLOC_F_LEN=0xF00
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/stm32h743-eval_defconfig b/configs/stm32h743-eval_defconfig
index a72de48690f..fe16cc554fe 100644
--- a/configs/stm32h743-eval_defconfig
+++ b/configs/stm32h743-eval_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_STM32=y
-CONFIG_SYS_TEXT_BASE=0x08000000
+CONFIG_TEXT_BASE=0x08000000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_SYS_MALLOC_F_LEN=0xF00
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/stm32h750-art-pi_defconfig b/configs/stm32h750-art-pi_defconfig
index b8296a98b4c..9993affbe84 100644
--- a/configs/stm32h750-art-pi_defconfig
+++ b/configs/stm32h750-art-pi_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_STM32=y
-CONFIG_SYS_TEXT_BASE=0x90000000
+CONFIG_TEXT_BASE=0x90000000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_SYS_MALLOC_F_LEN=0xF00
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/stmark2_defconfig b/configs/stmark2_defconfig
index 03fa066d549..99074c97e9f 100644
--- a/configs/stmark2_defconfig
+++ b/configs/stmark2_defconfig
@@ -1,5 +1,5 @@
 CONFIG_M68K=y
-CONFIG_SYS_TEXT_BASE=0x47E00000
+CONFIG_TEXT_BASE=0x47E00000
 CONFIG_SYS_MALLOC_LEN=0x40000
 CONFIG_ENV_SIZE=0x2000
 CONFIG_ENV_OFFSET=0x40000
diff --git a/configs/stout_defconfig b/configs/stout_defconfig
index b0df55558c7..8028c2d7ae1 100644
--- a/configs/stout_defconfig
+++ b/configs/stout_defconfig
@@ -4,7 +4,7 @@ CONFIG_ENABLE_ARM_SOC_BOOT0_HOOK=y
 # CONFIG_SPL_USE_ARCH_MEMCPY is not set
 # CONFIG_SPL_USE_ARCH_MEMSET is not set
 CONFIG_ARCH_RMOBILE=y
-CONFIG_SYS_TEXT_BASE=0x50000000
+CONFIG_TEXT_BASE=0x50000000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_SYS_MALLOC_F_LEN=0x8000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/stv0991_defconfig b/configs/stv0991_defconfig
index f2e8677e095..750437b73bb 100644
--- a/configs/stv0991_defconfig
+++ b/configs/stv0991_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SYS_DCACHE_OFF=y
 CONFIG_TARGET_STV0991=y
-CONFIG_SYS_TEXT_BASE=0x00010000
+CONFIG_TEXT_BASE=0x00010000
 CONFIG_SYS_MALLOC_LEN=0x14000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x10000
diff --git a/configs/synquacer_developerbox_defconfig b/configs/synquacer_developerbox_defconfig
index c0b784b0722..f69b873a36a 100644
--- a/configs/synquacer_developerbox_defconfig
+++ b/configs/synquacer_developerbox_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_SYNQUACER=y
-CONFIG_SYS_TEXT_BASE=0x08200000
+CONFIG_TEXT_BASE=0x08200000
 CONFIG_SYS_MALLOC_LEN=0x1000000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_ENV_SIZE=0x30000
diff --git a/configs/syzygy_hub_defconfig b/configs/syzygy_hub_defconfig
index 51f629488b9..acce95ec026 100644
--- a/configs/syzygy_hub_defconfig
+++ b/configs/syzygy_hub_defconfig
@@ -4,7 +4,7 @@ CONFIG_SYS_CONFIG_NAME="syzygy_hub"
 CONFIG_SPL_SYS_DCACHE_OFF=y
 CONFIG_SYS_L2CACHE_OFF=y
 CONFIG_ARCH_ZYNQ=y
-CONFIG_SYS_TEXT_BASE=0x4000000
+CONFIG_TEXT_BASE=0x4000000
 CONFIG_DM_GPIO=y
 CONFIG_DEFAULT_DEVICE_TREE="zynq-syzygy-hub"
 CONFIG_SPL_STACK_R_ADDR=0x200000
diff --git a/configs/taurus_defconfig b/configs/taurus_defconfig
index e95ee1b5c47..6fc7199fea4 100644
--- a/configs/taurus_defconfig
+++ b/configs/taurus_defconfig
@@ -8,7 +8,7 @@ CONFIG_SYS_THUMB_BUILD=y
 # CONFIG_SPL_USE_ARCH_MEMCPY is not set
 # CONFIG_SPL_USE_ARCH_MEMSET is not set
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x21000000
+CONFIG_TEXT_BASE=0x21000000
 CONFIG_SYS_MALLOC_LEN=0x460000
 CONFIG_TARGET_TAURUS=y
 CONFIG_AT91_GPIO_PULLUP=y
diff --git a/configs/tb100_defconfig b/configs/tb100_defconfig
index 42f7b3c718e..361853a891b 100644
--- a/configs/tb100_defconfig
+++ b/configs/tb100_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARC=y
 CONFIG_TARGET_TB100=y
-CONFIG_SYS_TEXT_BASE=0x84000000
+CONFIG_TEXT_BASE=0x84000000
 CONFIG_SYS_MALLOC_LEN=0x20000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_ENV_SIZE=0x800
diff --git a/configs/tbs2910_defconfig b/configs/tbs2910_defconfig
index 59444372e93..c5fe731f501 100644
--- a/configs/tbs2910_defconfig
+++ b/configs/tbs2910_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x17800000
+CONFIG_TEXT_BASE=0x17800000
 CONFIG_SYS_MALLOC_LEN=0x8000000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/tec-ng_defconfig b/configs/tec-ng_defconfig
index 8745eed2aa3..02d6b496f96 100644
--- a/configs/tec-ng_defconfig
+++ b/configs/tec-ng_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SYS_L2CACHE_OFF=y
 CONFIG_ARCH_TEGRA=y
-CONFIG_SYS_TEXT_BASE=0x80110000
+CONFIG_TEXT_BASE=0x80110000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x2000
 CONFIG_ENV_OFFSET=0xFFFFE000
diff --git a/configs/tec_defconfig b/configs/tec_defconfig
index 99d34901d70..a12336da5fc 100644
--- a/configs/tec_defconfig
+++ b/configs/tec_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SYS_L2CACHE_OFF=y
 CONFIG_ARCH_TEGRA=y
-CONFIG_SYS_TEXT_BASE=0x00110000
+CONFIG_TEXT_BASE=0x00110000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x2000
 CONFIG_ENV_OFFSET=0x1FFE0000
diff --git a/configs/ten64_tfa_defconfig b/configs/ten64_tfa_defconfig
index 6c7314b6454..24e9e1461c2 100644
--- a/configs/ten64_tfa_defconfig
+++ b/configs/ten64_tfa_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_TARGET_TEN64=y
 CONFIG_TFABOOT=y
-CONFIG_SYS_TEXT_BASE=0x82000000
+CONFIG_TEXT_BASE=0x82000000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x80000
 CONFIG_ENV_OFFSET=0x500000
diff --git a/configs/theadorable-x86-conga-qa3-e3845-pcie-x4_defconfig b/configs/theadorable-x86-conga-qa3-e3845-pcie-x4_defconfig
index afb1957ddd2..22544c0913a 100644
--- a/configs/theadorable-x86-conga-qa3-e3845-pcie-x4_defconfig
+++ b/configs/theadorable-x86-conga-qa3-e3845-pcie-x4_defconfig
@@ -1,5 +1,5 @@
 CONFIG_X86=y
-CONFIG_SYS_TEXT_BASE=0xFFF00000
+CONFIG_TEXT_BASE=0xFFF00000
 CONFIG_NR_DRAM_BANKS=8
 CONFIG_ENV_SIZE=0x2000
 CONFIG_ENV_OFFSET=0x6EC000
diff --git a/configs/theadorable-x86-conga-qa3-e3845_defconfig b/configs/theadorable-x86-conga-qa3-e3845_defconfig
index 113c0dae2e6..8741ecbb2d7 100644
--- a/configs/theadorable-x86-conga-qa3-e3845_defconfig
+++ b/configs/theadorable-x86-conga-qa3-e3845_defconfig
@@ -1,5 +1,5 @@
 CONFIG_X86=y
-CONFIG_SYS_TEXT_BASE=0xFFF00000
+CONFIG_TEXT_BASE=0xFFF00000
 CONFIG_NR_DRAM_BANKS=8
 CONFIG_ENV_SIZE=0x2000
 CONFIG_ENV_OFFSET=0x6EC000
diff --git a/configs/theadorable-x86-dfi-bt700_defconfig b/configs/theadorable-x86-dfi-bt700_defconfig
index 95ff9d763ff..4755b4754f2 100644
--- a/configs/theadorable-x86-dfi-bt700_defconfig
+++ b/configs/theadorable-x86-dfi-bt700_defconfig
@@ -1,5 +1,5 @@
 CONFIG_X86=y
-CONFIG_SYS_TEXT_BASE=0xFFF00000
+CONFIG_TEXT_BASE=0xFFF00000
 CONFIG_NR_DRAM_BANKS=8
 CONFIG_ENV_SIZE=0x2000
 CONFIG_ENV_OFFSET=0x6EC000
diff --git a/configs/theadorable_debug_defconfig b/configs/theadorable_debug_defconfig
index 9074ca1620b..36a80ea71aa 100644
--- a/configs/theadorable_debug_defconfig
+++ b/configs/theadorable_debug_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_MVEBU=y
-CONFIG_SYS_TEXT_BASE=0x00800000
+CONFIG_TEXT_BASE=0x00800000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
 CONFIG_NR_DRAM_BANKS=2
diff --git a/configs/thuban_defconfig b/configs/thuban_defconfig
index 3bf21baf5de..aef524052bc 100644
--- a/configs/thuban_defconfig
+++ b/configs/thuban_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_OMAP2PLUS=y
-CONFIG_SYS_TEXT_BASE=0x80100000
+CONFIG_TEXT_BASE=0x80100000
 CONFIG_SYS_MALLOC_LEN=0x1000000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/thunderx_88xx_defconfig b/configs/thunderx_88xx_defconfig
index 91dda7a4a35..583037bcfdc 100644
--- a/configs/thunderx_88xx_defconfig
+++ b/configs/thunderx_88xx_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_COUNTER_FREQUENCY=25165824
 CONFIG_TARGET_THUNDERX_88XX=y
-CONFIG_SYS_TEXT_BASE=0x00500000
+CONFIG_TEXT_BASE=0x00500000
 CONFIG_SYS_MALLOC_LEN=0x101000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/tinker-rk3288_defconfig b/configs/tinker-rk3288_defconfig
index 27ff352fba3..b8f31752c0c 100644
--- a/configs/tinker-rk3288_defconfig
+++ b/configs/tinker-rk3288_defconfig
@@ -3,7 +3,7 @@ CONFIG_SPL_SKIP_LOWLEVEL_INIT_ONLY=y
 CONFIG_TPL_SKIP_LOWLEVEL_INIT_ONLY=y
 CONFIG_SYS_ARCH_TIMER=y
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x01000000
+CONFIG_TEXT_BASE=0x01000000
 CONFIG_SPL_GPIO=y
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_OFFSET=0x3F8000
diff --git a/configs/tinker-s-rk3288_defconfig b/configs/tinker-s-rk3288_defconfig
index 28ae79bc015..b9c258d7f6e 100644
--- a/configs/tinker-s-rk3288_defconfig
+++ b/configs/tinker-s-rk3288_defconfig
@@ -3,7 +3,7 @@ CONFIG_SPL_SKIP_LOWLEVEL_INIT_ONLY=y
 CONFIG_TPL_SKIP_LOWLEVEL_INIT_ONLY=y
 CONFIG_SYS_ARCH_TIMER=y
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x01000000
+CONFIG_TEXT_BASE=0x01000000
 CONFIG_SYS_MALLOC_F_LEN=0x4000
 CONFIG_SPL_GPIO=y
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/tools-only_defconfig b/configs/tools-only_defconfig
index 2c418f5dbb2..88a1271f7e3 100644
--- a/configs/tools-only_defconfig
+++ b/configs/tools-only_defconfig
@@ -1,4 +1,4 @@
-CONFIG_SYS_TEXT_BASE=0
+CONFIG_TEXT_BASE=0
 CONFIG_SYS_MALLOC_LEN=0x2000000
 CONFIG_ENV_SIZE=0x2000
 CONFIG_DEFAULT_DEVICE_TREE="sandbox"
diff --git a/configs/topic_miami_defconfig b/configs/topic_miami_defconfig
index b8ec7310754..e3ed0b27327 100644
--- a/configs/topic_miami_defconfig
+++ b/configs/topic_miami_defconfig
@@ -4,7 +4,7 @@ CONFIG_SYS_CONFIG_NAME="topic_miami"
 CONFIG_SPL_SYS_DCACHE_OFF=y
 CONFIG_SYS_L2CACHE_OFF=y
 CONFIG_ARCH_ZYNQ=y
-CONFIG_SYS_TEXT_BASE=0x4000000
+CONFIG_TEXT_BASE=0x4000000
 CONFIG_ENV_SIZE=0x8000
 CONFIG_DM_GPIO=y
 CONFIG_DEFAULT_DEVICE_TREE="zynq-topic-miami"
diff --git a/configs/topic_miamilite_defconfig b/configs/topic_miamilite_defconfig
index d4e04de4c82..cb156562ba4 100644
--- a/configs/topic_miamilite_defconfig
+++ b/configs/topic_miamilite_defconfig
@@ -4,7 +4,7 @@ CONFIG_SYS_CONFIG_NAME="topic_miami"
 CONFIG_SPL_SYS_DCACHE_OFF=y
 CONFIG_SYS_L2CACHE_OFF=y
 CONFIG_ARCH_ZYNQ=y
-CONFIG_SYS_TEXT_BASE=0x4000000
+CONFIG_TEXT_BASE=0x4000000
 CONFIG_ENV_SIZE=0x8000
 CONFIG_DM_GPIO=y
 CONFIG_DEFAULT_DEVICE_TREE="zynq-topic-miamilite"
diff --git a/configs/topic_miamiplus_defconfig b/configs/topic_miamiplus_defconfig
index add5b62ffe2..03d1887cdac 100644
--- a/configs/topic_miamiplus_defconfig
+++ b/configs/topic_miamiplus_defconfig
@@ -4,7 +4,7 @@ CONFIG_SYS_CONFIG_NAME="topic_miami"
 CONFIG_SPL_SYS_DCACHE_OFF=y
 CONFIG_SYS_L2CACHE_OFF=y
 CONFIG_ARCH_ZYNQ=y
-CONFIG_SYS_TEXT_BASE=0x4000000
+CONFIG_TEXT_BASE=0x4000000
 CONFIG_ENV_SIZE=0x8000
 CONFIG_DM_GPIO=y
 CONFIG_DEFAULT_DEVICE_TREE="zynq-topic-miamiplus"
diff --git a/configs/total_compute_defconfig b/configs/total_compute_defconfig
index fd16e6ebe5a..f9901a4f677 100644
--- a/configs/total_compute_defconfig
+++ b/configs/total_compute_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_TARGET_TOTAL_COMPUTE=y
-CONFIG_SYS_TEXT_BASE=0xe0000000
+CONFIG_TEXT_BASE=0xe0000000
 CONFIG_SYS_MALLOC_LEN=0x3200000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x2a00000
diff --git a/configs/tplink_wdr4300_defconfig b/configs/tplink_wdr4300_defconfig
index a7faca25428..b60f63497ac 100644
--- a/configs/tplink_wdr4300_defconfig
+++ b/configs/tplink_wdr4300_defconfig
@@ -1,5 +1,5 @@
 CONFIG_MIPS=y
-CONFIG_SYS_TEXT_BASE=0xA1000000
+CONFIG_TEXT_BASE=0xA1000000
 CONFIG_SYS_MALLOC_LEN=0x40000
 CONFIG_ENV_SIZE=0x10000
 CONFIG_DEFAULT_DEVICE_TREE="tplink_wdr4300"
diff --git a/configs/trats2_defconfig b/configs/trats2_defconfig
index c86c3975ff4..a8ede1e7360 100644
--- a/configs/trats2_defconfig
+++ b/configs/trats2_defconfig
@@ -3,7 +3,7 @@ CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_SYS_L2CACHE_OFF=y
 CONFIG_ARCH_EXYNOS=y
-CONFIG_SYS_TEXT_BASE=0x43e00000
+CONFIG_TEXT_BASE=0x43e00000
 CONFIG_SYS_MALLOC_LEN=0x5001000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_ARCH_EXYNOS4=y
diff --git a/configs/trats_defconfig b/configs/trats_defconfig
index 9bded4cb57f..406d6bc0122 100644
--- a/configs/trats_defconfig
+++ b/configs/trats_defconfig
@@ -3,7 +3,7 @@ CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_SYS_L2CACHE_OFF=y
 CONFIG_ARCH_EXYNOS=y
-CONFIG_SYS_TEXT_BASE=0x63300000
+CONFIG_TEXT_BASE=0x63300000
 CONFIG_SYS_MALLOC_LEN=0x5001000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_ARCH_EXYNOS4=y
diff --git a/configs/trimslice_defconfig b/configs/trimslice_defconfig
index 8d94eedbe80..a9f774c6f5b 100644
--- a/configs/trimslice_defconfig
+++ b/configs/trimslice_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SYS_L2CACHE_OFF=y
 CONFIG_ARCH_TEGRA=y
-CONFIG_SYS_TEXT_BASE=0x00110000
+CONFIG_TEXT_BASE=0x00110000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x2000
 CONFIG_ENV_OFFSET=0xFE000
diff --git a/configs/tuge1_defconfig b/configs/tuge1_defconfig
index 0d1c99c62c5..3577745d0b2 100644
--- a/configs/tuge1_defconfig
+++ b/configs/tuge1_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0xF0000000
+CONFIG_TEXT_BASE=0xF0000000
 CONFIG_ENV_SIZE=0x4000
 CONFIG_ENV_SECT_SIZE=0x20000
 CONFIG_DEFAULT_DEVICE_TREE="kmtuge1"
diff --git a/configs/turris_mox_defconfig b/configs/turris_mox_defconfig
index 1df47fe3c9c..9b9051383dc 100644
--- a/configs/turris_mox_defconfig
+++ b/configs/turris_mox_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_MVEBU=y
-CONFIG_SYS_TEXT_BASE=0x00000000
+CONFIG_TEXT_BASE=0x00000000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_TARGET_TURRIS_MOX=y
 CONFIG_MVEBU_EFUSE=y
diff --git a/configs/turris_omnia_defconfig b/configs/turris_omnia_defconfig
index bce14cc69d6..1e398566c3d 100644
--- a/configs/turris_omnia_defconfig
+++ b/configs/turris_omnia_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_SPL_SYS_THUMB_BUILD=y
 CONFIG_ARCH_MVEBU=y
-CONFIG_SYS_TEXT_BASE=0x00800000
+CONFIG_TEXT_BASE=0x00800000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/tuxx1_defconfig b/configs/tuxx1_defconfig
index 3fe731fd188..3711d2259a4 100644
--- a/configs/tuxx1_defconfig
+++ b/configs/tuxx1_defconfig
@@ -1,5 +1,5 @@
 CONFIG_PPC=y
-CONFIG_SYS_TEXT_BASE=0xF0000000
+CONFIG_TEXT_BASE=0xF0000000
 CONFIG_ENV_SIZE=0x4000
 CONFIG_ENV_SECT_SIZE=0x20000
 CONFIG_DEFAULT_DEVICE_TREE="kmtuxa1"
diff --git a/configs/u200_defconfig b/configs/u200_defconfig
index b4f2f21d7ed..f346b381e2f 100644
--- a/configs/u200_defconfig
+++ b/configs/u200_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MESON=y
-CONFIG_SYS_TEXT_BASE=0x01000000
+CONFIG_TEXT_BASE=0x01000000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
 CONFIG_DM_GPIO=y
diff --git a/configs/uDPU_defconfig b/configs/uDPU_defconfig
index 13d1d92b7b6..f779b8c532c 100644
--- a/configs/uDPU_defconfig
+++ b/configs/uDPU_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_MVEBU=y
-CONFIG_SYS_TEXT_BASE=0x00000000
+CONFIG_TEXT_BASE=0x00000000
 CONFIG_TARGET_MVEBU_ARMADA_37XX=y
 CONFIG_MVEBU_EFUSE=y
 CONFIG_ENV_SIZE=0x10000
diff --git a/configs/udoo_defconfig b/configs/udoo_defconfig
index 13b0cd4030d..5f8f4888d87 100644
--- a/configs/udoo_defconfig
+++ b/configs/udoo_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x17800000
+CONFIG_TEXT_BASE=0x17800000
 CONFIG_SYS_MALLOC_LEN=0x0200000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/udoo_neo_defconfig b/configs/udoo_neo_defconfig
index 4ff449ceece..8ae9fa57f03 100644
--- a/configs/udoo_neo_defconfig
+++ b/configs/udoo_neo_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x87800000
+CONFIG_TEXT_BASE=0x87800000
 CONFIG_SYS_MALLOC_LEN=0x300000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/uniphier_ld4_sld8_defconfig b/configs/uniphier_ld4_sld8_defconfig
index 5de9a688343..405026674b6 100644
--- a/configs/uniphier_ld4_sld8_defconfig
+++ b/configs/uniphier_ld4_sld8_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_UNIPHIER=y
-CONFIG_SYS_TEXT_BASE=0x84000000
+CONFIG_TEXT_BASE=0x84000000
 CONFIG_NR_DRAM_BANKS=3
 CONFIG_ENV_SIZE=0x2000
 CONFIG_DEFAULT_DEVICE_TREE="uniphier-ld4-ref"
diff --git a/configs/uniphier_v7_defconfig b/configs/uniphier_v7_defconfig
index b6b5ca58c27..513fbd18588 100644
--- a/configs/uniphier_v7_defconfig
+++ b/configs/uniphier_v7_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_UNIPHIER=y
-CONFIG_SYS_TEXT_BASE=0x84000000
+CONFIG_TEXT_BASE=0x84000000
 CONFIG_NR_DRAM_BANKS=3
 CONFIG_ENV_SIZE=0x2000
 CONFIG_DEFAULT_DEVICE_TREE="uniphier-pxs2-vodka"
diff --git a/configs/uniphier_v8_defconfig b/configs/uniphier_v8_defconfig
index eccfb0dbb16..d2025082c66 100644
--- a/configs/uniphier_v8_defconfig
+++ b/configs/uniphier_v8_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_POSITION_INDEPENDENT=y
 CONFIG_ARM_SMCCC=y
 CONFIG_ARCH_UNIPHIER=y
-CONFIG_SYS_TEXT_BASE=0x00000000
+CONFIG_TEXT_BASE=0x00000000
 CONFIG_NR_DRAM_BANKS=3
 CONFIG_ENV_SIZE=0x2000
 CONFIG_DEFAULT_DEVICE_TREE="uniphier-ld20-ref"
diff --git a/configs/usb_a9263_dataflash_defconfig b/configs/usb_a9263_dataflash_defconfig
index 133a1298f2b..c4b75fdce7e 100644
--- a/configs/usb_a9263_dataflash_defconfig
+++ b/configs/usb_a9263_dataflash_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x23f00000
+CONFIG_TEXT_BASE=0x23f00000
 CONFIG_SYS_MALLOC_LEN=0x26000
 CONFIG_TARGET_USB_A9263=y
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/usbarmory_defconfig b/configs/usbarmory_defconfig
index e7f05627181..0d7a1449798 100644
--- a/configs/usbarmory_defconfig
+++ b/configs/usbarmory_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX5=y
-CONFIG_SYS_TEXT_BASE=0x77800000
+CONFIG_TEXT_BASE=0x77800000
 CONFIG_SYS_MALLOC_LEN=0xa00000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/variscite_dart6ul_defconfig b/configs/variscite_dart6ul_defconfig
index 0f9cc8d82d3..b0f5f8fe2b9 100644
--- a/configs/variscite_dart6ul_defconfig
+++ b/configs/variscite_dart6ul_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x86000000
+CONFIG_TEXT_BASE=0x86000000
 CONFIG_SYS_MALLOC_LEN=0x1000000
 CONFIG_SYS_MALLOC_F_LEN=0x4000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/venice2_defconfig b/configs/venice2_defconfig
index 0ac9c4710aa..a754c200469 100644
--- a/configs/venice2_defconfig
+++ b/configs/venice2_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SYS_L2CACHE_OFF=y
 CONFIG_ARCH_TEGRA=y
-CONFIG_SYS_TEXT_BASE=0x80110000
+CONFIG_TEXT_BASE=0x80110000
 CONFIG_SYS_MALLOC_LEN=0x2500000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x2000
diff --git a/configs/ventana_defconfig b/configs/ventana_defconfig
index aac59831ea5..bf69ddf0b1f 100644
--- a/configs/ventana_defconfig
+++ b/configs/ventana_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SYS_L2CACHE_OFF=y
 CONFIG_ARCH_TEGRA=y
-CONFIG_SYS_TEXT_BASE=0x00110000
+CONFIG_TEXT_BASE=0x00110000
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x2000
 CONFIG_ENV_OFFSET=0xFFFFE000
diff --git a/configs/verdin-imx8mm_defconfig b/configs/verdin-imx8mm_defconfig
index 59534cd5125..5f41cd210a4 100644
--- a/configs/verdin-imx8mm_defconfig
+++ b/configs/verdin-imx8mm_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_IMX8M=y
-CONFIG_SYS_TEXT_BASE=0x40200000
+CONFIG_TEXT_BASE=0x40200000
 CONFIG_SYS_MALLOC_LEN=0x2000000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/verdin-imx8mp_defconfig b/configs/verdin-imx8mp_defconfig
index 6168ee95c16..4bf4b7beaee 100644
--- a/configs/verdin-imx8mp_defconfig
+++ b/configs/verdin-imx8mp_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_IMX8M=y
-CONFIG_SYS_TEXT_BASE=0x40200000
+CONFIG_TEXT_BASE=0x40200000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/vexpress_ca9x4_defconfig b/configs/vexpress_ca9x4_defconfig
index d5dde9ca943..da4097a71b4 100644
--- a/configs/vexpress_ca9x4_defconfig
+++ b/configs/vexpress_ca9x4_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SYS_L2CACHE_OFF=y
 CONFIG_TARGET_VEXPRESS_CA9X4=y
-CONFIG_SYS_TEXT_BASE=0x60800000
+CONFIG_TEXT_BASE=0x60800000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ENV_SIZE=0x40000
diff --git a/configs/vf610twr_defconfig b/configs/vf610twr_defconfig
index 998e3a279b8..e708bb8adca 100644
--- a/configs/vf610twr_defconfig
+++ b/configs/vf610twr_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_SYS_THUMB_BUILD=y
 CONFIG_ARCH_VF610=y
-CONFIG_SYS_TEXT_BASE=0x3f401000
+CONFIG_TEXT_BASE=0x3f401000
 CONFIG_SYS_MALLOC_LEN=0x202000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/vf610twr_nand_defconfig b/configs/vf610twr_nand_defconfig
index 6aef103a0db..3567b66900e 100644
--- a/configs/vf610twr_nand_defconfig
+++ b/configs/vf610twr_nand_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_SYS_THUMB_BUILD=y
 CONFIG_ARCH_VF610=y
-CONFIG_SYS_TEXT_BASE=0x3f401000
+CONFIG_TEXT_BASE=0x3f401000
 CONFIG_SYS_MALLOC_LEN=0x0220000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/vinco_defconfig b/configs/vinco_defconfig
index 152b13d429d..22883ea6eb4 100644
--- a/configs/vinco_defconfig
+++ b/configs/vinco_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_AT91=y
-CONFIG_SYS_TEXT_BASE=0x20f00000
+CONFIG_TEXT_BASE=0x20f00000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_TARGET_VINCO=y
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/vining_2000_defconfig b/configs/vining_2000_defconfig
index 8445d9439f7..6efd1ab5e97 100644
--- a/configs/vining_2000_defconfig
+++ b/configs/vining_2000_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x87800000
+CONFIG_TEXT_BASE=0x87800000
 CONFIG_SYS_MALLOC_LEN=0x300000
 CONFIG_SYS_MALLOC_F_LEN=0x4000
 CONFIG_SPL_GPIO=y
diff --git a/configs/vyasa-rk3288_defconfig b/configs/vyasa-rk3288_defconfig
index 4b5b1db0ff0..189ff7811d8 100644
--- a/configs/vyasa-rk3288_defconfig
+++ b/configs/vyasa-rk3288_defconfig
@@ -5,7 +5,7 @@ CONFIG_SYS_ARCH_TIMER=y
 # CONFIG_SPL_USE_ARCH_MEMCPY is not set
 # CONFIG_SPL_USE_ARCH_MEMSET is not set
 CONFIG_ARCH_ROCKCHIP=y
-CONFIG_SYS_TEXT_BASE=0x00100000
+CONFIG_TEXT_BASE=0x00100000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_OFFSET=0x3F8000
 CONFIG_DEFAULT_DEVICE_TREE="rk3288-vyasa"
diff --git a/configs/wandboard_defconfig b/configs/wandboard_defconfig
index 1d125d0d7bc..3bddcbb3f8f 100644
--- a/configs/wandboard_defconfig
+++ b/configs/wandboard_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
-CONFIG_SYS_TEXT_BASE=0x17800000
+CONFIG_TEXT_BASE=0x17800000
 CONFIG_SYS_MALLOC_LEN=0xa00000
 CONFIG_SPL_GPIO=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/wetek-core2_defconfig b/configs/wetek-core2_defconfig
index a1322d64fe3..7e705de1a8a 100644
--- a/configs/wetek-core2_defconfig
+++ b/configs/wetek-core2_defconfig
@@ -1,6 +1,6 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MESON=y
-CONFIG_SYS_TEXT_BASE=0x01000000
+CONFIG_TEXT_BASE=0x01000000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
 CONFIG_DM_GPIO=y
diff --git a/configs/work_92105_defconfig b/configs/work_92105_defconfig
index 7eb23907ebc..d30ebf162a4 100644
--- a/configs/work_92105_defconfig
+++ b/configs/work_92105_defconfig
@@ -4,7 +4,7 @@ CONFIG_SYS_ICACHE_OFF=y
 CONFIG_SYS_DCACHE_OFF=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_LPC32XX=y
-CONFIG_SYS_TEXT_BASE=0x80100000
+CONFIG_TEXT_BASE=0x80100000
 CONFIG_SYS_MALLOC_LEN=0x100000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
diff --git a/configs/x530_defconfig b/configs/x530_defconfig
index fa4b20345e3..2f8be2fcd77 100644
--- a/configs/x530_defconfig
+++ b/configs/x530_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_ARCH_CPU_INIT=y
 CONFIG_ARCH_MVEBU=y
-CONFIG_SYS_TEXT_BASE=0x00800000
+CONFIG_TEXT_BASE=0x00800000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
 CONFIG_NR_DRAM_BANKS=2
diff --git a/configs/xenguest_arm64_defconfig b/configs/xenguest_arm64_defconfig
index 50a5a104616..3d1f71e0ed2 100644
--- a/configs/xenguest_arm64_defconfig
+++ b/configs/xenguest_arm64_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_POSITION_INDEPENDENT=y
 CONFIG_TARGET_XENGUEST_ARM64=y
-CONFIG_SYS_TEXT_BASE=0x40080000
+CONFIG_TEXT_BASE=0x40080000
 CONFIG_SYS_MALLOC_LEN=0x2000000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/xilinx_versal_mini_defconfig b/configs/xilinx_versal_mini_defconfig
index 7a0557a22e2..3c5ab01aa9e 100644
--- a/configs/xilinx_versal_mini_defconfig
+++ b/configs/xilinx_versal_mini_defconfig
@@ -3,7 +3,7 @@ CONFIG_SYS_CONFIG_NAME="xilinx_versal_mini_qspi"
 CONFIG_SYS_ICACHE_OFF=y
 CONFIG_COUNTER_FREQUENCY=100000000
 CONFIG_ARCH_VERSAL=y
-CONFIG_SYS_TEXT_BASE=0xFFFC0000
+CONFIG_TEXT_BASE=0xFFFC0000
 CONFIG_SYS_MALLOC_LEN=0x2000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_NR_DRAM_BANKS=3
diff --git a/configs/xilinx_versal_mini_emmc0_defconfig b/configs/xilinx_versal_mini_emmc0_defconfig
index 4b626d34654..29b868f2752 100644
--- a/configs/xilinx_versal_mini_emmc0_defconfig
+++ b/configs/xilinx_versal_mini_emmc0_defconfig
@@ -3,7 +3,7 @@ CONFIG_SYS_CONFIG_NAME="xilinx_versal_mini"
 CONFIG_SYS_ICACHE_OFF=y
 CONFIG_COUNTER_FREQUENCY=100000000
 CONFIG_ARCH_VERSAL=y
-CONFIG_SYS_TEXT_BASE=0x10000
+CONFIG_TEXT_BASE=0x10000
 CONFIG_SYS_MALLOC_LEN=0x80000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/xilinx_versal_mini_emmc1_defconfig b/configs/xilinx_versal_mini_emmc1_defconfig
index 6fe2ebf876e..9f8fa4960db 100644
--- a/configs/xilinx_versal_mini_emmc1_defconfig
+++ b/configs/xilinx_versal_mini_emmc1_defconfig
@@ -3,7 +3,7 @@ CONFIG_SYS_CONFIG_NAME="xilinx_versal_mini"
 CONFIG_SYS_ICACHE_OFF=y
 CONFIG_COUNTER_FREQUENCY=100000000
 CONFIG_ARCH_VERSAL=y
-CONFIG_SYS_TEXT_BASE=0x10000
+CONFIG_TEXT_BASE=0x10000
 CONFIG_SYS_MALLOC_LEN=0x80000
 CONFIG_SYS_MALLOC_F_LEN=0x400
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/xilinx_versal_virt_defconfig b/configs/xilinx_versal_virt_defconfig
index 6afd06798d0..de74b705504 100644
--- a/configs/xilinx_versal_virt_defconfig
+++ b/configs/xilinx_versal_virt_defconfig
@@ -3,7 +3,7 @@ CONFIG_COUNTER_FREQUENCY=100000000
 CONFIG_POSITION_INDEPENDENT=y
 CONFIG_SYS_INIT_SP_BSS_OFFSET=1572864
 CONFIG_ARCH_VERSAL=y
-CONFIG_SYS_TEXT_BASE=0x8000000
+CONFIG_TEXT_BASE=0x8000000
 CONFIG_SYS_MALLOC_F_LEN=0x100000
 CONFIG_DEFAULT_DEVICE_TREE="xilinx-versal-virt"
 CONFIG_SYS_PROMPT="Versal> "
diff --git a/configs/xilinx_zynq_virt_defconfig b/configs/xilinx_zynq_virt_defconfig
index c12a1cbbc8a..1b4aa850f70 100644
--- a/configs/xilinx_zynq_virt_defconfig
+++ b/configs/xilinx_zynq_virt_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SPL_SYS_DCACHE_OFF=y
 CONFIG_SYS_L2CACHE_OFF=y
 CONFIG_ARCH_ZYNQ=y
-CONFIG_SYS_TEXT_BASE=0x4000000
+CONFIG_TEXT_BASE=0x4000000
 CONFIG_ENV_OFFSET=0xE00000
 CONFIG_DM_GPIO=y
 CONFIG_DEFAULT_DEVICE_TREE="zynq-zc706"
diff --git a/configs/xilinx_zynqmp_mini_defconfig b/configs/xilinx_zynqmp_mini_defconfig
index 1474434fb8d..245b6a42b93 100644
--- a/configs/xilinx_zynqmp_mini_defconfig
+++ b/configs/xilinx_zynqmp_mini_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SYS_CONFIG_NAME="xilinx_zynqmp_mini_qspi"
 CONFIG_SYS_ICACHE_OFF=y
 CONFIG_ARCH_ZYNQMP=y
-CONFIG_SYS_TEXT_BASE=0xFFFC0000
+CONFIG_TEXT_BASE=0xFFFC0000
 CONFIG_SYS_MALLOC_LEN=0x1a00
 CONFIG_ENV_SIZE=0x80
 CONFIG_DEFAULT_DEVICE_TREE="zynqmp-mini"
diff --git a/configs/xilinx_zynqmp_mini_emmc0_defconfig b/configs/xilinx_zynqmp_mini_emmc0_defconfig
index 16f1d490953..adf1dae66ed 100644
--- a/configs/xilinx_zynqmp_mini_emmc0_defconfig
+++ b/configs/xilinx_zynqmp_mini_emmc0_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SYS_CONFIG_NAME="xilinx_zynqmp_mini_emmc"
 CONFIG_SYS_ICACHE_OFF=y
 CONFIG_ARCH_ZYNQMP=y
-CONFIG_SYS_TEXT_BASE=0x10000
+CONFIG_TEXT_BASE=0x10000
 CONFIG_SYS_MALLOC_LEN=0x800000
 CONFIG_SYS_MALLOC_F_LEN=0x1000
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/xilinx_zynqmp_mini_emmc1_defconfig b/configs/xilinx_zynqmp_mini_emmc1_defconfig
index cfaffa147aa..9d799ad0e3d 100644
--- a/configs/xilinx_zynqmp_mini_emmc1_defconfig
+++ b/configs/xilinx_zynqmp_mini_emmc1_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SYS_CONFIG_NAME="xilinx_zynqmp_mini_emmc"
 CONFIG_SYS_ICACHE_OFF=y
 CONFIG_ARCH_ZYNQMP=y
-CONFIG_SYS_TEXT_BASE=0x10000
+CONFIG_TEXT_BASE=0x10000
 CONFIG_SYS_MALLOC_LEN=0x800000
 CONFIG_SYS_MALLOC_F_LEN=0x1000
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/xilinx_zynqmp_mini_nand_defconfig b/configs/xilinx_zynqmp_mini_nand_defconfig
index e6054fe1774..29040a39e97 100644
--- a/configs/xilinx_zynqmp_mini_nand_defconfig
+++ b/configs/xilinx_zynqmp_mini_nand_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SYS_CONFIG_NAME="xilinx_zynqmp_mini_nand"
 CONFIG_SYS_ICACHE_OFF=y
 CONFIG_ARCH_ZYNQMP=y
-CONFIG_SYS_TEXT_BASE=0x10000
+CONFIG_TEXT_BASE=0x10000
 CONFIG_SYS_MALLOC_LEN=0x800000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x80
diff --git a/configs/xilinx_zynqmp_mini_nand_single_defconfig b/configs/xilinx_zynqmp_mini_nand_single_defconfig
index aa35b48c72d..7c17c061d42 100644
--- a/configs/xilinx_zynqmp_mini_nand_single_defconfig
+++ b/configs/xilinx_zynqmp_mini_nand_single_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SYS_CONFIG_NAME="xilinx_zynqmp_mini_nand"
 CONFIG_SYS_ICACHE_OFF=y
 CONFIG_ARCH_ZYNQMP=y
-CONFIG_SYS_TEXT_BASE=0x10000
+CONFIG_TEXT_BASE=0x10000
 CONFIG_SYS_MALLOC_LEN=0x800000
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x80
diff --git a/configs/xilinx_zynqmp_mini_qspi_defconfig b/configs/xilinx_zynqmp_mini_qspi_defconfig
index d0cc0360d27..513b51998d2 100644
--- a/configs/xilinx_zynqmp_mini_qspi_defconfig
+++ b/configs/xilinx_zynqmp_mini_qspi_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
 CONFIG_SYS_CONFIG_NAME="xilinx_zynqmp_mini_qspi"
 CONFIG_SYS_ICACHE_OFF=y
 CONFIG_ARCH_ZYNQMP=y
-CONFIG_SYS_TEXT_BASE=0xFFFC0000
+CONFIG_TEXT_BASE=0xFFFC0000
 CONFIG_SYS_MALLOC_LEN=0x1b00
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x80
diff --git a/configs/xilinx_zynqmp_r5_defconfig b/configs/xilinx_zynqmp_r5_defconfig
index 59c58524cce..86674f57ba2 100644
--- a/configs/xilinx_zynqmp_r5_defconfig
+++ b/configs/xilinx_zynqmp_r5_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_SKIP_LOWLEVEL_INIT=y
 CONFIG_ARCH_ZYNQMP_R5=y
-CONFIG_SYS_TEXT_BASE=0x10000000
+CONFIG_TEXT_BASE=0x10000000
 CONFIG_SYS_MALLOC_LEN=0x1400000
 CONFIG_SYS_MALLOC_F_LEN=0x1000
 CONFIG_NR_DRAM_BANKS=1
diff --git a/configs/xilinx_zynqmp_virt_defconfig b/configs/xilinx_zynqmp_virt_defconfig
index 1591f221b5a..c7cb8b7edb8 100644
--- a/configs/xilinx_zynqmp_virt_defconfig
+++ b/configs/xilinx_zynqmp_virt_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_POSITION_INDEPENDENT=y
 CONFIG_ARCH_ZYNQMP=y
-CONFIG_SYS_TEXT_BASE=0x8000000
+CONFIG_TEXT_BASE=0x8000000
 CONFIG_SYS_MALLOC_LEN=0x4040000
 CONFIG_SYS_MALLOC_F_LEN=0x8000
 CONFIG_DM_GPIO=y
diff --git a/configs/zynq_cse_nand_defconfig b/configs/zynq_cse_nand_defconfig
index 22f7456d33c..7ca74837aec 100644
--- a/configs/zynq_cse_nand_defconfig
+++ b/configs/zynq_cse_nand_defconfig
@@ -6,7 +6,7 @@ CONFIG_SYS_ICACHE_OFF=y
 CONFIG_SYS_DCACHE_OFF=y
 CONFIG_SYS_L2CACHE_OFF=y
 CONFIG_ARCH_ZYNQ=y
-CONFIG_SYS_TEXT_BASE=0x100000
+CONFIG_TEXT_BASE=0x100000
 CONFIG_SYS_MALLOC_LEN=0x8000
 CONFIG_ENV_SIZE=0x190
 CONFIG_DEFAULT_DEVICE_TREE="zynq-cse-nand"
diff --git a/configs/zynq_cse_nor_defconfig b/configs/zynq_cse_nor_defconfig
index 9f2d33782f5..28e9c459817 100644
--- a/configs/zynq_cse_nor_defconfig
+++ b/configs/zynq_cse_nor_defconfig
@@ -6,7 +6,7 @@ CONFIG_SYS_ICACHE_OFF=y
 CONFIG_SYS_DCACHE_OFF=y
 CONFIG_SYS_L2CACHE_OFF=y
 CONFIG_ARCH_ZYNQ=y
-CONFIG_SYS_TEXT_BASE=0xFFFC0000
+CONFIG_TEXT_BASE=0xFFFC0000
 CONFIG_SYS_MALLOC_LEN=0x1000
 CONFIG_ENV_SIZE=0x190
 CONFIG_DEFAULT_DEVICE_TREE="zynq-cse-nor"
diff --git a/configs/zynq_cse_qspi_defconfig b/configs/zynq_cse_qspi_defconfig
index a7672247958..215d5ed5ebf 100644
--- a/configs/zynq_cse_qspi_defconfig
+++ b/configs/zynq_cse_qspi_defconfig
@@ -6,7 +6,7 @@ CONFIG_SYS_ICACHE_OFF=y
 CONFIG_SYS_DCACHE_OFF=y
 CONFIG_SYS_L2CACHE_OFF=y
 CONFIG_ARCH_ZYNQ=y
-CONFIG_SYS_TEXT_BASE=0xFFFC0000
+CONFIG_TEXT_BASE=0xFFFC0000
 CONFIG_SYS_MALLOC_LEN=0x1000
 CONFIG_ENV_SIZE=0x190
 CONFIG_DEFAULT_DEVICE_TREE="zynq-cse-qspi-single"
diff --git a/doc/README.arm-relocation b/doc/README.arm-relocation
index bc6644911b9..6bb4e178474 100644
--- a/doc/README.arm-relocation
+++ b/doc/README.arm-relocation
@@ -41,7 +41,7 @@ Boards which are not fixed to support relocation will be REMOVED!
 -----------------------------------------------------------------------------
 
 For boards which boot from spl, it is possible to save one copy
-if CONFIG_SYS_TEXT_BASE == relocation address! This prevents that uboot code
+if CONFIG_TEXT_BASE == relocation address! This prevents that uboot code
 is copied again in relocate_code().
 
 example for the tx25 board booting from NAND Flash:
@@ -58,7 +58,7 @@ e) there it copy u-boot to CONFIG_SYS_NAND_U_BOOT_DST and
 f) u-boot code steps through board_init_f() and calculates
    the relocation address and copy itself to it
 
-If CONFIG_SYS_TEXT_BASE == relocation address, the copying of u-boot
+If CONFIG_TEXT_BASE == relocation address, the copying of u-boot
 in f) could be saved.
 
 -----------------------------------------------------------------------------
@@ -68,10 +68,10 @@ TODO
 - fill in struct bd_info infos (check)
 - adapt all boards
 
-- maybe adapt CONFIG_SYS_TEXT_BASE (this must be checked from board maintainers)
+- maybe adapt CONFIG_TEXT_BASE (this must be checked from board maintainers)
   This *must* be done for boards, which boot from NOR flash
 
-  on other boards if CONFIG_SYS_TEXT_BASE = relocation baseaddr, this saves
+  on other boards if CONFIG_TEXT_BASE = relocation baseaddr, this saves
   one copying from u-boot code.
 
 - new function dram_init_banksize() is actual board specific. Maybe
@@ -91,7 +91,7 @@ Relocation with SPL (example for the tx25 booting from NAND Flash):
 
 - This u-boot does no RAM init, nor CPU register setup. Just look
   where it has to copy and relocate itself to this address. If
-  relocate address = CONFIG_SYS_TEXT_BASE (not the same, as the
+  relocate address = CONFIG_TEXT_BASE (not the same, as the
   CONFIG_SPL_TEXT_BASE from the spl code), then there is no need
   to copy, just go on with bss clear and jump to board_init_r.
 
diff --git a/doc/SPL/README.omap3 b/doc/SPL/README.omap3
index c77ca4300af..c0f4bab29b3 100644
--- a/doc/SPL/README.omap3
+++ b/doc/SPL/README.omap3
@@ -36,17 +36,17 @@ Option 1 (SPL only):
 0x40200800 - 0x4020BBFF: Area for SPL text, data and rodata
 0x4020E000 - 0x4020FFFC: Area for the SPL stack.
 0x80000000 - 0x8007FFFF: Area for the SPL BSS.
-0x80100000: CONFIG_SYS_TEXT_BASE of U-Boot
+0x80100000: CONFIG_TEXT_BASE of U-Boot
 0x80208000 - 0x80307FFF: malloc() pool available to SPL.
 
 Option 2 (SPL or X-Loader):
 0x40200800 - 0x4020BBFF: Area for SPL text, data and rodata
 0x4020E000 - 0x4020FFFC: Area for the SPL stack.
-0x80008000: CONFIG_SYS_TEXT_BASE of U-Boot
+0x80008000: CONFIG_TEXT_BASE of U-Boot
 0x87000000 - 0x8707FFFF: Area for the SPL BSS.
 0x87080000 - 0x870FFFFF: malloc() pool available to SPL.
 
 For the areas that reside within DDR1 they must not be used prior to s_init()
-completing.  Note that CONFIG_SYS_TEXT_BASE must be clear of the areas that SPL
+completing.  Note that CONFIG_TEXT_BASE must be clear of the areas that SPL
 uses while running.  This is why we have two versions of the memory map that
 only vary in where the BSS and malloc pool reside.
diff --git a/doc/arch/m68k.rst b/doc/arch/m68k.rst
index 87a51e5b7db..15806dfaee1 100644
--- a/doc/arch/m68k.rst
+++ b/doc/arch/m68k.rst
@@ -97,7 +97,7 @@ CONFIG_MONITOR_IS_IN_RAM must be defined. If it is defined the
 initial vector table and basic processor initialization will not
 be compiled in. The start address of U-Boot must be adjusted in
 the boards config header file (CONFIG_SYS_MONITOR_BASE) and Makefile
-(CONFIG_SYS_TEXT_BASE) to the load address.
+(CONFIG_TEXT_BASE) to the load address.
 
 ColdFire CPU specific options/settings
 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
diff --git a/doc/arch/sandbox.rst b/doc/arch/sandbox.rst
index 068d4a3be40..ed66f70f619 100644
--- a/doc/arch/sandbox.rst
+++ b/doc/arch/sandbox.rst
@@ -619,5 +619,5 @@ Addr      Config                     Usage
   f0000   CONFIG_PRE_CON_BUF_ADDR    Pre-console buffer
  100000   CONFIG_TRACE_EARLY_ADDR    Early trace buffer (if enabled). Also used
                                      as the SPL load buffer in spl_test_load().
- 200000   CONFIG_SYS_TEXT_BASE       Load buffer for U-Boot (sandbox_spl only)
+ 200000   CONFIG_TEXT_BASE           Load buffer for U-Boot (sandbox_spl only)
 =======   ========================   ===============================
diff --git a/doc/board/coreboot/coreboot.rst b/doc/board/coreboot/coreboot.rst
index 3792f9e1c8d..4a5f101cad2 100644
--- a/doc/board/coreboot/coreboot.rst
+++ b/doc/board/coreboot/coreboot.rst
@@ -26,7 +26,7 @@ this capability yet. The command is as follows::
    $ ./build/util/cbfstool/cbfstool build/coreboot.rom add-flat-binary \
      -f u-boot-dtb.bin -n fallback/payload -c lzma -l 0x1110000 -e 0x1110000
 
-Make sure 0x1110000 matches CONFIG_SYS_TEXT_BASE, which is the symbol address
+Make sure 0x1110000 matches CONFIG_TEXT_BASE, which is the symbol address
 of _x86boot_start (in arch/x86/cpu/start.S).
 
 If you want to use ELF as the coreboot payload, change U-Boot configuration to
@@ -64,7 +64,7 @@ Memory map
     10000000  Memory reserved by coreboot for mapping PCI devices
               (typical size 2151000, includes framebuffer)
      1920000  CONFIG_SYS_CAR_ADDR, fake Cache-as-RAM memory, used during startup
-     1110000  CONFIG_SYS_TEXT_BASE (start address of U-Boot code, before reloc)
+     1110000  CONFIG_TEXT_BASE (start address of U-Boot code, before reloc)
       110000  CONFIG_BLOBLIST_ADDR (before being relocated)
       100000  CONFIG_PRE_CON_BUF_ADDR
        f0000  ACPI tables set up by U-Boot
diff --git a/doc/board/google/chromebook_coral.rst b/doc/board/google/chromebook_coral.rst
index 4b585678dcf..8edbf0429cd 100644
--- a/doc/board/google/chromebook_coral.rst
+++ b/doc/board/google/chromebook_coral.rst
@@ -250,7 +250,7 @@ boots. Be warned that SPL can take 30 seconds without this cache! This is a
 known issue with Intel SoCs with modern DRAM and apparently cannot be improved.
 The MRC caches are used to work around this.
 
-Once SPL is finished it loads U-Boot into SDRAM at CONFIG_SYS_TEXT_BASE, which
+Once SPL is finished it loads U-Boot into SDRAM at CONFIG_TEXT_BASE, which
 is normally 1110000. Note that CAR is still active.
 
 
@@ -355,7 +355,7 @@ Partial memory map
        f0000       CONFIG_ROM_TABLE_ADDR
       120000       BSS (defined in u-boot-spl.lds)
       200000       FSP-S (which is run after U-Boot is relocated)
-     1110000       CONFIG_SYS_TEXT_BASE
+     1110000       CONFIG_TEXT_BASE
 
 
 Speeding up SPL for development
diff --git a/doc/board/google/chromebook_samus.rst b/doc/board/google/chromebook_samus.rst
index eab1128e4f9..822ba575e2f 100644
--- a/doc/board/google/chromebook_samus.rst
+++ b/doc/board/google/chromebook_samus.rst
@@ -91,7 +91,7 @@ Flash map for samus / broadwell:
    :fffd8000:	TPL_TEXT_BASE
    :fffa0000:	X86_MRC_ADDR
    :fff90000:	VGA_BIOS_ADDR
-   :ffed0000:	SYS_TEXT_BASE
+   :ffed0000:	TEXT_BASE
    :ffea0000:	X86_REFCODE_ADDR
    :ffe70000:	SPL_TEXT_BASE
    :ffbf8000:	CONFIG_ENV_OFFSET (environemnt offset)
diff --git a/doc/board/intel/minnowmax.rst b/doc/board/intel/minnowmax.rst
index 028121735ae..1ba25b50d21 100644
--- a/doc/board/intel/minnowmax.rst
+++ b/doc/board/intel/minnowmax.rst
@@ -56,7 +56,7 @@ Offset   Description         Controlling config
 500000   <spare>
 6ef000   Environment         CONFIG_ENV_OFFSET
 6f0000   MRC cache           CONFIG_ENABLE_MRC_CACHE
-700000   u-boot-dtb.bin      CONFIG_SYS_TEXT_BASE
+700000   u-boot-dtb.bin      CONFIG_TEXT_BASE
 7b0000   vga.bin             CONFIG_VGA_BIOS_ADDR
 7c0000   fsp.bin             CONFIG_FSP_ADDR
 7f8000   <spare>             (depends on size of fsp.bin)
diff --git a/doc/board/intel/slimbootloader.rst b/doc/board/intel/slimbootloader.rst
index 18f1cc0569c..87d71a55bdc 100644
--- a/doc/board/intel/slimbootloader.rst
+++ b/doc/board/intel/slimbootloader.rst
@@ -69,7 +69,7 @@ The PayloadId can be any 4 Bytes value.
     +GEN_CFG_DATA.PayloadId                     | 'U-BT'
 
 2. Update payload text base. PAYLOAD_EXE_BASE must be the same as U-Boot
-   CONFIG_SYS_TEXT_BASE in board/intel/slimbootloader/Kconfig.
+   CONFIG_TEXT_BASE in board/intel/slimbootloader/Kconfig.
    PAYLOAD_LOAD_HIGH must be 0::
 
     $ vi Platform/QemuBoardPkg/BoardConfig.py
@@ -122,7 +122,7 @@ Also, the PayloadId needs to be set for APL board.
 
 2. Update payload text base.
 
-* PAYLOAD_EXE_BASE must be the same as U-Boot CONFIG_SYS_TEXT_BASE
+* PAYLOAD_EXE_BASE must be the same as U-Boot CONFIG_TEXT_BASE
   in board/intel/slimbootloader/Kconfig.
 * PAYLOAD_LOAD_HIGH must be 0::
 
diff --git a/doc/board/nxp/mx6ul_14x14_evk.rst b/doc/board/nxp/mx6ul_14x14_evk.rst
index 8298bf8e1e7..3e57ba1ee81 100644
--- a/doc/board/nxp/mx6ul_14x14_evk.rst
+++ b/doc/board/nxp/mx6ul_14x14_evk.rst
@@ -74,9 +74,9 @@ The following script should be created to boot SPL + u-boot-dtb.img binaries:
      SDPU: jump -addr 0x877fffc0
      SDPU: done
 
-Please note that the address above is calculated based on SYS_TEXT_BASE address:
+Please note that the address above is calculated based on TEXT_BASE address:
 
-0x877fffc0 = 0x87800000 (SYS_TEXT_BASE) - 0x40 (U-Boot proper Header size)
+0x877fffc0 = 0x87800000 (TEXT_BASE) - 0x40 (U-Boot proper Header size)
 
 Power on the target and run the following command from U-Boot root directory:
 
diff --git a/doc/board/sipeed/maix.rst b/doc/board/sipeed/maix.rst
index 903f8831d70..4568bb3e4b7 100644
--- a/doc/board/sipeed/maix.rst
+++ b/doc/board/sipeed/maix.rst
@@ -93,7 +93,7 @@ The OpenSBI source can be downloaded via:
 As OpenSBI will be loaded at 0x80000000 we have to adjust the U-Boot text base.
 Furthermore we have to enable building U-Boot for S-mode::
 
-    CONFIG_SYS_TEXT_BASE=0x80020000
+    CONFIG_TEXT_BASE=0x80020000
     CONFIG_RISCV_SMODE=y
 
 Both settings are contained in sipeed_maix_smode_defconfig so we can build
@@ -115,7 +115,7 @@ To build OpenSBI with U-Boot as a payload:
     FW_PAYLOAD_OFFSET=0x20000 \
     FW_PAYLOAD_PATH=<path to U-Boot>/u-boot-dtb.bin
 
-The value of FW_PAYLOAD_OFFSET must match CONFIG_SYS_TEXT_BASE - 0x80000000.
+The value of FW_PAYLOAD_OFFSET must match CONFIG_TEXT_BASE - 0x80000000.
 
 The file to flash is build/platform/kendryte/k210/firmware/fw_payload.bin.
 
diff --git a/doc/chromium/chainload.rst b/doc/chromium/chainload.rst
index 7b6bb10d36d..b00ee94eaa4 100644
--- a/doc/chromium/chainload.rst
+++ b/doc/chromium/chainload.rst
@@ -140,7 +140,7 @@ bytes of U-Boot::
 
 
 The 'data' property of the FIT is set up to start at offset 0x100 bytes into
-the file. The change to CONFIG_SYS_TEXT_BASE is also an offset of 0x100 bytes
+the file. The change to CONFIG_TEXT_BASE is also an offset of 0x100 bytes
 from the load address. If this changes, you either need to modify U-Boot to be
 fully relocatable, or expect it to hang.
 
@@ -156,11 +156,11 @@ Open include/configs/rk3288_common.h
 
 Change::
 
-   #define CONFIG_SYS_TEXT_BASE		0x00100000
+   #define CONFIG_TEXT_BASE		0x00100000
 
 to::
 
-   #define CONFIG_SYS_TEXT_BASE		0x02000100
+   #define CONFIG_TEXT_BASE		0x02000100
 
 
 
@@ -254,4 +254,4 @@ it uses a fixed address to load the FIT and does not support load/exec
 addresses. This means that U-Boot must be able to boot from whatever
 address Depthcharge happens to use (it is the CONFIG_KERNEL_START setting
 in Depthcharge). In practice this means that the data in the kernel@1 FIT node
-(see above) must start at the same address as U-Boot's CONFIG_SYS_TEXT_BASE.
+(see above) must start at the same address as U-Boot's CONFIG_TEXT_BASE.
diff --git a/doc/develop/moveconfig.rst b/doc/develop/moveconfig.rst
index bfb7aff3582..ad8596e6c61 100644
--- a/doc/develop/moveconfig.rst
+++ b/doc/develop/moveconfig.rst
@@ -20,10 +20,10 @@ First, you must edit the Kconfig to add the menu entries for the configs
 you are moving.
 
 Then run this tool giving CONFIG names you want to move.
-For example, if you want to move CONFIG_CMD_USB and CONFIG_SYS_TEXT_BASE,
+For example, if you want to move CONFIG_CMD_USB and CONFIG_TEXT_BASE,
 simply type as follows::
 
-  $ tools/moveconfig.py CONFIG_CMD_USB CONFIG_SYS_TEXT_BASE
+  $ tools/moveconfig.py CONFIG_CMD_USB CONFIG_TEXT_BASE
 
 The tool walks through all the defconfig files and move the given CONFIGs.
 
diff --git a/include/configs/MCR3000.h b/include/configs/MCR3000.h
index 9d0683829ec..1826a6fece8 100644
--- a/include/configs/MCR3000.h
+++ b/include/configs/MCR3000.h
@@ -68,7 +68,7 @@
 #define	CONFIG_SYS_SDRAM_BASE		0x00000000
 
 /* FLASH organization */
-#define CONFIG_SYS_FLASH_BASE		CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_FLASH_BASE		CONFIG_TEXT_BASE
 
 /*
  * For booting Linux, the board info and command line data
diff --git a/include/configs/MPC837XERDB.h b/include/configs/MPC837XERDB.h
index c2f4f2bee2c..edf9b34f61c 100644
--- a/include/configs/MPC837XERDB.h
+++ b/include/configs/MPC837XERDB.h
@@ -256,15 +256,15 @@
 	"netdev=" CONFIG_NETDEV "\0"				\
 	"uboot=" CONFIG_UBOOTPATH "\0"					\
 	"tftpflash=tftp $loadaddr $uboot;"				\
-		"protect off " __stringify(CONFIG_SYS_TEXT_BASE)	\
+		"protect off " __stringify(CONFIG_TEXT_BASE)	\
 			" +$filesize; "	\
-		"erase " __stringify(CONFIG_SYS_TEXT_BASE)		\
+		"erase " __stringify(CONFIG_TEXT_BASE)		\
 			" +$filesize; "	\
-		"cp.b $loadaddr " __stringify(CONFIG_SYS_TEXT_BASE)	\
+		"cp.b $loadaddr " __stringify(CONFIG_TEXT_BASE)	\
 			" $filesize; "	\
-		"protect on " __stringify(CONFIG_SYS_TEXT_BASE)		\
+		"protect on " __stringify(CONFIG_TEXT_BASE)		\
 			" +$filesize; "	\
-		"cmp.b $loadaddr " __stringify(CONFIG_SYS_TEXT_BASE)	\
+		"cmp.b $loadaddr " __stringify(CONFIG_TEXT_BASE)	\
 			" $filesize\0"	\
 	"fdtaddr=780000\0"						\
 	"fdtfile=" CONFIG_FDTFILE "\0"					\
diff --git a/include/configs/MPC8548CDS.h b/include/configs/MPC8548CDS.h
index eb7a8351794..095193153a7 100644
--- a/include/configs/MPC8548CDS.h
+++ b/include/configs/MPC8548CDS.h
@@ -367,15 +367,15 @@
 	"netdev=eth0\0"				\
 	"uboot=" __stringify(CONFIG_UBOOTPATH) "\0"	\
 	"tftpflash=tftpboot $loadaddr $uboot; "	\
-		"protect off " __stringify(CONFIG_SYS_TEXT_BASE)	\
+		"protect off " __stringify(CONFIG_TEXT_BASE)	\
 			" +$filesize; "	\
-		"erase " __stringify(CONFIG_SYS_TEXT_BASE)		\
+		"erase " __stringify(CONFIG_TEXT_BASE)		\
 			" +$filesize; "	\
-		"cp.b $loadaddr " __stringify(CONFIG_SYS_TEXT_BASE)	\
+		"cp.b $loadaddr " __stringify(CONFIG_TEXT_BASE)	\
 			" $filesize; "	\
-		"protect on " __stringify(CONFIG_SYS_TEXT_BASE)		\
+		"protect on " __stringify(CONFIG_TEXT_BASE)		\
 			" +$filesize; "	\
-		"cmp.b $loadaddr " __stringify(CONFIG_SYS_TEXT_BASE)	\
+		"cmp.b $loadaddr " __stringify(CONFIG_TEXT_BASE)	\
 			" $filesize\0"	\
 	"consoledev=ttyS1\0"			\
 	"ramdiskaddr=2000000\0"			\
diff --git a/include/configs/P2041RDB.h b/include/configs/P2041RDB.h
index 925720d2340..0ac7f161bca 100644
--- a/include/configs/P2041RDB.h
+++ b/include/configs/P2041RDB.h
@@ -12,13 +12,13 @@
 #define __CONFIG_H
 
 #ifdef CONFIG_RAMBOOT_PBL
-#define CONFIG_RAMBOOT_TEXT_BASE	CONFIG_SYS_TEXT_BASE
+#define CONFIG_RAMBOOT_TEXT_BASE	CONFIG_TEXT_BASE
 #define CONFIG_RESET_VECTOR_ADDRESS	0xfffffffc
 #endif
 
 #ifdef CONFIG_SRIO_PCIE_BOOT_SLAVE
 /* Set 1M boot space */
-#define CONFIG_SYS_SRIO_PCIE_BOOT_SLAVE_ADDR (CONFIG_SYS_TEXT_BASE & 0xfff00000)
+#define CONFIG_SYS_SRIO_PCIE_BOOT_SLAVE_ADDR (CONFIG_TEXT_BASE & 0xfff00000)
 #define CONFIG_SYS_SRIO_PCIE_BOOT_SLAVE_ADDR_PHYS \
 		(0x300000000ull | CONFIG_SYS_SRIO_PCIE_BOOT_SLAVE_ADDR)
 #define CONFIG_RESET_VECTOR_ADDRESS 0xfffffffc
@@ -347,7 +347,7 @@
 	"bank_intlv=cs0_cs1\0"					\
 	"netdev=eth0\0"						\
 	"uboot=" __stringify(CONFIG_UBOOTPATH) "\0"			\
-	"ubootaddr=" __stringify(CONFIG_SYS_TEXT_BASE) "\0"		\
+	"ubootaddr=" __stringify(CONFIG_TEXT_BASE) "\0"		\
 	"tftpflash=tftpboot $loadaddr $uboot && "		\
 	"protect off $ubootaddr +$filesize && "			\
 	"erase $ubootaddr +$filesize && "			\
diff --git a/include/configs/T102xRDB.h b/include/configs/T102xRDB.h
index e0aa2b9598c..14f0ce60e29 100644
--- a/include/configs/T102xRDB.h
+++ b/include/configs/T102xRDB.h
@@ -86,7 +86,7 @@
 #define CONFIG_SYS_SRIO_PCIE_BOOT_UCODE_ENV_ADDR_PHYS \
 		(0x300000000ull | CONFIG_SYS_SRIO_PCIE_BOOT_UCODE_ENV_ADDR)
 /* Set 1M boot space for PCIe boot */
-#define CONFIG_SYS_SRIO_PCIE_BOOT_SLAVE_ADDR (CONFIG_SYS_TEXT_BASE & 0xfff00000)
+#define CONFIG_SYS_SRIO_PCIE_BOOT_SLAVE_ADDR (CONFIG_TEXT_BASE & 0xfff00000)
 #define CONFIG_SYS_SRIO_PCIE_BOOT_SLAVE_ADDR_PHYS	\
 		(0x300000000ull | CONFIG_SYS_SRIO_PCIE_BOOT_SLAVE_ADDR)
 #define CONFIG_RESET_VECTOR_ADDRESS 0xfffffffc
@@ -469,7 +469,7 @@
 	"hwconfig=fsl_ddr:ctlr_intlv=cacheline,"		\
 	"usb1:dr_mode=host,phy_type=" __stringify(__USB_PHY_TYPE) "\0"  \
 	"uboot=" __stringify(CONFIG_UBOOTPATH) "\0"		\
-	"ubootaddr=" __stringify(CONFIG_SYS_TEXT_BASE) "\0"	\
+	"ubootaddr=" __stringify(CONFIG_TEXT_BASE) "\0"	\
 	"bootargs=root=/dev/ram rw console=ttyS0,115200\0" \
 	"netdev=eth0\0"						\
 	"tftpflash=tftpboot $loadaddr $uboot && "		\
diff --git a/include/configs/T104xRDB.h b/include/configs/T104xRDB.h
index 918aabcbb5c..fad9594cb76 100644
--- a/include/configs/T104xRDB.h
+++ b/include/configs/T104xRDB.h
@@ -465,7 +465,7 @@
 	"usb2:dr_mode=host,phy_type=" __stringify(__USB_PHY_TYPE) "\0"\
 	"netdev=eth0\0"						\
 	"uboot=" __stringify(CONFIG_UBOOTPATH) "\0"		\
-	"ubootaddr=" __stringify(CONFIG_SYS_TEXT_BASE) "\0"	\
+	"ubootaddr=" __stringify(CONFIG_TEXT_BASE) "\0"	\
 	"tftpflash=tftpboot $loadaddr $uboot && "		\
 	"protect off $ubootaddr +$filesize && "			\
 	"erase $ubootaddr +$filesize && "			\
diff --git a/include/configs/T208xQDS.h b/include/configs/T208xQDS.h
index e852fc4cdc8..285e5fcd2dc 100644
--- a/include/configs/T208xQDS.h
+++ b/include/configs/T208xQDS.h
@@ -55,7 +55,7 @@
 #define CONFIG_SRIO_PCIE_BOOT_MASTER
 #ifdef CONFIG_SRIO_PCIE_BOOT_SLAVE
 /* Set 1M boot space */
-#define CONFIG_SYS_SRIO_PCIE_BOOT_SLAVE_ADDR (CONFIG_SYS_TEXT_BASE & 0xfff00000)
+#define CONFIG_SYS_SRIO_PCIE_BOOT_SLAVE_ADDR (CONFIG_TEXT_BASE & 0xfff00000)
 #define CONFIG_SYS_SRIO_PCIE_BOOT_SLAVE_ADDR_PHYS \
 		(0x300000000ull | CONFIG_SYS_SRIO_PCIE_BOOT_SLAVE_ADDR)
 #define CONFIG_RESET_VECTOR_ADDRESS 0xfffffffc
@@ -466,7 +466,7 @@
 	"usb1:dr_mode=host,phy_type=" __stringify(__USB_PHY_TYPE) "\0"\
 	"netdev=eth0\0"						\
 	"uboot=" __stringify(CONFIG_UBOOTPATH) "\0"		\
-	"ubootaddr=" __stringify(CONFIG_SYS_TEXT_BASE) "\0"	\
+	"ubootaddr=" __stringify(CONFIG_TEXT_BASE) "\0"	\
 	"tftpflash=tftpboot $loadaddr $uboot && "		\
 	"protect off $ubootaddr +$filesize && "			\
 	"erase $ubootaddr +$filesize && "			\
diff --git a/include/configs/T208xRDB.h b/include/configs/T208xRDB.h
index 68cf13581ad..7fe499bb80f 100644
--- a/include/configs/T208xRDB.h
+++ b/include/configs/T208xRDB.h
@@ -50,7 +50,7 @@
 #define CONFIG_SRIO_PCIE_BOOT_MASTER
 #ifdef CONFIG_SRIO_PCIE_BOOT_SLAVE
 /* Set 1M boot space */
-#define CONFIG_SYS_SRIO_PCIE_BOOT_SLAVE_ADDR (CONFIG_SYS_TEXT_BASE & 0xfff00000)
+#define CONFIG_SYS_SRIO_PCIE_BOOT_SLAVE_ADDR (CONFIG_TEXT_BASE & 0xfff00000)
 #define CONFIG_SYS_SRIO_PCIE_BOOT_SLAVE_ADDR_PHYS \
 		(0x300000000ull | CONFIG_SYS_SRIO_PCIE_BOOT_SLAVE_ADDR)
 #define CONFIG_RESET_VECTOR_ADDRESS 0xfffffffc
@@ -421,7 +421,7 @@
 	"usb1:dr_mode=host,phy_type=" __stringify(__USB_PHY_TYPE) "\0"\
 	"netdev=eth0\0"						\
 	"uboot=" __stringify(CONFIG_UBOOTPATH) "\0"		\
-	"ubootaddr=" __stringify(CONFIG_SYS_TEXT_BASE) "\0"	\
+	"ubootaddr=" __stringify(CONFIG_TEXT_BASE) "\0"	\
 	"tftpflash=tftpboot $loadaddr $uboot && "		\
 	"protect off $ubootaddr +$filesize && "			\
 	"erase $ubootaddr +$filesize && "			\
diff --git a/include/configs/T4240RDB.h b/include/configs/T4240RDB.h
index bba82f1e0cd..0dde24eff64 100644
--- a/include/configs/T4240RDB.h
+++ b/include/configs/T4240RDB.h
@@ -16,7 +16,7 @@
 
 #ifdef CONFIG_RAMBOOT_PBL
 #ifndef CONFIG_SDCARD
-#define CONFIG_RAMBOOT_TEXT_BASE        CONFIG_SYS_TEXT_BASE
+#define CONFIG_RAMBOOT_TEXT_BASE        CONFIG_TEXT_BASE
 #define CONFIG_RESET_VECTOR_ADDRESS     0xfffffffc
 #else
 #define RESET_VECTOR_OFFSET		0x27FFC
@@ -419,7 +419,7 @@
 	"usb1:dr_mode=host,phy_type=" __stringify(__USB_PHY_TYPE) "\0"\
 	"netdev=eth0\0"						\
 	"uboot=" __stringify(CONFIG_UBOOTPATH) "\0"		\
-	"ubootaddr=" __stringify(CONFIG_SYS_TEXT_BASE) "\0"	\
+	"ubootaddr=" __stringify(CONFIG_TEXT_BASE) "\0"	\
 	"tftpflash=tftpboot $loadaddr $uboot && "		\
 	"protect off $ubootaddr +$filesize && "			\
 	"erase $ubootaddr +$filesize && "			\
diff --git a/include/configs/am3517_evm.h b/include/configs/am3517_evm.h
index 2dc6bd2f2cd..9cfae04218a 100644
--- a/include/configs/am3517_evm.h
+++ b/include/configs/am3517_evm.h
@@ -27,7 +27,7 @@
 #define CONFIG_SYS_NAND_ECCBYTES	13
 #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_U_BOOT_START	CONFIG_TEXT_BASE
 /* 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/at91sam9260ek.h b/include/configs/at91sam9260ek.h
index ef9335c523f..ca5815fe36b 100644
--- a/include/configs/at91sam9260ek.h
+++ b/include/configs/at91sam9260ek.h
@@ -17,7 +17,7 @@
 #include <asm/hardware.h>
 
 /*
- * Warning: changing CONFIG_SYS_TEXT_BASE requires
+ * Warning: changing CONFIG_TEXT_BASE requires
  * adapting the initial boot program.
  * Since the linker has to swallow that define, we must use a pure
  * hex number here!
diff --git a/include/configs/baltos.h b/include/configs/baltos.h
index 266b2ae04b3..f4161d7a6de 100644
--- a/include/configs/baltos.h
+++ b/include/configs/baltos.h
@@ -205,7 +205,7 @@
 
 #define CONFIG_SYS_NAND_ECCSIZE		512
 #define CONFIG_SYS_NAND_ECCBYTES	14
-#define CONFIG_SYS_NAND_U_BOOT_START	CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_NAND_U_BOOT_START	CONFIG_TEXT_BASE
 #endif
 #endif
 
diff --git a/include/configs/bcmstb.h b/include/configs/bcmstb.h
index 134a3ec2892..5aa720da3d7 100644
--- a/include/configs/bcmstb.h
+++ b/include/configs/bcmstb.h
@@ -65,7 +65,7 @@ extern phys_addr_t prior_stage_fdt_address;
  *	       :	[~500 KiB in size, stripped]
  *	 0xc000 0000	Top of RAM
  *
- * Setting gd->relocaddr to CONFIG_SYS_TEXT_BASE in dram_init_banksize
+ * Setting gd->relocaddr to CONFIG_TEXT_BASE in dram_init_banksize
  * prevents U-Boot from relocating itself when it is run as an ELF
  * program by the prior stage bootloader.
  *
diff --git a/include/configs/brppt1.h b/include/configs/brppt1.h
index 6cb1a106002..5f8807152d3 100644
--- a/include/configs/brppt1.h
+++ b/include/configs/brppt1.h
@@ -33,7 +33,7 @@
 #endif /* CONFIG_SPL_OS_BOOT */
 
 #ifdef CONFIG_MTD_RAW_NAND
-#define CONFIG_SYS_NAND_U_BOOT_START	CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_NAND_U_BOOT_START	CONFIG_TEXT_BASE
 #endif /* CONFIG_MTD_RAW_NAND */
 
 #ifdef CONFIG_MTD_RAW_NAND
@@ -138,7 +138,7 @@ NANDTGTS \
 #define CONFIG_SYS_NAND_ECCSIZE		512
 #define CONFIG_SYS_NAND_ECCBYTES	14
 
-#define CONFIG_SYS_NAND_U_BOOT_START	CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_NAND_U_BOOT_START	CONFIG_TEXT_BASE
 
 #define CONFIG_NAND_OMAP_GPMC_WSCFG	1
 #endif /* CONFIG_MTD_RAW_NAND */
diff --git a/include/configs/cobra5272.h b/include/configs/cobra5272.h
index ba0662f1f40..898ca968c9d 100644
--- a/include/configs/cobra5272.h
+++ b/include/configs/cobra5272.h
@@ -65,7 +65,7 @@
  *
  * Setting #if 0: u-boot will start from flash and relocate itself to RAM
  *
- * Please do not forget to modify the setting of CONFIG_SYS_TEXT_BASE
+ * Please do not forget to modify the setting of CONFIG_TEXT_BASE
  * in board/cobra5272/config.mk accordingly (#if 0: 0xffe00000; #if 1: 0x20000)
  *
  * ---
diff --git a/include/configs/corenet_ds.h b/include/configs/corenet_ds.h
index 6ee5ec09629..434da314442 100644
--- a/include/configs/corenet_ds.h
+++ b/include/configs/corenet_ds.h
@@ -15,13 +15,13 @@
 #include "../board/freescale/common/ics307_clk.h"
 
 #ifdef CONFIG_RAMBOOT_PBL
-#define CONFIG_RAMBOOT_TEXT_BASE	CONFIG_SYS_TEXT_BASE
+#define CONFIG_RAMBOOT_TEXT_BASE	CONFIG_TEXT_BASE
 #define CONFIG_RESET_VECTOR_ADDRESS	0xfffffffc
 #endif
 
 #ifdef CONFIG_SRIO_PCIE_BOOT_SLAVE
 /* Set 1M boot space */
-#define CONFIG_SYS_SRIO_PCIE_BOOT_SLAVE_ADDR (CONFIG_SYS_TEXT_BASE & 0xfff00000)
+#define CONFIG_SYS_SRIO_PCIE_BOOT_SLAVE_ADDR (CONFIG_TEXT_BASE & 0xfff00000)
 #define CONFIG_SYS_SRIO_PCIE_BOOT_SLAVE_ADDR_PHYS \
 		(0x300000000ull | CONFIG_SYS_SRIO_PCIE_BOOT_SLAVE_ADDR)
 #define CONFIG_RESET_VECTOR_ADDRESS 0xfffffffc
@@ -346,7 +346,7 @@
 	"usb2:dr_mode=peripheral,phy_type=" __stringify(__USB_PHY_TYPE) "\0"\
 	"netdev=eth0\0"						\
 	"uboot=" __stringify(CONFIG_UBOOTPATH) "\0"		\
-	"ubootaddr=" __stringify(CONFIG_SYS_TEXT_BASE) "\0"	\
+	"ubootaddr=" __stringify(CONFIG_TEXT_BASE) "\0"	\
 	"tftpflash=tftpboot $loadaddr $uboot && "		\
 	"protect off $ubootaddr +$filesize && "			\
 	"erase $ubootaddr +$filesize && "			\
diff --git a/include/configs/corvus.h b/include/configs/corvus.h
index 698da6b6dac..5e43c217749 100644
--- a/include/configs/corvus.h
+++ b/include/configs/corvus.h
@@ -17,7 +17,7 @@
 #include <linux/sizes.h>
 
 /*
- * Warning: changing CONFIG_SYS_TEXT_BASE requires
+ * Warning: changing CONFIG_TEXT_BASE requires
  * adapting the initial boot program.
  * Since the linker has to swallow that define, we must use a pure
  * hex number here!
@@ -56,8 +56,8 @@
 /* Defines for SPL */
 
 #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
+#define	CONFIG_SYS_NAND_U_BOOT_START	CONFIG_TEXT_BASE
+#define CONFIG_SYS_NAND_U_BOOT_DST	CONFIG_TEXT_BASE
 
 #define CONFIG_SYS_NAND_ECCSIZE		256
 #define CONFIG_SYS_NAND_ECCBYTES	3
diff --git a/include/configs/devkit3250.h b/include/configs/devkit3250.h
index 7916ca8a6cd..66fb25bc029 100644
--- a/include/configs/devkit3250.h
+++ b/include/configs/devkit3250.h
@@ -79,11 +79,11 @@
  * U-Boot Commands
  */
 
-/* U-Boot will be 0x60000 bytes, loaded and run at CONFIG_SYS_TEXT_BASE */
+/* U-Boot will be 0x60000 bytes, loaded and run at CONFIG_TEXT_BASE */
 #define CONFIG_SYS_NAND_U_BOOT_SIZE	0x60000
 
-#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_NAND_U_BOOT_START	CONFIG_TEXT_BASE
+#define CONFIG_SYS_NAND_U_BOOT_DST	CONFIG_TEXT_BASE
 
 /* See common/spl/spl.c  spl_set_header_raw_uboot() */
 #define CONFIG_SYS_MONITOR_LEN		CONFIG_SYS_NAND_U_BOOT_SIZE
diff --git a/include/configs/evb_ast2500.h b/include/configs/evb_ast2500.h
index b109a151838..cd6cb062eca 100644
--- a/include/configs/evb_ast2500.h
+++ b/include/configs/evb_ast2500.h
@@ -11,7 +11,7 @@
 
 #include <configs/aspeed-common.h>
 
-#define CONFIG_SYS_UBOOT_BASE		CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_UBOOT_BASE		CONFIG_TEXT_BASE
 
 /* Misc */
 #define CONFIG_EXTRA_ENV_SETTINGS \
diff --git a/include/configs/evb_ast2600.h b/include/configs/evb_ast2600.h
index 3c2155da46d..ecd05fe15ce 100644
--- a/include/configs/evb_ast2600.h
+++ b/include/configs/evb_ast2600.h
@@ -8,7 +8,7 @@
 
 #include <configs/aspeed-common.h>
 
-#define CONFIG_SYS_UBOOT_BASE		CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_UBOOT_BASE		CONFIG_TEXT_BASE
 
 /* Misc */
 #define STR_HELPER(s)	#s
diff --git a/include/configs/gardena-smart-gateway-at91sam.h b/include/configs/gardena-smart-gateway-at91sam.h
index 331e9ca8ba1..635d0f01b23 100644
--- a/include/configs/gardena-smart-gateway-at91sam.h
+++ b/include/configs/gardena-smart-gateway-at91sam.h
@@ -42,7 +42,7 @@
 #define CONFIG_SYS_MCKR_CSS		0x1302
 
 #define CONFIG_SYS_NAND_U_BOOT_SIZE	0xa0000
-#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_NAND_U_BOOT_START	CONFIG_TEXT_BASE
+#define CONFIG_SYS_NAND_U_BOOT_DST	CONFIG_TEXT_BASE
 
 #endif
diff --git a/include/configs/gardena-smart-gateway-mt7688.h b/include/configs/gardena-smart-gateway-mt7688.h
index d21a9b9383a..5f33470dfc0 100644
--- a/include/configs/gardena-smart-gateway-mt7688.h
+++ b/include/configs/gardena-smart-gateway-mt7688.h
@@ -16,7 +16,7 @@
 
 /* SPL */
 
-#define CONFIG_SYS_UBOOT_START		CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_UBOOT_START		CONFIG_TEXT_BASE
 
 /* Dummy value */
 #define CONFIG_SYS_UBOOT_BASE		0
diff --git a/include/configs/hikey.h b/include/configs/hikey.h
index 5be6eb4e766..18c1e83aeb4 100644
--- a/include/configs/hikey.h
+++ b/include/configs/hikey.h
@@ -17,7 +17,7 @@
 
 /* Physical Memory Map */
 
-/* CONFIG_SYS_TEXT_BASE needs to align with where ATF loads bl33.bin */
+/* CONFIG_TEXT_BASE needs to align with where ATF loads bl33.bin */
 
 #define PHYS_SDRAM_1			0x00000000
 
diff --git a/include/configs/hikey960.h b/include/configs/hikey960.h
index ad070439d00..bdc9c479c22 100644
--- a/include/configs/hikey960.h
+++ b/include/configs/hikey960.h
@@ -11,7 +11,7 @@
 
 /* Physical Memory Map */
 
-/* CONFIG_SYS_TEXT_BASE needs to align with where ATF loads bl33.bin */
+/* CONFIG_TEXT_BASE needs to align with where ATF loads bl33.bin */
 
 #define PHYS_SDRAM_1			0x00000000
 #define PHYS_SDRAM_1_SIZE		0xC0000000
diff --git a/include/configs/imx6-engicam.h b/include/configs/imx6-engicam.h
index a2d5080a10e..fa73cabda36 100644
--- a/include/configs/imx6-engicam.h
+++ b/include/configs/imx6-engicam.h
@@ -128,7 +128,7 @@
 #ifdef CONFIG_NAND_MXS
 # 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_U_BOOT_START	CONFIG_TEXT_BASE
 
 /* MTD device */
 #endif
diff --git a/include/configs/imx6_logic.h b/include/configs/imx6_logic.h
index 2913549c883..9ab3f8abeff 100644
--- a/include/configs/imx6_logic.h
+++ b/include/configs/imx6_logic.h
@@ -118,7 +118,7 @@
 /* NAND stuff */
 #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_U_BOOT_START	CONFIG_TEXT_BASE
 
 /* USB Configs */
 #ifdef CONFIG_CMD_USB
diff --git a/include/configs/kontron-sl-mx6ul.h b/include/configs/kontron-sl-mx6ul.h
index 7aac5d3f5a1..bc5fde4b624 100644
--- a/include/configs/kontron-sl-mx6ul.h
+++ b/include/configs/kontron-sl-mx6ul.h
@@ -22,7 +22,7 @@
 #define CONFIG_SYS_INIT_RAM_ADDR	IRAM_BASE_ADDR
 #define CONFIG_SYS_INIT_RAM_SIZE	IRAM_SIZE
 
-#define CONFIG_SYS_UBOOT_BASE		CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_UBOOT_BASE		CONFIG_TEXT_BASE
 
 /* Board and environment settings */
 #define CONFIG_MXC_UART_BASE		UART4_BASE
diff --git a/include/configs/linkit-smart-7688.h b/include/configs/linkit-smart-7688.h
index 2e077dd5161..a65decd3fd3 100644
--- a/include/configs/linkit-smart-7688.h
+++ b/include/configs/linkit-smart-7688.h
@@ -16,7 +16,7 @@
 
 /* SPL */
 
-#define CONFIG_SYS_UBOOT_START		CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_UBOOT_START		CONFIG_TEXT_BASE
 
 /* Dummy value */
 #define CONFIG_SYS_UBOOT_BASE		0
diff --git a/include/configs/ls1021aqds.h b/include/configs/ls1021aqds.h
index d383b6c655b..37b8cd7e696 100644
--- a/include/configs/ls1021aqds.h
+++ b/include/configs/ls1021aqds.h
@@ -16,8 +16,8 @@
 
 #ifdef CONFIG_NAND_BOOT
 #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
+#define CONFIG_SYS_NAND_U_BOOT_DST	CONFIG_TEXT_BASE
+#define CONFIG_SYS_NAND_U_BOOT_START	CONFIG_TEXT_BASE
 
 #define CONFIG_SYS_MONITOR_LEN		0x80000
 #endif
diff --git a/include/configs/ls1043a_common.h b/include/configs/ls1043a_common.h
index 1fb1d05eba3..9f146c43055 100644
--- a/include/configs/ls1043a_common.h
+++ b/include/configs/ls1043a_common.h
@@ -62,8 +62,8 @@
 
 /* NAND SPL */
 #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_NAND_U_BOOT_DST	CONFIG_TEXT_BASE
+#define CONFIG_SYS_NAND_U_BOOT_START	CONFIG_TEXT_BASE
 
 #ifdef CONFIG_NXP_ESBC
 #define CONFIG_U_BOOT_HDR_SIZE				(16 << 10)
@@ -93,7 +93,7 @@
  * CONFIG_SYS_FLASH_BASE has the final address (core view)
  * CONFIG_SYS_FLASH_BASE_PHYS has the final address (IFC view)
  * CONFIG_SYS_FLASH_BASE_PHYS_EARLY has the temporary IFC address
- * CONFIG_SYS_TEXT_BASE is linked to 0x60000000 for booting
+ * CONFIG_TEXT_BASE is linked to 0x60000000 for booting
  */
 #define CONFIG_SYS_FLASH_BASE			0x60000000
 #define CONFIG_SYS_FLASH_BASE_PHYS		CONFIG_SYS_FLASH_BASE
diff --git a/include/configs/ls1046a_common.h b/include/configs/ls1046a_common.h
index e5fb111f1b8..26ce93a699d 100644
--- a/include/configs/ls1046a_common.h
+++ b/include/configs/ls1046a_common.h
@@ -66,8 +66,8 @@
 
 /* NAND SPL */
 #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_NAND_U_BOOT_DST	CONFIG_TEXT_BASE
+#define CONFIG_SYS_NAND_U_BOOT_START	CONFIG_TEXT_BASE
 
 #define CONFIG_SYS_MONITOR_LEN		0xa0000
 #endif
diff --git a/include/configs/ls1046aqds.h b/include/configs/ls1046aqds.h
index 1f54e516455..b411efd832d 100644
--- a/include/configs/ls1046aqds.h
+++ b/include/configs/ls1046aqds.h
@@ -36,7 +36,7 @@
  * CONFIG_SYS_FLASH_BASE has the final address (core view)
  * CONFIG_SYS_FLASH_BASE_PHYS has the final address (IFC view)
  * CONFIG_SYS_FLASH_BASE_PHYS_EARLY has the temporary IFC address
- * CONFIG_SYS_TEXT_BASE is linked to 0x60000000 for booting
+ * CONFIG_TEXT_BASE is linked to 0x60000000 for booting
  */
 #define CONFIG_SYS_FLASH_BASE			0x60000000
 #define CONFIG_SYS_FLASH_BASE_PHYS		CONFIG_SYS_FLASH_BASE
diff --git a/include/configs/ls1088a_common.h b/include/configs/ls1088a_common.h
index 21afe80e70d..7d76170bf76 100644
--- a/include/configs/ls1088a_common.h
+++ b/include/configs/ls1088a_common.h
@@ -69,7 +69,7 @@
  * CONFIG_SYS_FLASH_BASE has the final address (core view)
  * CONFIG_SYS_FLASH_BASE_PHYS has the final address (IFC view)
  * CONFIG_SYS_FLASH_BASE_PHYS_EARLY has the temporary IFC address
- * CONFIG_SYS_TEXT_BASE is linked to 0x30000000 for booting
+ * CONFIG_TEXT_BASE is linked to 0x30000000 for booting
  */
 
 #define CONFIG_SYS_FLASH_BASE			0x580000000ULL
diff --git a/include/configs/ls2080a_common.h b/include/configs/ls2080a_common.h
index e170b5aa2c7..dc43ecbd183 100644
--- a/include/configs/ls2080a_common.h
+++ b/include/configs/ls2080a_common.h
@@ -61,7 +61,7 @@
  * CONFIG_SYS_FLASH_BASE has the final address (core view)
  * CONFIG_SYS_FLASH_BASE_PHYS has the final address (IFC view)
  * CONFIG_SYS_FLASH_BASE_PHYS_EARLY has the temporary IFC address
- * CONFIG_SYS_TEXT_BASE is linked to 0x30000000 for booting
+ * CONFIG_TEXT_BASE is linked to 0x30000000 for booting
  */
 
 #define CONFIG_SYS_FLASH_BASE			0x580000000ULL
diff --git a/include/configs/meesc.h b/include/configs/meesc.h
index 6b2296788dc..cffcd9dd2f2 100644
--- a/include/configs/meesc.h
+++ b/include/configs/meesc.h
@@ -21,7 +21,7 @@
 #include <asm/hardware.h>
 
 /*
- * Warning: changing CONFIG_SYS_TEXT_BASE requires
+ * Warning: changing CONFIG_TEXT_BASE requires
  * adapting the initial boot program.
  * Since the linker has to swallow that define, we must use a pure
  * hex number here!
diff --git a/include/configs/microblaze-generic.h b/include/configs/microblaze-generic.h
index dfae8cea7b5..139b5bca108 100644
--- a/include/configs/microblaze-generic.h
+++ b/include/configs/microblaze-generic.h
@@ -95,6 +95,6 @@
 
 /* SPL part */
 
-#define CONFIG_SYS_UBOOT_BASE		CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_UBOOT_BASE		CONFIG_TEXT_BASE
 
 #endif	/* __CONFIG_H */
diff --git a/include/configs/mt7620.h b/include/configs/mt7620.h
index 049d9a1b55b..c6bee5f1403 100644
--- a/include/configs/mt7620.h
+++ b/include/configs/mt7620.h
@@ -16,7 +16,7 @@
 
 /* SPL */
 
-#define CONFIG_SYS_UBOOT_START		CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_UBOOT_START		CONFIG_TEXT_BASE
 
 /* Dummy value */
 #define CONFIG_SYS_UBOOT_BASE		0
diff --git a/include/configs/mt7622.h b/include/configs/mt7622.h
index 78d79b7780b..f9953993677 100644
--- a/include/configs/mt7622.h
+++ b/include/configs/mt7622.h
@@ -14,10 +14,10 @@
 #define CONFIG_SYS_NONCACHED_MEMORY	SZ_1M
 
 /* Uboot definition */
-#define CONFIG_SYS_UBOOT_BASE                   CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_UBOOT_BASE                   CONFIG_TEXT_BASE
 
 /* SPL -> Uboot */
-#define CONFIG_SYS_UBOOT_START		CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_UBOOT_START		CONFIG_TEXT_BASE
 /* DRAM */
 #define CONFIG_SYS_SDRAM_BASE		0x40000000
 
diff --git a/include/configs/mt7628.h b/include/configs/mt7628.h
index 3680c0fe442..317d1d2b0f0 100644
--- a/include/configs/mt7628.h
+++ b/include/configs/mt7628.h
@@ -28,7 +28,7 @@
 
 /* SPL */
 
-#define CONFIG_SYS_UBOOT_START		CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_UBOOT_START		CONFIG_TEXT_BASE
 
 /* Dummy value */
 #define CONFIG_SYS_UBOOT_BASE		0
diff --git a/include/configs/mt8512.h b/include/configs/mt8512.h
index 964c9578133..5ff5541c509 100644
--- a/include/configs/mt8512.h
+++ b/include/configs/mt8512.h
@@ -14,7 +14,7 @@
 #define CONFIG_SYS_NONCACHED_MEMORY		SZ_1M
 
 /* Uboot definition */
-#define CONFIG_SYS_UBOOT_START			CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_UBOOT_START			CONFIG_TEXT_BASE
 
 #define ENV_BOOT_READ_IMAGE \
 	"boot_rd_img=mmc dev 0" \
diff --git a/include/configs/mv-common.h b/include/configs/mv-common.h
index 384a8f7d1dd..20e00ec7222 100644
--- a/include/configs/mv-common.h
+++ b/include/configs/mv-common.h
@@ -23,7 +23,7 @@
  */
 
 /*
- * Custom CONFIG_SYS_TEXT_BASE can be done in <board>.h
+ * Custom CONFIG_TEXT_BASE can be done in <board>.h
  */
 
 /* additions for new ARM relocation support */
diff --git a/include/configs/octeontx2_common.h b/include/configs/octeontx2_common.h
index 2c430e8d376..25116c5ed23 100644
--- a/include/configs/octeontx2_common.h
+++ b/include/configs/octeontx2_common.h
@@ -10,7 +10,7 @@
 /** Maximum size of image supported for bootm (and bootable FIT images) */
 
 /** Memory base address */
-#define CONFIG_SYS_SDRAM_BASE		CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_SDRAM_BASE		CONFIG_TEXT_BASE
 
 /** Stack starting address */
 
diff --git a/include/configs/octeontx_common.h b/include/configs/octeontx_common.h
index e7a6bd41db0..373eb9119cd 100644
--- a/include/configs/octeontx_common.h
+++ b/include/configs/octeontx_common.h
@@ -36,7 +36,7 @@
 /** Maximum size of image supported for bootm (and bootable FIT images) */
 
 /** Memory base address */
-#define CONFIG_SYS_SDRAM_BASE		CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_SDRAM_BASE		CONFIG_TEXT_BASE
 
 /** Stack starting address */
 
diff --git a/include/configs/p1_p2_rdb_pc.h b/include/configs/p1_p2_rdb_pc.h
index f7d8723b03d..ac4a698a973 100644
--- a/include/configs/p1_p2_rdb_pc.h
+++ b/include/configs/p1_p2_rdb_pc.h
@@ -78,13 +78,13 @@
 
 #ifdef CONFIG_SDCARD
 #define CONFIG_SYS_MMC_U_BOOT_SIZE	(768 << 10)
-#define CONFIG_SYS_MMC_U_BOOT_DST	CONFIG_SYS_TEXT_BASE
-#define CONFIG_SYS_MMC_U_BOOT_START	CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_MMC_U_BOOT_DST	CONFIG_TEXT_BASE
+#define CONFIG_SYS_MMC_U_BOOT_START	CONFIG_TEXT_BASE
 #define CONFIG_SYS_MMC_U_BOOT_OFFS	CONFIG_SPL_PAD_TO
 #elif defined(CONFIG_SPIFLASH)
 #define CONFIG_SYS_SPI_FLASH_U_BOOT_SIZE	(768 << 10)
-#define CONFIG_SYS_SPI_FLASH_U_BOOT_DST		CONFIG_SYS_TEXT_BASE
-#define CONFIG_SYS_SPI_FLASH_U_BOOT_START	CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_SPI_FLASH_U_BOOT_DST		CONFIG_TEXT_BASE
+#define CONFIG_SYS_SPI_FLASH_U_BOOT_START	CONFIG_TEXT_BASE
 #define CONFIG_SYS_SPI_FLASH_U_BOOT_OFFS	CONFIG_SPL_PAD_TO
 #elif defined(CONFIG_MTD_RAW_NAND)
 #ifdef CONFIG_TPL_BUILD
@@ -443,11 +443,11 @@
 "loadaddr=1000000\0"	\
 "bootfile=uImage\0"	\
 "tftpflash=tftpboot $loadaddr $uboot; "	\
-	"protect off " __stringify(CONFIG_SYS_TEXT_BASE) " +$filesize; " \
-	"erase " __stringify(CONFIG_SYS_TEXT_BASE) " +$filesize; "	\
-	"cp.b $loadaddr " __stringify(CONFIG_SYS_TEXT_BASE) " $filesize; " \
-	"protect on " __stringify(CONFIG_SYS_TEXT_BASE) " +$filesize; "	\
-	"cmp.b $loadaddr " __stringify(CONFIG_SYS_TEXT_BASE) " $filesize\0" \
+	"protect off " __stringify(CONFIG_TEXT_BASE) " +$filesize; " \
+	"erase " __stringify(CONFIG_TEXT_BASE) " +$filesize; "	\
+	"cp.b $loadaddr " __stringify(CONFIG_TEXT_BASE) " $filesize; " \
+	"protect on " __stringify(CONFIG_TEXT_BASE) " +$filesize; "	\
+	"cmp.b $loadaddr " __stringify(CONFIG_TEXT_BASE) " $filesize\0" \
 "hwconfig=usb1:dr_mode=host,phy_type=ulpi\0"    \
 "consoledev=ttyS0\0"	\
 "ramdiskaddr=2000000\0"	\
diff --git a/include/configs/rpi.h b/include/configs/rpi.h
index 4f5025d0da5..cd8fe8b518b 100644
--- a/include/configs/rpi.h
+++ b/include/configs/rpi.h
@@ -24,7 +24,7 @@
 
 /* Memory layout */
 #define CONFIG_SYS_SDRAM_BASE		0x00000000
-#define CONFIG_SYS_UBOOT_BASE		CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_UBOOT_BASE		CONFIG_TEXT_BASE
 /*
  * The board really has 256M. However, the VC (VideoCore co-processor) shares
  * the RAM, and uses a configurable portion at the top. We tell U-Boot that a
diff --git a/include/configs/siemens-am33x-common.h b/include/configs/siemens-am33x-common.h
index fcb0fd5cec3..5759794b145 100644
--- a/include/configs/siemens-am33x-common.h
+++ b/include/configs/siemens-am33x-common.h
@@ -63,7 +63,7 @@
 #define	CONFIG_SYS_NAND_ECCTOTAL	(CONFIG_SYS_NAND_ECCBYTES * \
 						CONFIG_SYS_NAND_ECCSTEPS)
 
-#define	CONFIG_SYS_NAND_U_BOOT_START	CONFIG_SYS_TEXT_BASE
+#define	CONFIG_SYS_NAND_U_BOOT_START	CONFIG_TEXT_BASE
 
 /*
  * 1MB into the SDRAM to allow for SPL's bss at the beginning of SDRAM
diff --git a/include/configs/smartweb.h b/include/configs/smartweb.h
index 1a3ac817fbf..802ed07b9ea 100644
--- a/include/configs/smartweb.h
+++ b/include/configs/smartweb.h
@@ -30,7 +30,7 @@
 #include <linux/sizes.h>
 
 /*
- * Warning: changing CONFIG_SYS_TEXT_BASE requires adapting the initial boot
+ * Warning: changing CONFIG_TEXT_BASE requires adapting the initial boot
  * program. Since the linker has to swallow that define, we must use a pure
  * hex number here!
  */
@@ -96,8 +96,8 @@
 
 #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
-#define CONFIG_SYS_NAND_U_BOOT_DST	CONFIG_SYS_TEXT_BASE
+#define	CONFIG_SYS_NAND_U_BOOT_START	CONFIG_TEXT_BASE
+#define CONFIG_SYS_NAND_U_BOOT_DST	CONFIG_TEXT_BASE
 
 #define CONFIG_SYS_NAND_SIZE		(SZ_256M)
 #define CONFIG_SYS_NAND_ECCSIZE		256
diff --git a/include/configs/taurus.h b/include/configs/taurus.h
index 4758e23f557..a29652dd56e 100644
--- a/include/configs/taurus.h
+++ b/include/configs/taurus.h
@@ -22,7 +22,7 @@
 #include <linux/sizes.h>
 
 /*
- * Warning: changing CONFIG_SYS_TEXT_BASE requires
+ * Warning: changing CONFIG_TEXT_BASE requires
  * adapting the initial boot program.
  * Since the linker has to swallow that define, we must use a pure
  * hex number here!
@@ -130,8 +130,8 @@
 
 #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
-#define CONFIG_SYS_NAND_U_BOOT_DST	CONFIG_SYS_TEXT_BASE
+#define	CONFIG_SYS_NAND_U_BOOT_START	CONFIG_TEXT_BASE
+#define CONFIG_SYS_NAND_U_BOOT_DST	CONFIG_TEXT_BASE
 
 #define CONFIG_SYS_NAND_SIZE		(256 * SZ_1M)
 #define CONFIG_SYS_NAND_ECCSIZE		256
diff --git a/include/configs/ti_armv7_common.h b/include/configs/ti_armv7_common.h
index 2d1f0372ae3..05536c3eedc 100644
--- a/include/configs/ti_armv7_common.h
+++ b/include/configs/ti_armv7_common.h
@@ -123,7 +123,7 @@
 /* General parts of the framework, required. */
 
 #ifdef CONFIG_MTD_RAW_NAND
-#define CONFIG_SYS_NAND_U_BOOT_START	CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_NAND_U_BOOT_START	CONFIG_TEXT_BASE
 #endif
 #endif /* !CONFIG_NOR_BOOT */
 
diff --git a/include/configs/vocore2.h b/include/configs/vocore2.h
index 6a7a0832c95..b2572caaf27 100644
--- a/include/configs/vocore2.h
+++ b/include/configs/vocore2.h
@@ -16,7 +16,7 @@
 
 /* SPL */
 
-#define CONFIG_SYS_UBOOT_START		CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_UBOOT_START		CONFIG_TEXT_BASE
 
 /* Dummy value */
 #define CONFIG_SYS_UBOOT_BASE		0
diff --git a/include/configs/work_92105.h b/include/configs/work_92105.h
index 8d1eee2fcac..f53ea3ccd21 100644
--- a/include/configs/work_92105.h
+++ b/include/configs/work_92105.h
@@ -63,10 +63,10 @@
 /* Use the framework and generic lib */
 /* SPL will use serial */
 /* SPL will load U-Boot from NAND offset 0x40000 */
-/* U-Boot will be 0x40000 bytes, loaded and run at CONFIG_SYS_TEXT_BASE */
+/* U-Boot will be 0x40000 bytes, loaded and run at CONFIG_TEXT_BASE */
 #define CONFIG_SYS_MONITOR_LEN 0x40000 /* actually, MAX size */
-#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_NAND_U_BOOT_START CONFIG_TEXT_BASE
+#define CONFIG_SYS_NAND_U_BOOT_DST   CONFIG_TEXT_BASE
 
 /*
  * Include SoC specific configuration
diff --git a/include/spl.h b/include/spl.h
index 0fc3686bbca..bac5ea29b7d 100644
--- a/include/spl.h
+++ b/include/spl.h
@@ -309,7 +309,7 @@ ulong spl_get_image_size(void);
  * spl_get_image_text_base() - get the text base of the next phase
  *
  * This returns the address that the next stage is linked to run at, i.e.
- * CONFIG_SPL_TEXT_BASE or CONFIG_SYS_TEXT_BASE
+ * CONFIG_SPL_TEXT_BASE or CONFIG_TEXT_BASE
  *
  * Return: text-base address
  */
@@ -454,7 +454,7 @@ void spl_set_bd(void);
  *
  * This sets up the given spl_image which the standard values obtained from
  * config options: CONFIG_SYS_MONITOR_LEN, CONFIG_SYS_UBOOT_START,
- * CONFIG_SYS_TEXT_BASE.
+ * CONFIG_TEXT_BASE.
  *
  * @spl_image: Image description to set up
  */
diff --git a/lib/efi/efi_stub.c b/lib/efi/efi_stub.c
index a35fce13855..c9eb32ec104 100644
--- a/lib/efi/efi_stub.c
+++ b/lib/efi/efi_stub.c
@@ -126,7 +126,7 @@ static void jump_to_uboot(ulong cs32, ulong addr, ulong info)
 
 	((func_t)addr)(0, 0, info);
 #else
-	cpu_call32(cs32, CONFIG_SYS_TEXT_BASE, info);
+	cpu_call32(cs32, CONFIG_TEXT_BASE, info);
 #endif
 }
 
@@ -184,8 +184,8 @@ static int get_codeseg32(void)
 		if ((desc & GDT_PRESENT) && (desc & GDT_NOTSYS) &&
 		    !(desc & GDT_LONG) && (desc & GDT_4KB) &&
 		    (desc & GDT_32BIT) && (desc & GDT_CODE) &&
-		    CONFIG_SYS_TEXT_BASE > base &&
-		    CONFIG_SYS_TEXT_BASE + CONFIG_SYS_MONITOR_LEN < limit
+		    CONFIG_TEXT_BASE > base &&
+		    CONFIG_TEXT_BASE + CONFIG_SYS_MONITOR_LEN < limit
 		) {
 			cs32 = i;
 			break;
@@ -360,7 +360,7 @@ efi_status_t EFIAPI efi_main(efi_handle_t image,
 		       priv->memmap_desc, priv->memmap_size);
 	add_entry_addr(priv, EFIET_END, NULL, 0, 0, 0);
 
-	memcpy((void *)CONFIG_SYS_TEXT_BASE, _binary_u_boot_bin_start,
+	memcpy((void *)CONFIG_TEXT_BASE, _binary_u_boot_bin_start,
 	       (ulong)_binary_u_boot_bin_end -
 	       (ulong)_binary_u_boot_bin_start);
 
@@ -371,7 +371,7 @@ efi_status_t EFIAPI efi_main(efi_handle_t image,
 	printhex8(priv->info->total_size);
 #endif
 	putc('\n');
-	jump_to_uboot(cs32, CONFIG_SYS_TEXT_BASE, (ulong)priv->info);
+	jump_to_uboot(cs32, CONFIG_TEXT_BASE, (ulong)priv->info);
 
 	return EFI_LOAD_ERROR;
 }
diff --git a/lib/efi_loader/efi_runtime.c b/lib/efi_loader/efi_runtime.c
index 93a695fc27e..ad2ab825d19 100644
--- a/lib/efi_loader/efi_runtime.c
+++ b/lib/efi_loader/efi_runtime.c
@@ -672,12 +672,12 @@ void efi_runtime_relocate(ulong offset, struct efi_mem_desc *map)
 	struct elf_rela *rel = (void*)&__efi_runtime_rel_start;
 #else
 	struct elf_rel *rel = (void*)&__efi_runtime_rel_start;
-	static ulong lastoff = CONFIG_SYS_TEXT_BASE;
+	static ulong lastoff = CONFIG_TEXT_BASE;
 #endif
 
 	debug("%s: Relocating to offset=%lx\n", __func__, offset);
 	for (; (ulong)rel < (ulong)&__efi_runtime_rel_stop; rel++) {
-		ulong base = CONFIG_SYS_TEXT_BASE;
+		ulong base = CONFIG_TEXT_BASE;
 		ulong *p;
 		ulong newaddr;
 
@@ -696,7 +696,7 @@ void efi_runtime_relocate(ulong offset, struct efi_mem_desc *map)
 		switch (rel->info & R_MASK) {
 		case R_RELATIVE:
 #ifdef IS_RELA
-		newaddr = rel->addend + offset - CONFIG_SYS_TEXT_BASE;
+		newaddr = rel->addend + offset - CONFIG_TEXT_BASE;
 #else
 		newaddr = *p - lastoff + offset;
 #endif
@@ -707,7 +707,7 @@ void efi_runtime_relocate(ulong offset, struct efi_mem_desc *map)
 			extern struct dyn_sym __dyn_sym_start[];
 			newaddr = __dyn_sym_start[symidx].addr + offset;
 #ifdef IS_RELA
-			newaddr -= CONFIG_SYS_TEXT_BASE;
+			newaddr -= CONFIG_TEXT_BASE;
 #endif
 			break;
 		}
diff --git a/lib/trace.c b/lib/trace.c
index 505a31806ce..54f0bf2f578 100644
--- a/lib/trace.c
+++ b/lib/trace.c
@@ -53,7 +53,7 @@ static inline uintptr_t __attribute__((no_instrument_function))
 	if (gd->flags & GD_FLG_RELOC)
 		offset -= gd->relocaddr;
 	else
-		offset -= CONFIG_SYS_TEXT_BASE;
+		offset -= CONFIG_TEXT_BASE;
 #endif
 	return offset / FUNC_SITE_SIZE;
 }
@@ -123,7 +123,7 @@ static void __attribute__((no_instrument_function)) add_textbase(void)
 	if (hdr->ftrace_count < hdr->ftrace_size) {
 		struct trace_call *rec = &hdr->ftrace[hdr->ftrace_count];
 
-		rec->func = CONFIG_SYS_TEXT_BASE;
+		rec->func = CONFIG_TEXT_BASE;
 		rec->caller = 0;
 		rec->flags = FUNCF_TEXTBASE;
 	}
diff --git a/tools/binman/binman.rst b/tools/binman/binman.rst
index 4ee6f41f35e..dd4f0ff149d 100644
--- a/tools/binman/binman.rst
+++ b/tools/binman/binman.rst
@@ -766,11 +766,11 @@ end-at-4gb:
 skip-at-start:
     This property specifies the entry offset of the first entry.
 
-    For PowerPC mpc85xx based CPU, CONFIG_SYS_TEXT_BASE is the entry
+    For PowerPC mpc85xx based CPU, CONFIG_TEXT_BASE is the entry
     offset of the first entry. It can be 0xeff40000 or 0xfff40000 for
     nor flash boot, 0x201000 for sd boot etc.
 
-    'end-at-4gb' property is not applicable where CONFIG_SYS_TEXT_BASE +
+    'end-at-4gb' property is not applicable where CONFIG_TEXT_BASE +
     Image size != 4gb.
 
 align-default:
diff --git a/tools/binman/entries.rst b/tools/binman/entries.rst
index b3613d7cbd0..106805b5114 100644
--- a/tools/binman/entries.rst
+++ b/tools/binman/entries.rst
@@ -735,7 +735,7 @@ Here is an example showing ATF, TEE and a device tree all combined::
                 os = "U-Boot";
                 arch = "arm64";
                 compression = "none";
-                load = <CONFIG_SYS_TEXT_BASE>;
+                load = <CONFIG_TEXT_BASE>;
                 u-boot-nodtb {
                 };
             };
diff --git a/tools/binman/etype/fit.py b/tools/binman/etype/fit.py
index ad43fce18ec..7860e2aeea3 100644
--- a/tools/binman/etype/fit.py
+++ b/tools/binman/etype/fit.py
@@ -201,7 +201,7 @@ class Entry_fit(Entry_section):
                     os = "U-Boot";
                     arch = "arm64";
                     compression = "none";
-                    load = <CONFIG_SYS_TEXT_BASE>;
+                    load = <CONFIG_TEXT_BASE>;
                     u-boot-nodtb {
                     };
                 };
diff --git a/tools/binman/etype/u_boot_with_ucode_ptr.py b/tools/binman/etype/u_boot_with_ucode_ptr.py
index a5fd2d1ca5e..e275698cebe 100644
--- a/tools/binman/etype/u_boot_with_ucode_ptr.py
+++ b/tools/binman/etype/u_boot_with_ucode_ptr.py
@@ -62,7 +62,7 @@ class Entry_u_boot_with_ucode_ptr(Entry_blob):
         #
         # The section must be set up so that U-Boot is placed at the
         # flash address to which it is linked. For example, if
-        # CONFIG_SYS_TEXT_BASE is 0xfff00000, and the ROM is 8MB, then
+        # CONFIG_TEXT_BASE is 0xfff00000, and the ROM is 8MB, then
         # the U-Boot region must start at offset 7MB in the section. In this
         # case the ROM starts at 0xff800000, so the offset of the first
         # entry in the section corresponds to that.
-- 
2.37.3.998.g577e59143f-goog


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

* [PATCH 02/45] disk: Drop debug messages in part_efi
  2022-09-25 15:02 [PATCH 00/45] vbe: Implement the full firmware flow Simon Glass
  2022-09-25 15:02 ` [PATCH 01/45] Rename CONFIG_SYS_TEXT_BASE to CONFIG_TEXT_BASE Simon Glass
@ 2022-09-25 15:02 ` Simon Glass
  2022-09-26  6:11   ` Heinrich Schuchardt
  2022-09-25 15:02 ` [PATCH 03/45] bloblist: Drop debugging Simon Glass
                   ` (42 subsequent siblings)
  44 siblings, 1 reply; 72+ messages in thread
From: Simon Glass @ 2022-09-25 15:02 UTC (permalink / raw)
  To: U-Boot Mailing List
  Cc: Tom Rini, Simon Glass, Heinrich Schuchardt, Philippe Reynes

This is monstrously verbose when something goes wrong. It should work by
recording the problem and reporting it (once) at the command level. At
present it sometimes outputs hundreds of lines of CRC mismatches.

For now, just silence it all.

  GUID Partition Table Entry Array CRC is wrong: 0xaebfebf2 != 0xc916f712
  find_valid_gpt: *** ERROR: Invalid GPT ***
  find_valid_gpt: ***        Using Backup GPT ***
  GUID Partition Table Entry Array CRC is wrong: 0xaebfebf2 != 0xc916f712
  find_valid_gpt: *** ERROR: Invalid GPT ***
  find_valid_gpt: ***        Using Backup GPT ***
  ...

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 disk/part_efi.c | 148 +++++++++++++++++++++++-------------------------
 1 file changed, 71 insertions(+), 77 deletions(-)

diff --git a/disk/part_efi.c b/disk/part_efi.c
index 26738a57d5d..1a359066ae9 100644
--- a/disk/part_efi.c
+++ b/disk/part_efi.c
@@ -94,10 +94,10 @@ static int validate_gpt_header(gpt_header *gpt_h, lbaint_t lba,
 
 	/* Check the GPT header signature */
 	if (le64_to_cpu(gpt_h->signature) != GPT_HEADER_SIGNATURE_UBOOT) {
-		printf("%s signature is wrong: 0x%llX != 0x%llX\n",
-		       "GUID Partition Table Header",
-		       le64_to_cpu(gpt_h->signature),
-		       GPT_HEADER_SIGNATURE_UBOOT);
+		log_debug("%s signature is wrong: %#llX != %#llX\n",
+			  "GUID Partition Table Header",
+			  le64_to_cpu(gpt_h->signature),
+			  GPT_HEADER_SIGNATURE_UBOOT);
 		return -1;
 	}
 
@@ -111,9 +111,9 @@ static int validate_gpt_header(gpt_header *gpt_h, lbaint_t lba,
 	memcpy(&gpt_h->header_crc32, &crc32_backup, sizeof(crc32_backup));
 
 	if (calc_crc32 != le32_to_cpu(crc32_backup)) {
-		printf("%s CRC is wrong: 0x%x != 0x%x\n",
-		       "GUID Partition Table Header",
-		       le32_to_cpu(crc32_backup), calc_crc32);
+		log_debug("%s: CRC is wrong: %#x != %#x\n",
+			  "GUID Partition Table Header",
+			  le32_to_cpu(crc32_backup), calc_crc32);
 		return -1;
 	}
 
@@ -121,9 +121,8 @@ static int validate_gpt_header(gpt_header *gpt_h, lbaint_t lba,
 	 * Check that the my_lba entry points to the LBA that contains the GPT
 	 */
 	if (le64_to_cpu(gpt_h->my_lba) != lba) {
-		printf("GPT: my_lba incorrect: %llX != " LBAF "\n",
-		       le64_to_cpu(gpt_h->my_lba),
-		       lba);
+		log_debug("GPT: my_lba incorrect: %llX != " LBAF "\n",
+			  le64_to_cpu(gpt_h->my_lba), lba);
 		return -1;
 	}
 
@@ -132,13 +131,13 @@ static int validate_gpt_header(gpt_header *gpt_h, lbaint_t lba,
 	 * within the disk.
 	 */
 	if (le64_to_cpu(gpt_h->first_usable_lba) > lastlba) {
-		printf("GPT: first_usable_lba incorrect: %llX > " LBAF "\n",
-		       le64_to_cpu(gpt_h->first_usable_lba), lastlba);
+		log_debug("GPT: first_usable_lba incorrect: %llX > " LBAF "\n",
+			  le64_to_cpu(gpt_h->first_usable_lba), lastlba);
 		return -1;
 	}
 	if (le64_to_cpu(gpt_h->last_usable_lba) > lastlba) {
-		printf("GPT: last_usable_lba incorrect: %llX > " LBAF "\n",
-		       le64_to_cpu(gpt_h->last_usable_lba), lastlba);
+		log_debug("GPT: last_usable_lba incorrect: %llX > " LBAF "\n",
+			  le64_to_cpu(gpt_h->last_usable_lba), lastlba);
 		return -1;
 	}
 
@@ -159,10 +158,10 @@ static int validate_gpt_entries(gpt_header *gpt_h, gpt_entry *gpt_e)
 		le32_to_cpu(gpt_h->sizeof_partition_entry));
 
 	if (calc_crc32 != le32_to_cpu(gpt_h->partition_entry_array_crc32)) {
-		printf("%s: 0x%x != 0x%x\n",
-		       "GUID Partition Table Entry Array CRC is wrong",
-		       le32_to_cpu(gpt_h->partition_entry_array_crc32),
-		       calc_crc32);
+		log_debug("%s: %#x != %#x\n",
+			  "GUID Partition Table Entry Array CRC is wrong",
+			  le32_to_cpu(gpt_h->partition_entry_array_crc32),
+			  calc_crc32);
 		return -1;
 	}
 
@@ -330,14 +329,15 @@ static int set_protective_mbr(struct blk_desc *dev_desc)
 	/* Setup the Protective MBR */
 	ALLOC_CACHE_ALIGN_BUFFER_PAD(legacy_mbr, p_mbr, 1, dev_desc->blksz);
 	if (p_mbr == NULL) {
-		printf("%s: calloc failed!\n", __func__);
-		return -1;
+		log_debug("calloc failed!\n");
+		return -ENOMEM;
 	}
 
 	/* Read MBR to backup boot code if it exists */
 	if (blk_dread(dev_desc, 0, 1, p_mbr) != 1) {
-		pr_err("** Can't read from device %d **\n", dev_desc->devnum);
-		return -1;
+		log_debug("** Can't read from device %d **\n",
+			  dev_desc->devnum);
+		return -EIO;
 	}
 
 	/* Clear all data in MBR except of backed up boot code */
@@ -352,9 +352,8 @@ static int set_protective_mbr(struct blk_desc *dev_desc)
 
 	/* Write MBR sector to the MMC device */
 	if (blk_dwrite(dev_desc, 0, 1, p_mbr) != 1) {
-		printf("** Can't write to device %d **\n",
-			dev_desc->devnum);
-		return -1;
+		log_debug("** Can't write to device %d **\n", dev_desc->devnum);
+		return -EIO;
 	}
 
 	return 0;
@@ -404,8 +403,8 @@ int write_gpt_table(struct blk_desc *dev_desc,
 	return 0;
 
  err:
-	printf("** Can't write to device %d **\n", dev_desc->devnum);
-	return -1;
+	log_debug("** Can't write to device %d **\n", dev_desc->devnum);
+	return -EIO;
 }
 
 int gpt_fill_pte(struct blk_desc *dev_desc,
@@ -451,15 +450,15 @@ int gpt_fill_pte(struct blk_desc *dev_desc,
 		 */
 		if (((start < hdr_end && hdr_start < (start + size)) ||
 		     (start < pte_end && pte_start < (start + size)))) {
-			printf("Partition overlap\n");
-			return -1;
+			log_debug("Partition overlap\n");
+			return -ENOSPC;
 		}
 
 		gpt_e[i].starting_lba = cpu_to_le64(start);
 
 		if (offset > (last_usable_lba + 1)) {
-			printf("Partitions layout exceds disk size\n");
-			return -1;
+			log_debug("Partitions layout exceeds disk size\n");
+			return -E2BIG;
 		}
 		/* partition ending lba */
 		if ((i == parts - 1) && (size == 0))
@@ -474,9 +473,9 @@ int gpt_fill_pte(struct blk_desc *dev_desc,
 		if (strlen(str_type_guid)) {
 			if (uuid_str_to_bin(str_type_guid, bin_type_guid,
 					    UUID_STR_FORMAT_GUID)) {
-				printf("Partition no. %d: invalid type guid: %s\n",
-				       i, str_type_guid);
-				return -1;
+				log_debug("Partition no. %d: invalid type guid: %s\n",
+					  i, str_type_guid);
+				return -EINVAL;
 			}
 		} else {
 			/* default partition type GUID */
@@ -494,9 +493,9 @@ int gpt_fill_pte(struct blk_desc *dev_desc,
 		bin_uuid = gpt_e[i].unique_partition_guid.b;
 
 		if (uuid_str_to_bin(str_uuid, bin_uuid, UUID_STR_FORMAT_GUID)) {
-			printf("Partition no. %d: invalid guid: %s\n",
-				i, str_uuid);
-			return -1;
+			log_debug("Partition no. %d: invalid guid: %s\n",
+				  i, str_uuid);
+			return -EINVAL;
 		}
 #endif
 
@@ -608,8 +607,8 @@ int gpt_restore(struct blk_desc *dev_desc, char *str_disk_guid,
 	size = PAD_TO_BLOCKSIZE(sizeof(gpt_header), dev_desc);
 	gpt_h = malloc_cache_aligned(size);
 	if (gpt_h == NULL) {
-		printf("%s: calloc failed!\n", __func__);
-		return -1;
+		log_debug("calloc failed!\n");
+		return -ENOMEM;
 	}
 	memset(gpt_h, 0, size);
 
@@ -617,9 +616,9 @@ int gpt_restore(struct blk_desc *dev_desc, char *str_disk_guid,
 				dev_desc);
 	gpt_e = malloc_cache_aligned(size);
 	if (gpt_e == NULL) {
-		printf("%s: calloc failed!\n", __func__);
+		log_debug("calloc failed!\n");
 		free(gpt_h);
-		return -1;
+		return -ENOMEM;
 	}
 	memset(gpt_e, 0, size);
 
@@ -675,8 +674,7 @@ int gpt_verify_headers(struct blk_desc *dev_desc, gpt_header *gpt_head,
 	if (is_gpt_valid(dev_desc,
 			 GPT_PRIMARY_PARTITION_TABLE_LBA,
 			 gpt_head, gpt_pte) != 1) {
-		printf("%s: *** ERROR: Invalid GPT ***\n",
-		       __func__);
+		log_debug("*** ERROR: Invalid GPT ***\n");
 		return -1;
 	}
 
@@ -687,15 +685,13 @@ int gpt_verify_headers(struct blk_desc *dev_desc, gpt_header *gpt_head,
 	 * Check that the alternate_lba entry points to the last LBA
 	 */
 	if (le64_to_cpu(gpt_head->alternate_lba) != (dev_desc->lba - 1)) {
-		printf("%s: *** ERROR: Misplaced Backup GPT ***\n",
-		       __func__);
+		log_debug("*** ERROR: Misplaced Backup GPT ***\n");
 		return -1;
 	}
 
 	if (is_gpt_valid(dev_desc, (dev_desc->lba - 1),
 			 gpt_head, gpt_pte) != 1) {
-		printf("%s: *** ERROR: Invalid Backup GPT ***\n",
-		       __func__);
+		log_debug("*** ERROR: Invalid Backup GPT ***\n");
 		return -1;
 	}
 
@@ -913,8 +909,8 @@ int write_mbr_and_gpt_partitions(struct blk_desc *dev_desc, void *buf)
 	lba = 0;	/* MBR is always at 0 */
 	cnt = 1;	/* MBR (1 block) */
 	if (blk_dwrite(dev_desc, lba, cnt, buf) != cnt) {
-		printf("%s: failed writing '%s' (%d blks at 0x" LBAF ")\n",
-		       __func__, "MBR", cnt, lba);
+		log_debug("failed writing '%s' (%d blks at 0x" LBAF ")\n",
+			  "MBR", cnt, lba);
 		return 1;
 	}
 
@@ -922,16 +918,16 @@ int write_mbr_and_gpt_partitions(struct blk_desc *dev_desc, void *buf)
 	lba = GPT_PRIMARY_PARTITION_TABLE_LBA;
 	cnt = 1;	/* GPT Header (1 block) */
 	if (blk_dwrite(dev_desc, lba, cnt, gpt_h) != cnt) {
-		printf("%s: failed writing '%s' (%d blks at 0x" LBAF ")\n",
-		       __func__, "Primary GPT Header", cnt, lba);
+		log_debug("failed writing '%s' (%d blks at 0x" LBAF ")\n",
+			  "Primary GPT Header", cnt, lba);
 		return 1;
 	}
 
 	lba = le64_to_cpu(gpt_h->partition_entry_lba);
 	cnt = gpt_e_blk_cnt;
 	if (blk_dwrite(dev_desc, lba, cnt, gpt_e) != cnt) {
-		printf("%s: failed writing '%s' (%d blks at 0x" LBAF ")\n",
-		       __func__, "Primary GPT Entries", cnt, lba);
+		log_debug("failed writing '%s' (%d blks at 0x" LBAF ")\n",
+			  "Primary GPT Entries", cnt, lba);
 		return 1;
 	}
 
@@ -941,16 +937,16 @@ int write_mbr_and_gpt_partitions(struct blk_desc *dev_desc, void *buf)
 	lba = le64_to_cpu(gpt_h->partition_entry_lba);
 	cnt = gpt_e_blk_cnt;
 	if (blk_dwrite(dev_desc, lba, cnt, gpt_e) != cnt) {
-		printf("%s: failed writing '%s' (%d blks at 0x" LBAF ")\n",
-		       __func__, "Backup GPT Entries", cnt, lba);
+		log_debug("failed writing '%s' (%d blks at 0x" LBAF ")\n",
+			  "Backup GPT Entries", cnt, lba);
 		return 1;
 	}
 
 	lba = le64_to_cpu(gpt_h->my_lba);
 	cnt = 1;	/* GPT Header (1 block) */
 	if (blk_dwrite(dev_desc, lba, cnt, gpt_h) != cnt) {
-		printf("%s: failed writing '%s' (%d blks at 0x" LBAF ")\n",
-		       __func__, "Backup GPT Header", cnt, lba);
+		log_debug("failed writing '%s' (%d blks at 0x" LBAF ")\n",
+			  "Backup GPT Header", cnt, lba);
 		return 1;
 	}
 
@@ -1017,7 +1013,7 @@ static int is_gpt_valid(struct blk_desc *dev_desc, u64 lba,
 {
 	/* Confirm valid arguments prior to allocation. */
 	if (!dev_desc || !pgpt_head) {
-		printf("%s: Invalid Argument(s)\n", __func__);
+		log_debug("Invalid Argument(s)\n");
 		return 0;
 	}
 
@@ -1025,19 +1021,19 @@ static int is_gpt_valid(struct blk_desc *dev_desc, u64 lba,
 
 	/* Read MBR Header from device */
 	if (blk_dread(dev_desc, 0, 1, (ulong *)mbr) != 1) {
-		printf("*** ERROR: Can't read MBR header ***\n");
+		log_debug("*** ERROR: Can't read MBR header ***\n");
 		return 0;
 	}
 
 	/* Read GPT Header from device */
 	if (blk_dread(dev_desc, (lbaint_t)lba, 1, pgpt_head) != 1) {
-		printf("*** ERROR: Can't read GPT header ***\n");
+		log_debug("*** ERROR: Can't read GPT header ***\n");
 		return 0;
 	}
 
 	/* Invalid but nothing to yell about. */
 	if (le64_to_cpu(pgpt_head->signature) == GPT_HEADER_CHROMEOS_IGNORE) {
-		debug("ChromeOS 'IGNOREME' GPT header found and ignored\n");
+		log_debug("ChromeOS 'IGNOREME' GPT header found and ignored\n");
 		return 2;
 	}
 
@@ -1089,17 +1085,15 @@ static int find_valid_gpt(struct blk_desc *dev_desc, gpt_header *gpt_head,
 
 	if (r != 1) {
 		if (r != 2)
-			printf("%s: *** ERROR: Invalid GPT ***\n", __func__);
+			log_debug("*** ERROR: Invalid GPT ***\n");
 
 		if (is_gpt_valid(dev_desc, (dev_desc->lba - 1), gpt_head,
 				 pgpt_pte) != 1) {
-			printf("%s: *** ERROR: Invalid Backup GPT ***\n",
-			       __func__);
+			log_debug("*** ERROR: Invalid Backup GPT ***\n");
 			return 0;
 		}
 		if (r != 2)
-			printf("%s: ***        Using Backup GPT ***\n",
-			       __func__);
+			log_debug("***        Using Backup GPT ***\n");
 	}
 	return 1;
 }
@@ -1121,17 +1115,17 @@ static gpt_entry *alloc_read_gpt_entries(struct blk_desc *dev_desc,
 	gpt_entry *pte = NULL;
 
 	if (!dev_desc || !pgpt_head) {
-		printf("%s: Invalid Argument(s)\n", __func__);
+		log_debug("Invalid Argument(s)\n");
 		return NULL;
 	}
 
 	count = le32_to_cpu(pgpt_head->num_partition_entries) *
 		le32_to_cpu(pgpt_head->sizeof_partition_entry);
 
-	debug("%s: count = %u * %u = %lu\n", __func__,
-	      (u32) le32_to_cpu(pgpt_head->num_partition_entries),
-	      (u32) le32_to_cpu(pgpt_head->sizeof_partition_entry),
-	      (ulong)count);
+	log_debug("count = %u * %u = %lu\n",
+		  (u32)le32_to_cpu(pgpt_head->num_partition_entries),
+		  (u32)le32_to_cpu(pgpt_head->sizeof_partition_entry),
+		  (ulong)count);
 
 	/* Allocate memory for PTE, remember to FREE */
 	if (count != 0) {
@@ -1140,8 +1134,8 @@ static gpt_entry *alloc_read_gpt_entries(struct blk_desc *dev_desc,
 	}
 
 	if (count == 0 || pte == NULL) {
-		printf("%s: ERROR: Can't allocate %#lX bytes for GPT Entries\n",
-		       __func__, (ulong)count);
+		log_debug("ERROR: Can't allocate %#lX bytes for GPT Entries\n",
+			  (ulong)count);
 		return NULL;
 	}
 
@@ -1149,7 +1143,7 @@ static gpt_entry *alloc_read_gpt_entries(struct blk_desc *dev_desc,
 	blk = le64_to_cpu(pgpt_head->partition_entry_lba);
 	blk_cnt = BLOCK_CNT(count, dev_desc);
 	if (blk_dread(dev_desc, blk, (lbaint_t)blk_cnt, pte) != blk_cnt) {
-		printf("*** ERROR: Can't read GPT Entries ***\n");
+		log_debug("*** ERROR: Can't read GPT Entries ***\n");
 		free(pte);
 		return NULL;
 	}
@@ -1167,7 +1161,7 @@ static int is_pte_valid(gpt_entry * pte)
 	efi_guid_t unused_guid;
 
 	if (!pte) {
-		printf("%s: Invalid Argument(s)\n", __func__);
+		log_debug("Invalid Argument(s)\n");
 		return 0;
 	}
 
@@ -1179,8 +1173,8 @@ static int is_pte_valid(gpt_entry * pte)
 	if (memcmp(pte->partition_type_guid.b, unused_guid.b,
 		sizeof(unused_guid.b)) == 0) {
 
-		debug("%s: Found an unused PTE GUID at 0x%08X\n", __func__,
-		      (unsigned int)(uintptr_t)pte);
+		log_debug("Found an unused PTE GUID at 0x%08X\n",
+			  (unsigned int)(uintptr_t)pte);
 
 		return 0;
 	} else {
-- 
2.37.3.998.g577e59143f-goog


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

* [PATCH 03/45] bloblist: Drop debugging
  2022-09-25 15:02 [PATCH 00/45] vbe: Implement the full firmware flow Simon Glass
  2022-09-25 15:02 ` [PATCH 01/45] Rename CONFIG_SYS_TEXT_BASE to CONFIG_TEXT_BASE Simon Glass
  2022-09-25 15:02 ` [PATCH 02/45] disk: Drop debug messages in part_efi Simon Glass
@ 2022-09-25 15:02 ` Simon Glass
  2022-09-25 15:02 ` [PATCH 04/45] rsa: Avoid warning in padding_pss_verify() Simon Glass
                   ` (41 subsequent siblings)
  44 siblings, 0 replies; 72+ messages in thread
From: Simon Glass @ 2022-09-25 15:02 UTC (permalink / raw)
  To: U-Boot Mailing List; +Cc: Tom Rini, Simon Glass

Disable debugging by default since this implementation is stable now.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 common/bloblist.c | 1 -
 1 file changed, 1 deletion(-)

diff --git a/common/bloblist.c b/common/bloblist.c
index 8488663354b..0d63b6e8817 100644
--- a/common/bloblist.c
+++ b/common/bloblist.c
@@ -4,7 +4,6 @@
  * Written by Simon Glass <sjg@chromium.org>
  */
 
-#define LOG_DEBUG
 #define LOG_CATEGORY	LOGC_BLOBLIST
 
 #include <common.h>
-- 
2.37.3.998.g577e59143f-goog


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

* [PATCH 04/45] rsa: Avoid warning in padding_pss_verify()
  2022-09-25 15:02 [PATCH 00/45] vbe: Implement the full firmware flow Simon Glass
                   ` (2 preceding siblings ...)
  2022-09-25 15:02 ` [PATCH 03/45] bloblist: Drop debugging Simon Glass
@ 2022-09-25 15:02 ` Simon Glass
  2022-09-26  6:23   ` Heinrich Schuchardt
  2022-09-25 15:02 ` [PATCH 05/45] spl: Use binman suffix allow symbols of any SPL etype Simon Glass
                   ` (40 subsequent siblings)
  44 siblings, 1 reply; 72+ messages in thread
From: Simon Glass @ 2022-09-25 15:02 UTC (permalink / raw)
  To: U-Boot Mailing List
  Cc: Tom Rini, Simon Glass, Alexandru Gagniuc, Heinrich Schuchardt,
	Jamin Lin, Philippe Reynes, SESA644425

With gcc 12 we ge the following warning:

In file included from tools/lib/rsa/rsa-verify.c:1:
lib/rsa/rsa-verify.c:275:11: warning: ‘*db’ may be used uninitialized
  275 |         db[0] &= 0xff >> leftmost_bits;

Check the value of db_len to ensure this cannot happen.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 lib/rsa/rsa-verify.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/lib/rsa/rsa-verify.c b/lib/rsa/rsa-verify.c
index 1d95cfbdee0..81c39251e59 100644
--- a/lib/rsa/rsa-verify.c
+++ b/lib/rsa/rsa-verify.c
@@ -234,6 +234,11 @@ int padding_pss_verify(struct image_sign_info *info,
 	uint8_t leftmost_mask;
 	struct checksum_algo *checksum = info->checksum;
 
+	if (db_len <= 0) {
+		ret = -EINVAL;
+		goto out;
+	}
+
 	/* first, allocate everything */
 	db_mask = malloc(db_len);
 	db = malloc(db_len);
-- 
2.37.3.998.g577e59143f-goog


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

* [PATCH 05/45] spl: Use binman suffix allow symbols of any SPL etype
  2022-09-25 15:02 [PATCH 00/45] vbe: Implement the full firmware flow Simon Glass
                   ` (3 preceding siblings ...)
  2022-09-25 15:02 ` [PATCH 04/45] rsa: Avoid warning in padding_pss_verify() Simon Glass
@ 2022-09-25 15:02 ` Simon Glass
  2022-09-25 15:02 ` [PATCH 06/45] spl: Split up the board_init_r() function Simon Glass
                   ` (39 subsequent siblings)
  44 siblings, 0 replies; 72+ messages in thread
From: Simon Glass @ 2022-09-25 15:02 UTC (permalink / raw)
  To: U-Boot Mailing List
  Cc: Tom Rini, Simon Glass, Alper Nebi Yasak, Andre Przywara,
	Heiko Schocher, Heiko Thiery, Heinrich Schuchardt,
	Marek Behún, Michael Walle, Oleksandr Suvorov,
	Pali Rohár, Ricardo Salveti, Stefan Roese, Vaishnav Achath

At present we use symbols for the u-boot-spl entry, but this is not always
what we want. For example, sandbox actually jumps to a u-boot-spl-elf
entry, since sandbox executables are ELF files.

We already handle this with U-Boot by using the '-any' suffix. Add it for
SPL as well.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 common/spl/spl.c | 16 ++++++++--------
 include/spl.h    |  8 ++++----
 2 files changed, 12 insertions(+), 12 deletions(-)

diff --git a/common/spl/spl.c b/common/spl/spl.c
index e550d1cb174..55b638209ae 100644
--- a/common/spl/spl.c
+++ b/common/spl/spl.c
@@ -59,13 +59,13 @@ binman_sym_declare(ulong, u_boot_any, image_pos);
 binman_sym_declare(ulong, u_boot_any, size);
 
 #ifdef CONFIG_TPL
-binman_sym_declare(ulong, u_boot_spl, image_pos);
-binman_sym_declare(ulong, u_boot_spl, size);
+binman_sym_declare(ulong, u_boot_spl_any, image_pos);
+binman_sym_declare(ulong, u_boot_spl_any, size);
 #endif
 
 #ifdef CONFIG_VPL
-binman_sym_declare(ulong, u_boot_vpl, image_pos);
-binman_sym_declare(ulong, u_boot_vpl, size);
+binman_sym_declare(ulong, u_boot_vpl_any, image_pos);
+binman_sym_declare(ulong, u_boot_vpl_any, size);
 #endif
 
 #endif /* BINMAN_UBOOT_SYMBOLS */
@@ -159,10 +159,10 @@ ulong spl_get_image_pos(void)
 
 #ifdef CONFIG_VPL
 	if (spl_next_phase() == PHASE_VPL)
-		return binman_sym(ulong, u_boot_vpl, image_pos);
+		return binman_sym(ulong, u_boot_vpl_any, image_pos);
 #endif
 	return spl_next_phase() == PHASE_SPL ?
-		binman_sym(ulong, u_boot_spl, image_pos) :
+		binman_sym(ulong, u_boot_spl_any, image_pos) :
 		binman_sym(ulong, u_boot_any, image_pos);
 }
 
@@ -173,10 +173,10 @@ ulong spl_get_image_size(void)
 
 #ifdef CONFIG_VPL
 	if (spl_next_phase() == PHASE_VPL)
-		return binman_sym(ulong, u_boot_vpl, size);
+		return binman_sym(ulong, u_boot_vpl_any, size);
 #endif
 	return spl_next_phase() == PHASE_SPL ?
-		binman_sym(ulong, u_boot_spl, size) :
+		binman_sym(ulong, u_boot_spl_any, size) :
 		binman_sym(ulong, u_boot_any, size);
 }
 
diff --git a/include/spl.h b/include/spl.h
index bac5ea29b7d..a89830d24fd 100644
--- a/include/spl.h
+++ b/include/spl.h
@@ -286,10 +286,10 @@ struct spl_load_info {
  */
 binman_sym_extern(ulong, u_boot_any, image_pos);
 binman_sym_extern(ulong, u_boot_any, size);
-binman_sym_extern(ulong, u_boot_spl, image_pos);
-binman_sym_extern(ulong, u_boot_spl, size);
-binman_sym_extern(ulong, u_boot_vpl, image_pos);
-binman_sym_extern(ulong, u_boot_vpl, size);
+binman_sym_extern(ulong, u_boot_spl_any, image_pos);
+binman_sym_extern(ulong, u_boot_spl_any, size);
+binman_sym_extern(ulong, u_boot_vpl_any, image_pos);
+binman_sym_extern(ulong, u_boot_vpl_any, size);
 
 /**
  * spl_get_image_pos() - get the image position of the next phase
-- 
2.37.3.998.g577e59143f-goog


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

* [PATCH 06/45] spl: Split up the board_init_r() function
  2022-09-25 15:02 [PATCH 00/45] vbe: Implement the full firmware flow Simon Glass
                   ` (4 preceding siblings ...)
  2022-09-25 15:02 ` [PATCH 05/45] spl: Use binman suffix allow symbols of any SPL etype Simon Glass
@ 2022-09-25 15:02 ` Simon Glass
  2022-09-25 15:02 ` [PATCH 07/45] spl: Refactor controls for console output Simon Glass
                   ` (38 subsequent siblings)
  44 siblings, 0 replies; 72+ messages in thread
From: Simon Glass @ 2022-09-25 15:02 UTC (permalink / raw)
  To: U-Boot Mailing List
  Cc: Tom Rini, Simon Glass, Alper Nebi Yasak, Marek Behún,
	Pali Rohár, Stefan Roese

This function is quite long and does two separate things: init and
booting. Split it into two.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 common/spl/spl.c | 64 ++++++++++++++++++++++++++++++++++++------------
 1 file changed, 49 insertions(+), 15 deletions(-)

diff --git a/common/spl/spl.c b/common/spl/spl.c
index 55b638209ae..edf24b05162 100644
--- a/common/spl/spl.c
+++ b/common/spl/spl.c
@@ -720,16 +720,15 @@ void board_init_f(ulong dummy)
 }
 #endif
 
-void board_init_r(gd_t *dummy1, ulong dummy2)
+/**
+ * spl_init_r() - Set up SPL ready for use
+ *
+ * Calls all required init functions to get SPL up and running
+ *
+ * @return 0 if OK, -ve on error (meaning boot cannot proceed)
+ */
+static int spl_init_r(void)
 {
-	u32 spl_boot_list[] = {
-		BOOT_DEVICE_NONE,
-		BOOT_DEVICE_NONE,
-		BOOT_DEVICE_NONE,
-		BOOT_DEVICE_NONE,
-		BOOT_DEVICE_NONE,
-	};
-	struct spl_image_info spl_image;
 	int ret;
 
 	debug(">>" SPL_TPL_PROMPT "board_init_r()\n");
@@ -741,8 +740,9 @@ void board_init_r(gd_t *dummy1, ulong dummy2)
 	gd->flags |= GD_FLG_FULL_MALLOC_INIT;
 #endif
 	if (!(gd->flags & GD_FLG_SPL_INIT)) {
-		if (spl_init())
-			hang();
+		ret = spl_init();
+		if (ret)
+			return log_msg_ret("init", ret);
 	}
 #if !defined(CONFIG_PPC) && !defined(CONFIG_ARCH_MX6)
 	/*
@@ -754,10 +754,9 @@ void board_init_r(gd_t *dummy1, ulong dummy2)
 	if (CONFIG_IS_ENABLED(BLOBLIST)) {
 		ret = bloblist_init();
 		if (ret) {
-			debug("%s: Failed to set up bloblist: ret=%d\n",
-			      __func__, ret);
+			log_debug("Failed to set up bloblist: ret=%d\n", ret);
 			puts(SPL_TPL_PROMPT "Cannot set up bloblist\n");
-			hang();
+			return log_msg_ret("bl", ret);
 		}
 	}
 	if (CONFIG_IS_ENABLED(HANDOFF)) {
@@ -766,7 +765,7 @@ void board_init_r(gd_t *dummy1, ulong dummy2)
 		ret = setup_spl_handoff();
 		if (ret) {
 			puts(SPL_TPL_PROMPT "Cannot set up SPL handoff\n");
-			hang();
+			return log_msg_ret("ho", ret);
 		}
 	}
 
@@ -795,6 +794,29 @@ void board_init_r(gd_t *dummy1, ulong dummy2)
 		dm_dump_mem(&mem);
 	}
 
+	return 0;
+}
+
+/**
+ * spl_boot() - Boot into the next U-Boot phase
+ *
+ * Figures out which boot device to use, loads the image and jumps to it
+ *
+ * This function does not return. If something goes wrong, it tries to print a
+ * message, then hangs.
+ */
+static void spl_boot(void)
+{
+	u32 spl_boot_list[] = {
+		BOOT_DEVICE_NONE,
+		BOOT_DEVICE_NONE,
+		BOOT_DEVICE_NONE,
+		BOOT_DEVICE_NONE,
+		BOOT_DEVICE_NONE,
+	};
+	struct spl_image_info spl_image;
+	int ret;
+
 	memset(&spl_image, '\0', sizeof(spl_image));
 #ifdef CONFIG_SYS_SPL_ARGS_ADDR
 	spl_image.arg = (void *)CONFIG_SYS_SPL_ARGS_ADDR;
@@ -880,6 +902,18 @@ void board_init_r(gd_t *dummy1, ulong dummy2)
 	jump_to_image_no_args(&spl_image);
 }
 
+void board_init_r(gd_t *dummy1, ulong dummy2)
+{
+	int ret;
+
+	ret = spl_init_r();
+	if (!ret)
+		spl_boot();
+
+	puts("SPL fail\n");
+	hang();
+}
+
 /*
  * This requires UART clocks to be enabled.  In order for this to work the
  * caller must ensure that the gd pointer is valid.
-- 
2.37.3.998.g577e59143f-goog


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

* [PATCH 07/45] spl: Refactor controls for console output
  2022-09-25 15:02 [PATCH 00/45] vbe: Implement the full firmware flow Simon Glass
                   ` (5 preceding siblings ...)
  2022-09-25 15:02 ` [PATCH 06/45] spl: Split up the board_init_r() function Simon Glass
@ 2022-09-25 15:02 ` Simon Glass
  2022-09-29 15:16   ` Tom Rini
  2022-09-25 15:02 ` [PATCH 08/45] spl: Add a separate silence option for SPL Simon Glass
                   ` (37 subsequent siblings)
  44 siblings, 1 reply; 72+ messages in thread
From: Simon Glass @ 2022-09-25 15:02 UTC (permalink / raw)
  To: U-Boot Mailing List
  Cc: Tom Rini, Simon Glass, Alper Nebi Yasak, Marek Behún,
	Pali Rohár, Stefan Roese

The expression in boot_from_devices() is fairly long. Move it into a
function with a suitable comment.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 common/spl/spl.c | 16 +++++++++++++---
 1 file changed, 13 insertions(+), 3 deletions(-)

diff --git a/common/spl/spl.c b/common/spl/spl.c
index edf24b05162..e7f16a18228 100644
--- a/common/spl/spl.c
+++ b/common/spl/spl.c
@@ -659,6 +659,18 @@ static int spl_load_image(struct spl_image_info *spl_image,
 	return ret;
 }
 
+/**
+ * spl_show_output() - Selects whether to show info output in SPL
+ *
+ * Returns: true if info output should be shown, false if not
+ */
+static inline bool spl_show_output(void)
+{
+	return CONFIG_IS_ENABLED(SERIAL) &&
+	    CONFIG_IS_ENABLED(LIBCOMMON_SUPPORT) &&
+	    !IS_ENABLED(CONFIG_SILENT_CONSOLE);
+}
+
 /**
  * boot_from_devices() - Try loading a booting U-Boot from a list of devices
  *
@@ -682,9 +694,7 @@ static int boot_from_devices(struct spl_image_info *spl_image,
 		if (CONFIG_IS_ENABLED(SHOW_ERRORS))
 			ret = -ENXIO;
 		loader = spl_ll_find_loader(bootdev);
-		if (CONFIG_IS_ENABLED(SERIAL) &&
-		    CONFIG_IS_ENABLED(LIBCOMMON_SUPPORT) &&
-		    !IS_ENABLED(CONFIG_SILENT_CONSOLE)) {
+		if (spl_show_output()) {
 			if (loader)
 				printf("Trying to boot from %s\n",
 				       spl_loader_name(loader));
-- 
2.37.3.998.g577e59143f-goog


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

* [PATCH 08/45] spl: Add a separate silence option for SPL
  2022-09-25 15:02 [PATCH 00/45] vbe: Implement the full firmware flow Simon Glass
                   ` (6 preceding siblings ...)
  2022-09-25 15:02 ` [PATCH 07/45] spl: Refactor controls for console output Simon Glass
@ 2022-09-25 15:02 ` Simon Glass
  2022-09-25 15:02 ` [PATCH 09/45] CI: Install pyelftools for builds Simon Glass
                   ` (36 subsequent siblings)
  44 siblings, 0 replies; 72+ messages in thread
From: Simon Glass @ 2022-09-25 15:02 UTC (permalink / raw)
  To: U-Boot Mailing List
  Cc: Tom Rini, Simon Glass, Alper Nebi Yasak, Anatolij Gustschin,
	Marek Behún, Pali Rohár, Stefan Roese

Add options to allow silent console to be controlled separately in SPL,
so that boot progress can be shown. Disable it by default for sandbox
since it is useful to see what is going on there.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 common/Kconfig   | 22 ++++++++++++++++++++++
 common/spl/spl.c |  2 +-
 2 files changed, 23 insertions(+), 1 deletion(-)

diff --git a/common/Kconfig b/common/Kconfig
index a6661c1c0c7..532bcaf5804 100644
--- a/common/Kconfig
+++ b/common/Kconfig
@@ -113,6 +113,28 @@ config SILENT_CONSOLE
 	  GD_FLG_SILENT flag is set. Changing the environment variable later
 	  will update the flag.
 
+config SPL_SILENT_CONSOLE
+	bool "Use a silent console in SPL"
+	default y if SILENT_CONSOLE && !SANDBOX
+	help
+	  This selects a silent console in SPL. When enabled it drops some
+	  output messages. The GD_FLG_SILENT flag is not used in SPL so there
+	  is no run-time control of console messages in SPL.
+
+	  Future work may allow the SPL console to be silenced completely using
+	  this option.
+
+config TPL_SILENT_CONSOLE
+	bool "Use a silent console in TPL"
+	default y if SILENT_CONSOLE && !SANDBOX
+	help
+	  This selects a silent console in TPL. When enabled it drops some
+	  output messages. The GD_FLG_SILENT flag is not used in TPL so there
+	  is no run-time control of console messages in TPL.
+
+	  Future work may allow the TPL console to be silenced completely using
+	  this option.
+
 config SILENT_U_BOOT_ONLY
 	bool "Only silence the U-Boot console"
 	depends on SILENT_CONSOLE
diff --git a/common/spl/spl.c b/common/spl/spl.c
index e7f16a18228..cc982d6a9d1 100644
--- a/common/spl/spl.c
+++ b/common/spl/spl.c
@@ -668,7 +668,7 @@ static inline bool spl_show_output(void)
 {
 	return CONFIG_IS_ENABLED(SERIAL) &&
 	    CONFIG_IS_ENABLED(LIBCOMMON_SUPPORT) &&
-	    !IS_ENABLED(CONFIG_SILENT_CONSOLE);
+	    !CONFIG_IS_ENABLED(SILENT_CONSOLE);
 }
 
 /**
-- 
2.37.3.998.g577e59143f-goog


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

* [PATCH 09/45] CI: Install pyelftools for builds
  2022-09-25 15:02 [PATCH 00/45] vbe: Implement the full firmware flow Simon Glass
                   ` (7 preceding siblings ...)
  2022-09-25 15:02 ` [PATCH 08/45] spl: Add a separate silence option for SPL Simon Glass
@ 2022-09-25 15:02 ` Simon Glass
  2022-09-26  6:29   ` Heinrich Schuchardt
  2022-09-25 15:02 ` [PATCH 10/45] binman: Allow obtaining a symbol value Simon Glass
                   ` (35 subsequent siblings)
  44 siblings, 1 reply; 72+ messages in thread
From: Simon Glass @ 2022-09-25 15:02 UTC (permalink / raw)
  To: U-Boot Mailing List
  Cc: Tom Rini, Simon Glass, AKASHI Takahiro, Heinrich Schuchardt,
	Huang Jianan, Joel Stanley, Rick Chen

Binman needs this module to build sandbox_vpl so install it in the
before_script and in the world build. The existing pip install is too
late for the buildman invocation.

Add it to the docker file for the future.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 .gitlab-ci.yml          | 2 ++
 tools/docker/Dockerfile | 1 +
 2 files changed, 3 insertions(+)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 8e94bf8d4e8..47e36edcc4a 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -34,6 +34,7 @@ stages:
     # If we've been asked to use clang only do one configuration.
     - export UBOOT_TRAVIS_BUILD_DIR=/tmp/${TEST_PY_BD}
     - echo BUILD_ENV ${BUILD_ENV}
+    - pip install pyelftools
     - tools/buildman/buildman -o ${UBOOT_TRAVIS_BUILD_DIR} -w -E -W -e
         --board ${TEST_PY_BD} ${OVERRIDE}
     - cp ~/grub_x86.efi $UBOOT_TRAVIS_BUILD_DIR/
@@ -113,6 +114,7 @@ build all PowerPC platforms:
 build all other platforms:
   stage: world build
   script:
+    - pip install pyelftools
     - ret=0;
       ./tools/buildman/buildman -o /tmp -P -E -W -x arm,powerpc || ret=$?;
       if [[ $ret -ne 0 ]]; then
diff --git a/tools/docker/Dockerfile b/tools/docker/Dockerfile
index d3292e752a9..6fd7da66603 100644
--- a/tools/docker/Dockerfile
+++ b/tools/docker/Dockerfile
@@ -96,6 +96,7 @@ RUN apt-get update && apt-get install -y \
 	python3 \
 	python3-dev \
 	python3-pip \
+	python3-pyelftools \
 	python3-sphinx \
 	python3-virtualenv \
 	rpm2cpio \
-- 
2.37.3.998.g577e59143f-goog


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

* [PATCH 10/45] binman: Allow obtaining a symbol value
  2022-09-25 15:02 [PATCH 00/45] vbe: Implement the full firmware flow Simon Glass
                   ` (8 preceding siblings ...)
  2022-09-25 15:02 ` [PATCH 09/45] CI: Install pyelftools for builds Simon Glass
@ 2022-09-25 15:02 ` Simon Glass
  2022-09-25 15:02 ` [PATCH 11/45] binman: Split out looking up a symbol into a function Simon Glass
                   ` (34 subsequent siblings)
  44 siblings, 0 replies; 72+ messages in thread
From: Simon Glass @ 2022-09-25 15:02 UTC (permalink / raw)
  To: U-Boot Mailing List; +Cc: Tom Rini, Simon Glass, Alper Nebi Yasak

Provide a function to obtain the integer value of an ELF symbol. This will
be used from tests to check that the symbols are correct.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 tools/binman/elf.py | 53 ++++++++++++++++++++++++++++++++++++++-------
 1 file changed, 45 insertions(+), 8 deletions(-)

diff --git a/tools/binman/elf.py b/tools/binman/elf.py
index 6d440ddf21d..fec2116880b 100644
--- a/tools/binman/elf.py
+++ b/tools/binman/elf.py
@@ -188,6 +188,28 @@ def GetSymbolAddress(fname, sym_name):
         return None
     return sym.address
 
+def GetPackString(sym, msg):
+    """Get the struct.pack/unpack string to use with a given symbol
+
+    Args:
+        sym (Symbol): Symbol to check. Only the size member is checked
+        @msg (str): String which indicates the entry being processed, used for
+            errors
+
+    Returns:
+        str: struct string to use, .e.g. '<I'
+
+    Raises:
+        ValueError: Symbol has an unexpected size
+    """
+    if sym.size == 4:
+        return '<I'
+    elif sym.size == 8:
+        return '<Q'
+    else:
+        raise ValueError('%s has size %d: only 4 and 8 are supported' %
+                         (msg, sym.size))
+
 def LookupAndWriteSymbols(elf_fname, entry, section):
     """Replace all symbols in an entry with their correct values
 
@@ -218,14 +240,7 @@ def LookupAndWriteSymbols(elf_fname, entry, section):
                 raise ValueError('%s has offset %x (size %x) but the contents '
                                  'size is %x' % (entry.GetPath(), offset,
                                                  sym.size, entry.contents_size))
-            if sym.size == 4:
-                pack_string = '<I'
-            elif sym.size == 8:
-                pack_string = '<Q'
-            else:
-                raise ValueError('%s has size %d: only 4 and 8 are supported' %
-                                 (msg, sym.size))
-
+            pack_string = GetPackString(sym, msg)
             if name == '_binman_sym_magic':
                 value = BINMAN_SYM_MAGIC_VALUE
             else:
@@ -241,6 +256,28 @@ def LookupAndWriteSymbols(elf_fname, entry, section):
             entry.data = (entry.data[:offset] + value_bytes +
                         entry.data[offset + sym.size:])
 
+def GetSymbolValue(sym, data, msg):
+    """Get the value of a symbol
+
+    This can only be used on symbols with an integer value.
+
+    Args:
+        sym (Symbol): Symbol to check
+        data (butes): Data for the ELF file - the symbol data appears at offset
+            sym.offset
+        @msg (str): String which indicates the entry being processed, used for
+            errors
+
+    Returns:
+        int: Value of the symbol
+
+    Raises:
+        ValueError: Symbol has an unexpected size
+    """
+    pack_string = GetPackString(sym, msg)
+    value = struct.unpack(pack_string, data[sym.offset:sym.offset + sym.size])
+    return value[0]
+
 def MakeElf(elf_fname, text, data):
     """Make an elf file with the given data in a single section
 
-- 
2.37.3.998.g577e59143f-goog


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

* [PATCH 11/45] binman: Split out looking up a symbol into a function
  2022-09-25 15:02 [PATCH 00/45] vbe: Implement the full firmware flow Simon Glass
                   ` (9 preceding siblings ...)
  2022-09-25 15:02 ` [PATCH 10/45] binman: Allow obtaining a symbol value Simon Glass
@ 2022-09-25 15:02 ` Simon Glass
  2022-09-25 15:02 ` [PATCH 12/45] binman: Handle writing ELF symbols in the Entry class Simon Glass
                   ` (33 subsequent siblings)
  44 siblings, 0 replies; 72+ messages in thread
From: Simon Glass @ 2022-09-25 15:02 UTC (permalink / raw)
  To: U-Boot Mailing List
  Cc: Tom Rini, Simon Glass, Alper Nebi Yasak, Heiko Thiery,
	Stefan Herbrechtsmeier

Move this code into its own function so it can be used from tests.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 tools/binman/etype/section.py | 60 ++++++++++++++++++++++++++---------
 1 file changed, 45 insertions(+), 15 deletions(-)

diff --git a/tools/binman/etype/section.py b/tools/binman/etype/section.py
index 621950893f3..b68c6fd037b 100644
--- a/tools/binman/etype/section.py
+++ b/tools/binman/etype/section.py
@@ -510,6 +510,50 @@ class Entry_section(Entry):
             source_entry.Raise("Cannot find entry for node '%s'" % node.name)
         return entry.GetData(required)
 
+    def LookupEntry(self, entries, sym_name, msg):
+        """Look up the entry for an ELF symbol
+
+        Args:
+            entries (dict): entries to search:
+                key: entry name
+                value: Entry object
+            sym_name: Symbol name in the ELF file to look up in the format
+                _binman_<entry>_prop_<property> where <entry> is the name of
+                the entry and <property> is the property to find (e.g.
+                _binman_u_boot_prop_offset). As a special case, you can append
+                _any to <entry> to have it search for any matching entry. E.g.
+                _binman_u_boot_any_prop_offset will match entries called u-boot,
+                u-boot-img and u-boot-nodtb)
+            msg: Message to display if an error occurs
+
+        Returns:
+            tuple:
+                Entry: entry object that was found
+                str: name used to search for entries (uses '-' instead of the
+                    '_' used by the symbol name)
+                str: property name the symbol refers to, e.g. 'image_pos'
+
+        Raises:
+            ValueError:the symbol name cannot be decoded, e.g. does not have
+                a '_binman_' prefix
+        """
+        m = re.match(r'^_binman_(\w+)_prop_(\w+)$', sym_name)
+        if not m:
+            raise ValueError("%s: Symbol '%s' has invalid format" %
+                             (msg, sym_name))
+        entry_name, prop_name = m.groups()
+        entry_name = entry_name.replace('_', '-')
+        entry = entries.get(entry_name)
+        if not entry:
+            if entry_name.endswith('-any'):
+                root = entry_name[:-4]
+                for name in entries:
+                    if name.startswith(root):
+                        rest = name[len(root):]
+                        if rest in ['', '-img', '-nodtb']:
+                            entry = entries[name]
+        return entry, entry_name, prop_name
+
     def LookupSymbol(self, sym_name, optional, msg, base_addr, entries=None):
         """Look up a symbol in an ELF file
 
@@ -547,23 +591,9 @@ class Entry_section(Entry):
             ValueError if the symbol is invalid or not found, or references a
                 property which is not supported
         """
-        m = re.match(r'^_binman_(\w+)_prop_(\w+)$', sym_name)
-        if not m:
-            raise ValueError("%s: Symbol '%s' has invalid format" %
-                             (msg, sym_name))
-        entry_name, prop_name = m.groups()
-        entry_name = entry_name.replace('_', '-')
         if not entries:
             entries = self._entries
-        entry = entries.get(entry_name)
-        if not entry:
-            if entry_name.endswith('-any'):
-                root = entry_name[:-4]
-                for name in entries:
-                    if name.startswith(root):
-                        rest = name[len(root):]
-                        if rest in ['', '-img', '-nodtb']:
-                            entry = entries[name]
+        entry, entry_name, prop_name = self.LookupEntry(entries, sym_name, msg)
         if not entry:
             err = ("%s: Entry '%s' not found in list (%s)" %
                    (msg, entry_name, ','.join(entries.keys())))
-- 
2.37.3.998.g577e59143f-goog


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

* [PATCH 12/45] binman: Handle writing ELF symbols in the Entry class
  2022-09-25 15:02 [PATCH 00/45] vbe: Implement the full firmware flow Simon Glass
                   ` (10 preceding siblings ...)
  2022-09-25 15:02 ` [PATCH 11/45] binman: Split out looking up a symbol into a function Simon Glass
@ 2022-09-25 15:02 ` Simon Glass
  2022-09-25 15:02 ` [PATCH 13/45] binman: Support writing symbols into ELF files Simon Glass
                   ` (32 subsequent siblings)
  44 siblings, 0 replies; 72+ messages in thread
From: Simon Glass @ 2022-09-25 15:02 UTC (permalink / raw)
  To: U-Boot Mailing List; +Cc: Tom Rini, Simon Glass, Alper Nebi Yasak, Heiko Thiery

This feature is used by several etypes and we plan to add more that use
it. Make symbol writing a feature of the base class to reduce the code
duplication.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 tools/binman/entry.py                  | 13 +++++++++++--
 tools/binman/etype/blob.py             |  5 +++--
 tools/binman/etype/u_boot_spl.py       |  7 ++-----
 tools/binman/etype/u_boot_spl_nodtb.py |  6 +-----
 tools/binman/etype/u_boot_tpl.py       |  6 +-----
 tools/binman/etype/u_boot_tpl_nodtb.py |  6 +-----
 tools/binman/etype/u_boot_vpl.py       |  6 +-----
 tools/binman/etype/u_boot_vpl_nodtb.py |  6 +-----
 8 files changed, 21 insertions(+), 34 deletions(-)

diff --git a/tools/binman/entry.py b/tools/binman/entry.py
index 63ec5cea3b2..bdf53ddd922 100644
--- a/tools/binman/entry.py
+++ b/tools/binman/entry.py
@@ -12,6 +12,7 @@ import sys
 import time
 
 from binman import bintool
+from binman import elf
 from dtoc import fdt_util
 from patman import tools
 from patman.tools import to_hex, to_hex_size
@@ -86,10 +87,15 @@ class Entry(object):
         fake_fname: Fake filename, if one was created, else None
         required_props (dict of str): Properties which must be present. This can
             be added to by subclasses
+        elf_fname (str): Filename of the ELF file, if this entry holds an ELF
+            file, or is a binary file produced from an ELF file
+        auto_write_symbols (bool): True to write ELF symbols into this entry's
+            contents
     """
     fake_dir = None
 
-    def __init__(self, section, etype, node, name_prefix=''):
+    def __init__(self, section, etype, node, name_prefix='',
+                 auto_write_symbols=False):
         # Put this here to allow entry-docs and help to work without libfdt
         global state
         from binman import state
@@ -125,6 +131,8 @@ class Entry(object):
         self.fake_fname = None
         self.required_props = []
         self.comp_bintool = None
+        self.elf_fname = None
+        self.auto_write_symbols = auto_write_symbols
 
     @staticmethod
     def FindEntryClass(etype, expanded):
@@ -647,7 +655,8 @@ class Entry(object):
         Args:
           section: Section containing the entry
         """
-        pass
+        if self.auto_write_symbols:
+            elf.LookupAndWriteSymbols(self.elf_fname, self, section.GetImage())
 
     def CheckEntries(self):
         """Check that the entry offsets are correct
diff --git a/tools/binman/etype/blob.py b/tools/binman/etype/blob.py
index ceaefb07b73..a50a8068901 100644
--- a/tools/binman/etype/blob.py
+++ b/tools/binman/etype/blob.py
@@ -31,8 +31,9 @@ class Entry_blob(Entry):
     the node (if enabled with -u) which provides the uncompressed size of the
     data.
     """
-    def __init__(self, section, etype, node):
-        super().__init__(section, etype, node)
+    def __init__(self, section, etype, node, auto_write_symbols=False):
+        super().__init__(section, etype, node,
+                         auto_write_symbols=auto_write_symbols)
         self._filename = fdt_util.GetString(self._node, 'filename', self.etype)
 
     def ObtainContents(self, fake_size=0):
diff --git a/tools/binman/etype/u_boot_spl.py b/tools/binman/etype/u_boot_spl.py
index 6f79bf59f9f..d1aa3b4fdad 100644
--- a/tools/binman/etype/u_boot_spl.py
+++ b/tools/binman/etype/u_boot_spl.py
@@ -5,7 +5,6 @@
 # Entry-type module for spl/u-boot-spl.bin
 #
 
-from binman import elf
 from binman.entry import Entry
 from binman.etype.blob import Entry_blob
 
@@ -35,11 +34,9 @@ class Entry_u_boot_spl(Entry_blob):
     unless --no-expanded is used or the node has a 'no-expanded' property.
     """
     def __init__(self, section, etype, node):
-        super().__init__(section, etype, node)
+        super().__init__(section, etype, node, auto_write_symbols=True)
         self.elf_fname = 'spl/u-boot-spl'
+        self.auto_write_symbols = True
 
     def GetDefaultFilename(self):
         return 'spl/u-boot-spl.bin'
-
-    def WriteSymbols(self, section):
-        elf.LookupAndWriteSymbols(self.elf_fname, self, section.GetImage())
diff --git a/tools/binman/etype/u_boot_spl_nodtb.py b/tools/binman/etype/u_boot_spl_nodtb.py
index 316b38172ef..50a126dc7ef 100644
--- a/tools/binman/etype/u_boot_spl_nodtb.py
+++ b/tools/binman/etype/u_boot_spl_nodtb.py
@@ -5,7 +5,6 @@
 # Entry-type module for 'u-boot-spl-nodtb.bin'
 #
 
-from binman import elf
 from binman.entry import Entry
 from binman.etype.blob import Entry_blob
 
@@ -32,11 +31,8 @@ class Entry_u_boot_spl_nodtb(Entry_blob):
     binman uses that to look up symbols to write into the SPL binary.
     """
     def __init__(self, section, etype, node):
-        super().__init__(section, etype, node)
+        super().__init__(section, etype, node, auto_write_symbols=True)
         self.elf_fname = 'spl/u-boot-spl'
 
     def GetDefaultFilename(self):
         return 'spl/u-boot-spl-nodtb.bin'
-
-    def WriteSymbols(self, section):
-        elf.LookupAndWriteSymbols(self.elf_fname, self, section.GetImage())
diff --git a/tools/binman/etype/u_boot_tpl.py b/tools/binman/etype/u_boot_tpl.py
index 0c575df8cdc..1883a2bd5f1 100644
--- a/tools/binman/etype/u_boot_tpl.py
+++ b/tools/binman/etype/u_boot_tpl.py
@@ -5,7 +5,6 @@
 # Entry-type module for tpl/u-boot-tpl.bin
 #
 
-from binman import elf
 from binman.entry import Entry
 from binman.etype.blob import Entry_blob
 
@@ -35,11 +34,8 @@ class Entry_u_boot_tpl(Entry_blob):
     unless --no-expanded is used or the node has a 'no-expanded' property.
     """
     def __init__(self, section, etype, node):
-        super().__init__(section, etype, node)
+        super().__init__(section, etype, node, auto_write_symbols=True)
         self.elf_fname = 'tpl/u-boot-tpl'
 
     def GetDefaultFilename(self):
         return 'tpl/u-boot-tpl.bin'
-
-    def WriteSymbols(self, section):
-        elf.LookupAndWriteSymbols(self.elf_fname, self, section.GetImage())
diff --git a/tools/binman/etype/u_boot_tpl_nodtb.py b/tools/binman/etype/u_boot_tpl_nodtb.py
index 98f3853f457..7e08e58f1e5 100644
--- a/tools/binman/etype/u_boot_tpl_nodtb.py
+++ b/tools/binman/etype/u_boot_tpl_nodtb.py
@@ -5,7 +5,6 @@
 # Entry-type module for 'u-boot-tpl-nodtb.bin'
 #
 
-from binman import elf
 from binman.entry import Entry
 from binman.etype.blob import Entry_blob
 
@@ -32,11 +31,8 @@ class Entry_u_boot_tpl_nodtb(Entry_blob):
     binman uses that to look up symbols to write into the TPL binary.
     """
     def __init__(self, section, etype, node):
-        super().__init__(section, etype, node)
+        super().__init__(section, etype, node, auto_write_symbols=True)
         self.elf_fname = 'tpl/u-boot-tpl'
 
     def GetDefaultFilename(self):
         return 'tpl/u-boot-tpl-nodtb.bin'
-
-    def WriteSymbols(self, section):
-        elf.LookupAndWriteSymbols(self.elf_fname, self, section.GetImage())
diff --git a/tools/binman/etype/u_boot_vpl.py b/tools/binman/etype/u_boot_vpl.py
index 9daaca4f6fd..62e5969c6ec 100644
--- a/tools/binman/etype/u_boot_vpl.py
+++ b/tools/binman/etype/u_boot_vpl.py
@@ -5,7 +5,6 @@
 # Entry-type module for vpl/u-boot-vpl.bin
 #
 
-from binman import elf
 from binman.entry import Entry
 from binman.etype.blob import Entry_blob
 
@@ -32,11 +31,8 @@ class Entry_u_boot_vpl(Entry_blob):
     binman uses that to look up symbols to write into the VPL binary.
     """
     def __init__(self, section, etype, node):
-        super().__init__(section, etype, node)
+        super().__init__(section, etype, node, auto_write_symbols=True)
         self.elf_fname = 'vpl/u-boot-vpl'
 
     def GetDefaultFilename(self):
         return 'vpl/u-boot-vpl.bin'
-
-    def WriteSymbols(self, section):
-        elf.LookupAndWriteSymbols(self.elf_fname, self, section.GetImage())
diff --git a/tools/binman/etype/u_boot_vpl_nodtb.py b/tools/binman/etype/u_boot_vpl_nodtb.py
index 25c966cf342..db3d8a91c9b 100644
--- a/tools/binman/etype/u_boot_vpl_nodtb.py
+++ b/tools/binman/etype/u_boot_vpl_nodtb.py
@@ -5,7 +5,6 @@
 # Entry-type module for 'u-boot-vpl-nodtb.bin'
 #
 
-from binman import elf
 from binman.entry import Entry
 from binman.etype.blob import Entry_blob
 
@@ -32,11 +31,8 @@ class Entry_u_boot_vpl_nodtb(Entry_blob):
     binman uses that to look up symbols to write into the VPL binary.
     """
     def __init__(self, section, etype, node):
-        super().__init__(section, etype, node)
+        super().__init__(section, etype, node, auto_write_symbols=True)
         self.elf_fname = 'vpl/u-boot-vpl'
 
     def GetDefaultFilename(self):
         return 'vpl/u-boot-vpl-nodtb.bin'
-
-    def WriteSymbols(self, section):
-        elf.LookupAndWriteSymbols(self.elf_fname, self, section.GetImage())
-- 
2.37.3.998.g577e59143f-goog


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

* [PATCH 13/45] binman: Support writing symbols into ELF files
  2022-09-25 15:02 [PATCH 00/45] vbe: Implement the full firmware flow Simon Glass
                   ` (11 preceding siblings ...)
  2022-09-25 15:02 ` [PATCH 12/45] binman: Handle writing ELF symbols in the Entry class Simon Glass
@ 2022-09-25 15:02 ` Simon Glass
  2022-09-25 15:02 ` [PATCH 14/45] dm: blk: Add udevice functions Simon Glass
                   ` (31 subsequent siblings)
  44 siblings, 0 replies; 72+ messages in thread
From: Simon Glass @ 2022-09-25 15:02 UTC (permalink / raw)
  To: U-Boot Mailing List
  Cc: Tom Rini, Simon Glass, Alper Nebi Yasak, Heiko Thiery,
	Stefan Herbrechtsmeier

In some cases we may package the ELF version of SPL builds instead of the
binary .bin file. Add support for this.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 tools/binman/elf.py                   | 41 +++++++++++++++----
 tools/binman/entry.py                 |  5 ++-
 tools/binman/etype/section.py         |  2 +-
 tools/binman/etype/u_boot_spl_elf.py  |  3 +-
 tools/binman/etype/u_boot_tpl_elf.py  |  3 +-
 tools/binman/etype/u_boot_vpl_elf.py  | 25 ++++++++++++
 tools/binman/ftest.py                 | 57 +++++++++++++++++++++++++++
 tools/binman/test/256_symbols_elf.dts | 27 +++++++++++++
 8 files changed, 151 insertions(+), 12 deletions(-)
 create mode 100644 tools/binman/etype/u_boot_vpl_elf.py
 create mode 100644 tools/binman/test/256_symbols_elf.dts

diff --git a/tools/binman/elf.py b/tools/binman/elf.py
index fec2116880b..fe50bf542c3 100644
--- a/tools/binman/elf.py
+++ b/tools/binman/elf.py
@@ -210,7 +210,7 @@ def GetPackString(sym, msg):
         raise ValueError('%s has size %d: only 4 and 8 are supported' %
                          (msg, sym.size))
 
-def LookupAndWriteSymbols(elf_fname, entry, section):
+def LookupAndWriteSymbols(elf_fname, entry, section, is_elf=False):
     """Replace all symbols in an entry with their correct values
 
     The entry contents is updated so that values for referenced symbols will be
@@ -226,27 +226,52 @@ def LookupAndWriteSymbols(elf_fname, entry, section):
     """
     fname = tools.get_input_filename(elf_fname)
     syms = GetSymbols(fname, ['image', 'binman'])
+    if is_elf:
+        if not ELF_TOOLS:
+            msg = ("Section '%s': entry '%s'" %
+                   (section.GetPath(), entry.GetPath()))
+            raise ValueError(f'{msg}: Cannot write symbols to an ELF file without Python elftools')
+        new_syms = {}
+        with open(fname, 'rb') as fd:
+            elf = ELFFile(fd)
+            for name, sym in syms.items():
+                offset = _GetFileOffset(elf, sym.address)
+                new_syms[name] = Symbol(sym.section, sym.address, sym.size,
+                                        sym.weak, offset)
+            syms = new_syms
+
     if not syms:
+        tout.debug('LookupAndWriteSymbols: no syms')
         return
     base = syms.get('__image_copy_start')
-    if not base:
+    if not base and not is_elf:
+        tout.debug('LookupAndWriteSymbols: no base')
         return
+    base_addr = 0 if is_elf else base.address
     for name, sym in syms.items():
         if name.startswith('_binman'):
             msg = ("Section '%s': Symbol '%s'\n   in entry '%s'" %
                    (section.GetPath(), name, entry.GetPath()))
-            offset = sym.address - base.address
-            if offset < 0 or offset + sym.size > entry.contents_size:
-                raise ValueError('%s has offset %x (size %x) but the contents '
-                                 'size is %x' % (entry.GetPath(), offset,
-                                                 sym.size, entry.contents_size))
+            if is_elf:
+                # For ELF files, use the file offset
+                offset = sym.offset
+            else:
+                # For blobs use the offset of the symbol, calculated by
+                # subtracting the base address which by definition is at the
+                # start
+                offset = sym.address - base.address
+                if offset < 0 or offset + sym.size > entry.contents_size:
+                    raise ValueError('%s has offset %x (size %x) but the contents '
+                                     'size is %x' % (entry.GetPath(), offset,
+                                                     sym.size,
+                                                     entry.contents_size))
             pack_string = GetPackString(sym, msg)
             if name == '_binman_sym_magic':
                 value = BINMAN_SYM_MAGIC_VALUE
             else:
                 # Look up the symbol in our entry tables.
                 value = section.GetImage().LookupImageSymbol(name, sym.weak,
-                                                             msg, base.address)
+                                                             msg, base_addr)
             if value is None:
                 value = -1
                 pack_string = pack_string.lower()
diff --git a/tools/binman/entry.py b/tools/binman/entry.py
index bdf53ddd922..1be31a05e00 100644
--- a/tools/binman/entry.py
+++ b/tools/binman/entry.py
@@ -656,7 +656,10 @@ class Entry(object):
           section: Section containing the entry
         """
         if self.auto_write_symbols:
-            elf.LookupAndWriteSymbols(self.elf_fname, self, section.GetImage())
+            # Check if we are writing symbols into an ELF file
+            is_elf = self.GetDefaultFilename() == self.elf_fname
+            elf.LookupAndWriteSymbols(self.elf_fname, self, section.GetImage(),
+                                      is_elf)
 
     def CheckEntries(self):
         """Check that the entry offsets are correct
diff --git a/tools/binman/etype/section.py b/tools/binman/etype/section.py
index b68c6fd037b..c56b962c20c 100644
--- a/tools/binman/etype/section.py
+++ b/tools/binman/etype/section.py
@@ -550,7 +550,7 @@ class Entry_section(Entry):
                 for name in entries:
                     if name.startswith(root):
                         rest = name[len(root):]
-                        if rest in ['', '-img', '-nodtb']:
+                        if rest in ['', '-elf', '-img', '-nodtb']:
                             entry = entries[name]
         return entry, entry_name, prop_name
 
diff --git a/tools/binman/etype/u_boot_spl_elf.py b/tools/binman/etype/u_boot_spl_elf.py
index 7f1236bcbb3..7b7b4e01495 100644
--- a/tools/binman/etype/u_boot_spl_elf.py
+++ b/tools/binman/etype/u_boot_spl_elf.py
@@ -18,7 +18,8 @@ class Entry_u_boot_spl_elf(Entry_blob):
     be relocated to any address for execution.
     """
     def __init__(self, section, etype, node):
-        super().__init__(section, etype, node)
+        super().__init__(section, etype, node, auto_write_symbols=True)
+        self.elf_fname = 'spl/u-boot-spl'
 
     def GetDefaultFilename(self):
         return 'spl/u-boot-spl'
diff --git a/tools/binman/etype/u_boot_tpl_elf.py b/tools/binman/etype/u_boot_tpl_elf.py
index 3f24d3aa7bc..fd100019b39 100644
--- a/tools/binman/etype/u_boot_tpl_elf.py
+++ b/tools/binman/etype/u_boot_tpl_elf.py
@@ -18,7 +18,8 @@ class Entry_u_boot_tpl_elf(Entry_blob):
     be relocated to any address for execution.
     """
     def __init__(self, section, etype, node):
-        super().__init__(section, etype, node)
+        super().__init__(section, etype, node, auto_write_symbols=True)
+        self.elf_fname = 'tpl/u-boot-tpl'
 
     def GetDefaultFilename(self):
         return 'tpl/u-boot-tpl'
diff --git a/tools/binman/etype/u_boot_vpl_elf.py b/tools/binman/etype/u_boot_vpl_elf.py
new file mode 100644
index 00000000000..2c686790194
--- /dev/null
+++ b/tools/binman/etype/u_boot_vpl_elf.py
@@ -0,0 +1,25 @@
+# SPDX-License-Identifier: GPL-2.0+
+# Copyright 2022 Google LLC
+# Written by Simon Glass <sjg@chromium.org>
+#
+# Entry-type module for U-Boot VPL ELF image
+#
+
+from binman.entry import Entry
+from binman.etype.blob import Entry_blob
+
+class Entry_u_boot_vpl_elf(Entry_blob):
+    """U-Boot VPL ELF image
+
+    Properties / Entry arguments:
+        - filename: Filename of VPL u-boot (default 'vpl/u-boot-vpl')
+
+    This is the U-Boot VPL ELF image. It does not include a device tree but can
+    be relocated to any address for execution.
+    """
+    def __init__(self, section, etype, node):
+        super().__init__(section, etype, node, auto_write_symbols=True)
+        self.elf_fname = 'vpl/u-boot-vpl'
+
+    def GetDefaultFilename(self):
+        return 'vpl/u-boot-vpl'
diff --git a/tools/binman/ftest.py b/tools/binman/ftest.py
index 4bdd08046bb..9ae293d918a 100644
--- a/tools/binman/ftest.py
+++ b/tools/binman/ftest.py
@@ -5965,6 +5965,63 @@ fdt         fdtmap                Extract the devicetree blob from the fdtmap
         self.assertIn('Expected __bss_size symbol in vpl/u-boot-vpl',
                       str(e.exception))
 
+    def testSymbolsElf(self):
+        """Test binman can assign symbols embedded in an ELF file"""
+        if not elf.ELF_TOOLS:
+            self.skipTest('Python elftools not available')
+        self._SetupTplElf('u_boot_binman_syms')
+        self._SetupVplElf('u_boot_binman_syms')
+        self._SetupSplElf('u_boot_binman_syms')
+        data = self._DoReadFileDtb('256_symbols_elf.dts')[0]
+        image_fname = tools.get_output_filename('image.bin')
+
+        image = control.images['image']
+        entries = image.GetEntries()
+
+        for entry in entries.values():
+            # No symbols in u-boot and it has faked contents anyway
+            if entry.name == 'u-boot':
+                continue
+            edata = data[entry.image_pos:entry.image_pos + entry.size]
+            efname = tools.get_output_filename(f'edata-{entry.name}')
+            tools.write_file(efname, edata)
+
+            syms = elf.GetSymbolFileOffset(efname, ['_binman_u_boot'])
+            re_name = re.compile('_binman_(u_boot_(.*))_prop_(.*)')
+            for name, sym in syms.items():
+                msg = 'test'
+                val = elf.GetSymbolValue(sym, edata, msg)
+                entry_m = re_name.match(name)
+                if entry_m:
+                    ename, prop = entry_m.group(1), entry_m.group(3)
+                entry, entry_name, prop_name = image.LookupEntry(entries,
+                                                                 name, msg)
+                if prop_name == 'offset':
+                    expect_val = entry.offset
+                elif prop_name == 'image_pos':
+                    expect_val = entry.image_pos
+                elif prop_name == 'size':
+                    expect_val = entry.size
+                self.assertEqual(expect_val, val)
+
+    def testSymbolsElfBad(self):
+        """Check error when trying to write symbols without the elftools lib"""
+        if not elf.ELF_TOOLS:
+            self.skipTest('Python elftools not available')
+        self._SetupTplElf('u_boot_binman_syms')
+        self._SetupVplElf('u_boot_binman_syms')
+        self._SetupSplElf('u_boot_binman_syms')
+        try:
+            elf.ELF_TOOLS = False
+            with self.assertRaises(ValueError) as exc:
+                self._DoReadFileDtb('256_symbols_elf.dts')
+        finally:
+            elf.ELF_TOOLS = True
+        self.assertIn(
+            "Section '/binman': entry '/binman/u-boot-spl-elf': "
+            'Cannot write symbols to an ELF file without Python elftools',
+            str(exc.exception))
+
 
 if __name__ == "__main__":
     unittest.main()
diff --git a/tools/binman/test/256_symbols_elf.dts b/tools/binman/test/256_symbols_elf.dts
new file mode 100644
index 00000000000..0fae118fc12
--- /dev/null
+++ b/tools/binman/test/256_symbols_elf.dts
@@ -0,0 +1,27 @@
+// SPDX-License-Identifier: GPL-2.0+
+
+/dts-v1/;
+
+/ {
+	#address-cells = <1>;
+	#size-cells = <1>;
+
+	binman {
+		pad-byte = <0xff>;
+		u-boot-spl-elf {
+		};
+
+		u-boot {
+		};
+
+		u-boot-spl2 {
+			type = "u-boot-spl-elf";
+		};
+
+		u-boot-tpl-elf {
+		};
+
+		u-boot-vpl-elf {
+		};
+	};
+};
-- 
2.37.3.998.g577e59143f-goog


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

* [PATCH 14/45] dm: blk: Add udevice functions
  2022-09-25 15:02 [PATCH 00/45] vbe: Implement the full firmware flow Simon Glass
                   ` (12 preceding siblings ...)
  2022-09-25 15:02 ` [PATCH 13/45] binman: Support writing symbols into ELF files Simon Glass
@ 2022-09-25 15:02 ` Simon Glass
  2022-09-26  0:17   ` AKASHI Takahiro
  2022-09-25 15:02 ` [PATCH 15/45] dm: usb: Update the test to cover reading and writing Simon Glass
                   ` (30 subsequent siblings)
  44 siblings, 1 reply; 72+ messages in thread
From: Simon Glass @ 2022-09-25 15:02 UTC (permalink / raw)
  To: U-Boot Mailing List
  Cc: Tom Rini, Simon Glass, AKASHI Takahiro, Heinrich Schuchardt,
	Marek Vasut, Masahisa Kojima, Pavel Herrmann

At present we have functions called blk_dread(), etc., which take a
struct blk_desc * to refer to the block device. Add some functions which
use udevice instead, since this is more in keeping with how driver model
is supposed to work.

Update one of the tests to use this.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 drivers/block/blk-uclass.c | 51 +++++++++++++++++++++++++-------------
 include/blk.h              | 39 ++++++++++++++++++++++++++++-
 test/dm/usb.c              | 11 +++++---
 3 files changed, 80 insertions(+), 21 deletions(-)

diff --git a/drivers/block/blk-uclass.c b/drivers/block/blk-uclass.c
index f8157c8d6ae..7070fd15c89 100644
--- a/drivers/block/blk-uclass.c
+++ b/drivers/block/blk-uclass.c
@@ -444,53 +444,70 @@ int blk_get_device(int uclass_id, int devnum, struct udevice **devp)
 	return device_probe(*devp);
 }
 
-unsigned long blk_dread(struct blk_desc *block_dev, lbaint_t start,
-			lbaint_t blkcnt, void *buffer)
+long blk_read(struct udevice *dev, lbaint_t start, lbaint_t blkcnt, void *buf)
 {
-	struct udevice *dev = block_dev->bdev;
+	struct blk_desc *desc = dev_get_uclass_plat(dev);
 	const struct blk_ops *ops = blk_get_ops(dev);
 	ulong blks_read;
 
 	if (!ops->read)
 		return -ENOSYS;
 
-	if (blkcache_read(block_dev->uclass_id, block_dev->devnum,
-			  start, blkcnt, block_dev->blksz, buffer))
+	if (blkcache_read(desc->uclass_id, desc->devnum,
+			  start, blkcnt, desc->blksz, buf))
 		return blkcnt;
-	blks_read = ops->read(dev, start, blkcnt, buffer);
+	blks_read = ops->read(dev, start, blkcnt, buf);
 	if (blks_read == blkcnt)
-		blkcache_fill(block_dev->uclass_id, block_dev->devnum,
-			      start, blkcnt, block_dev->blksz, buffer);
+		blkcache_fill(desc->uclass_id, desc->devnum, start, blkcnt,
+			      desc->blksz, buf);
 
 	return blks_read;
 }
 
-unsigned long blk_dwrite(struct blk_desc *block_dev, lbaint_t start,
-			 lbaint_t blkcnt, const void *buffer)
+long blk_write(struct udevice *dev, lbaint_t start, lbaint_t blkcnt,
+	       const void *buf)
 {
-	struct udevice *dev = block_dev->bdev;
+	struct blk_desc *desc = dev_get_uclass_plat(dev);
 	const struct blk_ops *ops = blk_get_ops(dev);
 
 	if (!ops->write)
 		return -ENOSYS;
 
-	blkcache_invalidate(block_dev->uclass_id, block_dev->devnum);
-	return ops->write(dev, start, blkcnt, buffer);
+	blkcache_invalidate(desc->uclass_id, desc->devnum);
+
+	return ops->write(dev, start, blkcnt, buf);
 }
 
-unsigned long blk_derase(struct blk_desc *block_dev, lbaint_t start,
-			 lbaint_t blkcnt)
+long blk_erase(struct udevice *dev, lbaint_t start, lbaint_t blkcnt)
 {
-	struct udevice *dev = block_dev->bdev;
+	struct blk_desc *desc = dev_get_uclass_plat(dev);
 	const struct blk_ops *ops = blk_get_ops(dev);
 
 	if (!ops->erase)
 		return -ENOSYS;
 
-	blkcache_invalidate(block_dev->uclass_id, block_dev->devnum);
+	blkcache_invalidate(desc->uclass_id, desc->devnum);
+
 	return ops->erase(dev, start, blkcnt);
 }
 
+ulong blk_dread(struct blk_desc *desc, lbaint_t start, lbaint_t blkcnt,
+		void *buffer)
+{
+	return blk_read(desc->bdev, start, blkcnt, buffer);
+}
+
+ulong blk_dwrite(struct blk_desc *desc, lbaint_t start, lbaint_t blkcnt,
+		 const void *buffer)
+{
+	return blk_write(desc->bdev, start, blkcnt, buffer);
+}
+
+ulong blk_derase(struct blk_desc *desc, lbaint_t start, lbaint_t blkcnt)
+{
+	return blk_erase(desc->bdev, start, blkcnt);
+}
+
 int blk_get_from_parent(struct udevice *parent, struct udevice **devp)
 {
 	struct udevice *dev;
diff --git a/include/blk.h b/include/blk.h
index cdc6f0fc7eb..8614d1420ac 100644
--- a/include/blk.h
+++ b/include/blk.h
@@ -273,6 +273,43 @@ unsigned long blk_dwrite(struct blk_desc *block_dev, lbaint_t start,
 unsigned long blk_derase(struct blk_desc *block_dev, lbaint_t start,
 			 lbaint_t blkcnt);
 
+/**
+ * blk_read() - Read from a block device
+ *
+ * @dev: Device to read from
+ * @start: Start block for the read
+ * @blkcnt: Number of blocks to read
+ * @buf: Place to put the data
+ * @return number of blocks read (which may be less than @blkcnt),
+ * or -ve on error. This never returns 0 unless @blkcnt is 0
+ */
+long blk_read(struct udevice *dev, lbaint_t start, lbaint_t blkcnt,
+	      void *buffer);
+
+/**
+ * blk_write() - Write to a block device
+ *
+ * @dev: Device to write to
+ * @start: Start block for the write
+ * @blkcnt: Number of blocks to write
+ * @buf: Data to write
+ * @return number of blocks written (which may be less than @blkcnt),
+ * or -ve on error. This never returns 0 unless @blkcnt is 0
+ */
+long blk_write(struct udevice *dev, lbaint_t start, lbaint_t blkcnt,
+	       const void *buffer);
+
+/**
+ * blk_erase() - Erase part of a block device
+ *
+ * @dev: Device to erase
+ * @start: Start block for the erase
+ * @blkcnt: Number of blocks to erase
+ * @return number of blocks erased (which may be less than @blkcnt),
+ * or -ve on error. This never returns 0 unless @blkcnt is 0
+ */
+long blk_erase(struct udevice *dev, lbaint_t start, lbaint_t blkcnt);
+
 /**
  * blk_find_device() - Find a block device
  *
@@ -428,7 +465,7 @@ const char *blk_get_devtype(struct udevice *dev);
 
 /**
  * blk_get_by_device() - Get the block device descriptor for the given device
- * @dev:	Instance of a storage device
+ * @dev:	Instance of a storage device (the parent of the block device)
  *
  * Return: With block device descriptor on success , NULL if there is no such
  *	   block device.
diff --git a/test/dm/usb.c b/test/dm/usb.c
index 5d6ceefce0b..445b21a560b 100644
--- a/test/dm/usb.c
+++ b/test/dm/usb.c
@@ -43,19 +43,24 @@ DM_TEST(dm_test_usb_base, UT_TESTF_SCAN_PDATA | UT_TESTF_SCAN_FDT);
  */
 static int dm_test_usb_flash(struct unit_test_state *uts)
 {
-	struct udevice *dev;
-	struct blk_desc *dev_desc;
+	struct blk_desc *dev_desc, *chk;
+	struct udevice *dev, *blk;
 	char cmp[1024];
 
 	state_set_skip_delays(true);
 	ut_assertok(usb_init());
 	ut_assertok(uclass_get_device(UCLASS_MASS_STORAGE, 0, &dev));
 	ut_assertok(blk_get_device_by_str("usb", "0", &dev_desc));
+	chk = blk_get_by_device(dev);
+	ut_asserteq_ptr(chk, dev_desc);
+
+	ut_assertok(device_find_first_child_by_uclass(dev, UCLASS_BLK, &blk));
+	ut_asserteq_ptr(chk, blk_get_by_device(dev));
 
 	/* Read a few blocks and look for the string we expect */
 	ut_asserteq(512, dev_desc->blksz);
 	memset(cmp, '\0', sizeof(cmp));
-	ut_asserteq(2, blk_dread(dev_desc, 0, 2, cmp));
+	ut_asserteq(2, blk_read(blk, 0, 2, cmp));
 	ut_assertok(strcmp(cmp, "this is a test"));
 	ut_assertok(usb_stop());
 
-- 
2.37.3.998.g577e59143f-goog


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

* [PATCH 15/45] dm: usb: Update the test to cover reading and writing
  2022-09-25 15:02 [PATCH 00/45] vbe: Implement the full firmware flow Simon Glass
                   ` (13 preceding siblings ...)
  2022-09-25 15:02 ` [PATCH 14/45] dm: blk: Add udevice functions Simon Glass
@ 2022-09-25 15:02 ` Simon Glass
  2022-09-25 15:02 ` [PATCH 16/45] dm: blk: mmc: Tidy up some Makefile rules for SPL Simon Glass
                   ` (29 subsequent siblings)
  44 siblings, 0 replies; 72+ messages in thread
From: Simon Glass @ 2022-09-25 15:02 UTC (permalink / raw)
  To: U-Boot Mailing List
  Cc: Tom Rini, Simon Glass, Andrew Scull, Heinrich Schuchardt,
	Marek Vasut, Pavel Herrmann, Sean Anderson, Stefan Roese

Add test coverage for blk_write() as well.

The blk_erase() is not tested for now as the USB stor interface does not
support erase.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 drivers/scsi/scsi_emul.c         |  9 ++++++++
 drivers/usb/emul/sandbox_flash.c | 35 ++++++++++++++++++++++++++++----
 include/scsi.h                   | 10 +++++++++
 include/scsi_emul.h              | 16 +++++++++++----
 test/dm/usb.c                    | 19 ++++++++++++++++-
 5 files changed, 80 insertions(+), 9 deletions(-)

diff --git a/drivers/scsi/scsi_emul.c b/drivers/scsi/scsi_emul.c
index 5ba364bdac7..6b8468f7994 100644
--- a/drivers/scsi/scsi_emul.c
+++ b/drivers/scsi/scsi_emul.c
@@ -62,6 +62,15 @@ int sb_scsi_emul_command(struct scsi_emul_info *info,
 		ret = SCSI_EMUL_DO_READ;
 		break;
 	}
+	case SCSI_WRITE10: {
+		const struct scsi_write10_req *write_req = (void *)req;
+
+		info->seek_block = be32_to_cpu(write_req->lba);
+		info->write_len = be16_to_cpu(write_req->xfer_len);
+		info->buff_used = info->write_len * info->block_size;
+		ret = SCSI_EMUL_DO_WRITE;
+		break;
+	}
 	default:
 		debug("Command not supported: %x\n", req->cmd[0]);
 		ret = -EPROTONOSUPPORT;
diff --git a/drivers/usb/emul/sandbox_flash.c b/drivers/usb/emul/sandbox_flash.c
index 2589c708d88..6e8cfe1650a 100644
--- a/drivers/usb/emul/sandbox_flash.c
+++ b/drivers/usb/emul/sandbox_flash.c
@@ -4,6 +4,8 @@
  * Written by Simon Glass <sjg@chromium.org>
  */
 
+#define LOG_CATEGORY	UCLASS_USB
+
 #include <common.h>
 #include <dm.h>
 #include <log.h>
@@ -190,7 +192,8 @@ static int handle_ufi_command(struct sandbox_flash_priv *priv, const void *buff,
 	ret = sb_scsi_emul_command(info, req, len);
 	if (!ret) {
 		setup_response(priv);
-	} else if (ret == SCSI_EMUL_DO_READ && priv->fd != -1) {
+	} else if ((ret == SCSI_EMUL_DO_READ || ret == SCSI_EMUL_DO_WRITE) &&
+		   priv->fd != -1) {
 		os_lseek(priv->fd, info->seek_block * info->block_size,
 			 OS_SEEK_SET);
 		setup_response(priv);
@@ -217,6 +220,7 @@ static int sandbox_flash_bulk(struct udevice *dev, struct usb_device *udev,
 		case SCSIPH_START:
 			info->alloc_len = 0;
 			info->read_len = 0;
+			info->write_len = 0;
 			if (priv->error || len != UMASS_BBB_CBW_SIZE ||
 			    cbw->dCBWSignature != CBWSIGNATURE)
 				goto err;
@@ -230,8 +234,31 @@ static int sandbox_flash_bulk(struct udevice *dev, struct usb_device *udev,
 			return handle_ufi_command(priv, cbw->CBWCDB,
 						  cbw->bCDBLength);
 		case SCSIPH_DATA:
-			debug("data out\n");
-			break;
+			log_debug("data out, len=%x, info->write_len=%x\n", len,
+				  info->write_len);
+			info->transfer_len = cbw->dCBWDataTransferLength;
+			priv->tag = cbw->dCBWTag;
+			if (!info->write_len)
+				return 0;
+			if (priv->fd != -1) {
+				ulong bytes_written;
+
+				bytes_written = os_write(priv->fd, buff, len);
+				log_debug("bytes_written=%lx", bytes_written);
+				if (bytes_written != len)
+					return -EIO;
+				info->write_len -= len / info->block_size;
+				if (!info->write_len)
+					info->phase = SCSIPH_STATUS;
+			} else {
+				if (info->alloc_len && len > info->alloc_len)
+					len = info->alloc_len;
+				if (len > SANDBOX_FLASH_BUF_SIZE)
+					len = SANDBOX_FLASH_BUF_SIZE;
+				memcpy(info->buff, buff, len);
+				info->phase = SCSIPH_STATUS;
+			}
+			return len;
 		default:
 			break;
 		}
@@ -310,7 +337,7 @@ static int sandbox_flash_probe(struct udevice *dev)
 	struct scsi_emul_info *info = &priv->eminfo;
 	int ret;
 
-	priv->fd = os_open(plat->pathname, OS_O_RDONLY);
+	priv->fd = os_open(plat->pathname, OS_O_RDWR);
 	if (priv->fd != -1) {
 		ret = os_get_filesize(plat->pathname, &info->file_size);
 		if (ret)
diff --git a/include/scsi.h b/include/scsi.h
index d8f0d9c7dcd..6f396c389cf 100644
--- a/include/scsi.h
+++ b/include/scsi.h
@@ -199,6 +199,16 @@ struct __packed scsi_read10_req {
 	u8 spare2[3];
 };
 
+/** struct scsi_write10_req - data for the write10 command */
+struct __packed scsi_write10_req {
+	u8 cmd;
+	u8 lun_flags;
+	u32 lba;
+	u8 spare;
+	u16 xfer_len;
+	u8 spare2[3];
+};
+
 /**
  * struct scsi_plat - stores information about SCSI controller
  *
diff --git a/include/scsi_emul.h b/include/scsi_emul.h
index a55311d59bc..d439f7c00c2 100644
--- a/include/scsi_emul.h
+++ b/include/scsi_emul.h
@@ -41,13 +41,20 @@ struct scsi_emul_info {
 	enum scsi_cmd_phase phase;
 	int buff_used;
 	int read_len;
+	int write_len;
 	uint seek_pos;
 	int alloc_len;
 	uint transfer_len;
 };
 
-/* Indicates that a read is being started */
-#define SCSI_EMUL_DO_READ	1
+/**
+ * Return value from sb_scsi_emul_command() indicates that a read or write is
+ * being started
+ */
+enum {
+	SCSI_EMUL_DO_READ	= 1,
+	SCSI_EMUL_DO_WRITE	= 2,
+};
 
 /**
  * sb_scsi_emul_command() - Process a SCSI command
@@ -61,8 +68,9 @@ struct scsi_emul_info {
  * @info: Emulation information
  * @req: Request to process
  * @len: Length of request in bytes
- * @return SCSI_EMUL_DO_READ if a read has started, 0 if some other operation
- *	has start, -ve if there was an error
+ * @return SCSI_EMUL_DO_READ if a read has started, SCSI_EMUL_DO_WRITE if a
+ *	write has started, 0 if some other operation has started, -ve if there
+ *	was an error
  */
 int sb_scsi_emul_command(struct scsi_emul_info *info,
 			 const struct scsi_cmd *req, int len);
diff --git a/test/dm/usb.c b/test/dm/usb.c
index 445b21a560b..7671ef156d8 100644
--- a/test/dm/usb.c
+++ b/test/dm/usb.c
@@ -61,7 +61,24 @@ static int dm_test_usb_flash(struct unit_test_state *uts)
 	ut_asserteq(512, dev_desc->blksz);
 	memset(cmp, '\0', sizeof(cmp));
 	ut_asserteq(2, blk_read(blk, 0, 2, cmp));
-	ut_assertok(strcmp(cmp, "this is a test"));
+	ut_asserteq_str("this is a test", cmp);
+
+	strcpy(cmp, "another test");
+	ut_asserteq(1, blk_write(blk, 1, 1, cmp));
+
+	memset(cmp, '\0', sizeof(cmp));
+	ut_asserteq(2, blk_read(blk, 0, 2, cmp));
+	ut_asserteq_str("this is a test", cmp);
+	ut_asserteq_str("another test", cmp + 512);
+
+	memset(cmp, '\0', sizeof(cmp));
+	ut_asserteq(1, blk_write(blk, 1, 1, cmp));
+
+	memset(cmp, '\0', sizeof(cmp));
+	ut_asserteq(2, blk_read(blk, 0, 2, cmp));
+	ut_asserteq_str("this is a test", cmp);
+	ut_asserteq_str("", cmp + 512);
+
 	ut_assertok(usb_stop());
 
 	return 0;
-- 
2.37.3.998.g577e59143f-goog


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

* [PATCH 16/45] dm: blk: mmc: Tidy up some Makefile rules for SPL
  2022-09-25 15:02 [PATCH 00/45] vbe: Implement the full firmware flow Simon Glass
                   ` (14 preceding siblings ...)
  2022-09-25 15:02 ` [PATCH 15/45] dm: usb: Update the test to cover reading and writing Simon Glass
@ 2022-09-25 15:02 ` Simon Glass
  2022-09-25 15:02 ` [PATCH 17/45] dm: mmc: Allow sandbox emulator to build without writes Simon Glass
                   ` (28 subsequent siblings)
  44 siblings, 0 replies; 72+ messages in thread
From: Simon Glass @ 2022-09-25 15:02 UTC (permalink / raw)
  To: U-Boot Mailing List
  Cc: Tom Rini, Simon Glass, Andrew Scull, Heinrich Schuchardt,
	Jaehoon Chung, Marek Vasut, Mark Kettenis, Pavel Herrmann,
	Peng Fan, Ye Li

Use the correct SPL_TPL_ variable so that these features can be enabled in
TPL and VPL as needed.

Note that the default for TPL is y since some boards boot via MMC, so
this addds 137 bytes on rockchip firefly-rk3288 for example.

Other boards which enable BLK in TPL are:

   chromebook_coral
   chromebook_samus_tpl
   sandbox_vpl

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 drivers/Makefile       | 1 +
 drivers/block/Makefile | 2 +-
 drivers/mmc/Makefile   | 2 +-
 3 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/drivers/Makefile b/drivers/Makefile
index 9d9f69a3c9a..41cef4178dd 100644
--- a/drivers/Makefile
+++ b/drivers/Makefile
@@ -1,5 +1,6 @@
 # SPDX-License-Identifier: GPL-2.0+
 
+obj-$(CONFIG_$(SPL_TPL_)BLK) += block/
 obj-$(CONFIG_$(SPL_TPL_)BOOTCOUNT_LIMIT) += bootcount/
 obj-$(CONFIG_$(SPL_TPL_)BUTTON) += button/
 obj-$(CONFIG_$(SPL_TPL_)CACHE) += cache/
diff --git a/drivers/block/Makefile b/drivers/block/Makefile
index f48d3e12140..19d9317c825 100644
--- a/drivers/block/Makefile
+++ b/drivers/block/Makefile
@@ -3,7 +3,7 @@
 # (C) Copyright 2000-2007
 # Wolfgang Denk, DENX Software Engineering, wd@denx.de.
 
-obj-$(CONFIG_$(SPL_)BLK) += blk-uclass.o
+obj-$(CONFIG_$(SPL_TPL_)BLK) += blk-uclass.o
 
 ifndef CONFIG_$(SPL_)BLK
 obj-$(CONFIG_SPL_LEGACY_BLOCK) += blk_legacy.o
diff --git a/drivers/mmc/Makefile b/drivers/mmc/Makefile
index 5d5104bbf1d..3a664c2ebbb 100644
--- a/drivers/mmc/Makefile
+++ b/drivers/mmc/Makefile
@@ -10,7 +10,7 @@ ifdef CONFIG_$(SPL_TPL_)DM_MMC
 obj-$(CONFIG_$(SPL_TPL_)BOOTSTD) += mmc_bootdev.o
 endif
 
-obj-$(CONFIG_$(SPL_)MMC_WRITE) += mmc_write.o
+obj-$(CONFIG_$(SPL_TPL_)MMC_WRITE) += mmc_write.o
 obj-$(CONFIG_MMC_PWRSEQ) += mmc-pwrseq.o
 obj-$(CONFIG_MMC_SDHCI_ADMA_HELPERS) += sdhci-adma.o
 
-- 
2.37.3.998.g577e59143f-goog


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

* [PATCH 17/45] dm: mmc: Allow sandbox emulator to build without writes
  2022-09-25 15:02 [PATCH 00/45] vbe: Implement the full firmware flow Simon Glass
                   ` (15 preceding siblings ...)
  2022-09-25 15:02 ` [PATCH 16/45] dm: blk: mmc: Tidy up some Makefile rules for SPL Simon Glass
@ 2022-09-25 15:02 ` Simon Glass
  2022-09-25 15:02 ` [PATCH 18/45] sandbox: Drop message about writing sandbox state Simon Glass
                   ` (27 subsequent siblings)
  44 siblings, 0 replies; 72+ messages in thread
From: Simon Glass @ 2022-09-25 15:02 UTC (permalink / raw)
  To: U-Boot Mailing List
  Cc: Tom Rini, Simon Glass, Jaehoon Chung, Marek Vasut,
	Pavel Herrmann, Peng Fan

When MMC_WRITE is disabled this driver produced a build error. Fix this.

Also update a comment while we are here.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 drivers/mmc/sandbox_mmc.c | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/drivers/mmc/sandbox_mmc.c b/drivers/mmc/sandbox_mmc.c
index 451fe4a4e5a..ba79a5565c3 100644
--- a/drivers/mmc/sandbox_mmc.c
+++ b/drivers/mmc/sandbox_mmc.c
@@ -23,6 +23,8 @@ struct sandbox_mmc_plat {
 #define MMC_CMULT		8 /* 8 because the card is high-capacity */
 #define MMC_BL_LEN_SHIFT	10
 #define MMC_BL_LEN		BIT(MMC_BL_LEN_SHIFT)
+
+/* Granularity of priv->csize - this is 1MB */
 #define SIZE_MULTIPLE		((1 << (MMC_CMULT + 2)) * MMC_BL_LEN)
 
 struct sandbox_mmc_priv {
@@ -41,7 +43,6 @@ static int sandbox_mmc_send_cmd(struct udevice *dev, struct mmc_cmd *cmd,
 				struct mmc_data *data)
 {
 	struct sandbox_mmc_priv *priv = dev_get_priv(dev);
-	struct mmc *mmc = mmc_get_mmc_dev(dev);
 	static ulong erase_start, erase_end;
 
 	switch (cmd->cmdidx) {
@@ -95,10 +96,15 @@ static int sandbox_mmc_send_cmd(struct udevice *dev, struct mmc_cmd *cmd,
 	case SD_CMD_ERASE_WR_BLK_END:
 		erase_end = cmd->cmdarg;
 		break;
-	case MMC_CMD_ERASE:
+#if CONFIG_IS_ENABLED(MMC_WRITE)
+	case MMC_CMD_ERASE: {
+		struct mmc *mmc = mmc_get_mmc_dev(dev);
+
 		memset(&priv->buf[erase_start * mmc->write_bl_len], '\0',
 		       (erase_end - erase_start + 1) * mmc->write_bl_len);
 		break;
+	}
+#endif
 	case SD_CMD_APP_SEND_OP_COND:
 		cmd->response[0] = OCR_BUSY | OCR_HCS;
 		cmd->response[1] = 0;
-- 
2.37.3.998.g577e59143f-goog


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

* [PATCH 18/45] sandbox: Drop message about writing sandbox state
  2022-09-25 15:02 [PATCH 00/45] vbe: Implement the full firmware flow Simon Glass
                   ` (16 preceding siblings ...)
  2022-09-25 15:02 ` [PATCH 17/45] dm: mmc: Allow sandbox emulator to build without writes Simon Glass
@ 2022-09-25 15:02 ` Simon Glass
  2022-09-26  6:31   ` Heinrich Schuchardt
  2022-09-25 15:02 ` [PATCH 19/45] sandbox: Generalise SPL booting Simon Glass
                   ` (26 subsequent siblings)
  44 siblings, 1 reply; 72+ messages in thread
From: Simon Glass @ 2022-09-25 15:02 UTC (permalink / raw)
  To: U-Boot Mailing List; +Cc: Tom Rini, Simon Glass, Heinrich Schuchardt

This happens every time sandbox moves to the next phase so is not very
interesting. Display the message only when debugging.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 arch/sandbox/cpu/state.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/sandbox/cpu/state.c b/arch/sandbox/cpu/state.c
index fcc4a337e59..a681e472ab6 100644
--- a/arch/sandbox/cpu/state.c
+++ b/arch/sandbox/cpu/state.c
@@ -470,7 +470,7 @@ int state_uninit(void)
 	int err;
 
 	if (state->write_ram_buf || state->write_state)
-		log_info("Writing sandbox state\n");
+		log_debug("Writing sandbox state\n");
 	state = &main_state;
 
 	/* Finish the bloblist, so that it is correct before writing memory */
-- 
2.37.3.998.g577e59143f-goog


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

* [PATCH 19/45] sandbox: Generalise SPL booting
  2022-09-25 15:02 [PATCH 00/45] vbe: Implement the full firmware flow Simon Glass
                   ` (17 preceding siblings ...)
  2022-09-25 15:02 ` [PATCH 18/45] sandbox: Drop message about writing sandbox state Simon Glass
@ 2022-09-25 15:02 ` Simon Glass
  2022-09-25 15:02 ` [PATCH 20/45] sandbox: Add a way to specify the sandbox executable Simon Glass
                   ` (25 subsequent siblings)
  44 siblings, 0 replies; 72+ messages in thread
From: Simon Glass @ 2022-09-25 15:02 UTC (permalink / raw)
  To: U-Boot Mailing List
  Cc: Tom Rini, Simon Glass, Alper Nebi Yasak, Heiko Schocher,
	Heiko Thiery, Heinrich Schuchardt, Lokesh Vutla, Michael Walle,
	Pali Rohár, Ricardo Salveti, Vaishnav Achath

At present sandbox only supports jumping to a file, to get to the next
U-Boot phase. We want to support other methods, so update the code to
use an enum for the method.

Use board_boot_order() to set the order, so we can add more options.
Also add the MMC methods into the BOOT_DEVICE enum so that booting
from MMC can be supported.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 arch/sandbox/cpu/spl.c         | 33 +++++++++++++++++++++------------
 arch/sandbox/include/asm/spl.h |  3 +++
 include/spl.h                  |  9 +++++++++
 3 files changed, 33 insertions(+), 12 deletions(-)

diff --git a/arch/sandbox/cpu/spl.c b/arch/sandbox/cpu/spl.c
index 1d49a9bd102..6d4981152bb 100644
--- a/arch/sandbox/cpu/spl.c
+++ b/arch/sandbox/cpu/spl.c
@@ -49,13 +49,13 @@ void board_init_f(ulong flag)
 	preloader_console_init();
 }
 
-u32 spl_boot_device(void)
+void board_boot_order(u32 *spl_boot_list)
 {
-	return BOOT_DEVICE_BOARD;
+	spl_boot_list[0] = BOOT_DEVICE_BOARD;
 }
 
-static int spl_board_load_image(struct spl_image_info *spl_image,
-				struct spl_boot_device *bootdev)
+static int spl_board_load_file(struct spl_image_info *spl_image,
+			       struct spl_boot_device *bootdev)
 {
 	char fname[256];
 	int ret;
@@ -74,10 +74,11 @@ static int spl_board_load_image(struct spl_image_info *spl_image,
 	if (!spl_image->arg)
 		return log_msg_ret("exec", -ENOMEM);
 	strcpy(spl_image->arg, fname);
+	spl_image->flags = SPL_SANDBOXF_ARG_IS_FNAME;
 
 	return 0;
 }
-SPL_LOAD_IMAGE_METHOD("sandbox", 9, BOOT_DEVICE_BOARD, spl_board_load_image);
+SPL_LOAD_IMAGE_METHOD("sandbox", 9, BOOT_DEVICE_BOARD, spl_board_load_file);
 
 void spl_board_init(void)
 {
@@ -96,13 +97,21 @@ void spl_board_init(void)
 
 void __noreturn jump_to_image_no_args(struct spl_image_info *spl_image)
 {
-	const char *fname = spl_image->arg;
-
-	if (fname) {
-		os_fd_restore();
-		os_spl_to_uboot(fname);
-	} else {
-		printf("No filename provided for U-Boot\n");
+	switch (spl_image->flags) {
+	case SPL_SANDBOXF_ARG_IS_FNAME: {
+		const char *fname = spl_image->arg;
+
+		if (fname) {
+			os_fd_restore();
+			os_spl_to_uboot(fname);
+		} else {
+			log_err("No filename provided for U-Boot\n");
+		}
+		break;
+	}
+	default:
+		log_err("Invalid flags\n");
+		break;
 	}
 	hang();
 }
diff --git a/arch/sandbox/include/asm/spl.h b/arch/sandbox/include/asm/spl.h
index bf5a585622b..312aef72086 100644
--- a/arch/sandbox/include/asm/spl.h
+++ b/arch/sandbox/include/asm/spl.h
@@ -7,6 +7,9 @@
 #define __asm_spl_h
 
 enum {
+	BOOT_DEVICE_MMC1,
+	BOOT_DEVICE_MMC2,
+	BOOT_DEVICE_MMC2_2,
 	BOOT_DEVICE_BOARD,
 };
 
diff --git a/include/spl.h b/include/spl.h
index a89830d24fd..e711fb13654 100644
--- a/include/spl.h
+++ b/include/spl.h
@@ -228,6 +228,15 @@ static inline const char *spl_phase_prefix(enum u_boot_phase phase)
 # define SPL_TPL_PROMPT	""
 #endif
 
+/**
+ * enum spl_sandbox_flags - flags for sandbox's use of spl_image_info->flags
+ *
+ * @SPL_SANDBOXF_ARG_IS_FNAME: arg is the filename to jump to (default)
+ */
+enum spl_sandbox_flags {
+	SPL_SANDBOXF_ARG_IS_FNAME = 0,
+};
+
 struct spl_image_info {
 	const char *name;
 	u8 os;
-- 
2.37.3.998.g577e59143f-goog


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

* [PATCH 20/45] sandbox: Add a way to specify the sandbox executable
  2022-09-25 15:02 [PATCH 00/45] vbe: Implement the full firmware flow Simon Glass
                   ` (18 preceding siblings ...)
  2022-09-25 15:02 ` [PATCH 19/45] sandbox: Generalise SPL booting Simon Glass
@ 2022-09-25 15:02 ` Simon Glass
  2022-09-26  6:49   ` Heinrich Schuchardt
  2022-09-25 15:02 ` [PATCH 21/45] bootstd: Add a way to set up a bootflow Simon Glass
                   ` (24 subsequent siblings)
  44 siblings, 1 reply; 72+ messages in thread
From: Simon Glass @ 2022-09-25 15:02 UTC (permalink / raw)
  To: U-Boot Mailing List
  Cc: Tom Rini, Simon Glass, Andrew Scull, Heinrich Schuchardt

At present the sandbox executable is assumed to be arg[0] but this only
works for a single jump (e.g. from SPL to U-Boot). Add a new arg to solve
this issue, along with a detailed comment.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 arch/sandbox/cpu/start.c         | 30 ++++++++++++++++++++++++++++++
 arch/sandbox/include/asm/state.h |  3 ++-
 2 files changed, 32 insertions(+), 1 deletion(-)

diff --git a/arch/sandbox/cpu/start.c b/arch/sandbox/cpu/start.c
index 642be164a39..622df41f54c 100644
--- a/arch/sandbox/cpu/start.c
+++ b/arch/sandbox/cpu/start.c
@@ -244,6 +244,36 @@ static int sandbox_cmdline_cb_jump(struct sandbox_state *state,
 }
 SANDBOX_CMDLINE_OPT_SHORT(jump, 'j', 1, "Jumped from previous U-Boot");
 
+static int sandbox_cmdline_cb_program(struct sandbox_state *state,
+				      const char *arg)
+{
+	/*
+	 * Record the program name to use when jumping to future phases. This
+	 * is the original executable which holds all the phases. We need to
+	 * use this instead of argv[0] since each phase is started by
+	 * extracting a particular binary from the full program, then running
+	 * it. Therefore in that binary, argv[0] contains only the
+	 * current-phase executable.
+	 *
+	 * For example, sandbox TPL may be started using image file:
+	 *
+	 *     ./image.bin
+	 *
+	 * but then TPL needs to run VPL, which it does by extracting the VPL
+	 * image from the image.bin file.
+	 *
+	 *    ./temp-vpl
+	 *
+	 * When VPL runs it needs access to the original image.bin so it can
+	 * extract the next phase (SPL). This works if we use '-f image.bin'
+	 * when starting the original image.bin file.
+	 */
+	state->prog_fname = arg;
+
+	return 0;
+}
+SANDBOX_CMDLINE_OPT_SHORT(program, 'p', 1, "U-Boot program name");
+
 static int sandbox_cmdline_cb_memory(struct sandbox_state *state,
 				     const char *arg)
 {
diff --git a/arch/sandbox/include/asm/state.h b/arch/sandbox/include/asm/state.h
index fd42daad51c..49ea483d332 100644
--- a/arch/sandbox/include/asm/state.h
+++ b/arch/sandbox/include/asm/state.h
@@ -71,7 +71,8 @@ struct sandbox_state {
 	const char *parse_err;		/* Error to report from parsing */
 	int argc;			/* Program arguments */
 	char **argv;			/* Command line arguments */
-	const char *jumped_fname;	/* Jumped from previous U_Boot */
+	const char *jumped_fname;	/* Jumped from previous U-Boot */
+	const char *prog_fname;		/* U-Boot executable filename */
 	uint8_t *ram_buf;		/* Emulated RAM buffer */
 	unsigned long ram_size;		/* Size of RAM buffer */
 	const char *ram_buf_fname;	/* Filename to use for RAM buffer */
-- 
2.37.3.998.g577e59143f-goog


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

* [PATCH 21/45] bootstd: Add a way to set up a bootflow
  2022-09-25 15:02 [PATCH 00/45] vbe: Implement the full firmware flow Simon Glass
                   ` (19 preceding siblings ...)
  2022-09-25 15:02 ` [PATCH 20/45] sandbox: Add a way to specify the sandbox executable Simon Glass
@ 2022-09-25 15:02 ` Simon Glass
  2022-09-25 15:02 ` [PATCH 22/45] image: Move comment for fit_conf_find_compat() Simon Glass
                   ` (23 subsequent siblings)
  44 siblings, 0 replies; 72+ messages in thread
From: Simon Glass @ 2022-09-25 15:02 UTC (permalink / raw)
  To: U-Boot Mailing List; +Cc: Tom Rini, Simon Glass

Add a function to init a bootflow, to reduce code duplication.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 boot/bootdev-uclass.c  |  5 +----
 boot/bootflow.c        |  9 +++++++++
 boot/bootmeth-uclass.c |  5 +----
 include/bootflow.h     | 12 ++++++++++++
 4 files changed, 23 insertions(+), 8 deletions(-)

diff --git a/boot/bootdev-uclass.c b/boot/bootdev-uclass.c
index 13ac69eb392..4bde5631c34 100644
--- a/boot/bootdev-uclass.c
+++ b/boot/bootdev-uclass.c
@@ -440,10 +440,7 @@ int bootdev_get_bootflow(struct udevice *dev, struct bootflow_iter *iter,
 
 	if (!ops->get_bootflow)
 		return -ENOSYS;
-	memset(bflow, '\0', sizeof(*bflow));
-	bflow->dev = dev;
-	bflow->method = iter->method;
-	bflow->state = BOOTFLOWST_BASE;
+	bootflow_init(bflow, dev, iter->method);
 
 	return ops->get_bootflow(dev, iter, bflow);
 }
diff --git a/boot/bootflow.c b/boot/bootflow.c
index 5d94a27ff84..f9ad4099244 100644
--- a/boot/bootflow.c
+++ b/boot/bootflow.c
@@ -339,6 +339,15 @@ int bootflow_scan_next(struct bootflow_iter *iter, struct bootflow *bflow)
 	} while (1);
 }
 
+void bootflow_init(struct bootflow *bflow, struct udevice *bootdev,
+		   struct udevice *meth)
+{
+	memset(bflow, '\0', sizeof(*bflow));
+	bflow->dev = bootdev;
+	bflow->method = meth;
+	bflow->state = BOOTFLOWST_BASE;
+}
+
 void bootflow_free(struct bootflow *bflow)
 {
 	free(bflow->name);
diff --git a/boot/bootmeth-uclass.c b/boot/bootmeth-uclass.c
index 2d7652edeab..25552dd96f6 100644
--- a/boot/bootmeth-uclass.c
+++ b/boot/bootmeth-uclass.c
@@ -77,10 +77,7 @@ int bootmeth_get_bootflow(struct udevice *dev, struct bootflow *bflow)
 
 	if (!ops->read_bootflow)
 		return -ENOSYS;
-	memset(bflow, '\0', sizeof(*bflow));
-	bflow->dev = NULL;
-	bflow->method = dev;
-	bflow->state = BOOTFLOWST_BASE;
+	bootflow_init(bflow, NULL, dev);
 
 	return ops->read_bootflow(dev, bflow);
 }
diff --git a/include/bootflow.h b/include/bootflow.h
index 6aa3d1fff8d..32dbbbbe261 100644
--- a/include/bootflow.h
+++ b/include/bootflow.h
@@ -144,6 +144,18 @@ struct bootflow_iter {
 	bool doing_global;
 };
 
+/**
+ * bootflow_init() - Set up a bootflow struct
+ *
+ * The bootflow is zeroed and set to state BOOTFLOWST_BASE
+ *
+ * @bflow: Struct to set up
+ * @bootdev: Bootdev to use
+ * @meth: Bootmeth to use
+ */
+void bootflow_init(struct bootflow *bflow, struct udevice *bootdev,
+		   struct udevice *meth);
+
 /**
  * bootflow_iter_init() - Reset a bootflow iterator
  *
-- 
2.37.3.998.g577e59143f-goog


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

* [PATCH 22/45] image: Move comment for fit_conf_find_compat()
  2022-09-25 15:02 [PATCH 00/45] vbe: Implement the full firmware flow Simon Glass
                   ` (20 preceding siblings ...)
  2022-09-25 15:02 ` [PATCH 21/45] bootstd: Add a way to set up a bootflow Simon Glass
@ 2022-09-25 15:02 ` Simon Glass
  2022-09-26  6:54   ` Heinrich Schuchardt
  2022-09-25 15:02 ` [PATCH 23/45] test: Report skippped tests Simon Glass
                   ` (22 subsequent siblings)
  44 siblings, 1 reply; 72+ messages in thread
From: Simon Glass @ 2022-09-25 15:02 UTC (permalink / raw)
  To: U-Boot Mailing List
  Cc: Tom Rini, Simon Glass, Alexandru Gagniuc, Andre Przywara,
	Chia-Wei Wang, Heinrich Schuchardt, Jan Kiszka, Joe Hershberger,
	Joel Stanley, Marek Vasut, Philippe Reynes, Sean Anderson

Move this comment to the header file, where the APIs should be defined.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 boot/image-fit.c | 43 -------------------------------------------
 include/image.h  | 43 +++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 43 insertions(+), 43 deletions(-)

diff --git a/boot/image-fit.c b/boot/image-fit.c
index a7acd762272..94074515258 100644
--- a/boot/image-fit.c
+++ b/boot/image-fit.c
@@ -1687,49 +1687,6 @@ int fit_check_format(const void *fit, ulong size)
 	return 0;
 }
 
-/**
- * fit_conf_find_compat
- * @fit: pointer to the FIT format image header
- * @fdt: pointer to the device tree to compare against
- *
- * fit_conf_find_compat() attempts to find the configuration whose fdt is the
- * most compatible with the passed in device tree.
- *
- * Example:
- *
- * / o image-tree
- *   |-o images
- *   | |-o fdt-1
- *   | |-o fdt-2
- *   |
- *   |-o configurations
- *     |-o config-1
- *     | |-fdt = fdt-1
- *     |
- *     |-o config-2
- *       |-fdt = fdt-2
- *
- * / o U-Boot fdt
- *   |-compatible = "foo,bar", "bim,bam"
- *
- * / o kernel fdt1
- *   |-compatible = "foo,bar",
- *
- * / o kernel fdt2
- *   |-compatible = "bim,bam", "baz,biz"
- *
- * Configuration 1 would be picked because the first string in U-Boot's
- * compatible list, "foo,bar", matches a compatible string in the root of fdt1.
- * "bim,bam" in fdt2 matches the second string which isn't as good as fdt1.
- *
- * As an optimization, the compatible property from the FDT's root node can be
- * copied into the configuration node in the FIT image. This is required to
- * match configurations with compressed FDTs.
- *
- * returns:
- *     offset to the configuration to use if one was found
- *     -1 otherwise
- */
 int fit_conf_find_compat(const void *fit, const void *fdt)
 {
 	int ndepth = 0;
diff --git a/include/image.h b/include/image.h
index b336cfa0842..ca1c6c5b3c2 100644
--- a/include/image.h
+++ b/include/image.h
@@ -1136,6 +1136,49 @@ int fit_image_check_comp(const void *fit, int noffset, uint8_t comp);
  */
 int fit_check_format(const void *fit, ulong size);
 
+/**
+ * fit_conf_find_compat
+ * @fit: pointer to the FIT format image header
+ * @fdt: pointer to the device tree to compare against
+ *
+ * fit_conf_find_compat() attempts to find the configuration whose fdt is the
+ * most compatible with the passed in device tree.
+ *
+ * Example:
+ *
+ * / o image-tree
+ *   |-o images
+ *   | |-o fdt-1
+ *   | |-o fdt-2
+ *   |
+ *   |-o configurations
+ *     |-o config-1
+ *     | |-fdt = fdt-1
+ *     |
+ *     |-o config-2
+ *       |-fdt = fdt-2
+ *
+ * / o U-Boot fdt
+ *   |-compatible = "foo,bar", "bim,bam"
+ *
+ * / o kernel fdt1
+ *   |-compatible = "foo,bar",
+ *
+ * / o kernel fdt2
+ *   |-compatible = "bim,bam", "baz,biz"
+ *
+ * Configuration 1 would be picked because the first string in U-Boot's
+ * compatible list, "foo,bar", matches a compatible string in the root of fdt1.
+ * "bim,bam" in fdt2 matches the second string which isn't as good as fdt1.
+ *
+ * As an optimization, the compatible property from the FDT's root node can be
+ * copied into the configuration node in the FIT image. This is required to
+ * match configurations with compressed FDTs.
+ *
+ * returns:
+ *     offset to the configuration to use if one was found
+ *     -1 otherwise
+ */
 int fit_conf_find_compat(const void *fit, const void *fdt);
 
 /**
-- 
2.37.3.998.g577e59143f-goog


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

* [PATCH 23/45] test: Report skippped tests
  2022-09-25 15:02 [PATCH 00/45] vbe: Implement the full firmware flow Simon Glass
                   ` (21 preceding siblings ...)
  2022-09-25 15:02 ` [PATCH 22/45] image: Move comment for fit_conf_find_compat() Simon Glass
@ 2022-09-25 15:02 ` Simon Glass
  2022-09-25 15:02 ` [PATCH 24/45] test: Update tests to use the skip feature Simon Glass
                   ` (21 subsequent siblings)
  44 siblings, 0 replies; 72+ messages in thread
From: Simon Glass @ 2022-09-25 15:02 UTC (permalink / raw)
  To: U-Boot Mailing List
  Cc: Tom Rini, Simon Glass, Heinrich Schuchardt, Stefan Roese

At present it is possible for a test to skip itself by returning -EAGAIN
but this is not recorded.

Keep a track of skipped tests and report the total at the end.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 include/test/test.h |  2 ++
 test/test-main.c    | 23 ++++++++++++++++++++---
 2 files changed, 22 insertions(+), 3 deletions(-)

diff --git a/include/test/test.h b/include/test/test.h
index 25d5bdb201b..011668795b9 100644
--- a/include/test/test.h
+++ b/include/test/test.h
@@ -13,6 +13,7 @@
  * struct unit_test_state - Entire state of test system
  *
  * @fail_count: Number of tests that failed
+ * @skip_count: Number of tests that were skipped
  * @start: Store the starting mallinfo when doing leak test
  * @of_live: true to use livetree if available, false to use flattree
  * @of_root: Record of the livetree root node (used for setting up tests)
@@ -32,6 +33,7 @@
  */
 struct unit_test_state {
 	int fail_count;
+	int skip_count;
 	struct mallinfo start;
 	struct device_node *of_root;
 	bool of_live;
diff --git a/test/test-main.c b/test/test-main.c
index 3062d7f8d95..8d1a4c4a818 100644
--- a/test/test-main.c
+++ b/test/test-main.c
@@ -365,6 +365,19 @@ static int test_post_run(struct unit_test_state *uts, struct unit_test *test)
 	return 0;
 }
 
+/**
+ * skip_test() - Handle skipping a test
+ *
+ * @uts: Test state to update
+ * @return -EAGAIN (always)
+ */
+static int skip_test(struct unit_test_state *uts)
+{
+	uts->skip_count++;
+
+	return -EAGAIN;
+}
+
 /**
  * ut_run_test() - Run a single test
  *
@@ -395,11 +408,13 @@ static int ut_run_test(struct unit_test_state *uts, struct unit_test *test,
 
 	ret = test_pre_run(uts, test);
 	if (ret == -EAGAIN)
-		return -EAGAIN;
+		return skip_test(uts);
 	if (ret)
 		return ret;
 
-	test->func(uts);
+	ret = test->func(uts);
+	if (ret == -EAGAIN)
+		skip_test(uts);
 
 	ret = test_post_run(uts, test);
 	if (ret)
@@ -433,7 +448,7 @@ static int ut_run_test_live_flat(struct unit_test_state *uts,
 	int runs;
 
 	if ((test->flags & UT_TESTF_OTHER_FDT) && !IS_ENABLED(CONFIG_SANDBOX))
-		return -EAGAIN;
+		return skip_test(uts);
 
 	/* Run with the live tree if possible */
 	runs = 0;
@@ -567,6 +582,8 @@ int ut_run_list(const char *category, const char *prefix,
 		os_free(uts.other_fdt);
 	}
 
+	if (uts.skip_count)
+		printf("Skipped: %d, ", uts.skip_count);
 	if (ret == -ENOENT)
 		printf("Test '%s' not found\n", select_name);
 	else
-- 
2.37.3.998.g577e59143f-goog


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

* [PATCH 24/45] test: Update tests to use the skip feature
  2022-09-25 15:02 [PATCH 00/45] vbe: Implement the full firmware flow Simon Glass
                   ` (22 preceding siblings ...)
  2022-09-25 15:02 ` [PATCH 23/45] test: Report skippped tests Simon Glass
@ 2022-09-25 15:02 ` Simon Glass
  2022-09-25 15:02 ` [PATCH 25/45] test: Support tests which can only be run manually Simon Glass
                   ` (20 subsequent siblings)
  44 siblings, 0 replies; 72+ messages in thread
From: Simon Glass @ 2022-09-25 15:02 UTC (permalink / raw)
  To: U-Boot Mailing List; +Cc: Tom Rini, Simon Glass

Some tests currently return 0 when they want to be skipped. Update them to
return -EAGAIN instead, so they are counted as skipped.

A few tests are in two parts, with the latter part being skipped in
certain situations. Split these into two and use the correct condition for
the second part.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 test/boot/bootflow.c  |  4 ++--
 test/boot/bootmeth.c  | 13 ++++++++++---
 test/boot/vbe_fixup.c |  2 +-
 test/dm/of_platdata.c |  2 +-
 test/dm/ofnode.c      | 25 +++++++++++++++----------
 5 files changed, 29 insertions(+), 17 deletions(-)

diff --git a/test/boot/bootflow.c b/test/boot/bootflow.c
index 1e8ea754bcd..e1e07082105 100644
--- a/test/boot/bootflow.c
+++ b/test/boot/bootflow.c
@@ -330,7 +330,7 @@ static int bootflow_system(struct unit_test_state *uts)
 	struct udevice *dev;
 
 	if (!IS_ENABLED(CONFIG_CMD_BOOTEFI_BOOTMGR))
-		return 0;
+		return -EAGAIN;
 	ut_assertok(uclass_get_device_by_name(UCLASS_BOOTMETH, "efi_mgr",
 					      &dev));
 	sandbox_set_fake_efi_mgr_dev(dev, true);
@@ -395,7 +395,7 @@ BOOTSTD_TEST(bootflow_iter_disable, UT_TESTF_DM | UT_TESTF_SCAN_FDT);
 static int bootflow_scan_glob_bootmeth(struct unit_test_state *uts)
 {
 	if (!IS_ENABLED(CONFIG_BOOTMETH_GLOBAL))
-		return 0;
+		return -EAGAIN;
 
 	ut_assertok(bootstd_test_drop_bootdev_order(uts));
 
diff --git a/test/boot/bootmeth.c b/test/boot/bootmeth.c
index fb627313396..f2d3a5f3cc4 100644
--- a/test/boot/bootmeth.c
+++ b/test/boot/bootmeth.c
@@ -103,10 +103,17 @@ static int bootmeth_cmd_order(struct unit_test_state *uts)
 	ut_asserteq_str("efi syslinux", env_get("bootmeths"));
 	ut_assert_console_end();
 
-	/* Try with global bootmeths */
+	return 0;
+}
+BOOTSTD_TEST(bootmeth_cmd_order, UT_TESTF_DM | UT_TESTF_SCAN_FDT);
+
+/* Check 'bootmeth order' command with global bootmeths */
+static int bootmeth_cmd_order_glob(struct unit_test_state *uts)
+{
 	if (!IS_ENABLED(CONFIG_BOOTMETH_GLOBAL))
-		return 0;
+		return -EAGAIN;
 
+	console_record_reset_enable();
 	ut_assertok(run_command("bootmeth order \"efi firmware0\"", 0));
 	ut_assert_console_end();
 	ut_assertok(run_command("bootmeth list", 0));
@@ -122,7 +129,7 @@ static int bootmeth_cmd_order(struct unit_test_state *uts)
 
 	return 0;
 }
-BOOTSTD_TEST(bootmeth_cmd_order, UT_TESTF_DM | UT_TESTF_SCAN_FDT);
+BOOTSTD_TEST(bootmeth_cmd_order_glob, UT_TESTF_DM | UT_TESTF_SCAN_FDT);
 
 /* Check 'bootmeths' env var */
 static int bootmeth_env(struct unit_test_state *uts)
diff --git a/test/boot/vbe_fixup.c b/test/boot/vbe_fixup.c
index 1b488e25ab6..7f0f809499a 100644
--- a/test/boot/vbe_fixup.c
+++ b/test/boot/vbe_fixup.c
@@ -26,7 +26,7 @@ static int vbe_test_fixup(struct unit_test_state *uts)
 	 * flat tree, since device tree fix-ups do not yet support live tree.
 	 */
 	if (!working_fdt)
-		return 0;
+		return -EAGAIN;
 
 	tree = oftree_from_fdt(working_fdt);
 	ut_assert(oftree_valid(tree));
diff --git a/test/dm/of_platdata.c b/test/dm/of_platdata.c
index 7af798b8d35..a241c427936 100644
--- a/test/dm/of_platdata.c
+++ b/test/dm/of_platdata.c
@@ -150,7 +150,7 @@ static int dm_test_of_plat_dev(struct unit_test_state *uts)
 
 	/* Skip this test if there is no platform data */
 	if (!CONFIG_IS_ENABLED(OF_PLATDATA_DRIVER_RT))
-		return 0;
+		return -EAGAIN;
 
 	/* Record the indexes that are found */
 	memset(found, '\0', sizeof(found));
diff --git a/test/dm/ofnode.c b/test/dm/ofnode.c
index 41811ec3bb5..8077affabb7 100644
--- a/test/dm/ofnode.c
+++ b/test/dm/ofnode.c
@@ -753,10 +753,7 @@ static int make_ofnode_fdt(struct unit_test_state *uts, void *fdt, int size,
 
 static int dm_test_ofnode_root(struct unit_test_state *uts)
 {
-	char fdt[256];
-	oftree tree;
 	ofnode node;
-	int ret;
 
 	/* Check that aliases work on the control FDT */
 	node = ofnode_get_aliases_node("ethernet3");
@@ -765,14 +762,22 @@ static int dm_test_ofnode_root(struct unit_test_state *uts)
 
 	ut_assert(!oftree_valid(oftree_null()));
 
-	ut_assertok(make_ofnode_fdt(uts, fdt, sizeof(fdt), 0));
-	ret = get_oftree(uts, fdt, &tree);
+	return 0;
+}
+DM_TEST(dm_test_ofnode_root, UT_TESTF_SCAN_FDT);
 
-	/* skip the rest of this test if multiple FDTs are not supported */
-	if (ret == -EOVERFLOW)
-		return 0;
+static int dm_test_ofnode_root_mult(struct unit_test_state *uts)
+{
+	char fdt[256];
+	oftree tree;
+	ofnode node;
 
-	ut_assertok(ret);
+	/* skip this test if multiple FDTs are not supported */
+	if (!IS_ENABLED(CONFIG_OFNODE_MULTI_TREE))
+		return -EAGAIN;
+
+	ut_assertok(make_ofnode_fdt(uts, fdt, sizeof(fdt), 0));
+	ut_assertok(get_oftree(uts, fdt, &tree));
 	ut_assert(oftree_valid(tree));
 
 	/* Make sure they don't work on this new tree */
@@ -791,7 +796,7 @@ static int dm_test_ofnode_root(struct unit_test_state *uts)
 
 	return 0;
 }
-DM_TEST(dm_test_ofnode_root, UT_TESTF_SCAN_FDT);
+DM_TEST(dm_test_ofnode_root_mult, UT_TESTF_SCAN_FDT);
 
 static int dm_test_ofnode_livetree_writing(struct unit_test_state *uts)
 {
-- 
2.37.3.998.g577e59143f-goog


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

* [PATCH 25/45] test: Support tests which can only be run manually
  2022-09-25 15:02 [PATCH 00/45] vbe: Implement the full firmware flow Simon Glass
                   ` (23 preceding siblings ...)
  2022-09-25 15:02 ` [PATCH 24/45] test: Update tests to use the skip feature Simon Glass
@ 2022-09-25 15:02 ` Simon Glass
  2022-09-26  6:56   ` Heinrich Schuchardt
  2022-09-25 15:02 ` [PATCH 26/45] image: Add the concept of a phase to FIT Simon Glass
                   ` (19 subsequent siblings)
  44 siblings, 1 reply; 72+ messages in thread
From: Simon Glass @ 2022-09-25 15:02 UTC (permalink / raw)
  To: U-Boot Mailing List
  Cc: Tom Rini, Simon Glass, Heinrich Schuchardt, Rui Miguel Silva,
	Stefan Roese

At present we normally write tests either in Python or in C. But most
Python tests end up doing a lot of checks which would be better done in C.
Checks done in C are orders of magnitude faster and it is possible to get
full access to U-Boot's internal workings, rather than just relying on
the command line.

The model is to have a Python test set up some things and then use C code
(in a unit test) to check that they were done correctly. But we don't want
those checks to happen as part of normal test running, since each C unit
tests is dependent on the associate Python tests, so cannot run without
it.

To acheive this, add a new UT_TESTF_MANUAL flag to use with the C 'check'
tests, so that they can be skipped by default when the 'ut' command is
used. Require that tests have a name ending with '_norun', so that pytest
knows to skip them.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 arch/sandbox/cpu/spl.c        |  2 +-
 doc/develop/tests_writing.rst | 22 ++++++++++++++++++++++
 include/test/test.h           |  8 ++++++++
 include/test/ut.h             |  4 +++-
 test/cmd_ut.c                 | 16 +++++++++++++---
 test/dm/test-dm.c             |  2 +-
 test/py/conftest.py           |  8 +++++++-
 test/test-main.c              | 27 ++++++++++++++++++++++++++-
 8 files changed, 81 insertions(+), 8 deletions(-)

diff --git a/arch/sandbox/cpu/spl.c b/arch/sandbox/cpu/spl.c
index 6d4981152bb..2678370481a 100644
--- a/arch/sandbox/cpu/spl.c
+++ b/arch/sandbox/cpu/spl.c
@@ -90,7 +90,7 @@ void spl_board_init(void)
 		int ret;
 
 		ret = ut_run_list("spl", NULL, tests, count,
-				  state->select_unittests, 1);
+				  state->select_unittests, 1, false);
 		/* continue execution into U-Boot */
 	}
 }
diff --git a/doc/develop/tests_writing.rst b/doc/develop/tests_writing.rst
index 1ddf7a353a7..d3ffc550300 100644
--- a/doc/develop/tests_writing.rst
+++ b/doc/develop/tests_writing.rst
@@ -74,6 +74,28 @@ NOT rely on running with sandbox, but instead should function correctly on any
 board supported by U-Boot.
 
 
+Mixing Python and C
+-------------------
+
+The best of both worlds is sometimes to have a Python test set things up and
+perform some operations, with a 'checker' C unit test doing the checks
+afterwards. This can be achieved with these steps:
+
+- Add the `UT_TESTF_MANUAL` flag to the checker test so that the `ut` command
+  does not run it by default
+- Add a `_norun` suffix to the name so that pytest knows to skip it too
+
+In your Python test use the `-f` flag to the `ut` command to force the checker
+test to run it, e.g.::
+
+   # Do the Python part
+   host load ...
+   bootm ...
+
+   # Run the checker to make sure that everything worked
+   ut -f bootstd vbe_test_fixup_norun
+
+
 How slow are Python tests?
 --------------------------
 
diff --git a/include/test/test.h b/include/test/test.h
index 011668795b9..1c3ed638d24 100644
--- a/include/test/test.h
+++ b/include/test/test.h
@@ -22,6 +22,7 @@
  * @force_fail_alloc: Force all memory allocs to fail
  * @skip_post_probe: Skip uclass post-probe processing
  * @runs_per_test: Number of times to run each test (typically 1)
+ * @force_run: true to run tests marked with the UT_TESTF_MANUAL flag
  * @fdt_chksum: crc8 of the device tree contents
  * @fdt_copy: Copy of the device tree
  * @fdt_size: Size of the device-tree copy
@@ -42,6 +43,7 @@ struct unit_test_state {
 	int force_fail_alloc;
 	int skip_post_probe;
 	int runs_per_test;
+	bool force_run;
 	uint fdt_chksum;
 	void *fdt_copy;
 	uint fdt_size;
@@ -63,6 +65,12 @@ enum {
 	/* do extra driver model init and uninit */
 	UT_TESTF_DM		= BIT(6),
 	UT_TESTF_OTHER_FDT	= BIT(7),	/* read in other device tree */
+	/*
+	 * Only run if explicitly requested with 'ut -f <suite> <test>'. The
+	 * test name must end in "_norun" so that pytest detects this also,
+	 * since it cannot access the flags.
+	 */
+	UT_TESTF_MANUAL		= BIT(8),
 };
 
 /**
diff --git a/include/test/ut.h b/include/test/ut.h
index f7217aa8ac5..e0e618b58c2 100644
--- a/include/test/ut.h
+++ b/include/test/ut.h
@@ -409,9 +409,11 @@ void test_set_state(struct unit_test_state *uts);
  * @select_name: Name of a single test to run (from the list provided). If NULL
  *	then all tests are run
  * @runs_per_test: Number of times to run each test (typically 1)
+ * @force_run: Run tests that are marked as manual-only (UT_TESTF_MANUAL)
  * Return: 0 if all tests passed, -1 if any failed
  */
 int ut_run_list(const char *name, const char *prefix, struct unit_test *tests,
-		int count, const char *select_name, int runs_per_test);
+		int count, const char *select_name, int runs_per_test,
+		bool force_run);
 
 #endif
diff --git a/test/cmd_ut.c b/test/cmd_ut.c
index 11c219b48ac..3ea692fd31f 100644
--- a/test/cmd_ut.c
+++ b/test/cmd_ut.c
@@ -19,16 +19,26 @@ int cmd_ut_category(const char *name, const char *prefix,
 		    int argc, char *const argv[])
 {
 	int runs_per_text = 1;
+	bool force_run = false;
 	int ret;
 
-	if (argc > 1 && !strncmp("-r", argv[1], 2)) {
-		runs_per_text = dectoul(argv[1] + 2, NULL);
+	while (argc > 1 && *argv[1] == '-') {
+		const char *str = argv[1];
+
+		switch (str[1]) {
+		case 'r':
+			runs_per_text = dectoul(str + 2, NULL);
+			break;
+		case 'f':
+			force_run = true;
+			break;
+		}
 		argv++;
 		argc++;
 	}
 
 	ret = ut_run_list(name, prefix, tests, n_ents,
-			  argc > 1 ? argv[1] : NULL, runs_per_text);
+			  argc > 1 ? argv[1] : NULL, runs_per_text, force_run);
 
 	return ret ? CMD_RET_FAILURE : 0;
 }
diff --git a/test/dm/test-dm.c b/test/dm/test-dm.c
index eb3581333b9..66cc2bc6cce 100644
--- a/test/dm/test-dm.c
+++ b/test/dm/test-dm.c
@@ -36,7 +36,7 @@ static int dm_test_run(const char *test_name, int runs_per_text)
 	int ret;
 
 	ret = ut_run_list("driver model", "dm_test_", tests, n_ents, test_name,
-			  runs_per_text);
+			  runs_per_text, false);
 
 	return ret ? CMD_RET_FAILURE : 0;
 }
diff --git a/test/py/conftest.py b/test/py/conftest.py
index 304e93164aa..fc9dd3a83f8 100644
--- a/test/py/conftest.py
+++ b/test/py/conftest.py
@@ -289,7 +289,13 @@ def generate_ut_subtest(metafunc, fixture_name, sym_path):
         m = re_ut_test_list.search(l)
         if not m:
             continue
-        vals.append(m.group(1) + ' ' + m.group(2))
+        suite, name = m.groups()
+
+        # Tests marked with _norun should only be run manually using 'ut -f'
+        if name.endswith('_norun'):
+            continue
+
+        vals.append(f'{suite} {name}')
 
     ids = ['ut_' + s.replace(' ', '_') for s in vals]
     metafunc.parametrize(fixture_name, vals, ids=ids)
diff --git a/test/test-main.c b/test/test-main.c
index 8d1a4c4a818..d5c08625836 100644
--- a/test/test-main.c
+++ b/test/test-main.c
@@ -517,6 +517,30 @@ static int ut_run_tests(struct unit_test_state *uts, const char *prefix,
 
 		if (!test_matches(prefix, test_name, select_name))
 			continue;
+
+		if (test->flags & UT_TESTF_MANUAL) {
+			int len;
+
+			/*
+			 * manual tests must have a name ending "_norun" as this
+			 * is how pytest knows to skip them. See
+			 * generate_ut_subtest() for this check.
+			 */
+			len = strlen(test_name);
+			if (len < 6 || strcmp(test_name + len - 6, "_norun")) {
+				printf("Test %s is manual so must have a name ending in _norun\n",
+				       test_name);
+				uts->fail_count++;
+				return -EBADF;
+			}
+			if (!uts->force_run) {
+				if (select_name) {
+					printf("Test %s skipped as it is manual (use -f to run it)\n",
+					       test_name);
+				}
+				continue;
+			}
+		}
 		old_fail_count = uts->fail_count;
 		for (i = 0; i < uts->runs_per_test; i++)
 			ret = ut_run_test_live_flat(uts, test, select_name);
@@ -538,7 +562,7 @@ static int ut_run_tests(struct unit_test_state *uts, const char *prefix,
 
 int ut_run_list(const char *category, const char *prefix,
 		struct unit_test *tests, int count, const char *select_name,
-		int runs_per_test)
+		int runs_per_test, bool force_run)
 {
 	struct unit_test_state uts = { .fail_count = 0 };
 	bool has_dm_tests = false;
@@ -572,6 +596,7 @@ int ut_run_list(const char *category, const char *prefix,
 		}
 		memcpy(uts.fdt_copy, gd->fdt_blob, uts.fdt_size);
 	}
+	uts.force_run = force_run;
 	ret = ut_run_tests(&uts, prefix, tests, count, select_name);
 
 	/* Best efforts only...ignore errors */
-- 
2.37.3.998.g577e59143f-goog


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

* [PATCH 26/45] image: Add the concept of a phase to FIT
  2022-09-25 15:02 [PATCH 00/45] vbe: Implement the full firmware flow Simon Glass
                   ` (24 preceding siblings ...)
  2022-09-25 15:02 ` [PATCH 25/45] test: Support tests which can only be run manually Simon Glass
@ 2022-09-25 15:02 ` Simon Glass
  2022-09-25 15:02 ` [PATCH 27/45] image: Allow loading a FIT config for a particular phase Simon Glass
                   ` (18 subsequent siblings)
  44 siblings, 0 replies; 72+ messages in thread
From: Simon Glass @ 2022-09-25 15:02 UTC (permalink / raw)
  To: U-Boot Mailing List
  Cc: Tom Rini, Simon Glass, Alexandru Gagniuc, Andre Przywara,
	Heinrich Schuchardt, Jan Kiszka, Joe Hershberger, Marek Vasut,
	Philippe Reynes, Samuel Holland, Thomas Huth

We want to be able to mark a configuration as relataed to a phase, so we
can easily load all the images for SPL or for U-Boot proper.

Add this to the FIT specification, along with some access functions.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 boot/image.c       | 18 +++++++++++
 include/image.h    | 74 ++++++++++++++++++++++++++++++++++++++++++++--
 test/boot/Makefile |  1 +
 test/boot/image.c  | 36 ++++++++++++++++++++++
 4 files changed, 127 insertions(+), 2 deletions(-)
 create mode 100644 test/boot/image.c

diff --git a/boot/image.c b/boot/image.c
index 9f95b3260a8..b33d1dfc6b3 100644
--- a/boot/image.c
+++ b/boot/image.c
@@ -194,6 +194,13 @@ static const table_entry_t uimage_comp[] = {
 	{	-1,		"",		"",			},
 };
 
+static const table_entry_t uimage_phase[] = {
+	{	IH_PHASE_NONE,	"none",		"any",		},
+	{	IH_PHASE_U_BOOT, "u-boot",	"U-Boot phase",	},
+	{	IH_PHASE_SPL,	"spl",		"SPL Phase",	},
+	{	-1,		"",		"",		},
+};
+
 struct table_info {
 	const char *desc;
 	int count;
@@ -215,6 +222,7 @@ static const struct table_info table_info[IH_COUNT] = {
 	{ "compression", IH_COMP_COUNT, uimage_comp },
 	{ "operating system", IH_OS_COUNT, uimage_os },
 	{ "image type", IH_TYPE_COUNT, uimage_type },
+	{ "phase", IH_PHASE_COUNT, uimage_phase },
 };
 
 /*****************************************************************************/
@@ -656,6 +664,11 @@ const char *genimg_get_comp_name(uint8_t comp)
 					comp));
 }
 
+const char *genimg_get_phase_name(enum image_phase_t phase)
+{
+	return get_table_entry_name(uimage_phase, "Unknown Phase", phase);
+}
+
 static const char *genimg_get_short_name(const table_entry_t *table, int val)
 {
 	table = get_table_entry(table, val);
@@ -731,3 +744,8 @@ int genimg_get_comp_id(const char *name)
 {
 	return (get_table_entry_id(uimage_comp, "Compression", name));
 }
+
+int genimg_get_phase_id(const char *name)
+{
+	return get_table_entry_id(uimage_phase, "Phase", name);
+}
diff --git a/include/image.h b/include/image.h
index ca1c6c5b3c2..09821dce642 100644
--- a/include/image.h
+++ b/include/image.h
@@ -58,6 +58,7 @@ enum ih_category {
 	IH_COMP,
 	IH_OS,
 	IH_TYPE,
+	IH_PHASE,
 
 	IH_COUNT,
 };
@@ -184,8 +185,7 @@ enum {
  * New IDs *MUST* be appended at the end of the list and *NEVER*
  * inserted for backward compatibility.
  */
-
-enum {
+enum image_type_t {
 	IH_TYPE_INVALID		= 0,	/* Invalid Image		*/
 	IH_TYPE_STANDALONE,		/* Standalone Program		*/
 	IH_TYPE_KERNEL,			/* OS Kernel Image		*/
@@ -252,6 +252,59 @@ enum {
 	IH_COMP_COUNT,
 };
 
+/**
+ * Phases - images intended for particular U-Boot phases (SPL, etc.)
+ *
+ * @IH_PHASE_NONE: No phase information, can be loaded by any phase
+ * @IH_PHASE_U_BOOT: Only for U-Boot proper
+ * @IH_PHASE_SPL: Only for SPL
+ */
+enum image_phase_t {
+	IH_PHASE_NONE		= 0,
+	IH_PHASE_U_BOOT,
+	IH_PHASE_SPL,
+
+	IH_PHASE_COUNT,
+};
+
+#define IMAGE_PHASE_SHIFT	8
+#define IMAGE_PHASE_MASK	(0xff << IMAGE_PHASE_SHIFT)
+#define IMAGE_TYPE_MASK		0xff
+
+/**
+ * image_ph() - build a composite value combining and type
+ *
+ * @phase: Image phase value
+ * @type: Image type value
+ * Returns: Composite value containing both
+ */
+static inline int image_ph(enum image_phase_t phase, enum image_type_t type)
+{
+	return type | (phase << IMAGE_PHASE_SHIFT);
+}
+
+/**
+ * image_ph_phase() - obtain the phase from a composite phase/type value
+ *
+ * @image_ph_type: Composite value to convert
+ * Returns: Phase value taken from the composite value
+ */
+static inline int image_ph_phase(int image_ph_type)
+{
+	return (image_ph_type & IMAGE_PHASE_MASK) >> IMAGE_PHASE_SHIFT;
+}
+
+/**
+ * image_ph_type() - obtain the type from a composite phase/type value
+ *
+ * @image_ph_type: Composite value to convert
+ * Returns: Type value taken from the composite value
+ */
+static inline int image_ph_type(int image_ph_type)
+{
+	return image_ph_type & IMAGE_TYPE_MASK;
+}
+
 #define LZ4F_MAGIC	0x184D2204	/* LZ4 Magic Number		*/
 #define IH_MAGIC	0x27051956	/* Image Magic Number		*/
 #define IH_NMLEN		32	/* Image Name Length		*/
@@ -437,6 +490,22 @@ const char *genimg_get_os_short_name(uint8_t comp);
 
 const char *genimg_get_arch_name(uint8_t arch);
 
+/**
+ * genimg_get_phase_name() - Get the friendly name for a phase
+ *
+ * @phase: Phase value to look up
+ * Returns: Friendly name for the phase (e.g. "U-Boot phase")
+ */
+const char *genimg_get_phase_name(enum image_phase_t phase);
+
+/**
+ * genimg_get_phase_id() - Convert a phase name to an ID
+ *
+ * @name: Name to convert (e.g. "u-boot")
+ * Returns: ID for that phase (e.g. IH_PHASE_U_BOOT)
+ */
+int genimg_get_phase_id(const char *name);
+
 /**
  * genimg_get_arch_short_name() - get the short name for an architecture
  *
@@ -955,6 +1024,7 @@ int booti_setup(ulong image, ulong *relocated_addr, ulong *size,
 #define FIT_FPGA_PROP		"fpga"
 #define FIT_FIRMWARE_PROP	"firmware"
 #define FIT_STANDALONE_PROP	"standalone"
+#define FIT_PHASE_PROP		"phase"
 
 #define FIT_MAX_HASH_LEN	HASH_MAX_DIGEST_SIZE
 
diff --git a/test/boot/Makefile b/test/boot/Makefile
index 5bb3f889759..d724629d3b0 100644
--- a/test/boot/Makefile
+++ b/test/boot/Makefile
@@ -3,6 +3,7 @@
 # Copyright 2021 Google LLC
 
 obj-$(CONFIG_BOOTSTD) += bootdev.o bootstd_common.o bootflow.o bootmeth.o
+obj-$(CONFIG_FIT) += image.o
 
 ifdef CONFIG_OF_LIVE
 obj-$(CONFIG_BOOTMETH_VBE_SIMPLE) += vbe_simple.o
diff --git a/test/boot/image.c b/test/boot/image.c
new file mode 100644
index 00000000000..8f696416d3d
--- /dev/null
+++ b/test/boot/image.c
@@ -0,0 +1,36 @@
+// SPDX-License-Identifier: GPL-2.0+
+/*
+ * Test for image handling
+ *
+ * Copyright 2022 Google LLC
+ * Written by Simon Glass <sjg@chromium.org>
+ */
+
+#include <common.h>
+#include <image.h>
+#include <test/suites.h>
+#include <test/ut.h>
+#include "bootstd_common.h"
+
+/* Test of image phase */
+static int test_image_phase(struct unit_test_state *uts)
+{
+	int val;
+
+	ut_asserteq_str("U-Boot phase", genimg_get_phase_name(IH_PHASE_U_BOOT));
+	ut_asserteq_str("SPL Phase", genimg_get_phase_name(IH_PHASE_SPL));
+	ut_asserteq_str("any", genimg_get_phase_name(IH_PHASE_NONE));
+	ut_asserteq_str("Unknown Phase", genimg_get_phase_name(-1));
+
+	ut_asserteq(IH_PHASE_U_BOOT, genimg_get_phase_id("u-boot"));
+	ut_asserteq(IH_PHASE_SPL, genimg_get_phase_id("spl"));
+	ut_asserteq(IH_PHASE_NONE, genimg_get_phase_id("none"));
+	ut_asserteq(-1, genimg_get_phase_id("fred"));
+
+	val = image_ph(IH_PHASE_SPL, IH_TYPE_FIRMWARE);
+	ut_asserteq(IH_PHASE_SPL, image_ph_phase(val));
+	ut_asserteq(IH_TYPE_FIRMWARE, image_ph_type(val));
+
+	return 0;
+}
+BOOTSTD_TEST(test_image_phase, 0);
-- 
2.37.3.998.g577e59143f-goog


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

* [PATCH 27/45] image: Allow loading a FIT config for a particular phase
  2022-09-25 15:02 [PATCH 00/45] vbe: Implement the full firmware flow Simon Glass
                   ` (25 preceding siblings ...)
  2022-09-25 15:02 ` [PATCH 26/45] image: Add the concept of a phase to FIT Simon Glass
@ 2022-09-25 15:02 ` Simon Glass
  2022-09-25 15:02 ` [PATCH 28/45] image: Correct strncpy() warning with image_set_name() Simon Glass
                   ` (17 subsequent siblings)
  44 siblings, 0 replies; 72+ messages in thread
From: Simon Glass @ 2022-09-25 15:02 UTC (permalink / raw)
  To: U-Boot Mailing List
  Cc: Tom Rini, Simon Glass, Alexandru Gagniuc, Andre Przywara,
	Heinrich Schuchardt, Jan Kiszka, Joe Hershberger, Joel Stanley,
	Marek Vasut, Philippe Reynes, Sean Anderson

Add support for filtering out FIT configs by phase. Rather than adding yet
another argument to this already overloaded function, use a composite
value, where the phase is only added in if needed.

Tests for this come in a little later, as part of the updated VPL test.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 boot/image-fit.c | 67 ++++++++++++++++++++++++++++++++++++++++++++----
 include/image.h  | 12 ++++++---
 2 files changed, 70 insertions(+), 9 deletions(-)

diff --git a/boot/image-fit.c b/boot/image-fit.c
index 94074515258..c325116b82f 100644
--- a/boot/image-fit.c
+++ b/boot/image-fit.c
@@ -803,6 +803,40 @@ int fit_image_get_comp(const void *fit, int noffset, uint8_t *comp)
 	return 0;
 }
 
+/**
+ * fit_image_get_phase() - get the phase for a configuration node
+ * @fit: pointer to the FIT format image header
+ * @offset: configuration-node offset
+ * @phasep: returns the phase
+ *
+ * Finds the phase property in a given configuration node. If the property is
+ * found, its (string) value is translated to the numeric id which is returned
+ * to the caller.
+ *
+ * Returns: 0 on success, -ENOENT if missing, -EINVAL for invalid value
+ */
+int fit_image_get_phase(const void *fit, int offset, enum image_phase_t *phasep)
+{
+	const void *data;
+	int len, ret;
+
+	/* Get phase name from property data */
+	data = fdt_getprop(fit, offset, FIT_PHASE_PROP, &len);
+	if (!data) {
+		fit_get_debug(fit, offset, FIT_PHASE_PROP, len);
+		*phasep = 0;
+		return -ENOENT;
+	}
+
+	/* Translate phase name to id */
+	ret = genimg_get_phase_id(data);
+	if (ret < 0)
+		return ret;
+	*phasep = ret;
+
+	return 0;
+}
+
 static int fit_image_get_address(const void *fit, int noffset, char *name,
 			  ulong *load)
 {
@@ -1687,7 +1721,8 @@ int fit_check_format(const void *fit, ulong size)
 	return 0;
 }
 
-int fit_conf_find_compat(const void *fit, const void *fdt)
+int fit_conf_find_compat(const void *fit, const void *fdt,
+			 enum image_phase_t phase)
 {
 	int ndepth = 0;
 	int noffset, confs_noffset, images_noffset;
@@ -1726,6 +1761,27 @@ int fit_conf_find_compat(const void *fit, const void *fdt)
 		if (ndepth > 1)
 			continue;
 
+		if (phase) {
+			enum image_phase_t conf_phase;
+			int ret;
+
+			ret = fit_image_get_phase(fit, noffset, &conf_phase);
+			if (ret == -EINVAL) {
+				log_debug("Invalid phase in node '%s'\n",
+					  fdt_get_name(fit, noffset, NULL));
+				continue;
+			} else if (ret) {
+				log_debug("Missing phase in node '%s'\n",
+					  fdt_get_name(fit, noffset, NULL));
+				continue;
+			} else if (conf_phase != phase) {
+				log_debug("Phase %s mismatch in node '%s'\n",
+					  genimg_get_phase_name(conf_phase),
+					  fdt_get_name(fit, noffset, NULL));
+				continue;
+			}
+		}
+
 		/* If there's a compat property in the config node, use that. */
 		if (fdt_getprop(fit, noffset, "compatible", NULL)) {
 			fdt = fit;		  /* search in FIT image */
@@ -1954,9 +2010,10 @@ static const char *fit_get_image_type_property(int type)
 
 int fit_image_load(struct bootm_headers *images, ulong addr,
 		   const char **fit_unamep, const char **fit_uname_configp,
-		   int arch, int image_type, int bootstage_id,
+		   int arch, int ph_type, int bootstage_id,
 		   enum fit_load_op load_op, ulong *datap, ulong *lenp)
 {
+	int image_type = image_ph_type(ph_type);
 	int cfg_noffset, noffset;
 	const char *fit_uname;
 	const char *fit_uname_config;
@@ -2000,10 +2057,10 @@ int fit_image_load(struct bootm_headers *images, ulong addr,
 		 */
 		bootstage_mark(bootstage_id + BOOTSTAGE_SUB_NO_UNIT_NAME);
 		if (IS_ENABLED(CONFIG_FIT_BEST_MATCH) && !fit_uname_config) {
-			cfg_noffset = fit_conf_find_compat(fit, gd_fdt_blob());
+			cfg_noffset = fit_conf_find_compat(fit, gd_fdt_blob(),
+						image_ph_phase(ph_type));
 		} else {
-			cfg_noffset = fit_conf_get_node(fit,
-							fit_uname_config);
+			cfg_noffset = fit_conf_get_node(fit, fit_uname_config);
 		}
 		if (cfg_noffset < 0) {
 			puts("Could not find configuration node\n");
diff --git a/include/image.h b/include/image.h
index 09821dce642..2aef364e836 100644
--- a/include/image.h
+++ b/include/image.h
@@ -691,9 +691,10 @@ int boot_get_fdt_fit(struct bootm_headers *images, ulong addr,
  *			name (e.g. "conf-1") or NULL to use the default. On
  *			exit points to the selected configuration name.
  * @param arch		Expected architecture (IH_ARCH_...)
- * @param image_type	Required image type (IH_TYPE_...). If this is
+ * @param image_ph_type	Required image type (IH_TYPE_...). If this is
  *			IH_TYPE_KERNEL then we allow IH_TYPE_KERNEL_NOLOAD
- *			also.
+ *			also. If a phase is required, this is included also,
+ *			see image_phase_and_type()
  * @param bootstage_id	ID of starting bootstage to use for progress updates.
  *			This will be added to the BOOTSTAGE_SUB values when
  *			calling bootstage_mark()
@@ -704,7 +705,7 @@ int boot_get_fdt_fit(struct bootm_headers *images, ulong addr,
  */
 int fit_image_load(struct bootm_headers *images, ulong addr,
 		   const char **fit_unamep, const char **fit_uname_configp,
-		   int arch, int image_type, int bootstage_id,
+		   int arch, int image_ph_type, int bootstage_id,
 		   enum fit_load_op load_op, ulong *datap, ulong *lenp);
 
 /**
@@ -1210,6 +1211,8 @@ int fit_check_format(const void *fit, ulong size);
  * fit_conf_find_compat
  * @fit: pointer to the FIT format image header
  * @fdt: pointer to the device tree to compare against
+ * @phase: U-Boot phase to look for. If not IH_PHASE_NONE then only
+ * configurations with the given phase will be considered
  *
  * fit_conf_find_compat() attempts to find the configuration whose fdt is the
  * most compatible with the passed in device tree.
@@ -1249,7 +1252,8 @@ int fit_check_format(const void *fit, ulong size);
  *     offset to the configuration to use if one was found
  *     -1 otherwise
  */
-int fit_conf_find_compat(const void *fit, const void *fdt);
+int fit_conf_find_compat(const void *fit, const void *fdt,
+			 enum image_phase_t phase);
 
 /**
  * fit_conf_get_node - get node offset for configuration of a given unit name
-- 
2.37.3.998.g577e59143f-goog


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

* [PATCH 28/45] image: Correct strncpy() warning with image_set_name()
  2022-09-25 15:02 [PATCH 00/45] vbe: Implement the full firmware flow Simon Glass
                   ` (26 preceding siblings ...)
  2022-09-25 15:02 ` [PATCH 27/45] image: Allow loading a FIT config for a particular phase Simon Glass
@ 2022-09-25 15:02 ` Simon Glass
  2022-09-25 15:02 ` [PATCH 29/45] vbe: Rename vbe_fixup to vbe_request Simon Glass
                   ` (16 subsequent siblings)
  44 siblings, 0 replies; 72+ messages in thread
From: Simon Glass @ 2022-09-25 15:02 UTC (permalink / raw)
  To: U-Boot Mailing List
  Cc: Tom Rini, Simon Glass, Alexandru Gagniuc, Andre Przywara,
	Heinrich Schuchardt, Jan Kiszka, Joe Hershberger, Marek Vasut,
	Philippe Reynes

gcc 12 seems to warn on strncpy() as a matter of course. Rewrite the code
a different way to do the same thing, to avoid the warning.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 include/image.h | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/include/image.h b/include/image.h
index 2aef364e836..feb8e90c2e8 100644
--- a/include/image.h
+++ b/include/image.h
@@ -853,7 +853,13 @@ image_set_hdr_b(comp)		/* image_set_comp */
 
 static inline void image_set_name(struct legacy_img_hdr *hdr, const char *name)
 {
-	strncpy(image_get_name(hdr), name, IH_NMLEN);
+	/*
+	 * This is equivalent to: strncpy(image_get_name(hdr), name, IH_NMLEN);
+	 *
+	 * Use the tortured code below to avoid a warning with gcc 12. We do not
+	 * want to include a nul terminator if the name is of length IH_NMLEN
+	 */
+	memcpy(image_get_name(hdr), name, strnlen(name, IH_NMLEN));
 }
 
 int image_check_hcrc(const struct legacy_img_hdr *hdr);
-- 
2.37.3.998.g577e59143f-goog


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

* [PATCH 29/45] vbe: Rename vbe_fixup to vbe_request
  2022-09-25 15:02 [PATCH 00/45] vbe: Implement the full firmware flow Simon Glass
                   ` (27 preceding siblings ...)
  2022-09-25 15:02 ` [PATCH 28/45] image: Correct strncpy() warning with image_set_name() Simon Glass
@ 2022-09-25 15:02 ` Simon Glass
  2022-09-25 15:02 ` [PATCH 30/45] vbe: Use a warning for a failed requests Simon Glass
                   ` (15 subsequent siblings)
  44 siblings, 0 replies; 72+ messages in thread
From: Simon Glass @ 2022-09-25 15:02 UTC (permalink / raw)
  To: U-Boot Mailing List; +Cc: Tom Rini, Simon Glass, Artem Lapkin, John Keeping

The vbe_fixup file handles device tree fixups, but these are called OS
requests in VBE. Rename the file to reflect its wider purpose.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 boot/Makefile                       | 2 +-
 boot/{vbe_fixup.c => vbe_request.c} | 2 +-
 test/py/tests/test_event_dump.py    | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)
 rename boot/{vbe_fixup.c => vbe_request.c} (98%)

diff --git a/boot/Makefile b/boot/Makefile
index dd45d786f8c..19d628d748a 100644
--- a/boot/Makefile
+++ b/boot/Makefile
@@ -47,5 +47,5 @@ ifdef CONFIG_SPL_BUILD
 obj-$(CONFIG_SPL_LOAD_FIT) += common_fit.o
 endif
 
-obj-$(CONFIG_$(SPL_TPL_)BOOTMETH_VBE) += vbe.o vbe_fixup.o
+obj-$(CONFIG_$(SPL_TPL_)BOOTMETH_VBE) += vbe.o vbe_request.o
 obj-$(CONFIG_$(SPL_TPL_)BOOTMETH_VBE_SIMPLE) += vbe_simple.o
diff --git a/boot/vbe_fixup.c b/boot/vbe_request.c
similarity index 98%
rename from boot/vbe_fixup.c
rename to boot/vbe_request.c
index 8cdff6972b1..935505dd421 100644
--- a/boot/vbe_fixup.c
+++ b/boot/vbe_request.c
@@ -1,6 +1,6 @@
 // SPDX-License-Identifier: GPL-2.0
 /*
- * Verified Boot for Embedded (VBE) device tree fixup functions
+ * Verified Boot for Embedded (VBE) OS request (device tree fixup) functions
  *
  * Copyright 2022 Google LLC
  * Written by Simon Glass <sjg@chromium.org>
diff --git a/test/py/tests/test_event_dump.py b/test/py/tests/test_event_dump.py
index e63c25df537..46d6384eb3a 100644
--- a/test/py/tests/test_event_dump.py
+++ b/test/py/tests/test_event_dump.py
@@ -16,7 +16,7 @@ def test_event_dump(u_boot_console):
     out = util.run_and_log(cons, ['scripts/event_dump.py', sandbox])
     expect = '''.*Event type            Id                              Source location
 --------------------  ------------------------------  ------------------------------
-EVT_FT_FIXUP          bootmeth_vbe_ft_fixup           .*boot/vbe_fixup.c:.*
+EVT_FT_FIXUP          bootmeth_vbe_ft_fixup           .*boot/vbe_request.c:.*
 EVT_FT_FIXUP          bootmeth_vbe_simple_ft_fixup    .*boot/vbe_simple.c:.*
 EVT_MISC_INIT_F       sandbox_misc_init_f             .*arch/sandbox/cpu/start.c:'''
     assert re.match(expect, out, re.MULTILINE) is not None
-- 
2.37.3.998.g577e59143f-goog


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

* [PATCH 30/45] vbe: Use a warning for a failed requests
  2022-09-25 15:02 [PATCH 00/45] vbe: Implement the full firmware flow Simon Glass
                   ` (28 preceding siblings ...)
  2022-09-25 15:02 ` [PATCH 29/45] vbe: Rename vbe_fixup to vbe_request Simon Glass
@ 2022-09-25 15:02 ` Simon Glass
  2022-09-25 15:02 ` [PATCH 31/45] spl: Allow multiple loaders of the same type Simon Glass
                   ` (14 subsequent siblings)
  44 siblings, 0 replies; 72+ messages in thread
From: Simon Glass @ 2022-09-25 15:02 UTC (permalink / raw)
  To: U-Boot Mailing List; +Cc: Tom Rini, Simon Glass

Optional requests should present a warning rather than an error. Update
the log call.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 boot/vbe_request.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/boot/vbe_request.c b/boot/vbe_request.c
index 935505dd421..01f7a24d316 100644
--- a/boot/vbe_request.c
+++ b/boot/vbe_request.c
@@ -195,8 +195,8 @@ static int bootmeth_vbe_ft_fixup(void *ctx, struct event *event)
 		ret = vbe_process_request(dest, &result);
 		if (ret) {
 			result.errnum = ret;
-			log_err("Failed to process VBE request %s (err=%d)\n",
-				ofnode_get_name(dest), ret);
+			log_warning("Failed to process VBE request %s (err=%d)\n",
+				    ofnode_get_name(dest), ret);
 			if (*result.err_str) {
 				char *msg = strdup(result.err_str);
 
-- 
2.37.3.998.g577e59143f-goog


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

* [PATCH 31/45] spl: Allow multiple loaders of the same type
  2022-09-25 15:02 [PATCH 00/45] vbe: Implement the full firmware flow Simon Glass
                   ` (29 preceding siblings ...)
  2022-09-25 15:02 ` [PATCH 30/45] vbe: Use a warning for a failed requests Simon Glass
@ 2022-09-25 15:02 ` Simon Glass
  2022-09-30 16:28   ` Tom Rini
  2022-09-25 15:02 ` [PATCH 32/45] sandbox: Support obtaining the next phase from an image Simon Glass
                   ` (13 subsequent siblings)
  44 siblings, 1 reply; 72+ messages in thread
From: Simon Glass @ 2022-09-25 15:02 UTC (permalink / raw)
  To: U-Boot Mailing List
  Cc: Tom Rini, Simon Glass, Alper Nebi Yasak, Marek Behún,
	Pali Rohár, Stefan Roese

At present we only support a single loader of each time. Extra ones are
ignored. This means that only one BOOT_DEVICE_BOARD can be used in the SPL
image.

This is inconvenient since we sometimes want to provide several
board-specific drivers, albeit at different priorties. Add support for
this.

This should have no functional change for existing boards.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 common/spl/spl.c | 55 +++++++++++++++++++++---------------------------
 1 file changed, 24 insertions(+), 31 deletions(-)

diff --git a/common/spl/spl.c b/common/spl/spl.c
index cc982d6a9d1..545cc0c65d8 100644
--- a/common/spl/spl.c
+++ b/common/spl/spl.c
@@ -609,23 +609,6 @@ __weak void board_boot_order(u32 *spl_boot_list)
 	spl_boot_list[0] = spl_boot_device();
 }
 
-static struct spl_image_loader *spl_ll_find_loader(uint boot_device)
-{
-	struct spl_image_loader *drv =
-		ll_entry_start(struct spl_image_loader, spl_image_loader);
-	const int n_ents =
-		ll_entry_count(struct spl_image_loader, spl_image_loader);
-	struct spl_image_loader *entry;
-
-	for (entry = drv; entry != drv + n_ents; entry++) {
-		if (boot_device == entry->boot_device)
-			return entry;
-	}
-
-	/* Not found */
-	return NULL;
-}
-
 __weak int spl_check_board_image(struct spl_image_info *spl_image,
 				 const struct spl_boot_device *bootdev)
 {
@@ -684,6 +667,10 @@ static inline bool spl_show_output(void)
 static int boot_from_devices(struct spl_image_info *spl_image,
 			     u32 spl_boot_list[], int count)
 {
+	struct spl_image_loader *drv =
+		ll_entry_start(struct spl_image_loader, spl_image_loader);
+	const int n_ents =
+		ll_entry_count(struct spl_image_loader, spl_image_loader);
 	int ret = -ENODEV;
 	int i;
 
@@ -693,20 +680,26 @@ static int boot_from_devices(struct spl_image_info *spl_image,
 
 		if (CONFIG_IS_ENABLED(SHOW_ERRORS))
 			ret = -ENXIO;
-		loader = spl_ll_find_loader(bootdev);
-		if (spl_show_output()) {
-			if (loader)
-				printf("Trying to boot from %s\n",
-				       spl_loader_name(loader));
-			else if (CONFIG_IS_ENABLED(SHOW_ERRORS))
-				printf(SPL_TPL_PROMPT
-				       "Unsupported Boot Device %d\n", bootdev);
-			else
-				puts(SPL_TPL_PROMPT "Unsupported Boot Device!\n");
-		}
-		if (loader && !spl_load_image(spl_image, loader)) {
-			spl_image->boot_device = bootdev;
-			return 0;
+		for (loader = drv; loader != drv + n_ents; loader++) {
+			if (bootdev != loader->boot_device)
+				continue;
+			if (spl_show_output()) {
+				if (loader)
+					printf("Trying to boot from %s\n",
+					       spl_loader_name(loader));
+				else if (CONFIG_IS_ENABLED(SHOW_ERRORS)) {
+					printf(SPL_TPL_PROMPT
+					       "Unsupported Boot Device %d\n",
+					       bootdev);
+				} else {
+					puts(SPL_TPL_PROMPT
+					     "Unsupported Boot Device!\n");
+				}
+			}
+			if (loader && !spl_load_image(spl_image, loader)) {
+				spl_image->boot_device = bootdev;
+				return 0;
+			}
 		}
 	}
 
-- 
2.37.3.998.g577e59143f-goog


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

* [PATCH 32/45] sandbox: Support obtaining the next phase from an image
  2022-09-25 15:02 [PATCH 00/45] vbe: Implement the full firmware flow Simon Glass
                   ` (30 preceding siblings ...)
  2022-09-25 15:02 ` [PATCH 31/45] spl: Allow multiple loaders of the same type Simon Glass
@ 2022-09-25 15:02 ` Simon Glass
  2022-09-25 15:02 ` [PATCH 33/45] vbe: Support selecting operations by SPL phase Simon Glass
                   ` (12 subsequent siblings)
  44 siblings, 0 replies; 72+ messages in thread
From: Simon Glass @ 2022-09-25 15:02 UTC (permalink / raw)
  To: U-Boot Mailing List
  Cc: Tom Rini, Simon Glass, Alper Nebi Yasak, Andre Przywara,
	Heiko Schocher, Heiko Thiery, Heinrich Schuchardt, Michael Walle,
	Oleksandr Suvorov, Ricardo Salveti, Vaishnav Achath

At present sandbox runs the next phase from discrete executables, so for
example u-boot-tpl runs u-boot-vpl to get to the next phase.

In some cases the phases are all built into a single firmware image, as is
done for real boards. Add support for this to sandbox.

Make it higher priority so that it takes precedence over the existing
method.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 arch/sandbox/cpu/spl.c | 52 +++++++++++++++++++++++++++++++++++++++++-
 include/spl.h          |  3 +++
 2 files changed, 54 insertions(+), 1 deletion(-)

diff --git a/arch/sandbox/cpu/spl.c b/arch/sandbox/cpu/spl.c
index 2678370481a..75f4601fdfb 100644
--- a/arch/sandbox/cpu/spl.c
+++ b/arch/sandbox/cpu/spl.c
@@ -78,7 +78,48 @@ static int spl_board_load_file(struct spl_image_info *spl_image,
 
 	return 0;
 }
-SPL_LOAD_IMAGE_METHOD("sandbox", 9, BOOT_DEVICE_BOARD, spl_board_load_file);
+SPL_LOAD_IMAGE_METHOD("sandbox_file", 9, BOOT_DEVICE_BOARD,
+		      spl_board_load_file);
+
+static int load_from_image(struct spl_image_info *spl_image,
+			   struct spl_boot_device *bootdev)
+{
+	struct sandbox_state *state = state_get_current();
+	enum u_boot_phase next_phase;
+	const char *fname;
+	ulong pos, size;
+	int full_size;
+	void *buf;
+	int ret;
+
+	if (!IS_ENABLED(CONFIG_SANDBOX_VPL))
+		return -ENOENT;
+
+	next_phase = spl_next_phase();
+	pos = spl_get_image_pos();
+	size = spl_get_image_size();
+	if (pos == BINMAN_SYM_MISSING || size == BINMAN_SYM_MISSING) {
+		log_debug("No image found\n");
+		return -ENOENT;
+	}
+	log_info("Reading from pos %lx size %lx\n", pos, size);
+
+	/*
+	 * Set up spl_image to boot from jump_to_image_no_args(). Allocate this
+	 * outside the RAM buffer (i.e. don't use strdup()).
+	 */
+	fname = state->prog_fname ? state->prog_fname : state->argv[0];
+	ret = os_read_file(fname, &buf, &full_size);
+	if (ret)
+		return log_msg_ret("rd", -ENOMEM);
+	spl_image->flags = SPL_SANDBOXF_ARG_IS_BUF;
+	spl_image->arg = buf;
+	spl_image->offset = pos;
+	spl_image->size = size;
+
+	return 0;
+}
+SPL_LOAD_IMAGE_METHOD("sandbox_image", 7, BOOT_DEVICE_BOARD, load_from_image);
 
 void spl_board_init(void)
 {
@@ -109,6 +150,15 @@ void __noreturn jump_to_image_no_args(struct spl_image_info *spl_image)
 		}
 		break;
 	}
+	case SPL_SANDBOXF_ARG_IS_BUF: {
+		int ret;
+
+		ret = os_jump_to_image(spl_image->arg + spl_image->offset,
+				       spl_image->size);
+		if (ret)
+			log_err("Failed to load image\n");
+		break;
+	}
 	default:
 		log_err("Invalid flags\n");
 		break;
diff --git a/include/spl.h b/include/spl.h
index e711fb13654..e407c7fe55b 100644
--- a/include/spl.h
+++ b/include/spl.h
@@ -232,9 +232,12 @@ static inline const char *spl_phase_prefix(enum u_boot_phase phase)
  * enum spl_sandbox_flags - flags for sandbox's use of spl_image_info->flags
  *
  * @SPL_SANDBOXF_ARG_IS_FNAME: arg is the filename to jump to (default)
+ * @SPL_SANDBOXF_ARG_IS_BUF: arg is the containing image to jump to, @offset is
+ *	the start offset within the image, @size is the size of the image
  */
 enum spl_sandbox_flags {
 	SPL_SANDBOXF_ARG_IS_FNAME = 0,
+	SPL_SANDBOXF_ARG_IS_BUF,
 };
 
 struct spl_image_info {
-- 
2.37.3.998.g577e59143f-goog


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

* [PATCH 33/45] vbe: Support selecting operations by SPL phase
  2022-09-25 15:02 [PATCH 00/45] vbe: Implement the full firmware flow Simon Glass
                   ` (31 preceding siblings ...)
  2022-09-25 15:02 ` [PATCH 32/45] sandbox: Support obtaining the next phase from an image Simon Glass
@ 2022-09-25 15:02 ` Simon Glass
  2022-09-25 15:02 ` [PATCH 34/45] vbe: Support reading the next SPL phase via VBE Simon Glass
                   ` (11 subsequent siblings)
  44 siblings, 0 replies; 72+ messages in thread
From: Simon Glass @ 2022-09-25 15:02 UTC (permalink / raw)
  To: U-Boot Mailing List; +Cc: Tom Rini, Simon Glass

VBE supports booting firmware during the SPL phases, i.e. so that VPL can
start SPL, then SPL can start U-Boot.

It also supports booting an OS, when in U-Boot.

As a first step towards these features, add functions to indicate the
current VBE phase. The firmware selection is done in VPL and the OS
selection is done in U-Boot proper.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 include/vbe.h | 28 ++++++++++++++++++++++++++++
 1 file changed, 28 insertions(+)

diff --git a/include/vbe.h b/include/vbe.h
index b83f6f0c519..ece2697b5dc 100644
--- a/include/vbe.h
+++ b/include/vbe.h
@@ -10,6 +10,34 @@
 #ifndef __VBE_H
 #define __VBE_H
 
+/**
+ * enum vbe_phase_t - current phase of VBE
+ *
+ * VBE operates in two distinct phases. In VPL it has to choose which firmware
+ * to run (SPL, U-Boot, OP-TEE, etc.). It then carries on running until it gets
+ * to U-Boot, where it decides which OS to run
+ *
+ * @VBE_PHASE_FIRMWARE: Selecting the firmware to run
+ * @VBE_PHASE_OS: Selecting the Operating System to run
+ */
+enum vbe_phase_t {
+	VBE_PHASE_FIRMWARE,
+	VBE_PHASE_OS,
+};
+
+/**
+ * vbe_phase() - get current VBE phase
+ *
+ * Returns: Current VBE phase
+ */
+static inline enum vbe_phase_t vbe_phase(void)
+{
+	if (IS_ENABLED(CONFIG_SPL_BUILD))
+		return VBE_PHASE_FIRMWARE;
+
+	return VBE_PHASE_OS;
+}
+
 /**
  * vbe_list() - List the VBE bootmeths
  *
-- 
2.37.3.998.g577e59143f-goog


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

* [PATCH 34/45] vbe: Support reading the next SPL phase via VBE
  2022-09-25 15:02 [PATCH 00/45] vbe: Implement the full firmware flow Simon Glass
                   ` (32 preceding siblings ...)
  2022-09-25 15:02 ` [PATCH 33/45] vbe: Support selecting operations by SPL phase Simon Glass
@ 2022-09-25 15:02 ` Simon Glass
  2022-09-25 15:02 ` [PATCH 35/45] vbe: Move OS implementation into a separate file Simon Glass
                   ` (10 subsequent siblings)
  44 siblings, 0 replies; 72+ messages in thread
From: Simon Glass @ 2022-09-25 15:02 UTC (permalink / raw)
  To: U-Boot Mailing List
  Cc: Tom Rini, Simon Glass, Artem Lapkin, Heinrich Schuchardt,
	John Keeping, Marek Vasut, Michal Simek

Add an SPL loader to obtain the next-phase binary from a FIT provided
by the VBE driver.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 arch/sandbox/cpu/spl.c         |   3 +-
 arch/sandbox/include/asm/spl.h |   1 +
 boot/Makefile                  |   1 +
 boot/vbe_request.c             |   2 +-
 boot/vbe_simple.c              |  46 +++++---
 boot/vbe_simple.h              |  37 +++++++
 boot/vbe_simple_fw.c           | 196 +++++++++++++++++++++++++++++++++
 include/bootstage.h            |   2 +
 8 files changed, 269 insertions(+), 19 deletions(-)
 create mode 100644 boot/vbe_simple.h
 create mode 100644 boot/vbe_simple_fw.c

diff --git a/arch/sandbox/cpu/spl.c b/arch/sandbox/cpu/spl.c
index 75f4601fdfb..0faf34cc00a 100644
--- a/arch/sandbox/cpu/spl.c
+++ b/arch/sandbox/cpu/spl.c
@@ -51,7 +51,8 @@ void board_init_f(ulong flag)
 
 void board_boot_order(u32 *spl_boot_list)
 {
-	spl_boot_list[0] = BOOT_DEVICE_BOARD;
+	spl_boot_list[0] = BOOT_DEVICE_VBE;
+	spl_boot_list[1] = BOOT_DEVICE_BOARD;
 }
 
 static int spl_board_load_file(struct spl_image_info *spl_image,
diff --git a/arch/sandbox/include/asm/spl.h b/arch/sandbox/include/asm/spl.h
index 312aef72086..2f8b5fcfcfe 100644
--- a/arch/sandbox/include/asm/spl.h
+++ b/arch/sandbox/include/asm/spl.h
@@ -11,6 +11,7 @@ enum {
 	BOOT_DEVICE_MMC2,
 	BOOT_DEVICE_MMC2_2,
 	BOOT_DEVICE_BOARD,
+	BOOT_DEVICE_VBE,
 };
 
 /**
diff --git a/boot/Makefile b/boot/Makefile
index 19d628d748a..e5c27900ea7 100644
--- a/boot/Makefile
+++ b/boot/Makefile
@@ -49,3 +49,4 @@ endif
 
 obj-$(CONFIG_$(SPL_TPL_)BOOTMETH_VBE) += vbe.o vbe_request.o
 obj-$(CONFIG_$(SPL_TPL_)BOOTMETH_VBE_SIMPLE) += vbe_simple.o
+obj-$(CONFIG_$(SPL_TPL_)BOOTMETH_VBE_SIMPLE_FW) += vbe_simple_fw.o
diff --git a/boot/vbe_request.c b/boot/vbe_request.c
index 01f7a24d316..9fac85fef82 100644
--- a/boot/vbe_request.c
+++ b/boot/vbe_request.c
@@ -36,7 +36,7 @@ static int handle_random_req(ofnode node, int default_size,
 	u32 size;
 	int ret;
 
-	if (!IS_ENABLED(CONFIG_DM_RNG))
+	if (!CONFIG_IS_ENABLED(DM_RNG))
 		return -ENOTSUPP;
 
 	if (ofnode_read_u32(node, "vbe,size", &size)) {
diff --git a/boot/vbe_simple.c b/boot/vbe_simple.c
index 076b650c25a..1ccd416e4bb 100644
--- a/boot/vbe_simple.c
+++ b/boot/vbe_simple.c
@@ -9,18 +9,19 @@
 #define LOG_CATEGORY LOGC_BOOT
 
 #include <common.h>
-#include <log.h>
-#include <memalign.h>
-#include <part.h>
+#include <bootdev.h>
 #include <bootflow.h>
 #include <bootmeth.h>
 #include <dm.h>
+#include <log.h>
+#include <memalign.h>
 #include <mmc.h>
 #include <vbe.h>
 #include <version_string.h>
 #include <dm/device-internal.h>
 #include <dm/ofnode.h>
 #include <u-boot/crc.h>
+#include "vbe_simple.h"
 
 enum {
 	MAX_VERSION_LEN		= 256,
@@ -37,18 +38,6 @@ enum {
 	NVD_HDR_VER_CUR		= 1,	/* current version */
 };
 
-/** struct simple_priv - information read from the device tree */
-struct simple_priv {
-	u32 area_start;
-	u32 area_size;
-	u32 skip_offset;
-	u32 state_offset;
-	u32 state_size;
-	u32 version_offset;
-	u32 version_size;
-	const char *storage;
-};
-
 /** struct simple_state - state information read from media
  *
  * @fw_version: Firmware version string
@@ -183,15 +172,38 @@ static int vbe_simple_get_state_desc(struct udevice *dev, char *buf,
 
 static int vbe_simple_read_bootflow(struct udevice *dev, struct bootflow *bflow)
 {
-	/* To be implemented */
+	int ret;
+
+	if (vbe_phase() == VBE_PHASE_FIRMWARE) {
+		ret = vbe_simple_read_bootflow_fw(dev, bflow);
+		if (ret)
+			return log_msg_ret("fw", ret);
+		return 0;
+	}
 
 	return -EINVAL;
 }
 
+static int vbe_simple_read_file(struct udevice *dev, struct bootflow *bflow,
+				const char *file_path, ulong addr, ulong *sizep)
+{
+	int ret;
+
+	if (vbe_phase() == VBE_PHASE_OS) {
+		ret = bootmeth_common_read_file(dev, bflow, file_path, addr,
+						sizep);
+		if (ret)
+			return log_msg_ret("os", ret);
+	}
+
+	/* To be implemented */
+	return -EINVAL;
+}
+
 static struct bootmeth_ops bootmeth_vbe_simple_ops = {
 	.get_state_desc	= vbe_simple_get_state_desc,
 	.read_bootflow	= vbe_simple_read_bootflow,
-	.read_file	= bootmeth_common_read_file,
+	.read_file	= vbe_simple_read_file,
 };
 
 int vbe_simple_fixup_node(ofnode node, struct simple_state *state)
diff --git a/boot/vbe_simple.h b/boot/vbe_simple.h
new file mode 100644
index 00000000000..e37a9fae379
--- /dev/null
+++ b/boot/vbe_simple.h
@@ -0,0 +1,37 @@
+/* SPDX-License-Identifier: GPL-2.0 */
+/*
+ * Verified Boot for Embedded (VBE) vbe-simple common file
+ *
+ * Copyright 2022 Google LLC
+ * Written by Simon Glass <sjg@chromium.org>
+ */
+
+#ifndef __VBE_SIMPLE_H
+#define __VBE_SIMPLE_H
+
+/** struct simple_priv - information read from the device tree */
+struct simple_priv {
+	u32 area_start;
+	u32 area_size;
+	u32 skip_offset;
+	u32 state_offset;
+	u32 state_size;
+	u32 version_offset;
+	u32 version_size;
+	const char *storage;
+};
+
+/**
+ * vbe_simple_read_fw_bootflow() - Read a bootflow for firmware
+ *
+ * Locates and loads the firmware image (FIT) needed for the next phase. The FIT
+ * should ideally use external data, to reduce the amount of it that needs to be
+ * read.
+ *
+ * @bdev: bootdev device containing the firmwre
+ * @blow: Place to put the created bootflow, on success
+ * @return 0 if OK, -ve on error
+ */
+int vbe_simple_read_bootflow_fw(struct udevice *dev, struct bootflow *bflow);
+
+#endif /* __VBE_SIMPLE_H */
diff --git a/boot/vbe_simple_fw.c b/boot/vbe_simple_fw.c
new file mode 100644
index 00000000000..fc05e9e2bd1
--- /dev/null
+++ b/boot/vbe_simple_fw.c
@@ -0,0 +1,196 @@
+// SPDX-License-Identifier: GPL-2.0
+/*
+ * Verified Boot for Embedded (VBE) loading firmware phases
+ *
+ * Copyright 2022 Google LLC
+ * Written by Simon Glass <sjg@chromium.org>
+ */
+
+#define LOG_CATEGORY LOGC_BOOT
+
+#include <common.h>
+#include <bootdev.h>
+#include <bootflow.h>
+#include <bootmeth.h>
+#include <bootstage.h>
+#include <dm.h>
+#include <image.h>
+#include <log.h>
+#include <mapmem.h>
+#include <memalign.h>
+#include <mmc.h>
+#include <spl.h>
+#include <vbe.h>
+#include <dm/device-internal.h>
+#include "vbe_simple.h"
+
+/**
+ * vbe_simple_read_bootflow_fw() - Create a bootflow for firmware
+ *
+ * Locates and loads the firmware image (FIT) needed for the next phase. The FIT
+ * should ideally use external data, to reduce the amount of it that needs to be
+ * read.
+ *
+ * @bdev: bootdev device containing the firmwre
+ * @meth: VBE simple bootmeth
+ * @blow: Place to put the created bootflow, on success
+ * @return 0 if OK, -ve on error
+ */
+int vbe_simple_read_bootflow_fw(struct udevice *dev, struct bootflow *bflow)
+{
+	ALLOC_CACHE_ALIGN_BUFFER(u8, sbuf, MMC_MAX_BLOCK_LEN);
+	struct udevice *media = dev_get_parent(bflow->dev);
+	struct udevice *meth = bflow->method;
+	struct simple_priv *priv = dev_get_priv(meth);
+	const char *fit_uname, *fit_uname_config;
+	struct bootm_headers images = {};
+	ulong offset, size, blknum, addr, len, load_addr, num_blks;
+	enum image_phase_t phase;
+	struct blk_desc *desc;
+	struct udevice *blk;
+	int node, ret;
+	void *buf;
+
+	log_debug("media=%s\n", media->name);
+	ret = blk_get_from_parent(media, &blk);
+	if (ret)
+		return log_msg_ret("med", ret);
+	log_debug("blk=%s\n", blk->name);
+	desc = dev_get_uclass_plat(blk);
+
+	offset = priv->area_start + priv->skip_offset;
+
+	/* read in one block to find the FIT size */
+	blknum =  offset / desc->blksz;
+	log_debug("read at %lx, blknum %lx\n", offset, blknum);
+	ret = blk_read(blk, blknum, 1, sbuf);
+	if (ret < 0)
+		return log_msg_ret("rd", ret);
+
+	ret = fdt_check_header(sbuf);
+	if (ret < 0)
+		return log_msg_ret("fdt", -EINVAL);
+	size = fdt_totalsize(sbuf);
+	if (size > priv->area_size)
+		return log_msg_ret("fdt", -E2BIG);
+	log_debug("FIT size %lx\n", size);
+
+	/*
+	 * Load the FIT into the SPL memory. This is typically a FIT with
+	 * external data, so this is quite small, perhaps a few KB.
+	 */
+	addr = CONFIG_VAL(TEXT_BASE);
+	buf = map_sysmem(addr, size);
+	num_blks = DIV_ROUND_UP(size, desc->blksz);
+	log_debug("read %lx, %lx blocks to %lx / %p\n", size, num_blks, addr,
+		  buf);
+	ret = blk_read(blk, blknum, num_blks, buf);
+	if (ret < 0)
+		return log_msg_ret("rd", ret);
+
+	/* figure out the phase to load */
+	phase = IS_ENABLED(CONFIG_VPL_BUILD) ? IH_PHASE_SPL : IH_PHASE_U_BOOT;
+
+	/*
+	 * Load the image from the FIT. We ignore any load-address information
+	 * so in practice this simply locates the image in the external-data
+	 * region and returns its address and size. Since we only loaded the FIT
+	 * itself, only a part of the image will be present, at best.
+	 */
+	fit_uname = NULL;
+	fit_uname_config = NULL;
+	log_debug("loading FIT\n");
+	ret = fit_image_load(&images, addr, &fit_uname, &fit_uname_config,
+			     IH_ARCH_SANDBOX, image_ph(phase, IH_TYPE_FIRMWARE),
+			     BOOTSTAGE_ID_FIT_SPL_START, FIT_LOAD_IGNORED,
+			     &load_addr, &len);
+	if (ret < 0)
+		return log_msg_ret("ld", ret);
+	node = ret;
+	log_debug("loaded to %lx\n", load_addr);
+
+	/* For FIT external data, read in the external data */
+	if (load_addr + len > addr + size) {
+		ulong base, full_size;
+		void *base_buf;
+
+		/* Find the start address to load from */
+		base = ALIGN_DOWN(load_addr, desc->blksz);
+
+		/*
+		 * Get the total number of bytes to load, taking care of
+		 * block alignment
+		 */
+		full_size = load_addr + len - base;
+
+		/*
+		 * Get the start block number, number of blocks and the address
+		 * to load to, then load the blocks
+		 */
+		blknum = (offset + base - addr) / desc->blksz;
+		num_blks = DIV_ROUND_UP(full_size, desc->blksz);
+		base_buf = map_sysmem(base, full_size);
+		ret = blk_read(blk, blknum, num_blks, base_buf);
+		log_debug("read %lx %lx, %lx blocks to %lx / %p: ret=%d\n",
+			  blknum, full_size, num_blks, base, base_buf, ret);
+		if (ret < 0)
+			return log_msg_ret("rd", ret);
+	}
+
+	/* set up the bootflow with the info we obtained */
+	bflow->name = strdup(fdt_get_name(buf, node, NULL));
+	if (!bflow->name)
+		return log_msg_ret("name", -ENOMEM);
+	bflow->blk = blk;
+	bflow->buf = map_sysmem(load_addr, len);
+	bflow->size = len;
+
+	return 0;
+}
+
+static int simple_load_from_image(struct spl_image_info *spl_image,
+				  struct spl_boot_device *bootdev)
+{
+	struct udevice *meth, *bdev;
+	struct simple_priv *priv;
+	struct bootflow bflow;
+	int ret;
+
+	if (spl_phase() != PHASE_VPL && spl_phase() != PHASE_SPL)
+		return -ENOENT;
+
+	vbe_find_first_device(&meth);
+	if (!meth)
+		return log_msg_ret("vd", -ENODEV);
+	log_debug("vbe dev %s\n", meth->name);
+	ret = device_probe(meth);
+	if (ret)
+		return log_msg_ret("probe", ret);
+
+	priv = dev_get_priv(meth);
+	log_debug("simple %s\n", priv->storage);
+	ret = bootdev_find_by_label(priv->storage, &bdev);
+	if (ret)
+		return log_msg_ret("bd", ret);
+	log_debug("bootdev %s\n", bdev->name);
+
+	bootflow_init(&bflow, bdev, meth);
+	ret = bootmeth_read_bootflow(meth, &bflow);
+	log_debug("\nfw ret=%d\n", ret);
+	if (ret)
+		return log_msg_ret("rd", ret);
+
+	/* jump to the image */
+	spl_image->flags = SPL_SANDBOXF_ARG_IS_BUF;
+	spl_image->arg = bflow.buf;
+	spl_image->size = bflow.size;
+	log_debug("Image: %s at %p size %x\n", bflow.name, bflow.buf,
+		  bflow.size);
+
+	/* this is not used from now on, so free it */
+	bootflow_free(&bflow);
+
+	return 0;
+}
+SPL_LOAD_IMAGE_METHOD("vbe_simple", 5, BOOT_DEVICE_VBE,
+		      simple_load_from_image);
diff --git a/include/bootstage.h b/include/bootstage.h
index 7088d0b875e..685939ccffc 100644
--- a/include/bootstage.h
+++ b/include/bootstage.h
@@ -166,6 +166,8 @@ enum bootstage_id {
 	BOOTSTAGE_ID_NAND_FIT_READ_OK,
 
 	BOOTSTAGE_ID_FIT_LOADABLE_START = 160,	/* for Loadable Images */
+
+	BOOTSTAGE_ID_FIT_SPL_START = 170,	/* for SPL Images */
 	/*
 	 * These boot stages are new, higher level, and not directly related
 	 * to the old boot progress numbers. They are useful for recording
-- 
2.37.3.998.g577e59143f-goog


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

* [PATCH 35/45] vbe: Move OS implementation into a separate file
  2022-09-25 15:02 [PATCH 00/45] vbe: Implement the full firmware flow Simon Glass
                   ` (33 preceding siblings ...)
  2022-09-25 15:02 ` [PATCH 34/45] vbe: Support reading the next SPL phase via VBE Simon Glass
@ 2022-09-25 15:02 ` Simon Glass
  2022-09-25 15:02 ` [PATCH 36/45] vbe: Drop the U-Boot prefix from the version Simon Glass
                   ` (9 subsequent siblings)
  44 siblings, 0 replies; 72+ messages in thread
From: Simon Glass @ 2022-09-25 15:02 UTC (permalink / raw)
  To: U-Boot Mailing List
  Cc: Tom Rini, Simon Glass, Artem Lapkin, Heinrich Schuchardt, John Keeping

Move this into its own file so it can be built only by U-Boot proper.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 boot/Makefile                    |   1 +
 boot/vbe_simple.c                | 102 +------------------------------
 boot/vbe_simple.h                |  34 +++++++++++
 boot/vbe_simple_os.c             |  89 +++++++++++++++++++++++++++
 test/py/tests/test_event_dump.py |   1 -
 5 files changed, 126 insertions(+), 101 deletions(-)
 create mode 100644 boot/vbe_simple_os.c

diff --git a/boot/Makefile b/boot/Makefile
index e5c27900ea7..f0c31549213 100644
--- a/boot/Makefile
+++ b/boot/Makefile
@@ -50,3 +50,4 @@ endif
 obj-$(CONFIG_$(SPL_TPL_)BOOTMETH_VBE) += vbe.o vbe_request.o
 obj-$(CONFIG_$(SPL_TPL_)BOOTMETH_VBE_SIMPLE) += vbe_simple.o
 obj-$(CONFIG_$(SPL_TPL_)BOOTMETH_VBE_SIMPLE_FW) += vbe_simple_fw.o
+obj-$(CONFIG_$(SPL_TPL_)BOOTMETH_VBE_SIMPLE_OS) += vbe_simple_os.o
diff --git a/boot/vbe_simple.c b/boot/vbe_simple.c
index 1ccd416e4bb..59676d8613f 100644
--- a/boot/vbe_simple.c
+++ b/boot/vbe_simple.c
@@ -17,37 +17,11 @@
 #include <memalign.h>
 #include <mmc.h>
 #include <vbe.h>
-#include <version_string.h>
 #include <dm/device-internal.h>
 #include <dm/ofnode.h>
 #include <u-boot/crc.h>
 #include "vbe_simple.h"
 
-enum {
-	MAX_VERSION_LEN		= 256,
-
-	NVD_HDR_VER_SHIFT	= 0,
-	NVD_HDR_VER_MASK	= 0xf,
-	NVD_HDR_SIZE_SHIFT	= 4,
-	NVD_HDR_SIZE_MASK	= 0xf << NVD_HDR_SIZE_SHIFT,
-
-	/* Firmware key-version is in the top 16 bits of fw_ver */
-	FWVER_KEY_SHIFT		= 16,
-	FWVER_FW_MASK		= 0xffff,
-
-	NVD_HDR_VER_CUR		= 1,	/* current version */
-};
-
-/** struct simple_state - state information read from media
- *
- * @fw_version: Firmware version string
- * @fw_vernum: Firmware version number
- */
-struct simple_state {
-	char fw_version[MAX_VERSION_LEN];
-	u32 fw_vernum;
-};
-
 /** struct simple_nvdata - storage format for non-volatile data */
 struct simple_nvdata {
 	u8 crc8;
@@ -116,7 +90,7 @@ static int simple_read_nvdata(struct udevice *dev, struct blk_desc *desc,
 	return 0;
 }
 
-static int simple_read_state(struct udevice *dev, struct simple_state *state)
+int vbe_simple_read_state(struct udevice *dev, struct simple_state *state)
 {
 	ALLOC_CACHE_ALIGN_BUFFER(u8, buf, MMC_MAX_BLOCK_LEN);
 	struct simple_priv *priv = dev_get_priv(dev);
@@ -157,7 +131,7 @@ static int vbe_simple_get_state_desc(struct udevice *dev, char *buf,
 	struct simple_state state;
 	int ret;
 
-	ret = simple_read_state(dev, &state);
+	ret = vbe_simple_read_state(dev, &state);
 	if (ret)
 		return log_msg_ret("read", ret);
 
@@ -206,78 +180,6 @@ static struct bootmeth_ops bootmeth_vbe_simple_ops = {
 	.read_file	= vbe_simple_read_file,
 };
 
-int vbe_simple_fixup_node(ofnode node, struct simple_state *state)
-{
-	char *version;
-	int ret;
-
-	version = strdup(state->fw_version);
-	if (!version)
-		return log_msg_ret("dup", -ENOMEM);
-
-	ret = ofnode_write_string(node, "cur-version", version);
-	if (ret)
-		return log_msg_ret("ver", ret);
-	ret = ofnode_write_u32(node, "cur-vernum", state->fw_vernum);
-	if (ret)
-		return log_msg_ret("num", ret);
-	ret = ofnode_write_string(node, "bootloader-version", version_string);
-	if (ret)
-		return log_msg_ret("bl", ret);
-
-	return 0;
-}
-
-/**
- * bootmeth_vbe_simple_ft_fixup() - Write out all VBE simple data to the DT
- *
- * @ctx: Context for event
- * @event: Event to process
- * @return 0 if OK, -ve on error
- */
-static int bootmeth_vbe_simple_ft_fixup(void *ctx, struct event *event)
-{
-	oftree tree = event->data.ft_fixup.tree;
-	struct udevice *dev;
-
-	/*
-	 * Ideally we would have driver model support for fixups, but that does
-	 * not exist yet. It is a step too far to try to do this before VBE is
-	 * in place.
-	 */
-	for (vbe_find_first_device(&dev); dev; vbe_find_next_device(&dev)) {
-		struct simple_state state;
-		ofnode node, subnode;
-		int ret;
-
-		if (strcmp("vbe_simple", dev->driver->name))
-			continue;
-
-		/* Check if there is a node to fix up */
-		node = oftree_path(tree, "/chosen/fwupd");
-		if (!ofnode_valid(node))
-			continue;
-		subnode = ofnode_find_subnode(node, dev->name);
-		if (!ofnode_valid(subnode))
-			continue;
-
-		log_debug("Fixing up: %s\n", dev->name);
-		ret = device_probe(dev);
-		if (ret)
-			return log_msg_ret("probe", ret);
-		ret = simple_read_state(dev, &state);
-		if (ret)
-			return log_msg_ret("read", ret);
-
-		ret = vbe_simple_fixup_node(subnode, &state);
-		if (ret)
-			return log_msg_ret("fix", ret);
-	}
-
-	return 0;
-}
-EVENT_SPY(EVT_FT_FIXUP, bootmeth_vbe_simple_ft_fixup);
-
 static int bootmeth_vbe_simple_probe(struct udevice *dev)
 {
 	struct simple_priv *priv = dev_get_priv(dev);
diff --git a/boot/vbe_simple.h b/boot/vbe_simple.h
index e37a9fae379..56d319206f2 100644
--- a/boot/vbe_simple.h
+++ b/boot/vbe_simple.h
@@ -9,6 +9,21 @@
 #ifndef __VBE_SIMPLE_H
 #define __VBE_SIMPLE_H
 
+enum {
+	MAX_VERSION_LEN		= 256,
+
+	NVD_HDR_VER_SHIFT	= 0,
+	NVD_HDR_VER_MASK	= 0xf,
+	NVD_HDR_SIZE_SHIFT	= 4,
+	NVD_HDR_SIZE_MASK	= 0xf << NVD_HDR_SIZE_SHIFT,
+
+	/* Firmware key-version is in the top 16 bits of fw_ver */
+	FWVER_KEY_SHIFT		= 16,
+	FWVER_FW_MASK		= 0xffff,
+
+	NVD_HDR_VER_CUR		= 1,	/* current version */
+};
+
 /** struct simple_priv - information read from the device tree */
 struct simple_priv {
 	u32 area_start;
@@ -21,6 +36,16 @@ struct simple_priv {
 	const char *storage;
 };
 
+/** struct simple_state - state information read from media
+ *
+ * @fw_version: Firmware version string
+ * @fw_vernum: Firmware version number
+ */
+struct simple_state {
+	char fw_version[MAX_VERSION_LEN];
+	u32 fw_vernum;
+};
+
 /**
  * vbe_simple_read_fw_bootflow() - Read a bootflow for firmware
  *
@@ -34,4 +59,13 @@ struct simple_priv {
  */
 int vbe_simple_read_bootflow_fw(struct udevice *dev, struct bootflow *bflow);
 
+/**
+ * vbe_simple_read_state() - Read the VBE simple state information
+ *
+ * @dev: VBE bootmeth
+ * @state: Place to put the state
+ * @return 0 if OK, -ve on error
+ */
+int vbe_simple_read_state(struct udevice *dev, struct simple_state *state);
+
 #endif /* __VBE_SIMPLE_H */
diff --git a/boot/vbe_simple_os.c b/boot/vbe_simple_os.c
new file mode 100644
index 00000000000..7761b9ef656
--- /dev/null
+++ b/boot/vbe_simple_os.c
@@ -0,0 +1,89 @@
+// SPDX-License-Identifier: GPL-2.0
+/*
+ * Verified Boot for Embedded (VBE) loading firmware phases
+ *
+ * Copyright 2022 Google LLC
+ * Written by Simon Glass <sjg@chromium.org>
+ */
+
+#define LOG_CATEGORY LOGC_BOOT
+
+#include <common.h>
+#include <dm.h>
+#include <bootflow.h>
+#include <vbe.h>
+#include <version_string.h>
+#include <dm/device-internal.h>
+#include "vbe_simple.h"
+
+int vbe_simple_fixup_node(ofnode node, struct simple_state *state)
+{
+	char *version;
+	int ret;
+
+	version = strdup(state->fw_version);
+	if (!version)
+		return log_msg_ret("dup", -ENOMEM);
+
+	ret = ofnode_write_string(node, "cur-version", version);
+	if (ret)
+		return log_msg_ret("ver", ret);
+	ret = ofnode_write_u32(node, "cur-vernum", state->fw_vernum);
+	if (ret)
+		return log_msg_ret("num", ret);
+	ret = ofnode_write_string(node, "bootloader-version", version_string);
+	if (ret)
+		return log_msg_ret("bl", ret);
+
+	return 0;
+}
+
+/**
+ * bootmeth_vbe_simple_ft_fixup() - Write out all VBE simple data to the DT
+ *
+ * @ctx: Context for event
+ * @event: Event to process
+ * @return 0 if OK, -ve on error
+ */
+static int bootmeth_vbe_simple_ft_fixup(void *ctx, struct event *event)
+{
+	oftree tree = event->data.ft_fixup.tree;
+	struct udevice *dev;
+
+	/*
+	 * Ideally we would have driver model support for fixups, but that does
+	 * not exist yet. It is a step too far to try to do this before VBE is
+	 * in place.
+	 */
+	for (vbe_find_first_device(&dev); dev; vbe_find_next_device(&dev)) {
+		struct simple_state state;
+		ofnode node, subnode;
+		int ret;
+
+		if (strcmp("vbe_simple", dev->driver->name))
+			continue;
+
+		/* Check if there is a node to fix up */
+		node = oftree_path(tree, "/chosen/fwupd");
+		if (!ofnode_valid(node))
+			continue;
+		subnode = ofnode_find_subnode(node, dev->name);
+		if (!ofnode_valid(subnode))
+			continue;
+
+		log_debug("Fixing up: %s\n", dev->name);
+		ret = device_probe(dev);
+		if (ret)
+			return log_msg_ret("probe", ret);
+		ret = simple_read_state(dev, &state);
+		if (ret)
+			return log_msg_ret("read", ret);
+
+		ret = vbe_simple_fixup_node(subnode, &state);
+		if (ret)
+			return log_msg_ret("fix", ret);
+	}
+
+	return 0;
+}
+EVENT_SPY(EVT_FT_FIXUP, bootmeth_vbe_simple_ft_fixup);
diff --git a/test/py/tests/test_event_dump.py b/test/py/tests/test_event_dump.py
index 46d6384eb3a..5da2e191dfa 100644
--- a/test/py/tests/test_event_dump.py
+++ b/test/py/tests/test_event_dump.py
@@ -17,6 +17,5 @@ def test_event_dump(u_boot_console):
     expect = '''.*Event type            Id                              Source location
 --------------------  ------------------------------  ------------------------------
 EVT_FT_FIXUP          bootmeth_vbe_ft_fixup           .*boot/vbe_request.c:.*
-EVT_FT_FIXUP          bootmeth_vbe_simple_ft_fixup    .*boot/vbe_simple.c:.*
 EVT_MISC_INIT_F       sandbox_misc_init_f             .*arch/sandbox/cpu/start.c:'''
     assert re.match(expect, out, re.MULTILINE) is not None
-- 
2.37.3.998.g577e59143f-goog


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

* [PATCH 36/45] vbe: Drop the U-Boot prefix from the version
  2022-09-25 15:02 [PATCH 00/45] vbe: Implement the full firmware flow Simon Glass
                   ` (34 preceding siblings ...)
  2022-09-25 15:02 ` [PATCH 35/45] vbe: Move OS implementation into a separate file Simon Glass
@ 2022-09-25 15:02 ` Simon Glass
  2022-09-25 15:02 ` [PATCH 37/45] vbe: Add Kconfig options for VPL Simon Glass
                   ` (8 subsequent siblings)
  44 siblings, 0 replies; 72+ messages in thread
From: Simon Glass @ 2022-09-25 15:02 UTC (permalink / raw)
  To: U-Boot Mailing List; +Cc: Tom Rini, Simon Glass

We don't need the U-Boot prefix on the version and in fact it is harmful
since pytest gets confused seeing the U-Boot banner bring displayed when
the version is printed.

Drop the prefix from the string.

We could produce an entirely new string from the component parts, but this
adds to the rodata size and would break the use of version_string as the
only thing which holds this information.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 boot/vbe_simple_os.c   | 9 +++++++--
 test/boot/vbe_simple.c | 2 +-
 2 files changed, 8 insertions(+), 3 deletions(-)

diff --git a/boot/vbe_simple_os.c b/boot/vbe_simple_os.c
index 7761b9ef656..058db6154b0 100644
--- a/boot/vbe_simple_os.c
+++ b/boot/vbe_simple_os.c
@@ -18,7 +18,7 @@
 
 int vbe_simple_fixup_node(ofnode node, struct simple_state *state)
 {
-	char *version;
+	const char *version, *str;
 	int ret;
 
 	version = strdup(state->fw_version);
@@ -31,7 +31,12 @@ int vbe_simple_fixup_node(ofnode node, struct simple_state *state)
 	ret = ofnode_write_u32(node, "cur-vernum", state->fw_vernum);
 	if (ret)
 		return log_msg_ret("num", ret);
-	ret = ofnode_write_string(node, "bootloader-version", version_string);
+
+	/* Drop the 'U-Boot ' at the start */
+	str = version_string;
+	if (!strncmp("U-Boot ", str, 7))
+		str += 7;
+	ret = ofnode_write_string(node, "bootloader-version", str);
 	if (ret)
 		return log_msg_ret("bl", ret);
 
diff --git a/test/boot/vbe_simple.c b/test/boot/vbe_simple.c
index faba9e8f90b..a50785dbbf6 100644
--- a/test/boot/vbe_simple.c
+++ b/test/boot/vbe_simple.c
@@ -77,7 +77,7 @@ static int vbe_simple_test_base(struct unit_test_state *uts)
 
 	bl_version = ofnode_read_string(node, "bootloader-version");
 	ut_assertnonnull(bl_version);
-	ut_asserteq_str(version_string, bl_version);
+	ut_asserteq_str(version_string + 7, bl_version);
 
 	return 0;
 }
-- 
2.37.3.998.g577e59143f-goog


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

* [PATCH 37/45] vbe: Add Kconfig options for VPL
  2022-09-25 15:02 [PATCH 00/45] vbe: Implement the full firmware flow Simon Glass
                   ` (35 preceding siblings ...)
  2022-09-25 15:02 ` [PATCH 36/45] vbe: Drop the U-Boot prefix from the version Simon Glass
@ 2022-09-25 15:02 ` Simon Glass
  2022-09-25 15:02 ` [PATCH 38/45] vbe: Add info about the VBE device to the fwupd node Simon Glass
                   ` (7 subsequent siblings)
  44 siblings, 0 replies; 72+ messages in thread
From: Simon Glass @ 2022-09-25 15:02 UTC (permalink / raw)
  To: U-Boot Mailing List
  Cc: Tom Rini, Simon Glass, Alper Nebi Yasak, Andre Przywara,
	Andrew Davis, Philippe Reynes, Quentin Schulz

Enable the various features needed in VPL, by adding Kconfig options.

Update the defconfig for sandbox_vpl so that the build for each phase
includes what is needed. Drop LZMA for now and make sure partition support
is omitted in SPL, since it is not needed.

Fix up the sandbox_vpl setings so that it still builds.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 boot/Kconfig                     | 146 +++++++++++++++++++++++++++++++
 boot/vbe_simple_os.c             |   2 +-
 common/spl/Kconfig.vpl           |  33 +++++++
 configs/sandbox_vpl_defconfig    |  13 ++-
 test/py/tests/test_event_dump.py |   1 +
 5 files changed, 193 insertions(+), 2 deletions(-)

diff --git a/boot/Kconfig b/boot/Kconfig
index e393dca10e2..4e9e6a3f8a5 100644
--- a/boot/Kconfig
+++ b/boot/Kconfig
@@ -292,6 +292,66 @@ config SPL_FIT_GENERATOR
 
 endif # SPL
 
+if VPL
+
+config VPL_FIT
+	bool "Support Flattened Image Tree within VPL"
+	depends on VPL
+	default y
+	select VPL_HASH
+	select VPL_OF_LIBFDT
+	help
+	  This option allows you to boot the new uImage structure,
+	  Flattened Image Tree, in VPL.  FIT is formally a FDT, which can
+	  include images of various types (kernel, FDT blob, ramdisk, etc.)
+	  in a single blob.  To boot this new uImage structure,
+	  pass the address of the blob to the "bootm" command.
+	  FIT is very flexible, supporting compression, multiple images,
+	  multiple configurations, verification through hashing and also
+	  verified boot (secure boot using RSA).
+
+config VPL_FIT_PRINT
+	bool "Support FIT printing within VPL"
+	depends on VPL_FIT
+	default y
+	help
+	  Support printing the content of the fitImage in a verbose manner in VPL.
+
+config VPL_FIT_FULL_CHECK
+	bool "Do a full check of the FIT before using it"
+	default y
+	help
+	  Enable this do a full check of the FIT to make sure it is valid. This
+	  helps to protect against carefully crafted FITs which take advantage
+	  of bugs or omissions in the code. This includes a bad structure,
+	  multiple root nodes and the like.
+
+config VPL_FIT_SIGNATURE
+	bool "Enable signature verification of FIT firmware within VPL"
+	depends on VPL_DM
+	depends on VPL_LOAD_FIT || VPL_LOAD_FIT_FULL
+	default y
+	select FIT_SIGNATURE
+	select VPL_FIT
+	select VPL_CRYPTO
+	select VPL_HASH
+	imply VPL_RSA
+	imply VPL_RSA_VERIFY
+	select VPL_IMAGE_SIGN_INFO
+	select VPL_FIT_FULL_CHECK
+
+config VPL_FIT_SIGNATURE_MAX_SIZE
+	hex "Max size of signed FIT structures in VPL"
+	depends on VPL_FIT_SIGNATURE
+	default 0x10000000
+	help
+	  This option sets a max size in bytes for verified FIT uImages.
+	  A sane value of 256MB protects corrupted DTB structures from overlapping
+	  device memory. Assure this size does not extend past expected storage
+	  space.
+
+endif # VPL
+
 endif # FIT
 
 config PXE_UTILS
@@ -334,6 +394,26 @@ config BOOTSTD_FULL
 	  - support for selecting the ordering of bootdevs using the devicetree
 	    as well as the "boot_targets" environment variable
 
+config SPL_BOOTSTD
+	bool "Standard boot support in VPL"
+	depends on SPL && SPL_DM && SPL_OF_CONTROL && SPL_BLK
+	default y if VPL
+	help
+	  This enables standard boot in SPL. This is neeeded so that VBE
+	  (Verified Boot for Embedded) can be used, since it depends on standard
+	  boot. It is enabled by default since the main purpose of VPL is to
+	  handle the firmware part of VBE.
+
+config VPL_BOOTSTD
+	bool "Standard boot support in VPL"
+	depends on VPL && VPL_DM && VPL_OF_CONTROL && VPL_BLK
+	default y
+	help
+	  This enables standard boot in SPL. This is neeeded so that VBE
+	  (Verified Boot for Embedded) can be used, since it depends on standard
+	  boot. It is enabled by default since the main purpose of VPL is to
+	  handle the firmware part of VBE.
+
 if BOOTSTD
 
 config BOOTSTD_BOOTCOMMAND
@@ -408,6 +488,24 @@ config BOOTMETH_VBE
 	  supports selection of various firmware components, seleciton of an OS to
 	  boot as well as updating these using fwupd.
 
+config SPL_BOOTMETH_VBE
+	bool "Bootdev support for Verified Boot for Embedded (SPL)"
+	depends on SPL_FIT
+	default y if VPL
+	help
+	  Enables support for VBE boot. This is a standard boot method which
+	  supports selection of various firmware components, seleciton of an OS to
+	  boot as well as updating these using fwupd.
+
+config VPL_BOOTMETH_VBE
+	bool "Bootdev support for Verified Boot for Embedded (VPL)"
+	depends on VPL_FIT
+	default y
+	help
+	  Enables support for VBE boot. This is a standard boot method which
+	  supports selection of various firmware components, seleciton of an OS to
+	  boot as well as updating these using fwupd.
+
 if BOOTMETH_VBE
 
 config BOOTMETH_VBE_SIMPLE
@@ -418,6 +516,54 @@ config BOOTMETH_VBE_SIMPLE
 	  firmware image in boot media such as MMC. It does not support any sort
 	  of rollback, recovery or A/B boot.
 
+config BOOTMETH_VBE_SIMPLE_OS
+	bool "Bootdev support for VBE 'simple' method OS phase"
+	default y
+	help
+	  Enables support for the OS parts of VBE 'simple' boot. This includes
+	  fixing up the device tree with the required VBE information, ready
+	  for booting into the OS. This option is only enabled for U-Boot
+	  proper, since it is the phase where device tree fixups happen.
+
+config SPL_BOOTMETH_VBE_SIMPLE
+	bool "Bootdev support for VBE 'simple' method (SPL)"
+	depends on SPL
+	default y if VPL
+	help
+	  Enables support for VBE 'simple' boot. This allows updating a single
+	  firmware image in boot media such as MMC. It does not support any sort
+	  of rollback, recovery or A/B boot.
+
+config VPL_BOOTMETH_VBE_SIMPLE
+	bool "Bootdev support for VBE 'simple' method (VPL)"
+	depends on VPL
+	default y
+	help
+	  Enables support for VBE 'simple' boot. This allows updating a single
+	  firmware image in boot media such as MMC. It does not support any sort
+	  of rollback, recovery or A/B boot.
+
+config SPL_BOOTMETH_VBE_SIMPLE_FW
+	bool "Bootdev support for VBE 'simple' method firmware phase (SPL)"
+	depends on VPL
+	default y
+	help
+	  Enables support for the firmware parts of VBE 'simple' boot. This
+	  includes an SPL loader which locates the correct U-Boot to boot into.
+	  This option should really only be enabled for VPL, since it is the
+	  phase where the SPL + U-Boot decision should be made. But for now,
+	  SPL does its own FIT-configuration selection.
+
+config VPL_BOOTMETH_VBE_SIMPLE_FW
+	bool "Bootdev support for VBE 'simple' method firmware phase (VPL)"
+	depends on VPL
+	default y
+	help
+	  Enables support for the firmware parts of VBE 'simple' boot. This
+	  includes an SPL loader which locates the correct SPL to boot into.
+	  This option enabled for VPL, since it is the phase where the SPL
+	  decision is made.
+
 endif # BOOTMETH_VBE
 
 config BOOTMETH_SANDBOX
diff --git a/boot/vbe_simple_os.c b/boot/vbe_simple_os.c
index 058db6154b0..87778bba97e 100644
--- a/boot/vbe_simple_os.c
+++ b/boot/vbe_simple_os.c
@@ -80,7 +80,7 @@ static int bootmeth_vbe_simple_ft_fixup(void *ctx, struct event *event)
 		ret = device_probe(dev);
 		if (ret)
 			return log_msg_ret("probe", ret);
-		ret = simple_read_state(dev, &state);
+		ret = vbe_simple_read_state(dev, &state);
 		if (ret)
 			return log_msg_ret("read", ret);
 
diff --git a/common/spl/Kconfig.vpl b/common/spl/Kconfig.vpl
index f33162276d9..583e74f7fe7 100644
--- a/common/spl/Kconfig.vpl
+++ b/common/spl/Kconfig.vpl
@@ -133,6 +133,39 @@ config VPL_I2C_SUPPORT
 	  Enable support for the I2C bus in VPL. Vee SPL_I2C_SUPPORT for
 	  details.
 
+config VPL_MMC
+	bool "Support MMC in VPL"
+	depends on VPL && MMC
+	default y if MMC
+	help
+	  Enable support for MMC (Multimedia Card) within VPL This enables
+	  the MMC protocol implementation and allows any enabled drivers to
+	  be used within VPL. MMC can be used with or without disk partition
+	  support depending on the application (SPL_LIBDISK_SUPPORT). Enable
+	  this option to build the drivers in drivers/mmc as part of an VPL
+	  build.
+
+config VPL_DM_MMC
+	bool "Enable MMC controllers using Driver Model in VPL"
+	depends on VPL_DM && DM_MMC
+	default y
+	help
+	  This enables the MultiMediaCard (MMC) uclass which supports MMC and
+	  Secure Digital I/O (SDIO) cards. Both removable (SD, micro-SD, etc.)
+	  and non-removable (e.g. eMMC chip) devices are supported. These
+	  appear as block devices in U-Boot and can support filesystems such
+	  as EXT4 and FAT.
+
+config VPL_MMC_WRITE
+	bool "MMC/SD/SDIO card support for write operations in VPL"
+	depends on VPL_MMC
+	default y
+	help
+	  Enable write access to MMC and SD Cards in VPL. This is typically
+	  needed since VBE needs to write its state to the device once it has
+	  what boot path to take. Without this, it cannot update the state and
+	  subsequent boots may not function as expected.
+
 config VPL_PCH_SUPPORT
 	bool "Support PCH drivers"
 	default y if TPL_PCH_SUPPORT
diff --git a/configs/sandbox_vpl_defconfig b/configs/sandbox_vpl_defconfig
index 8bd88020580..735f1180782 100644
--- a/configs/sandbox_vpl_defconfig
+++ b/configs/sandbox_vpl_defconfig
@@ -4,7 +4,10 @@ CONFIG_SPL_LIBGENERIC_SUPPORT=y
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_ENV_SIZE=0x2000
 CONFIG_DEFAULT_DEVICE_TREE="sandbox"
+CONFIG_SPL_TEXT_BASE=0x100000
+CONFIG_SPL_MMC=y
 CONFIG_SPL_SERIAL=y
+CONFIG_TPL_TEXT_BASE=0x100000
 CONFIG_TPL_LIBCOMMON_SUPPORT=y
 CONFIG_TPL_LIBGENERIC_SUPPORT=y
 CONFIG_TPL_SERIAL=y
@@ -23,6 +26,7 @@ CONFIG_DISTRO_DEFAULTS=y
 CONFIG_FIT=y
 CONFIG_FIT_SIGNATURE=y
 CONFIG_FIT_VERBOSE=y
+CONFIG_FIT_BEST_MATCH=y
 CONFIG_SPL_LOAD_FIT=y
 # CONFIG_USE_SPL_FIT_GENERATOR is not set
 CONFIG_BOOTSTAGE=y
@@ -47,6 +51,7 @@ CONFIG_TPL_I2C=y
 CONFIG_TPL_RTC=y
 CONFIG_VPL=y
 CONFIG_VPL_ENV_SUPPORT=y
+CONFIG_VPL_TEXT_BASE=0x100000
 CONFIG_CMD_CPU=y
 CONFIG_CMD_LICENSE=y
 CONFIG_CMD_BOOTZ=y
@@ -97,7 +102,9 @@ CONFIG_CMD_CBFS=y
 CONFIG_CMD_CRAMFS=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_MAC_PARTITION=y
-CONFIG_AMIGA_PARTITION=y
+# CONFIG_SPL_MAC_PARTITION is not set
+# CONFIG_SPL_DOS_PARTITION is not set
+# CONFIG_SPL_EFI_PARTITION is not set
 CONFIG_OF_CONTROL=y
 CONFIG_SPL_OF_CONTROL=y
 CONFIG_TPL_OF_CONTROL=y
@@ -112,6 +119,7 @@ CONFIG_NETCONSOLE=y
 CONFIG_IP_DEFRAG=y
 CONFIG_SPL_DM=y
 CONFIG_TPL_DM=y
+CONFIG_SPL_DM_SEQ_ALIAS=y
 CONFIG_DM_DMA=y
 CONFIG_REGMAP=y
 CONFIG_SPL_REGMAP=y
@@ -224,6 +232,8 @@ CONFIG_SYSRESET=y
 CONFIG_SPL_SYSRESET=y
 CONFIG_TPL_SYSRESET=y
 CONFIG_TIMER=y
+CONFIG_SPL_TIMER=y
+CONFIG_VPL_TIMER=y
 CONFIG_TIMER_EARLY=y
 CONFIG_SANDBOX_TIMER=y
 CONFIG_USB=y
@@ -244,6 +254,7 @@ CONFIG_CMD_DHRYSTONE=y
 CONFIG_RSA_VERIFY_WITH_PKEY=y
 CONFIG_TPM=y
 CONFIG_LZ4=y
+# CONFIG_VPL_LZMA is not set
 CONFIG_ERRNO_STR=y
 CONFIG_UNIT_TEST=y
 CONFIG_SPL_UNIT_TEST=y
diff --git a/test/py/tests/test_event_dump.py b/test/py/tests/test_event_dump.py
index 5da2e191dfa..da196df4c3e 100644
--- a/test/py/tests/test_event_dump.py
+++ b/test/py/tests/test_event_dump.py
@@ -17,5 +17,6 @@ def test_event_dump(u_boot_console):
     expect = '''.*Event type            Id                              Source location
 --------------------  ------------------------------  ------------------------------
 EVT_FT_FIXUP          bootmeth_vbe_ft_fixup           .*boot/vbe_request.c:.*
+EVT_FT_FIXUP          bootmeth_vbe_simple_ft_fixup    .*boot/vbe_simple_os.c:.*
 EVT_MISC_INIT_F       sandbox_misc_init_f             .*arch/sandbox/cpu/start.c:'''
     assert re.match(expect, out, re.MULTILINE) is not None
-- 
2.37.3.998.g577e59143f-goog


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

* [PATCH 38/45] vbe: Add info about the VBE device to the fwupd node
  2022-09-25 15:02 [PATCH 00/45] vbe: Implement the full firmware flow Simon Glass
                   ` (36 preceding siblings ...)
  2022-09-25 15:02 ` [PATCH 37/45] vbe: Add Kconfig options for VPL Simon Glass
@ 2022-09-25 15:02 ` Simon Glass
  2022-09-25 15:02 ` [PATCH 39/45] sandbox: Add a binman image for VPL Simon Glass
                   ` (6 subsequent siblings)
  44 siblings, 0 replies; 72+ messages in thread
From: Simon Glass @ 2022-09-25 15:02 UTC (permalink / raw)
  To: U-Boot Mailing List
  Cc: Tom Rini, Simon Glass, Andrew Scull, Etienne Carriere,
	Heinrich Schuchardt, Marek Behún, Ramon Fried,
	Sean Anderson

At present we put the driver in the /chosen node in U-Boot. This is a bit
strange, since U-Boot doesn't normally use that node itself. It is better
to put it under the bootstd node.

To make this work we need to copy the node to appear under /chosen when
fixing up the device tree. Copy over all the properties too, so that fwupd
knows what to do.

Update the sandbox device tree accordingly.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 arch/sandbox/dts/test.dts | 29 ++++++++++++++---------------
 boot/vbe_simple_os.c      | 26 ++++++++++++++++++--------
 test/boot/vbe_simple.c    |  7 ++++++-
 3 files changed, 38 insertions(+), 24 deletions(-)

diff --git a/arch/sandbox/dts/test.dts b/arch/sandbox/dts/test.dts
index 66391f7135b..bc7e95d2705 100644
--- a/arch/sandbox/dts/test.dts
+++ b/arch/sandbox/dts/test.dts
@@ -78,6 +78,7 @@
 	};
 
 	bootstd {
+		u-boot,dm-vpl;
 		compatible = "u-boot,boot-std";
 
 		filename-prefixes = "/", "/boot/";
@@ -90,6 +91,19 @@
 		efi {
 			compatible = "u-boot,distro-efi";
 		};
+
+		firmware0 {
+			u-boot,dm-vpl;
+			compatible = "fwupd,vbe-simple";
+			storage = "mmc1";
+			skip-offset = <0x200>;
+			area-start = <0x400>;
+			area-size = <0x1000>;
+			state-offset = <0x400>;
+			state-size = <0x40>;
+			version-offset = <0x800>;
+			version-size = <0x100>;
+		};
 	};
 
 	fuzzing-engine {
@@ -1392,21 +1406,6 @@
 			compatible = "denx,u-boot-fdt-test";
 			reg = <9 1>;
 		};
-
-		fwupd {
-			compatible = "simple-bus";
-			firmware0 {
-				compatible = "fwupd,vbe-simple";
-				storage = "mmc1";
-				area-start = <0x400>;
-				area-size = <0x1000>;
-				skip-offset = <0x200>;
-				state-offset = <0x400>;
-				state-size = <0x40>;
-				version-offset = <0x800>;
-				version-size = <0x100>;
-			};
-		};
 	};
 
 	translation-test@8000 {
diff --git a/boot/vbe_simple_os.c b/boot/vbe_simple_os.c
index 87778bba97e..b2041a95a30 100644
--- a/boot/vbe_simple_os.c
+++ b/boot/vbe_simple_os.c
@@ -62,24 +62,34 @@ static int bootmeth_vbe_simple_ft_fixup(void *ctx, struct event *event)
 	 */
 	for (vbe_find_first_device(&dev); dev; vbe_find_next_device(&dev)) {
 		struct simple_state state;
-		ofnode node, subnode;
+		ofnode node, subnode, chosen;
 		int ret;
 
 		if (strcmp("vbe_simple", dev->driver->name))
 			continue;
 
-		/* Check if there is a node to fix up */
-		node = oftree_path(tree, "/chosen/fwupd");
-		if (!ofnode_valid(node))
-			continue;
-		subnode = ofnode_find_subnode(node, dev->name);
-		if (!ofnode_valid(subnode))
+		/* Check if there is a node to fix up, adding if not */
+		chosen = oftree_path(tree, "/chosen");
+		if (!ofnode_valid(chosen))
 			continue;
+		ret = ofnode_add_subnode(chosen, "fwupd", &node);
+		if (ret && ret != -EEXIST)
+			return log_msg_ret("fwu", ret);
+
+		ret = ofnode_add_subnode(node, dev->name, &subnode);
+		if (ret && ret != -EEXIST)
+			return log_msg_ret("dev", ret);
 
-		log_debug("Fixing up: %s\n", dev->name);
 		ret = device_probe(dev);
 		if (ret)
 			return log_msg_ret("probe", ret);
+
+		/* Copy over the vbe properties for fwupd */
+		log_debug("Fixing up: %s\n", dev->name);
+		ret = ofnode_copy_props(dev_ofnode(dev), subnode);
+		if (ret)
+			return log_msg_ret("cp", ret);
+
 		ret = vbe_simple_read_state(dev, &state);
 		if (ret)
 			return log_msg_ret("read", ret);
diff --git a/test/boot/vbe_simple.c b/test/boot/vbe_simple.c
index a50785dbbf6..5e61840652c 100644
--- a/test/boot/vbe_simple.c
+++ b/test/boot/vbe_simple.c
@@ -16,7 +16,12 @@
 #include <test/ut.h>
 #include "bootstd_common.h"
 
-/* Basic test of reading nvdata and updating a fwupd node in the device tree */
+/*
+ * Basic test of reading nvdata and updating a fwupd node in the device tree
+ *
+ * This sets up its own VBE info in the device, using bootstd_setup_for_tests()
+ * then does a VBE fixup and checks that everything is present.
+ */
 static int vbe_simple_test_base(struct unit_test_state *uts)
 {
 	const char *version, *bl_version;
-- 
2.37.3.998.g577e59143f-goog


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

* [PATCH 39/45] sandbox: Add a binman image for VPL
  2022-09-25 15:02 [PATCH 00/45] vbe: Implement the full firmware flow Simon Glass
                   ` (37 preceding siblings ...)
  2022-09-25 15:02 ` [PATCH 38/45] vbe: Add info about the VBE device to the fwupd node Simon Glass
@ 2022-09-25 15:02 ` Simon Glass
  2022-09-25 15:02 ` [PATCH 40/45] vbe: Correct pylint warnings in test_vbe Simon Glass
                   ` (5 subsequent siblings)
  44 siblings, 0 replies; 72+ messages in thread
From: Simon Glass @ 2022-09-25 15:02 UTC (permalink / raw)
  To: U-Boot Mailing List
  Cc: Tom Rini, Simon Glass, Andrew Scull, Etienne Carriere,
	Heinrich Schuchardt, Marek Behún, Patrick Delaunay,
	Ramon Fried, Sean Anderson

Use binman to build an image which includes all the U-Boot phases so that
a full VBE boot can take place with just that image.bin file.

VBE is used to load images in two phases:

   - In VPL, VBE decides which SPL image to load
   - In SPL, VBE decides which U-Boot image to load

The latter should really be determined by VPL, since it does the full
signature verification on the selected configuration. However, we have
separate configurations for SPL and U-Boot proper, so for now we keep it
simple and have SPL do its own verification. This will need to be
tidied up later.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 arch/sandbox/dts/sandbox.dts      |  7 +++
 arch/sandbox/dts/sandbox_vpl.dtsi | 78 +++++++++++++++++++++++++++++++
 arch/sandbox/dts/test.dts         |  6 ++-
 3 files changed, 90 insertions(+), 1 deletion(-)
 create mode 100644 arch/sandbox/dts/sandbox_vpl.dtsi

diff --git a/arch/sandbox/dts/sandbox.dts b/arch/sandbox/dts/sandbox.dts
index 21f00fcab5e..1b60914a01c 100644
--- a/arch/sandbox/dts/sandbox.dts
+++ b/arch/sandbox/dts/sandbox.dts
@@ -21,6 +21,9 @@
 		spi0 = &spi;
 	};
 
+	binman: binman {
+	};
+
 	memory {
 		reg = <0 CONFIG_SYS_SDRAM_SIZE>;
 	};
@@ -103,3 +106,7 @@
 #include "sandbox.dtsi"
 #include "cros-ec-keyboard.dtsi"
 #include "sandbox_pmic.dtsi"
+
+#ifdef CONFIG_SANDBOX_VPL
+#include "sandbox_vpl.dtsi"
+#endif
diff --git a/arch/sandbox/dts/sandbox_vpl.dtsi b/arch/sandbox/dts/sandbox_vpl.dtsi
new file mode 100644
index 00000000000..241f6eaf125
--- /dev/null
+++ b/arch/sandbox/dts/sandbox_vpl.dtsi
@@ -0,0 +1,78 @@
+// SPDX-License-Identifier: GPL-2.0+
+/*
+ * Devicetree file for VPL (Verifying Program Loader)
+ */
+
+&binman {
+	u-boot-tpl-elf {
+		no-expanded;
+	};
+	u-boot-vpl-elf {
+		no-expanded;
+	};
+	fw-update {
+		type = "section";
+
+		/*
+		 * provide plenty of space for ELF files with debug info so that
+		 * gdb can be used
+		 */
+		offset = <0x400000>;
+		size = <0xdffc00>;
+
+		fit {
+			fit,external-offset = <0>;
+			description = "AP firmware";
+			images {
+				spl {
+					description = "U-Boot SPL";
+					type = "firmware";
+					arch = "sandbox";
+					os = "u-boot";
+					compression = "none";
+
+					u-boot-spl-elf {
+						no-expanded;
+					};
+				};
+				u-boot {
+					description = "U-Boot";
+					type = "firmware";
+					arch = "sandbox";
+					os = "u-boot";
+					compression = "none";
+
+					u-boot-elf {
+						no-expanded;
+					};
+				};
+			};
+
+			configurations {
+				conf-spl-1 {
+					compatible = "sandbox";
+					description = "AP Firmware v1 (SPL)";
+					phase = "spl";
+					firmware = "spl";
+				};
+				conf-1 {
+					compatible = "sandbox";
+					description = "AP Firmware v1";
+					phase = "u-boot";
+					firmware = "u-boot";
+				};
+			};
+		};
+	};
+	state {
+		type = "fill";
+		size = <0x200>;
+	};
+	version {
+		type = "text";
+		text = "1.2.3";
+		size = <0x200>;
+	};
+	fdtmap {
+	};
+};
diff --git a/arch/sandbox/dts/test.dts b/arch/sandbox/dts/test.dts
index bc7e95d2705..0fecfa850bd 100644
--- a/arch/sandbox/dts/test.dts
+++ b/arch/sandbox/dts/test.dts
@@ -64,7 +64,7 @@
 		osd0 = "/osd";
 	};
 
-	binman {
+	binman: binman {
 	};
 
 	config {
@@ -1691,3 +1691,7 @@
 
 #include "sandbox_pmic.dtsi"
 #include "cros-ec-keyboard.dtsi"
+
+#ifdef CONFIG_SANDBOX_VPL
+#include "sandbox_vpl.dtsi"
+#endif
-- 
2.37.3.998.g577e59143f-goog


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

* [PATCH 40/45] vbe: Correct pylint warnings in test_vbe
  2022-09-25 15:02 [PATCH 00/45] vbe: Implement the full firmware flow Simon Glass
                   ` (38 preceding siblings ...)
  2022-09-25 15:02 ` [PATCH 39/45] sandbox: Add a binman image for VPL Simon Glass
@ 2022-09-25 15:02 ` Simon Glass
  2022-09-25 15:02 ` [PATCH 41/45] vbe: Use a manual test Simon Glass
                   ` (4 subsequent siblings)
  44 siblings, 0 replies; 72+ messages in thread
From: Simon Glass @ 2022-09-25 15:02 UTC (permalink / raw)
  To: U-Boot Mailing List; +Cc: Tom Rini, Simon Glass

Fix these before adding to the test.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 test/py/tests/test_vbe.py | 22 +++++++++++++---------
 1 file changed, 13 insertions(+), 9 deletions(-)

diff --git a/test/py/tests/test_vbe.py b/test/py/tests/test_vbe.py
index 559c2918868..a39cf0b31c6 100644
--- a/test/py/tests/test_vbe.py
+++ b/test/py/tests/test_vbe.py
@@ -1,14 +1,17 @@
 # SPDX-License-Identifier: GPL-2.0+
 # Copyright 2022 Google LLC
-#
-# Test addition of VBE
+
+"""Test VBE OS requests are processed correctly
+
+These should result in additions (fixups) to the device tree.
+"""
 
 import pytest
 
 import fit_util
 
 # Define a base ITS which we can adjust using % and a dictionary
-base_its = '''
+BASE_ITS = '''
 /dts-v1/;
 
 / {
@@ -64,7 +67,7 @@ base_its = '''
 '''
 
 # Define a base FDT - currently we don't use anything in this
-base_fdt = '''
+BASE_FDT = '''
 /dts-v1/;
 
 / {
@@ -77,7 +80,7 @@ base_fdt = '''
 # then run the 'bootm' command, then run the unit test which checks that the
 # working tree has the required things filled in according to the OS requests
 # above (random, aslr2, etc.)
-base_script = '''
+BASE_SCRIPT = '''
 host load hostfs 0 %(fit_addr)x %(fit)s
 fdt addr %(fit_addr)x
 bootm start %(fit_addr)x
@@ -91,9 +94,10 @@ ut bootstd vbe_test_fixup
 @pytest.mark.boardspec('sandbox_flattree')
 @pytest.mark.requiredtool('dtc')
 def test_vbe(u_boot_console):
+    """Set up a FIT, boot it and check the fixups happened"""
     cons = u_boot_console
     kernel = fit_util.make_kernel(cons, 'vbe-kernel.bin', 'kernel')
-    fdt = fit_util.make_dtb(cons, base_fdt, 'vbe-fdt')
+    fdt = fit_util.make_dtb(cons, BASE_FDT, 'vbe-fdt')
     fdt_out = fit_util.make_fname(cons, 'fdt-out.dtb')
 
     params = {
@@ -109,10 +113,10 @@ def test_vbe(u_boot_console):
         'compression' : 'none',
     }
     mkimage = cons.config.build_dir + '/tools/mkimage'
-    fit = fit_util.make_fit(cons, mkimage, base_its, params, 'test-vbe.fit',
-                            base_fdt)
+    fit = fit_util.make_fit(cons, mkimage, BASE_ITS, params, 'test-vbe.fit',
+                            BASE_FDT)
     params['fit'] = fit
-    cmd = base_script % params
+    cmd = BASE_SCRIPT % params
 
     with cons.log.section('Kernel load'):
         output = cons.run_command_list(cmd.splitlines())
-- 
2.37.3.998.g577e59143f-goog


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

* [PATCH 41/45] vbe: Use a manual test
  2022-09-25 15:02 [PATCH 00/45] vbe: Implement the full firmware flow Simon Glass
                   ` (39 preceding siblings ...)
  2022-09-25 15:02 ` [PATCH 40/45] vbe: Correct pylint warnings in test_vbe Simon Glass
@ 2022-09-25 15:02 ` Simon Glass
  2022-09-25 15:02 ` [PATCH 42/45] vbe: Record which phases loaded using VBE Simon Glass
                   ` (3 subsequent siblings)
  44 siblings, 0 replies; 72+ messages in thread
From: Simon Glass @ 2022-09-25 15:02 UTC (permalink / raw)
  To: U-Boot Mailing List; +Cc: Tom Rini, Simon Glass

Use a manual test for the VBE test, so we can make the pytest and the
C unit test work together properly.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 test/boot/vbe_fixup.c     | 19 ++++++++-----------
 test/py/tests/test_vbe.py |  7 ++-----
 2 files changed, 10 insertions(+), 16 deletions(-)

diff --git a/test/boot/vbe_fixup.c b/test/boot/vbe_fixup.c
index 7f0f809499a..eba5c4ebe6c 100644
--- a/test/boot/vbe_fixup.c
+++ b/test/boot/vbe_fixup.c
@@ -13,21 +13,18 @@
 #include <test/ut.h>
 #include "bootstd_common.h"
 
-/* Basic test of reading nvdata and updating a fwupd node in the device tree */
-static int vbe_test_fixup(struct unit_test_state *uts)
+/*
+ * Basic test of reading nvdata and updating a fwupd node in the device tree
+ * This test works when called from test_vbe.py and it must use the flat tree,
+ * since device tree fix-ups do not yet support live tree.
+ */
+static int vbe_test_fixup_norun(struct unit_test_state *uts)
 {
 	ofnode chosen, node;
 	const char *data;
 	oftree tree;
 	int size;
 
-	/*
-	 * This test works when called from test_vbe.py and it must use the
-	 * flat tree, since device tree fix-ups do not yet support live tree.
-	 */
-	if (!working_fdt)
-		return -EAGAIN;
-
 	tree = oftree_from_fdt(working_fdt);
 	ut_assert(oftree_valid(tree));
 
@@ -55,5 +52,5 @@ static int vbe_test_fixup(struct unit_test_state *uts)
 
 	return 0;
 }
-BOOTSTD_TEST(vbe_test_fixup,
-	     UT_TESTF_DM | UT_TESTF_SCAN_FDT | UT_TESTF_FLAT_TREE);
+BOOTSTD_TEST(vbe_test_fixup_norun, UT_TESTF_DM | UT_TESTF_SCAN_FDT |
+	     UT_TESTF_FLAT_TREE | UT_TESTF_MANUAL);
diff --git a/test/py/tests/test_vbe.py b/test/py/tests/test_vbe.py
index a39cf0b31c6..8b74bfde096 100644
--- a/test/py/tests/test_vbe.py
+++ b/test/py/tests/test_vbe.py
@@ -88,7 +88,7 @@ bootm loados
 bootm prep
 fdt addr
 fdt print
-ut bootstd vbe_test_fixup
+ut bootstd -f vbe_test_fixup_norun
 '''
 
 @pytest.mark.boardspec('sandbox_flattree')
@@ -121,7 +121,4 @@ def test_vbe(u_boot_console):
     with cons.log.section('Kernel load'):
         output = cons.run_command_list(cmd.splitlines())
 
-    # This is a little wonky since there are two tests running in CI. The final
-    # one is the 'ut bootstd' command above
-    failures = [line for line in output if 'Failures' in line]
-    assert len(failures) >= 1 and 'Failures: 0' in failures[-1]
+    assert 'Failures: 0' in output[-1]
-- 
2.37.3.998.g577e59143f-goog


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

* [PATCH 42/45] vbe: Record which phases loaded using VBE
  2022-09-25 15:02 [PATCH 00/45] vbe: Implement the full firmware flow Simon Glass
                   ` (40 preceding siblings ...)
  2022-09-25 15:02 ` [PATCH 41/45] vbe: Use a manual test Simon Glass
@ 2022-09-25 15:02 ` Simon Glass
  2022-09-25 15:02 ` [PATCH 43/45] vbe: Add docs and a test for the VBE command Simon Glass
                   ` (2 subsequent siblings)
  44 siblings, 0 replies; 72+ messages in thread
From: Simon Glass @ 2022-09-25 15:02 UTC (permalink / raw)
  To: U-Boot Mailing List; +Cc: Tom Rini, Simon Glass

We expect VPL and SPL to load using VBE. Add a record of this so we can
check it in U-Boot proper.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 boot/vbe_simple_fw.c | 10 ++++++++++
 include/bloblist.h   |  1 +
 include/vbe.h        |  9 +++++++++
 3 files changed, 20 insertions(+)

diff --git a/boot/vbe_simple_fw.c b/boot/vbe_simple_fw.c
index fc05e9e2bd1..0a49d286703 100644
--- a/boot/vbe_simple_fw.c
+++ b/boot/vbe_simple_fw.c
@@ -9,6 +9,7 @@
 #define LOG_CATEGORY LOGC_BOOT
 
 #include <common.h>
+#include <bloblist.h>
 #include <bootdev.h>
 #include <bootflow.h>
 #include <bootmeth.h>
@@ -154,11 +155,17 @@ static int simple_load_from_image(struct spl_image_info *spl_image,
 	struct udevice *meth, *bdev;
 	struct simple_priv *priv;
 	struct bootflow bflow;
+	struct vbe_handoff *handoff;
 	int ret;
 
 	if (spl_phase() != PHASE_VPL && spl_phase() != PHASE_SPL)
 		return -ENOENT;
 
+	ret = bloblist_ensure_size(BLOBLISTT_VBE, sizeof(struct vbe_handoff),
+				   0, (void **)&handoff);
+	if (ret)
+		return log_msg_ret("ro", ret);
+
 	vbe_find_first_device(&meth);
 	if (!meth)
 		return log_msg_ret("vd", -ENODEV);
@@ -190,6 +197,9 @@ static int simple_load_from_image(struct spl_image_info *spl_image,
 	/* this is not used from now on, so free it */
 	bootflow_free(&bflow);
 
+	/* Record that VBE was used in this phase */
+	handoff->phases |= 1 << spl_phase();
+
 	return 0;
 }
 SPL_LOAD_IMAGE_METHOD("vbe_simple", 5, BOOT_DEVICE_VBE,
diff --git a/include/bloblist.h b/include/bloblist.h
index 9684bfd5f4b..2a2f1700eb0 100644
--- a/include/bloblist.h
+++ b/include/bloblist.h
@@ -112,6 +112,7 @@ enum bloblist_tag_t {
 	 */
 	BLOBLISTT_PROJECT_AREA = 0x8000,
 	BLOBLISTT_U_BOOT_SPL_HANDOFF = 0x8000, /* Hand-off info from SPL */
+	BLOBLISTT_VBE		= 0x8001,	/* VBE per-phase state */
 
 	/*
 	 * Vendor-specific tags are permitted here. Projects can be open source
diff --git a/include/vbe.h b/include/vbe.h
index ece2697b5dc..5ede8181b98 100644
--- a/include/vbe.h
+++ b/include/vbe.h
@@ -25,6 +25,15 @@ enum vbe_phase_t {
 	VBE_PHASE_OS,
 };
 
+/**
+ * struct vbe_handoff - information about VBE progress
+ *
+ * @phases: Indicates which phases used the VBE bootmeth (1 << PHASE_...)
+ */
+struct vbe_handoff {
+	u8 phases;
+};
+
 /**
  * vbe_phase() - get current VBE phase
  *
-- 
2.37.3.998.g577e59143f-goog


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

* [PATCH 43/45] vbe: Add docs and a test for the VBE command
  2022-09-25 15:02 [PATCH 00/45] vbe: Implement the full firmware flow Simon Glass
                   ` (41 preceding siblings ...)
  2022-09-25 15:02 ` [PATCH 42/45] vbe: Record which phases loaded using VBE Simon Glass
@ 2022-09-25 15:02 ` Simon Glass
  2022-09-25 15:02 ` [PATCH 44/45] vbe: Add a subcommand to show the VBE state Simon Glass
  2022-09-25 15:02 ` [PATCH 45/45] vbe: Add a test for the VBE flow into U-Boot proper Simon Glass
  44 siblings, 0 replies; 72+ messages in thread
From: Simon Glass @ 2022-09-25 15:02 UTC (permalink / raw)
  To: U-Boot Mailing List
  Cc: Tom Rini, Simon Glass, Bin Meng, Heinrich Schuchardt,
	Ilias Apalodimas, Marek Behún

After further development this seems to be useful for debugging and
testing. Add documentation and a test.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 doc/usage/cmd/vbe.rst | 90 +++++++++++++++++++++++++++++++++++++++++++
 doc/usage/index.rst   |  1 +
 test/boot/Makefile    |  1 +
 test/boot/vbe.c       | 69 +++++++++++++++++++++++++++++++++
 4 files changed, 161 insertions(+)
 create mode 100644 doc/usage/cmd/vbe.rst
 create mode 100644 test/boot/vbe.c

diff --git a/doc/usage/cmd/vbe.rst b/doc/usage/cmd/vbe.rst
new file mode 100644
index 00000000000..2b5cdd7d411
--- /dev/null
+++ b/doc/usage/cmd/vbe.rst
@@ -0,0 +1,90 @@
+vbe command
+===========
+
+Synopsis
+--------
+
+::
+
+    vbe list
+    vbe select <name_or_id>
+
+Description
+-----------
+
+The vbe command provides a way to interact with :doc:`../../develop/vbe`. It has
+subcommands for different purposes.
+
+vbe list
+~~~~~~~~
+
+Lists the available VBE bootmeths. These are a subset of all bootmeths, as
+accessed via the :doc:`bootmeth`.
+
+The fields are as follows:
+
+#:
+    Shows the bootmeth sequence number, Use the `bootmeth list` command to see
+    all available bootmeths.
+
+Sel:
+    Indicates the selected bootmeth with an asterisk (`*`).
+
+Device:
+    Name of VBE device, which is taken from the name of its device tree node.
+
+Driver:
+    Name of the VBE driver
+
+Description:
+    Description of the VBE driver
+
+
+vbe select
+~~~~~~~~~~
+
+Allows a particular bootmeth to be selected. Either a sequence number or a
+device name can be provided.
+
+Without any arguments, any selected device is deselected.
+
+
+Examples
+--------
+
+This shows listing and selecting devices::
+
+    => vbe list
+      #  Sel  Device           Driver          Description
+    ---  ---  --------------   --------------  -----------
+      2       firmware0        vbe_simple      VBE simple
+    ---  ---  --------------   --------------  -----------
+    => vbe sel 2
+    => vbe list
+      #  Sel  Device           Driver          Description
+    ---  ---  --------------   --------------  -----------
+      2  *    firmware0        vbe_simple      VBE simple
+    ---  ---  --------------   --------------  -----------
+    => vbe sel
+    => vbe list
+      #  Sel  Device           Driver          Description
+    ---  ---  --------------   --------------  -----------
+      2       firmware0        vbe_simple      VBE simple
+    ---  ---  --------------   --------------  -----------
+
+This shows selecting a VBE device by its name::
+
+    => vbe sel firmware0
+    => vbe list
+      #  Sel  Device           Driver          Description
+    ---  ---  --------------   --------------  -----------
+      2  *    firmware0        vbe_simple      VBE simple
+    ---  ---  --------------   --------------  -----------
+    =>
+
+
+Return value
+------------
+
+The return value $? is set to 0 (true) on success, or 1 (failure) if something
+goes wrong, such as failing to find the bootmeth with `vbe select`.
diff --git a/doc/usage/index.rst b/doc/usage/index.rst
index 73966c6e012..62c898c3575 100644
--- a/doc/usage/index.rst
+++ b/doc/usage/index.rst
@@ -68,6 +68,7 @@ Shell commands
    cmd/size
    cmd/true
    cmd/ums
+   cmd/vbe
    cmd/wdt
 
 Booting OS
diff --git a/test/boot/Makefile b/test/boot/Makefile
index d724629d3b0..167629a03ee 100644
--- a/test/boot/Makefile
+++ b/test/boot/Makefile
@@ -9,3 +9,4 @@ ifdef CONFIG_OF_LIVE
 obj-$(CONFIG_BOOTMETH_VBE_SIMPLE) += vbe_simple.o
 endif
 obj-$(CONFIG_BOOTMETH_VBE) += vbe_fixup.o
+obj-$(CONFIG_CMD_VBE) += vbe.o
diff --git a/test/boot/vbe.c b/test/boot/vbe.c
new file mode 100644
index 00000000000..9653ac5d94b
--- /dev/null
+++ b/test/boot/vbe.c
@@ -0,0 +1,69 @@
+// SPDX-License-Identifier: GPL-2.0+
+/*
+ * Test for `vbe` command
+ *
+ * Copyright 2022 Google LLC
+ * Written by Simon Glass <sjg@chromium.org>
+ */
+
+#include <common.h>
+#include <dm.h>
+#include <vbe.h>
+#include <test/suites.h>
+#include <test/ut.h>
+#include "bootstd_common.h"
+
+/* Check 'vbe list' command */
+static int vbe_cmd_list(struct unit_test_state *uts)
+{
+	console_record_reset_enable();
+	ut_assertok(run_command("vbe list", 0));
+	ut_assert_nextline("  #  Sel  Device           Driver          Description");
+	ut_assert_nextlinen("---");
+	ut_assert_nextline("  2       firmware0        vbe_simple      VBE simple");
+	ut_assert_nextlinen("---");
+	ut_assert_console_end();
+
+	return 0;
+}
+BOOTSTD_TEST(vbe_cmd_list, UT_TESTF_DM | UT_TESTF_SCAN_FDT);
+
+/* Check 'vbe select' command */
+static int vbe_cmd_select(struct unit_test_state *uts)
+{
+	/* select a device */
+	console_record_reset_enable();
+	ut_assertok(run_command("vbe select 2", 0));
+	ut_assert_console_end();
+
+	ut_assertok(run_command("vbe list", 0));
+	ut_assert_nextline("  #  Sel  Device           Driver          Description");
+	ut_assert_nextlinen("---");
+	ut_assert_nextline("  2  *    firmware0        vbe_simple      VBE simple");
+	ut_assert_nextlinen("---");
+	ut_assert_console_end();
+
+	/* deselect it */
+	ut_assertok(run_command("vbe select", 0));
+	ut_assert_console_end();
+	ut_assertok(run_command("vbe list", 0));
+	ut_assert_nextline("  #  Sel  Device           Driver          Description");
+	ut_assert_nextlinen("---");
+	ut_assert_nextline("  2       firmware0        vbe_simple      VBE simple");
+	ut_assert_nextlinen("---");
+	ut_assert_console_end();
+
+	/* select a device by name */
+	console_record_reset_enable();
+	ut_assertok(run_command("vbe select firmware0", 0));
+	ut_assert_console_end();
+	ut_assertok(run_command("vbe list", 0));
+	ut_assert_nextline("  #  Sel  Device           Driver          Description");
+	ut_assert_nextlinen("---");
+	ut_assert_nextline("  2  *    firmware0        vbe_simple      VBE simple");
+	ut_assert_nextlinen("---");
+	ut_assert_console_end();
+
+	return 0;
+}
+BOOTSTD_TEST(vbe_cmd_select, UT_TESTF_DM | UT_TESTF_SCAN_FDT);
-- 
2.37.3.998.g577e59143f-goog


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

* [PATCH 44/45] vbe: Add a subcommand to show the VBE state
  2022-09-25 15:02 [PATCH 00/45] vbe: Implement the full firmware flow Simon Glass
                   ` (42 preceding siblings ...)
  2022-09-25 15:02 ` [PATCH 43/45] vbe: Add docs and a test for the VBE command Simon Glass
@ 2022-09-25 15:02 ` Simon Glass
  2022-09-25 15:02 ` [PATCH 45/45] vbe: Add a test for the VBE flow into U-Boot proper Simon Glass
  44 siblings, 0 replies; 72+ messages in thread
From: Simon Glass @ 2022-09-25 15:02 UTC (permalink / raw)
  To: U-Boot Mailing List
  Cc: Tom Rini, Simon Glass, Heiko Schocher, Heiko Thiery,
	Heinrich Schuchardt, Lokesh Vutla, Pali Rohár,
	Ricardo Salveti, Vaishnav Achath

Add a VBE command which shows the current state. Currently this is just
the phases which booted via VBE.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 cmd/vbe.c             | 30 +++++++++++++++++++++++++++++-
 doc/usage/cmd/vbe.rst | 13 +++++++++++++
 include/spl.h         |  2 ++
 test/boot/vbe.c       | 28 ++++++++++++++++++++++++++++
 4 files changed, 72 insertions(+), 1 deletion(-)

diff --git a/cmd/vbe.c b/cmd/vbe.c
index a5737edc047..16700af6202 100644
--- a/cmd/vbe.c
+++ b/cmd/vbe.c
@@ -7,9 +7,11 @@
  */
 
 #include <common.h>
+#include <bloblist.h>
 #include <bootmeth.h>
 #include <bootstd.h>
 #include <command.h>
+#include <spl.h>
 #include <vbe.h>
 
 static int do_vbe_list(struct cmd_tbl *cmdtp, int flag, int argc,
@@ -74,14 +76,40 @@ static int do_vbe_info(struct cmd_tbl *cmdtp, int flag, int argc,
 	return 0;
 }
 
+static int do_vbe_state(struct cmd_tbl *cmdtp, int flag, int argc,
+			char *const argv[])
+{
+	struct vbe_handoff *handoff;
+	int i;
+
+	handoff = bloblist_find(BLOBLISTT_VBE, sizeof(struct vbe_handoff));
+	if (!handoff) {
+		printf("No VBE state\n");
+		return CMD_RET_FAILURE;
+	}
+
+	printf("Phases:");
+	for (i = PHASE_NONE; i < PHASE_COUNT; i++) {
+		if (handoff->phases & (1 << i))
+			printf(" %s", spl_phase_name(i));
+	}
+	if (!handoff->phases)
+		printf(" (none)");
+	printf("\n");
+
+	return 0;
+}
+
 #ifdef CONFIG_SYS_LONGHELP
 static char vbe_help_text[] =
 	"list   - list VBE bootmeths\n"
 	"vbe select - select a VBE bootmeth by sequence or name\n"
-	"vbe info   - show information about a VBE bootmeth";
+	"vbe info   - show information about a VBE bootmeth\n"
+	"vbe state  - show VBE state";
 #endif
 
 U_BOOT_CMD_WITH_SUBCMDS(vbe, "Verified Boot for Embedded", vbe_help_text,
 	U_BOOT_SUBCMD_MKENT(list, 1, 1, do_vbe_list),
 	U_BOOT_SUBCMD_MKENT(select, 2, 1, do_vbe_select),
+	U_BOOT_SUBCMD_MKENT(state, 2, 1, do_vbe_state),
 	U_BOOT_SUBCMD_MKENT(info, 2, 1, do_vbe_info));
diff --git a/doc/usage/cmd/vbe.rst b/doc/usage/cmd/vbe.rst
index 2b5cdd7d411..67ccd0ce3ad 100644
--- a/doc/usage/cmd/vbe.rst
+++ b/doc/usage/cmd/vbe.rst
@@ -8,6 +8,7 @@ Synopsis
 
     vbe list
     vbe select <name_or_id>
+    vbe state
 
 Description
 -----------
@@ -49,6 +50,13 @@ device name can be provided.
 Without any arguments, any selected device is deselected.
 
 
+vbe state
+~~~~~~~~~
+
+This shows the current state of VBE. At present this is just a list of the
+U-Boot phases which booted using VBE.
+
+
 Examples
 --------
 
@@ -82,6 +90,11 @@ This shows selecting a VBE device by its name::
     ---  ---  --------------   --------------  -----------
     =>
 
+This shows the state after a successful boot into U-Boot proper, using VBE::
+
+   => vbe state
+   Phases: VPL SPL
+
 
 Return value
 ------------
diff --git a/include/spl.h b/include/spl.h
index e407c7fe55b..ab62813c4fe 100644
--- a/include/spl.h
+++ b/include/spl.h
@@ -66,6 +66,8 @@ enum u_boot_phase {
 	PHASE_SPL,	/* Running in SPL */
 	PHASE_BOARD_F,	/* Running in U-Boot before relocation */
 	PHASE_BOARD_R,	/* Running in U-Boot after relocation */
+
+	PHASE_COUNT,
 };
 
 /**
diff --git a/test/boot/vbe.c b/test/boot/vbe.c
index 9653ac5d94b..d5209c040d7 100644
--- a/test/boot/vbe.c
+++ b/test/boot/vbe.c
@@ -7,7 +7,9 @@
  */
 
 #include <common.h>
+#include <bloblist.h>
 #include <dm.h>
+#include <spl.h>
 #include <vbe.h>
 #include <test/suites.h>
 #include <test/ut.h>
@@ -67,3 +69,29 @@ static int vbe_cmd_select(struct unit_test_state *uts)
 	return 0;
 }
 BOOTSTD_TEST(vbe_cmd_select, UT_TESTF_DM | UT_TESTF_SCAN_FDT);
+
+/* Check the 'vbe state' command */
+static int vbe_cmd_state(struct unit_test_state *uts)
+{
+	struct vbe_handoff *handoff;
+
+	console_record_reset_enable();
+	ut_asserteq(CMD_RET_FAILURE, run_command("vbe state", 0));
+	ut_assert_nextline("No VBE state");
+	ut_assert_console_end();
+
+	ut_assertok(bloblist_ensure_size(BLOBLISTT_VBE,
+					 sizeof(struct vbe_handoff), 0,
+					 (void **)&handoff));
+	ut_assertok(run_command("vbe state", 0));
+	ut_assert_nextline("Phases: (none)");
+	ut_assert_console_end();
+
+	handoff->phases = 1 << PHASE_VPL | 1 << PHASE_SPL;
+	ut_assertok(run_command("vbe state", 0));
+	ut_assert_nextline("Phases: VPL SPL");
+	ut_assert_console_end();
+
+	return 0;
+}
+BOOTSTD_TEST(vbe_cmd_state, 0);
-- 
2.37.3.998.g577e59143f-goog


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

* [PATCH 45/45] vbe: Add a test for the VBE flow into U-Boot proper
  2022-09-25 15:02 [PATCH 00/45] vbe: Implement the full firmware flow Simon Glass
                   ` (43 preceding siblings ...)
  2022-09-25 15:02 ` [PATCH 44/45] vbe: Add a subcommand to show the VBE state Simon Glass
@ 2022-09-25 15:02 ` Simon Glass
  44 siblings, 0 replies; 72+ messages in thread
From: Simon Glass @ 2022-09-25 15:02 UTC (permalink / raw)
  To: U-Boot Mailing List
  Cc: Tom Rini, Simon Glass, Andrew Scull, Etienne Carriere,
	Heinrich Schuchardt, Marek Behún, Ramon Fried,
	Sean Anderson

Add a test which checks that VBE boots correctly from TPL through to
U-Boot proper. This works by attaching the image.bin file to mmc3 so
that it is accessible to sandbox_vpl. We don't want to include this
in the generic sandbox build, since that image is of zero size and
cannot be mapped with mmap().

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 arch/sandbox/dts/test.dts     | 37 +++++++++++++++++++++++
 test/py/tests/test_vbe_vpl.py | 55 +++++++++++++++++++++++++++++++++++
 2 files changed, 92 insertions(+)
 create mode 100644 test/py/tests/test_vbe_vpl.py

diff --git a/arch/sandbox/dts/test.dts b/arch/sandbox/dts/test.dts
index 0fecfa850bd..7303e7cfa2f 100644
--- a/arch/sandbox/dts/test.dts
+++ b/arch/sandbox/dts/test.dts
@@ -37,6 +37,8 @@
 		i2c0 = "/i2c@0";
 		mmc0 = "/mmc0";
 		mmc1 = "/mmc1";
+		mmc2 = "/mmc2";
+		mmc3 = "/mmc3";
 		pci0 = &pci0;
 		pci1 = &pci1;
 		pci2 = &pci2;
@@ -92,6 +94,11 @@
 			compatible = "u-boot,distro-efi";
 		};
 
+		/*
+		 * This is used for the VBE OS-request tests. A FAT filesystem
+		 * created in a partition with the VBE information appearing
+		 * before the parititon starts
+		 */
 		firmware0 {
 			u-boot,dm-vpl;
 			compatible = "fwupd,vbe-simple";
@@ -104,6 +111,28 @@
 			version-offset = <0x800>;
 			version-size = <0x100>;
 		};
+
+		/*
+		 * This is used for the VBE VPL tests. The MMC device holds the
+		 * binman image.bin file. The test progresses through each phase
+		 * of U-Boot, loading each in turn from MMC.
+		 *
+		 * Note that the test enables this node (and mmc3) before
+		 * running U-Boot
+		 */
+		firmware1 {
+			u-boot,dm-vpl;
+			status = "disabled";
+			compatible = "fwupd,vbe-simple";
+			storage = "mmc3";
+			skip-offset = <0x400000>;
+			area-start = <0>;
+			area-size = <0xe00000>;
+			state-offset = <0xdffc00>;
+			state-size = <0x40>;
+			version-offset = <0xdffe00>;
+			version-size = <0x100>;
+		};
 	};
 
 	fuzzing-engine {
@@ -966,6 +995,14 @@
 		compatible = "sandbox,mmc";
 	};
 
+	/* This is used for VBE VPL tests */
+	mmc3 {
+		status = "disabled";
+		compatible = "sandbox,mmc";
+		filename = "image.bin";
+		non-removable;
+	};
+
 	pch {
 		compatible = "sandbox,pch";
 	};
diff --git a/test/py/tests/test_vbe_vpl.py b/test/py/tests/test_vbe_vpl.py
new file mode 100644
index 00000000000..3b31b16de99
--- /dev/null
+++ b/test/py/tests/test_vbe_vpl.py
@@ -0,0 +1,55 @@
+# SPDX-License-Identifier: GPL-2.0+
+# Copyright 2022 Google LLC
+#
+# Test addition of VBE
+
+import os
+
+import pytest
+import u_boot_utils
+
+@pytest.mark.boardspec('sandbox_vpl')
+@pytest.mark.requiredtool('dtc')
+def test_vbe_vpl(u_boot_console):
+    cons = u_boot_console
+
+    # Set up the RAM buffer
+    ram = os.path.join(cons.config.build_dir, 'ram.bin')
+
+    # Make a copy of the FDT before making out changes
+    fdt_in = os.path.join(cons.config.build_dir, 'arch/sandbox/dts/test.dtb')
+    fdt = os.path.join(cons.config.build_dir, 'vpl_test.dtb')
+    with open(fdt, 'wb') as outf:
+        with open(fdt_in, 'rb') as inf:
+            outf.write(inf.read())
+
+    # Use the image file produced by binman
+    image = os.path.join(cons.config.build_dir, 'image.bin')
+
+    # Enable firmware1 and the mmc that it uses. These are needed for the full
+    # VBE flow.
+    u_boot_utils.run_and_log(
+        cons, f'fdtput -t s {fdt} /bootstd/firmware0 status disabled')
+    u_boot_utils.run_and_log(
+        cons, f'fdtput -t s {fdt} /bootstd/firmware1 status okay')
+    u_boot_utils.run_and_log(
+        cons, f'fdtput -t s {fdt} /mmc3 status okay')
+    u_boot_utils.run_and_log(
+        cons, f'fdtput -t s {fdt} /mmc3 filename {image}')
+
+    # Remove any existing RAM file, so we don't have old data present
+    if os.path.exists(ram):
+        os.remove(ram)
+    try:
+        cons.restart_uboot_with_flags(
+            ['-p', image, '-w', '-s', 'state.dtb', '-d', fdt])
+
+        # Make sure that VBE was used in both VPL (to load SPL) and SPL (to load
+        # U-Boot
+        output = cons.run_command('vbe state')
+        assert output == 'Phases: VPL SPL'
+    finally:
+        # Restart afterward in case a non-VPL test is run next. This should not
+        # happen since VPL tests are run in their own invocation of test.py, but
+        # the cost of doing this is not too great at present.
+        u_boot_console.restart_uboot()
-- 
2.37.3.998.g577e59143f-goog


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

* Re: [PATCH 14/45] dm: blk: Add udevice functions
  2022-09-25 15:02 ` [PATCH 14/45] dm: blk: Add udevice functions Simon Glass
@ 2022-09-26  0:17   ` AKASHI Takahiro
  2022-09-28 10:20     ` Simon Glass
  0 siblings, 1 reply; 72+ messages in thread
From: AKASHI Takahiro @ 2022-09-26  0:17 UTC (permalink / raw)
  To: Simon Glass
  Cc: U-Boot Mailing List, Tom Rini, Heinrich Schuchardt, Marek Vasut,
	Masahisa Kojima, Pavel Herrmann

Hi Simon,

On Sun, Sep 25, 2022 at 09:02:17AM -0600, Simon Glass wrote:
> At present we have functions called blk_dread(), etc., which take a
> struct blk_desc * to refer to the block device. Add some functions which
> use udevice instead, since this is more in keeping with how driver model
> is supposed to work.

Unfortunately, NAK.
I have already added similar functions in disk/disk-uclass.c
with my commit 59da9d4782cd ("dm: disk: add read/write interfaces with
udevice"). dev_read()/dev_write() works well with UCLASS_BLK (as intended).

I remember that you also ack'ed that patch.

-Takahiro Akashi


> Update one of the tests to use this.
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>
> ---
> 
>  drivers/block/blk-uclass.c | 51 +++++++++++++++++++++++++-------------
>  include/blk.h              | 39 ++++++++++++++++++++++++++++-
>  test/dm/usb.c              | 11 +++++---
>  3 files changed, 80 insertions(+), 21 deletions(-)
> 
> diff --git a/drivers/block/blk-uclass.c b/drivers/block/blk-uclass.c
> index f8157c8d6ae..7070fd15c89 100644
> --- a/drivers/block/blk-uclass.c
> +++ b/drivers/block/blk-uclass.c
> @@ -444,53 +444,70 @@ int blk_get_device(int uclass_id, int devnum, struct udevice **devp)
>  	return device_probe(*devp);
>  }
>  
> -unsigned long blk_dread(struct blk_desc *block_dev, lbaint_t start,
> -			lbaint_t blkcnt, void *buffer)
> +long blk_read(struct udevice *dev, lbaint_t start, lbaint_t blkcnt, void *buf)
>  {
> -	struct udevice *dev = block_dev->bdev;
> +	struct blk_desc *desc = dev_get_uclass_plat(dev);
>  	const struct blk_ops *ops = blk_get_ops(dev);
>  	ulong blks_read;
>  
>  	if (!ops->read)
>  		return -ENOSYS;
>  
> -	if (blkcache_read(block_dev->uclass_id, block_dev->devnum,
> -			  start, blkcnt, block_dev->blksz, buffer))
> +	if (blkcache_read(desc->uclass_id, desc->devnum,
> +			  start, blkcnt, desc->blksz, buf))
>  		return blkcnt;
> -	blks_read = ops->read(dev, start, blkcnt, buffer);
> +	blks_read = ops->read(dev, start, blkcnt, buf);
>  	if (blks_read == blkcnt)
> -		blkcache_fill(block_dev->uclass_id, block_dev->devnum,
> -			      start, blkcnt, block_dev->blksz, buffer);
> +		blkcache_fill(desc->uclass_id, desc->devnum, start, blkcnt,
> +			      desc->blksz, buf);
>  
>  	return blks_read;
>  }
>  
> -unsigned long blk_dwrite(struct blk_desc *block_dev, lbaint_t start,
> -			 lbaint_t blkcnt, const void *buffer)
> +long blk_write(struct udevice *dev, lbaint_t start, lbaint_t blkcnt,
> +	       const void *buf)
>  {
> -	struct udevice *dev = block_dev->bdev;
> +	struct blk_desc *desc = dev_get_uclass_plat(dev);
>  	const struct blk_ops *ops = blk_get_ops(dev);
>  
>  	if (!ops->write)
>  		return -ENOSYS;
>  
> -	blkcache_invalidate(block_dev->uclass_id, block_dev->devnum);
> -	return ops->write(dev, start, blkcnt, buffer);
> +	blkcache_invalidate(desc->uclass_id, desc->devnum);
> +
> +	return ops->write(dev, start, blkcnt, buf);
>  }
>  
> -unsigned long blk_derase(struct blk_desc *block_dev, lbaint_t start,
> -			 lbaint_t blkcnt)
> +long blk_erase(struct udevice *dev, lbaint_t start, lbaint_t blkcnt)
>  {
> -	struct udevice *dev = block_dev->bdev;
> +	struct blk_desc *desc = dev_get_uclass_plat(dev);
>  	const struct blk_ops *ops = blk_get_ops(dev);
>  
>  	if (!ops->erase)
>  		return -ENOSYS;
>  
> -	blkcache_invalidate(block_dev->uclass_id, block_dev->devnum);
> +	blkcache_invalidate(desc->uclass_id, desc->devnum);
> +
>  	return ops->erase(dev, start, blkcnt);
>  }
>  
> +ulong blk_dread(struct blk_desc *desc, lbaint_t start, lbaint_t blkcnt,
> +		void *buffer)
> +{
> +	return blk_read(desc->bdev, start, blkcnt, buffer);
> +}
> +
> +ulong blk_dwrite(struct blk_desc *desc, lbaint_t start, lbaint_t blkcnt,
> +		 const void *buffer)
> +{
> +	return blk_write(desc->bdev, start, blkcnt, buffer);
> +}
> +
> +ulong blk_derase(struct blk_desc *desc, lbaint_t start, lbaint_t blkcnt)
> +{
> +	return blk_erase(desc->bdev, start, blkcnt);
> +}
> +
>  int blk_get_from_parent(struct udevice *parent, struct udevice **devp)
>  {
>  	struct udevice *dev;
> diff --git a/include/blk.h b/include/blk.h
> index cdc6f0fc7eb..8614d1420ac 100644
> --- a/include/blk.h
> +++ b/include/blk.h
> @@ -273,6 +273,43 @@ unsigned long blk_dwrite(struct blk_desc *block_dev, lbaint_t start,
>  unsigned long blk_derase(struct blk_desc *block_dev, lbaint_t start,
>  			 lbaint_t blkcnt);
>  
> +/**
> + * blk_read() - Read from a block device
> + *
> + * @dev: Device to read from
> + * @start: Start block for the read
> + * @blkcnt: Number of blocks to read
> + * @buf: Place to put the data
> + * @return number of blocks read (which may be less than @blkcnt),
> + * or -ve on error. This never returns 0 unless @blkcnt is 0
> + */
> +long blk_read(struct udevice *dev, lbaint_t start, lbaint_t blkcnt,
> +	      void *buffer);
> +
> +/**
> + * blk_write() - Write to a block device
> + *
> + * @dev: Device to write to
> + * @start: Start block for the write
> + * @blkcnt: Number of blocks to write
> + * @buf: Data to write
> + * @return number of blocks written (which may be less than @blkcnt),
> + * or -ve on error. This never returns 0 unless @blkcnt is 0
> + */
> +long blk_write(struct udevice *dev, lbaint_t start, lbaint_t blkcnt,
> +	       const void *buffer);
> +
> +/**
> + * blk_erase() - Erase part of a block device
> + *
> + * @dev: Device to erase
> + * @start: Start block for the erase
> + * @blkcnt: Number of blocks to erase
> + * @return number of blocks erased (which may be less than @blkcnt),
> + * or -ve on error. This never returns 0 unless @blkcnt is 0
> + */
> +long blk_erase(struct udevice *dev, lbaint_t start, lbaint_t blkcnt);
> +
>  /**
>   * blk_find_device() - Find a block device
>   *
> @@ -428,7 +465,7 @@ const char *blk_get_devtype(struct udevice *dev);
>  
>  /**
>   * blk_get_by_device() - Get the block device descriptor for the given device
> - * @dev:	Instance of a storage device
> + * @dev:	Instance of a storage device (the parent of the block device)
>   *
>   * Return: With block device descriptor on success , NULL if there is no such
>   *	   block device.
> diff --git a/test/dm/usb.c b/test/dm/usb.c
> index 5d6ceefce0b..445b21a560b 100644
> --- a/test/dm/usb.c
> +++ b/test/dm/usb.c
> @@ -43,19 +43,24 @@ DM_TEST(dm_test_usb_base, UT_TESTF_SCAN_PDATA | UT_TESTF_SCAN_FDT);
>   */
>  static int dm_test_usb_flash(struct unit_test_state *uts)
>  {
> -	struct udevice *dev;
> -	struct blk_desc *dev_desc;
> +	struct blk_desc *dev_desc, *chk;
> +	struct udevice *dev, *blk;
>  	char cmp[1024];
>  
>  	state_set_skip_delays(true);
>  	ut_assertok(usb_init());
>  	ut_assertok(uclass_get_device(UCLASS_MASS_STORAGE, 0, &dev));
>  	ut_assertok(blk_get_device_by_str("usb", "0", &dev_desc));
> +	chk = blk_get_by_device(dev);
> +	ut_asserteq_ptr(chk, dev_desc);
> +
> +	ut_assertok(device_find_first_child_by_uclass(dev, UCLASS_BLK, &blk));
> +	ut_asserteq_ptr(chk, blk_get_by_device(dev));
>  
>  	/* Read a few blocks and look for the string we expect */
>  	ut_asserteq(512, dev_desc->blksz);
>  	memset(cmp, '\0', sizeof(cmp));
> -	ut_asserteq(2, blk_dread(dev_desc, 0, 2, cmp));
> +	ut_asserteq(2, blk_read(blk, 0, 2, cmp));
>  	ut_assertok(strcmp(cmp, "this is a test"));
>  	ut_assertok(usb_stop());
>  
> -- 
> 2.37.3.998.g577e59143f-goog
> 

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

* Re: [PATCH 02/45] disk: Drop debug messages in part_efi
  2022-09-25 15:02 ` [PATCH 02/45] disk: Drop debug messages in part_efi Simon Glass
@ 2022-09-26  6:11   ` Heinrich Schuchardt
  0 siblings, 0 replies; 72+ messages in thread
From: Heinrich Schuchardt @ 2022-09-26  6:11 UTC (permalink / raw)
  To: Simon Glass; +Cc: Tom Rini, Philippe Reynes, U-Boot Mailing List

On 9/25/22 17:02, Simon Glass wrote:
> This is monstrously verbose when something goes wrong. It should work by
> recording the problem and reporting it (once) at the command level. At
> present it sometimes outputs hundreds of lines of CRC mismatches.
>
> For now, just silence it all.
>
>    GUID Partition Table Entry Array CRC is wrong: 0xaebfebf2 != 0xc916f712
>    find_valid_gpt: *** ERROR: Invalid GPT ***
>    find_valid_gpt: ***        Using Backup GPT ***
>    GUID Partition Table Entry Array CRC is wrong: 0xaebfebf2 != 0xc916f712
>    find_valid_gpt: *** ERROR: Invalid GPT ***
>    find_valid_gpt: ***        Using Backup GPT ***
>    ...
>
> Signed-off-by: Simon Glass <sjg@chromium.org>
> ---
>
>   disk/part_efi.c | 148 +++++++++++++++++++++++-------------------------
>   1 file changed, 71 insertions(+), 77 deletions(-)
>
> diff --git a/disk/part_efi.c b/disk/part_efi.c
> index 26738a57d5d..1a359066ae9 100644
> --- a/disk/part_efi.c
> +++ b/disk/part_efi.c
> @@ -94,10 +94,10 @@ static int validate_gpt_header(gpt_header *gpt_h, lbaint_t lba,
>
>   	/* Check the GPT header signature */
>   	if (le64_to_cpu(gpt_h->signature) != GPT_HEADER_SIGNATURE_UBOOT) {
> -		printf("%s signature is wrong: 0x%llX != 0x%llX\n",
> -		       "GUID Partition Table Header",
> -		       le64_to_cpu(gpt_h->signature),
> -		       GPT_HEADER_SIGNATURE_UBOOT);
> +		log_debug("%s signature is wrong: %#llX != %#llX\n",
> +			  "GUID Partition Table Header",
> +			  le64_to_cpu(gpt_h->signature),
> +			  GPT_HEADER_SIGNATURE_UBOOT);
>   		return -1;
>   	}
>
> @@ -111,9 +111,9 @@ static int validate_gpt_header(gpt_header *gpt_h, lbaint_t lba,
>   	memcpy(&gpt_h->header_crc32, &crc32_backup, sizeof(crc32_backup));
>
>   	if (calc_crc32 != le32_to_cpu(crc32_backup)) {
> -		printf("%s CRC is wrong: 0x%x != 0x%x\n",
> -		       "GUID Partition Table Header",
> -		       le32_to_cpu(crc32_backup), calc_crc32);
> +		log_debug("%s: CRC is wrong: %#x != %#x\n",
> +			  "GUID Partition Table Header",
> +			  le32_to_cpu(crc32_backup), calc_crc32);
>   		return -1;
>   	}
>
> @@ -121,9 +121,8 @@ static int validate_gpt_header(gpt_header *gpt_h, lbaint_t lba,
>   	 * Check that the my_lba entry points to the LBA that contains the GPT
>   	 */
>   	if (le64_to_cpu(gpt_h->my_lba) != lba) {
> -		printf("GPT: my_lba incorrect: %llX != " LBAF "\n",
> -		       le64_to_cpu(gpt_h->my_lba),
> -		       lba);
> +		log_debug("GPT: my_lba incorrect: %llX != " LBAF "\n",
> +			  le64_to_cpu(gpt_h->my_lba), lba);
>   		return -1;
>   	}
>
> @@ -132,13 +131,13 @@ static int validate_gpt_header(gpt_header *gpt_h, lbaint_t lba,
>   	 * within the disk.
>   	 */
>   	if (le64_to_cpu(gpt_h->first_usable_lba) > lastlba) {
> -		printf("GPT: first_usable_lba incorrect: %llX > " LBAF "\n",
> -		       le64_to_cpu(gpt_h->first_usable_lba), lastlba);
> +		log_debug("GPT: first_usable_lba incorrect: %llX > " LBAF "\n",
> +			  le64_to_cpu(gpt_h->first_usable_lba), lastlba);
>   		return -1;
>   	}
>   	if (le64_to_cpu(gpt_h->last_usable_lba) > lastlba) {
> -		printf("GPT: last_usable_lba incorrect: %llX > " LBAF "\n",
> -		       le64_to_cpu(gpt_h->last_usable_lba), lastlba);
> +		log_debug("GPT: last_usable_lba incorrect: %llX > " LBAF "\n",
> +			  le64_to_cpu(gpt_h->last_usable_lba), lastlba);
>   		return -1;
>   	}
>
> @@ -159,10 +158,10 @@ static int validate_gpt_entries(gpt_header *gpt_h, gpt_entry *gpt_e)
>   		le32_to_cpu(gpt_h->sizeof_partition_entry));
>
>   	if (calc_crc32 != le32_to_cpu(gpt_h->partition_entry_array_crc32)) {
> -		printf("%s: 0x%x != 0x%x\n",
> -		       "GUID Partition Table Entry Array CRC is wrong",
> -		       le32_to_cpu(gpt_h->partition_entry_array_crc32),
> -		       calc_crc32);
> +		log_debug("%s: %#x != %#x\n",
> +			  "GUID Partition Table Entry Array CRC is wrong",
> +			  le32_to_cpu(gpt_h->partition_entry_array_crc32),
> +			  calc_crc32);
>   		return -1;
>   	}
>
> @@ -330,14 +329,15 @@ static int set_protective_mbr(struct blk_desc *dev_desc)
>   	/* Setup the Protective MBR */
>   	ALLOC_CACHE_ALIGN_BUFFER_PAD(legacy_mbr, p_mbr, 1, dev_desc->blksz);
>   	if (p_mbr == NULL) {
> -		printf("%s: calloc failed!\n", __func__);
> -		return -1;
> +		log_debug("calloc failed!\n");
> +		return -ENOMEM;
>   	}
>
>   	/* Read MBR to backup boot code if it exists */
>   	if (blk_dread(dev_desc, 0, 1, p_mbr) != 1) {
> -		pr_err("** Can't read from device %d **\n", dev_desc->devnum);
> -		return -1;
> +		log_debug("** Can't read from device %d **\n",
> +			  dev_desc->devnum);
> +		return -EIO;
>   	}
>
>   	/* Clear all data in MBR except of backed up boot code */
> @@ -352,9 +352,8 @@ static int set_protective_mbr(struct blk_desc *dev_desc)
>
>   	/* Write MBR sector to the MMC device */
>   	if (blk_dwrite(dev_desc, 0, 1, p_mbr) != 1) {
> -		printf("** Can't write to device %d **\n",
> -			dev_desc->devnum);
> -		return -1;
> +		log_debug("** Can't write to device %d **\n", dev_desc->devnum);
> +		return -EIO;
>   	}
>
>   	return 0;
> @@ -404,8 +403,8 @@ int write_gpt_table(struct blk_desc *dev_desc,
>   	return 0;
>
>    err:
> -	printf("** Can't write to device %d **\n", dev_desc->devnum);
> -	return -1;
> +	log_debug("** Can't write to device %d **\n", dev_desc->devnum);
> +	return -EIO;
>   }
>
>   int gpt_fill_pte(struct blk_desc *dev_desc,
> @@ -451,15 +450,15 @@ int gpt_fill_pte(struct blk_desc *dev_desc,
>   		 */
>   		if (((start < hdr_end && hdr_start < (start + size)) ||
>   		     (start < pte_end && pte_start < (start + size)))) {
> -			printf("Partition overlap\n");
> -			return -1;
> +			log_debug("Partition overlap\n");
> +			return -ENOSPC;
>   		}
>
>   		gpt_e[i].starting_lba = cpu_to_le64(start);
>
>   		if (offset > (last_usable_lba + 1)) {
> -			printf("Partitions layout exceds disk size\n");
> -			return -1;
> +			log_debug("Partitions layout exceeds disk size\n");
> +			return -E2BIG;
>   		}
>   		/* partition ending lba */
>   		if ((i == parts - 1) && (size == 0))
> @@ -474,9 +473,9 @@ int gpt_fill_pte(struct blk_desc *dev_desc,
>   		if (strlen(str_type_guid)) {
>   			if (uuid_str_to_bin(str_type_guid, bin_type_guid,
>   					    UUID_STR_FORMAT_GUID)) {
> -				printf("Partition no. %d: invalid type guid: %s\n",
> -				       i, str_type_guid);
> -				return -1;
> +				log_debug("Partition no. %d: invalid type guid: %s\n",
> +					  i, str_type_guid);
> +				return -EINVAL;
>   			}
>   		} else {
>   			/* default partition type GUID */
> @@ -494,9 +493,9 @@ int gpt_fill_pte(struct blk_desc *dev_desc,
>   		bin_uuid = gpt_e[i].unique_partition_guid.b;
>
>   		if (uuid_str_to_bin(str_uuid, bin_uuid, UUID_STR_FORMAT_GUID)) {
> -			printf("Partition no. %d: invalid guid: %s\n",
> -				i, str_uuid);
> -			return -1;
> +			log_debug("Partition no. %d: invalid guid: %s\n",
> +				  i, str_uuid);
> +			return -EINVAL;
>   		}
>   #endif
>
> @@ -608,8 +607,8 @@ int gpt_restore(struct blk_desc *dev_desc, char *str_disk_guid,
>   	size = PAD_TO_BLOCKSIZE(sizeof(gpt_header), dev_desc);
>   	gpt_h = malloc_cache_aligned(size);
>   	if (gpt_h == NULL) {
> -		printf("%s: calloc failed!\n", __func__);
> -		return -1;
> +		log_debug("calloc failed!\n");
> +		return -ENOMEM;
>   	}
>   	memset(gpt_h, 0, size);
>
> @@ -617,9 +616,9 @@ int gpt_restore(struct blk_desc *dev_desc, char *str_disk_guid,
>   				dev_desc);
>   	gpt_e = malloc_cache_aligned(size);
>   	if (gpt_e == NULL) {
> -		printf("%s: calloc failed!\n", __func__);
> +		log_debug("calloc failed!\n");
>   		free(gpt_h);
> -		return -1;
> +		return -ENOMEM;
>   	}
>   	memset(gpt_e, 0, size);
>
> @@ -675,8 +674,7 @@ int gpt_verify_headers(struct blk_desc *dev_desc, gpt_header *gpt_head,
>   	if (is_gpt_valid(dev_desc,
>   			 GPT_PRIMARY_PARTITION_TABLE_LBA,
>   			 gpt_head, gpt_pte) != 1) {
> -		printf("%s: *** ERROR: Invalid GPT ***\n",
> -		       __func__);
> +		log_debug("*** ERROR: Invalid GPT ***\n");

Silencing the messages during partition probing looks ok to me.

Can we get rid of all these '*** ERROR: '? The message texts already
indicate that an unexpected situation occurred.

Best regards

Heinrich

>   		return -1;
>   	}
>
> @@ -687,15 +685,13 @@ int gpt_verify_headers(struct blk_desc *dev_desc, gpt_header *gpt_head,
>   	 * Check that the alternate_lba entry points to the last LBA
>   	 */
>   	if (le64_to_cpu(gpt_head->alternate_lba) != (dev_desc->lba - 1)) {
> -		printf("%s: *** ERROR: Misplaced Backup GPT ***\n",
> -		       __func__);
> +		log_debug("*** ERROR: Misplaced Backup GPT ***\n");
>   		return -1;
>   	}
>
>   	if (is_gpt_valid(dev_desc, (dev_desc->lba - 1),
>   			 gpt_head, gpt_pte) != 1) {
> -		printf("%s: *** ERROR: Invalid Backup GPT ***\n",
> -		       __func__);
> +		log_debug("*** ERROR: Invalid Backup GPT ***\n");
>   		return -1;
>   	}
>
> @@ -913,8 +909,8 @@ int write_mbr_and_gpt_partitions(struct blk_desc *dev_desc, void *buf)
>   	lba = 0;	/* MBR is always at 0 */
>   	cnt = 1;	/* MBR (1 block) */
>   	if (blk_dwrite(dev_desc, lba, cnt, buf) != cnt) {
> -		printf("%s: failed writing '%s' (%d blks at 0x" LBAF ")\n",
> -		       __func__, "MBR", cnt, lba);
> +		log_debug("failed writing '%s' (%d blks at 0x" LBAF ")\n",
> +			  "MBR", cnt, lba);
>   		return 1;
>   	}
>
> @@ -922,16 +918,16 @@ int write_mbr_and_gpt_partitions(struct blk_desc *dev_desc, void *buf)
>   	lba = GPT_PRIMARY_PARTITION_TABLE_LBA;
>   	cnt = 1;	/* GPT Header (1 block) */
>   	if (blk_dwrite(dev_desc, lba, cnt, gpt_h) != cnt) {
> -		printf("%s: failed writing '%s' (%d blks at 0x" LBAF ")\n",
> -		       __func__, "Primary GPT Header", cnt, lba);
> +		log_debug("failed writing '%s' (%d blks at 0x" LBAF ")\n",
> +			  "Primary GPT Header", cnt, lba);
>   		return 1;
>   	}
>
>   	lba = le64_to_cpu(gpt_h->partition_entry_lba);
>   	cnt = gpt_e_blk_cnt;
>   	if (blk_dwrite(dev_desc, lba, cnt, gpt_e) != cnt) {
> -		printf("%s: failed writing '%s' (%d blks at 0x" LBAF ")\n",
> -		       __func__, "Primary GPT Entries", cnt, lba);
> +		log_debug("failed writing '%s' (%d blks at 0x" LBAF ")\n",
> +			  "Primary GPT Entries", cnt, lba);
>   		return 1;
>   	}
>
> @@ -941,16 +937,16 @@ int write_mbr_and_gpt_partitions(struct blk_desc *dev_desc, void *buf)
>   	lba = le64_to_cpu(gpt_h->partition_entry_lba);
>   	cnt = gpt_e_blk_cnt;
>   	if (blk_dwrite(dev_desc, lba, cnt, gpt_e) != cnt) {
> -		printf("%s: failed writing '%s' (%d blks at 0x" LBAF ")\n",
> -		       __func__, "Backup GPT Entries", cnt, lba);
> +		log_debug("failed writing '%s' (%d blks at 0x" LBAF ")\n",
> +			  "Backup GPT Entries", cnt, lba);
>   		return 1;
>   	}
>
>   	lba = le64_to_cpu(gpt_h->my_lba);
>   	cnt = 1;	/* GPT Header (1 block) */
>   	if (blk_dwrite(dev_desc, lba, cnt, gpt_h) != cnt) {
> -		printf("%s: failed writing '%s' (%d blks at 0x" LBAF ")\n",
> -		       __func__, "Backup GPT Header", cnt, lba);
> +		log_debug("failed writing '%s' (%d blks at 0x" LBAF ")\n",
> +			  "Backup GPT Header", cnt, lba);
>   		return 1;
>   	}
>
> @@ -1017,7 +1013,7 @@ static int is_gpt_valid(struct blk_desc *dev_desc, u64 lba,
>   {
>   	/* Confirm valid arguments prior to allocation. */
>   	if (!dev_desc || !pgpt_head) {
> -		printf("%s: Invalid Argument(s)\n", __func__);
> +		log_debug("Invalid Argument(s)\n");
>   		return 0;
>   	}
>
> @@ -1025,19 +1021,19 @@ static int is_gpt_valid(struct blk_desc *dev_desc, u64 lba,
>
>   	/* Read MBR Header from device */
>   	if (blk_dread(dev_desc, 0, 1, (ulong *)mbr) != 1) {
> -		printf("*** ERROR: Can't read MBR header ***\n");
> +		log_debug("*** ERROR: Can't read MBR header ***\n");
>   		return 0;
>   	}
>
>   	/* Read GPT Header from device */
>   	if (blk_dread(dev_desc, (lbaint_t)lba, 1, pgpt_head) != 1) {
> -		printf("*** ERROR: Can't read GPT header ***\n");
> +		log_debug("*** ERROR: Can't read GPT header ***\n");
>   		return 0;
>   	}
>
>   	/* Invalid but nothing to yell about. */
>   	if (le64_to_cpu(pgpt_head->signature) == GPT_HEADER_CHROMEOS_IGNORE) {
> -		debug("ChromeOS 'IGNOREME' GPT header found and ignored\n");
> +		log_debug("ChromeOS 'IGNOREME' GPT header found and ignored\n");
>   		return 2;
>   	}
>
> @@ -1089,17 +1085,15 @@ static int find_valid_gpt(struct blk_desc *dev_desc, gpt_header *gpt_head,
>
>   	if (r != 1) {
>   		if (r != 2)
> -			printf("%s: *** ERROR: Invalid GPT ***\n", __func__);
> +			log_debug("*** ERROR: Invalid GPT ***\n");
>
>   		if (is_gpt_valid(dev_desc, (dev_desc->lba - 1), gpt_head,
>   				 pgpt_pte) != 1) {
> -			printf("%s: *** ERROR: Invalid Backup GPT ***\n",
> -			       __func__);
> +			log_debug("*** ERROR: Invalid Backup GPT ***\n");
>   			return 0;
>   		}
>   		if (r != 2)
> -			printf("%s: ***        Using Backup GPT ***\n",
> -			       __func__);
> +			log_debug("***        Using Backup GPT ***\n");
>   	}
>   	return 1;
>   }
> @@ -1121,17 +1115,17 @@ static gpt_entry *alloc_read_gpt_entries(struct blk_desc *dev_desc,
>   	gpt_entry *pte = NULL;
>
>   	if (!dev_desc || !pgpt_head) {
> -		printf("%s: Invalid Argument(s)\n", __func__);
> +		log_debug("Invalid Argument(s)\n");
>   		return NULL;
>   	}
>
>   	count = le32_to_cpu(pgpt_head->num_partition_entries) *
>   		le32_to_cpu(pgpt_head->sizeof_partition_entry);
>
> -	debug("%s: count = %u * %u = %lu\n", __func__,
> -	      (u32) le32_to_cpu(pgpt_head->num_partition_entries),
> -	      (u32) le32_to_cpu(pgpt_head->sizeof_partition_entry),
> -	      (ulong)count);
> +	log_debug("count = %u * %u = %lu\n",
> +		  (u32)le32_to_cpu(pgpt_head->num_partition_entries),
> +		  (u32)le32_to_cpu(pgpt_head->sizeof_partition_entry),
> +		  (ulong)count);
>
>   	/* Allocate memory for PTE, remember to FREE */
>   	if (count != 0) {
> @@ -1140,8 +1134,8 @@ static gpt_entry *alloc_read_gpt_entries(struct blk_desc *dev_desc,
>   	}
>
>   	if (count == 0 || pte == NULL) {
> -		printf("%s: ERROR: Can't allocate %#lX bytes for GPT Entries\n",
> -		       __func__, (ulong)count);
> +		log_debug("ERROR: Can't allocate %#lX bytes for GPT Entries\n",
> +			  (ulong)count);
>   		return NULL;
>   	}
>
> @@ -1149,7 +1143,7 @@ static gpt_entry *alloc_read_gpt_entries(struct blk_desc *dev_desc,
>   	blk = le64_to_cpu(pgpt_head->partition_entry_lba);
>   	blk_cnt = BLOCK_CNT(count, dev_desc);
>   	if (blk_dread(dev_desc, blk, (lbaint_t)blk_cnt, pte) != blk_cnt) {
> -		printf("*** ERROR: Can't read GPT Entries ***\n");
> +		log_debug("*** ERROR: Can't read GPT Entries ***\n");
>   		free(pte);
>   		return NULL;
>   	}
> @@ -1167,7 +1161,7 @@ static int is_pte_valid(gpt_entry * pte)
>   	efi_guid_t unused_guid;
>
>   	if (!pte) {
> -		printf("%s: Invalid Argument(s)\n", __func__);
> +		log_debug("Invalid Argument(s)\n");
>   		return 0;
>   	}
>
> @@ -1179,8 +1173,8 @@ static int is_pte_valid(gpt_entry * pte)
>   	if (memcmp(pte->partition_type_guid.b, unused_guid.b,
>   		sizeof(unused_guid.b)) == 0) {
>
> -		debug("%s: Found an unused PTE GUID at 0x%08X\n", __func__,
> -		      (unsigned int)(uintptr_t)pte);
> +		log_debug("Found an unused PTE GUID at 0x%08X\n",
> +			  (unsigned int)(uintptr_t)pte);
>
>   		return 0;
>   	} else {


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

* Re: [PATCH 04/45] rsa: Avoid warning in padding_pss_verify()
  2022-09-25 15:02 ` [PATCH 04/45] rsa: Avoid warning in padding_pss_verify() Simon Glass
@ 2022-09-26  6:23   ` Heinrich Schuchardt
  0 siblings, 0 replies; 72+ messages in thread
From: Heinrich Schuchardt @ 2022-09-26  6:23 UTC (permalink / raw)
  To: Simon Glass
  Cc: Tom Rini, Alexandru Gagniuc, Jamin Lin, Philippe Reynes,
	SESA644425, U-Boot Mailing List

On 9/25/22 17:02, Simon Glass wrote:
> With gcc 12 we ge the following warning:

%s/ge/get/

>
> In file included from tools/lib/rsa/rsa-verify.c:1:
> lib/rsa/rsa-verify.c:275:11: warning: ‘*db’ may be used uninitialized
>    275 |         db[0] &= 0xff >> leftmost_bits;
>
> Check the value of db_len to ensure this cannot happen.
>
> Signed-off-by: Simon Glass <sjg@chromium.org>
> ---
>
>   lib/rsa/rsa-verify.c | 5 +++++
>   1 file changed, 5 insertions(+)
>
> diff --git a/lib/rsa/rsa-verify.c b/lib/rsa/rsa-verify.c
> index 1d95cfbdee0..81c39251e59 100644
> --- a/lib/rsa/rsa-verify.c
> +++ b/lib/rsa/rsa-verify.c
> @@ -234,6 +234,11 @@ int padding_pss_verify(struct image_sign_info *info,
>   	uint8_t leftmost_mask;
>   	struct checksum_algo *checksum = info->checksum;
>
> +	if (db_len <= 0) {

Why are length fields msg_len, hash_len, db_len signed? I cannot imagine
an array with negative length. Any of the parameters msg_len and
hash_len being negative would be an error.

The check here should be

	if (msg_len >= hash_len)

to allow db_len moving to unsigned types.

struct padding_algo() should be corrected to use size_t.

Best regards

Heinrich

> +		ret = -EINVAL;
> +		goto out;
> +	}
> +
>   	/* first, allocate everything */
>   	db_mask = malloc(db_len);
>   	db = malloc(db_len);


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

* Re: [PATCH 09/45] CI: Install pyelftools for builds
  2022-09-25 15:02 ` [PATCH 09/45] CI: Install pyelftools for builds Simon Glass
@ 2022-09-26  6:29   ` Heinrich Schuchardt
  2022-09-28 10:20     ` Simon Glass
  0 siblings, 1 reply; 72+ messages in thread
From: Heinrich Schuchardt @ 2022-09-26  6:29 UTC (permalink / raw)
  To: Simon Glass
  Cc: Tom Rini, AKASHI Takahiro, Huang Jianan, Joel Stanley, Rick Chen,
	U-Boot Mailing List

On 9/25/22 17:02, Simon Glass wrote:
> Binman needs this module to build sandbox_vpl so install it in the
> before_script and in the world build. The existing pip install is too
> late for the buildman invocation.
>
> Add it to the docker file for the future.
>
> Signed-off-by: Simon Glass <sjg@chromium.org>
> ---
>
>   .gitlab-ci.yml          | 2 ++
>   tools/docker/Dockerfile | 1 +
>   2 files changed, 3 insertions(+)
>
> diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
> index 8e94bf8d4e8..47e36edcc4a 100644
> --- a/.gitlab-ci.yml
> +++ b/.gitlab-ci.yml
> @@ -34,6 +34,7 @@ stages:
>       # If we've been asked to use clang only do one configuration.
>       - export UBOOT_TRAVIS_BUILD_DIR=/tmp/${TEST_PY_BD}
>       - echo BUILD_ENV ${BUILD_ENV}
> +    - pip install pyelftools

Why do we need pip install here? Is pyelftools used outside the Docker
image to which you add pyelftools below?

Best regards

Heinrich

>       - tools/buildman/buildman -o ${UBOOT_TRAVIS_BUILD_DIR} -w -E -W -e
>           --board ${TEST_PY_BD} ${OVERRIDE}
>       - cp ~/grub_x86.efi $UBOOT_TRAVIS_BUILD_DIR/
> @@ -113,6 +114,7 @@ build all PowerPC platforms:
>   build all other platforms:
>     stage: world build
>     script:
> +    - pip install pyelftools
>       - ret=0;
>         ./tools/buildman/buildman -o /tmp -P -E -W -x arm,powerpc || ret=$?;
>         if [[ $ret -ne 0 ]]; then
> diff --git a/tools/docker/Dockerfile b/tools/docker/Dockerfile
> index d3292e752a9..6fd7da66603 100644
> --- a/tools/docker/Dockerfile
> +++ b/tools/docker/Dockerfile
> @@ -96,6 +96,7 @@ RUN apt-get update && apt-get install -y \
>   	python3 \
>   	python3-dev \
>   	python3-pip \
> +	python3-pyelftools \
>   	python3-sphinx \
>   	python3-virtualenv \
>   	rpm2cpio \


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

* Re: [PATCH 18/45] sandbox: Drop message about writing sandbox state
  2022-09-25 15:02 ` [PATCH 18/45] sandbox: Drop message about writing sandbox state Simon Glass
@ 2022-09-26  6:31   ` Heinrich Schuchardt
  0 siblings, 0 replies; 72+ messages in thread
From: Heinrich Schuchardt @ 2022-09-26  6:31 UTC (permalink / raw)
  To: Simon Glass, U-Boot Mailing List; +Cc: Tom Rini

On 9/25/22 17:02, Simon Glass wrote:
> This happens every time sandbox moves to the next phase so is not very
> interesting. Display the message only when debugging.
>
> Signed-off-by: Simon Glass <sjg@chromium.org>

Reviewed-by: Heinrich Schuchardt <xypron.glpk@gmx.de>

> ---
>
>   arch/sandbox/cpu/state.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/arch/sandbox/cpu/state.c b/arch/sandbox/cpu/state.c
> index fcc4a337e59..a681e472ab6 100644
> --- a/arch/sandbox/cpu/state.c
> +++ b/arch/sandbox/cpu/state.c
> @@ -470,7 +470,7 @@ int state_uninit(void)
>   	int err;
>
>   	if (state->write_ram_buf || state->write_state)
> -		log_info("Writing sandbox state\n");
> +		log_debug("Writing sandbox state\n");
>   	state = &main_state;
>
>   	/* Finish the bloblist, so that it is correct before writing memory */


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

* Re: [PATCH 20/45] sandbox: Add a way to specify the sandbox executable
  2022-09-25 15:02 ` [PATCH 20/45] sandbox: Add a way to specify the sandbox executable Simon Glass
@ 2022-09-26  6:49   ` Heinrich Schuchardt
  2022-11-07 23:35     ` Simon Glass
  0 siblings, 1 reply; 72+ messages in thread
From: Heinrich Schuchardt @ 2022-09-26  6:49 UTC (permalink / raw)
  To: Simon Glass; +Cc: Tom Rini, Andrew Scull, U-Boot Mailing List

On 9/25/22 17:02, Simon Glass wrote:
> At present the sandbox executable is assumed to be arg[0] but this only
> works for a single jump (e.g. from SPL to U-Boot). Add a new arg to solve
> this issue, along with a detailed comment.

What is the impact on os_relaunch()?
With current origin/master it fails on SPL:

$ spl/u-boot-spl -S

U-Boot SPL 2022.10-rc5-00012-g435596d57f (Sep 26 2022 - 08:40:30 +0200)
Creating new bloblist size 400 at c000
Finished bloblist size 400 at c000
Finished bloblist size 400 at c000
Found existing bloblist size 400 at c000


U-Boot 2022.10-rc5-00012-g435596d57f (Sep 26 2022 - 08:40:30 +0200)

DRAM:  256 MiB
Core:  23 devices, 11 uclasses, devicetree: board
MMC:
Loading Environment from nowhere... OK
In:    serial
Out:   serial
Err:   serial
Net:   No ethernet found.
Hit any key to stop autoboot:  0
=> reset
resetting ...
Finished bloblist size 400 at bffd000
Failed to read RAM buffer '/tmp/u-boot.mem.LypddQ': -1
Expected bloblist at c000 not found (err=-2)
Creating new bloblist size 400 at c000


U-Boot 2022.10-rc5-00012-g435596d57f (Sep 26 2022 - 08:40:30 +0200)

u-boot: error: failed while parsing option: memory
         try running with --help for more information.

Best regards

Heinrich

>
> Signed-off-by: Simon Glass <sjg@chromium.org>
> ---
>
>   arch/sandbox/cpu/start.c         | 30 ++++++++++++++++++++++++++++++
>   arch/sandbox/include/asm/state.h |  3 ++-
>   2 files changed, 32 insertions(+), 1 deletion(-)
>
> diff --git a/arch/sandbox/cpu/start.c b/arch/sandbox/cpu/start.c
> index 642be164a39..622df41f54c 100644
> --- a/arch/sandbox/cpu/start.c
> +++ b/arch/sandbox/cpu/start.c
> @@ -244,6 +244,36 @@ static int sandbox_cmdline_cb_jump(struct sandbox_state *state,
>   }
>   SANDBOX_CMDLINE_OPT_SHORT(jump, 'j', 1, "Jumped from previous U-Boot");
>
> +static int sandbox_cmdline_cb_program(struct sandbox_state *state,
> +				      const char *arg)
> +{
> +	/*
> +	 * Record the program name to use when jumping to future phases. This
> +	 * is the original executable which holds all the phases. We need to
> +	 * use this instead of argv[0] since each phase is started by
> +	 * extracting a particular binary from the full program, then running
> +	 * it. Therefore in that binary, argv[0] contains only the
> +	 * current-phase executable.
> +	 *
> +	 * For example, sandbox TPL may be started using image file:
> +	 *
> +	 *     ./image.bin
> +	 *
> +	 * but then TPL needs to run VPL, which it does by extracting the VPL
> +	 * image from the image.bin file.
> +	 *
> +	 *    ./temp-vpl
> +	 *
> +	 * When VPL runs it needs access to the original image.bin so it can
> +	 * extract the next phase (SPL). This works if we use '-f image.bin'
> +	 * when starting the original image.bin file.
> +	 */
> +	state->prog_fname = arg;
> +
> +	return 0;
> +}
> +SANDBOX_CMDLINE_OPT_SHORT(program, 'p', 1, "U-Boot program name");
> +
>   static int sandbox_cmdline_cb_memory(struct sandbox_state *state,
>   				     const char *arg)
>   {
> diff --git a/arch/sandbox/include/asm/state.h b/arch/sandbox/include/asm/state.h
> index fd42daad51c..49ea483d332 100644
> --- a/arch/sandbox/include/asm/state.h
> +++ b/arch/sandbox/include/asm/state.h
> @@ -71,7 +71,8 @@ struct sandbox_state {
>   	const char *parse_err;		/* Error to report from parsing */
>   	int argc;			/* Program arguments */
>   	char **argv;			/* Command line arguments */
> -	const char *jumped_fname;	/* Jumped from previous U_Boot */
> +	const char *jumped_fname;	/* Jumped from previous U-Boot */
> +	const char *prog_fname;		/* U-Boot executable filename */
>   	uint8_t *ram_buf;		/* Emulated RAM buffer */
>   	unsigned long ram_size;		/* Size of RAM buffer */
>   	const char *ram_buf_fname;	/* Filename to use for RAM buffer */


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

* Re: [PATCH 22/45] image: Move comment for fit_conf_find_compat()
  2022-09-25 15:02 ` [PATCH 22/45] image: Move comment for fit_conf_find_compat() Simon Glass
@ 2022-09-26  6:54   ` Heinrich Schuchardt
  0 siblings, 0 replies; 72+ messages in thread
From: Heinrich Schuchardt @ 2022-09-26  6:54 UTC (permalink / raw)
  To: Simon Glass
  Cc: Tom Rini, Alexandru Gagniuc, Andre Przywara, Chia-Wei Wang,
	Jan Kiszka, Joe Hershberger, Joel Stanley, Marek Vasut,
	Philippe Reynes, Sean Anderson, U-Boot Mailing List

On 9/25/22 17:02, Simon Glass wrote:
> Move this comment to the header file, where the APIs should be defined.
>
> Signed-off-by: Simon Glass <sjg@chromium.org>
> ---
>
>   boot/image-fit.c | 43 -------------------------------------------
>   include/image.h  | 43 +++++++++++++++++++++++++++++++++++++++++++
>   2 files changed, 43 insertions(+), 43 deletions(-)
>
> diff --git a/boot/image-fit.c b/boot/image-fit.c
> index a7acd762272..94074515258 100644
> --- a/boot/image-fit.c
> +++ b/boot/image-fit.c
> @@ -1687,49 +1687,6 @@ int fit_check_format(const void *fit, ulong size)
>   	return 0;
>   }
>
> -/**
> - * fit_conf_find_compat
> - * @fit: pointer to the FIT format image header
> - * @fdt: pointer to the device tree to compare against
> - *
> - * fit_conf_find_compat() attempts to find the configuration whose fdt is the
> - * most compatible with the passed in device tree.
> - *
> - * Example:
> - *
> - * / o image-tree
> - *   |-o images
> - *   | |-o fdt-1
> - *   | |-o fdt-2
> - *   |
> - *   |-o configurations
> - *     |-o config-1
> - *     | |-fdt = fdt-1
> - *     |
> - *     |-o config-2
> - *       |-fdt = fdt-2
> - *
> - * / o U-Boot fdt
> - *   |-compatible = "foo,bar", "bim,bam"
> - *
> - * / o kernel fdt1
> - *   |-compatible = "foo,bar",
> - *
> - * / o kernel fdt2
> - *   |-compatible = "bim,bam", "baz,biz"
> - *
> - * Configuration 1 would be picked because the first string in U-Boot's
> - * compatible list, "foo,bar", matches a compatible string in the root of fdt1.
> - * "bim,bam" in fdt2 matches the second string which isn't as good as fdt1.
> - *
> - * As an optimization, the compatible property from the FDT's root node can be
> - * copied into the configuration node in the FIT image. This is required to
> - * match configurations with compressed FDTs.
> - *
> - * returns:
> - *     offset to the configuration to use if one was found
> - *     -1 otherwise
> - */
>   int fit_conf_find_compat(const void *fit, const void *fdt >   {
>   	int ndepth = 0;
> diff --git a/include/image.h b/include/image.h
> index b336cfa0842..ca1c6c5b3c2 100644
> --- a/include/image.h
> +++ b/include/image.h
> @@ -1136,6 +1136,49 @@ int fit_image_check_comp(const void *fit, int noffset, uint8_t comp);
>    */
>   int fit_check_format(const void *fit, ulong size);
>
> +/**
> + * fit_conf_find_compat

Please, adjust to style defined in
https://docs.kernel.org/doc-guide/kernel-doc.html#function-documentation:

fit_conf_find_compat() - Brief description

> + * @fit: pointer to the FIT format image header
> + * @fdt: pointer to the device tree to compare against
> + *
> + * fit_conf_find_compat() attempts to find the configuration whose fdt is the
> + * most compatible with the passed in device tree.
> + *
> + * Example:
> + *
> + * / o image-tree
> + *   |-o images
> + *   | |-o fdt-1
> + *   | |-o fdt-2
> + *   |
> + *   |-o configurations
> + *     |-o config-1
> + *     | |-fdt = fdt-1
> + *     |
> + *     |-o config-2
> + *       |-fdt = fdt-2
> + *
> + * / o U-Boot fdt
> + *   |-compatible = "foo,bar", "bim,bam"
> + *
> + * / o kernel fdt1
> + *   |-compatible = "foo,bar",
> + *
> + * / o kernel fdt2
> + *   |-compatible = "bim,bam", "baz,biz"

Preformatted text should be indented and preceded by ::.

> + *
> + * Configuration 1 would be picked because the first string in U-Boot's
> + * compatible list, "foo,bar", matches a compatible string in the root of fdt1.
> + * "bim,bam" in fdt2 matches the second string which isn't as good as fdt1.
> + *
> + * As an optimization, the compatible property from the FDT's root node can be
> + * copied into the configuration node in the FIT image. This is required to
> + * match configurations with compressed FDTs.
> + *
> + * returns:

Return:

Best regards

Heinrich

> + *     offset to the configuration to use if one was found
> + *     -1 otherwise
> + */
>   int fit_conf_find_compat(const void *fit, const void *fdt);
>
>   /**


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

* Re: [PATCH 25/45] test: Support tests which can only be run manually
  2022-09-25 15:02 ` [PATCH 25/45] test: Support tests which can only be run manually Simon Glass
@ 2022-09-26  6:56   ` Heinrich Schuchardt
  2022-09-28 10:20     ` Simon Glass
  0 siblings, 1 reply; 72+ messages in thread
From: Heinrich Schuchardt @ 2022-09-26  6:56 UTC (permalink / raw)
  To: Simon Glass; +Cc: Tom Rini, Rui Miguel Silva, Stefan Roese, U-Boot Mailing List

On 9/25/22 17:02, Simon Glass wrote:
> At present we normally write tests either in Python or in C. But most
> Python tests end up doing a lot of checks which would be better done in C.
> Checks done in C are orders of magnitude faster and it is possible to get
> full access to U-Boot's internal workings, rather than just relying on
> the command line.
>
> The model is to have a Python test set up some things and then use C code
> (in a unit test) to check that they were done correctly. But we don't want
> those checks to happen as part of normal test running, since each C unit
> tests is dependent on the associate Python tests, so cannot run without
> it.
>
> To acheive this, add a new UT_TESTF_MANUAL flag to use with the C 'check'
> tests, so that they can be skipped by default when the 'ut' command is
> used. Require that tests have a name ending with '_norun', so that pytest
> knows to skip them.
>
> Signed-off-by: Simon Glass <sjg@chromium.org>
> ---
>
>   arch/sandbox/cpu/spl.c        |  2 +-
>   doc/develop/tests_writing.rst | 22 ++++++++++++++++++++++
>   include/test/test.h           |  8 ++++++++
>   include/test/ut.h             |  4 +++-
>   test/cmd_ut.c                 | 16 +++++++++++++---
>   test/dm/test-dm.c             |  2 +-
>   test/py/conftest.py           |  8 +++++++-
>   test/test-main.c              | 27 ++++++++++++++++++++++++++-
>   8 files changed, 81 insertions(+), 8 deletions(-)
>
> diff --git a/arch/sandbox/cpu/spl.c b/arch/sandbox/cpu/spl.c
> index 6d4981152bb..2678370481a 100644
> --- a/arch/sandbox/cpu/spl.c
> +++ b/arch/sandbox/cpu/spl.c
> @@ -90,7 +90,7 @@ void spl_board_init(void)
>   		int ret;
>
>   		ret = ut_run_list("spl", NULL, tests, count,
> -				  state->select_unittests, 1);
> +				  state->select_unittests, 1, false);
>   		/* continue execution into U-Boot */
>   	}
>   }
> diff --git a/doc/develop/tests_writing.rst b/doc/develop/tests_writing.rst
> index 1ddf7a353a7..d3ffc550300 100644
> --- a/doc/develop/tests_writing.rst
> +++ b/doc/develop/tests_writing.rst
> @@ -74,6 +74,28 @@ NOT rely on running with sandbox, but instead should function correctly on any
>   board supported by U-Boot.
>
>
> +Mixing Python and C
> +-------------------
> +
> +The best of both worlds is sometimes to have a Python test set things up and
> +perform some operations, with a 'checker' C unit test doing the checks
> +afterwards. This can be achieved with these steps:
> +
> +- Add the `UT_TESTF_MANUAL` flag to the checker test so that the `ut` command
> +  does not run it by default
> +- Add a `_norun` suffix to the name so that pytest knows to skip it too
> +
> +In your Python test use the `-f` flag to the `ut` command to force the checker
> +test to run it, e.g.::
> +
> +   # Do the Python part
> +   host load ...
> +   bootm ...
> +
> +   # Run the checker to make sure that everything worked
> +   ut -f bootstd vbe_test_fixup_norun

Shouldn't the documentation describes what a test looks like that can
only be run manually?

Best regards

Heinrich

> +
> +
>   How slow are Python tests?
>   --------------------------
>
> diff --git a/include/test/test.h b/include/test/test.h
> index 011668795b9..1c3ed638d24 100644
> --- a/include/test/test.h
> +++ b/include/test/test.h
> @@ -22,6 +22,7 @@
>    * @force_fail_alloc: Force all memory allocs to fail
>    * @skip_post_probe: Skip uclass post-probe processing
>    * @runs_per_test: Number of times to run each test (typically 1)
> + * @force_run: true to run tests marked with the UT_TESTF_MANUAL flag
>    * @fdt_chksum: crc8 of the device tree contents
>    * @fdt_copy: Copy of the device tree
>    * @fdt_size: Size of the device-tree copy
> @@ -42,6 +43,7 @@ struct unit_test_state {
>   	int force_fail_alloc;
>   	int skip_post_probe;
>   	int runs_per_test;
> +	bool force_run;
>   	uint fdt_chksum;
>   	void *fdt_copy;
>   	uint fdt_size;
> @@ -63,6 +65,12 @@ enum {
>   	/* do extra driver model init and uninit */
>   	UT_TESTF_DM		= BIT(6),
>   	UT_TESTF_OTHER_FDT	= BIT(7),	/* read in other device tree */
> +	/*
> +	 * Only run if explicitly requested with 'ut -f <suite> <test>'. The
> +	 * test name must end in "_norun" so that pytest detects this also,
> +	 * since it cannot access the flags.
> +	 */
> +	UT_TESTF_MANUAL		= BIT(8),
>   };
>
>   /**
> diff --git a/include/test/ut.h b/include/test/ut.h
> index f7217aa8ac5..e0e618b58c2 100644
> --- a/include/test/ut.h
> +++ b/include/test/ut.h
> @@ -409,9 +409,11 @@ void test_set_state(struct unit_test_state *uts);
>    * @select_name: Name of a single test to run (from the list provided). If NULL
>    *	then all tests are run
>    * @runs_per_test: Number of times to run each test (typically 1)
> + * @force_run: Run tests that are marked as manual-only (UT_TESTF_MANUAL)
>    * Return: 0 if all tests passed, -1 if any failed
>    */
>   int ut_run_list(const char *name, const char *prefix, struct unit_test *tests,
> -		int count, const char *select_name, int runs_per_test);
> +		int count, const char *select_name, int runs_per_test,
> +		bool force_run);
>
>   #endif
> diff --git a/test/cmd_ut.c b/test/cmd_ut.c
> index 11c219b48ac..3ea692fd31f 100644
> --- a/test/cmd_ut.c
> +++ b/test/cmd_ut.c
> @@ -19,16 +19,26 @@ int cmd_ut_category(const char *name, const char *prefix,
>   		    int argc, char *const argv[])
>   {
>   	int runs_per_text = 1;
> +	bool force_run = false;
>   	int ret;
>
> -	if (argc > 1 && !strncmp("-r", argv[1], 2)) {
> -		runs_per_text = dectoul(argv[1] + 2, NULL);
> +	while (argc > 1 && *argv[1] == '-') {
> +		const char *str = argv[1];
> +
> +		switch (str[1]) {
> +		case 'r':
> +			runs_per_text = dectoul(str + 2, NULL);
> +			break;
> +		case 'f':
> +			force_run = true;
> +			break;
> +		}
>   		argv++;
>   		argc++;
>   	}
>
>   	ret = ut_run_list(name, prefix, tests, n_ents,
> -			  argc > 1 ? argv[1] : NULL, runs_per_text);
> +			  argc > 1 ? argv[1] : NULL, runs_per_text, force_run);
>
>   	return ret ? CMD_RET_FAILURE : 0;
>   }
> diff --git a/test/dm/test-dm.c b/test/dm/test-dm.c
> index eb3581333b9..66cc2bc6cce 100644
> --- a/test/dm/test-dm.c
> +++ b/test/dm/test-dm.c
> @@ -36,7 +36,7 @@ static int dm_test_run(const char *test_name, int runs_per_text)
>   	int ret;
>
>   	ret = ut_run_list("driver model", "dm_test_", tests, n_ents, test_name,
> -			  runs_per_text);
> +			  runs_per_text, false);
>
>   	return ret ? CMD_RET_FAILURE : 0;
>   }
> diff --git a/test/py/conftest.py b/test/py/conftest.py
> index 304e93164aa..fc9dd3a83f8 100644
> --- a/test/py/conftest.py
> +++ b/test/py/conftest.py
> @@ -289,7 +289,13 @@ def generate_ut_subtest(metafunc, fixture_name, sym_path):
>           m = re_ut_test_list.search(l)
>           if not m:
>               continue
> -        vals.append(m.group(1) + ' ' + m.group(2))
> +        suite, name = m.groups()
> +
> +        # Tests marked with _norun should only be run manually using 'ut -f'
> +        if name.endswith('_norun'):
> +            continue
> +
> +        vals.append(f'{suite} {name}')
>
>       ids = ['ut_' + s.replace(' ', '_') for s in vals]
>       metafunc.parametrize(fixture_name, vals, ids=ids)
> diff --git a/test/test-main.c b/test/test-main.c
> index 8d1a4c4a818..d5c08625836 100644
> --- a/test/test-main.c
> +++ b/test/test-main.c
> @@ -517,6 +517,30 @@ static int ut_run_tests(struct unit_test_state *uts, const char *prefix,
>
>   		if (!test_matches(prefix, test_name, select_name))
>   			continue;
> +
> +		if (test->flags & UT_TESTF_MANUAL) {
> +			int len;
> +
> +			/*
> +			 * manual tests must have a name ending "_norun" as this
> +			 * is how pytest knows to skip them. See
> +			 * generate_ut_subtest() for this check.
> +			 */
> +			len = strlen(test_name);
> +			if (len < 6 || strcmp(test_name + len - 6, "_norun")) {
> +				printf("Test %s is manual so must have a name ending in _norun\n",
> +				       test_name);
> +				uts->fail_count++;
> +				return -EBADF;
> +			}
> +			if (!uts->force_run) {
> +				if (select_name) {
> +					printf("Test %s skipped as it is manual (use -f to run it)\n",
> +					       test_name);
> +				}
> +				continue;
> +			}
> +		}
>   		old_fail_count = uts->fail_count;
>   		for (i = 0; i < uts->runs_per_test; i++)
>   			ret = ut_run_test_live_flat(uts, test, select_name);
> @@ -538,7 +562,7 @@ static int ut_run_tests(struct unit_test_state *uts, const char *prefix,
>
>   int ut_run_list(const char *category, const char *prefix,
>   		struct unit_test *tests, int count, const char *select_name,
> -		int runs_per_test)
> +		int runs_per_test, bool force_run)
>   {
>   	struct unit_test_state uts = { .fail_count = 0 };
>   	bool has_dm_tests = false;
> @@ -572,6 +596,7 @@ int ut_run_list(const char *category, const char *prefix,
>   		}
>   		memcpy(uts.fdt_copy, gd->fdt_blob, uts.fdt_size);
>   	}
> +	uts.force_run = force_run;
>   	ret = ut_run_tests(&uts, prefix, tests, count, select_name);
>
>   	/* Best efforts only...ignore errors */


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

* Re: [PATCH 09/45] CI: Install pyelftools for builds
  2022-09-26  6:29   ` Heinrich Schuchardt
@ 2022-09-28 10:20     ` Simon Glass
  2022-09-29 15:05       ` Tom Rini
  0 siblings, 1 reply; 72+ messages in thread
From: Simon Glass @ 2022-09-28 10:20 UTC (permalink / raw)
  To: Heinrich Schuchardt
  Cc: Tom Rini, AKASHI Takahiro, Huang Jianan, Joel Stanley, Rick Chen,
	U-Boot Mailing List

Hi Heinrich,

On Mon, 26 Sept 2022 at 00:35, Heinrich Schuchardt <xypron.glpk@gmx.de> wrote:
>
> On 9/25/22 17:02, Simon Glass wrote:
> > Binman needs this module to build sandbox_vpl so install it in the
> > before_script and in the world build. The existing pip install is too
> > late for the buildman invocation.
> >
> > Add it to the docker file for the future.
> >
> > Signed-off-by: Simon Glass <sjg@chromium.org>
> > ---
> >
> >   .gitlab-ci.yml          | 2 ++
> >   tools/docker/Dockerfile | 1 +
> >   2 files changed, 3 insertions(+)
> >
> > diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
> > index 8e94bf8d4e8..47e36edcc4a 100644
> > --- a/.gitlab-ci.yml
> > +++ b/.gitlab-ci.yml
> > @@ -34,6 +34,7 @@ stages:
> >       # If we've been asked to use clang only do one configuration.
> >       - export UBOOT_TRAVIS_BUILD_DIR=/tmp/${TEST_PY_BD}
> >       - echo BUILD_ENV ${BUILD_ENV}
> > +    - pip install pyelftools
>
> Why do we need pip install here? Is pyelftools used outside the Docker
> image to which you add pyelftools below?

We don't need it if Tom wants to regen the docker image, but I'm not
sure how often he does that. So this change actually makes CI work, in
either case.

Regards,
Simon

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

* Re: [PATCH 25/45] test: Support tests which can only be run manually
  2022-09-26  6:56   ` Heinrich Schuchardt
@ 2022-09-28 10:20     ` Simon Glass
  0 siblings, 0 replies; 72+ messages in thread
From: Simon Glass @ 2022-09-28 10:20 UTC (permalink / raw)
  To: Heinrich Schuchardt
  Cc: Tom Rini, Rui Miguel Silva, Stefan Roese, U-Boot Mailing List

Hi Heinrich,

On Mon, 26 Sept 2022 at 00:56, Heinrich Schuchardt <xypron.glpk@gmx.de> wrote:
>
> On 9/25/22 17:02, Simon Glass wrote:
> > At present we normally write tests either in Python or in C. But most
> > Python tests end up doing a lot of checks which would be better done in C.
> > Checks done in C are orders of magnitude faster and it is possible to get
> > full access to U-Boot's internal workings, rather than just relying on
> > the command line.
> >
> > The model is to have a Python test set up some things and then use C code
> > (in a unit test) to check that they were done correctly. But we don't want
> > those checks to happen as part of normal test running, since each C unit
> > tests is dependent on the associate Python tests, so cannot run without
> > it.
> >
> > To acheive this, add a new UT_TESTF_MANUAL flag to use with the C 'check'
> > tests, so that they can be skipped by default when the 'ut' command is
> > used. Require that tests have a name ending with '_norun', so that pytest
> > knows to skip them.
> >
> > Signed-off-by: Simon Glass <sjg@chromium.org>
> > ---
> >
> >   arch/sandbox/cpu/spl.c        |  2 +-
> >   doc/develop/tests_writing.rst | 22 ++++++++++++++++++++++
> >   include/test/test.h           |  8 ++++++++
> >   include/test/ut.h             |  4 +++-
> >   test/cmd_ut.c                 | 16 +++++++++++++---
> >   test/dm/test-dm.c             |  2 +-
> >   test/py/conftest.py           |  8 +++++++-
> >   test/test-main.c              | 27 ++++++++++++++++++++++++++-
> >   8 files changed, 81 insertions(+), 8 deletions(-)
> >
> > diff --git a/arch/sandbox/cpu/spl.c b/arch/sandbox/cpu/spl.c
> > index 6d4981152bb..2678370481a 100644
> > --- a/arch/sandbox/cpu/spl.c
> > +++ b/arch/sandbox/cpu/spl.c
> > @@ -90,7 +90,7 @@ void spl_board_init(void)
> >               int ret;
> >
> >               ret = ut_run_list("spl", NULL, tests, count,
> > -                               state->select_unittests, 1);
> > +                               state->select_unittests, 1, false);
> >               /* continue execution into U-Boot */
> >       }
> >   }
> > diff --git a/doc/develop/tests_writing.rst b/doc/develop/tests_writing.rst
> > index 1ddf7a353a7..d3ffc550300 100644
> > --- a/doc/develop/tests_writing.rst
> > +++ b/doc/develop/tests_writing.rst
> > @@ -74,6 +74,28 @@ NOT rely on running with sandbox, but instead should function correctly on any
> >   board supported by U-Boot.
> >
> >
> > +Mixing Python and C
> > +-------------------
> > +
> > +The best of both worlds is sometimes to have a Python test set things up and
> > +perform some operations, with a 'checker' C unit test doing the checks
> > +afterwards. This can be achieved with these steps:
> > +
> > +- Add the `UT_TESTF_MANUAL` flag to the checker test so that the `ut` command
> > +  does not run it by default
> > +- Add a `_norun` suffix to the name so that pytest knows to skip it too
> > +
> > +In your Python test use the `-f` flag to the `ut` command to force the checker
> > +test to run it, e.g.::
> > +
> > +   # Do the Python part
> > +   host load ...
> > +   bootm ...
> > +
> > +   # Run the checker to make sure that everything worked
> > +   ut -f bootstd vbe_test_fixup_norun
>
> Shouldn't the documentation describes what a test looks like that can
> only be run manually?

It is just a normal test and I figure there is an example in the code.
What sort of info is missing here?

Regards,
Simon

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

* Re: [PATCH 14/45] dm: blk: Add udevice functions
  2022-09-26  0:17   ` AKASHI Takahiro
@ 2022-09-28 10:20     ` Simon Glass
  2022-09-29  0:51       ` AKASHI Takahiro
  0 siblings, 1 reply; 72+ messages in thread
From: Simon Glass @ 2022-09-28 10:20 UTC (permalink / raw)
  To: AKASHI Takahiro, Simon Glass, U-Boot Mailing List, Tom Rini,
	Heinrich Schuchardt, Marek Vasut, Masahisa Kojima,
	Pavel Herrmann

Hi Takahiro,

On Sun, 25 Sept 2022 at 18:17, AKASHI Takahiro
<takahiro.akashi@linaro.org> wrote:
>
> Hi Simon,
>
> On Sun, Sep 25, 2022 at 09:02:17AM -0600, Simon Glass wrote:
> > At present we have functions called blk_dread(), etc., which take a
> > struct blk_desc * to refer to the block device. Add some functions which
> > use udevice instead, since this is more in keeping with how driver model
> > is supposed to work.
>
> Unfortunately, NAK.
> I have already added similar functions in disk/disk-uclass.c
> with my commit 59da9d4782cd ("dm: disk: add read/write interfaces with
> udevice"). dev_read()/dev_write() works well with UCLASS_BLK (as intended).
>
> I remember that you also ack'ed that patch.

You have a better memory than me!

How about we make those functions call my new ones?

Also I think we should rename your functions to avoid using the
dev_read prefix, since this is for reading from the device tree.
Perhaps disk_read()? Also it seems that we could rationalise the code
between disk_read() and part_read() ? Also should have comments in the
header file about what the functions do (and what type of device they
accept).

Regards,
Simon
[..]

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

* Re: [PATCH 14/45] dm: blk: Add udevice functions
  2022-09-28 10:20     ` Simon Glass
@ 2022-09-29  0:51       ` AKASHI Takahiro
  2022-09-29  2:35         ` Simon Glass
  0 siblings, 1 reply; 72+ messages in thread
From: AKASHI Takahiro @ 2022-09-29  0:51 UTC (permalink / raw)
  To: Simon Glass
  Cc: U-Boot Mailing List, Tom Rini, Heinrich Schuchardt, Marek Vasut,
	Masahisa Kojima, Pavel Herrmann

Hi Simon,

On Wed, Sep 28, 2022 at 04:20:56AM -0600, Simon Glass wrote:
> Hi Takahiro,
> 
> On Sun, 25 Sept 2022 at 18:17, AKASHI Takahiro
> <takahiro.akashi@linaro.org> wrote:
> >
> > Hi Simon,
> >
> > On Sun, Sep 25, 2022 at 09:02:17AM -0600, Simon Glass wrote:
> > > At present we have functions called blk_dread(), etc., which take a
> > > struct blk_desc * to refer to the block device. Add some functions which
> > > use udevice instead, since this is more in keeping with how driver model
> > > is supposed to work.
> >
> > Unfortunately, NAK.
> > I have already added similar functions in disk/disk-uclass.c
> > with my commit 59da9d4782cd ("dm: disk: add read/write interfaces with
> > udevice"). dev_read()/dev_write() works well with UCLASS_BLK (as intended).
> >
> > I remember that you also ack'ed that patch.
> 
> You have a better memory than me!
> 
> How about we make those functions call my new ones?

So do you want to have two distinct API's for BLK and PARTITION?
You seem to have a policy that each DM class should have its own
API's.

I don't have a strong opinion here, but form user's point of view,
block-level accessing has no difference between BLK and PARTITION.
Most common users of such accessors are file systems.
In stead of using the following code at every corner,
   cid = device_get_uclass_id(udev);
   if (cid == UCLASS_BLK)
       blk_read(udev, ...);
   else if (cid == UCLASS_PARTITION)
       disk_part(udev, ...);
it may be more convenient to have a single API.

> Also I think we should rename your functions to avoid using the
> dev_read prefix, since this is for reading from the device tree.

Okay.

> Perhaps disk_read()? Also it seems that we could rationalise the code
> between disk_read() and part_read() ?

I'm not sure what you mean by "rationalise".

> Also should have comments in the
> header file about what the functions do (and what type of device they
> accept).

Yeah.

-Takahiro Akashi

> Regards,
> Simon
> [..]

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

* Re: [PATCH 14/45] dm: blk: Add udevice functions
  2022-09-29  0:51       ` AKASHI Takahiro
@ 2022-09-29  2:35         ` Simon Glass
  2022-09-30  1:54           ` AKASHI Takahiro
  0 siblings, 1 reply; 72+ messages in thread
From: Simon Glass @ 2022-09-29  2:35 UTC (permalink / raw)
  To: AKASHI Takahiro, Simon Glass, U-Boot Mailing List, Tom Rini,
	Heinrich Schuchardt, Marek Vasut, Masahisa Kojima,
	Pavel Herrmann

Hi Takahiro,

On Wed, 28 Sept 2022 at 18:51, AKASHI Takahiro
<takahiro.akashi@linaro.org> wrote:
>
> Hi Simon,
>
> On Wed, Sep 28, 2022 at 04:20:56AM -0600, Simon Glass wrote:
> > Hi Takahiro,
> >
> > On Sun, 25 Sept 2022 at 18:17, AKASHI Takahiro
> > <takahiro.akashi@linaro.org> wrote:
> > >
> > > Hi Simon,
> > >
> > > On Sun, Sep 25, 2022 at 09:02:17AM -0600, Simon Glass wrote:
> > > > At present we have functions called blk_dread(), etc., which take a
> > > > struct blk_desc * to refer to the block device. Add some functions which
> > > > use udevice instead, since this is more in keeping with how driver model
> > > > is supposed to work.
> > >
> > > Unfortunately, NAK.
> > > I have already added similar functions in disk/disk-uclass.c
> > > with my commit 59da9d4782cd ("dm: disk: add read/write interfaces with
> > > udevice"). dev_read()/dev_write() works well with UCLASS_BLK (as intended).
> > >
> > > I remember that you also ack'ed that patch.
> >
> > You have a better memory than me!
> >
> > How about we make those functions call my new ones?
>
> So do you want to have two distinct API's for BLK and PARTITION?
> You seem to have a policy that each DM class should have its own
> API's.

Yes that's right.

>
> I don't have a strong opinion here, but form user's point of view,
> block-level accessing has no difference between BLK and PARTITION.
> Most common users of such accessors are file systems.
> In stead of using the following code at every corner,
>    cid = device_get_uclass_id(udev);
>    if (cid == UCLASS_BLK)
>        blk_read(udev, ...);
>    else if (cid == UCLASS_PARTITION)
>        disk_part(udev, ...);
> it may be more convenient to have a single API.

Yes I agree, but you already have that with your dev_read() API. I
just want to rename it a bit.

>
> > Also I think we should rename your functions to avoid using the
> > dev_read prefix, since this is for reading from the device tree.
>
> Okay.
>
> > Perhaps disk_read()? Also it seems that we could rationalise the code
> > between disk_read() and part_read() ?
>
> I'm not sure what you mean by "rationalise".

The code seems to be almost the same between the two so I think it may
be possible to move the common code into a shared function.

>
> > Also should have comments in the
> > header file about what the functions do (and what type of device they
> > accept).
>
> Yeah.

Regards,
Simon

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

* Re: [PATCH 09/45] CI: Install pyelftools for builds
  2022-09-28 10:20     ` Simon Glass
@ 2022-09-29 15:05       ` Tom Rini
  2022-09-29 23:55         ` Simon Glass
  0 siblings, 1 reply; 72+ messages in thread
From: Tom Rini @ 2022-09-29 15:05 UTC (permalink / raw)
  To: Simon Glass
  Cc: Heinrich Schuchardt, AKASHI Takahiro, Huang Jianan, Joel Stanley,
	Rick Chen, U-Boot Mailing List

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

On Wed, Sep 28, 2022 at 04:20:41AM -0600, Simon Glass wrote:
> Hi Heinrich,
> 
> On Mon, 26 Sept 2022 at 00:35, Heinrich Schuchardt <xypron.glpk@gmx.de> wrote:
> >
> > On 9/25/22 17:02, Simon Glass wrote:
> > > Binman needs this module to build sandbox_vpl so install it in the
> > > before_script and in the world build. The existing pip install is too
> > > late for the buildman invocation.
> > >
> > > Add it to the docker file for the future.
> > >
> > > Signed-off-by: Simon Glass <sjg@chromium.org>
> > > ---
> > >
> > >   .gitlab-ci.yml          | 2 ++
> > >   tools/docker/Dockerfile | 1 +
> > >   2 files changed, 3 insertions(+)
> > >
> > > diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
> > > index 8e94bf8d4e8..47e36edcc4a 100644
> > > --- a/.gitlab-ci.yml
> > > +++ b/.gitlab-ci.yml
> > > @@ -34,6 +34,7 @@ stages:
> > >       # If we've been asked to use clang only do one configuration.
> > >       - export UBOOT_TRAVIS_BUILD_DIR=/tmp/${TEST_PY_BD}
> > >       - echo BUILD_ENV ${BUILD_ENV}
> > > +    - pip install pyelftools
> >
> > Why do we need pip install here? Is pyelftools used outside the Docker
> > image to which you add pyelftools below?
> 
> We don't need it if Tom wants to regen the docker image, but I'm not
> sure how often he does that. So this change actually makes CI work, in
> either case.

I would re-generate the CI image as part of the series, and we should
really do this separate and drop the pip install pyelftools we already
have, too.

-- 
Tom

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

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

* Re: [PATCH 07/45] spl: Refactor controls for console output
  2022-09-25 15:02 ` [PATCH 07/45] spl: Refactor controls for console output Simon Glass
@ 2022-09-29 15:16   ` Tom Rini
  0 siblings, 0 replies; 72+ messages in thread
From: Tom Rini @ 2022-09-29 15:16 UTC (permalink / raw)
  To: Simon Glass
  Cc: U-Boot Mailing List, Alper Nebi Yasak, Marek Behún,
	Pali Rohár, Stefan Roese

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

On Sun, Sep 25, 2022 at 09:02:10AM -0600, Simon Glass wrote:

> The expression in boot_from_devices() is fairly long. Move it into a
> function with a suitable comment.
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>
> ---
> 
>  common/spl/spl.c | 16 +++++++++++++---
>  1 file changed, 13 insertions(+), 3 deletions(-)
> 
> diff --git a/common/spl/spl.c b/common/spl/spl.c
> index edf24b05162..e7f16a18228 100644
> --- a/common/spl/spl.c
> +++ b/common/spl/spl.c
> @@ -659,6 +659,18 @@ static int spl_load_image(struct spl_image_info *spl_image,
>  	return ret;
>  }
>  
> +/**
> + * spl_show_output() - Selects whether to show info output in SPL
> + *
> + * Returns: true if info output should be shown, false if not
> + */
> +static inline bool spl_show_output(void)
> +{
> +	return CONFIG_IS_ENABLED(SERIAL) &&
> +	    CONFIG_IS_ENABLED(LIBCOMMON_SUPPORT) &&
> +	    !IS_ENABLED(CONFIG_SILENT_CONSOLE);
> +}
> +
>  /**
>   * boot_from_devices() - Try loading a booting U-Boot from a list of devices
>   *
> @@ -682,9 +694,7 @@ static int boot_from_devices(struct spl_image_info *spl_image,
>  		if (CONFIG_IS_ENABLED(SHOW_ERRORS))
>  			ret = -ENXIO;
>  		loader = spl_ll_find_loader(bootdev);
> -		if (CONFIG_IS_ENABLED(SERIAL) &&
> -		    CONFIG_IS_ENABLED(LIBCOMMON_SUPPORT) &&
> -		    !IS_ENABLED(CONFIG_SILENT_CONSOLE)) {
> +		if (spl_show_output()) {
>  			if (loader)
>  				printf("Trying to boot from %s\n",
>  				       spl_loader_name(loader));

I don't think this really helps readability, even down in "spl: Allow
multiple loaders of the same type" where it would be indented another
level. I _think_ this is a bit of an artifact from before we could
easily call printf(...) and have the call be nop'd out? So it should
just be a check for CONFIG_SILENT_CONSOLE.

-- 
Tom

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

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

* Re: [PATCH 09/45] CI: Install pyelftools for builds
  2022-09-29 15:05       ` Tom Rini
@ 2022-09-29 23:55         ` Simon Glass
  2022-09-30 12:56           ` Tom Rini
  0 siblings, 1 reply; 72+ messages in thread
From: Simon Glass @ 2022-09-29 23:55 UTC (permalink / raw)
  To: Tom Rini
  Cc: Heinrich Schuchardt, AKASHI Takahiro, Huang Jianan, Joel Stanley,
	Rick Chen, U-Boot Mailing List

Hi Tom,

On Thu, 29 Sept 2022 at 09:05, Tom Rini <trini@konsulko.com> wrote:
>
> On Wed, Sep 28, 2022 at 04:20:41AM -0600, Simon Glass wrote:
> > Hi Heinrich,
> >
> > On Mon, 26 Sept 2022 at 00:35, Heinrich Schuchardt <xypron.glpk@gmx.de> wrote:
> > >
> > > On 9/25/22 17:02, Simon Glass wrote:
> > > > Binman needs this module to build sandbox_vpl so install it in the
> > > > before_script and in the world build. The existing pip install is too
> > > > late for the buildman invocation.
> > > >
> > > > Add it to the docker file for the future.
> > > >
> > > > Signed-off-by: Simon Glass <sjg@chromium.org>
> > > > ---
> > > >
> > > >   .gitlab-ci.yml          | 2 ++
> > > >   tools/docker/Dockerfile | 1 +
> > > >   2 files changed, 3 insertions(+)
> > > >
> > > > diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
> > > > index 8e94bf8d4e8..47e36edcc4a 100644
> > > > --- a/.gitlab-ci.yml
> > > > +++ b/.gitlab-ci.yml
> > > > @@ -34,6 +34,7 @@ stages:
> > > >       # If we've been asked to use clang only do one configuration.
> > > >       - export UBOOT_TRAVIS_BUILD_DIR=/tmp/${TEST_PY_BD}
> > > >       - echo BUILD_ENV ${BUILD_ENV}
> > > > +    - pip install pyelftools
> > >
> > > Why do we need pip install here? Is pyelftools used outside the Docker
> > > image to which you add pyelftools below?
> >
> > We don't need it if Tom wants to regen the docker image, but I'm not
> > sure how often he does that. So this change actually makes CI work, in
> > either case.
>
> I would re-generate the CI image as part of the series, and we should
> really do this separate and drop the pip install pyelftools we already
> have, too.

OK, shall I resend this patch accordingly or will you just change it?
Or should I split into two patches, one to add to Dockerfile (I hate
the capital D!) and one to remove the pip install?

Regards,
Simon

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

* Re: [PATCH 14/45] dm: blk: Add udevice functions
  2022-09-29  2:35         ` Simon Glass
@ 2022-09-30  1:54           ` AKASHI Takahiro
  0 siblings, 0 replies; 72+ messages in thread
From: AKASHI Takahiro @ 2022-09-30  1:54 UTC (permalink / raw)
  To: Simon Glass
  Cc: U-Boot Mailing List, Tom Rini, Heinrich Schuchardt, Marek Vasut,
	Masahisa Kojima, Pavel Herrmann

On Wed, Sep 28, 2022 at 08:35:58PM -0600, Simon Glass wrote:
> Hi Takahiro,
> 
> On Wed, 28 Sept 2022 at 18:51, AKASHI Takahiro
> <takahiro.akashi@linaro.org> wrote:
> >
> > Hi Simon,
> >
> > On Wed, Sep 28, 2022 at 04:20:56AM -0600, Simon Glass wrote:
> > > Hi Takahiro,
> > >
> > > On Sun, 25 Sept 2022 at 18:17, AKASHI Takahiro
> > > <takahiro.akashi@linaro.org> wrote:
> > > >
> > > > Hi Simon,
> > > >
> > > > On Sun, Sep 25, 2022 at 09:02:17AM -0600, Simon Glass wrote:
> > > > > At present we have functions called blk_dread(), etc., which take a
> > > > > struct blk_desc * to refer to the block device. Add some functions which
> > > > > use udevice instead, since this is more in keeping with how driver model
> > > > > is supposed to work.
> > > >
> > > > Unfortunately, NAK.
> > > > I have already added similar functions in disk/disk-uclass.c
> > > > with my commit 59da9d4782cd ("dm: disk: add read/write interfaces with
> > > > udevice"). dev_read()/dev_write() works well with UCLASS_BLK (as intended).
> > > >
> > > > I remember that you also ack'ed that patch.
> > >
> > > You have a better memory than me!
> > >
> > > How about we make those functions call my new ones?
> >
> > So do you want to have two distinct API's for BLK and PARTITION?
> > You seem to have a policy that each DM class should have its own
> > API's.
> 
> Yes that's right.
> 
> >
> > I don't have a strong opinion here, but form user's point of view,
> > block-level accessing has no difference between BLK and PARTITION.
> > Most common users of such accessors are file systems.
> > In stead of using the following code at every corner,
> >    cid = device_get_uclass_id(udev);
> >    if (cid == UCLASS_BLK)
> >        blk_read(udev, ...);
> >    else if (cid == UCLASS_PARTITION)
> >        disk_part(udev, ...);

        -> I meant disk_read(...)

> > it may be more convenient to have a single API.
> 
> Yes I agree, but you already have that with your dev_read() API. I
> just want to rename it a bit.

If so, that's fine to me.

-Takahiro Akashi

> >
> > > Also I think we should rename your functions to avoid using the
> > > dev_read prefix, since this is for reading from the device tree.
> >
> > Okay.
> >
> > > Perhaps disk_read()? Also it seems that we could rationalise the code
> > > between disk_read() and part_read() ?
> >
> > I'm not sure what you mean by "rationalise".
> 
> The code seems to be almost the same between the two so I think it may
> be possible to move the common code into a shared function.
> 
> >
> > > Also should have comments in the
> > > header file about what the functions do (and what type of device they
> > > accept).
> >
> > Yeah.
> 
> Regards,
> Simon

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

* Re: [PATCH 09/45] CI: Install pyelftools for builds
  2022-09-29 23:55         ` Simon Glass
@ 2022-09-30 12:56           ` Tom Rini
  2022-09-30 13:28             ` Simon Glass
  0 siblings, 1 reply; 72+ messages in thread
From: Tom Rini @ 2022-09-30 12:56 UTC (permalink / raw)
  To: Simon Glass
  Cc: Heinrich Schuchardt, AKASHI Takahiro, Huang Jianan, Joel Stanley,
	Rick Chen, U-Boot Mailing List

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

On Thu, Sep 29, 2022 at 05:55:54PM -0600, Simon Glass wrote:
> Hi Tom,
> 
> On Thu, 29 Sept 2022 at 09:05, Tom Rini <trini@konsulko.com> wrote:
> >
> > On Wed, Sep 28, 2022 at 04:20:41AM -0600, Simon Glass wrote:
> > > Hi Heinrich,
> > >
> > > On Mon, 26 Sept 2022 at 00:35, Heinrich Schuchardt <xypron.glpk@gmx.de> wrote:
> > > >
> > > > On 9/25/22 17:02, Simon Glass wrote:
> > > > > Binman needs this module to build sandbox_vpl so install it in the
> > > > > before_script and in the world build. The existing pip install is too
> > > > > late for the buildman invocation.
> > > > >
> > > > > Add it to the docker file for the future.
> > > > >
> > > > > Signed-off-by: Simon Glass <sjg@chromium.org>
> > > > > ---
> > > > >
> > > > >   .gitlab-ci.yml          | 2 ++
> > > > >   tools/docker/Dockerfile | 1 +
> > > > >   2 files changed, 3 insertions(+)
> > > > >
> > > > > diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
> > > > > index 8e94bf8d4e8..47e36edcc4a 100644
> > > > > --- a/.gitlab-ci.yml
> > > > > +++ b/.gitlab-ci.yml
> > > > > @@ -34,6 +34,7 @@ stages:
> > > > >       # If we've been asked to use clang only do one configuration.
> > > > >       - export UBOOT_TRAVIS_BUILD_DIR=/tmp/${TEST_PY_BD}
> > > > >       - echo BUILD_ENV ${BUILD_ENV}
> > > > > +    - pip install pyelftools
> > > >
> > > > Why do we need pip install here? Is pyelftools used outside the Docker
> > > > image to which you add pyelftools below?
> > >
> > > We don't need it if Tom wants to regen the docker image, but I'm not
> > > sure how often he does that. So this change actually makes CI work, in
> > > either case.
> >
> > I would re-generate the CI image as part of the series, and we should
> > really do this separate and drop the pip install pyelftools we already
> > have, too.
> 
> OK, shall I resend this patch accordingly or will you just change it?
> Or should I split into two patches, one to add to Dockerfile (I hate
> the capital D!) and one to remove the pip install?

In v2 of the series, doing all of this as patch #1 will make my life
easier, how about that?

-- 
Tom

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

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

* Re: [PATCH 09/45] CI: Install pyelftools for builds
  2022-09-30 12:56           ` Tom Rini
@ 2022-09-30 13:28             ` Simon Glass
  0 siblings, 0 replies; 72+ messages in thread
From: Simon Glass @ 2022-09-30 13:28 UTC (permalink / raw)
  To: Tom Rini
  Cc: Heinrich Schuchardt, AKASHI Takahiro, Huang Jianan, Joel Stanley,
	Rick Chen, U-Boot Mailing List

Hi Tom,

On Fri, 30 Sept 2022 at 06:56, Tom Rini <trini@konsulko.com> wrote:
>
> On Thu, Sep 29, 2022 at 05:55:54PM -0600, Simon Glass wrote:
> > Hi Tom,
> >
> > On Thu, 29 Sept 2022 at 09:05, Tom Rini <trini@konsulko.com> wrote:
> > >
> > > On Wed, Sep 28, 2022 at 04:20:41AM -0600, Simon Glass wrote:
> > > > Hi Heinrich,
> > > >
> > > > On Mon, 26 Sept 2022 at 00:35, Heinrich Schuchardt <xypron.glpk@gmx.de> wrote:
> > > > >
> > > > > On 9/25/22 17:02, Simon Glass wrote:
> > > > > > Binman needs this module to build sandbox_vpl so install it in the
> > > > > > before_script and in the world build. The existing pip install is too
> > > > > > late for the buildman invocation.
> > > > > >
> > > > > > Add it to the docker file for the future.
> > > > > >
> > > > > > Signed-off-by: Simon Glass <sjg@chromium.org>
> > > > > > ---
> > > > > >
> > > > > >   .gitlab-ci.yml          | 2 ++
> > > > > >   tools/docker/Dockerfile | 1 +
> > > > > >   2 files changed, 3 insertions(+)
> > > > > >
> > > > > > diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
> > > > > > index 8e94bf8d4e8..47e36edcc4a 100644
> > > > > > --- a/.gitlab-ci.yml
> > > > > > +++ b/.gitlab-ci.yml
> > > > > > @@ -34,6 +34,7 @@ stages:
> > > > > >       # If we've been asked to use clang only do one configuration.
> > > > > >       - export UBOOT_TRAVIS_BUILD_DIR=/tmp/${TEST_PY_BD}
> > > > > >       - echo BUILD_ENV ${BUILD_ENV}
> > > > > > +    - pip install pyelftools
> > > > >
> > > > > Why do we need pip install here? Is pyelftools used outside the Docker
> > > > > image to which you add pyelftools below?
> > > >
> > > > We don't need it if Tom wants to regen the docker image, but I'm not
> > > > sure how often he does that. So this change actually makes CI work, in
> > > > either case.
> > >
> > > I would re-generate the CI image as part of the series, and we should
> > > really do this separate and drop the pip install pyelftools we already
> > > have, too.
> >
> > OK, shall I resend this patch accordingly or will you just change it?
> > Or should I split into two patches, one to add to Dockerfile (I hate
> > the capital D!) and one to remove the pip install?
>
> In v2 of the series, doing all of this as patch #1 will make my life
> easier, how about that?

Yes OK.

Regards,
Simon

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

* Re: [PATCH 31/45] spl: Allow multiple loaders of the same type
  2022-09-25 15:02 ` [PATCH 31/45] spl: Allow multiple loaders of the same type Simon Glass
@ 2022-09-30 16:28   ` Tom Rini
  2022-09-30 16:37     ` Simon Glass
  0 siblings, 1 reply; 72+ messages in thread
From: Tom Rini @ 2022-09-30 16:28 UTC (permalink / raw)
  To: Simon Glass
  Cc: U-Boot Mailing List, Alper Nebi Yasak, Marek Behún,
	Pali Rohár, Stefan Roese

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

On Sun, Sep 25, 2022 at 09:02:34AM -0600, Simon Glass wrote:

> At present we only support a single loader of each time. Extra ones are

Of each type not time, I assume.

> ignored. This means that only one BOOT_DEVICE_BOARD can be used in the SPL
> image.
> 
> This is inconvenient since we sometimes want to provide several
> board-specific drivers, albeit at different priorties. Add support for
> this.
> 
> This should have no functional change for existing boards.

To be clearer here. Today I can build am335x_evm_defconfig, and it will
have support for (among others) X/Y-MODEM and SD/MMC booting, and if SPL
loads via SD card, it will look at that same slot and find U-Boot, or
fail.

This patch doesn't change that, yes?

A later part of this series makes it possible, but not default?

-- 
Tom

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

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

* Re: [PATCH 31/45] spl: Allow multiple loaders of the same type
  2022-09-30 16:28   ` Tom Rini
@ 2022-09-30 16:37     ` Simon Glass
  2022-09-30 16:39       ` Tom Rini
  0 siblings, 1 reply; 72+ messages in thread
From: Simon Glass @ 2022-09-30 16:37 UTC (permalink / raw)
  To: Tom Rini
  Cc: U-Boot Mailing List, Alper Nebi Yasak, Marek Behún,
	Pali Rohár, Stefan Roese

Hi Tom,

On Fri, 30 Sept 2022 at 10:28, Tom Rini <trini@konsulko.com> wrote:
>
> On Sun, Sep 25, 2022 at 09:02:34AM -0600, Simon Glass wrote:
>
> > At present we only support a single loader of each time. Extra ones are
>
> Of each type not time, I assume.
>
> > ignored. This means that only one BOOT_DEVICE_BOARD can be used in the SPL
> > image.
> >
> > This is inconvenient since we sometimes want to provide several
> > board-specific drivers, albeit at different priorties. Add support for
> > this.
> >
> > This should have no functional change for existing boards.
>
> To be clearer here. Today I can build am335x_evm_defconfig, and it will
> have support for (among others) X/Y-MODEM and SD/MMC booting, and if SPL
> loads via SD card, it will look at that same slot and find U-Boot, or
> fail.
>
> This patch doesn't change that, yes?
>
> A later part of this series makes it possible, but not default?

That's right, there is no change for existing boards, since they only
have only loader of each type. But it allows boards to change that and
have two loaders for a single type. This is done later for sandbox,
but it would actually be useful for a few other boards too, e.g. where
there are two board-specific ways of booting and we want to try both.

Regards,
SImon

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

* Re: [PATCH 31/45] spl: Allow multiple loaders of the same type
  2022-09-30 16:37     ` Simon Glass
@ 2022-09-30 16:39       ` Tom Rini
  2022-09-30 16:45         ` Simon Glass
  0 siblings, 1 reply; 72+ messages in thread
From: Tom Rini @ 2022-09-30 16:39 UTC (permalink / raw)
  To: Simon Glass
  Cc: U-Boot Mailing List, Alper Nebi Yasak, Marek Behún,
	Pali Rohár, Stefan Roese

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

On Fri, Sep 30, 2022 at 10:37:26AM -0600, Simon Glass wrote:
> Hi Tom,
> 
> On Fri, 30 Sept 2022 at 10:28, Tom Rini <trini@konsulko.com> wrote:
> >
> > On Sun, Sep 25, 2022 at 09:02:34AM -0600, Simon Glass wrote:
> >
> > > At present we only support a single loader of each time. Extra ones are
> >
> > Of each type not time, I assume.
> >
> > > ignored. This means that only one BOOT_DEVICE_BOARD can be used in the SPL
> > > image.
> > >
> > > This is inconvenient since we sometimes want to provide several
> > > board-specific drivers, albeit at different priorties. Add support for
> > > this.
> > >
> > > This should have no functional change for existing boards.
> >
> > To be clearer here. Today I can build am335x_evm_defconfig, and it will
> > have support for (among others) X/Y-MODEM and SD/MMC booting, and if SPL
> > loads via SD card, it will look at that same slot and find U-Boot, or
> > fail.
> >
> > This patch doesn't change that, yes?
> >
> > A later part of this series makes it possible, but not default?
> 
> That's right, there is no change for existing boards, since they only
> have only loader of each type. But it allows boards to change that and
> have two loaders for a single type. This is done later for sandbox,
> but it would actually be useful for a few other boards too, e.g. where
> there are two board-specific ways of booting and we want to try both.

I'm not following now, sorry. Can you elaborate on the example you're
talking about please, either for sandbox or what it would look like on a
hardware platform?

-- 
Tom

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

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

* Re: [PATCH 31/45] spl: Allow multiple loaders of the same type
  2022-09-30 16:39       ` Tom Rini
@ 2022-09-30 16:45         ` Simon Glass
  2022-09-30 16:50           ` Tom Rini
  0 siblings, 1 reply; 72+ messages in thread
From: Simon Glass @ 2022-09-30 16:45 UTC (permalink / raw)
  To: Tom Rini
  Cc: U-Boot Mailing List, Alper Nebi Yasak, Marek Behún,
	Pali Rohár, Stefan Roese

Hi Tom,

On Fri, 30 Sept 2022 at 10:39, Tom Rini <trini@konsulko.com> wrote:
>
> On Fri, Sep 30, 2022 at 10:37:26AM -0600, Simon Glass wrote:
> > Hi Tom,
> >
> > On Fri, 30 Sept 2022 at 10:28, Tom Rini <trini@konsulko.com> wrote:
> > >
> > > On Sun, Sep 25, 2022 at 09:02:34AM -0600, Simon Glass wrote:
> > >
> > > > At present we only support a single loader of each time. Extra ones are
> > >
> > > Of each type not time, I assume.
> > >
> > > > ignored. This means that only one BOOT_DEVICE_BOARD can be used in the SPL
> > > > image.
> > > >
> > > > This is inconvenient since we sometimes want to provide several
> > > > board-specific drivers, albeit at different priorties. Add support for
> > > > this.
> > > >
> > > > This should have no functional change for existing boards.
> > >
> > > To be clearer here. Today I can build am335x_evm_defconfig, and it will
> > > have support for (among others) X/Y-MODEM and SD/MMC booting, and if SPL
> > > loads via SD card, it will look at that same slot and find U-Boot, or
> > > fail.
> > >
> > > This patch doesn't change that, yes?
> > >
> > > A later part of this series makes it possible, but not default?
> >
> > That's right, there is no change for existing boards, since they only
> > have only loader of each type. But it allows boards to change that and
> > have two loaders for a single type. This is done later for sandbox,
> > but it would actually be useful for a few other boards too, e.g. where
> > there are two board-specific ways of booting and we want to try both.
>
> I'm not following now, sorry. Can you elaborate on the example you're
> talking about please, either for sandbox or what it would look like on a
> hardware platform?

For sandbox we want to boot with VBE if available, but if not then we
want to use the existing loader, which just runs the next executable
(e.g. spl/u-boot-spl). Both of these are board-specific methods. The
current enum of boot methods is a bit of a pain, e.g. we have things
like this in ARM's spl.h because we cannot have more than one loader
of a certain type:

BOOT_DEVICE_MMC1,
BOOT_DEVICE_MMC2,
BOOT_DEVICE_MMC2_2,

BTW the loaders already have a priority which we can use to choose
which is more desirable.

Regards,
Simon

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

* Re: [PATCH 31/45] spl: Allow multiple loaders of the same type
  2022-09-30 16:45         ` Simon Glass
@ 2022-09-30 16:50           ` Tom Rini
  2022-09-30 16:55             ` Simon Glass
  0 siblings, 1 reply; 72+ messages in thread
From: Tom Rini @ 2022-09-30 16:50 UTC (permalink / raw)
  To: Simon Glass
  Cc: U-Boot Mailing List, Alper Nebi Yasak, Marek Behún,
	Pali Rohár, Stefan Roese

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

On Fri, Sep 30, 2022 at 10:45:01AM -0600, Simon Glass wrote:
> Hi Tom,
> 
> On Fri, 30 Sept 2022 at 10:39, Tom Rini <trini@konsulko.com> wrote:
> >
> > On Fri, Sep 30, 2022 at 10:37:26AM -0600, Simon Glass wrote:
> > > Hi Tom,
> > >
> > > On Fri, 30 Sept 2022 at 10:28, Tom Rini <trini@konsulko.com> wrote:
> > > >
> > > > On Sun, Sep 25, 2022 at 09:02:34AM -0600, Simon Glass wrote:
> > > >
> > > > > At present we only support a single loader of each time. Extra ones are
> > > >
> > > > Of each type not time, I assume.
> > > >
> > > > > ignored. This means that only one BOOT_DEVICE_BOARD can be used in the SPL
> > > > > image.
> > > > >
> > > > > This is inconvenient since we sometimes want to provide several
> > > > > board-specific drivers, albeit at different priorties. Add support for
> > > > > this.
> > > > >
> > > > > This should have no functional change for existing boards.
> > > >
> > > > To be clearer here. Today I can build am335x_evm_defconfig, and it will
> > > > have support for (among others) X/Y-MODEM and SD/MMC booting, and if SPL
> > > > loads via SD card, it will look at that same slot and find U-Boot, or
> > > > fail.
> > > >
> > > > This patch doesn't change that, yes?
> > > >
> > > > A later part of this series makes it possible, but not default?
> > >
> > > That's right, there is no change for existing boards, since they only
> > > have only loader of each type. But it allows boards to change that and
> > > have two loaders for a single type. This is done later for sandbox,
> > > but it would actually be useful for a few other boards too, e.g. where
> > > there are two board-specific ways of booting and we want to try both.
> >
> > I'm not following now, sorry. Can you elaborate on the example you're
> > talking about please, either for sandbox or what it would look like on a
> > hardware platform?
> 
> For sandbox we want to boot with VBE if available, but if not then we
> want to use the existing loader, which just runs the next executable
> (e.g. spl/u-boot-spl). Both of these are board-specific methods. The
> current enum of boot methods is a bit of a pain, e.g. we have things
> like this in ARM's spl.h because we cannot have more than one loader
> of a certain type:
> 
> BOOT_DEVICE_MMC1,
> BOOT_DEVICE_MMC2,
> BOOT_DEVICE_MMC2_2,
> 
> BTW the loaders already have a priority which we can use to choose
> which is more desirable.

OK, so it's so that we could do VBE, but fall back if not possible? Is
that really advisable? The historical reasoning behind that enum is that
we want to know if we came from $X we want to use-or-fail the next stage
also being $X. We do have a few cases I believe where the board knows
"if $X then $Y" instead for some specific use cases.

-- 
Tom

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

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

* Re: [PATCH 31/45] spl: Allow multiple loaders of the same type
  2022-09-30 16:50           ` Tom Rini
@ 2022-09-30 16:55             ` Simon Glass
  0 siblings, 0 replies; 72+ messages in thread
From: Simon Glass @ 2022-09-30 16:55 UTC (permalink / raw)
  To: Tom Rini
  Cc: U-Boot Mailing List, Alper Nebi Yasak, Marek Behún,
	Pali Rohár, Stefan Roese

Hi Tom,

On Fri, 30 Sept 2022 at 10:51, Tom Rini <trini@konsulko.com> wrote:
>
> On Fri, Sep 30, 2022 at 10:45:01AM -0600, Simon Glass wrote:
> > Hi Tom,
> >
> > On Fri, 30 Sept 2022 at 10:39, Tom Rini <trini@konsulko.com> wrote:
> > >
> > > On Fri, Sep 30, 2022 at 10:37:26AM -0600, Simon Glass wrote:
> > > > Hi Tom,
> > > >
> > > > On Fri, 30 Sept 2022 at 10:28, Tom Rini <trini@konsulko.com> wrote:
> > > > >
> > > > > On Sun, Sep 25, 2022 at 09:02:34AM -0600, Simon Glass wrote:
> > > > >
> > > > > > At present we only support a single loader of each time. Extra ones are
> > > > >
> > > > > Of each type not time, I assume.
> > > > >
> > > > > > ignored. This means that only one BOOT_DEVICE_BOARD can be used in the SPL
> > > > > > image.
> > > > > >
> > > > > > This is inconvenient since we sometimes want to provide several
> > > > > > board-specific drivers, albeit at different priorties. Add support for
> > > > > > this.
> > > > > >
> > > > > > This should have no functional change for existing boards.
> > > > >
> > > > > To be clearer here. Today I can build am335x_evm_defconfig, and it will
> > > > > have support for (among others) X/Y-MODEM and SD/MMC booting, and if SPL
> > > > > loads via SD card, it will look at that same slot and find U-Boot, or
> > > > > fail.
> > > > >
> > > > > This patch doesn't change that, yes?
> > > > >
> > > > > A later part of this series makes it possible, but not default?
> > > >
> > > > That's right, there is no change for existing boards, since they only
> > > > have only loader of each type. But it allows boards to change that and
> > > > have two loaders for a single type. This is done later for sandbox,
> > > > but it would actually be useful for a few other boards too, e.g. where
> > > > there are two board-specific ways of booting and we want to try both.
> > >
> > > I'm not following now, sorry. Can you elaborate on the example you're
> > > talking about please, either for sandbox or what it would look like on a
> > > hardware platform?
> >
> > For sandbox we want to boot with VBE if available, but if not then we
> > want to use the existing loader, which just runs the next executable
> > (e.g. spl/u-boot-spl). Both of these are board-specific methods. The
> > current enum of boot methods is a bit of a pain, e.g. we have things
> > like this in ARM's spl.h because we cannot have more than one loader
> > of a certain type:
> >
> > BOOT_DEVICE_MMC1,
> > BOOT_DEVICE_MMC2,
> > BOOT_DEVICE_MMC2_2,
> >
> > BTW the loaders already have a priority which we can use to choose
> > which is more desirable.
>
> OK, so it's so that we could do VBE, but fall back if not possible? Is
> that really advisable? The historical reasoning behind that enum is that
> we want to know if we came from $X we want to use-or-fail the next stage
> also being $X. We do have a few cases I believe where the board knows
> "if $X then $Y" instead for some specific use cases.

Yes, but that is implemented using the firmware handoff thing.

https://patchwork.ozlabs.org/project/uboot/patch/20220925150248.2524421-43-sjg@chromium.org/

We can of course enforce this, such that when VBE is active it has to
be used. At present errors from spl_load_image() are ignored, so it
has to be done in the loader itself. But we could change that.

Regards,
Simon

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

* Re: [PATCH 20/45] sandbox: Add a way to specify the sandbox executable
  2022-09-26  6:49   ` Heinrich Schuchardt
@ 2022-11-07 23:35     ` Simon Glass
  0 siblings, 0 replies; 72+ messages in thread
From: Simon Glass @ 2022-11-07 23:35 UTC (permalink / raw)
  To: Heinrich Schuchardt; +Cc: Tom Rini, Andrew Scull, U-Boot Mailing List

Hi Heinrich,

On Mon, 26 Sept 2022 at 00:49, Heinrich Schuchardt <xypron.glpk@gmx.de> wrote:
>
> On 9/25/22 17:02, Simon Glass wrote:
> > At present the sandbox executable is assumed to be arg[0] but this only
> > works for a single jump (e.g. from SPL to U-Boot). Add a new arg to solve
> > this issue, along with a detailed comment.
>
> What is the impact on os_relaunch()?
> With current origin/master it fails on SPL:
>
> $ spl/u-boot-spl -S
>
> U-Boot SPL 2022.10-rc5-00012-g435596d57f (Sep 26 2022 - 08:40:30 +0200)
> Creating new bloblist size 400 at c000
> Finished bloblist size 400 at c000
> Finished bloblist size 400 at c000
> Found existing bloblist size 400 at c000
>
>
> U-Boot 2022.10-rc5-00012-g435596d57f (Sep 26 2022 - 08:40:30 +0200)
>
> DRAM:  256 MiB
> Core:  23 devices, 11 uclasses, devicetree: board
> MMC:
> Loading Environment from nowhere... OK
> In:    serial
> Out:   serial
> Err:   serial
> Net:   No ethernet found.
> Hit any key to stop autoboot:  0
> => reset
> resetting ...
> Finished bloblist size 400 at bffd000
> Failed to read RAM buffer '/tmp/u-boot.mem.LypddQ': -1
> Expected bloblist at c000 not found (err=-2)
> Creating new bloblist size 400 at c000
>
>
> U-Boot 2022.10-rc5-00012-g435596d57f (Sep 26 2022 - 08:40:30 +0200)
>
> u-boot: error: failed while parsing option: memory
>          try running with --help for more information.

This does not change the behaviour of os_relaunch(), but I think it
would be possible to use the argument to avoid this failure.

Regards,
Simon

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

end of thread, other threads:[~2022-11-07 23:37 UTC | newest]

Thread overview: 72+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-09-25 15:02 [PATCH 00/45] vbe: Implement the full firmware flow Simon Glass
2022-09-25 15:02 ` [PATCH 01/45] Rename CONFIG_SYS_TEXT_BASE to CONFIG_TEXT_BASE Simon Glass
2022-09-25 15:02 ` [PATCH 02/45] disk: Drop debug messages in part_efi Simon Glass
2022-09-26  6:11   ` Heinrich Schuchardt
2022-09-25 15:02 ` [PATCH 03/45] bloblist: Drop debugging Simon Glass
2022-09-25 15:02 ` [PATCH 04/45] rsa: Avoid warning in padding_pss_verify() Simon Glass
2022-09-26  6:23   ` Heinrich Schuchardt
2022-09-25 15:02 ` [PATCH 05/45] spl: Use binman suffix allow symbols of any SPL etype Simon Glass
2022-09-25 15:02 ` [PATCH 06/45] spl: Split up the board_init_r() function Simon Glass
2022-09-25 15:02 ` [PATCH 07/45] spl: Refactor controls for console output Simon Glass
2022-09-29 15:16   ` Tom Rini
2022-09-25 15:02 ` [PATCH 08/45] spl: Add a separate silence option for SPL Simon Glass
2022-09-25 15:02 ` [PATCH 09/45] CI: Install pyelftools for builds Simon Glass
2022-09-26  6:29   ` Heinrich Schuchardt
2022-09-28 10:20     ` Simon Glass
2022-09-29 15:05       ` Tom Rini
2022-09-29 23:55         ` Simon Glass
2022-09-30 12:56           ` Tom Rini
2022-09-30 13:28             ` Simon Glass
2022-09-25 15:02 ` [PATCH 10/45] binman: Allow obtaining a symbol value Simon Glass
2022-09-25 15:02 ` [PATCH 11/45] binman: Split out looking up a symbol into a function Simon Glass
2022-09-25 15:02 ` [PATCH 12/45] binman: Handle writing ELF symbols in the Entry class Simon Glass
2022-09-25 15:02 ` [PATCH 13/45] binman: Support writing symbols into ELF files Simon Glass
2022-09-25 15:02 ` [PATCH 14/45] dm: blk: Add udevice functions Simon Glass
2022-09-26  0:17   ` AKASHI Takahiro
2022-09-28 10:20     ` Simon Glass
2022-09-29  0:51       ` AKASHI Takahiro
2022-09-29  2:35         ` Simon Glass
2022-09-30  1:54           ` AKASHI Takahiro
2022-09-25 15:02 ` [PATCH 15/45] dm: usb: Update the test to cover reading and writing Simon Glass
2022-09-25 15:02 ` [PATCH 16/45] dm: blk: mmc: Tidy up some Makefile rules for SPL Simon Glass
2022-09-25 15:02 ` [PATCH 17/45] dm: mmc: Allow sandbox emulator to build without writes Simon Glass
2022-09-25 15:02 ` [PATCH 18/45] sandbox: Drop message about writing sandbox state Simon Glass
2022-09-26  6:31   ` Heinrich Schuchardt
2022-09-25 15:02 ` [PATCH 19/45] sandbox: Generalise SPL booting Simon Glass
2022-09-25 15:02 ` [PATCH 20/45] sandbox: Add a way to specify the sandbox executable Simon Glass
2022-09-26  6:49   ` Heinrich Schuchardt
2022-11-07 23:35     ` Simon Glass
2022-09-25 15:02 ` [PATCH 21/45] bootstd: Add a way to set up a bootflow Simon Glass
2022-09-25 15:02 ` [PATCH 22/45] image: Move comment for fit_conf_find_compat() Simon Glass
2022-09-26  6:54   ` Heinrich Schuchardt
2022-09-25 15:02 ` [PATCH 23/45] test: Report skippped tests Simon Glass
2022-09-25 15:02 ` [PATCH 24/45] test: Update tests to use the skip feature Simon Glass
2022-09-25 15:02 ` [PATCH 25/45] test: Support tests which can only be run manually Simon Glass
2022-09-26  6:56   ` Heinrich Schuchardt
2022-09-28 10:20     ` Simon Glass
2022-09-25 15:02 ` [PATCH 26/45] image: Add the concept of a phase to FIT Simon Glass
2022-09-25 15:02 ` [PATCH 27/45] image: Allow loading a FIT config for a particular phase Simon Glass
2022-09-25 15:02 ` [PATCH 28/45] image: Correct strncpy() warning with image_set_name() Simon Glass
2022-09-25 15:02 ` [PATCH 29/45] vbe: Rename vbe_fixup to vbe_request Simon Glass
2022-09-25 15:02 ` [PATCH 30/45] vbe: Use a warning for a failed requests Simon Glass
2022-09-25 15:02 ` [PATCH 31/45] spl: Allow multiple loaders of the same type Simon Glass
2022-09-30 16:28   ` Tom Rini
2022-09-30 16:37     ` Simon Glass
2022-09-30 16:39       ` Tom Rini
2022-09-30 16:45         ` Simon Glass
2022-09-30 16:50           ` Tom Rini
2022-09-30 16:55             ` Simon Glass
2022-09-25 15:02 ` [PATCH 32/45] sandbox: Support obtaining the next phase from an image Simon Glass
2022-09-25 15:02 ` [PATCH 33/45] vbe: Support selecting operations by SPL phase Simon Glass
2022-09-25 15:02 ` [PATCH 34/45] vbe: Support reading the next SPL phase via VBE Simon Glass
2022-09-25 15:02 ` [PATCH 35/45] vbe: Move OS implementation into a separate file Simon Glass
2022-09-25 15:02 ` [PATCH 36/45] vbe: Drop the U-Boot prefix from the version Simon Glass
2022-09-25 15:02 ` [PATCH 37/45] vbe: Add Kconfig options for VPL Simon Glass
2022-09-25 15:02 ` [PATCH 38/45] vbe: Add info about the VBE device to the fwupd node Simon Glass
2022-09-25 15:02 ` [PATCH 39/45] sandbox: Add a binman image for VPL Simon Glass
2022-09-25 15:02 ` [PATCH 40/45] vbe: Correct pylint warnings in test_vbe Simon Glass
2022-09-25 15:02 ` [PATCH 41/45] vbe: Use a manual test Simon Glass
2022-09-25 15:02 ` [PATCH 42/45] vbe: Record which phases loaded using VBE Simon Glass
2022-09-25 15:02 ` [PATCH 43/45] vbe: Add docs and a test for the VBE command Simon Glass
2022-09-25 15:02 ` [PATCH 44/45] vbe: Add a subcommand to show the VBE state Simon Glass
2022-09-25 15:02 ` [PATCH 45/45] vbe: Add a test for the VBE flow into U-Boot proper Simon Glass

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).