All of lore.kernel.org
 help / color / mirror / Atom feed
* [U-Boot] [PATCH 00/26] spl: Support loading a FIT image containing U-Boot
@ 2016-01-28 16:39 ` Simon Glass
  0 siblings, 0 replies; 54+ messages in thread
From: Simon Glass @ 2016-01-28 16:39 UTC (permalink / raw)
  To: u-boot

We need a way to support more than one board per binary in U-Boot with
device tree. Various methods have been discussed. The one that seems to make
the most sense is to adjust SPL so that it can load a FIT which contains
U-Boot and several device tree binaries. This is how things with with Linux:
load a FIT and select the correct device tree to pass to Linux.

This series:

- Adjusts the build system to optionally build a u-boot.img in FIT format
that includes the U-Boot binary and >1 device tree files
- Adjusts SPL to support loading this
- Adds a way for SPL to determine which device tree to select (by calling a
board-specific function)
- Adjusts SPL to pass this selected device tree to U-Boot when it starts

It would be painful to require an .its file for each board just to support
this feature. In any case various people have commented that it would be
nice not to have to write this file in general. Therefore, this series
enhances mkimage to automatically generate a FIT without a .its file. So far
it understands how to add a main image and a number of device tree files. It
does not support hashing or verified boot as yet.

One problem with the FIT format as it stands is that all the data is inline.
This means that the entire file must be read in order to figure out what
device-tree files are available. It is then possible to copy the images into
place.

This is not really suitable for SPL since copying can be slow, and reading
unnecessary data would make the FIT format less efficient than the legacy
format.

Therefore this series adds a new feature to FIT which allows the images to
be stored immediately after the FIT itself ends. This makes the FIT very
small. It can be read quickly and in its entirety. Then the images can be
loaded one by one as needed. This allows SPL to support FITs containing lots
of images very efficiently.

To achieve this, mkimage is enhanced to convert between the 'normal' and
'external' version of a FIT file. The latter is only used for the SPL loader.
The main difference is that viewing an 'external' FIT will not show the
contents of each image.

This series also includes a few other tidy-ups, such as moving mkimage's
tricky argument-processing code to use getopt().

NOTE: There are a few problems remaining with the Kconfig conversion. I'm
still fiddling with this but thought it best to send this series out for
comment in the meantime.

This series is available at u-boot-fdt/spl-working.


Simon Glass (26):
  mkimage: Move argument processing into its own function
  mkimage: Convert to use getopt()
  mkimage: Sort the option processing code by option
  mkimage: Move usage() up to the top
  mkimage: Show an error message when usage() is called
  mkimage: Make 'params' static
  libfdt: Add a function to write a property placeholder
  Correct defconfig ordering
  Move CONFIG_OF_LIBFDT to Kconfig
  Kconfig: Move CONFIG_FIT and CONFIG_OF_*_SETUP to Kconfig
  fdt: Adjust DEFAULT_DEVICE_TREE to device on OF_CONTROL
  fdt: Allow libfdt to be used in SPL
  sunxi: Display the board model on start-up
  tools: Include fdt_sw.o in libfdt for mkimage
  mkimage: Allow a FIT to include an image of any type
  tools: Add a function to obtain the size of a file
  image: Add functions to obtain short names
  mkimage: Support automatic creating of a FIT without a .its
  mkimage: Support adding device tree files to a FIT
  mkimage: Support placing data outside the FIT
  mkimage: Bring data into the FIT before processing
  spl: Add a way for boards to select which device tree to load
  spl: Add an option to load a FIT containing U-Boot
  spl: Add a way to specify a list of device trees to include
  spl: Support loading a FIT from MMC
  RFC: sunxi: Enable SPL FIT support

 Kconfig                                            |  11 +
 Makefile                                           |  10 +-
 arch/arm/cpu/armv7/sunxi/board.c                   |   5 +
 cmd/disk.c                                         |   6 +-
 common/Kconfig                                     |  28 ++
 common/Makefile                                    |   6 +-
 common/bootm.c                                     |  14 +-
 common/image-fdt.c                                 |   8 +-
 common/image-fit.c                                 |   3 +-
 common/image.c                                     |  50 +-
 common/spl/Makefile                                |   1 +
 common/spl/spl_fit.c                               | 192 ++++++++
 common/spl/spl_mmc.c                               |  75 ++-
 configs/10m50_defconfig                            |   1 +
 configs/3c120_defconfig                            |   1 +
 configs/A10-OLinuXino-Lime_defconfig               |   1 +
 configs/A10s-OLinuXino-M_defconfig                 |   1 +
 configs/A13-OLinuXinoM_defconfig                   |   1 +
 configs/A13-OLinuXino_defconfig                    |   1 +
 configs/A20-OLinuXino-Lime2_defconfig              |   1 +
 configs/A20-OLinuXino-Lime_defconfig               |   1 +
 configs/A20-OLinuXino_MICRO_defconfig              |   1 +
 configs/A20-Olimex-SOM-EVB_defconfig               |   1 +
 configs/Ainol_AW1_defconfig                        |   1 +
 configs/Ampe_A76_defconfig                         |   1 +
 configs/Auxtek-T003_defconfig                      |   1 +
 configs/Auxtek-T004_defconfig                      |   1 +
 configs/B4420QDS_NAND_defconfig                    |   3 +
 configs/B4420QDS_SPIFLASH_defconfig                |   3 +
 configs/B4420QDS_defconfig                         |   3 +
 configs/B4860QDS_NAND_defconfig                    |   3 +
 configs/B4860QDS_SECURE_BOOT_defconfig             |   3 +
 configs/B4860QDS_SPIFLASH_defconfig                |   3 +
 configs/B4860QDS_SRIO_PCIE_BOOT_defconfig          |   3 +
 configs/B4860QDS_defconfig                         |   3 +
 configs/BSC9131RDB_NAND_SYSCLK100_defconfig        |   3 +
 configs/BSC9131RDB_NAND_defconfig                  |   3 +
 configs/BSC9131RDB_SPIFLASH_SYSCLK100_defconfig    |   3 +
 configs/BSC9131RDB_SPIFLASH_defconfig              |   3 +
 configs/BSC9132QDS_NAND_DDRCLK100_SECURE_defconfig |   3 +
 configs/BSC9132QDS_NAND_DDRCLK100_defconfig        |   3 +
 configs/BSC9132QDS_NAND_DDRCLK133_SECURE_defconfig |   3 +
 configs/BSC9132QDS_NAND_DDRCLK133_defconfig        |   3 +
 configs/BSC9132QDS_NOR_DDRCLK100_SECURE_defconfig  |   3 +
 configs/BSC9132QDS_NOR_DDRCLK100_defconfig         |   3 +
 configs/BSC9132QDS_NOR_DDRCLK133_SECURE_defconfig  |   3 +
 configs/BSC9132QDS_NOR_DDRCLK133_defconfig         |   3 +
 .../BSC9132QDS_SDCARD_DDRCLK100_SECURE_defconfig   |   3 +
 configs/BSC9132QDS_SDCARD_DDRCLK100_defconfig      |   3 +
 .../BSC9132QDS_SDCARD_DDRCLK133_SECURE_defconfig   |   3 +
 configs/BSC9132QDS_SDCARD_DDRCLK133_defconfig      |   3 +
 .../BSC9132QDS_SPIFLASH_DDRCLK100_SECURE_defconfig |   3 +
 configs/BSC9132QDS_SPIFLASH_DDRCLK100_defconfig    |   3 +
 .../BSC9132QDS_SPIFLASH_DDRCLK133_SECURE_defconfig |   3 +
 configs/BSC9132QDS_SPIFLASH_DDRCLK133_defconfig    |   3 +
 configs/Bananapi_defconfig                         |   1 +
 configs/Bananapro_defconfig                        |   1 +
 configs/C29XPCIE_NAND_defconfig                    |   3 +
 configs/C29XPCIE_NOR_SECBOOT_defconfig             |   3 +
 configs/C29XPCIE_SPIFLASH_SECBOOT_defconfig        |   3 +
 configs/C29XPCIE_SPIFLASH_defconfig                |   3 +
 configs/C29XPCIE_defconfig                         |   3 +
 configs/CHIP_defconfig                             |   1 +
 configs/CPCI4052_defconfig                         |   2 +
 configs/CSQ_CS908_defconfig                        |   1 +
 configs/Chuwi_V7_CW0825_defconfig                  |   1 +
 configs/Colombus_defconfig                         |   1 +
 configs/Cubieboard2_defconfig                      |   1 +
 configs/Cubieboard_defconfig                       |   1 +
 configs/Cubietruck_defconfig                       |   1 +
 configs/Cyrus_P5020_defconfig                      |   3 +
 configs/Cyrus_P5040_defconfig                      |   3 +
 configs/Empire_electronix_d709_defconfig           |   1 +
 configs/Hummingbird_A31_defconfig                  |   1 +
 configs/Hyundai_A7HD_defconfig                     |   1 +
 configs/Lamobo_R1_defconfig                        |   1 +
 configs/Linksprite_pcDuino3_Nano_defconfig         |   1 +
 configs/Linksprite_pcDuino3_defconfig              |   4 +
 configs/Linksprite_pcDuino_defconfig               |   1 +
 configs/MK808C_defconfig                           |   1 +
 configs/MPC8308RDB_defconfig                       |   3 +
 configs/MPC8313ERDB_33_defconfig                   |   2 +
 configs/MPC8313ERDB_66_defconfig                   |   2 +
 configs/MPC8313ERDB_NAND_33_defconfig              |   2 +
 configs/MPC8313ERDB_NAND_66_defconfig              |   2 +
 configs/MPC8315ERDB_defconfig                      |   2 +
 configs/MPC8323ERDB_defconfig                      |   2 +
 configs/MPC832XEMDS_ATM_defconfig                  |   2 +
 configs/MPC832XEMDS_HOST_33_defconfig              |   2 +
 configs/MPC832XEMDS_HOST_66_defconfig              |   2 +
 configs/MPC832XEMDS_SLAVE_defconfig                |   2 +
 configs/MPC832XEMDS_defconfig                      |   2 +
 configs/MPC8349EMDS_defconfig                      |   2 +
 configs/MPC8349ITXGP_defconfig                     |   2 +
 configs/MPC8349ITX_LOWBOOT_defconfig               |   2 +
 configs/MPC8349ITX_defconfig                       |   2 +
 configs/MPC837XEMDS_HOST_defconfig                 |   2 +
 configs/MPC837XEMDS_defconfig                      |   2 +
 configs/MPC837XERDB_defconfig                      |   2 +
 configs/MPC8536DS_36BIT_defconfig                  |   2 +
 configs/MPC8536DS_SDCARD_defconfig                 |   2 +
 configs/MPC8536DS_SPIFLASH_defconfig               |   2 +
 configs/MPC8536DS_defconfig                        |   2 +
 configs/MPC8540ADS_defconfig                       |   2 +
 configs/MPC8541CDS_defconfig                       |   2 +
 configs/MPC8541CDS_legacy_defconfig                |   2 +
 configs/MPC8544DS_defconfig                        |   2 +
 configs/MPC8548CDS_36BIT_defconfig                 |   2 +
 configs/MPC8548CDS_defconfig                       |   2 +
 configs/MPC8548CDS_legacy_defconfig                |   2 +
 configs/MPC8555CDS_defconfig                       |   2 +
 configs/MPC8555CDS_legacy_defconfig                |   2 +
 configs/MPC8560ADS_defconfig                       |   2 +
 configs/MPC8568MDS_defconfig                       |   2 +
 configs/MPC8569MDS_ATM_defconfig                   |   2 +
 configs/MPC8569MDS_defconfig                       |   2 +
 configs/MPC8572DS_36BIT_defconfig                  |   3 +
 configs/MPC8572DS_defconfig                        |   3 +
 configs/MPC8610HPCD_defconfig                      |   2 +
 configs/MPC8641HPCN_36BIT_defconfig                |   2 +
 configs/MPC8641HPCN_defconfig                      |   2 +
 configs/MSI_Primo73_defconfig                      |   1 +
 configs/MSI_Primo81_defconfig                      |   1 +
 configs/Marsboard_A10_defconfig                    |   1 +
 configs/Mele_A1000G_quad_defconfig                 |   1 +
 configs/Mele_A1000_defconfig                       |   1 +
 configs/Mele_I7_defconfig                          |   1 +
 configs/Mele_M3_defconfig                          |   1 +
 configs/Mele_M5_defconfig                          |   1 +
 configs/Mele_M9_defconfig                          |   1 +
 configs/Mini-X_defconfig                           |   1 +
 configs/MiniFAP_defconfig                          |   2 +
 configs/O2D300_defconfig                           |   2 +
 configs/O2DNT2_RAMBOOT_defconfig                   |   2 +
 configs/O2DNT2_defconfig                           |   2 +
 configs/O2D_defconfig                              |   2 +
 configs/O2I_defconfig                              |   2 +
 configs/O2MNT_O2M110_defconfig                     |   2 +
 configs/O2MNT_O2M112_defconfig                     |   2 +
 configs/O2MNT_O2M113_defconfig                     |   2 +
 configs/O2MNT_defconfig                            |   2 +
 configs/O3DNT_defconfig                            |   2 +
 configs/Orangepi_defconfig                         |   1 +
 configs/Orangepi_mini_defconfig                    |   1 +
 configs/P1010RDB-PA_36BIT_NAND_SECBOOT_defconfig   |   3 +
 configs/P1010RDB-PA_36BIT_NAND_defconfig           |   3 +
 configs/P1010RDB-PA_36BIT_NOR_SECBOOT_defconfig    |   3 +
 configs/P1010RDB-PA_36BIT_NOR_defconfig            |   3 +
 configs/P1010RDB-PA_36BIT_SDCARD_defconfig         |   3 +
 .../P1010RDB-PA_36BIT_SPIFLASH_SECBOOT_defconfig   |   3 +
 configs/P1010RDB-PA_36BIT_SPIFLASH_defconfig       |   3 +
 configs/P1010RDB-PA_NAND_SECBOOT_defconfig         |   3 +
 configs/P1010RDB-PA_NAND_defconfig                 |   3 +
 configs/P1010RDB-PA_NOR_SECBOOT_defconfig          |   3 +
 configs/P1010RDB-PA_NOR_defconfig                  |   3 +
 configs/P1010RDB-PA_SDCARD_defconfig               |   3 +
 configs/P1010RDB-PA_SPIFLASH_SECBOOT_defconfig     |   3 +
 configs/P1010RDB-PA_SPIFLASH_defconfig             |   3 +
 configs/P1010RDB-PB_36BIT_NAND_SECBOOT_defconfig   |   3 +
 configs/P1010RDB-PB_36BIT_NAND_defconfig           |   3 +
 configs/P1010RDB-PB_36BIT_NOR_SECBOOT_defconfig    |   3 +
 configs/P1010RDB-PB_36BIT_NOR_defconfig            |   3 +
 configs/P1010RDB-PB_36BIT_SDCARD_defconfig         |   3 +
 .../P1010RDB-PB_36BIT_SPIFLASH_SECBOOT_defconfig   |   3 +
 configs/P1010RDB-PB_36BIT_SPIFLASH_defconfig       |   3 +
 configs/P1010RDB-PB_NAND_SECBOOT_defconfig         |   3 +
 configs/P1010RDB-PB_NAND_defconfig                 |   3 +
 configs/P1010RDB-PB_NOR_SECBOOT_defconfig          |   3 +
 configs/P1010RDB-PB_NOR_defconfig                  |   3 +
 configs/P1010RDB-PB_SDCARD_defconfig               |   3 +
 configs/P1010RDB-PB_SPIFLASH_SECBOOT_defconfig     |   3 +
 configs/P1010RDB-PB_SPIFLASH_defconfig             |   3 +
 configs/P1020MBG-PC_36BIT_SDCARD_defconfig         |   3 +
 configs/P1020MBG-PC_36BIT_defconfig                |   3 +
 configs/P1020MBG-PC_SDCARD_defconfig               |   3 +
 configs/P1020MBG-PC_defconfig                      |   3 +
 configs/P1020RDB-PC_36BIT_NAND_defconfig           |   3 +
 configs/P1020RDB-PC_36BIT_SDCARD_defconfig         |   3 +
 configs/P1020RDB-PC_36BIT_SPIFLASH_defconfig       |   3 +
 configs/P1020RDB-PC_36BIT_defconfig                |   3 +
 configs/P1020RDB-PC_NAND_defconfig                 |   3 +
 configs/P1020RDB-PC_SDCARD_defconfig               |   3 +
 configs/P1020RDB-PC_SPIFLASH_defconfig             |   3 +
 configs/P1020RDB-PC_defconfig                      |   3 +
 configs/P1020RDB-PD_NAND_defconfig                 |   3 +
 configs/P1020RDB-PD_SDCARD_defconfig               |   3 +
 configs/P1020RDB-PD_SPIFLASH_defconfig             |   3 +
 configs/P1020RDB-PD_defconfig                      |   3 +
 configs/P1020UTM-PC_36BIT_SDCARD_defconfig         |   3 +
 configs/P1020UTM-PC_36BIT_defconfig                |   3 +
 configs/P1020UTM-PC_SDCARD_defconfig               |   3 +
 configs/P1020UTM-PC_defconfig                      |   3 +
 configs/P1021RDB-PC_36BIT_NAND_defconfig           |   3 +
 configs/P1021RDB-PC_36BIT_SDCARD_defconfig         |   3 +
 configs/P1021RDB-PC_36BIT_SPIFLASH_defconfig       |   3 +
 configs/P1021RDB-PC_36BIT_defconfig                |   3 +
 configs/P1021RDB-PC_NAND_defconfig                 |   3 +
 configs/P1021RDB-PC_SDCARD_defconfig               |   3 +
 configs/P1021RDB-PC_SPIFLASH_defconfig             |   3 +
 configs/P1021RDB-PC_defconfig                      |   3 +
 configs/P1022DS_36BIT_NAND_defconfig               |   3 +
 configs/P1022DS_36BIT_SDCARD_defconfig             |   3 +
 configs/P1022DS_36BIT_SPIFLASH_defconfig           |   3 +
 configs/P1022DS_36BIT_defconfig                    |   3 +
 configs/P1022DS_NAND_defconfig                     |   3 +
 configs/P1022DS_SDCARD_defconfig                   |   3 +
 configs/P1022DS_SPIFLASH_defconfig                 |   3 +
 configs/P1022DS_defconfig                          |   3 +
 configs/P1023RDB_defconfig                         |   3 +
 configs/P1024RDB_36BIT_defconfig                   |   3 +
 configs/P1024RDB_NAND_defconfig                    |   3 +
 configs/P1024RDB_SDCARD_defconfig                  |   3 +
 configs/P1024RDB_SPIFLASH_defconfig                |   3 +
 configs/P1024RDB_defconfig                         |   3 +
 configs/P1025RDB_36BIT_defconfig                   |   3 +
 configs/P1025RDB_NAND_defconfig                    |   3 +
 configs/P1025RDB_SDCARD_defconfig                  |   3 +
 configs/P1025RDB_SPIFLASH_defconfig                |   3 +
 configs/P1025RDB_defconfig                         |   3 +
 configs/P2020RDB-PC_36BIT_NAND_defconfig           |   3 +
 configs/P2020RDB-PC_36BIT_SDCARD_defconfig         |   3 +
 configs/P2020RDB-PC_36BIT_SPIFLASH_defconfig       |   3 +
 configs/P2020RDB-PC_36BIT_defconfig                |   3 +
 configs/P2020RDB-PC_NAND_defconfig                 |   3 +
 configs/P2020RDB-PC_SDCARD_defconfig               |   3 +
 configs/P2020RDB-PC_SPIFLASH_defconfig             |   3 +
 configs/P2020RDB-PC_defconfig                      |   3 +
 configs/P2041RDB_NAND_defconfig                    |   3 +
 configs/P2041RDB_SDCARD_defconfig                  |   3 +
 configs/P2041RDB_SECURE_BOOT_defconfig             |   3 +
 configs/P2041RDB_SPIFLASH_defconfig                |   3 +
 configs/P2041RDB_SRIO_PCIE_BOOT_defconfig          |   3 +
 configs/P2041RDB_defconfig                         |   3 +
 configs/P3041DS_NAND_SECURE_BOOT_defconfig         |   3 +
 configs/P3041DS_NAND_defconfig                     |   3 +
 configs/P3041DS_SDCARD_defconfig                   |   3 +
 configs/P3041DS_SECURE_BOOT_defconfig              |   3 +
 configs/P3041DS_SPIFLASH_defconfig                 |   3 +
 configs/P3041DS_SRIO_PCIE_BOOT_defconfig           |   3 +
 configs/P3041DS_defconfig                          |   3 +
 configs/P4080DS_SDCARD_defconfig                   |   3 +
 configs/P4080DS_SECURE_BOOT_defconfig              |   3 +
 configs/P4080DS_SPIFLASH_defconfig                 |   3 +
 configs/P4080DS_SRIO_PCIE_BOOT_defconfig           |   3 +
 configs/P4080DS_defconfig                          |   3 +
 configs/P5020DS_NAND_SECURE_BOOT_defconfig         |   3 +
 configs/P5020DS_NAND_defconfig                     |   3 +
 configs/P5020DS_SDCARD_defconfig                   |   3 +
 configs/P5020DS_SECURE_BOOT_defconfig              |   3 +
 configs/P5020DS_SPIFLASH_defconfig                 |   3 +
 configs/P5020DS_SRIO_PCIE_BOOT_defconfig           |   3 +
 configs/P5020DS_defconfig                          |   3 +
 configs/P5040DS_NAND_SECURE_BOOT_defconfig         |   3 +
 configs/P5040DS_NAND_defconfig                     |   3 +
 configs/P5040DS_SDCARD_defconfig                   |   3 +
 configs/P5040DS_SECURE_BOOT_defconfig              |   3 +
 configs/P5040DS_SPIFLASH_defconfig                 |   3 +
 configs/P5040DS_defconfig                          |   3 +
 configs/PLU405_defconfig                           |   2 +
 configs/PMC405DE_defconfig                         |   2 +
 configs/PMC440_defconfig                           |   2 +
 configs/Sinlinx_SinA33_defconfig                   |   1 +
 configs/Sinovoip_BPI_M2_defconfig                  |   1 +
 configs/T1023RDB_NAND_defconfig                    |   3 +
 configs/T1023RDB_SDCARD_defconfig                  |   3 +
 configs/T1023RDB_SECURE_BOOT_defconfig             |   3 +
 configs/T1023RDB_SPIFLASH_defconfig                |   3 +
 configs/T1023RDB_defconfig                         |   3 +
 configs/T1024QDS_DDR4_SECURE_BOOT_defconfig        |   3 +
 configs/T1024QDS_DDR4_defconfig                    |   3 +
 configs/T1024QDS_NAND_defconfig                    |   3 +
 configs/T1024QDS_SDCARD_defconfig                  |   3 +
 configs/T1024QDS_SECURE_BOOT_defconfig             |   3 +
 configs/T1024QDS_SPIFLASH_defconfig                |   3 +
 configs/T1024QDS_defconfig                         |   3 +
 configs/T1024RDB_NAND_defconfig                    |   3 +
 configs/T1024RDB_SDCARD_defconfig                  |   3 +
 configs/T1024RDB_SECURE_BOOT_defconfig             |   3 +
 configs/T1024RDB_SPIFLASH_defconfig                |   3 +
 configs/T1024RDB_defconfig                         |   3 +
 configs/T1040D4RDB_NAND_defconfig                  |   3 +
 configs/T1040D4RDB_SDCARD_defconfig                |   3 +
 configs/T1040D4RDB_SECURE_BOOT_defconfig           |   3 +
 configs/T1040D4RDB_SPIFLASH_defconfig              |   3 +
 configs/T1040D4RDB_defconfig                       |   3 +
 configs/T1040QDS_DDR4_defconfig                    |   3 +
 configs/T1040QDS_SECURE_BOOT_defconfig             |   3 +
 configs/T1040QDS_defconfig                         |   3 +
 configs/T1040RDB_NAND_defconfig                    |   3 +
 configs/T1040RDB_SDCARD_defconfig                  |   3 +
 configs/T1040RDB_SECURE_BOOT_defconfig             |   3 +
 configs/T1040RDB_SPIFLASH_defconfig                |   3 +
 configs/T1040RDB_defconfig                         |   3 +
 configs/T1042D4RDB_NAND_defconfig                  |   3 +
 configs/T1042D4RDB_SDCARD_defconfig                |   3 +
 configs/T1042D4RDB_SECURE_BOOT_defconfig           |   3 +
 configs/T1042D4RDB_SPIFLASH_defconfig              |   3 +
 configs/T1042D4RDB_defconfig                       |   3 +
 configs/T1042RDB_PI_NAND_defconfig                 |   3 +
 configs/T1042RDB_PI_SDCARD_defconfig               |   3 +
 configs/T1042RDB_PI_SPIFLASH_defconfig             |   3 +
 configs/T1042RDB_PI_defconfig                      |   3 +
 configs/T1042RDB_SECURE_BOOT_defconfig             |   3 +
 configs/T1042RDB_defconfig                         |   3 +
 configs/T2080QDS_NAND_defconfig                    |   3 +
 configs/T2080QDS_SDCARD_defconfig                  |   3 +
 configs/T2080QDS_SECURE_BOOT_defconfig             |   3 +
 configs/T2080QDS_SPIFLASH_defconfig                |   3 +
 configs/T2080QDS_SRIO_PCIE_BOOT_defconfig          |   3 +
 configs/T2080QDS_defconfig                         |   3 +
 configs/T2080RDB_NAND_defconfig                    |   3 +
 configs/T2080RDB_SDCARD_defconfig                  |   3 +
 configs/T2080RDB_SECURE_BOOT_defconfig             |   3 +
 configs/T2080RDB_SPIFLASH_defconfig                |   3 +
 configs/T2080RDB_SRIO_PCIE_BOOT_defconfig          |   3 +
 configs/T2080RDB_defconfig                         |   3 +
 configs/T2081QDS_NAND_defconfig                    |   3 +
 configs/T2081QDS_SDCARD_defconfig                  |   3 +
 configs/T2081QDS_SPIFLASH_defconfig                |   3 +
 configs/T2081QDS_SRIO_PCIE_BOOT_defconfig          |   3 +
 configs/T2081QDS_defconfig                         |   3 +
 configs/T4160QDS_NAND_defconfig                    |   3 +
 configs/T4160QDS_SDCARD_defconfig                  |   3 +
 configs/T4160QDS_SECURE_BOOT_defconfig             |   3 +
 configs/T4160QDS_defconfig                         |   3 +
 configs/T4160RDB_defconfig                         |   3 +
 configs/T4240QDS_NAND_defconfig                    |   3 +
 configs/T4240QDS_SDCARD_defconfig                  |   3 +
 configs/T4240QDS_SECURE_BOOT_defconfig             |   3 +
 configs/T4240QDS_SRIO_PCIE_BOOT_defconfig          |   3 +
 configs/T4240QDS_defconfig                         |   3 +
 configs/T4240RDB_SDCARD_defconfig                  |   3 +
 configs/T4240RDB_defconfig                         |   3 +
 configs/TQM5200S_HIGHBOOT_defconfig                |   2 +
 configs/TQM5200S_defconfig                         |   2 +
 configs/TQM5200_B_HIGHBOOT_defconfig               |   2 +
 configs/TQM5200_B_defconfig                        |   2 +
 configs/TQM5200_STK100_defconfig                   |   2 +
 configs/TQM5200_defconfig                          |   2 +
 configs/TQM823L_LCD_defconfig                      |   2 +
 configs/TQM823L_defconfig                          |   2 +
 configs/TQM823M_defconfig                          |   2 +
 configs/TQM834x_defconfig                          |   2 +
 configs/TQM850L_defconfig                          |   2 +
 configs/TQM850M_defconfig                          |   2 +
 configs/TQM855L_defconfig                          |   2 +
 configs/TQM855M_defconfig                          |   2 +
 configs/TQM860L_defconfig                          |   2 +
 configs/TQM860M_defconfig                          |   2 +
 configs/TQM862L_defconfig                          |   2 +
 configs/TQM862M_defconfig                          |   2 +
 configs/TQM866M_defconfig                          |   2 +
 configs/TQM885D_defconfig                          |   2 +
 configs/TTTech_defconfig                           |   2 +
 configs/TWR-P1025_defconfig                        |   3 +
 configs/UCP1020_SPIFLASH_defconfig                 |   3 +
 configs/UCP1020_defconfig                          |   3 +
 configs/UTOO_P66_defconfig                         |   1 +
 configs/VOM405_defconfig                           |   2 +
 configs/Wexler_TAB7200_defconfig                   |   1 +
 configs/Wits_Pro_A20_DKT_defconfig                 |   1 +
 configs/Wobo_i5_defconfig                          |   1 +
 configs/Yones_Toptech_BD1078_defconfig             |   1 +
 configs/a3m071_defconfig                           |   3 +
 configs/a4m072_defconfig                           |   2 +
 configs/a4m2k_defconfig                            |   3 +
 configs/ac14xx_defconfig                           |   3 +
 configs/acadia_defconfig                           |   2 +
 configs/alt_defconfig                              |   1 +
 configs/am335x_baltos_defconfig                    |   2 +
 configs/am335x_boneblack_defconfig                 |   2 +
 configs/am335x_evm_defconfig                       |   2 +
 configs/am335x_evm_nor_defconfig                   |   2 +
 configs/am335x_evm_norboot_defconfig               |   2 +
 configs/am335x_evm_spiboot_defconfig               |   2 +
 configs/am335x_evm_usbspl_defconfig                |   2 +
 configs/am335x_gp_evm_defconfig                    |   3 +-
 configs/am335x_igep0033_defconfig                  |   1 +
 configs/am335x_sl50_defconfig                      |   2 +
 configs/am3517_evm_defconfig                       |   1 +
 configs/am437x_sk_evm_defconfig                    |   6 +-
 configs/am43xx_evm_defconfig                       |   1 +
 configs/am43xx_evm_ethboot_defconfig               |   1 +
 configs/am43xx_evm_qspiboot_defconfig              |   1 +
 configs/am43xx_evm_usbhost_boot_defconfig          |   1 +
 configs/am57xx_evm_nodt_defconfig                  |   1 +
 configs/apalis_t30_defconfig                       |   2 +-
 configs/apf27_defconfig                            |   1 +
 configs/apx4devkit_defconfig                       |   1 +
 configs/arches_defconfig                           |   1 +
 configs/aria_defconfig                             |   2 +
 configs/aristainetos2_defconfig                    |   2 +
 configs/aristainetos2b_defconfig                   |   2 +
 configs/aristainetos_defconfig                     |   2 +
 configs/armadillo-800eva_defconfig                 |   1 +
 configs/arndale_defconfig                          |   1 +
 configs/aspenite_defconfig                         |   1 +
 configs/at91rm9200ek_defconfig                     |   1 +
 configs/at91rm9200ek_ram_defconfig                 |   1 +
 configs/at91sam9260ek_dataflash_cs0_defconfig      |   1 +
 configs/at91sam9260ek_dataflash_cs1_defconfig      |   1 +
 configs/at91sam9260ek_nandflash_defconfig          |   1 +
 configs/at91sam9261ek_dataflash_cs0_defconfig      |   1 +
 configs/at91sam9261ek_dataflash_cs3_defconfig      |   1 +
 configs/at91sam9261ek_nandflash_defconfig          |   1 +
 configs/at91sam9263ek_dataflash_cs0_defconfig      |   1 +
 configs/at91sam9263ek_dataflash_defconfig          |   1 +
 configs/at91sam9263ek_nandflash_defconfig          |   1 +
 configs/at91sam9263ek_norflash_boot_defconfig      |   1 +
 configs/at91sam9263ek_norflash_defconfig           |   1 +
 configs/at91sam9g10ek_dataflash_cs0_defconfig      |   1 +
 configs/at91sam9g10ek_dataflash_cs3_defconfig      |   1 +
 configs/at91sam9g10ek_nandflash_defconfig          |   1 +
 configs/at91sam9g20ek_2mmc_defconfig               |   1 +
 configs/at91sam9g20ek_2mmc_nandflash_defconfig     |   1 +
 configs/at91sam9g20ek_dataflash_cs0_defconfig      |   1 +
 configs/at91sam9g20ek_dataflash_cs1_defconfig      |   1 +
 configs/at91sam9g20ek_nandflash_defconfig          |   1 +
 configs/at91sam9m10g45ek_mmc_defconfig             |   1 +
 configs/at91sam9m10g45ek_nandflash_defconfig       |   1 +
 configs/at91sam9n12ek_mmc_defconfig                |   1 +
 configs/at91sam9n12ek_nandflash_defconfig          |   1 +
 configs/at91sam9n12ek_spiflash_defconfig           |   1 +
 configs/at91sam9rlek_dataflash_defconfig           |   1 +
 configs/at91sam9rlek_mmc_defconfig                 |   1 +
 configs/at91sam9rlek_nandflash_defconfig           |   1 +
 configs/at91sam9x5ek_dataflash_defconfig           |   1 +
 configs/at91sam9x5ek_mmc_defconfig                 |   1 +
 configs/at91sam9x5ek_nandflash_defconfig           |   1 +
 configs/at91sam9x5ek_spiflash_defconfig            |   1 +
 configs/at91sam9xeek_dataflash_cs0_defconfig       |   1 +
 configs/at91sam9xeek_dataflash_cs1_defconfig       |   1 +
 configs/at91sam9xeek_nandflash_defconfig           |   1 +
 configs/axm_defconfig                              |   1 +
 configs/ba10_tv_box_defconfig                      |   1 +
 configs/bamboo_defconfig                           |   2 +
 configs/bayleybay_defconfig                        |   5 +-
 configs/bcm911360_entphn-ns_defconfig              |   1 +
 configs/bcm911360_entphn_defconfig                 |   1 +
 configs/bcm911360k_defconfig                       |   1 +
 configs/bcm958300k-ns_defconfig                    |   1 +
 configs/bcm958300k_defconfig                       |   1 +
 configs/bcm958305k_defconfig                       |   1 +
 configs/bcm958622hr_defconfig                      |   1 +
 configs/beaver_defconfig                           |   1 +
 configs/bg0900_defconfig                           |   1 +
 configs/birdland_bav335a_defconfig                 |   2 +
 configs/birdland_bav335b_defconfig                 |   2 +
 configs/bubinga_defconfig                          |   2 +
 configs/caddy2_defconfig                           |   2 +
 configs/cairo_defconfig                            |   1 +
 configs/cam5200_defconfig                          |   2 +
 configs/cam5200_niosflash_defconfig                |   2 +
 configs/canyonlands_defconfig                      |   1 +
 configs/cardhu_defconfig                           |   1 +
 configs/cgtqmx6eval_defconfig                      |   5 +-
 configs/charon_defconfig                           |   2 +
 configs/chromebook_link_defconfig                  |   5 +-
 configs/chromebox_panther_defconfig                |   5 +-
 configs/cm5200_defconfig                           |   2 +
 configs/cm_fx6_defconfig                           |   2 +
 configs/cm_t335_defconfig                          |   1 +
 configs/cm_t3517_defconfig                         |   1 +
 configs/cm_t35_defconfig                           |   1 +
 configs/cm_t43_defconfig                           |   1 +
 configs/cm_t54_defconfig                           |   2 +
 configs/colibri_pxa270_defconfig                   |   1 +
 configs/colibri_t20_defconfig                      |   1 +
 configs/colibri_t30_defconfig                      |   1 +
 configs/colibri_vf_defconfig                       |   1 +
 .../controlcenterd_36BIT_SDCARD_DEVELOP_defconfig  |   3 +
 configs/controlcenterd_36BIT_SDCARD_defconfig      |   3 +
 configs/coreboot-x86_defconfig                     |   5 +-
 configs/corvus_defconfig                           |   1 +
 configs/crownbay_defconfig                         |   5 +-
 configs/d2net_v2_defconfig                         |   1 +
 configs/da850_am18xxevm_defconfig                  |   1 +
 configs/da850evm_defconfig                         |   1 +
 configs/da850evm_direct_nor_defconfig              |   1 +
 configs/dalmore_defconfig                          |   1 +
 configs/devconcenter_defconfig                     |   3 +
 configs/devkit3250_defconfig                       |   1 +
 configs/devkit8000_defconfig                       |   1 +
 configs/digsy_mtc_RAMBOOT_defconfig                |   2 +
 configs/digsy_mtc_defconfig                        |   2 +
 configs/digsy_mtc_rev5_RAMBOOT_defconfig           |   2 +
 configs/digsy_mtc_rev5_defconfig                   |   2 +
 configs/dlvision-10g_defconfig                     |   3 +
 configs/dlvision_defconfig                         |   3 +
 configs/dns325_defconfig                           |   1 +
 configs/dockstar_defconfig                         |   1 +
 configs/dra72_evm_defconfig                        |   4 +-
 configs/dra74_evm_defconfig                        |   6 +-
 configs/dra7xx_evm_defconfig                       |   1 +
 configs/dra7xx_evm_qspiboot_defconfig              |   1 +
 configs/dra7xx_evm_uart3_defconfig                 |   1 +
 configs/draco_defconfig                            |   1 +
 configs/dreamplug_defconfig                        |   1 +
 configs/duovero_defconfig                          |   1 +
 configs/e2220-1170_defconfig                       |   1 +
 configs/eco5pk_defconfig                           |   2 +
 configs/efi-x86_defconfig                          |   2 +-
 configs/evb-rk3036_defconfig                       |  25 +-
 configs/firefly-rk3288_defconfig                   |   2 +-
 configs/flea3_defconfig                            |   1 +
 configs/fo300_defconfig                            |   2 +
 configs/ga10h_v1_1_defconfig                       |   1 +
 configs/galileo_defconfig                          |   5 +-
 configs/gdppc440etx_defconfig                      |   2 +
 configs/glacier_defconfig                          |   1 +
 configs/glacier_ramboot_defconfig                  |   1 +
 configs/goflexhome_defconfig                       |   1 +
 configs/gose_defconfig                             |   1 +
 configs/gplugd_defconfig                           |   1 +
 configs/gt90h_v4_defconfig                         |   1 +
 configs/guruplug_defconfig                         |   1 +
 configs/gwventana_defconfig                        |   3 +
 configs/h2200_defconfig                            |   1 +
 configs/h8_homlet_v2_defconfig                     |   6 -
 configs/haleakala_defconfig                        |   2 +
 configs/harmony_defconfig                          |   1 +
 configs/highbank_defconfig                         |   3 +
 configs/hikey_defconfig                            |   1 +
 configs/hrcon_defconfig                            |   3 +
 configs/hrcon_dh_defconfig                         |   3 +
 configs/i12-tvbox_defconfig                        |   1 +
 configs/iNet_3F_defconfig                          |   1 +
 configs/iNet_3W_defconfig                          |   1 +
 configs/iNet_86VS_defconfig                        |   1 +
 configs/ib62x0_defconfig                           |   1 +
 configs/icon_defconfig                             |   2 +
 configs/iconnect_defconfig                         |   1 +
 configs/ids8313_defconfig                          |   2 +
 configs/igep0020_defconfig                         |   3 +-
 configs/igep0020_nand_defconfig                    |   3 +-
 configs/igep0030_defconfig                         |   1 +
 configs/igep0030_nand_defconfig                    |   1 +
 configs/igep0032_defconfig                         |   3 +-
 configs/inet1_defconfig                            |   1 +
 configs/inet97fv2_defconfig                        |   1 +
 configs/inet98v_rev2_defconfig                     |   1 +
 configs/inet9f_rev03_defconfig                     |   1 +
 configs/inetspace_v2_defconfig                     |   1 +
 configs/integratorap_cm720t_defconfig              |   1 +
 configs/integratorap_cm920t_defconfig              |   1 +
 configs/integratorap_cm926ejs_defconfig            |   1 +
 configs/integratorap_cm946es_defconfig             |   1 +
 configs/integratorcp_cm1136_defconfig              |   1 +
 configs/integratorcp_cm920t_defconfig              |   1 +
 configs/integratorcp_cm926ejs_defconfig            |   1 +
 configs/integratorcp_cm946es_defconfig             |   1 +
 configs/intip_defconfig                            |   3 +
 configs/io64_defconfig                             |   3 +
 configs/io_defconfig                               |   3 +
 configs/iocon_defconfig                            |   2 +
 configs/ipek01_defconfig                           |   2 +
 configs/jesurun_q5_defconfig                       |   1 +
 configs/jetson-tk1_defconfig                       |   1 +
 configs/k2e_evm_defconfig                          |   1 +
 configs/k2g_evm_defconfig                          |   1 +
 configs/k2hk_evm_defconfig                         |   1 +
 configs/k2l_evm_defconfig                          |   1 +
 configs/katmai_defconfig                           |   2 +
 configs/kilauea_defconfig                          |   2 +
 configs/km_kirkwood_128m16_defconfig               |   1 +
 configs/km_kirkwood_defconfig                      |   1 +
 configs/km_kirkwood_pci_defconfig                  |   1 +
 configs/kmcoge4_defconfig                          |   3 +
 configs/kmcoge5ne_defconfig                        |   2 +
 configs/kmcoge5un_defconfig                        |   1 +
 configs/kmeter1_defconfig                          |   2 +
 configs/kmlion1_defconfig                          |   3 +
 configs/kmnusa_defconfig                           |   1 +
 configs/kmopti2_defconfig                          |   2 +
 configs/kmsugp1_defconfig                          |   1 +
 configs/kmsupx5_defconfig                          |   2 +
 configs/kmsuv31_defconfig                          |   1 +
 configs/kmtegr1_defconfig                          |   2 +
 configs/kmtepr2_defconfig                          |   2 +
 configs/kmvect1_defconfig                          |   2 +
 configs/koelsch_defconfig                          |   1 +
 configs/kwb_defconfig                              |   1 +
 configs/kylin-rk3036_defconfig                     |  16 +-
 configs/kzm9g_defconfig                            |   1 +
 configs/lager_defconfig                            |   1 +
 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                  |   1 +
 configs/ls1021aqds_sdcard_defconfig                |   2 +
 configs/ls1021atwr_nor_SECURE_BOOT_defconfig       |   2 +
 configs/ls1021atwr_nor_defconfig                   |   1 +
 configs/ls1021atwr_nor_lpuart_defconfig            |   1 +
 configs/ls1021atwr_qspi_defconfig                  |   1 +
 configs/ls1021atwr_sdcard_ifc_defconfig            |   2 +
 configs/ls1021atwr_sdcard_qspi_defconfig           |   1 +
 configs/ls1043aqds_defconfig                       |   6 +-
 configs/ls1043aqds_nand_defconfig                  |   7 +-
 configs/ls1043aqds_nor_ddr3_defconfig              |   3 +
 configs/ls1043aqds_sdcard_ifc_defconfig            |   7 +-
 configs/ls1043ardb_SECURE_BOOT_defconfig           |   8 +-
 configs/ls1043ardb_defconfig                       |   8 +-
 configs/ls1043ardb_nand_defconfig                  |   8 +-
 configs/ls1043ardb_sdcard_defconfig                |   8 +-
 configs/ls2080a_emu_defconfig                      |   3 +
 configs/ls2080a_simu_defconfig                     |   3 +
 configs/ls2080aqds_defconfig                       |   2 +
 configs/ls2080aqds_nand_defconfig                  |   3 +
 configs/ls2080ardb_defconfig                       |   2 +
 configs/ls2080ardb_nand_defconfig                  |   3 +
 configs/ls2085a_emu_defconfig                      |   3 +
 configs/ls2085a_simu_defconfig                     |   3 +
 configs/ls2085aqds_defconfig                       |   2 +
 configs/ls2085aqds_nand_defconfig                  |   3 +
 configs/ls2085ardb_defconfig                       |   2 +
 configs/ls2085ardb_nand_defconfig                  |   3 +
 configs/lschlv2_defconfig                          |   1 +
 configs/lsxhl_defconfig                            |   1 +
 configs/luan_defconfig                             |   2 +
 configs/lwmon5_defconfig                           |   3 +
 configs/m28evk_defconfig                           |   2 +
 configs/m53evk_defconfig                           |   2 +
 configs/makalu_defconfig                           |   2 +
 configs/marsboard_defconfig                        |   1 +
 configs/mcx_defconfig                              |   2 +
 configs/mecp5123_defconfig                         |   2 +
 configs/medcom-wide_defconfig                      |   2 +
 configs/meesc_dataflash_defconfig                  |   2 +
 configs/meesc_defconfig                            |   2 +
 configs/mgcoge3ne_defconfig                        |   3 +
 configs/mgcoge3un_defconfig                        |   1 +
 configs/mgcoge_defconfig                           |   3 +
 configs/microblaze-generic_defconfig               |   1 +
 configs/minnowmax_defconfig                        |   5 +-
 configs/mixtile_loftq_defconfig                    |   1 +
 configs/mk802_a10s_defconfig                       |   1 +
 configs/mk802_defconfig                            |   1 +
 configs/mk802ii_defconfig                          |   1 +
 configs/motionpro_defconfig                        |   2 +
 configs/mpc5121ads_defconfig                       |   2 +
 configs/mpc5121ads_rev2_defconfig                  |   2 +
 configs/mpc8308_p1m_defconfig                      |   2 +
 configs/mt_ventoux_defconfig                       |   2 +
 configs/munices_defconfig                          |   2 +
 configs/mx23_olinuxino_defconfig                   |   1 +
 configs/mx23evk_defconfig                          |   1 +
 configs/mx25pdk_defconfig                          |   1 +
 configs/mx28evk_auart_console_defconfig            |   1 +
 configs/mx28evk_defconfig                          |   1 +
 configs/mx28evk_nand_defconfig                     |   1 +
 configs/mx28evk_spi_defconfig                      |   1 +
 configs/mx35pdk_defconfig                          |   1 +
 configs/mx51evk_defconfig                          |   1 +
 configs/mx53ard_defconfig                          |   1 +
 configs/mx53evk_defconfig                          |   1 +
 configs/mx53loco_defconfig                         |   1 +
 configs/mx53smd_defconfig                          |   1 +
 configs/mx6cuboxi_defconfig                        |   1 +
 configs/mx6dlarm2_defconfig                        |   1 +
 configs/mx6dlarm2_lpddr2_defconfig                 |   1 +
 configs/mx6dlsabreauto_defconfig                   |   1 +
 configs/mx6dlsabresd_defconfig                     |   1 +
 configs/mx6qarm2_defconfig                         |   1 +
 configs/mx6qarm2_lpddr2_defconfig                  |   1 +
 configs/mx6qpsabreauto_defconfig                   |   1 +
 configs/mx6qsabreauto_defconfig                    |   1 +
 configs/mx6qsabrelite_defconfig                    |   1 +
 configs/mx6qsabresd_defconfig                      |   1 +
 configs/mx6sabresd_spl_defconfig                   |   1 +
 configs/mx6slevk_defconfig                         |   1 +
 configs/mx6slevk_spinor_defconfig                  |   1 +
 configs/mx6slevk_spl_defconfig                     |   1 +
 configs/mx6sxsabresd_defconfig                     |   1 +
 configs/mx6sxsabresd_spl_defconfig                 |   1 +
 configs/mx6ul_14x14_evk_defconfig                  |   1 +
 configs/mx6ul_9x9_evk_defconfig                    |   1 +
 configs/mx7dsabresd_defconfig                      |   1 +
 configs/nas220_defconfig                           |   1 +
 configs/neo_defconfig                              |   3 +
 configs/net2big_v2_defconfig                       |   1 +
 configs/netspace_lite_v2_defconfig                 |   1 +
 configs/netspace_max_v2_defconfig                  |   1 +
 configs/netspace_mini_v2_defconfig                 |   1 +
 configs/netspace_v2_defconfig                      |   1 +
 configs/nitrogen6dl2g_defconfig                    |   1 +
 configs/nitrogen6dl_defconfig                      |   1 +
 configs/nitrogen6q2g_defconfig                     |   1 +
 configs/nitrogen6q_defconfig                       |   1 +
 configs/nitrogen6s1g_defconfig                     |   1 +
 configs/nitrogen6s_defconfig                       |   1 +
 configs/novena_defconfig                           |   2 +
 configs/nsa310s_defconfig                          |   9 +-
 configs/nyan-big_defconfig                         |   2 +
 configs/odroid-xu3_defconfig                       |   1 +
 configs/odroid_defconfig                           |   1 +
 configs/omap3_beagle_defconfig                     |   1 +
 configs/omap3_ha_defconfig                         |   1 +
 configs/omap3_logic_defconfig                      |   1 +
 configs/omap3_overo_defconfig                      |   1 +
 configs/omap3_pandora_defconfig                    |   1 +
 configs/omap3_zoom1_defconfig                      |   1 +
 configs/omap4_panda_defconfig                      |   1 +
 configs/omap4_sdp4430_defconfig                    |   1 +
 configs/omap5_uevm_defconfig                       |   1 +
 configs/omapl138_lcdk_defconfig                    |   1 +
 configs/openrd_base_defconfig                      |   1 +
 configs/openrd_client_defconfig                    |   1 +
 configs/openrd_ultimate_defconfig                  |   1 +
 configs/orangepi_pc_defconfig                      |   2 +-
 configs/ot1200_defconfig                           |   1 +
 configs/ot1200_spl_defconfig                       |   1 +
 configs/p2371-0000_defconfig                       |   1 +
 configs/p2371-2180_defconfig                       |   3 +-
 configs/p2571_defconfig                            |   1 +
 configs/paz00_defconfig                            |   1 +
 configs/pcm030_LOWBOOT_defconfig                   |   2 +
 configs/pcm030_defconfig                           |   2 +
 configs/pcm051_rev1_defconfig                      |   1 +
 configs/pcm051_rev3_defconfig                      |   1 +
 configs/pcm052_defconfig                           |   1 +
 configs/pdm360ng_defconfig                         |   3 +
 configs/peach-pi_defconfig                         |   1 +
 configs/peach-pit_defconfig                        |   1 +
 configs/pengwyn_defconfig                          |   1 +
 configs/pepper_defconfig                           |   1 +
 configs/picosam9g45_defconfig                      |   1 +
 configs/platinum_picon_defconfig                   |   1 +
 configs/platinum_titanium_defconfig                |   1 +
 configs/plutux_defconfig                           |   2 +
 configs/pogo_e02_defconfig                         |   1 +
 configs/porter_defconfig                           |   1 +
 configs/portl2_defconfig                           |   1 +
 configs/pov_protab2_ips9_defconfig                 |   1 +
 configs/pxm2_defconfig                             |   2 +
 configs/q8_a13_tablet_defconfig                    |   1 +
 configs/q8_a23_tablet_800x480_defconfig            |   1 +
 configs/q8_a33_tablet_1024x600_defconfig           |   1 +
 configs/q8_a33_tablet_800x480_defconfig            |   1 +
 configs/qemu-ppce500_defconfig                     |   3 +
 configs/qemu-x86_defconfig                         |   5 +-
 configs/r7-tv-dongle_defconfig                     |   1 +
 configs/rainier_defconfig                          |   2 +
 configs/rainier_ramboot_defconfig                  |   2 +
 configs/rastaban_defconfig                         |   1 +
 configs/redwood_defconfig                          |   2 +
 configs/riotboard_defconfig                        |   1 +
 configs/rock2_defconfig                            |   2 +-
 configs/rpi_2_defconfig                            |   2 +
 configs/rpi_defconfig                              |   2 +
 configs/rut_defconfig                              |   2 +
 configs/sama5d2_xplained_mmc_defconfig             |   1 +
 configs/sama5d2_xplained_spiflash_defconfig        |   1 +
 configs/sama5d3_xplained_mmc_defconfig             |   1 +
 configs/sama5d3_xplained_nandflash_defconfig       |   1 +
 configs/sama5d3xek_mmc_defconfig                   |   1 +
 configs/sama5d3xek_nandflash_defconfig             |   1 +
 configs/sama5d3xek_spiflash_defconfig              |   1 +
 configs/sama5d4_xplained_mmc_defconfig             |   1 +
 configs/sama5d4_xplained_nandflash_defconfig       |   1 +
 configs/sama5d4_xplained_spiflash_defconfig        |   1 +
 configs/sama5d4ek_mmc_defconfig                    |   1 +
 configs/sama5d4ek_nandflash_defconfig              |   1 +
 configs/sama5d4ek_spiflash_defconfig               |   1 +
 configs/sandbox_defconfig                          |   8 +-
 configs/sansa_fuze_plus_defconfig                  |   1 +
 configs/sbc8349_PCI_33_defconfig                   |   2 +
 configs/sbc8349_PCI_66_defconfig                   |   2 +
 configs/sbc8349_defconfig                          |   2 +
 configs/sbc8548_PCI_33_PCIE_defconfig              |   2 +
 configs/sbc8548_PCI_33_defconfig                   |   2 +
 configs/sbc8548_PCI_66_PCIE_defconfig              |   2 +
 configs/sbc8548_PCI_66_defconfig                   |   2 +
 configs/sbc8548_defconfig                          |   2 +
 configs/sbc8641d_defconfig                         |   2 +
 configs/sc_sps_1_defconfig                         |   1 +
 configs/seaboard_defconfig                         |   1 +
 configs/secomx6quq7_defconfig                      |   1 +
 configs/sequoia_defconfig                          |   2 +
 configs/sequoia_ramboot_defconfig                  |   2 +
 configs/sheevaplug_defconfig                       |   1 +
 configs/silk_defconfig                             |   1 +
 configs/smartweb_defconfig                         |   2 +
 configs/smdk5250_defconfig                         |   1 +
 configs/smdk5420_defconfig                         |   1 +
 configs/snapper9260_defconfig                      |   1 +
 configs/snapper9g20_defconfig                      |   1 +
 configs/sniper_defconfig                           |   1 +
 configs/snow_defconfig                             |   1 +
 configs/socfpga_arria5_defconfig                   |   8 +-
 configs/socfpga_cyclone5_defconfig                 |   8 +-
 configs/socfpga_de0_nano_soc_defconfig             |   4 +-
 configs/socfpga_mcvevk_defconfig                   |   4 +-
 configs/socfpga_sockit_defconfig                   |   6 +-
 configs/socfpga_socrates_defconfig                 |   6 +-
 configs/socfpga_sr1500_defconfig                   |  10 +-
 configs/socrates_defconfig                         |   3 +
 configs/spring_defconfig                           |   1 +
 configs/stm32f429-discovery_defconfig              |   1 +
 configs/stout_defconfig                            |   1 +
 configs/strider_con_defconfig                      |   3 +
 configs/strider_cpu_defconfig                      |   3 +
 configs/sunxi_Gemei_G9_defconfig                   |   1 +
 configs/suvd3_defconfig                            |   2 +
 configs/sycamore_defconfig                         |   2 +
 configs/t3corp_defconfig                           |   3 +
 configs/tao3530_defconfig                          |   1 +
 configs/taurus_defconfig                           |   1 +
 configs/tbs2910_defconfig                          |   2 +
 configs/tec-ng_defconfig                           |   2 +
 configs/tec_defconfig                              |   2 +
 configs/thuban_defconfig                           |   1 +
 configs/ti814x_evm_defconfig                       |   1 +
 configs/ti816x_evm_defconfig                       |   1 +
 configs/titanium_defconfig                         |   1 +
 configs/tqma6q_mba6_mmc_defconfig                  |   3 +
 configs/tqma6q_mba6_spi_defconfig                  |   3 +
 configs/tqma6s_mba6_mmc_defconfig                  |   3 +
 configs/tqma6s_mba6_spi_defconfig                  |   3 +
 configs/tqma6s_wru4_mmc_defconfig                  |   3 +
 configs/trats2_defconfig                           |   1 +
 configs/trats_defconfig                            |   1 +
 configs/tricorder_defconfig                        |   1 +
 configs/tricorder_flash_defconfig                  |   1 +
 configs/trimslice_defconfig                        |   1 +
 configs/ts4800_defconfig                           |   1 +
 configs/tseries_mmc_defconfig                      |   2 +
 configs/tseries_nand_defconfig                     |   2 +
 configs/tseries_spi_defconfig                      |   2 +
 configs/tuge1_defconfig                            |   2 +
 configs/tuxx1_defconfig                            |   2 +
 configs/twister_defconfig                          |   2 +
 configs/udoo_defconfig                             |   1 +
 configs/uniphier_ld4_sld8_defconfig                |   1 -
 configs/uniphier_pro4_defconfig                    |   1 -
 configs/uniphier_pro5_defconfig                    |   1 -
 configs/uniphier_pxs2_ld6b_defconfig               |   1 -
 configs/usb_a9263_dataflash_defconfig              |   1 +
 configs/usbarmory_defconfig                        |   1 +
 configs/ve8313_defconfig                           |   2 +
 configs/venice2_defconfig                          |   1 +
 configs/ventana_defconfig                          |   1 +
 configs/vexpress_aemv8a_dram_defconfig             |   1 +
 configs/vexpress_aemv8a_juno_defconfig             |   1 +
 configs/vexpress_aemv8a_semi_defconfig             |   1 +
 configs/vexpress_ca15_tc2_defconfig                |   1 +
 configs/vexpress_ca5x2_defconfig                   |   1 +
 configs/vexpress_ca9x4_defconfig                   |   1 +
 configs/vf610twr_defconfig                         |   1 +
 configs/vf610twr_nand_defconfig                    |   1 +
 configs/vme8349_defconfig                          |   2 +
 configs/walnut_defconfig                           |   2 +
 configs/wandboard_defconfig                        |   1 +
 configs/warp_defconfig                             |   1 +
 configs/whistler_defconfig                         |   1 +
 configs/wtk_defconfig                              |   2 +
 configs/x600_defconfig                             |   1 +
 configs/xfi3_defconfig                             |   1 +
 configs/xpedite1000_defconfig                      |   1 +
 configs/xpedite517x_defconfig                      |   3 +
 configs/xpedite520x_defconfig                      |   3 +
 configs/xpedite537x_defconfig                      |   3 +
 configs/xpedite550x_defconfig                      |   3 +
 configs/yellowstone_defconfig                      |   2 +
 configs/yosemite_defconfig                         |   2 +
 configs/yucca_defconfig                            |   2 +
 configs/zynq_zybo_defconfig                        |   4 +-
 doc/mkimage.1                                      |  46 +-
 doc/uImage.FIT/source_file_format.txt              |  20 +-
 dts/Kconfig                                        |  11 +
 include/common.h                                   |   4 +-
 include/config_distro_defaults.h                   |   2 -
 include/configs/10m50_devboard.h                   |   2 -
 include/configs/3c120_devboard.h                   |   2 -
 include/configs/B4860QDS.h                         |   3 -
 include/configs/BSC9131RDB.h                       |   3 -
 include/configs/BSC9132QDS.h                       |   3 -
 include/configs/C29XPCIE.h                         |   3 -
 include/configs/CPCI4052.h                         |   2 -
 include/configs/MPC8308RDB.h                       |   3 -
 include/configs/MPC8313ERDB.h                      |   2 -
 include/configs/MPC8315ERDB.h                      |   2 -
 include/configs/MPC8323ERDB.h                      |   2 -
 include/configs/MPC832XEMDS.h                      |   2 -
 include/configs/MPC8349EMDS.h                      |   2 -
 include/configs/MPC8349ITX.h                       |   2 -
 include/configs/MPC837XEMDS.h                      |   2 -
 include/configs/MPC837XERDB.h                      |   2 -
 include/configs/MPC8536DS.h                        |   2 -
 include/configs/MPC8540ADS.h                       |   2 -
 include/configs/MPC8541CDS.h                       |   2 -
 include/configs/MPC8544DS.h                        |   2 -
 include/configs/MPC8548CDS.h                       |   2 -
 include/configs/MPC8555CDS.h                       |   2 -
 include/configs/MPC8560ADS.h                       |   2 -
 include/configs/MPC8568MDS.h                       |   2 -
 include/configs/MPC8569MDS.h                       |   2 -
 include/configs/MPC8572DS.h                        |   3 -
 include/configs/MPC8610HPCD.h                      |   2 -
 include/configs/MPC8641HPCN.h                      |   2 -
 include/configs/P1010RDB.h                         |   3 -
 include/configs/P1022DS.h                          |   3 -
 include/configs/P1023RDB.h                         |   3 -
 include/configs/P2041RDB.h                         |   3 -
 include/configs/PLU405.h                           |   2 -
 include/configs/PMC405DE.h                         |   2 -
 include/configs/PMC440.h                           |   2 -
 include/configs/T102xQDS.h                         |   3 -
 include/configs/T102xRDB.h                         |   3 -
 include/configs/T1040QDS.h                         |   3 -
 include/configs/T104xRDB.h                         |   3 -
 include/configs/T208xQDS.h                         |   3 -
 include/configs/T208xRDB.h                         |   3 -
 include/configs/T4240RDB.h                         |   3 -
 include/configs/TQM5200.h                          |   2 -
 include/configs/TQM823L.h                          |   2 -
 include/configs/TQM823M.h                          |   2 -
 include/configs/TQM834x.h                          |   2 -
 include/configs/TQM850L.h                          |   2 -
 include/configs/TQM850M.h                          |   2 -
 include/configs/TQM855L.h                          |   2 -
 include/configs/TQM855M.h                          |   2 -
 include/configs/TQM860L.h                          |   2 -
 include/configs/TQM860M.h                          |   2 -
 include/configs/TQM862L.h                          |   2 -
 include/configs/TQM862M.h                          |   2 -
 include/configs/TQM866M.h                          |   2 -
 include/configs/TQM885D.h                          |   2 -
 include/configs/UCP1020.h                          |   3 -
 include/configs/VOM405.h                           |   2 -
 include/configs/a3m071.h                           |   3 -
 include/configs/a4m072.h                           |   2 -
 include/configs/ac14xx.h                           |   3 -
 include/configs/am335x_evm.h                       |   1 -
 include/configs/am335x_sl50.h                      |   1 -
 include/configs/am3517_evm.h                       |   2 -
 include/configs/amcc-common.h                      |   2 -
 include/configs/apf27.h                            |   2 -
 include/configs/arcangel4.h                        |   3 -
 include/configs/aria.h                             |   2 -
 include/configs/aristainetos-common.h              |   1 -
 include/configs/armadillo-800eva.h                 |   1 -
 include/configs/at91-sama5_common.h                |   2 -
 include/configs/at91rm9200ek.h                     |   1 -
 include/configs/at91sam9260ek.h                    |   2 -
 include/configs/at91sam9261ek.h                    |   3 -
 include/configs/at91sam9263ek.h                    |   2 -
 include/configs/at91sam9m10g45ek.h                 |   2 -
 include/configs/at91sam9n12ek.h                    |   2 -
 include/configs/at91sam9rlek.h                     |   2 -
 include/configs/at91sam9x5ek.h                     |   2 -
 include/configs/axs101.h                           |   2 -
 include/configs/baltos.h                           |   1 -
 include/configs/bav335x.h                          |   1 -
 include/configs/bcm_ep_board.h                     |   3 -
 include/configs/cm5200.h                           |   2 -
 include/configs/cm_fx6.h                           |   1 -
 include/configs/cm_t35.h                           |   2 -
 include/configs/cm_t3517.h                         |   1 -
 include/configs/cm_t54.h                           |   2 -
 include/configs/colibri_pxa270.h                   |   1 -
 include/configs/colibri_vf.h                       |   1 -
 include/configs/controlcenterd.h                   |   3 -
 include/configs/corenet_ds.h                       |   3 -
 include/configs/corvus.h                           |   1 -
 include/configs/cyrus.h                            |   3 -
 include/configs/da850evm.h                         |   1 -
 include/configs/devkit3250.h                       |   1 -
 include/configs/digsy_mtc.h                        |   2 -
 include/configs/dlvision-10g.h                     |   1 -
 include/configs/dlvision.h                         |   1 -
 include/configs/dns325.h                           |   5 -
 include/configs/exynos5-common.h                   |   1 -
 include/configs/flea3.h                            |   1 -
 include/configs/gw_ventana.h                       |   2 -
 include/configs/h2200.h                            |   1 -
 include/configs/highbank.h                         |   2 -
 include/configs/hikey.h                            |   3 -
 include/configs/hrcon.h                            |   3 -
 include/configs/ids8313.h                          |   2 -
 include/configs/integrator-common.h                |   1 -
 include/configs/intip.h                            |   1 -
 include/configs/io.h                               |   1 -
 include/configs/io64.h                             |   1 -
 include/configs/ipek01.h                           |   2 -
 include/configs/jupiter.h                          |   2 -
 include/configs/km/km-powerpc.h                    |   2 -
 include/configs/km/km_arm.h                        |   3 -
 include/configs/km/kmp204x-common.h                |   3 -
 include/configs/km82xx.h                           |   1 -
 include/configs/kwb.h                              |   1 -
 include/configs/kzm9g.h                            |   1 -
 include/configs/lacie_kw.h                         |   5 -
 include/configs/ls1021aqds.h                       |   2 -
 include/configs/ls1021atwr.h                       |   2 -
 include/configs/ls1043a_common.h                   |   3 -
 include/configs/ls1043aqds.h                       |   2 -
 include/configs/ls2080a_common.h                   |   3 -
 include/configs/lsxl.h                             |   1 -
 include/configs/lwmon5.h                           |   3 -
 include/configs/m28evk.h                           |   1 -
 include/configs/m53evk.h                           |   2 -
 include/configs/manroland/common.h                 |   2 -
 include/configs/mcx.h                              |   2 -
 include/configs/mecp5123.h                         |   2 -
 include/configs/medcom-wide.h                      |   1 -
 include/configs/meesc.h                            |   2 -
 include/configs/microblaze-generic.h               |   2 -
 include/configs/motionpro.h                        |   2 -
 include/configs/mpc5121ads.h                       |   2 -
 include/configs/mpc8308_p1m.h                      |   2 -
 include/configs/munices.h                          |   2 -
 include/configs/mv-common.h                        |   2 -
 include/configs/mv-plug-common.h                   |   5 -
 include/configs/mx25pdk.h                          |   1 -
 include/configs/mx31ads.h                          |   2 -
 include/configs/mx35pdk.h                          |   1 -
 include/configs/mx51evk.h                          |   2 -
 include/configs/mx53ard.h                          |   1 -
 include/configs/mx53evk.h                          |   2 -
 include/configs/mx53loco.h                         |   2 -
 include/configs/mx53smd.h                          |   2 -
 include/configs/mx6_common.h                       |   1 -
 include/configs/mx6ul_14x14_evk.h                  |   1 -
 include/configs/mx7_common.h                       |   1 -
 include/configs/mxs.h                              |   3 -
 include/configs/nas220.h                           |   6 -
 include/configs/neo.h                              |   1 -
 include/configs/novena.h                           |   1 -
 include/configs/nyan-big.h                         |   2 -
 include/configs/o2dnt-common.h                     |   2 -
 include/configs/odroid.h                           |   1 -
 include/configs/omapl138_lcdk.h                    |   1 -
 include/configs/openrisc-generic.h                 |   1 -
 include/configs/p1_p2_rdb_pc.h                     |   3 -
 include/configs/p1_twr.h                           |   3 -
 include/configs/pcm030.h                           |   2 -
 include/configs/pcm052.h                           |   1 -
 include/configs/pdm360ng.h                         |   3 -
 include/configs/picosam9g45.h                      |   2 -
 include/configs/plutux.h                           |   1 -
 include/configs/pxm2.h                             |   1 -
 include/configs/qemu-ppce500.h                     |   3 -
 include/configs/rcar-gen2-common.h                 |   1 -
 include/configs/rk3288_common.h                    |   1 -
 include/configs/rpi-common.h                       |   1 -
 include/configs/rut.h                              |   1 -
 include/configs/s5p_goni.h                         |   3 -
 include/configs/sandbox.h                          |   1 -
 include/configs/sbc8349.h                          |   2 -
 include/configs/sbc8548.h                          |   2 -
 include/configs/sbc8641d.h                         |   2 -
 include/configs/siemens-am33x-common.h             |   1 -
 include/configs/smartweb.h                         |   2 -
 include/configs/smdkc100.h                         |   3 -
 include/configs/snapper9260.h                      |   1 -
 include/configs/socfpga_common.h                   |   2 -
 include/configs/socrates.h                         |   4 -
 include/configs/stm32f429-discovery.h              |   2 -
 include/configs/strider.h                          |   3 -
 include/configs/stv0991.h                          |   2 -
 include/configs/sunxi-common.h                     |   2 +-
 include/configs/t3corp.h                           |   1 -
 include/configs/t4qds.h                            |   3 -
 include/configs/tam3517-common.h                   |   2 -
 include/configs/tao3530.h                          |   2 -
 include/configs/taurus.h                           |   1 -
 include/configs/tb100.h                            |   2 -
 include/configs/tbs2910.h                          |   1 -
 include/configs/tec-ng.h                           |   1 -
 include/configs/tec.h                              |   1 -
 include/configs/tegra-common.h                     |   1 -
 include/configs/thunderx_88xx.h                    |   3 -
 include/configs/ti814x_evm.h                       |   1 -
 include/configs/ti816x_evm.h                       |   1 -
 include/configs/ti_armv7_common.h                  |   1 -
 include/configs/ti_armv7_keystone2.h               |   1 -
 include/configs/tqma6.h                            |   3 -
 include/configs/trats.h                            |   1 -
 include/configs/trats2.h                           |   1 -
 include/configs/tricorder.h                        |   2 -
 include/configs/ts4800.h                           |   2 -
 include/configs/tseries.h                          |   2 -
 include/configs/uniphier.h                         |   3 -
 include/configs/usb_a9263.h                        |   1 -
 include/configs/usbarmory.h                        |   1 -
 include/configs/ve8313.h                           |   2 -
 include/configs/vexpress_aemv8a.h                  |   3 -
 include/configs/vf610twr.h                         |   1 -
 include/configs/vme8349.h                          |   2 -
 include/configs/x600.h                             |   1 -
 include/configs/x86-common.h                       |   2 -
 include/configs/xilinx_zynqmp.h                    |   1 -
 include/configs/xpedite1000.h                      |   1 -
 include/configs/xpedite517x.h                      |   3 -
 include/configs/xpedite520x.h                      |   3 -
 include/configs/xpedite537x.h                      |   3 -
 include/configs/xpedite550x.h                      |   3 -
 include/configs/zynq-common.h                      |   3 -
 include/image.h                                    |  58 ++-
 include/libfdt.h                                   |  16 +
 include/spl.h                                      |  18 +
 lib/Kconfig                                        |  20 +
 lib/Makefile                                       |   4 +-
 lib/libfdt/fdt_sw.c                                |  16 +-
 tools/Makefile                                     |   2 +-
 tools/fit_image.c                                  | 502 ++++++++++++++++++++-
 tools/imagetool.c                                  |  22 +
 tools/imagetool.h                                  |  24 +
 tools/mkimage.c                                    | 405 +++++++++--------
 1112 files changed, 3000 insertions(+), 831 deletions(-)
 create mode 100644 common/spl/spl_fit.c

-- 
2.7.0.rc3.207.g0ac5344

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

* [PATCH 00/26] spl: Support loading a FIT image containing U-Boot
@ 2016-01-28 16:39 ` Simon Glass
  0 siblings, 0 replies; 54+ messages in thread
From: Simon Glass @ 2016-01-28 16:39 UTC (permalink / raw)
  To: U-Boot Mailing List
  Cc: Hans de Goede, Tom Rini, Simon Glass, Masahiro Yamada,
	Devicetree Compiler, Marek Vasut, Jerry Van Baren,
	Joe Hershberger, Ian Campbell

We need a way to support more than one board per binary in U-Boot with
device tree. Various methods have been discussed. The one that seems to make
the most sense is to adjust SPL so that it can load a FIT which contains
U-Boot and several device tree binaries. This is how things with with Linux:
load a FIT and select the correct device tree to pass to Linux.

This series:

- Adjusts the build system to optionally build a u-boot.img in FIT format
that includes the U-Boot binary and >1 device tree files
- Adjusts SPL to support loading this
- Adds a way for SPL to determine which device tree to select (by calling a
board-specific function)
- Adjusts SPL to pass this selected device tree to U-Boot when it starts

It would be painful to require an .its file for each board just to support
this feature. In any case various people have commented that it would be
nice not to have to write this file in general. Therefore, this series
enhances mkimage to automatically generate a FIT without a .its file. So far
it understands how to add a main image and a number of device tree files. It
does not support hashing or verified boot as yet.

One problem with the FIT format as it stands is that all the data is inline.
This means that the entire file must be read in order to figure out what
device-tree files are available. It is then possible to copy the images into
place.

This is not really suitable for SPL since copying can be slow, and reading
unnecessary data would make the FIT format less efficient than the legacy
format.

Therefore this series adds a new feature to FIT which allows the images to
be stored immediately after the FIT itself ends. This makes the FIT very
small. It can be read quickly and in its entirety. Then the images can be
loaded one by one as needed. This allows SPL to support FITs containing lots
of images very efficiently.

To achieve this, mkimage is enhanced to convert between the 'normal' and
'external' version of a FIT file. The latter is only used for the SPL loader.
The main difference is that viewing an 'external' FIT will not show the
contents of each image.

This series also includes a few other tidy-ups, such as moving mkimage's
tricky argument-processing code to use getopt().

NOTE: There are a few problems remaining with the Kconfig conversion. I'm
still fiddling with this but thought it best to send this series out for
comment in the meantime.

This series is available at u-boot-fdt/spl-working.


Simon Glass (26):
  mkimage: Move argument processing into its own function
  mkimage: Convert to use getopt()
  mkimage: Sort the option processing code by option
  mkimage: Move usage() up to the top
  mkimage: Show an error message when usage() is called
  mkimage: Make 'params' static
  libfdt: Add a function to write a property placeholder
  Correct defconfig ordering
  Move CONFIG_OF_LIBFDT to Kconfig
  Kconfig: Move CONFIG_FIT and CONFIG_OF_*_SETUP to Kconfig
  fdt: Adjust DEFAULT_DEVICE_TREE to device on OF_CONTROL
  fdt: Allow libfdt to be used in SPL
  sunxi: Display the board model on start-up
  tools: Include fdt_sw.o in libfdt for mkimage
  mkimage: Allow a FIT to include an image of any type
  tools: Add a function to obtain the size of a file
  image: Add functions to obtain short names
  mkimage: Support automatic creating of a FIT without a .its
  mkimage: Support adding device tree files to a FIT
  mkimage: Support placing data outside the FIT
  mkimage: Bring data into the FIT before processing
  spl: Add a way for boards to select which device tree to load
  spl: Add an option to load a FIT containing U-Boot
  spl: Add a way to specify a list of device trees to include
  spl: Support loading a FIT from MMC
  RFC: sunxi: Enable SPL FIT support

 Kconfig                                            |  11 +
 Makefile                                           |  10 +-
 arch/arm/cpu/armv7/sunxi/board.c                   |   5 +
 cmd/disk.c                                         |   6 +-
 common/Kconfig                                     |  28 ++
 common/Makefile                                    |   6 +-
 common/bootm.c                                     |  14 +-
 common/image-fdt.c                                 |   8 +-
 common/image-fit.c                                 |   3 +-
 common/image.c                                     |  50 +-
 common/spl/Makefile                                |   1 +
 common/spl/spl_fit.c                               | 192 ++++++++
 common/spl/spl_mmc.c                               |  75 ++-
 configs/10m50_defconfig                            |   1 +
 configs/3c120_defconfig                            |   1 +
 configs/A10-OLinuXino-Lime_defconfig               |   1 +
 configs/A10s-OLinuXino-M_defconfig                 |   1 +
 configs/A13-OLinuXinoM_defconfig                   |   1 +
 configs/A13-OLinuXino_defconfig                    |   1 +
 configs/A20-OLinuXino-Lime2_defconfig              |   1 +
 configs/A20-OLinuXino-Lime_defconfig               |   1 +
 configs/A20-OLinuXino_MICRO_defconfig              |   1 +
 configs/A20-Olimex-SOM-EVB_defconfig               |   1 +
 configs/Ainol_AW1_defconfig                        |   1 +
 configs/Ampe_A76_defconfig                         |   1 +
 configs/Auxtek-T003_defconfig                      |   1 +
 configs/Auxtek-T004_defconfig                      |   1 +
 configs/B4420QDS_NAND_defconfig                    |   3 +
 configs/B4420QDS_SPIFLASH_defconfig                |   3 +
 configs/B4420QDS_defconfig                         |   3 +
 configs/B4860QDS_NAND_defconfig                    |   3 +
 configs/B4860QDS_SECURE_BOOT_defconfig             |   3 +
 configs/B4860QDS_SPIFLASH_defconfig                |   3 +
 configs/B4860QDS_SRIO_PCIE_BOOT_defconfig          |   3 +
 configs/B4860QDS_defconfig                         |   3 +
 configs/BSC9131RDB_NAND_SYSCLK100_defconfig        |   3 +
 configs/BSC9131RDB_NAND_defconfig                  |   3 +
 configs/BSC9131RDB_SPIFLASH_SYSCLK100_defconfig    |   3 +
 configs/BSC9131RDB_SPIFLASH_defconfig              |   3 +
 configs/BSC9132QDS_NAND_DDRCLK100_SECURE_defconfig |   3 +
 configs/BSC9132QDS_NAND_DDRCLK100_defconfig        |   3 +
 configs/BSC9132QDS_NAND_DDRCLK133_SECURE_defconfig |   3 +
 configs/BSC9132QDS_NAND_DDRCLK133_defconfig        |   3 +
 configs/BSC9132QDS_NOR_DDRCLK100_SECURE_defconfig  |   3 +
 configs/BSC9132QDS_NOR_DDRCLK100_defconfig         |   3 +
 configs/BSC9132QDS_NOR_DDRCLK133_SECURE_defconfig  |   3 +
 configs/BSC9132QDS_NOR_DDRCLK133_defconfig         |   3 +
 .../BSC9132QDS_SDCARD_DDRCLK100_SECURE_defconfig   |   3 +
 configs/BSC9132QDS_SDCARD_DDRCLK100_defconfig      |   3 +
 .../BSC9132QDS_SDCARD_DDRCLK133_SECURE_defconfig   |   3 +
 configs/BSC9132QDS_SDCARD_DDRCLK133_defconfig      |   3 +
 .../BSC9132QDS_SPIFLASH_DDRCLK100_SECURE_defconfig |   3 +
 configs/BSC9132QDS_SPIFLASH_DDRCLK100_defconfig    |   3 +
 .../BSC9132QDS_SPIFLASH_DDRCLK133_SECURE_defconfig |   3 +
 configs/BSC9132QDS_SPIFLASH_DDRCLK133_defconfig    |   3 +
 configs/Bananapi_defconfig                         |   1 +
 configs/Bananapro_defconfig                        |   1 +
 configs/C29XPCIE_NAND_defconfig                    |   3 +
 configs/C29XPCIE_NOR_SECBOOT_defconfig             |   3 +
 configs/C29XPCIE_SPIFLASH_SECBOOT_defconfig        |   3 +
 configs/C29XPCIE_SPIFLASH_defconfig                |   3 +
 configs/C29XPCIE_defconfig                         |   3 +
 configs/CHIP_defconfig                             |   1 +
 configs/CPCI4052_defconfig                         |   2 +
 configs/CSQ_CS908_defconfig                        |   1 +
 configs/Chuwi_V7_CW0825_defconfig                  |   1 +
 configs/Colombus_defconfig                         |   1 +
 configs/Cubieboard2_defconfig                      |   1 +
 configs/Cubieboard_defconfig                       |   1 +
 configs/Cubietruck_defconfig                       |   1 +
 configs/Cyrus_P5020_defconfig                      |   3 +
 configs/Cyrus_P5040_defconfig                      |   3 +
 configs/Empire_electronix_d709_defconfig           |   1 +
 configs/Hummingbird_A31_defconfig                  |   1 +
 configs/Hyundai_A7HD_defconfig                     |   1 +
 configs/Lamobo_R1_defconfig                        |   1 +
 configs/Linksprite_pcDuino3_Nano_defconfig         |   1 +
 configs/Linksprite_pcDuino3_defconfig              |   4 +
 configs/Linksprite_pcDuino_defconfig               |   1 +
 configs/MK808C_defconfig                           |   1 +
 configs/MPC8308RDB_defconfig                       |   3 +
 configs/MPC8313ERDB_33_defconfig                   |   2 +
 configs/MPC8313ERDB_66_defconfig                   |   2 +
 configs/MPC8313ERDB_NAND_33_defconfig              |   2 +
 configs/MPC8313ERDB_NAND_66_defconfig              |   2 +
 configs/MPC8315ERDB_defconfig                      |   2 +
 configs/MPC8323ERDB_defconfig                      |   2 +
 configs/MPC832XEMDS_ATM_defconfig                  |   2 +
 configs/MPC832XEMDS_HOST_33_defconfig              |   2 +
 configs/MPC832XEMDS_HOST_66_defconfig              |   2 +
 configs/MPC832XEMDS_SLAVE_defconfig                |   2 +
 configs/MPC832XEMDS_defconfig                      |   2 +
 configs/MPC8349EMDS_defconfig                      |   2 +
 configs/MPC8349ITXGP_defconfig                     |   2 +
 configs/MPC8349ITX_LOWBOOT_defconfig               |   2 +
 configs/MPC8349ITX_defconfig                       |   2 +
 configs/MPC837XEMDS_HOST_defconfig                 |   2 +
 configs/MPC837XEMDS_defconfig                      |   2 +
 configs/MPC837XERDB_defconfig                      |   2 +
 configs/MPC8536DS_36BIT_defconfig                  |   2 +
 configs/MPC8536DS_SDCARD_defconfig                 |   2 +
 configs/MPC8536DS_SPIFLASH_defconfig               |   2 +
 configs/MPC8536DS_defconfig                        |   2 +
 configs/MPC8540ADS_defconfig                       |   2 +
 configs/MPC8541CDS_defconfig                       |   2 +
 configs/MPC8541CDS_legacy_defconfig                |   2 +
 configs/MPC8544DS_defconfig                        |   2 +
 configs/MPC8548CDS_36BIT_defconfig                 |   2 +
 configs/MPC8548CDS_defconfig                       |   2 +
 configs/MPC8548CDS_legacy_defconfig                |   2 +
 configs/MPC8555CDS_defconfig                       |   2 +
 configs/MPC8555CDS_legacy_defconfig                |   2 +
 configs/MPC8560ADS_defconfig                       |   2 +
 configs/MPC8568MDS_defconfig                       |   2 +
 configs/MPC8569MDS_ATM_defconfig                   |   2 +
 configs/MPC8569MDS_defconfig                       |   2 +
 configs/MPC8572DS_36BIT_defconfig                  |   3 +
 configs/MPC8572DS_defconfig                        |   3 +
 configs/MPC8610HPCD_defconfig                      |   2 +
 configs/MPC8641HPCN_36BIT_defconfig                |   2 +
 configs/MPC8641HPCN_defconfig                      |   2 +
 configs/MSI_Primo73_defconfig                      |   1 +
 configs/MSI_Primo81_defconfig                      |   1 +
 configs/Marsboard_A10_defconfig                    |   1 +
 configs/Mele_A1000G_quad_defconfig                 |   1 +
 configs/Mele_A1000_defconfig                       |   1 +
 configs/Mele_I7_defconfig                          |   1 +
 configs/Mele_M3_defconfig                          |   1 +
 configs/Mele_M5_defconfig                          |   1 +
 configs/Mele_M9_defconfig                          |   1 +
 configs/Mini-X_defconfig                           |   1 +
 configs/MiniFAP_defconfig                          |   2 +
 configs/O2D300_defconfig                           |   2 +
 configs/O2DNT2_RAMBOOT_defconfig                   |   2 +
 configs/O2DNT2_defconfig                           |   2 +
 configs/O2D_defconfig                              |   2 +
 configs/O2I_defconfig                              |   2 +
 configs/O2MNT_O2M110_defconfig                     |   2 +
 configs/O2MNT_O2M112_defconfig                     |   2 +
 configs/O2MNT_O2M113_defconfig                     |   2 +
 configs/O2MNT_defconfig                            |   2 +
 configs/O3DNT_defconfig                            |   2 +
 configs/Orangepi_defconfig                         |   1 +
 configs/Orangepi_mini_defconfig                    |   1 +
 configs/P1010RDB-PA_36BIT_NAND_SECBOOT_defconfig   |   3 +
 configs/P1010RDB-PA_36BIT_NAND_defconfig           |   3 +
 configs/P1010RDB-PA_36BIT_NOR_SECBOOT_defconfig    |   3 +
 configs/P1010RDB-PA_36BIT_NOR_defconfig            |   3 +
 configs/P1010RDB-PA_36BIT_SDCARD_defconfig         |   3 +
 .../P1010RDB-PA_36BIT_SPIFLASH_SECBOOT_defconfig   |   3 +
 configs/P1010RDB-PA_36BIT_SPIFLASH_defconfig       |   3 +
 configs/P1010RDB-PA_NAND_SECBOOT_defconfig         |   3 +
 configs/P1010RDB-PA_NAND_defconfig                 |   3 +
 configs/P1010RDB-PA_NOR_SECBOOT_defconfig          |   3 +
 configs/P1010RDB-PA_NOR_defconfig                  |   3 +
 configs/P1010RDB-PA_SDCARD_defconfig               |   3 +
 configs/P1010RDB-PA_SPIFLASH_SECBOOT_defconfig     |   3 +
 configs/P1010RDB-PA_SPIFLASH_defconfig             |   3 +
 configs/P1010RDB-PB_36BIT_NAND_SECBOOT_defconfig   |   3 +
 configs/P1010RDB-PB_36BIT_NAND_defconfig           |   3 +
 configs/P1010RDB-PB_36BIT_NOR_SECBOOT_defconfig    |   3 +
 configs/P1010RDB-PB_36BIT_NOR_defconfig            |   3 +
 configs/P1010RDB-PB_36BIT_SDCARD_defconfig         |   3 +
 .../P1010RDB-PB_36BIT_SPIFLASH_SECBOOT_defconfig   |   3 +
 configs/P1010RDB-PB_36BIT_SPIFLASH_defconfig       |   3 +
 configs/P1010RDB-PB_NAND_SECBOOT_defconfig         |   3 +
 configs/P1010RDB-PB_NAND_defconfig                 |   3 +
 configs/P1010RDB-PB_NOR_SECBOOT_defconfig          |   3 +
 configs/P1010RDB-PB_NOR_defconfig                  |   3 +
 configs/P1010RDB-PB_SDCARD_defconfig               |   3 +
 configs/P1010RDB-PB_SPIFLASH_SECBOOT_defconfig     |   3 +
 configs/P1010RDB-PB_SPIFLASH_defconfig             |   3 +
 configs/P1020MBG-PC_36BIT_SDCARD_defconfig         |   3 +
 configs/P1020MBG-PC_36BIT_defconfig                |   3 +
 configs/P1020MBG-PC_SDCARD_defconfig               |   3 +
 configs/P1020MBG-PC_defconfig                      |   3 +
 configs/P1020RDB-PC_36BIT_NAND_defconfig           |   3 +
 configs/P1020RDB-PC_36BIT_SDCARD_defconfig         |   3 +
 configs/P1020RDB-PC_36BIT_SPIFLASH_defconfig       |   3 +
 configs/P1020RDB-PC_36BIT_defconfig                |   3 +
 configs/P1020RDB-PC_NAND_defconfig                 |   3 +
 configs/P1020RDB-PC_SDCARD_defconfig               |   3 +
 configs/P1020RDB-PC_SPIFLASH_defconfig             |   3 +
 configs/P1020RDB-PC_defconfig                      |   3 +
 configs/P1020RDB-PD_NAND_defconfig                 |   3 +
 configs/P1020RDB-PD_SDCARD_defconfig               |   3 +
 configs/P1020RDB-PD_SPIFLASH_defconfig             |   3 +
 configs/P1020RDB-PD_defconfig                      |   3 +
 configs/P1020UTM-PC_36BIT_SDCARD_defconfig         |   3 +
 configs/P1020UTM-PC_36BIT_defconfig                |   3 +
 configs/P1020UTM-PC_SDCARD_defconfig               |   3 +
 configs/P1020UTM-PC_defconfig                      |   3 +
 configs/P1021RDB-PC_36BIT_NAND_defconfig           |   3 +
 configs/P1021RDB-PC_36BIT_SDCARD_defconfig         |   3 +
 configs/P1021RDB-PC_36BIT_SPIFLASH_defconfig       |   3 +
 configs/P1021RDB-PC_36BIT_defconfig                |   3 +
 configs/P1021RDB-PC_NAND_defconfig                 |   3 +
 configs/P1021RDB-PC_SDCARD_defconfig               |   3 +
 configs/P1021RDB-PC_SPIFLASH_defconfig             |   3 +
 configs/P1021RDB-PC_defconfig                      |   3 +
 configs/P1022DS_36BIT_NAND_defconfig               |   3 +
 configs/P1022DS_36BIT_SDCARD_defconfig             |   3 +
 configs/P1022DS_36BIT_SPIFLASH_defconfig           |   3 +
 configs/P1022DS_36BIT_defconfig                    |   3 +
 configs/P1022DS_NAND_defconfig                     |   3 +
 configs/P1022DS_SDCARD_defconfig                   |   3 +
 configs/P1022DS_SPIFLASH_defconfig                 |   3 +
 configs/P1022DS_defconfig                          |   3 +
 configs/P1023RDB_defconfig                         |   3 +
 configs/P1024RDB_36BIT_defconfig                   |   3 +
 configs/P1024RDB_NAND_defconfig                    |   3 +
 configs/P1024RDB_SDCARD_defconfig                  |   3 +
 configs/P1024RDB_SPIFLASH_defconfig                |   3 +
 configs/P1024RDB_defconfig                         |   3 +
 configs/P1025RDB_36BIT_defconfig                   |   3 +
 configs/P1025RDB_NAND_defconfig                    |   3 +
 configs/P1025RDB_SDCARD_defconfig                  |   3 +
 configs/P1025RDB_SPIFLASH_defconfig                |   3 +
 configs/P1025RDB_defconfig                         |   3 +
 configs/P2020RDB-PC_36BIT_NAND_defconfig           |   3 +
 configs/P2020RDB-PC_36BIT_SDCARD_defconfig         |   3 +
 configs/P2020RDB-PC_36BIT_SPIFLASH_defconfig       |   3 +
 configs/P2020RDB-PC_36BIT_defconfig                |   3 +
 configs/P2020RDB-PC_NAND_defconfig                 |   3 +
 configs/P2020RDB-PC_SDCARD_defconfig               |   3 +
 configs/P2020RDB-PC_SPIFLASH_defconfig             |   3 +
 configs/P2020RDB-PC_defconfig                      |   3 +
 configs/P2041RDB_NAND_defconfig                    |   3 +
 configs/P2041RDB_SDCARD_defconfig                  |   3 +
 configs/P2041RDB_SECURE_BOOT_defconfig             |   3 +
 configs/P2041RDB_SPIFLASH_defconfig                |   3 +
 configs/P2041RDB_SRIO_PCIE_BOOT_defconfig          |   3 +
 configs/P2041RDB_defconfig                         |   3 +
 configs/P3041DS_NAND_SECURE_BOOT_defconfig         |   3 +
 configs/P3041DS_NAND_defconfig                     |   3 +
 configs/P3041DS_SDCARD_defconfig                   |   3 +
 configs/P3041DS_SECURE_BOOT_defconfig              |   3 +
 configs/P3041DS_SPIFLASH_defconfig                 |   3 +
 configs/P3041DS_SRIO_PCIE_BOOT_defconfig           |   3 +
 configs/P3041DS_defconfig                          |   3 +
 configs/P4080DS_SDCARD_defconfig                   |   3 +
 configs/P4080DS_SECURE_BOOT_defconfig              |   3 +
 configs/P4080DS_SPIFLASH_defconfig                 |   3 +
 configs/P4080DS_SRIO_PCIE_BOOT_defconfig           |   3 +
 configs/P4080DS_defconfig                          |   3 +
 configs/P5020DS_NAND_SECURE_BOOT_defconfig         |   3 +
 configs/P5020DS_NAND_defconfig                     |   3 +
 configs/P5020DS_SDCARD_defconfig                   |   3 +
 configs/P5020DS_SECURE_BOOT_defconfig              |   3 +
 configs/P5020DS_SPIFLASH_defconfig                 |   3 +
 configs/P5020DS_SRIO_PCIE_BOOT_defconfig           |   3 +
 configs/P5020DS_defconfig                          |   3 +
 configs/P5040DS_NAND_SECURE_BOOT_defconfig         |   3 +
 configs/P5040DS_NAND_defconfig                     |   3 +
 configs/P5040DS_SDCARD_defconfig                   |   3 +
 configs/P5040DS_SECURE_BOOT_defconfig              |   3 +
 configs/P5040DS_SPIFLASH_defconfig                 |   3 +
 configs/P5040DS_defconfig                          |   3 +
 configs/PLU405_defconfig                           |   2 +
 configs/PMC405DE_defconfig                         |   2 +
 configs/PMC440_defconfig                           |   2 +
 configs/Sinlinx_SinA33_defconfig                   |   1 +
 configs/Sinovoip_BPI_M2_defconfig                  |   1 +
 configs/T1023RDB_NAND_defconfig                    |   3 +
 configs/T1023RDB_SDCARD_defconfig                  |   3 +
 configs/T1023RDB_SECURE_BOOT_defconfig             |   3 +
 configs/T1023RDB_SPIFLASH_defconfig                |   3 +
 configs/T1023RDB_defconfig                         |   3 +
 configs/T1024QDS_DDR4_SECURE_BOOT_defconfig        |   3 +
 configs/T1024QDS_DDR4_defconfig                    |   3 +
 configs/T1024QDS_NAND_defconfig                    |   3 +
 configs/T1024QDS_SDCARD_defconfig                  |   3 +
 configs/T1024QDS_SECURE_BOOT_defconfig             |   3 +
 configs/T1024QDS_SPIFLASH_defconfig                |   3 +
 configs/T1024QDS_defconfig                         |   3 +
 configs/T1024RDB_NAND_defconfig                    |   3 +
 configs/T1024RDB_SDCARD_defconfig                  |   3 +
 configs/T1024RDB_SECURE_BOOT_defconfig             |   3 +
 configs/T1024RDB_SPIFLASH_defconfig                |   3 +
 configs/T1024RDB_defconfig                         |   3 +
 configs/T1040D4RDB_NAND_defconfig                  |   3 +
 configs/T1040D4RDB_SDCARD_defconfig                |   3 +
 configs/T1040D4RDB_SECURE_BOOT_defconfig           |   3 +
 configs/T1040D4RDB_SPIFLASH_defconfig              |   3 +
 configs/T1040D4RDB_defconfig                       |   3 +
 configs/T1040QDS_DDR4_defconfig                    |   3 +
 configs/T1040QDS_SECURE_BOOT_defconfig             |   3 +
 configs/T1040QDS_defconfig                         |   3 +
 configs/T1040RDB_NAND_defconfig                    |   3 +
 configs/T1040RDB_SDCARD_defconfig                  |   3 +
 configs/T1040RDB_SECURE_BOOT_defconfig             |   3 +
 configs/T1040RDB_SPIFLASH_defconfig                |   3 +
 configs/T1040RDB_defconfig                         |   3 +
 configs/T1042D4RDB_NAND_defconfig                  |   3 +
 configs/T1042D4RDB_SDCARD_defconfig                |   3 +
 configs/T1042D4RDB_SECURE_BOOT_defconfig           |   3 +
 configs/T1042D4RDB_SPIFLASH_defconfig              |   3 +
 configs/T1042D4RDB_defconfig                       |   3 +
 configs/T1042RDB_PI_NAND_defconfig                 |   3 +
 configs/T1042RDB_PI_SDCARD_defconfig               |   3 +
 configs/T1042RDB_PI_SPIFLASH_defconfig             |   3 +
 configs/T1042RDB_PI_defconfig                      |   3 +
 configs/T1042RDB_SECURE_BOOT_defconfig             |   3 +
 configs/T1042RDB_defconfig                         |   3 +
 configs/T2080QDS_NAND_defconfig                    |   3 +
 configs/T2080QDS_SDCARD_defconfig                  |   3 +
 configs/T2080QDS_SECURE_BOOT_defconfig             |   3 +
 configs/T2080QDS_SPIFLASH_defconfig                |   3 +
 configs/T2080QDS_SRIO_PCIE_BOOT_defconfig          |   3 +
 configs/T2080QDS_defconfig                         |   3 +
 configs/T2080RDB_NAND_defconfig                    |   3 +
 configs/T2080RDB_SDCARD_defconfig                  |   3 +
 configs/T2080RDB_SECURE_BOOT_defconfig             |   3 +
 configs/T2080RDB_SPIFLASH_defconfig                |   3 +
 configs/T2080RDB_SRIO_PCIE_BOOT_defconfig          |   3 +
 configs/T2080RDB_defconfig                         |   3 +
 configs/T2081QDS_NAND_defconfig                    |   3 +
 configs/T2081QDS_SDCARD_defconfig                  |   3 +
 configs/T2081QDS_SPIFLASH_defconfig                |   3 +
 configs/T2081QDS_SRIO_PCIE_BOOT_defconfig          |   3 +
 configs/T2081QDS_defconfig                         |   3 +
 configs/T4160QDS_NAND_defconfig                    |   3 +
 configs/T4160QDS_SDCARD_defconfig                  |   3 +
 configs/T4160QDS_SECURE_BOOT_defconfig             |   3 +
 configs/T4160QDS_defconfig                         |   3 +
 configs/T4160RDB_defconfig                         |   3 +
 configs/T4240QDS_NAND_defconfig                    |   3 +
 configs/T4240QDS_SDCARD_defconfig                  |   3 +
 configs/T4240QDS_SECURE_BOOT_defconfig             |   3 +
 configs/T4240QDS_SRIO_PCIE_BOOT_defconfig          |   3 +
 configs/T4240QDS_defconfig                         |   3 +
 configs/T4240RDB_SDCARD_defconfig                  |   3 +
 configs/T4240RDB_defconfig                         |   3 +
 configs/TQM5200S_HIGHBOOT_defconfig                |   2 +
 configs/TQM5200S_defconfig                         |   2 +
 configs/TQM5200_B_HIGHBOOT_defconfig               |   2 +
 configs/TQM5200_B_defconfig                        |   2 +
 configs/TQM5200_STK100_defconfig                   |   2 +
 configs/TQM5200_defconfig                          |   2 +
 configs/TQM823L_LCD_defconfig                      |   2 +
 configs/TQM823L_defconfig                          |   2 +
 configs/TQM823M_defconfig                          |   2 +
 configs/TQM834x_defconfig                          |   2 +
 configs/TQM850L_defconfig                          |   2 +
 configs/TQM850M_defconfig                          |   2 +
 configs/TQM855L_defconfig                          |   2 +
 configs/TQM855M_defconfig                          |   2 +
 configs/TQM860L_defconfig                          |   2 +
 configs/TQM860M_defconfig                          |   2 +
 configs/TQM862L_defconfig                          |   2 +
 configs/TQM862M_defconfig                          |   2 +
 configs/TQM866M_defconfig                          |   2 +
 configs/TQM885D_defconfig                          |   2 +
 configs/TTTech_defconfig                           |   2 +
 configs/TWR-P1025_defconfig                        |   3 +
 configs/UCP1020_SPIFLASH_defconfig                 |   3 +
 configs/UCP1020_defconfig                          |   3 +
 configs/UTOO_P66_defconfig                         |   1 +
 configs/VOM405_defconfig                           |   2 +
 configs/Wexler_TAB7200_defconfig                   |   1 +
 configs/Wits_Pro_A20_DKT_defconfig                 |   1 +
 configs/Wobo_i5_defconfig                          |   1 +
 configs/Yones_Toptech_BD1078_defconfig             |   1 +
 configs/a3m071_defconfig                           |   3 +
 configs/a4m072_defconfig                           |   2 +
 configs/a4m2k_defconfig                            |   3 +
 configs/ac14xx_defconfig                           |   3 +
 configs/acadia_defconfig                           |   2 +
 configs/alt_defconfig                              |   1 +
 configs/am335x_baltos_defconfig                    |   2 +
 configs/am335x_boneblack_defconfig                 |   2 +
 configs/am335x_evm_defconfig                       |   2 +
 configs/am335x_evm_nor_defconfig                   |   2 +
 configs/am335x_evm_norboot_defconfig               |   2 +
 configs/am335x_evm_spiboot_defconfig               |   2 +
 configs/am335x_evm_usbspl_defconfig                |   2 +
 configs/am335x_gp_evm_defconfig                    |   3 +-
 configs/am335x_igep0033_defconfig                  |   1 +
 configs/am335x_sl50_defconfig                      |   2 +
 configs/am3517_evm_defconfig                       |   1 +
 configs/am437x_sk_evm_defconfig                    |   6 +-
 configs/am43xx_evm_defconfig                       |   1 +
 configs/am43xx_evm_ethboot_defconfig               |   1 +
 configs/am43xx_evm_qspiboot_defconfig              |   1 +
 configs/am43xx_evm_usbhost_boot_defconfig          |   1 +
 configs/am57xx_evm_nodt_defconfig                  |   1 +
 configs/apalis_t30_defconfig                       |   2 +-
 configs/apf27_defconfig                            |   1 +
 configs/apx4devkit_defconfig                       |   1 +
 configs/arches_defconfig                           |   1 +
 configs/aria_defconfig                             |   2 +
 configs/aristainetos2_defconfig                    |   2 +
 configs/aristainetos2b_defconfig                   |   2 +
 configs/aristainetos_defconfig                     |   2 +
 configs/armadillo-800eva_defconfig                 |   1 +
 configs/arndale_defconfig                          |   1 +
 configs/aspenite_defconfig                         |   1 +
 configs/at91rm9200ek_defconfig                     |   1 +
 configs/at91rm9200ek_ram_defconfig                 |   1 +
 configs/at91sam9260ek_dataflash_cs0_defconfig      |   1 +
 configs/at91sam9260ek_dataflash_cs1_defconfig      |   1 +
 configs/at91sam9260ek_nandflash_defconfig          |   1 +
 configs/at91sam9261ek_dataflash_cs0_defconfig      |   1 +
 configs/at91sam9261ek_dataflash_cs3_defconfig      |   1 +
 configs/at91sam9261ek_nandflash_defconfig          |   1 +
 configs/at91sam9263ek_dataflash_cs0_defconfig      |   1 +
 configs/at91sam9263ek_dataflash_defconfig          |   1 +
 configs/at91sam9263ek_nandflash_defconfig          |   1 +
 configs/at91sam9263ek_norflash_boot_defconfig      |   1 +
 configs/at91sam9263ek_norflash_defconfig           |   1 +
 configs/at91sam9g10ek_dataflash_cs0_defconfig      |   1 +
 configs/at91sam9g10ek_dataflash_cs3_defconfig      |   1 +
 configs/at91sam9g10ek_nandflash_defconfig          |   1 +
 configs/at91sam9g20ek_2mmc_defconfig               |   1 +
 configs/at91sam9g20ek_2mmc_nandflash_defconfig     |   1 +
 configs/at91sam9g20ek_dataflash_cs0_defconfig      |   1 +
 configs/at91sam9g20ek_dataflash_cs1_defconfig      |   1 +
 configs/at91sam9g20ek_nandflash_defconfig          |   1 +
 configs/at91sam9m10g45ek_mmc_defconfig             |   1 +
 configs/at91sam9m10g45ek_nandflash_defconfig       |   1 +
 configs/at91sam9n12ek_mmc_defconfig                |   1 +
 configs/at91sam9n12ek_nandflash_defconfig          |   1 +
 configs/at91sam9n12ek_spiflash_defconfig           |   1 +
 configs/at91sam9rlek_dataflash_defconfig           |   1 +
 configs/at91sam9rlek_mmc_defconfig                 |   1 +
 configs/at91sam9rlek_nandflash_defconfig           |   1 +
 configs/at91sam9x5ek_dataflash_defconfig           |   1 +
 configs/at91sam9x5ek_mmc_defconfig                 |   1 +
 configs/at91sam9x5ek_nandflash_defconfig           |   1 +
 configs/at91sam9x5ek_spiflash_defconfig            |   1 +
 configs/at91sam9xeek_dataflash_cs0_defconfig       |   1 +
 configs/at91sam9xeek_dataflash_cs1_defconfig       |   1 +
 configs/at91sam9xeek_nandflash_defconfig           |   1 +
 configs/axm_defconfig                              |   1 +
 configs/ba10_tv_box_defconfig                      |   1 +
 configs/bamboo_defconfig                           |   2 +
 configs/bayleybay_defconfig                        |   5 +-
 configs/bcm911360_entphn-ns_defconfig              |   1 +
 configs/bcm911360_entphn_defconfig                 |   1 +
 configs/bcm911360k_defconfig                       |   1 +
 configs/bcm958300k-ns_defconfig                    |   1 +
 configs/bcm958300k_defconfig                       |   1 +
 configs/bcm958305k_defconfig                       |   1 +
 configs/bcm958622hr_defconfig                      |   1 +
 configs/beaver_defconfig                           |   1 +
 configs/bg0900_defconfig                           |   1 +
 configs/birdland_bav335a_defconfig                 |   2 +
 configs/birdland_bav335b_defconfig                 |   2 +
 configs/bubinga_defconfig                          |   2 +
 configs/caddy2_defconfig                           |   2 +
 configs/cairo_defconfig                            |   1 +
 configs/cam5200_defconfig                          |   2 +
 configs/cam5200_niosflash_defconfig                |   2 +
 configs/canyonlands_defconfig                      |   1 +
 configs/cardhu_defconfig                           |   1 +
 configs/cgtqmx6eval_defconfig                      |   5 +-
 configs/charon_defconfig                           |   2 +
 configs/chromebook_link_defconfig                  |   5 +-
 configs/chromebox_panther_defconfig                |   5 +-
 configs/cm5200_defconfig                           |   2 +
 configs/cm_fx6_defconfig                           |   2 +
 configs/cm_t335_defconfig                          |   1 +
 configs/cm_t3517_defconfig                         |   1 +
 configs/cm_t35_defconfig                           |   1 +
 configs/cm_t43_defconfig                           |   1 +
 configs/cm_t54_defconfig                           |   2 +
 configs/colibri_pxa270_defconfig                   |   1 +
 configs/colibri_t20_defconfig                      |   1 +
 configs/colibri_t30_defconfig                      |   1 +
 configs/colibri_vf_defconfig                       |   1 +
 .../controlcenterd_36BIT_SDCARD_DEVELOP_defconfig  |   3 +
 configs/controlcenterd_36BIT_SDCARD_defconfig      |   3 +
 configs/coreboot-x86_defconfig                     |   5 +-
 configs/corvus_defconfig                           |   1 +
 configs/crownbay_defconfig                         |   5 +-
 configs/d2net_v2_defconfig                         |   1 +
 configs/da850_am18xxevm_defconfig                  |   1 +
 configs/da850evm_defconfig                         |   1 +
 configs/da850evm_direct_nor_defconfig              |   1 +
 configs/dalmore_defconfig                          |   1 +
 configs/devconcenter_defconfig                     |   3 +
 configs/devkit3250_defconfig                       |   1 +
 configs/devkit8000_defconfig                       |   1 +
 configs/digsy_mtc_RAMBOOT_defconfig                |   2 +
 configs/digsy_mtc_defconfig                        |   2 +
 configs/digsy_mtc_rev5_RAMBOOT_defconfig           |   2 +
 configs/digsy_mtc_rev5_defconfig                   |   2 +
 configs/dlvision-10g_defconfig                     |   3 +
 configs/dlvision_defconfig                         |   3 +
 configs/dns325_defconfig                           |   1 +
 configs/dockstar_defconfig                         |   1 +
 configs/dra72_evm_defconfig                        |   4 +-
 configs/dra74_evm_defconfig                        |   6 +-
 configs/dra7xx_evm_defconfig                       |   1 +
 configs/dra7xx_evm_qspiboot_defconfig              |   1 +
 configs/dra7xx_evm_uart3_defconfig                 |   1 +
 configs/draco_defconfig                            |   1 +
 configs/dreamplug_defconfig                        |   1 +
 configs/duovero_defconfig                          |   1 +
 configs/e2220-1170_defconfig                       |   1 +
 configs/eco5pk_defconfig                           |   2 +
 configs/efi-x86_defconfig                          |   2 +-
 configs/evb-rk3036_defconfig                       |  25 +-
 configs/firefly-rk3288_defconfig                   |   2 +-
 configs/flea3_defconfig                            |   1 +
 configs/fo300_defconfig                            |   2 +
 configs/ga10h_v1_1_defconfig                       |   1 +
 configs/galileo_defconfig                          |   5 +-
 configs/gdppc440etx_defconfig                      |   2 +
 configs/glacier_defconfig                          |   1 +
 configs/glacier_ramboot_defconfig                  |   1 +
 configs/goflexhome_defconfig                       |   1 +
 configs/gose_defconfig                             |   1 +
 configs/gplugd_defconfig                           |   1 +
 configs/gt90h_v4_defconfig                         |   1 +
 configs/guruplug_defconfig                         |   1 +
 configs/gwventana_defconfig                        |   3 +
 configs/h2200_defconfig                            |   1 +
 configs/h8_homlet_v2_defconfig                     |   6 -
 configs/haleakala_defconfig                        |   2 +
 configs/harmony_defconfig                          |   1 +
 configs/highbank_defconfig                         |   3 +
 configs/hikey_defconfig                            |   1 +
 configs/hrcon_defconfig                            |   3 +
 configs/hrcon_dh_defconfig                         |   3 +
 configs/i12-tvbox_defconfig                        |   1 +
 configs/iNet_3F_defconfig                          |   1 +
 configs/iNet_3W_defconfig                          |   1 +
 configs/iNet_86VS_defconfig                        |   1 +
 configs/ib62x0_defconfig                           |   1 +
 configs/icon_defconfig                             |   2 +
 configs/iconnect_defconfig                         |   1 +
 configs/ids8313_defconfig                          |   2 +
 configs/igep0020_defconfig                         |   3 +-
 configs/igep0020_nand_defconfig                    |   3 +-
 configs/igep0030_defconfig                         |   1 +
 configs/igep0030_nand_defconfig                    |   1 +
 configs/igep0032_defconfig                         |   3 +-
 configs/inet1_defconfig                            |   1 +
 configs/inet97fv2_defconfig                        |   1 +
 configs/inet98v_rev2_defconfig                     |   1 +
 configs/inet9f_rev03_defconfig                     |   1 +
 configs/inetspace_v2_defconfig                     |   1 +
 configs/integratorap_cm720t_defconfig              |   1 +
 configs/integratorap_cm920t_defconfig              |   1 +
 configs/integratorap_cm926ejs_defconfig            |   1 +
 configs/integratorap_cm946es_defconfig             |   1 +
 configs/integratorcp_cm1136_defconfig              |   1 +
 configs/integratorcp_cm920t_defconfig              |   1 +
 configs/integratorcp_cm926ejs_defconfig            |   1 +
 configs/integratorcp_cm946es_defconfig             |   1 +
 configs/intip_defconfig                            |   3 +
 configs/io64_defconfig                             |   3 +
 configs/io_defconfig                               |   3 +
 configs/iocon_defconfig                            |   2 +
 configs/ipek01_defconfig                           |   2 +
 configs/jesurun_q5_defconfig                       |   1 +
 configs/jetson-tk1_defconfig                       |   1 +
 configs/k2e_evm_defconfig                          |   1 +
 configs/k2g_evm_defconfig                          |   1 +
 configs/k2hk_evm_defconfig                         |   1 +
 configs/k2l_evm_defconfig                          |   1 +
 configs/katmai_defconfig                           |   2 +
 configs/kilauea_defconfig                          |   2 +
 configs/km_kirkwood_128m16_defconfig               |   1 +
 configs/km_kirkwood_defconfig                      |   1 +
 configs/km_kirkwood_pci_defconfig                  |   1 +
 configs/kmcoge4_defconfig                          |   3 +
 configs/kmcoge5ne_defconfig                        |   2 +
 configs/kmcoge5un_defconfig                        |   1 +
 configs/kmeter1_defconfig                          |   2 +
 configs/kmlion1_defconfig                          |   3 +
 configs/kmnusa_defconfig                           |   1 +
 configs/kmopti2_defconfig                          |   2 +
 configs/kmsugp1_defconfig                          |   1 +
 configs/kmsupx5_defconfig                          |   2 +
 configs/kmsuv31_defconfig                          |   1 +
 configs/kmtegr1_defconfig                          |   2 +
 configs/kmtepr2_defconfig                          |   2 +
 configs/kmvect1_defconfig                          |   2 +
 configs/koelsch_defconfig                          |   1 +
 configs/kwb_defconfig                              |   1 +
 configs/kylin-rk3036_defconfig                     |  16 +-
 configs/kzm9g_defconfig                            |   1 +
 configs/lager_defconfig                            |   1 +
 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                  |   1 +
 configs/ls1021aqds_sdcard_defconfig                |   2 +
 configs/ls1021atwr_nor_SECURE_BOOT_defconfig       |   2 +
 configs/ls1021atwr_nor_defconfig                   |   1 +
 configs/ls1021atwr_nor_lpuart_defconfig            |   1 +
 configs/ls1021atwr_qspi_defconfig                  |   1 +
 configs/ls1021atwr_sdcard_ifc_defconfig            |   2 +
 configs/ls1021atwr_sdcard_qspi_defconfig           |   1 +
 configs/ls1043aqds_defconfig                       |   6 +-
 configs/ls1043aqds_nand_defconfig                  |   7 +-
 configs/ls1043aqds_nor_ddr3_defconfig              |   3 +
 configs/ls1043aqds_sdcard_ifc_defconfig            |   7 +-
 configs/ls1043ardb_SECURE_BOOT_defconfig           |   8 +-
 configs/ls1043ardb_defconfig                       |   8 +-
 configs/ls1043ardb_nand_defconfig                  |   8 +-
 configs/ls1043ardb_sdcard_defconfig                |   8 +-
 configs/ls2080a_emu_defconfig                      |   3 +
 configs/ls2080a_simu_defconfig                     |   3 +
 configs/ls2080aqds_defconfig                       |   2 +
 configs/ls2080aqds_nand_defconfig                  |   3 +
 configs/ls2080ardb_defconfig                       |   2 +
 configs/ls2080ardb_nand_defconfig                  |   3 +
 configs/ls2085a_emu_defconfig                      |   3 +
 configs/ls2085a_simu_defconfig                     |   3 +
 configs/ls2085aqds_defconfig                       |   2 +
 configs/ls2085aqds_nand_defconfig                  |   3 +
 configs/ls2085ardb_defconfig                       |   2 +
 configs/ls2085ardb_nand_defconfig                  |   3 +
 configs/lschlv2_defconfig                          |   1 +
 configs/lsxhl_defconfig                            |   1 +
 configs/luan_defconfig                             |   2 +
 configs/lwmon5_defconfig                           |   3 +
 configs/m28evk_defconfig                           |   2 +
 configs/m53evk_defconfig                           |   2 +
 configs/makalu_defconfig                           |   2 +
 configs/marsboard_defconfig                        |   1 +
 configs/mcx_defconfig                              |   2 +
 configs/mecp5123_defconfig                         |   2 +
 configs/medcom-wide_defconfig                      |   2 +
 configs/meesc_dataflash_defconfig                  |   2 +
 configs/meesc_defconfig                            |   2 +
 configs/mgcoge3ne_defconfig                        |   3 +
 configs/mgcoge3un_defconfig                        |   1 +
 configs/mgcoge_defconfig                           |   3 +
 configs/microblaze-generic_defconfig               |   1 +
 configs/minnowmax_defconfig                        |   5 +-
 configs/mixtile_loftq_defconfig                    |   1 +
 configs/mk802_a10s_defconfig                       |   1 +
 configs/mk802_defconfig                            |   1 +
 configs/mk802ii_defconfig                          |   1 +
 configs/motionpro_defconfig                        |   2 +
 configs/mpc5121ads_defconfig                       |   2 +
 configs/mpc5121ads_rev2_defconfig                  |   2 +
 configs/mpc8308_p1m_defconfig                      |   2 +
 configs/mt_ventoux_defconfig                       |   2 +
 configs/munices_defconfig                          |   2 +
 configs/mx23_olinuxino_defconfig                   |   1 +
 configs/mx23evk_defconfig                          |   1 +
 configs/mx25pdk_defconfig                          |   1 +
 configs/mx28evk_auart_console_defconfig            |   1 +
 configs/mx28evk_defconfig                          |   1 +
 configs/mx28evk_nand_defconfig                     |   1 +
 configs/mx28evk_spi_defconfig                      |   1 +
 configs/mx35pdk_defconfig                          |   1 +
 configs/mx51evk_defconfig                          |   1 +
 configs/mx53ard_defconfig                          |   1 +
 configs/mx53evk_defconfig                          |   1 +
 configs/mx53loco_defconfig                         |   1 +
 configs/mx53smd_defconfig                          |   1 +
 configs/mx6cuboxi_defconfig                        |   1 +
 configs/mx6dlarm2_defconfig                        |   1 +
 configs/mx6dlarm2_lpddr2_defconfig                 |   1 +
 configs/mx6dlsabreauto_defconfig                   |   1 +
 configs/mx6dlsabresd_defconfig                     |   1 +
 configs/mx6qarm2_defconfig                         |   1 +
 configs/mx6qarm2_lpddr2_defconfig                  |   1 +
 configs/mx6qpsabreauto_defconfig                   |   1 +
 configs/mx6qsabreauto_defconfig                    |   1 +
 configs/mx6qsabrelite_defconfig                    |   1 +
 configs/mx6qsabresd_defconfig                      |   1 +
 configs/mx6sabresd_spl_defconfig                   |   1 +
 configs/mx6slevk_defconfig                         |   1 +
 configs/mx6slevk_spinor_defconfig                  |   1 +
 configs/mx6slevk_spl_defconfig                     |   1 +
 configs/mx6sxsabresd_defconfig                     |   1 +
 configs/mx6sxsabresd_spl_defconfig                 |   1 +
 configs/mx6ul_14x14_evk_defconfig                  |   1 +
 configs/mx6ul_9x9_evk_defconfig                    |   1 +
 configs/mx7dsabresd_defconfig                      |   1 +
 configs/nas220_defconfig                           |   1 +
 configs/neo_defconfig                              |   3 +
 configs/net2big_v2_defconfig                       |   1 +
 configs/netspace_lite_v2_defconfig                 |   1 +
 configs/netspace_max_v2_defconfig                  |   1 +
 configs/netspace_mini_v2_defconfig                 |   1 +
 configs/netspace_v2_defconfig                      |   1 +
 configs/nitrogen6dl2g_defconfig                    |   1 +
 configs/nitrogen6dl_defconfig                      |   1 +
 configs/nitrogen6q2g_defconfig                     |   1 +
 configs/nitrogen6q_defconfig                       |   1 +
 configs/nitrogen6s1g_defconfig                     |   1 +
 configs/nitrogen6s_defconfig                       |   1 +
 configs/novena_defconfig                           |   2 +
 configs/nsa310s_defconfig                          |   9 +-
 configs/nyan-big_defconfig                         |   2 +
 configs/odroid-xu3_defconfig                       |   1 +
 configs/odroid_defconfig                           |   1 +
 configs/omap3_beagle_defconfig                     |   1 +
 configs/omap3_ha_defconfig                         |   1 +
 configs/omap3_logic_defconfig                      |   1 +
 configs/omap3_overo_defconfig                      |   1 +
 configs/omap3_pandora_defconfig                    |   1 +
 configs/omap3_zoom1_defconfig                      |   1 +
 configs/omap4_panda_defconfig                      |   1 +
 configs/omap4_sdp4430_defconfig                    |   1 +
 configs/omap5_uevm_defconfig                       |   1 +
 configs/omapl138_lcdk_defconfig                    |   1 +
 configs/openrd_base_defconfig                      |   1 +
 configs/openrd_client_defconfig                    |   1 +
 configs/openrd_ultimate_defconfig                  |   1 +
 configs/orangepi_pc_defconfig                      |   2 +-
 configs/ot1200_defconfig                           |   1 +
 configs/ot1200_spl_defconfig                       |   1 +
 configs/p2371-0000_defconfig                       |   1 +
 configs/p2371-2180_defconfig                       |   3 +-
 configs/p2571_defconfig                            |   1 +
 configs/paz00_defconfig                            |   1 +
 configs/pcm030_LOWBOOT_defconfig                   |   2 +
 configs/pcm030_defconfig                           |   2 +
 configs/pcm051_rev1_defconfig                      |   1 +
 configs/pcm051_rev3_defconfig                      |   1 +
 configs/pcm052_defconfig                           |   1 +
 configs/pdm360ng_defconfig                         |   3 +
 configs/peach-pi_defconfig                         |   1 +
 configs/peach-pit_defconfig                        |   1 +
 configs/pengwyn_defconfig                          |   1 +
 configs/pepper_defconfig                           |   1 +
 configs/picosam9g45_defconfig                      |   1 +
 configs/platinum_picon_defconfig                   |   1 +
 configs/platinum_titanium_defconfig                |   1 +
 configs/plutux_defconfig                           |   2 +
 configs/pogo_e02_defconfig                         |   1 +
 configs/porter_defconfig                           |   1 +
 configs/portl2_defconfig                           |   1 +
 configs/pov_protab2_ips9_defconfig                 |   1 +
 configs/pxm2_defconfig                             |   2 +
 configs/q8_a13_tablet_defconfig                    |   1 +
 configs/q8_a23_tablet_800x480_defconfig            |   1 +
 configs/q8_a33_tablet_1024x600_defconfig           |   1 +
 configs/q8_a33_tablet_800x480_defconfig            |   1 +
 configs/qemu-ppce500_defconfig                     |   3 +
 configs/qemu-x86_defconfig                         |   5 +-
 configs/r7-tv-dongle_defconfig                     |   1 +
 configs/rainier_defconfig                          |   2 +
 configs/rainier_ramboot_defconfig                  |   2 +
 configs/rastaban_defconfig                         |   1 +
 configs/redwood_defconfig                          |   2 +
 configs/riotboard_defconfig                        |   1 +
 configs/rock2_defconfig                            |   2 +-
 configs/rpi_2_defconfig                            |   2 +
 configs/rpi_defconfig                              |   2 +
 configs/rut_defconfig                              |   2 +
 configs/sama5d2_xplained_mmc_defconfig             |   1 +
 configs/sama5d2_xplained_spiflash_defconfig        |   1 +
 configs/sama5d3_xplained_mmc_defconfig             |   1 +
 configs/sama5d3_xplained_nandflash_defconfig       |   1 +
 configs/sama5d3xek_mmc_defconfig                   |   1 +
 configs/sama5d3xek_nandflash_defconfig             |   1 +
 configs/sama5d3xek_spiflash_defconfig              |   1 +
 configs/sama5d4_xplained_mmc_defconfig             |   1 +
 configs/sama5d4_xplained_nandflash_defconfig       |   1 +
 configs/sama5d4_xplained_spiflash_defconfig        |   1 +
 configs/sama5d4ek_mmc_defconfig                    |   1 +
 configs/sama5d4ek_nandflash_defconfig              |   1 +
 configs/sama5d4ek_spiflash_defconfig               |   1 +
 configs/sandbox_defconfig                          |   8 +-
 configs/sansa_fuze_plus_defconfig                  |   1 +
 configs/sbc8349_PCI_33_defconfig                   |   2 +
 configs/sbc8349_PCI_66_defconfig                   |   2 +
 configs/sbc8349_defconfig                          |   2 +
 configs/sbc8548_PCI_33_PCIE_defconfig              |   2 +
 configs/sbc8548_PCI_33_defconfig                   |   2 +
 configs/sbc8548_PCI_66_PCIE_defconfig              |   2 +
 configs/sbc8548_PCI_66_defconfig                   |   2 +
 configs/sbc8548_defconfig                          |   2 +
 configs/sbc8641d_defconfig                         |   2 +
 configs/sc_sps_1_defconfig                         |   1 +
 configs/seaboard_defconfig                         |   1 +
 configs/secomx6quq7_defconfig                      |   1 +
 configs/sequoia_defconfig                          |   2 +
 configs/sequoia_ramboot_defconfig                  |   2 +
 configs/sheevaplug_defconfig                       |   1 +
 configs/silk_defconfig                             |   1 +
 configs/smartweb_defconfig                         |   2 +
 configs/smdk5250_defconfig                         |   1 +
 configs/smdk5420_defconfig                         |   1 +
 configs/snapper9260_defconfig                      |   1 +
 configs/snapper9g20_defconfig                      |   1 +
 configs/sniper_defconfig                           |   1 +
 configs/snow_defconfig                             |   1 +
 configs/socfpga_arria5_defconfig                   |   8 +-
 configs/socfpga_cyclone5_defconfig                 |   8 +-
 configs/socfpga_de0_nano_soc_defconfig             |   4 +-
 configs/socfpga_mcvevk_defconfig                   |   4 +-
 configs/socfpga_sockit_defconfig                   |   6 +-
 configs/socfpga_socrates_defconfig                 |   6 +-
 configs/socfpga_sr1500_defconfig                   |  10 +-
 configs/socrates_defconfig                         |   3 +
 configs/spring_defconfig                           |   1 +
 configs/stm32f429-discovery_defconfig              |   1 +
 configs/stout_defconfig                            |   1 +
 configs/strider_con_defconfig                      |   3 +
 configs/strider_cpu_defconfig                      |   3 +
 configs/sunxi_Gemei_G9_defconfig                   |   1 +
 configs/suvd3_defconfig                            |   2 +
 configs/sycamore_defconfig                         |   2 +
 configs/t3corp_defconfig                           |   3 +
 configs/tao3530_defconfig                          |   1 +
 configs/taurus_defconfig                           |   1 +
 configs/tbs2910_defconfig                          |   2 +
 configs/tec-ng_defconfig                           |   2 +
 configs/tec_defconfig                              |   2 +
 configs/thuban_defconfig                           |   1 +
 configs/ti814x_evm_defconfig                       |   1 +
 configs/ti816x_evm_defconfig                       |   1 +
 configs/titanium_defconfig                         |   1 +
 configs/tqma6q_mba6_mmc_defconfig                  |   3 +
 configs/tqma6q_mba6_spi_defconfig                  |   3 +
 configs/tqma6s_mba6_mmc_defconfig                  |   3 +
 configs/tqma6s_mba6_spi_defconfig                  |   3 +
 configs/tqma6s_wru4_mmc_defconfig                  |   3 +
 configs/trats2_defconfig                           |   1 +
 configs/trats_defconfig                            |   1 +
 configs/tricorder_defconfig                        |   1 +
 configs/tricorder_flash_defconfig                  |   1 +
 configs/trimslice_defconfig                        |   1 +
 configs/ts4800_defconfig                           |   1 +
 configs/tseries_mmc_defconfig                      |   2 +
 configs/tseries_nand_defconfig                     |   2 +
 configs/tseries_spi_defconfig                      |   2 +
 configs/tuge1_defconfig                            |   2 +
 configs/tuxx1_defconfig                            |   2 +
 configs/twister_defconfig                          |   2 +
 configs/udoo_defconfig                             |   1 +
 configs/uniphier_ld4_sld8_defconfig                |   1 -
 configs/uniphier_pro4_defconfig                    |   1 -
 configs/uniphier_pro5_defconfig                    |   1 -
 configs/uniphier_pxs2_ld6b_defconfig               |   1 -
 configs/usb_a9263_dataflash_defconfig              |   1 +
 configs/usbarmory_defconfig                        |   1 +
 configs/ve8313_defconfig                           |   2 +
 configs/venice2_defconfig                          |   1 +
 configs/ventana_defconfig                          |   1 +
 configs/vexpress_aemv8a_dram_defconfig             |   1 +
 configs/vexpress_aemv8a_juno_defconfig             |   1 +
 configs/vexpress_aemv8a_semi_defconfig             |   1 +
 configs/vexpress_ca15_tc2_defconfig                |   1 +
 configs/vexpress_ca5x2_defconfig                   |   1 +
 configs/vexpress_ca9x4_defconfig                   |   1 +
 configs/vf610twr_defconfig                         |   1 +
 configs/vf610twr_nand_defconfig                    |   1 +
 configs/vme8349_defconfig                          |   2 +
 configs/walnut_defconfig                           |   2 +
 configs/wandboard_defconfig                        |   1 +
 configs/warp_defconfig                             |   1 +
 configs/whistler_defconfig                         |   1 +
 configs/wtk_defconfig                              |   2 +
 configs/x600_defconfig                             |   1 +
 configs/xfi3_defconfig                             |   1 +
 configs/xpedite1000_defconfig                      |   1 +
 configs/xpedite517x_defconfig                      |   3 +
 configs/xpedite520x_defconfig                      |   3 +
 configs/xpedite537x_defconfig                      |   3 +
 configs/xpedite550x_defconfig                      |   3 +
 configs/yellowstone_defconfig                      |   2 +
 configs/yosemite_defconfig                         |   2 +
 configs/yucca_defconfig                            |   2 +
 configs/zynq_zybo_defconfig                        |   4 +-
 doc/mkimage.1                                      |  46 +-
 doc/uImage.FIT/source_file_format.txt              |  20 +-
 dts/Kconfig                                        |  11 +
 include/common.h                                   |   4 +-
 include/config_distro_defaults.h                   |   2 -
 include/configs/10m50_devboard.h                   |   2 -
 include/configs/3c120_devboard.h                   |   2 -
 include/configs/B4860QDS.h                         |   3 -
 include/configs/BSC9131RDB.h                       |   3 -
 include/configs/BSC9132QDS.h                       |   3 -
 include/configs/C29XPCIE.h                         |   3 -
 include/configs/CPCI4052.h                         |   2 -
 include/configs/MPC8308RDB.h                       |   3 -
 include/configs/MPC8313ERDB.h                      |   2 -
 include/configs/MPC8315ERDB.h                      |   2 -
 include/configs/MPC8323ERDB.h                      |   2 -
 include/configs/MPC832XEMDS.h                      |   2 -
 include/configs/MPC8349EMDS.h                      |   2 -
 include/configs/MPC8349ITX.h                       |   2 -
 include/configs/MPC837XEMDS.h                      |   2 -
 include/configs/MPC837XERDB.h                      |   2 -
 include/configs/MPC8536DS.h                        |   2 -
 include/configs/MPC8540ADS.h                       |   2 -
 include/configs/MPC8541CDS.h                       |   2 -
 include/configs/MPC8544DS.h                        |   2 -
 include/configs/MPC8548CDS.h                       |   2 -
 include/configs/MPC8555CDS.h                       |   2 -
 include/configs/MPC8560ADS.h                       |   2 -
 include/configs/MPC8568MDS.h                       |   2 -
 include/configs/MPC8569MDS.h                       |   2 -
 include/configs/MPC8572DS.h                        |   3 -
 include/configs/MPC8610HPCD.h                      |   2 -
 include/configs/MPC8641HPCN.h                      |   2 -
 include/configs/P1010RDB.h                         |   3 -
 include/configs/P1022DS.h                          |   3 -
 include/configs/P1023RDB.h                         |   3 -
 include/configs/P2041RDB.h                         |   3 -
 include/configs/PLU405.h                           |   2 -
 include/configs/PMC405DE.h                         |   2 -
 include/configs/PMC440.h                           |   2 -
 include/configs/T102xQDS.h                         |   3 -
 include/configs/T102xRDB.h                         |   3 -
 include/configs/T1040QDS.h                         |   3 -
 include/configs/T104xRDB.h                         |   3 -
 include/configs/T208xQDS.h                         |   3 -
 include/configs/T208xRDB.h                         |   3 -
 include/configs/T4240RDB.h                         |   3 -
 include/configs/TQM5200.h                          |   2 -
 include/configs/TQM823L.h                          |   2 -
 include/configs/TQM823M.h                          |   2 -
 include/configs/TQM834x.h                          |   2 -
 include/configs/TQM850L.h                          |   2 -
 include/configs/TQM850M.h                          |   2 -
 include/configs/TQM855L.h                          |   2 -
 include/configs/TQM855M.h                          |   2 -
 include/configs/TQM860L.h                          |   2 -
 include/configs/TQM860M.h                          |   2 -
 include/configs/TQM862L.h                          |   2 -
 include/configs/TQM862M.h                          |   2 -
 include/configs/TQM866M.h                          |   2 -
 include/configs/TQM885D.h                          |   2 -
 include/configs/UCP1020.h                          |   3 -
 include/configs/VOM405.h                           |   2 -
 include/configs/a3m071.h                           |   3 -
 include/configs/a4m072.h                           |   2 -
 include/configs/ac14xx.h                           |   3 -
 include/configs/am335x_evm.h                       |   1 -
 include/configs/am335x_sl50.h                      |   1 -
 include/configs/am3517_evm.h                       |   2 -
 include/configs/amcc-common.h                      |   2 -
 include/configs/apf27.h                            |   2 -
 include/configs/arcangel4.h                        |   3 -
 include/configs/aria.h                             |   2 -
 include/configs/aristainetos-common.h              |   1 -
 include/configs/armadillo-800eva.h                 |   1 -
 include/configs/at91-sama5_common.h                |   2 -
 include/configs/at91rm9200ek.h                     |   1 -
 include/configs/at91sam9260ek.h                    |   2 -
 include/configs/at91sam9261ek.h                    |   3 -
 include/configs/at91sam9263ek.h                    |   2 -
 include/configs/at91sam9m10g45ek.h                 |   2 -
 include/configs/at91sam9n12ek.h                    |   2 -
 include/configs/at91sam9rlek.h                     |   2 -
 include/configs/at91sam9x5ek.h                     |   2 -
 include/configs/axs101.h                           |   2 -
 include/configs/baltos.h                           |   1 -
 include/configs/bav335x.h                          |   1 -
 include/configs/bcm_ep_board.h                     |   3 -
 include/configs/cm5200.h                           |   2 -
 include/configs/cm_fx6.h                           |   1 -
 include/configs/cm_t35.h                           |   2 -
 include/configs/cm_t3517.h                         |   1 -
 include/configs/cm_t54.h                           |   2 -
 include/configs/colibri_pxa270.h                   |   1 -
 include/configs/colibri_vf.h                       |   1 -
 include/configs/controlcenterd.h                   |   3 -
 include/configs/corenet_ds.h                       |   3 -
 include/configs/corvus.h                           |   1 -
 include/configs/cyrus.h                            |   3 -
 include/configs/da850evm.h                         |   1 -
 include/configs/devkit3250.h                       |   1 -
 include/configs/digsy_mtc.h                        |   2 -
 include/configs/dlvision-10g.h                     |   1 -
 include/configs/dlvision.h                         |   1 -
 include/configs/dns325.h                           |   5 -
 include/configs/exynos5-common.h                   |   1 -
 include/configs/flea3.h                            |   1 -
 include/configs/gw_ventana.h                       |   2 -
 include/configs/h2200.h                            |   1 -
 include/configs/highbank.h                         |   2 -
 include/configs/hikey.h                            |   3 -
 include/configs/hrcon.h                            |   3 -
 include/configs/ids8313.h                          |   2 -
 include/configs/integrator-common.h                |   1 -
 include/configs/intip.h                            |   1 -
 include/configs/io.h                               |   1 -
 include/configs/io64.h                             |   1 -
 include/configs/ipek01.h                           |   2 -
 include/configs/jupiter.h                          |   2 -
 include/configs/km/km-powerpc.h                    |   2 -
 include/configs/km/km_arm.h                        |   3 -
 include/configs/km/kmp204x-common.h                |   3 -
 include/configs/km82xx.h                           |   1 -
 include/configs/kwb.h                              |   1 -
 include/configs/kzm9g.h                            |   1 -
 include/configs/lacie_kw.h                         |   5 -
 include/configs/ls1021aqds.h                       |   2 -
 include/configs/ls1021atwr.h                       |   2 -
 include/configs/ls1043a_common.h                   |   3 -
 include/configs/ls1043aqds.h                       |   2 -
 include/configs/ls2080a_common.h                   |   3 -
 include/configs/lsxl.h                             |   1 -
 include/configs/lwmon5.h                           |   3 -
 include/configs/m28evk.h                           |   1 -
 include/configs/m53evk.h                           |   2 -
 include/configs/manroland/common.h                 |   2 -
 include/configs/mcx.h                              |   2 -
 include/configs/mecp5123.h                         |   2 -
 include/configs/medcom-wide.h                      |   1 -
 include/configs/meesc.h                            |   2 -
 include/configs/microblaze-generic.h               |   2 -
 include/configs/motionpro.h                        |   2 -
 include/configs/mpc5121ads.h                       |   2 -
 include/configs/mpc8308_p1m.h                      |   2 -
 include/configs/munices.h                          |   2 -
 include/configs/mv-common.h                        |   2 -
 include/configs/mv-plug-common.h                   |   5 -
 include/configs/mx25pdk.h                          |   1 -
 include/configs/mx31ads.h                          |   2 -
 include/configs/mx35pdk.h                          |   1 -
 include/configs/mx51evk.h                          |   2 -
 include/configs/mx53ard.h                          |   1 -
 include/configs/mx53evk.h                          |   2 -
 include/configs/mx53loco.h                         |   2 -
 include/configs/mx53smd.h                          |   2 -
 include/configs/mx6_common.h                       |   1 -
 include/configs/mx6ul_14x14_evk.h                  |   1 -
 include/configs/mx7_common.h                       |   1 -
 include/configs/mxs.h                              |   3 -
 include/configs/nas220.h                           |   6 -
 include/configs/neo.h                              |   1 -
 include/configs/novena.h                           |   1 -
 include/configs/nyan-big.h                         |   2 -
 include/configs/o2dnt-common.h                     |   2 -
 include/configs/odroid.h                           |   1 -
 include/configs/omapl138_lcdk.h                    |   1 -
 include/configs/openrisc-generic.h                 |   1 -
 include/configs/p1_p2_rdb_pc.h                     |   3 -
 include/configs/p1_twr.h                           |   3 -
 include/configs/pcm030.h                           |   2 -
 include/configs/pcm052.h                           |   1 -
 include/configs/pdm360ng.h                         |   3 -
 include/configs/picosam9g45.h                      |   2 -
 include/configs/plutux.h                           |   1 -
 include/configs/pxm2.h                             |   1 -
 include/configs/qemu-ppce500.h                     |   3 -
 include/configs/rcar-gen2-common.h                 |   1 -
 include/configs/rk3288_common.h                    |   1 -
 include/configs/rpi-common.h                       |   1 -
 include/configs/rut.h                              |   1 -
 include/configs/s5p_goni.h                         |   3 -
 include/configs/sandbox.h                          |   1 -
 include/configs/sbc8349.h                          |   2 -
 include/configs/sbc8548.h                          |   2 -
 include/configs/sbc8641d.h                         |   2 -
 include/configs/siemens-am33x-common.h             |   1 -
 include/configs/smartweb.h                         |   2 -
 include/configs/smdkc100.h                         |   3 -
 include/configs/snapper9260.h                      |   1 -
 include/configs/socfpga_common.h                   |   2 -
 include/configs/socrates.h                         |   4 -
 include/configs/stm32f429-discovery.h              |   2 -
 include/configs/strider.h                          |   3 -
 include/configs/stv0991.h                          |   2 -
 include/configs/sunxi-common.h                     |   2 +-
 include/configs/t3corp.h                           |   1 -
 include/configs/t4qds.h                            |   3 -
 include/configs/tam3517-common.h                   |   2 -
 include/configs/tao3530.h                          |   2 -
 include/configs/taurus.h                           |   1 -
 include/configs/tb100.h                            |   2 -
 include/configs/tbs2910.h                          |   1 -
 include/configs/tec-ng.h                           |   1 -
 include/configs/tec.h                              |   1 -
 include/configs/tegra-common.h                     |   1 -
 include/configs/thunderx_88xx.h                    |   3 -
 include/configs/ti814x_evm.h                       |   1 -
 include/configs/ti816x_evm.h                       |   1 -
 include/configs/ti_armv7_common.h                  |   1 -
 include/configs/ti_armv7_keystone2.h               |   1 -
 include/configs/tqma6.h                            |   3 -
 include/configs/trats.h                            |   1 -
 include/configs/trats2.h                           |   1 -
 include/configs/tricorder.h                        |   2 -
 include/configs/ts4800.h                           |   2 -
 include/configs/tseries.h                          |   2 -
 include/configs/uniphier.h                         |   3 -
 include/configs/usb_a9263.h                        |   1 -
 include/configs/usbarmory.h                        |   1 -
 include/configs/ve8313.h                           |   2 -
 include/configs/vexpress_aemv8a.h                  |   3 -
 include/configs/vf610twr.h                         |   1 -
 include/configs/vme8349.h                          |   2 -
 include/configs/x600.h                             |   1 -
 include/configs/x86-common.h                       |   2 -
 include/configs/xilinx_zynqmp.h                    |   1 -
 include/configs/xpedite1000.h                      |   1 -
 include/configs/xpedite517x.h                      |   3 -
 include/configs/xpedite520x.h                      |   3 -
 include/configs/xpedite537x.h                      |   3 -
 include/configs/xpedite550x.h                      |   3 -
 include/configs/zynq-common.h                      |   3 -
 include/image.h                                    |  58 ++-
 include/libfdt.h                                   |  16 +
 include/spl.h                                      |  18 +
 lib/Kconfig                                        |  20 +
 lib/Makefile                                       |   4 +-
 lib/libfdt/fdt_sw.c                                |  16 +-
 tools/Makefile                                     |   2 +-
 tools/fit_image.c                                  | 502 ++++++++++++++++++++-
 tools/imagetool.c                                  |  22 +
 tools/imagetool.h                                  |  24 +
 tools/mkimage.c                                    | 405 +++++++++--------
 1112 files changed, 3000 insertions(+), 831 deletions(-)
 create mode 100644 common/spl/spl_fit.c

-- 
2.7.0.rc3.207.g0ac5344

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

* [U-Boot] [PATCH 01/26] mkimage: Move argument processing into its own function
  2016-01-28 16:39 ` Simon Glass
  (?)
@ 2016-01-28 16:39 ` Simon Glass
  -1 siblings, 0 replies; 54+ messages in thread
From: Simon Glass @ 2016-01-28 16:39 UTC (permalink / raw)
  To: u-boot

At present main() is very long. Split out the argument processing to make
it easier to follow.

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

 tools/mkimage.c | 56 ++++++++++++++++++++++++++++++++------------------------
 1 file changed, 32 insertions(+), 24 deletions(-)

diff --git a/tools/mkimage.c b/tools/mkimage.c
index 8f8b6df..0d74a69 100644
--- a/tools/mkimage.c
+++ b/tools/mkimage.c
@@ -67,18 +67,9 @@ static void show_image_types(void)
 	fprintf(stderr, "\n");
 }
 
-int main(int argc, char **argv)
+static void process_args(int argc, char **argv)
 {
-	int ifd = -1;
-	struct stat sbuf;
 	char *ptr;
-	int retval = 0;
-	struct image_type_params *tparams = NULL;
-	int pad_len = 0;
-	int dfd;
-
-	params.cmdname = *argv;
-	params.addr = params.ep = 0;
 
 	while (--argc > 0 && **++argv == '-') {
 		while (*++*argv) {
@@ -90,7 +81,7 @@ int main(int argc, char **argv)
 				if ((--argc <= 0) ||
 					(params.arch =
 					genimg_get_arch_id (*++argv)) < 0)
-					usage ();
+					usage();
 				goto NXTARG;
 			case 'c':
 				if (--argc <= 0)
@@ -101,11 +92,11 @@ int main(int argc, char **argv)
 				if ((--argc <= 0) ||
 					(params.comp =
 					genimg_get_comp_id (*++argv)) < 0)
-					usage ();
+					usage();
 				goto NXTARG;
 			case 'D':
 				if (--argc <= 0)
-					usage ();
+					usage();
 				params.dtc = *++argv;
 				goto NXTARG;
 
@@ -113,7 +104,7 @@ int main(int argc, char **argv)
 				if ((--argc <= 0) ||
 					(params.os =
 					genimg_get_os_id (*++argv)) < 0)
-					usage ();
+					usage();
 				goto NXTARG;
 			case 'T':
 				params.type = -1;
@@ -128,7 +119,7 @@ int main(int argc, char **argv)
 				goto NXTARG;
 			case 'a':
 				if (--argc <= 0)
-					usage ();
+					usage();
 				params.addr = strtoul (*++argv, &ptr, 16);
 				if (*ptr) {
 					fprintf (stderr,
@@ -139,13 +130,13 @@ int main(int argc, char **argv)
 				goto NXTARG;
 			case 'd':
 				if (--argc <= 0)
-					usage ();
+					usage();
 				params.datafile = *++argv;
 				params.dflag = 1;
 				goto NXTARG;
 			case 'e':
 				if (--argc <= 0)
-					usage ();
+					usage();
 				params.ep = strtoul (*++argv, &ptr, 16);
 				if (*ptr) {
 					fprintf (stderr,
@@ -157,7 +148,7 @@ int main(int argc, char **argv)
 				goto NXTARG;
 			case 'f':
 				if (--argc <= 0)
-					usage ();
+					usage();
 				params.datafile = *++argv;
 				/* no break */
 			case 'F':
@@ -180,7 +171,7 @@ int main(int argc, char **argv)
 				goto NXTARG;
 			case 'n':
 				if (--argc <= 0)
-					usage ();
+					usage();
 				params.imagename = *++argv;
 				goto NXTARG;
 			case 'r':
@@ -208,14 +199,33 @@ int main(int argc, char **argv)
 				params.xflag++;
 				break;
 			default:
-				usage ();
+				usage();
 			}
 		}
 NXTARG:		;
 	}
 
 	if (argc != 1)
-		usage ();
+		usage();
+	params.imagefile = *argv;
+}
+
+
+int main(int argc, char **argv)
+{
+	int ifd = -1;
+	struct stat sbuf;
+	char *ptr;
+	int retval = 0;
+	struct image_type_params *tparams = NULL;
+	int pad_len = 0;
+	int dfd;
+
+	params.cmdname = *argv;
+	params.addr = 0;
+	params.ep = 0;
+
+	process_args(argc, argv);
 
 	/* set tparams as per input type_id */
 	tparams = imagetool_get_type(params.type);
@@ -231,7 +241,7 @@ NXTARG:		;
 	 */
 	if (tparams->check_params)
 		if (tparams->check_params (&params))
-			usage ();
+			usage();
 
 	if (!params.eflag) {
 		params.ep = params.addr;
@@ -240,8 +250,6 @@ NXTARG:		;
 			params.ep += tparams->header_size;
 	}
 
-	params.imagefile = *argv;
-
 	if (params.fflag){
 		if (tparams->fflag_handle)
 			/*
-- 
2.7.0.rc3.207.g0ac5344

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

* [U-Boot] [PATCH 02/26] mkimage: Convert to use getopt()
  2016-01-28 16:39 ` Simon Glass
  (?)
  (?)
@ 2016-01-28 16:39 ` Simon Glass
  -1 siblings, 0 replies; 54+ messages in thread
From: Simon Glass @ 2016-01-28 16:39 UTC (permalink / raw)
  To: u-boot

The current way of parsing arguments is a bit clumsy. It seems better to
use getopt() which is commonly used for this purpose.

Convert the code to use getopt() and make a few minor adjustments as needed.

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

 tools/mkimage.c | 233 ++++++++++++++++++++++++--------------------------------
 1 file changed, 101 insertions(+), 132 deletions(-)

diff --git a/tools/mkimage.c b/tools/mkimage.c
index 0d74a69..97ab05a 100644
--- a/tools/mkimage.c
+++ b/tools/mkimage.c
@@ -70,144 +70,113 @@ static void show_image_types(void)
 static void process_args(int argc, char **argv)
 {
 	char *ptr;
-
-	while (--argc > 0 && **++argv == '-') {
-		while (*++*argv) {
-			switch (**argv) {
-			case 'l':
-				params.lflag = 1;
-				break;
-			case 'A':
-				if ((--argc <= 0) ||
-					(params.arch =
-					genimg_get_arch_id (*++argv)) < 0)
-					usage();
-				goto NXTARG;
-			case 'c':
-				if (--argc <= 0)
-					usage();
-				params.comment = *++argv;
-				goto NXTARG;
-			case 'C':
-				if ((--argc <= 0) ||
-					(params.comp =
-					genimg_get_comp_id (*++argv)) < 0)
-					usage();
-				goto NXTARG;
-			case 'D':
-				if (--argc <= 0)
-					usage();
-				params.dtc = *++argv;
-				goto NXTARG;
-
-			case 'O':
-				if ((--argc <= 0) ||
-					(params.os =
-					genimg_get_os_id (*++argv)) < 0)
-					usage();
-				goto NXTARG;
-			case 'T':
-				params.type = -1;
-				if (--argc >= 0 && argv[1]) {
-					params.type =
-						genimg_get_type_id(*++argv);
-				}
-				if (params.type < 0) {
-					show_image_types();
-					usage();
-				}
-				goto NXTARG;
-			case 'a':
-				if (--argc <= 0)
-					usage();
-				params.addr = strtoul (*++argv, &ptr, 16);
-				if (*ptr) {
-					fprintf (stderr,
-						"%s: invalid load address %s\n",
-						params.cmdname, *argv);
-					exit (EXIT_FAILURE);
-				}
-				goto NXTARG;
-			case 'd':
-				if (--argc <= 0)
-					usage();
-				params.datafile = *++argv;
-				params.dflag = 1;
-				goto NXTARG;
-			case 'e':
-				if (--argc <= 0)
-					usage();
-				params.ep = strtoul (*++argv, &ptr, 16);
-				if (*ptr) {
-					fprintf (stderr,
-						"%s: invalid entry point %s\n",
-						params.cmdname, *argv);
-					exit (EXIT_FAILURE);
-				}
-				params.eflag = 1;
-				goto NXTARG;
-			case 'f':
-				if (--argc <= 0)
-					usage();
-				params.datafile = *++argv;
-				/* no break */
-			case 'F':
-				/*
-				 * The flattened image tree (FIT) format
-				 * requires a flattened device tree image type
-				 */
-				params.type = IH_TYPE_FLATDT;
-				params.fflag = 1;
-				goto NXTARG;
-			case 'k':
-				if (--argc <= 0)
-					usage();
-				params.keydir = *++argv;
-				goto NXTARG;
-			case 'K':
-				if (--argc <= 0)
-					usage();
-				params.keydest = *++argv;
-				goto NXTARG;
-			case 'n':
-				if (--argc <= 0)
-					usage();
-				params.imagename = *++argv;
-				goto NXTARG;
-			case 'r':
-				params.require_keys = 1;
-				break;
-			case 'R':
-				if (--argc <= 0)
-					usage();
-				/*
-				 * This entry is for the second configuration
-				 * file, if only one is not enough.
-				 */
-				params.imagename2 = *++argv;
-				goto NXTARG;
-			case 's':
-				params.skipcpy = 1;
-				break;
-			case 'v':
-				params.vflag++;
-				break;
-			case 'V':
-				printf("mkimage version %s\n", PLAIN_VERSION);
-				exit(EXIT_SUCCESS);
-			case 'x':
-				params.xflag++;
-				break;
-			default:
+	int opt;
+
+	while ((opt = getopt(argc, argv,
+			     "a:A:cC:d:D:e:f:Fk:K:ln:O:rR:sT:vVx")) != -1) {
+		switch (opt) {
+		case 'l':
+			params.lflag = 1;
+			break;
+		case 'A':
+			params.arch = genimg_get_arch_id(optarg);
+			if (params.arch < 0)
+				usage();
+			break;
+		case 'c':
+			params.comment = optarg;
+			break;
+		case 'C':
+			params.comp = genimg_get_comp_id(optarg);
+			if (params.comp < 0)
+				usage();
+			break;
+		case 'D':
+			params.dtc = optarg;
+			break;
+		case 'O':
+			params.os = genimg_get_os_id(optarg);
+			if (params.os < 0)
+				usage();
+			break;
+		case 'T':
+			params.type = genimg_get_type_id(optarg);
+			if (params.type < 0) {
+				show_image_types();
 				usage();
 			}
+			break;
+		case 'a':
+			params.addr = strtoul(optarg, &ptr, 16);
+			if (*ptr) {
+				fprintf(stderr, "%s: invalid load address %s\n",
+					params.cmdname, optarg);
+				exit(EXIT_FAILURE);
+			}
+			break;
+		case 'd':
+			params.datafile = optarg;
+			params.dflag = 1;
+			break;
+		case 'e':
+			params.ep = strtoul(optarg, &ptr, 16);
+			if (*ptr) {
+				fprintf(stderr, "%s: invalid entry point %s\n",
+					params.cmdname, optarg);
+				exit(EXIT_FAILURE);
+			}
+			params.eflag = 1;
+			break;
+		case 'f':
+			params.datafile = optarg;
+			/* no break */
+		case 'F':
+			/*
+			 * The flattened image tree (FIT) format
+			 * requires a flattened device tree image type
+			 */
+			params.type = IH_TYPE_FLATDT;
+			params.fflag = 1;
+			break;
+		case 'k':
+			params.keydir = optarg;
+			break;
+		case 'K':
+			params.keydest = optarg;
+			break;
+		case 'n':
+			params.imagename = optarg;
+			break;
+		case 'r':
+			params.require_keys = 1;
+			break;
+		case 'R':
+			/*
+			 * This entry is for the second configuration
+			 * file, if only one is not enough.
+			 */
+			params.imagename2 = optarg;
+			break;
+		case 's':
+			params.skipcpy = 1;
+			break;
+		case 'v':
+			params.vflag++;
+			break;
+		case 'V':
+			printf("mkimage version %s\n", PLAIN_VERSION);
+			exit(EXIT_SUCCESS);
+		case 'x':
+			params.xflag++;
+			break;
+		default:
+			usage();
 		}
-NXTARG:		;
 	}
 
-	if (argc != 1)
+	if (optind >= argc)
 		usage();
-	params.imagefile = *argv;
+	params.imagefile = argv[optind];
 }
 
 
-- 
2.7.0.rc3.207.g0ac5344

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

* [U-Boot] [PATCH 03/26] mkimage: Sort the option processing code by option
  2016-01-28 16:39 ` Simon Glass
                   ` (2 preceding siblings ...)
  (?)
@ 2016-01-28 16:39 ` Simon Glass
  -1 siblings, 0 replies; 54+ messages in thread
From: Simon Glass @ 2016-01-28 16:39 UTC (permalink / raw)
  To: u-boot

Adjust the code so that option alphabetical order matches the order in the
switch() statement. This makes it easier to find options.

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

 tools/mkimage.c | 50 +++++++++++++++++++++++++-------------------------
 1 file changed, 25 insertions(+), 25 deletions(-)

diff --git a/tools/mkimage.c b/tools/mkimage.c
index 97ab05a..00391d0 100644
--- a/tools/mkimage.c
+++ b/tools/mkimage.c
@@ -75,8 +75,13 @@ static void process_args(int argc, char **argv)
 	while ((opt = getopt(argc, argv,
 			     "a:A:cC:d:D:e:f:Fk:K:ln:O:rR:sT:vVx")) != -1) {
 		switch (opt) {
-		case 'l':
-			params.lflag = 1;
+		case 'a':
+			params.addr = strtoul(optarg, &ptr, 16);
+			if (*ptr) {
+				fprintf(stderr, "%s: invalid load address %s\n",
+					params.cmdname, optarg);
+				exit(EXIT_FAILURE);
+			}
 			break;
 		case 'A':
 			params.arch = genimg_get_arch_id(optarg);
@@ -91,33 +96,13 @@ static void process_args(int argc, char **argv)
 			if (params.comp < 0)
 				usage();
 			break;
-		case 'D':
-			params.dtc = optarg;
-			break;
-		case 'O':
-			params.os = genimg_get_os_id(optarg);
-			if (params.os < 0)
-				usage();
-			break;
-		case 'T':
-			params.type = genimg_get_type_id(optarg);
-			if (params.type < 0) {
-				show_image_types();
-				usage();
-			}
-			break;
-		case 'a':
-			params.addr = strtoul(optarg, &ptr, 16);
-			if (*ptr) {
-				fprintf(stderr, "%s: invalid load address %s\n",
-					params.cmdname, optarg);
-				exit(EXIT_FAILURE);
-			}
-			break;
 		case 'd':
 			params.datafile = optarg;
 			params.dflag = 1;
 			break;
+		case 'D':
+			params.dtc = optarg;
+			break;
 		case 'e':
 			params.ep = strtoul(optarg, &ptr, 16);
 			if (*ptr) {
@@ -144,9 +129,17 @@ static void process_args(int argc, char **argv)
 		case 'K':
 			params.keydest = optarg;
 			break;
+		case 'l':
+			params.lflag = 1;
+			break;
 		case 'n':
 			params.imagename = optarg;
 			break;
+		case 'O':
+			params.os = genimg_get_os_id(optarg);
+			if (params.os < 0)
+				usage();
+			break;
 		case 'r':
 			params.require_keys = 1;
 			break;
@@ -160,6 +153,13 @@ static void process_args(int argc, char **argv)
 		case 's':
 			params.skipcpy = 1;
 			break;
+		case 'T':
+			params.type = genimg_get_type_id(optarg);
+			if (params.type < 0) {
+				show_image_types();
+				usage();
+			}
+			break;
 		case 'v':
 			params.vflag++;
 			break;
-- 
2.7.0.rc3.207.g0ac5344

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

* [U-Boot] [PATCH 04/26] mkimage: Move usage() up to the top
  2016-01-28 16:39 ` Simon Glass
                   ` (3 preceding siblings ...)
  (?)
@ 2016-01-28 16:39 ` Simon Glass
  -1 siblings, 0 replies; 54+ messages in thread
From: Simon Glass @ 2016-01-28 16:39 UTC (permalink / raw)
  To: u-boot

To avoid a forward declaration, move the usage() function higher in the
file.

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

 tools/mkimage.c | 81 ++++++++++++++++++++++++++++++---------------------------
 1 file changed, 42 insertions(+), 39 deletions(-)

diff --git a/tools/mkimage.c b/tools/mkimage.c
index 00391d0..cf4f8db 100644
--- a/tools/mkimage.c
+++ b/tools/mkimage.c
@@ -13,7 +13,6 @@
 #include <version.h>
 
 static void copy_file(int, const char *, int);
-static void usage(void);
 
 /* parameters initialized by core will be used by the image type code */
 struct image_tool_params params = {
@@ -67,6 +66,48 @@ static void show_image_types(void)
 	fprintf(stderr, "\n");
 }
 
+static void usage(void)
+{
+	fprintf(stderr, "Usage: %s -l image\n"
+			 "          -l ==> list image header information\n",
+		params.cmdname);
+	fprintf(stderr,
+		"       %s [-x] -A arch -O os -T type -C comp -a addr -e ep -n name -d data_file[:data_file...] image\n"
+		"          -A ==> set architecture to 'arch'\n"
+		"          -O ==> set operating system to 'os'\n"
+		"          -T ==> set image type to 'type'\n"
+		"          -C ==> set compression type 'comp'\n"
+		"          -a ==> set load address to 'addr' (hex)\n"
+		"          -e ==> set entry point to 'ep' (hex)\n"
+		"          -n ==> set image name to 'name'\n"
+		"          -d ==> use image data from 'datafile'\n"
+		"          -x ==> set XIP (execute in place)\n",
+		params.cmdname);
+	fprintf(stderr,
+		"       %s [-D dtc_options] [-f fit-image.its|-F] fit-image\n",
+		params.cmdname);
+	fprintf(stderr,
+		"          -D => set all options for device tree compiler\n"
+		"          -f => input filename for FIT source\n");
+#ifdef CONFIG_FIT_SIGNATURE
+	fprintf(stderr,
+		"Signing / verified boot options: [-k keydir] [-K dtb] [ -c <comment>] [-r]\n"
+		"          -k => set directory containing private keys\n"
+		"          -K => write public keys to this .dtb file\n"
+		"          -c => add comment in signature node\n"
+		"          -F => re-sign existing FIT image\n"
+		"          -r => mark keys used as 'required' in dtb\n");
+#else
+	fprintf(stderr,
+		"Signing / verified boot not supported (CONFIG_FIT_SIGNATURE undefined)\n");
+#endif
+	fprintf(stderr, "       %s -V ==> print version information and exit\n",
+		params.cmdname);
+	fprintf(stderr, "Use -T to see a list of available image types\n");
+
+	exit(EXIT_FAILURE);
+}
+
 static void process_args(int argc, char **argv)
 {
 	char *ptr;
@@ -556,41 +597,3 @@ copy_file (int ifd, const char *datafile, int pad)
 	(void) munmap((void *)ptr, sbuf.st_size);
 	(void) close (dfd);
 }
-
-static void usage(void)
-{
-	fprintf (stderr, "Usage: %s -l image\n"
-			 "          -l ==> list image header information\n",
-		params.cmdname);
-	fprintf (stderr, "       %s [-x] -A arch -O os -T type -C comp "
-			 "-a addr -e ep -n name -d data_file[:data_file...] image\n"
-			 "          -A ==> set architecture to 'arch'\n"
-			 "          -O ==> set operating system to 'os'\n"
-			 "          -T ==> set image type to 'type'\n"
-			 "          -C ==> set compression type 'comp'\n"
-			 "          -a ==> set load address to 'addr' (hex)\n"
-			 "          -e ==> set entry point to 'ep' (hex)\n"
-			 "          -n ==> set image name to 'name'\n"
-			 "          -d ==> use image data from 'datafile'\n"
-			 "          -x ==> set XIP (execute in place)\n",
-		params.cmdname);
-	fprintf(stderr, "       %s [-D dtc_options] [-f fit-image.its|-F] fit-image\n",
-		params.cmdname);
-	fprintf(stderr, "          -D => set all options for device tree compiler\n"
-			"          -f => input filename for FIT source\n");
-#ifdef CONFIG_FIT_SIGNATURE
-	fprintf(stderr, "Signing / verified boot options: [-k keydir] [-K dtb] [ -c <comment>] [-r]\n"
-			"          -k => set directory containing private keys\n"
-			"          -K => write public keys to this .dtb file\n"
-			"          -c => add comment in signature node\n"
-			"          -F => re-sign existing FIT image\n"
-			"          -r => mark keys used as 'required' in dtb\n");
-#else
-	fprintf(stderr, "Signing / verified boot not supported (CONFIG_FIT_SIGNATURE undefined)\n");
-#endif
-	fprintf (stderr, "       %s -V ==> print version information and exit\n",
-		params.cmdname);
-	fprintf(stderr, "Use -T to see a list of available image types\n");
-
-	exit (EXIT_FAILURE);
-}
-- 
2.7.0.rc3.207.g0ac5344

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

* [U-Boot] [PATCH 05/26] mkimage: Show an error message when usage() is called
  2016-01-28 16:39 ` Simon Glass
                   ` (4 preceding siblings ...)
  (?)
@ 2016-01-28 16:39 ` Simon Glass
  -1 siblings, 0 replies; 54+ messages in thread
From: Simon Glass @ 2016-01-28 16:39 UTC (permalink / raw)
  To: u-boot

Sometimes incorrect arguments are supplied but the reason is not obvious to
the user. Add some helpful messages.

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

 tools/mkimage.c | 17 +++++++++--------
 1 file changed, 9 insertions(+), 8 deletions(-)

diff --git a/tools/mkimage.c b/tools/mkimage.c
index cf4f8db..5aae748 100644
--- a/tools/mkimage.c
+++ b/tools/mkimage.c
@@ -66,8 +66,9 @@ static void show_image_types(void)
 	fprintf(stderr, "\n");
 }
 
-static void usage(void)
+static void usage(const char *msg)
 {
+	fprintf(stderr, "Error: %s\n", msg);
 	fprintf(stderr, "Usage: %s -l image\n"
 			 "          -l ==> list image header information\n",
 		params.cmdname);
@@ -127,7 +128,7 @@ static void process_args(int argc, char **argv)
 		case 'A':
 			params.arch = genimg_get_arch_id(optarg);
 			if (params.arch < 0)
-				usage();
+				usage("Invalid architecture");
 			break;
 		case 'c':
 			params.comment = optarg;
@@ -135,7 +136,7 @@ static void process_args(int argc, char **argv)
 		case 'C':
 			params.comp = genimg_get_comp_id(optarg);
 			if (params.comp < 0)
-				usage();
+				usage("Invalid compression type");
 			break;
 		case 'd':
 			params.datafile = optarg;
@@ -179,7 +180,7 @@ static void process_args(int argc, char **argv)
 		case 'O':
 			params.os = genimg_get_os_id(optarg);
 			if (params.os < 0)
-				usage();
+				usage("Invalid operating system");
 			break;
 		case 'r':
 			params.require_keys = 1;
@@ -198,7 +199,7 @@ static void process_args(int argc, char **argv)
 			params.type = genimg_get_type_id(optarg);
 			if (params.type < 0) {
 				show_image_types();
-				usage();
+				usage("Invalid image type");
 			}
 			break;
 		case 'v':
@@ -211,12 +212,12 @@ static void process_args(int argc, char **argv)
 			params.xflag++;
 			break;
 		default:
-			usage();
+			usage("Invalid option");
 		}
 	}
 
 	if (optind >= argc)
-		usage();
+		usage("Missing output filename");
 	params.imagefile = argv[optind];
 }
 
@@ -251,7 +252,7 @@ int main(int argc, char **argv)
 	 */
 	if (tparams->check_params)
 		if (tparams->check_params (&params))
-			usage();
+			usage("Bad parameters for image type");
 
 	if (!params.eflag) {
 		params.ep = params.addr;
-- 
2.7.0.rc3.207.g0ac5344

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

* [U-Boot] [PATCH 06/26] mkimage: Make 'params' static
  2016-01-28 16:39 ` Simon Glass
                   ` (5 preceding siblings ...)
  (?)
@ 2016-01-28 16:39 ` Simon Glass
  -1 siblings, 0 replies; 54+ messages in thread
From: Simon Glass @ 2016-01-28 16:39 UTC (permalink / raw)
  To: u-boot

This is not used outside mkimage.c, so make this variable static.

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

 tools/mkimage.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tools/mkimage.c b/tools/mkimage.c
index 5aae748..b8293f6 100644
--- a/tools/mkimage.c
+++ b/tools/mkimage.c
@@ -15,7 +15,7 @@
 static void copy_file(int, const char *, int);
 
 /* parameters initialized by core will be used by the image type code */
-struct image_tool_params params = {
+static struct image_tool_params params = {
 	.os = IH_OS_LINUX,
 	.arch = IH_ARCH_PPC,
 	.type = IH_TYPE_KERNEL,
-- 
2.7.0.rc3.207.g0ac5344

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

* [U-Boot] [PATCH 07/26] libfdt: Add a function to write a property placeholder
@ 2016-01-28 16:39   ` Simon Glass
  0 siblings, 0 replies; 54+ messages in thread
From: Simon Glass @ 2016-01-28 16:39 UTC (permalink / raw)
  To: u-boot

The existing function to add a new property to a tree being built requires
that the entire contents of the new property be passed in. For some
applications it is more convenient to be able to add the property contents
later, perhaps by reading from a file. This avoids double-buffering of the
contents.

Add a new function to support this and adust the existing fdt_property() to
use it.

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

 include/libfdt.h    | 16 ++++++++++++++++
 lib/libfdt/fdt_sw.c | 16 ++++++++++++++--
 2 files changed, 30 insertions(+), 2 deletions(-)

diff --git a/include/libfdt.h b/include/libfdt.h
index e48c21a..c3f37ee 100644
--- a/include/libfdt.h
+++ b/include/libfdt.h
@@ -1181,6 +1181,22 @@ static inline int fdt_property_cell(void *fdt, const char *name, uint32_t val)
 {
 	return fdt_property_u32(fdt, name, val);
 }
+
+/**
+ * fdt_property_val - add a new property and return a pointer to its value
+ *
+ * @fdt: pointer to the device tree blob
+ * @name: name of property to add
+ * @len: length of property value in bytes
+ * @valp: returns a pointer to where where the value should be placed
+ *
+ * returns:
+ *	0, on success
+ *	-FDT_ERR_BADMAGIC,
+ *	-FDT_ERR_NOSPACE, standard meanings
+ */
+int fdt_property_val(void *fdt, const char *name, int len, void **valp);
+
 #define fdt_property_string(fdt, name, str) \
 	fdt_property(fdt, name, str, strlen(str)+1)
 int fdt_end_node(void *fdt);
diff --git a/lib/libfdt/fdt_sw.c b/lib/libfdt/fdt_sw.c
index 320a914..9c1df3d 100644
--- a/lib/libfdt/fdt_sw.c
+++ b/lib/libfdt/fdt_sw.c
@@ -175,7 +175,7 @@ static int _fdt_find_add_string(void *fdt, const char *s)
 	return offset;
 }
 
-int fdt_property(void *fdt, const char *name, const void *val, int len)
+int fdt_property_val(void *fdt, const char *name, int len, void **valp)
 {
 	struct fdt_property *prop;
 	int nameoff;
@@ -193,7 +193,19 @@ int fdt_property(void *fdt, const char *name, const void *val, int len)
 	prop->tag = cpu_to_fdt32(FDT_PROP);
 	prop->nameoff = cpu_to_fdt32(nameoff);
 	prop->len = cpu_to_fdt32(len);
-	memcpy(prop->data, val, len);
+	*valp = prop->data;
+	return 0;
+}
+
+int fdt_property(void *fdt, const char *name, const void *val, int len)
+{
+	void *ptr;
+	int ret;
+
+	ret = fdt_property_val(fdt, name, len, &ptr);
+	if (ret)
+		return ret;
+	memcpy(ptr, val, len);
 	return 0;
 }
 
-- 
2.7.0.rc3.207.g0ac5344

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

* [PATCH 07/26] libfdt: Add a function to write a property placeholder
@ 2016-01-28 16:39   ` Simon Glass
  0 siblings, 0 replies; 54+ messages in thread
From: Simon Glass @ 2016-01-28 16:39 UTC (permalink / raw)
  To: U-Boot Mailing List
  Cc: Hans de Goede, Tom Rini, Simon Glass, Devicetree Compiler

The existing function to add a new property to a tree being built requires
that the entire contents of the new property be passed in. For some
applications it is more convenient to be able to add the property contents
later, perhaps by reading from a file. This avoids double-buffering of the
contents.

Add a new function to support this and adust the existing fdt_property() to
use it.

Signed-off-by: Simon Glass <sjg-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org>
---

 include/libfdt.h    | 16 ++++++++++++++++
 lib/libfdt/fdt_sw.c | 16 ++++++++++++++--
 2 files changed, 30 insertions(+), 2 deletions(-)

diff --git a/include/libfdt.h b/include/libfdt.h
index e48c21a..c3f37ee 100644
--- a/include/libfdt.h
+++ b/include/libfdt.h
@@ -1181,6 +1181,22 @@ static inline int fdt_property_cell(void *fdt, const char *name, uint32_t val)
 {
 	return fdt_property_u32(fdt, name, val);
 }
+
+/**
+ * fdt_property_val - add a new property and return a pointer to its value
+ *
+ * @fdt: pointer to the device tree blob
+ * @name: name of property to add
+ * @len: length of property value in bytes
+ * @valp: returns a pointer to where where the value should be placed
+ *
+ * returns:
+ *	0, on success
+ *	-FDT_ERR_BADMAGIC,
+ *	-FDT_ERR_NOSPACE, standard meanings
+ */
+int fdt_property_val(void *fdt, const char *name, int len, void **valp);
+
 #define fdt_property_string(fdt, name, str) \
 	fdt_property(fdt, name, str, strlen(str)+1)
 int fdt_end_node(void *fdt);
diff --git a/lib/libfdt/fdt_sw.c b/lib/libfdt/fdt_sw.c
index 320a914..9c1df3d 100644
--- a/lib/libfdt/fdt_sw.c
+++ b/lib/libfdt/fdt_sw.c
@@ -175,7 +175,7 @@ static int _fdt_find_add_string(void *fdt, const char *s)
 	return offset;
 }
 
-int fdt_property(void *fdt, const char *name, const void *val, int len)
+int fdt_property_val(void *fdt, const char *name, int len, void **valp)
 {
 	struct fdt_property *prop;
 	int nameoff;
@@ -193,7 +193,19 @@ int fdt_property(void *fdt, const char *name, const void *val, int len)
 	prop->tag = cpu_to_fdt32(FDT_PROP);
 	prop->nameoff = cpu_to_fdt32(nameoff);
 	prop->len = cpu_to_fdt32(len);
-	memcpy(prop->data, val, len);
+	*valp = prop->data;
+	return 0;
+}
+
+int fdt_property(void *fdt, const char *name, const void *val, int len)
+{
+	void *ptr;
+	int ret;
+
+	ret = fdt_property_val(fdt, name, len, &ptr);
+	if (ret)
+		return ret;
+	memcpy(ptr, val, len);
 	return 0;
 }
 
-- 
2.7.0.rc3.207.g0ac5344

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

* [U-Boot] [PATCH 08/26] Correct defconfig ordering
  2016-01-28 16:39 ` Simon Glass
                   ` (7 preceding siblings ...)
  (?)
@ 2016-01-28 16:39 ` Simon Glass
  -1 siblings, 0 replies; 54+ messages in thread
From: Simon Glass @ 2016-01-28 16:39 UTC (permalink / raw)
  To: u-boot

Various boards have the wrong Kconfig ordering now. To avoid a misleading
diff in the next patch, reorder the configuration correctly.

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

 configs/am335x_gp_evm_defconfig          |  2 +-
 configs/am437x_sk_evm_defconfig          |  6 +++---
 configs/apalis_t30_defconfig             |  1 -
 configs/bayleybay_defconfig              |  4 ++--
 configs/cgtqmx6eval_defconfig            |  4 +---
 configs/chromebook_link_defconfig        |  4 ++--
 configs/chromebox_panther_defconfig      |  4 ++--
 configs/coreboot-x86_defconfig           |  4 ++--
 configs/crownbay_defconfig               |  4 ++--
 configs/dra72_evm_defconfig              |  4 ++--
 configs/dra74_evm_defconfig              |  6 +++---
 configs/efi-x86_defconfig                |  1 -
 configs/evb-rk3036_defconfig             | 25 +++++++++++--------------
 configs/firefly-rk3288_defconfig         |  2 +-
 configs/galileo_defconfig                |  4 ++--
 configs/h8_homlet_v2_defconfig           |  6 ------
 configs/igep0020_defconfig               |  2 +-
 configs/igep0020_nand_defconfig          |  2 +-
 configs/igep0032_defconfig               |  2 +-
 configs/kylin-rk3036_defconfig           | 16 +++++++---------
 configs/ls1043aqds_defconfig             |  4 ++--
 configs/ls1043aqds_nand_defconfig        |  4 ++--
 configs/ls1043aqds_sdcard_ifc_defconfig  |  4 ++--
 configs/ls1043ardb_SECURE_BOOT_defconfig |  6 +++---
 configs/ls1043ardb_defconfig             |  6 +++---
 configs/ls1043ardb_nand_defconfig        |  6 +++---
 configs/ls1043ardb_sdcard_defconfig      |  6 +++---
 configs/minnowmax_defconfig              |  4 ++--
 configs/nsa310s_defconfig                |  8 ++++----
 configs/orangepi_pc_defconfig            |  2 +-
 configs/p2371-2180_defconfig             |  2 +-
 configs/qemu-x86_defconfig               |  4 ++--
 configs/rock2_defconfig                  |  2 +-
 configs/sandbox_defconfig                |  8 ++++----
 configs/socfpga_arria5_defconfig         |  7 +++----
 configs/socfpga_cyclone5_defconfig       |  7 +++----
 configs/socfpga_de0_nano_soc_defconfig   |  3 +--
 configs/socfpga_mcvevk_defconfig         |  3 +--
 configs/socfpga_sockit_defconfig         |  5 ++---
 configs/socfpga_socrates_defconfig       |  5 ++---
 configs/socfpga_sr1500_defconfig         |  9 ++++-----
 configs/uniphier_ld4_sld8_defconfig      |  1 -
 configs/uniphier_pro4_defconfig          |  1 -
 configs/uniphier_pro5_defconfig          |  1 -
 configs/uniphier_pxs2_ld6b_defconfig     |  1 -
 configs/zynq_zybo_defconfig              |  4 ++--
 46 files changed, 95 insertions(+), 121 deletions(-)

diff --git a/configs/am335x_gp_evm_defconfig b/configs/am335x_gp_evm_defconfig
index 49461e2..2ebc3cb 100644
--- a/configs/am335x_gp_evm_defconfig
+++ b/configs/am335x_gp_evm_defconfig
@@ -15,6 +15,6 @@ CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_WINBOND=y
 CONFIG_DM_ETH=y
 CONFIG_SYS_NS16550=y
-CONFIG_RSA=y
 CONFIG_TIMER=y
 CONFIG_OMAP_TIMER=y
+CONFIG_RSA=y
diff --git a/configs/am437x_sk_evm_defconfig b/configs/am437x_sk_evm_defconfig
index 9eb41f9..5af748d 100644
--- a/configs/am437x_sk_evm_defconfig
+++ b/configs/am437x_sk_evm_defconfig
@@ -1,6 +1,8 @@
 CONFIG_ARM=y
 CONFIG_TARGET_AM43XX_EVM=y
 CONFIG_DM_SERIAL=y
+CONFIG_DM_SPI=y
+CONFIG_DM_SPI_FLASH=y
 CONFIG_DM_GPIO=y
 CONFIG_SPL_STACK_R_ADDR=0x82000000
 CONFIG_DEFAULT_DEVICE_TREE="am437x-sk-evm"
@@ -15,11 +17,9 @@ CONFIG_OF_CONTROL=y
 CONFIG_DM=y
 CONFIG_DM_MMC=y
 CONFIG_SPI_FLASH=y
+CONFIG_SPI_FLASH_BAR=y
 CONFIG_SPI_FLASH_MACRONIX=y
 CONFIG_SYS_NS16550=y
 CONFIG_TI_QSPI=y
-CONFIG_DM_SPI=y
-CONFIG_DM_SPI_FLASH=y
-CONFIG_SPI_FLASH_BAR=y
 CONFIG_TIMER=y
 CONFIG_OMAP_TIMER=y
diff --git a/configs/apalis_t30_defconfig b/configs/apalis_t30_defconfig
index f939bdb..4c363c7 100644
--- a/configs/apalis_t30_defconfig
+++ b/configs/apalis_t30_defconfig
@@ -11,7 +11,6 @@ CONFIG_SYS_PROMPT="Apalis T30 # "
 # CONFIG_CMD_FPGA is not set
 CONFIG_CMD_GPIO=y
 # CONFIG_CMD_NFS is not set
-CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_PCI_TEGRA=y
 CONFIG_SYS_NS16550=y
diff --git a/configs/bayleybay_defconfig b/configs/bayleybay_defconfig
index 0879d1e..4f0c41f 100644
--- a/configs/bayleybay_defconfig
+++ b/configs/bayleybay_defconfig
@@ -9,14 +9,14 @@ CONFIG_HAVE_VGA_BIOS=y
 CONFIG_VGA_BIOS_ADDR=0xfffa0000
 CONFIG_GENERATE_PIRQ_TABLE=y
 CONFIG_GENERATE_MP_TABLE=y
+CONFIG_BOOTSTAGE=y
+CONFIG_BOOTSTAGE_REPORT=y
 CONFIG_CMD_CPU=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
 # CONFIG_CMD_NFS is not set
-CONFIG_BOOTSTAGE=y
-CONFIG_BOOTSTAGE_REPORT=y
 CONFIG_CMD_BOOTSTAGE=y
 CONFIG_OF_CONTROL=y
 CONFIG_CPU=y
diff --git a/configs/cgtqmx6eval_defconfig b/configs/cgtqmx6eval_defconfig
index 02008ea..a0c146c 100644
--- a/configs/cgtqmx6eval_defconfig
+++ b/configs/cgtqmx6eval_defconfig
@@ -3,10 +3,8 @@ CONFIG_ARCH_MX6=y
 CONFIG_TARGET_CGTQMX6EVAL=y
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/imx-common/spl_sd.cfg,SPL,MX6QDL"
+CONFIG_SYS_PROMPT="CGT-QMX6-Quad U-Boot > "
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
-CONFIG_SYS_PROMPT="CGT-QMX6-Quad U-Boot > "
 CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
-CONFIG_DM=y
-CONFIG_DM_THERMAL=y
diff --git a/configs/chromebook_link_defconfig b/configs/chromebook_link_defconfig
index 1cee7d4..2539c48 100644
--- a/configs/chromebook_link_defconfig
+++ b/configs/chromebook_link_defconfig
@@ -8,14 +8,14 @@ CONFIG_HAVE_MRC=y
 CONFIG_ENABLE_MRC_CACHE=y
 CONFIG_SMP=y
 CONFIG_HAVE_VGA_BIOS=y
+CONFIG_BOOTSTAGE=y
+CONFIG_BOOTSTAGE_REPORT=y
 CONFIG_CMD_CPU=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
 # CONFIG_CMD_NFS is not set
-CONFIG_BOOTSTAGE=y
-CONFIG_BOOTSTAGE_REPORT=y
 CONFIG_CMD_BOOTSTAGE=y
 CONFIG_CMD_TPM=y
 CONFIG_CMD_TPM_TEST=y
diff --git a/configs/chromebox_panther_defconfig b/configs/chromebox_panther_defconfig
index e4a3821..fb8224c 100644
--- a/configs/chromebox_panther_defconfig
+++ b/configs/chromebox_panther_defconfig
@@ -5,13 +5,13 @@ CONFIG_TARGET_CHROMEBOX_PANTHER=y
 CONFIG_HAVE_MRC=y
 CONFIG_ENABLE_MRC_CACHE=y
 CONFIG_HAVE_VGA_BIOS=y
+CONFIG_BOOTSTAGE=y
+CONFIG_BOOTSTAGE_REPORT=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
 # CONFIG_CMD_NFS is not set
-CONFIG_BOOTSTAGE=y
-CONFIG_BOOTSTAGE_REPORT=y
 CONFIG_CMD_BOOTSTAGE=y
 CONFIG_CMD_TPM=y
 CONFIG_CMD_TPM_TEST=y
diff --git a/configs/coreboot-x86_defconfig b/configs/coreboot-x86_defconfig
index fda0db2..b070a05 100644
--- a/configs/coreboot-x86_defconfig
+++ b/configs/coreboot-x86_defconfig
@@ -1,12 +1,12 @@
 CONFIG_X86=y
 CONFIG_VENDOR_COREBOOT=y
 CONFIG_TARGET_COREBOOT=y
+CONFIG_BOOTSTAGE=y
+CONFIG_BOOTSTAGE_REPORT=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_SETEXPR is not set
 # CONFIG_CMD_NFS is not set
-CONFIG_BOOTSTAGE=y
-CONFIG_BOOTSTAGE_REPORT=y
 CONFIG_CMD_BOOTSTAGE=y
 CONFIG_CMD_TPM=y
 CONFIG_CMD_TPM_TEST=y
diff --git a/configs/crownbay_defconfig b/configs/crownbay_defconfig
index 6bc4b8d..6de86a5 100644
--- a/configs/crownbay_defconfig
+++ b/configs/crownbay_defconfig
@@ -7,14 +7,14 @@ CONFIG_MAX_CPUS=2
 CONFIG_HAVE_VGA_BIOS=y
 CONFIG_GENERATE_PIRQ_TABLE=y
 CONFIG_GENERATE_MP_TABLE=y
+CONFIG_BOOTSTAGE=y
+CONFIG_BOOTSTAGE_REPORT=y
 CONFIG_CMD_CPU=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
 # CONFIG_CMD_NFS is not set
-CONFIG_BOOTSTAGE=y
-CONFIG_BOOTSTAGE_REPORT=y
 CONFIG_CMD_BOOTSTAGE=y
 CONFIG_OF_CONTROL=y
 CONFIG_CPU=y
diff --git a/configs/dra72_evm_defconfig b/configs/dra72_evm_defconfig
index 32d1dc1..d5b01a5 100644
--- a/configs/dra72_evm_defconfig
+++ b/configs/dra72_evm_defconfig
@@ -3,6 +3,8 @@ CONFIG_OMAP54XX=y
 CONFIG_SYS_MALLOC_F_LEN=0x2000
 CONFIG_TARGET_DRA7XX_EVM=y
 CONFIG_DM_SERIAL=y
+CONFIG_DM_SPI=y
+CONFIG_DM_SPI_FLASH=y
 CONFIG_DM_GPIO=y
 CONFIG_SPL_STACK_R_ADDR=0x82000000
 CONFIG_DEFAULT_DEVICE_TREE="dra72-evm"
@@ -20,7 +22,5 @@ CONFIG_SPI_FLASH_BAR=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_SYS_NS16550=y
 CONFIG_TI_QSPI=y
-CONFIG_DM_SPI=y
-CONFIG_DM_SPI_FLASH=y
 CONFIG_TIMER=y
 CONFIG_OMAP_TIMER=y
diff --git a/configs/dra74_evm_defconfig b/configs/dra74_evm_defconfig
index 9946261..1bd58f8 100644
--- a/configs/dra74_evm_defconfig
+++ b/configs/dra74_evm_defconfig
@@ -1,6 +1,9 @@
 CONFIG_ARM=y
 CONFIG_OMAP54XX=y
 CONFIG_TARGET_DRA7XX_EVM=y
+CONFIG_DM_SERIAL=y
+CONFIG_DM_SPI=y
+CONFIG_DM_SPI_FLASH=y
 CONFIG_DM_GPIO=y
 CONFIG_SPL_STACK_R_ADDR=0x82000000
 CONFIG_DEFAULT_DEVICE_TREE="dra7-evm"
@@ -16,10 +19,7 @@ CONFIG_DM=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_BAR=y
 CONFIG_SPI_FLASH_SPANSION=y
-CONFIG_DM_SERIAL=y
 CONFIG_SYS_NS16550=y
 CONFIG_TI_QSPI=y
-CONFIG_DM_SPI=y
-CONFIG_DM_SPI_FLASH=y
 CONFIG_TIMER=y
 CONFIG_OMAP_TIMER=y
diff --git a/configs/efi-x86_defconfig b/configs/efi-x86_defconfig
index 943ef07..d7952da 100644
--- a/configs/efi-x86_defconfig
+++ b/configs/efi-x86_defconfig
@@ -13,6 +13,5 @@ CONFIG_DEBUG_EFI_CONSOLE=y
 CONFIG_DEBUG_UART_BASE=0
 CONFIG_DEBUG_UART_CLOCK=0
 CONFIG_ICH_SPI=y
-# CONFIG_X86_SERIAL is not set
 CONFIG_TIMER=y
 CONFIG_EFI=y
diff --git a/configs/evb-rk3036_defconfig b/configs/evb-rk3036_defconfig
index c196bd6..0689e97 100644
--- a/configs/evb-rk3036_defconfig
+++ b/configs/evb-rk3036_defconfig
@@ -2,31 +2,28 @@ CONFIG_ARM=y
 CONFIG_ARCH_ROCKCHIP=y
 CONFIG_ROCKCHIP_RK3036=y
 CONFIG_TARGET_EVB_RK3036=y
+CONFIG_SPL_STACK_R_ADDR=0x80000
 CONFIG_DEFAULT_DEVICE_TREE="rk3036-sdk"
 CONFIG_SPL_STACK_R=y
-CONFIG_SPL_STACK_R_ADDR=0x80000
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_SETEXPR is not set
-CONFIG_CMD_PMIC=y
-CONFIG_CMD_REGULATOR=y
-CONFIG_CLK=y
 CONFIG_REGMAP=y
 CONFIG_SYSCON=y
-CONFIG_RESET=y
-CONFIG_LED=y
+CONFIG_CLK=y
+CONFIG_ROCKCHIP_GPIO=y
 CONFIG_SYS_I2C_ROCKCHIP=y
-CONFIG_PINCTRL=y
+CONFIG_LED=y
+CONFIG_RESET=y
+CONFIG_DM_MMC=y
 CONFIG_ROCKCHIP_DWMMC=y
+CONFIG_PINCTRL=y
 CONFIG_ROCKCHIP_3036_PINCTRL=y
-CONFIG_ROCKCHIP_GPIO=y
 CONFIG_RAM=y
-CONFIG_DM_MMC=y
-CONFIG_USE_PRIVATE_LIBGCC=y
-CONFIG_CMD_DHRYSTONE=y
-CONFIG_ERRNO_STR=y
+# CONFIG_SPL_SERIAL_PRESENT is not set
 CONFIG_DEBUG_UART=y
-CONFIG_DEBUG_UART_NS16550=y
 CONFIG_DEBUG_UART_BASE=0x20068000
 CONFIG_DEBUG_UART_CLOCK=24000000
 CONFIG_DEBUG_UART_SHIFT=2
-# CONFIG_SPL_SERIAL_PRESENT is not set
+CONFIG_USE_PRIVATE_LIBGCC=y
+CONFIG_CMD_DHRYSTONE=y
+CONFIG_ERRNO_STR=y
diff --git a/configs/firefly-rk3288_defconfig b/configs/firefly-rk3288_defconfig
index 3b29158..3d78ef7 100644
--- a/configs/firefly-rk3288_defconfig
+++ b/configs/firefly-rk3288_defconfig
@@ -35,8 +35,8 @@ CONFIG_DM_PMIC=y
 # CONFIG_SPL_PMIC_CHILDREN is not set
 CONFIG_PMIC_ACT8846=y
 CONFIG_DM_REGULATOR=y
-CONFIG_DM_REGULATOR_FIXED=y
 CONFIG_REGULATOR_ACT8846=y
+CONFIG_DM_REGULATOR_FIXED=y
 CONFIG_DM_PWM=y
 CONFIG_PWM_ROCKCHIP=y
 CONFIG_RAM=y
diff --git a/configs/galileo_defconfig b/configs/galileo_defconfig
index 925d3ee..217d500 100644
--- a/configs/galileo_defconfig
+++ b/configs/galileo_defconfig
@@ -4,13 +4,13 @@ CONFIG_DEFAULT_DEVICE_TREE="galileo"
 CONFIG_TARGET_GALILEO=y
 CONFIG_ENABLE_MRC_CACHE=y
 CONFIG_GENERATE_PIRQ_TABLE=y
+CONFIG_BOOTSTAGE=y
+CONFIG_BOOTSTAGE_REPORT=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
 # CONFIG_CMD_NFS is not set
-CONFIG_BOOTSTAGE=y
-CONFIG_BOOTSTAGE_REPORT=y
 CONFIG_CMD_BOOTSTAGE=y
 CONFIG_OF_CONTROL=y
 CONFIG_NET_RANDOM_ETHADDR=y
diff --git a/configs/h8_homlet_v2_defconfig b/configs/h8_homlet_v2_defconfig
index ecd04a6..4742aaf6 100644
--- a/configs/h8_homlet_v2_defconfig
+++ b/configs/h8_homlet_v2_defconfig
@@ -4,10 +4,7 @@ CONFIG_MACH_SUN8I_A83T=y
 CONFIG_DRAM_CLK=480
 CONFIG_DRAM_ZQ=15355
 CONFIG_DRAM_ODT_EN=y
-#CONFIG_USB0_VBUS_PIN="AXP0-VBUS-ENABLE"
-#CONFIG_USB0_VBUS_DET="AXP0-VBUS-DETECT"
 CONFIG_AXP_GPIO=y
-#CONFIG_USB_MUSB_HOST=y
 CONFIG_DEFAULT_DEVICE_TREE="sun8i-a83t-allwinner-h8homlet-v2"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
@@ -15,7 +12,4 @@ CONFIG_SPL=y
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
 CONFIG_AXP_DCDC1_VOLT=3000
-CONFIG_AXP_DCDC2_VOLT=900
-CONFIG_AXP_DCDC3_VOLT=900
-CONFIG_AXP_DCDC4_VOLT=0
 CONFIG_AXP_DCDC5_VOLT=1500
diff --git a/configs/igep0020_defconfig b/configs/igep0020_defconfig
index a96c130..805a224 100644
--- a/configs/igep0020_defconfig
+++ b/configs/igep0020_defconfig
@@ -7,5 +7,5 @@ CONFIG_SYS_EXTRA_OPTIONS="MACH_TYPE=MACH_TYPE_IGEP0020,BOOT_ONENAND"
 # CONFIG_CMD_FLASH is not set
 CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
-CONFIG_SYS_NS16550=y
 CONFIG_NET_RANDOM_ETHADDR=y
+CONFIG_SYS_NS16550=y
diff --git a/configs/igep0020_nand_defconfig b/configs/igep0020_nand_defconfig
index cf3ee79..be16b6b 100644
--- a/configs/igep0020_nand_defconfig
+++ b/configs/igep0020_nand_defconfig
@@ -7,5 +7,5 @@ CONFIG_SYS_EXTRA_OPTIONS="MACH_TYPE=MACH_TYPE_IGEP0020,BOOT_NAND"
 # CONFIG_CMD_FLASH is not set
 CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
-CONFIG_SYS_NS16550=y
 CONFIG_NET_RANDOM_ETHADDR=y
+CONFIG_SYS_NS16550=y
diff --git a/configs/igep0032_defconfig b/configs/igep0032_defconfig
index b7f1d61..9a13705 100644
--- a/configs/igep0032_defconfig
+++ b/configs/igep0032_defconfig
@@ -7,5 +7,5 @@ CONFIG_SYS_EXTRA_OPTIONS="MACH_TYPE=MACH_TYPE_IGEP0032,BOOT_ONENAND"
 # CONFIG_CMD_FLASH is not set
 CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
-CONFIG_SYS_NS16550=y
 CONFIG_NET_RANDOM_ETHADDR=y
+CONFIG_SYS_NS16550=y
diff --git a/configs/kylin-rk3036_defconfig b/configs/kylin-rk3036_defconfig
index 60cdebf..2cc9de4 100644
--- a/configs/kylin-rk3036_defconfig
+++ b/configs/kylin-rk3036_defconfig
@@ -2,25 +2,23 @@ CONFIG_ARM=y
 CONFIG_ARCH_ROCKCHIP=y
 CONFIG_ROCKCHIP_RK3036=y
 CONFIG_TARGET_KYLIN_RK3036=y
+CONFIG_SPL_STACK_R_ADDR=0x80000
 CONFIG_DEFAULT_DEVICE_TREE="rk3036-sdk"
 CONFIG_SPL_STACK_R=y
-CONFIG_SPL_STACK_R_ADDR=0x80000
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_SETEXPR is not set
-CONFIG_CMD_PMIC=y
-CONFIG_CMD_REGULATOR=y
-CONFIG_CLK=y
 CONFIG_REGMAP=y
 CONFIG_SYSCON=y
-CONFIG_RESET=y
-CONFIG_LED=y
+CONFIG_CLK=y
+CONFIG_ROCKCHIP_GPIO=y
 CONFIG_SYS_I2C_ROCKCHIP=y
-CONFIG_PINCTRL=y
+CONFIG_LED=y
+CONFIG_RESET=y
+CONFIG_DM_MMC=y
 CONFIG_ROCKCHIP_DWMMC=y
+CONFIG_PINCTRL=y
 CONFIG_ROCKCHIP_3036_PINCTRL=y
-CONFIG_ROCKCHIP_GPIO=y
 CONFIG_RAM=y
-CONFIG_DM_MMC=y
 CONFIG_USE_PRIVATE_LIBGCC=y
 CONFIG_CMD_DHRYSTONE=y
 CONFIG_ERRNO_STR=y
diff --git a/configs/ls1043aqds_defconfig b/configs/ls1043aqds_defconfig
index 60fb0ad..d7df7d8 100644
--- a/configs/ls1043aqds_defconfig
+++ b/configs/ls1043aqds_defconfig
@@ -1,6 +1,6 @@
-CONFIG_SYS_EXTRA_OPTIONS="SYS_FSL_DDR4"
 CONFIG_ARM=y
 CONFIG_TARGET_LS1043AQDS=y
-CONFIG_SYS_NS16550=y
 CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1043a-qds"
+CONFIG_SYS_EXTRA_OPTIONS="SYS_FSL_DDR4"
 CONFIG_OF_CONTROL=y
+CONFIG_SYS_NS16550=y
diff --git a/configs/ls1043aqds_nand_defconfig b/configs/ls1043aqds_nand_defconfig
index e9d5afd..b1d8856 100644
--- a/configs/ls1043aqds_nand_defconfig
+++ b/configs/ls1043aqds_nand_defconfig
@@ -1,5 +1,5 @@
-CONFIG_SPL=y
-CONFIG_SYS_EXTRA_OPTIONS="SYS_FSL_DDR4,RAMBOOT_PBL,SPL_FSL_PBL,NAND_BOOT"
 CONFIG_ARM=y
 CONFIG_TARGET_LS1043AQDS=y
+CONFIG_SPL=y
+CONFIG_SYS_EXTRA_OPTIONS="SYS_FSL_DDR4,RAMBOOT_PBL,SPL_FSL_PBL,NAND_BOOT"
 CONFIG_SYS_NS16550=y
diff --git a/configs/ls1043aqds_sdcard_ifc_defconfig b/configs/ls1043aqds_sdcard_ifc_defconfig
index 6765d3d..2551c6e 100644
--- a/configs/ls1043aqds_sdcard_ifc_defconfig
+++ b/configs/ls1043aqds_sdcard_ifc_defconfig
@@ -1,5 +1,5 @@
-CONFIG_SPL=y
-CONFIG_SYS_EXTRA_OPTIONS="SYS_FSL_DDR4,RAMBOOT_PBL,SPL_FSL_PBL,SD_BOOT"
 CONFIG_ARM=y
 CONFIG_TARGET_LS1043AQDS=y
+CONFIG_SPL=y
+CONFIG_SYS_EXTRA_OPTIONS="SYS_FSL_DDR4,RAMBOOT_PBL,SPL_FSL_PBL,SD_BOOT"
 CONFIG_SYS_NS16550=y
diff --git a/configs/ls1043ardb_SECURE_BOOT_defconfig b/configs/ls1043ardb_SECURE_BOOT_defconfig
index d9d6c97..720e56b 100644
--- a/configs/ls1043ardb_SECURE_BOOT_defconfig
+++ b/configs/ls1043ardb_SECURE_BOOT_defconfig
@@ -1,9 +1,9 @@
 CONFIG_ARM=y
 CONFIG_TARGET_LS1043ARDB=y
-CONFIG_SYS_EXTRA_OPTIONS="SYS_FSL_DDR4, SECURE_BOOT"
-CONFIG_SYS_NS16550=y
+CONFIG_DM_SPI=y
 CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1043a-rdb"
+CONFIG_SYS_EXTRA_OPTIONS="SYS_FSL_DDR4, SECURE_BOOT"
 CONFIG_OF_CONTROL=y
 CONFIG_DM=y
 CONFIG_SPI_FLASH=y
-CONFIG_DM_SPI=y
\ No newline at end of file
+CONFIG_SYS_NS16550=y
diff --git a/configs/ls1043ardb_defconfig b/configs/ls1043ardb_defconfig
index 8622ce7..23e2b87 100644
--- a/configs/ls1043ardb_defconfig
+++ b/configs/ls1043ardb_defconfig
@@ -1,9 +1,9 @@
 CONFIG_ARM=y
 CONFIG_TARGET_LS1043ARDB=y
-CONFIG_SYS_EXTRA_OPTIONS="SYS_FSL_DDR4"
-CONFIG_SYS_NS16550=y
+CONFIG_DM_SPI=y
 CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1043a-rdb"
+CONFIG_SYS_EXTRA_OPTIONS="SYS_FSL_DDR4"
 CONFIG_OF_CONTROL=y
 CONFIG_DM=y
 CONFIG_SPI_FLASH=y
-CONFIG_DM_SPI=y
+CONFIG_SYS_NS16550=y
diff --git a/configs/ls1043ardb_nand_defconfig b/configs/ls1043ardb_nand_defconfig
index c4f5f60..c079dbd 100644
--- a/configs/ls1043ardb_nand_defconfig
+++ b/configs/ls1043ardb_nand_defconfig
@@ -1,10 +1,10 @@
 CONFIG_ARM=y
 CONFIG_TARGET_LS1043ARDB=y
+CONFIG_DM_SPI=y
+CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1043a-rdb"
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="RAMBOOT_PBL,SPL_FSL_PBL,NAND_BOOT,SYS_FSL_DDR4"
-CONFIG_SYS_NS16550=y
-CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1043a-rdb"
 CONFIG_OF_CONTROL=y
 CONFIG_DM=y
 CONFIG_SPI_FLASH=y
-CONFIG_DM_SPI=y
+CONFIG_SYS_NS16550=y
diff --git a/configs/ls1043ardb_sdcard_defconfig b/configs/ls1043ardb_sdcard_defconfig
index 6c7eda3..a621442 100644
--- a/configs/ls1043ardb_sdcard_defconfig
+++ b/configs/ls1043ardb_sdcard_defconfig
@@ -1,10 +1,10 @@
 CONFIG_ARM=y
 CONFIG_TARGET_LS1043ARDB=y
+CONFIG_DM_SPI=y
+CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1043a-rdb"
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="RAMBOOT_PBL,SPL_FSL_PBL,SD_BOOT,SYS_FSL_DDR4"
-CONFIG_SYS_NS16550=y
-CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1043a-rdb"
 CONFIG_OF_CONTROL=y
 CONFIG_DM=y
 CONFIG_SPI_FLASH=y
-CONFIG_DM_SPI=y
+CONFIG_SYS_NS16550=y
diff --git a/configs/minnowmax_defconfig b/configs/minnowmax_defconfig
index af6a8ec..5d5579a 100644
--- a/configs/minnowmax_defconfig
+++ b/configs/minnowmax_defconfig
@@ -8,14 +8,14 @@ CONFIG_SMP=y
 CONFIG_HAVE_VGA_BIOS=y
 CONFIG_GENERATE_PIRQ_TABLE=y
 CONFIG_GENERATE_MP_TABLE=y
+CONFIG_BOOTSTAGE=y
+CONFIG_BOOTSTAGE_REPORT=y
 CONFIG_CMD_CPU=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
 # CONFIG_CMD_NFS is not set
-CONFIG_BOOTSTAGE=y
-CONFIG_BOOTSTAGE_REPORT=y
 CONFIG_CMD_BOOTSTAGE=y
 CONFIG_OF_CONTROL=y
 CONFIG_CPU=y
diff --git a/configs/nsa310s_defconfig b/configs/nsa310s_defconfig
index 6b3f28a..dcd86c8 100644
--- a/configs/nsa310s_defconfig
+++ b/configs/nsa310s_defconfig
@@ -1,13 +1,13 @@
 CONFIG_ARM=y
 CONFIG_KIRKWOOD=y
 CONFIG_TARGET_NSA310S=y
-CONFIG_SYS_NS16550=y
+CONFIG_HUSH_PARSER=y
 CONFIG_SYS_PROMPT="nsa310s => "
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
+CONFIG_CMD_NAND=y
+CONFIG_CMD_USB=y
 # CONFIG_CMD_SETEXPR is not set
-CONFIG_HUSH_PARSER=y
 CONFIG_CMD_DHCP=y
-CONFIG_CMD_NAND=y
 CONFIG_CMD_PING=y
-CONFIG_CMD_USB=y
+CONFIG_SYS_NS16550=y
diff --git a/configs/orangepi_pc_defconfig b/configs/orangepi_pc_defconfig
index ea9ed87..d979d2f 100644
--- a/configs/orangepi_pc_defconfig
+++ b/configs/orangepi_pc_defconfig
@@ -4,6 +4,7 @@ CONFIG_MACH_SUN8I_H3=y
 CONFIG_DRAM_CLK=624
 CONFIG_DRAM_ZQ=3881979
 CONFIG_DRAM_ODT_EN=y
+CONFIG_R_I2C_ENABLE=y
 # CONFIG_VIDEO is not set
 CONFIG_DEFAULT_DEVICE_TREE="sun8i-h3-orangepi-pc"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
@@ -12,4 +13,3 @@ CONFIG_SPL=y
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
 CONFIG_CMD_GPIO=y
-CONFIG_R_I2C_ENABLE=y
diff --git a/configs/p2371-2180_defconfig b/configs/p2371-2180_defconfig
index c41f322..5e5139b 100644
--- a/configs/p2371-2180_defconfig
+++ b/configs/p2371-2180_defconfig
@@ -13,8 +13,8 @@ CONFIG_CMD_GPIO=y
 # CONFIG_CMD_NFS is not set
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_WINBOND=y
+CONFIG_PCI_TEGRA=y
 CONFIG_SYS_NS16550=y
 CONFIG_TEGRA114_SPI=y
-CONFIG_PCI_TEGRA=y
 CONFIG_USB=y
 CONFIG_DM_USB=y
diff --git a/configs/qemu-x86_defconfig b/configs/qemu-x86_defconfig
index b0c935c..e653e64 100644
--- a/configs/qemu-x86_defconfig
+++ b/configs/qemu-x86_defconfig
@@ -4,13 +4,13 @@ CONFIG_SMP=y
 CONFIG_MAX_CPUS=2
 CONFIG_GENERATE_PIRQ_TABLE=y
 CONFIG_GENERATE_MP_TABLE=y
+CONFIG_BOOTSTAGE=y
+CONFIG_BOOTSTAGE_REPORT=y
 CONFIG_CMD_CPU=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_SETEXPR is not set
 # CONFIG_CMD_NFS is not set
-CONFIG_BOOTSTAGE=y
-CONFIG_BOOTSTAGE_REPORT=y
 CONFIG_CMD_BOOTSTAGE=y
 CONFIG_OF_CONTROL=y
 CONFIG_CPU=y
diff --git a/configs/rock2_defconfig b/configs/rock2_defconfig
index 68e3b36..511302c 100644
--- a/configs/rock2_defconfig
+++ b/configs/rock2_defconfig
@@ -33,8 +33,8 @@ CONFIG_DM_PMIC=y
 # CONFIG_SPL_PMIC_CHILDREN is not set
 CONFIG_PMIC_ACT8846=y
 CONFIG_DM_REGULATOR=y
-CONFIG_DM_REGULATOR_FIXED=y
 CONFIG_REGULATOR_ACT8846=y
+CONFIG_DM_REGULATOR_FIXED=y
 CONFIG_DM_PWM=y
 CONFIG_PWM_ROCKCHIP=y
 CONFIG_RAM=y
diff --git a/configs/sandbox_defconfig b/configs/sandbox_defconfig
index 09ced01..65c88a3 100644
--- a/configs/sandbox_defconfig
+++ b/configs/sandbox_defconfig
@@ -5,6 +5,10 @@ CONFIG_DM_PCI_COMPAT=y
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
 CONFIG_FIT_SIGNATURE=y
+CONFIG_BOOTSTAGE=y
+CONFIG_BOOTSTAGE_REPORT=y
+CONFIG_CONSOLE_RECORD=y
+CONFIG_CONSOLE_RECORD_OUT_SIZE=0x1000
 # CONFIG_CMD_ELF is not set
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
@@ -12,14 +16,10 @@ CONFIG_CMD_REMOTEPROC=y
 CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_CMD_SOUND=y
-CONFIG_BOOTSTAGE=y
-CONFIG_BOOTSTAGE_REPORT=y
 CONFIG_CMD_PMIC=y
 CONFIG_CMD_REGULATOR=y
 CONFIG_CMD_TPM=y
 CONFIG_CMD_TPM_TEST=y
-CONFIG_CONSOLE_RECORD=y
-CONFIG_CONSOLE_RECORD_OUT_SIZE=0x1000
 CONFIG_OF_CONTROL=y
 CONFIG_OF_HOSTFILE=y
 CONFIG_REGMAP=y
diff --git a/configs/socfpga_arria5_defconfig b/configs/socfpga_arria5_defconfig
index 6e8976f..c969af4 100644
--- a/configs/socfpga_arria5_defconfig
+++ b/configs/socfpga_arria5_defconfig
@@ -7,22 +7,21 @@ CONFIG_TARGET_SOCFPGA_ARRIA5_SOCDK=y
 CONFIG_SPL_STACK_R_ADDR=0x00800000
 CONFIG_DEFAULT_DEVICE_TREE="socfpga_arria5_socdk"
 CONFIG_SPL=y
-CONFIG_SPL_DM_SEQ_ALIAS=y
 CONFIG_SPL_STACK_R=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 CONFIG_CMD_GPIO=y
-CONFIG_SPL_SIMPLE_BUS=y
+CONFIG_SPL_DM_SEQ_ALIAS=y
 CONFIG_DWAPB_GPIO=y
+CONFIG_DM_MMC=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_SPI_FLASH_STMICRO=y
+# CONFIG_SPI_FLASH_USE_4K_SECTORS is not set
 CONFIG_DM_ETH=y
 CONFIG_ETH_DESIGNWARE=y
 CONFIG_SYS_NS16550=y
 CONFIG_CADENCE_QSPI=y
 CONFIG_DESIGNWARE_SPI=y
-CONFIG_DM_MMC=y
 CONFIG_USB=y
 CONFIG_DM_USB=y
-# CONFIG_SPI_FLASH_USE_4K_SECTORS is not set
diff --git a/configs/socfpga_cyclone5_defconfig b/configs/socfpga_cyclone5_defconfig
index e31aa71..e77dc8f 100644
--- a/configs/socfpga_cyclone5_defconfig
+++ b/configs/socfpga_cyclone5_defconfig
@@ -7,22 +7,21 @@ CONFIG_TARGET_SOCFPGA_CYCLONE5_SOCDK=y
 CONFIG_SPL_STACK_R_ADDR=0x00800000
 CONFIG_DEFAULT_DEVICE_TREE="socfpga_cyclone5_socdk"
 CONFIG_SPL=y
-CONFIG_SPL_DM_SEQ_ALIAS=y
 CONFIG_SPL_STACK_R=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 CONFIG_CMD_GPIO=y
-CONFIG_SPL_SIMPLE_BUS=y
+CONFIG_SPL_DM_SEQ_ALIAS=y
 CONFIG_DWAPB_GPIO=y
+CONFIG_DM_MMC=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_SPI_FLASH_STMICRO=y
+# CONFIG_SPI_FLASH_USE_4K_SECTORS is not set
 CONFIG_DM_ETH=y
 CONFIG_ETH_DESIGNWARE=y
 CONFIG_SYS_NS16550=y
 CONFIG_CADENCE_QSPI=y
 CONFIG_DESIGNWARE_SPI=y
-CONFIG_DM_MMC=y
 CONFIG_USB=y
 CONFIG_DM_USB=y
-# CONFIG_SPI_FLASH_USE_4K_SECTORS is not set
diff --git a/configs/socfpga_de0_nano_soc_defconfig b/configs/socfpga_de0_nano_soc_defconfig
index 65c1197..9e85388 100644
--- a/configs/socfpga_de0_nano_soc_defconfig
+++ b/configs/socfpga_de0_nano_soc_defconfig
@@ -11,13 +11,12 @@ CONFIG_SPL_STACK_R=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 CONFIG_CMD_GPIO=y
-CONFIG_SPL_SIMPLE_BUS=y
 CONFIG_DWAPB_GPIO=y
+CONFIG_DM_MMC=y
 CONFIG_DM_ETH=y
 CONFIG_ETH_DESIGNWARE=y
 CONFIG_SYS_NS16550=y
 CONFIG_CADENCE_QSPI=y
 CONFIG_DESIGNWARE_SPI=y
-CONFIG_DM_MMC=y
 CONFIG_USB=y
 CONFIG_DM_USB=y
diff --git a/configs/socfpga_mcvevk_defconfig b/configs/socfpga_mcvevk_defconfig
index c98d4a1..3ee2bab 100644
--- a/configs/socfpga_mcvevk_defconfig
+++ b/configs/socfpga_mcvevk_defconfig
@@ -11,13 +11,12 @@ CONFIG_SPL_STACK_R=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 CONFIG_CMD_GPIO=y
-CONFIG_SPL_SIMPLE_BUS=y
 CONFIG_DWAPB_GPIO=y
+CONFIG_DM_MMC=y
 CONFIG_DM_ETH=y
 CONFIG_ETH_DESIGNWARE=y
 CONFIG_SYS_NS16550=y
 CONFIG_CADENCE_QSPI=y
 CONFIG_DESIGNWARE_SPI=y
-CONFIG_DM_MMC=y
 CONFIG_USB=y
 CONFIG_DM_USB=y
diff --git a/configs/socfpga_sockit_defconfig b/configs/socfpga_sockit_defconfig
index 59fbb2c..8cad409 100644
--- a/configs/socfpga_sockit_defconfig
+++ b/configs/socfpga_sockit_defconfig
@@ -7,13 +7,13 @@ CONFIG_TARGET_SOCFPGA_TERASIC_SOCKIT=y
 CONFIG_SPL_STACK_R_ADDR=0x00800000
 CONFIG_DEFAULT_DEVICE_TREE="socfpga_cyclone5_sockit"
 CONFIG_SPL=y
-CONFIG_SPL_DM_SEQ_ALIAS=y
 CONFIG_SPL_STACK_R=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 CONFIG_CMD_GPIO=y
-CONFIG_SPL_SIMPLE_BUS=y
+CONFIG_SPL_DM_SEQ_ALIAS=y
 CONFIG_DWAPB_GPIO=y
+CONFIG_DM_MMC=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_SPI_FLASH_STMICRO=y
@@ -23,6 +23,5 @@ CONFIG_ETH_DESIGNWARE=y
 CONFIG_SYS_NS16550=y
 CONFIG_CADENCE_QSPI=y
 CONFIG_DESIGNWARE_SPI=y
-CONFIG_DM_MMC=y
 CONFIG_USB=y
 CONFIG_DM_USB=y
diff --git a/configs/socfpga_socrates_defconfig b/configs/socfpga_socrates_defconfig
index aaba8cb..5b84cee 100644
--- a/configs/socfpga_socrates_defconfig
+++ b/configs/socfpga_socrates_defconfig
@@ -7,13 +7,13 @@ CONFIG_TARGET_SOCFPGA_EBV_SOCRATES=y
 CONFIG_SPL_STACK_R_ADDR=0x00800000
 CONFIG_DEFAULT_DEVICE_TREE="socfpga_cyclone5_socrates"
 CONFIG_SPL=y
-CONFIG_SPL_DM_SEQ_ALIAS=y
 CONFIG_SPL_STACK_R=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 CONFIG_CMD_GPIO=y
-CONFIG_SPL_SIMPLE_BUS=y
+CONFIG_SPL_DM_SEQ_ALIAS=y
 CONFIG_DWAPB_GPIO=y
+CONFIG_DM_MMC=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_SPI_FLASH_STMICRO=y
@@ -22,6 +22,5 @@ CONFIG_ETH_DESIGNWARE=y
 CONFIG_SYS_NS16550=y
 CONFIG_CADENCE_QSPI=y
 CONFIG_DESIGNWARE_SPI=y
-CONFIG_DM_MMC=y
 CONFIG_USB=y
 CONFIG_DM_USB=y
diff --git a/configs/socfpga_sr1500_defconfig b/configs/socfpga_sr1500_defconfig
index a4f0835..5181604 100644
--- a/configs/socfpga_sr1500_defconfig
+++ b/configs/socfpga_sr1500_defconfig
@@ -4,18 +4,17 @@ CONFIG_SYS_MALLOC_F_LEN=0x2000
 CONFIG_SPL_DM=y
 CONFIG_DM_GPIO=y
 CONFIG_TARGET_SOCFPGA_SR1500=y
+CONFIG_SPL_STACK_R_ADDR=0x00800000
 CONFIG_DEFAULT_DEVICE_TREE="socfpga_cyclone5_sr1500"
 CONFIG_SPL=y
-CONFIG_SPL_DM_SEQ_ALIAS=y
 CONFIG_SPL_STACK_R=y
-CONFIG_SPL_STACK_R_ADDR=0x00800000
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
-CONFIG_SPL_SIMPLE_BUS=y
+CONFIG_SPL_DM_SEQ_ALIAS=y
 CONFIG_DWAPB_GPIO=y
+CONFIG_DM_MMC=y
 CONFIG_SPI_FLASH=y
+# CONFIG_SPI_FLASH_USE_4K_SECTORS is not set
 CONFIG_DM_ETH=y
 CONFIG_ETH_DESIGNWARE=y
 CONFIG_SYS_NS16550=y
-CONFIG_DM_MMC=y
-# CONFIG_SPI_FLASH_USE_4K_SECTORS is not set
diff --git a/configs/uniphier_ld4_sld8_defconfig b/configs/uniphier_ld4_sld8_defconfig
index ee3cbad..86310ab 100644
--- a/configs/uniphier_ld4_sld8_defconfig
+++ b/configs/uniphier_ld4_sld8_defconfig
@@ -18,7 +18,6 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_TIME=y
 # CONFIG_CMD_MISC is not set
 CONFIG_NET_RANDOM_ETHADDR=y
-CONFIG_SPL_SIMPLE_BUS=y
 CONFIG_NAND_DENALI=y
 CONFIG_SYS_NAND_DENALI_64BIT=y
 CONFIG_NAND_DENALI_SPARE_AREA_SKIP_BYTES=8
diff --git a/configs/uniphier_pro4_defconfig b/configs/uniphier_pro4_defconfig
index 2361db6..f5daa21 100644
--- a/configs/uniphier_pro4_defconfig
+++ b/configs/uniphier_pro4_defconfig
@@ -17,7 +17,6 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_TIME=y
 # CONFIG_CMD_MISC is not set
 CONFIG_NET_RANDOM_ETHADDR=y
-CONFIG_SPL_SIMPLE_BUS=y
 CONFIG_NAND_DENALI=y
 CONFIG_SYS_NAND_DENALI_64BIT=y
 CONFIG_NAND_DENALI_SPARE_AREA_SKIP_BYTES=8
diff --git a/configs/uniphier_pro5_defconfig b/configs/uniphier_pro5_defconfig
index be0d7b5..7e48185 100644
--- a/configs/uniphier_pro5_defconfig
+++ b/configs/uniphier_pro5_defconfig
@@ -17,7 +17,6 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_TIME=y
 # CONFIG_CMD_MISC is not set
 CONFIG_NET_RANDOM_ETHADDR=y
-CONFIG_SPL_SIMPLE_BUS=y
 CONFIG_NAND_DENALI=y
 CONFIG_SYS_NAND_DENALI_64BIT=y
 CONFIG_NAND_DENALI_SPARE_AREA_SKIP_BYTES=8
diff --git a/configs/uniphier_pxs2_ld6b_defconfig b/configs/uniphier_pxs2_ld6b_defconfig
index f8cb794..74d9be3 100644
--- a/configs/uniphier_pxs2_ld6b_defconfig
+++ b/configs/uniphier_pxs2_ld6b_defconfig
@@ -18,7 +18,6 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_TIME=y
 # CONFIG_CMD_MISC is not set
 CONFIG_NET_RANDOM_ETHADDR=y
-CONFIG_SPL_SIMPLE_BUS=y
 CONFIG_NAND_DENALI=y
 CONFIG_SYS_NAND_DENALI_64BIT=y
 CONFIG_NAND_DENALI_SPARE_AREA_SKIP_BYTES=8
diff --git a/configs/zynq_zybo_defconfig b/configs/zynq_zybo_defconfig
index 577c5a9..c7df80d 100644
--- a/configs/zynq_zybo_defconfig
+++ b/configs/zynq_zybo_defconfig
@@ -12,11 +12,11 @@ CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_SPL_DM_SEQ_ALIAS=y
+CONFIG_SPI_FLASH=y
+CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_ZYNQ_GEM=y
 CONFIG_DEBUG_UART=y
 CONFIG_DEBUG_UART_ZYNQ=y
 CONFIG_DEBUG_UART_BASE=0xe0001000
 CONFIG_DEBUG_UART_CLOCK=50000000
-CONFIG_SPI_FLASH=y
-CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_ZYNQ_QSPI=y
-- 
2.7.0.rc3.207.g0ac5344

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

* [U-Boot] [PATCH 09/26] Move CONFIG_OF_LIBFDT to Kconfig
  2016-01-28 16:39 ` Simon Glass
                   ` (8 preceding siblings ...)
  (?)
@ 2016-01-28 16:39 ` Simon Glass
  -1 siblings, 0 replies; 54+ messages in thread
From: Simon Glass @ 2016-01-28 16:39 UTC (permalink / raw)
  To: u-boot

Move this option to Kconfig and tidy up existing boards.

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

 configs/B4420QDS_NAND_defconfig                        |  1 +
 configs/B4420QDS_SPIFLASH_defconfig                    |  1 +
 configs/B4420QDS_defconfig                             |  1 +
 configs/B4860QDS_NAND_defconfig                        |  1 +
 configs/B4860QDS_SECURE_BOOT_defconfig                 |  1 +
 configs/B4860QDS_SPIFLASH_defconfig                    |  1 +
 configs/B4860QDS_SRIO_PCIE_BOOT_defconfig              |  1 +
 configs/B4860QDS_defconfig                             |  1 +
 configs/BSC9131RDB_NAND_SYSCLK100_defconfig            |  1 +
 configs/BSC9131RDB_NAND_defconfig                      |  1 +
 configs/BSC9131RDB_SPIFLASH_SYSCLK100_defconfig        |  1 +
 configs/BSC9131RDB_SPIFLASH_defconfig                  |  1 +
 configs/BSC9132QDS_NAND_DDRCLK100_SECURE_defconfig     |  1 +
 configs/BSC9132QDS_NAND_DDRCLK100_defconfig            |  1 +
 configs/BSC9132QDS_NAND_DDRCLK133_SECURE_defconfig     |  1 +
 configs/BSC9132QDS_NAND_DDRCLK133_defconfig            |  1 +
 configs/BSC9132QDS_NOR_DDRCLK100_SECURE_defconfig      |  1 +
 configs/BSC9132QDS_NOR_DDRCLK100_defconfig             |  1 +
 configs/BSC9132QDS_NOR_DDRCLK133_SECURE_defconfig      |  1 +
 configs/BSC9132QDS_NOR_DDRCLK133_defconfig             |  1 +
 configs/BSC9132QDS_SDCARD_DDRCLK100_SECURE_defconfig   |  1 +
 configs/BSC9132QDS_SDCARD_DDRCLK100_defconfig          |  1 +
 configs/BSC9132QDS_SDCARD_DDRCLK133_SECURE_defconfig   |  1 +
 configs/BSC9132QDS_SDCARD_DDRCLK133_defconfig          |  1 +
 configs/BSC9132QDS_SPIFLASH_DDRCLK100_SECURE_defconfig |  1 +
 configs/BSC9132QDS_SPIFLASH_DDRCLK100_defconfig        |  1 +
 configs/BSC9132QDS_SPIFLASH_DDRCLK133_SECURE_defconfig |  1 +
 configs/BSC9132QDS_SPIFLASH_DDRCLK133_defconfig        |  1 +
 configs/C29XPCIE_NAND_defconfig                        |  1 +
 configs/C29XPCIE_NOR_SECBOOT_defconfig                 |  1 +
 configs/C29XPCIE_SPIFLASH_SECBOOT_defconfig            |  1 +
 configs/C29XPCIE_SPIFLASH_defconfig                    |  1 +
 configs/C29XPCIE_defconfig                             |  1 +
 configs/CPCI4052_defconfig                             |  1 +
 configs/Cyrus_P5020_defconfig                          |  1 +
 configs/Cyrus_P5040_defconfig                          |  1 +
 configs/MPC8308RDB_defconfig                           |  1 +
 configs/MPC8313ERDB_33_defconfig                       |  1 +
 configs/MPC8313ERDB_66_defconfig                       |  1 +
 configs/MPC8313ERDB_NAND_33_defconfig                  |  1 +
 configs/MPC8313ERDB_NAND_66_defconfig                  |  1 +
 configs/MPC8315ERDB_defconfig                          |  1 +
 configs/MPC8323ERDB_defconfig                          |  1 +
 configs/MPC832XEMDS_ATM_defconfig                      |  1 +
 configs/MPC832XEMDS_HOST_33_defconfig                  |  1 +
 configs/MPC832XEMDS_HOST_66_defconfig                  |  1 +
 configs/MPC832XEMDS_SLAVE_defconfig                    |  1 +
 configs/MPC832XEMDS_defconfig                          |  1 +
 configs/MPC8349EMDS_defconfig                          |  1 +
 configs/MPC8349ITXGP_defconfig                         |  1 +
 configs/MPC8349ITX_LOWBOOT_defconfig                   |  1 +
 configs/MPC8349ITX_defconfig                           |  1 +
 configs/MPC837XEMDS_HOST_defconfig                     |  1 +
 configs/MPC837XEMDS_defconfig                          |  1 +
 configs/MPC837XERDB_defconfig                          |  1 +
 configs/MPC8536DS_36BIT_defconfig                      |  1 +
 configs/MPC8536DS_SDCARD_defconfig                     |  1 +
 configs/MPC8536DS_SPIFLASH_defconfig                   |  1 +
 configs/MPC8536DS_defconfig                            |  1 +
 configs/MPC8540ADS_defconfig                           |  1 +
 configs/MPC8541CDS_defconfig                           |  1 +
 configs/MPC8541CDS_legacy_defconfig                    |  1 +
 configs/MPC8544DS_defconfig                            |  1 +
 configs/MPC8548CDS_36BIT_defconfig                     |  1 +
 configs/MPC8548CDS_defconfig                           |  1 +
 configs/MPC8548CDS_legacy_defconfig                    |  1 +
 configs/MPC8555CDS_defconfig                           |  1 +
 configs/MPC8555CDS_legacy_defconfig                    |  1 +
 configs/MPC8560ADS_defconfig                           |  1 +
 configs/MPC8568MDS_defconfig                           |  1 +
 configs/MPC8569MDS_ATM_defconfig                       |  1 +
 configs/MPC8569MDS_defconfig                           |  1 +
 configs/MPC8572DS_36BIT_defconfig                      |  1 +
 configs/MPC8572DS_defconfig                            |  1 +
 configs/MPC8610HPCD_defconfig                          |  1 +
 configs/MPC8641HPCN_36BIT_defconfig                    |  1 +
 configs/MPC8641HPCN_defconfig                          |  1 +
 configs/MiniFAP_defconfig                              |  1 +
 configs/O2D300_defconfig                               |  1 +
 configs/O2DNT2_RAMBOOT_defconfig                       |  1 +
 configs/O2DNT2_defconfig                               |  1 +
 configs/O2D_defconfig                                  |  1 +
 configs/O2I_defconfig                                  |  1 +
 configs/O2MNT_O2M110_defconfig                         |  1 +
 configs/O2MNT_O2M112_defconfig                         |  1 +
 configs/O2MNT_O2M113_defconfig                         |  1 +
 configs/O2MNT_defconfig                                |  1 +
 configs/O3DNT_defconfig                                |  1 +
 configs/P1010RDB-PA_36BIT_NAND_SECBOOT_defconfig       |  1 +
 configs/P1010RDB-PA_36BIT_NAND_defconfig               |  1 +
 configs/P1010RDB-PA_36BIT_NOR_SECBOOT_defconfig        |  1 +
 configs/P1010RDB-PA_36BIT_NOR_defconfig                |  1 +
 configs/P1010RDB-PA_36BIT_SDCARD_defconfig             |  1 +
 configs/P1010RDB-PA_36BIT_SPIFLASH_SECBOOT_defconfig   |  1 +
 configs/P1010RDB-PA_36BIT_SPIFLASH_defconfig           |  1 +
 configs/P1010RDB-PA_NAND_SECBOOT_defconfig             |  1 +
 configs/P1010RDB-PA_NAND_defconfig                     |  1 +
 configs/P1010RDB-PA_NOR_SECBOOT_defconfig              |  1 +
 configs/P1010RDB-PA_NOR_defconfig                      |  1 +
 configs/P1010RDB-PA_SDCARD_defconfig                   |  1 +
 configs/P1010RDB-PA_SPIFLASH_SECBOOT_defconfig         |  1 +
 configs/P1010RDB-PA_SPIFLASH_defconfig                 |  1 +
 configs/P1010RDB-PB_36BIT_NAND_SECBOOT_defconfig       |  1 +
 configs/P1010RDB-PB_36BIT_NAND_defconfig               |  1 +
 configs/P1010RDB-PB_36BIT_NOR_SECBOOT_defconfig        |  1 +
 configs/P1010RDB-PB_36BIT_NOR_defconfig                |  1 +
 configs/P1010RDB-PB_36BIT_SDCARD_defconfig             |  1 +
 configs/P1010RDB-PB_36BIT_SPIFLASH_SECBOOT_defconfig   |  1 +
 configs/P1010RDB-PB_36BIT_SPIFLASH_defconfig           |  1 +
 configs/P1010RDB-PB_NAND_SECBOOT_defconfig             |  1 +
 configs/P1010RDB-PB_NAND_defconfig                     |  1 +
 configs/P1010RDB-PB_NOR_SECBOOT_defconfig              |  1 +
 configs/P1010RDB-PB_NOR_defconfig                      |  1 +
 configs/P1010RDB-PB_SDCARD_defconfig                   |  1 +
 configs/P1010RDB-PB_SPIFLASH_SECBOOT_defconfig         |  1 +
 configs/P1010RDB-PB_SPIFLASH_defconfig                 |  1 +
 configs/P1020MBG-PC_36BIT_SDCARD_defconfig             |  1 +
 configs/P1020MBG-PC_36BIT_defconfig                    |  1 +
 configs/P1020MBG-PC_SDCARD_defconfig                   |  1 +
 configs/P1020MBG-PC_defconfig                          |  1 +
 configs/P1020RDB-PC_36BIT_NAND_defconfig               |  1 +
 configs/P1020RDB-PC_36BIT_SDCARD_defconfig             |  1 +
 configs/P1020RDB-PC_36BIT_SPIFLASH_defconfig           |  1 +
 configs/P1020RDB-PC_36BIT_defconfig                    |  1 +
 configs/P1020RDB-PC_NAND_defconfig                     |  1 +
 configs/P1020RDB-PC_SDCARD_defconfig                   |  1 +
 configs/P1020RDB-PC_SPIFLASH_defconfig                 |  1 +
 configs/P1020RDB-PC_defconfig                          |  1 +
 configs/P1020RDB-PD_NAND_defconfig                     |  1 +
 configs/P1020RDB-PD_SDCARD_defconfig                   |  1 +
 configs/P1020RDB-PD_SPIFLASH_defconfig                 |  1 +
 configs/P1020RDB-PD_defconfig                          |  1 +
 configs/P1020UTM-PC_36BIT_SDCARD_defconfig             |  1 +
 configs/P1020UTM-PC_36BIT_defconfig                    |  1 +
 configs/P1020UTM-PC_SDCARD_defconfig                   |  1 +
 configs/P1020UTM-PC_defconfig                          |  1 +
 configs/P1021RDB-PC_36BIT_NAND_defconfig               |  1 +
 configs/P1021RDB-PC_36BIT_SDCARD_defconfig             |  1 +
 configs/P1021RDB-PC_36BIT_SPIFLASH_defconfig           |  1 +
 configs/P1021RDB-PC_36BIT_defconfig                    |  1 +
 configs/P1021RDB-PC_NAND_defconfig                     |  1 +
 configs/P1021RDB-PC_SDCARD_defconfig                   |  1 +
 configs/P1021RDB-PC_SPIFLASH_defconfig                 |  1 +
 configs/P1021RDB-PC_defconfig                          |  1 +
 configs/P1022DS_36BIT_NAND_defconfig                   |  1 +
 configs/P1022DS_36BIT_SDCARD_defconfig                 |  1 +
 configs/P1022DS_36BIT_SPIFLASH_defconfig               |  1 +
 configs/P1022DS_36BIT_defconfig                        |  1 +
 configs/P1022DS_NAND_defconfig                         |  1 +
 configs/P1022DS_SDCARD_defconfig                       |  1 +
 configs/P1022DS_SPIFLASH_defconfig                     |  1 +
 configs/P1022DS_defconfig                              |  1 +
 configs/P1023RDB_defconfig                             |  1 +
 configs/P1024RDB_36BIT_defconfig                       |  1 +
 configs/P1024RDB_NAND_defconfig                        |  1 +
 configs/P1024RDB_SDCARD_defconfig                      |  1 +
 configs/P1024RDB_SPIFLASH_defconfig                    |  1 +
 configs/P1024RDB_defconfig                             |  1 +
 configs/P1025RDB_36BIT_defconfig                       |  1 +
 configs/P1025RDB_NAND_defconfig                        |  1 +
 configs/P1025RDB_SDCARD_defconfig                      |  1 +
 configs/P1025RDB_SPIFLASH_defconfig                    |  1 +
 configs/P1025RDB_defconfig                             |  1 +
 configs/P2020RDB-PC_36BIT_NAND_defconfig               |  1 +
 configs/P2020RDB-PC_36BIT_SDCARD_defconfig             |  1 +
 configs/P2020RDB-PC_36BIT_SPIFLASH_defconfig           |  1 +
 configs/P2020RDB-PC_36BIT_defconfig                    |  1 +
 configs/P2020RDB-PC_NAND_defconfig                     |  1 +
 configs/P2020RDB-PC_SDCARD_defconfig                   |  1 +
 configs/P2020RDB-PC_SPIFLASH_defconfig                 |  1 +
 configs/P2020RDB-PC_defconfig                          |  1 +
 configs/P2041RDB_NAND_defconfig                        |  1 +
 configs/P2041RDB_SDCARD_defconfig                      |  1 +
 configs/P2041RDB_SECURE_BOOT_defconfig                 |  1 +
 configs/P2041RDB_SPIFLASH_defconfig                    |  1 +
 configs/P2041RDB_SRIO_PCIE_BOOT_defconfig              |  1 +
 configs/P2041RDB_defconfig                             |  1 +
 configs/P3041DS_NAND_SECURE_BOOT_defconfig             |  1 +
 configs/P3041DS_NAND_defconfig                         |  1 +
 configs/P3041DS_SDCARD_defconfig                       |  1 +
 configs/P3041DS_SECURE_BOOT_defconfig                  |  1 +
 configs/P3041DS_SPIFLASH_defconfig                     |  1 +
 configs/P3041DS_SRIO_PCIE_BOOT_defconfig               |  1 +
 configs/P3041DS_defconfig                              |  1 +
 configs/P4080DS_SDCARD_defconfig                       |  1 +
 configs/P4080DS_SECURE_BOOT_defconfig                  |  1 +
 configs/P4080DS_SPIFLASH_defconfig                     |  1 +
 configs/P4080DS_SRIO_PCIE_BOOT_defconfig               |  1 +
 configs/P4080DS_defconfig                              |  1 +
 configs/P5020DS_NAND_SECURE_BOOT_defconfig             |  1 +
 configs/P5020DS_NAND_defconfig                         |  1 +
 configs/P5020DS_SDCARD_defconfig                       |  1 +
 configs/P5020DS_SECURE_BOOT_defconfig                  |  1 +
 configs/P5020DS_SPIFLASH_defconfig                     |  1 +
 configs/P5020DS_SRIO_PCIE_BOOT_defconfig               |  1 +
 configs/P5020DS_defconfig                              |  1 +
 configs/P5040DS_NAND_SECURE_BOOT_defconfig             |  1 +
 configs/P5040DS_NAND_defconfig                         |  1 +
 configs/P5040DS_SDCARD_defconfig                       |  1 +
 configs/P5040DS_SECURE_BOOT_defconfig                  |  1 +
 configs/P5040DS_SPIFLASH_defconfig                     |  1 +
 configs/P5040DS_defconfig                              |  1 +
 configs/PLU405_defconfig                               |  1 +
 configs/PMC405DE_defconfig                             |  1 +
 configs/PMC440_defconfig                               |  1 +
 configs/T1023RDB_NAND_defconfig                        |  1 +
 configs/T1023RDB_SDCARD_defconfig                      |  1 +
 configs/T1023RDB_SECURE_BOOT_defconfig                 |  1 +
 configs/T1023RDB_SPIFLASH_defconfig                    |  1 +
 configs/T1023RDB_defconfig                             |  1 +
 configs/T1024QDS_DDR4_SECURE_BOOT_defconfig            |  1 +
 configs/T1024QDS_DDR4_defconfig                        |  1 +
 configs/T1024QDS_NAND_defconfig                        |  1 +
 configs/T1024QDS_SDCARD_defconfig                      |  1 +
 configs/T1024QDS_SECURE_BOOT_defconfig                 |  1 +
 configs/T1024QDS_SPIFLASH_defconfig                    |  1 +
 configs/T1024QDS_defconfig                             |  1 +
 configs/T1024RDB_NAND_defconfig                        |  1 +
 configs/T1024RDB_SDCARD_defconfig                      |  1 +
 configs/T1024RDB_SECURE_BOOT_defconfig                 |  1 +
 configs/T1024RDB_SPIFLASH_defconfig                    |  1 +
 configs/T1024RDB_defconfig                             |  1 +
 configs/T1040D4RDB_NAND_defconfig                      |  1 +
 configs/T1040D4RDB_SDCARD_defconfig                    |  1 +
 configs/T1040D4RDB_SECURE_BOOT_defconfig               |  1 +
 configs/T1040D4RDB_SPIFLASH_defconfig                  |  1 +
 configs/T1040D4RDB_defconfig                           |  1 +
 configs/T1040QDS_DDR4_defconfig                        |  1 +
 configs/T1040QDS_SECURE_BOOT_defconfig                 |  1 +
 configs/T1040QDS_defconfig                             |  1 +
 configs/T1040RDB_NAND_defconfig                        |  1 +
 configs/T1040RDB_SDCARD_defconfig                      |  1 +
 configs/T1040RDB_SECURE_BOOT_defconfig                 |  1 +
 configs/T1040RDB_SPIFLASH_defconfig                    |  1 +
 configs/T1040RDB_defconfig                             |  1 +
 configs/T1042D4RDB_NAND_defconfig                      |  1 +
 configs/T1042D4RDB_SDCARD_defconfig                    |  1 +
 configs/T1042D4RDB_SECURE_BOOT_defconfig               |  1 +
 configs/T1042D4RDB_SPIFLASH_defconfig                  |  1 +
 configs/T1042D4RDB_defconfig                           |  1 +
 configs/T1042RDB_PI_NAND_defconfig                     |  1 +
 configs/T1042RDB_PI_SDCARD_defconfig                   |  1 +
 configs/T1042RDB_PI_SPIFLASH_defconfig                 |  1 +
 configs/T1042RDB_PI_defconfig                          |  1 +
 configs/T1042RDB_SECURE_BOOT_defconfig                 |  1 +
 configs/T1042RDB_defconfig                             |  1 +
 configs/T2080QDS_NAND_defconfig                        |  1 +
 configs/T2080QDS_SDCARD_defconfig                      |  1 +
 configs/T2080QDS_SECURE_BOOT_defconfig                 |  1 +
 configs/T2080QDS_SPIFLASH_defconfig                    |  1 +
 configs/T2080QDS_SRIO_PCIE_BOOT_defconfig              |  1 +
 configs/T2080QDS_defconfig                             |  1 +
 configs/T2080RDB_NAND_defconfig                        |  1 +
 configs/T2080RDB_SDCARD_defconfig                      |  1 +
 configs/T2080RDB_SECURE_BOOT_defconfig                 |  1 +
 configs/T2080RDB_SPIFLASH_defconfig                    |  1 +
 configs/T2080RDB_SRIO_PCIE_BOOT_defconfig              |  1 +
 configs/T2080RDB_defconfig                             |  1 +
 configs/T2081QDS_NAND_defconfig                        |  1 +
 configs/T2081QDS_SDCARD_defconfig                      |  1 +
 configs/T2081QDS_SPIFLASH_defconfig                    |  1 +
 configs/T2081QDS_SRIO_PCIE_BOOT_defconfig              |  1 +
 configs/T2081QDS_defconfig                             |  1 +
 configs/T4160QDS_NAND_defconfig                        |  1 +
 configs/T4160QDS_SDCARD_defconfig                      |  1 +
 configs/T4160QDS_SECURE_BOOT_defconfig                 |  1 +
 configs/T4160QDS_defconfig                             |  1 +
 configs/T4160RDB_defconfig                             |  1 +
 configs/T4240QDS_NAND_defconfig                        |  1 +
 configs/T4240QDS_SDCARD_defconfig                      |  1 +
 configs/T4240QDS_SECURE_BOOT_defconfig                 |  1 +
 configs/T4240QDS_SRIO_PCIE_BOOT_defconfig              |  1 +
 configs/T4240QDS_defconfig                             |  1 +
 configs/T4240RDB_SDCARD_defconfig                      |  1 +
 configs/T4240RDB_defconfig                             |  1 +
 configs/TQM5200S_HIGHBOOT_defconfig                    |  1 +
 configs/TQM5200S_defconfig                             |  1 +
 configs/TQM5200_B_HIGHBOOT_defconfig                   |  1 +
 configs/TQM5200_B_defconfig                            |  1 +
 configs/TQM5200_STK100_defconfig                       |  1 +
 configs/TQM5200_defconfig                              |  1 +
 configs/TQM823L_LCD_defconfig                          |  1 +
 configs/TQM823L_defconfig                              |  1 +
 configs/TQM823M_defconfig                              |  1 +
 configs/TQM834x_defconfig                              |  1 +
 configs/TQM850L_defconfig                              |  1 +
 configs/TQM850M_defconfig                              |  1 +
 configs/TQM855L_defconfig                              |  1 +
 configs/TQM855M_defconfig                              |  1 +
 configs/TQM860L_defconfig                              |  1 +
 configs/TQM860M_defconfig                              |  1 +
 configs/TQM862L_defconfig                              |  1 +
 configs/TQM862M_defconfig                              |  1 +
 configs/TQM866M_defconfig                              |  1 +
 configs/TQM885D_defconfig                              |  1 +
 configs/TTTech_defconfig                               |  1 +
 configs/TWR-P1025_defconfig                            |  1 +
 configs/UCP1020_SPIFLASH_defconfig                     |  1 +
 configs/UCP1020_defconfig                              |  1 +
 configs/VOM405_defconfig                               |  1 +
 configs/a3m071_defconfig                               |  1 +
 configs/a4m072_defconfig                               |  1 +
 configs/a4m2k_defconfig                                |  1 +
 configs/ac14xx_defconfig                               |  1 +
 configs/acadia_defconfig                               |  1 +
 configs/alt_defconfig                                  |  1 +
 configs/am335x_baltos_defconfig                        |  1 +
 configs/am335x_boneblack_defconfig                     |  1 +
 configs/am335x_evm_defconfig                           |  1 +
 configs/am335x_evm_nor_defconfig                       |  1 +
 configs/am335x_evm_norboot_defconfig                   |  1 +
 configs/am335x_evm_spiboot_defconfig                   |  1 +
 configs/am335x_evm_usbspl_defconfig                    |  1 +
 configs/am335x_igep0033_defconfig                      |  1 +
 configs/am335x_sl50_defconfig                          |  1 +
 configs/am3517_evm_defconfig                           |  1 +
 configs/am43xx_evm_defconfig                           |  1 +
 configs/am43xx_evm_ethboot_defconfig                   |  1 +
 configs/am43xx_evm_qspiboot_defconfig                  |  1 +
 configs/am43xx_evm_usbhost_boot_defconfig              |  1 +
 configs/am57xx_evm_nodt_defconfig                      |  1 +
 configs/apf27_defconfig                                |  1 +
 configs/apx4devkit_defconfig                           |  1 +
 configs/aria_defconfig                                 |  1 +
 configs/aristainetos2_defconfig                        |  1 +
 configs/aristainetos2b_defconfig                       |  1 +
 configs/aristainetos_defconfig                         |  1 +
 configs/armadillo-800eva_defconfig                     |  1 +
 configs/aspenite_defconfig                             |  1 +
 configs/at91rm9200ek_defconfig                         |  1 +
 configs/at91rm9200ek_ram_defconfig                     |  1 +
 configs/at91sam9260ek_dataflash_cs0_defconfig          |  1 +
 configs/at91sam9260ek_dataflash_cs1_defconfig          |  1 +
 configs/at91sam9260ek_nandflash_defconfig              |  1 +
 configs/at91sam9261ek_dataflash_cs0_defconfig          |  1 +
 configs/at91sam9261ek_dataflash_cs3_defconfig          |  1 +
 configs/at91sam9261ek_nandflash_defconfig              |  1 +
 configs/at91sam9263ek_dataflash_cs0_defconfig          |  1 +
 configs/at91sam9263ek_dataflash_defconfig              |  1 +
 configs/at91sam9263ek_nandflash_defconfig              |  1 +
 configs/at91sam9263ek_norflash_boot_defconfig          |  1 +
 configs/at91sam9263ek_norflash_defconfig               |  1 +
 configs/at91sam9g10ek_dataflash_cs0_defconfig          |  1 +
 configs/at91sam9g10ek_dataflash_cs3_defconfig          |  1 +
 configs/at91sam9g10ek_nandflash_defconfig              |  1 +
 configs/at91sam9g20ek_2mmc_defconfig                   |  1 +
 configs/at91sam9g20ek_2mmc_nandflash_defconfig         |  1 +
 configs/at91sam9g20ek_dataflash_cs0_defconfig          |  1 +
 configs/at91sam9g20ek_dataflash_cs1_defconfig          |  1 +
 configs/at91sam9g20ek_nandflash_defconfig              |  1 +
 configs/at91sam9m10g45ek_mmc_defconfig                 |  1 +
 configs/at91sam9m10g45ek_nandflash_defconfig           |  1 +
 configs/at91sam9n12ek_mmc_defconfig                    |  1 +
 configs/at91sam9n12ek_nandflash_defconfig              |  1 +
 configs/at91sam9n12ek_spiflash_defconfig               |  1 +
 configs/at91sam9rlek_dataflash_defconfig               |  1 +
 configs/at91sam9rlek_mmc_defconfig                     |  1 +
 configs/at91sam9rlek_nandflash_defconfig               |  1 +
 configs/at91sam9x5ek_dataflash_defconfig               |  1 +
 configs/at91sam9x5ek_mmc_defconfig                     |  1 +
 configs/at91sam9x5ek_nandflash_defconfig               |  1 +
 configs/at91sam9x5ek_spiflash_defconfig                |  1 +
 configs/at91sam9xeek_dataflash_cs0_defconfig           |  1 +
 configs/at91sam9xeek_dataflash_cs1_defconfig           |  1 +
 configs/at91sam9xeek_nandflash_defconfig               |  1 +
 configs/axm_defconfig                                  |  1 +
 configs/bamboo_defconfig                               |  1 +
 configs/bcm911360_entphn-ns_defconfig                  |  1 +
 configs/bcm911360_entphn_defconfig                     |  1 +
 configs/bcm911360k_defconfig                           |  1 +
 configs/bcm958300k-ns_defconfig                        |  1 +
 configs/bcm958300k_defconfig                           |  1 +
 configs/bcm958305k_defconfig                           |  1 +
 configs/bcm958622hr_defconfig                          |  1 +
 configs/bg0900_defconfig                               |  1 +
 configs/birdland_bav335a_defconfig                     |  1 +
 configs/birdland_bav335b_defconfig                     |  1 +
 configs/bubinga_defconfig                              |  1 +
 configs/caddy2_defconfig                               |  1 +
 configs/cairo_defconfig                                |  1 +
 configs/cam5200_defconfig                              |  1 +
 configs/cam5200_niosflash_defconfig                    |  1 +
 configs/cgtqmx6eval_defconfig                          |  1 +
 configs/charon_defconfig                               |  1 +
 configs/cm5200_defconfig                               |  1 +
 configs/cm_fx6_defconfig                               |  1 +
 configs/cm_t335_defconfig                              |  1 +
 configs/cm_t3517_defconfig                             |  1 +
 configs/cm_t35_defconfig                               |  1 +
 configs/cm_t43_defconfig                               |  1 +
 configs/cm_t54_defconfig                               |  1 +
 configs/colibri_pxa270_defconfig                       |  1 +
 configs/colibri_vf_defconfig                           |  1 +
 configs/controlcenterd_36BIT_SDCARD_DEVELOP_defconfig  |  1 +
 configs/controlcenterd_36BIT_SDCARD_defconfig          |  1 +
 configs/corvus_defconfig                               |  1 +
 configs/d2net_v2_defconfig                             |  1 +
 configs/da850_am18xxevm_defconfig                      |  1 +
 configs/da850evm_defconfig                             |  1 +
 configs/da850evm_direct_nor_defconfig                  |  1 +
 configs/devconcenter_defconfig                         |  1 +
 configs/devkit3250_defconfig                           |  1 +
 configs/devkit8000_defconfig                           |  1 +
 configs/digsy_mtc_RAMBOOT_defconfig                    |  1 +
 configs/digsy_mtc_defconfig                            |  1 +
 configs/digsy_mtc_rev5_RAMBOOT_defconfig               |  1 +
 configs/digsy_mtc_rev5_defconfig                       |  1 +
 configs/dlvision-10g_defconfig                         |  1 +
 configs/dlvision_defconfig                             |  1 +
 configs/dns325_defconfig                               |  1 +
 configs/dockstar_defconfig                             |  1 +
 configs/dra7xx_evm_defconfig                           |  1 +
 configs/dra7xx_evm_qspiboot_defconfig                  |  1 +
 configs/dra7xx_evm_uart3_defconfig                     |  1 +
 configs/draco_defconfig                                |  1 +
 configs/dreamplug_defconfig                            |  1 +
 configs/duovero_defconfig                              |  1 +
 configs/eco5pk_defconfig                               |  1 +
 configs/fo300_defconfig                                |  1 +
 configs/gdppc440etx_defconfig                          |  1 +
 configs/goflexhome_defconfig                           |  1 +
 configs/gose_defconfig                                 |  1 +
 configs/gplugd_defconfig                               |  1 +
 configs/guruplug_defconfig                             |  1 +
 configs/gwventana_defconfig                            |  1 +
 configs/haleakala_defconfig                            |  1 +
 configs/highbank_defconfig                             |  1 +
 configs/hikey_defconfig                                |  1 +
 configs/hrcon_defconfig                                |  1 +
 configs/hrcon_dh_defconfig                             |  1 +
 configs/ib62x0_defconfig                               |  1 +
 configs/icon_defconfig                                 |  1 +
 configs/iconnect_defconfig                             |  1 +
 configs/ids8313_defconfig                              |  1 +
 configs/igep0020_defconfig                             |  1 +
 configs/igep0020_nand_defconfig                        |  1 +
 configs/igep0030_defconfig                             |  1 +
 configs/igep0030_nand_defconfig                        |  1 +
 configs/igep0032_defconfig                             |  1 +
 configs/inetspace_v2_defconfig                         |  1 +
 configs/integratorap_cm720t_defconfig                  |  1 +
 configs/integratorap_cm920t_defconfig                  |  1 +
 configs/integratorap_cm926ejs_defconfig                |  1 +
 configs/integratorap_cm946es_defconfig                 |  1 +
 configs/integratorcp_cm1136_defconfig                  |  1 +
 configs/integratorcp_cm920t_defconfig                  |  1 +
 configs/integratorcp_cm926ejs_defconfig                |  1 +
 configs/integratorcp_cm946es_defconfig                 |  1 +
 configs/intip_defconfig                                |  1 +
 configs/io64_defconfig                                 |  1 +
 configs/io_defconfig                                   |  1 +
 configs/iocon_defconfig                                |  1 +
 configs/ipek01_defconfig                               |  1 +
 configs/katmai_defconfig                               |  1 +
 configs/kilauea_defconfig                              |  1 +
 configs/km_kirkwood_128m16_defconfig                   |  1 +
 configs/km_kirkwood_defconfig                          |  1 +
 configs/km_kirkwood_pci_defconfig                      |  1 +
 configs/kmcoge4_defconfig                              |  1 +
 configs/kmcoge5ne_defconfig                            |  1 +
 configs/kmcoge5un_defconfig                            |  1 +
 configs/kmeter1_defconfig                              |  1 +
 configs/kmlion1_defconfig                              |  1 +
 configs/kmnusa_defconfig                               |  1 +
 configs/kmopti2_defconfig                              |  1 +
 configs/kmsugp1_defconfig                              |  1 +
 configs/kmsupx5_defconfig                              |  1 +
 configs/kmsuv31_defconfig                              |  1 +
 configs/kmtegr1_defconfig                              |  1 +
 configs/kmtepr2_defconfig                              |  1 +
 configs/kmvect1_defconfig                              |  1 +
 configs/koelsch_defconfig                              |  1 +
 configs/kwb_defconfig                                  |  1 +
 configs/kzm9g_defconfig                                |  1 +
 configs/lager_defconfig                                |  1 +
 configs/ls1021aqds_ddr4_nor_defconfig                  |  1 +
 configs/ls1021aqds_ddr4_nor_lpuart_defconfig           |  1 +
 configs/ls1021aqds_nand_defconfig                      |  1 +
 configs/ls1021aqds_nor_SECURE_BOOT_defconfig           |  1 +
 configs/ls1021aqds_nor_defconfig                       |  1 +
 configs/ls1021aqds_nor_lpuart_defconfig                |  1 +
 configs/ls1021aqds_sdcard_defconfig                    |  1 +
 configs/ls1021atwr_nor_SECURE_BOOT_defconfig           |  1 +
 configs/ls1021atwr_sdcard_ifc_defconfig                |  1 +
 configs/ls1043aqds_nand_defconfig                      |  1 +
 configs/ls1043aqds_nor_ddr3_defconfig                  |  1 +
 configs/ls1043aqds_sdcard_ifc_defconfig                |  1 +
 configs/ls2080a_emu_defconfig                          |  1 +
 configs/ls2080a_simu_defconfig                         |  1 +
 configs/ls2080aqds_nand_defconfig                      |  1 +
 configs/ls2080ardb_nand_defconfig                      |  1 +
 configs/ls2085a_emu_defconfig                          |  1 +
 configs/ls2085a_simu_defconfig                         |  1 +
 configs/ls2085aqds_nand_defconfig                      |  1 +
 configs/ls2085ardb_nand_defconfig                      |  1 +
 configs/lschlv2_defconfig                              |  1 +
 configs/lsxhl_defconfig                                |  1 +
 configs/luan_defconfig                                 |  1 +
 configs/lwmon5_defconfig                               |  1 +
 configs/m28evk_defconfig                               |  1 +
 configs/m53evk_defconfig                               |  1 +
 configs/makalu_defconfig                               |  1 +
 configs/marsboard_defconfig                            |  1 +
 configs/mcx_defconfig                                  |  1 +
 configs/mecp5123_defconfig                             |  1 +
 configs/meesc_dataflash_defconfig                      |  1 +
 configs/meesc_defconfig                                |  1 +
 configs/mgcoge3ne_defconfig                            |  1 +
 configs/mgcoge3un_defconfig                            |  1 +
 configs/mgcoge_defconfig                               |  1 +
 configs/motionpro_defconfig                            |  1 +
 configs/mpc5121ads_defconfig                           |  1 +
 configs/mpc5121ads_rev2_defconfig                      |  1 +
 configs/mpc8308_p1m_defconfig                          |  1 +
 configs/mt_ventoux_defconfig                           |  1 +
 configs/munices_defconfig                              |  1 +
 configs/mx23_olinuxino_defconfig                       |  1 +
 configs/mx23evk_defconfig                              |  1 +
 configs/mx25pdk_defconfig                              |  1 +
 configs/mx28evk_auart_console_defconfig                |  1 +
 configs/mx28evk_defconfig                              |  1 +
 configs/mx28evk_nand_defconfig                         |  1 +
 configs/mx28evk_spi_defconfig                          |  1 +
 configs/mx35pdk_defconfig                              |  1 +
 configs/mx51evk_defconfig                              |  1 +
 configs/mx53ard_defconfig                              |  1 +
 configs/mx53evk_defconfig                              |  1 +
 configs/mx53loco_defconfig                             |  1 +
 configs/mx53smd_defconfig                              |  1 +
 configs/mx6cuboxi_defconfig                            |  1 +
 configs/mx6dlarm2_defconfig                            |  1 +
 configs/mx6dlarm2_lpddr2_defconfig                     |  1 +
 configs/mx6dlsabreauto_defconfig                       |  1 +
 configs/mx6dlsabresd_defconfig                         |  1 +
 configs/mx6qarm2_defconfig                             |  1 +
 configs/mx6qarm2_lpddr2_defconfig                      |  1 +
 configs/mx6qpsabreauto_defconfig                       |  1 +
 configs/mx6qsabreauto_defconfig                        |  1 +
 configs/mx6qsabrelite_defconfig                        |  1 +
 configs/mx6qsabresd_defconfig                          |  1 +
 configs/mx6sabresd_spl_defconfig                       |  1 +
 configs/mx6slevk_defconfig                             |  1 +
 configs/mx6slevk_spinor_defconfig                      |  1 +
 configs/mx6slevk_spl_defconfig                         |  1 +
 configs/mx6sxsabresd_defconfig                         |  1 +
 configs/mx6sxsabresd_spl_defconfig                     |  1 +
 configs/mx6ul_14x14_evk_defconfig                      |  1 +
 configs/mx6ul_9x9_evk_defconfig                        |  1 +
 configs/mx7dsabresd_defconfig                          |  1 +
 configs/nas220_defconfig                               |  1 +
 configs/neo_defconfig                                  |  1 +
 configs/net2big_v2_defconfig                           |  1 +
 configs/netspace_lite_v2_defconfig                     |  1 +
 configs/netspace_max_v2_defconfig                      |  1 +
 configs/netspace_mini_v2_defconfig                     |  1 +
 configs/netspace_v2_defconfig                          |  1 +
 configs/nitrogen6dl2g_defconfig                        |  1 +
 configs/nitrogen6dl_defconfig                          |  1 +
 configs/nitrogen6q2g_defconfig                         |  1 +
 configs/nitrogen6q_defconfig                           |  1 +
 configs/nitrogen6s1g_defconfig                         |  1 +
 configs/nitrogen6s_defconfig                           |  1 +
 configs/novena_defconfig                               |  1 +
 configs/nsa310s_defconfig                              |  1 +
 configs/omap3_beagle_defconfig                         |  1 +
 configs/omap3_ha_defconfig                             |  1 +
 configs/omap3_logic_defconfig                          |  1 +
 configs/omap3_overo_defconfig                          |  1 +
 configs/omap3_pandora_defconfig                        |  1 +
 configs/omap3_zoom1_defconfig                          |  1 +
 configs/omap4_panda_defconfig                          |  1 +
 configs/omap4_sdp4430_defconfig                        |  1 +
 configs/omap5_uevm_defconfig                           |  1 +
 configs/omapl138_lcdk_defconfig                        |  1 +
 configs/openrd_base_defconfig                          |  1 +
 configs/openrd_client_defconfig                        |  1 +
 configs/openrd_ultimate_defconfig                      |  1 +
 configs/ot1200_defconfig                               |  1 +
 configs/ot1200_spl_defconfig                           |  1 +
 configs/pcm030_LOWBOOT_defconfig                       |  1 +
 configs/pcm030_defconfig                               |  1 +
 configs/pcm051_rev1_defconfig                          |  1 +
 configs/pcm051_rev3_defconfig                          |  1 +
 configs/pcm052_defconfig                               |  1 +
 configs/pdm360ng_defconfig                             |  1 +
 configs/pengwyn_defconfig                              |  1 +
 configs/pepper_defconfig                               |  1 +
 configs/picosam9g45_defconfig                          |  1 +
 configs/platinum_picon_defconfig                       |  1 +
 configs/platinum_titanium_defconfig                    |  1 +
 configs/pogo_e02_defconfig                             |  1 +
 configs/porter_defconfig                               |  1 +
 configs/portl2_defconfig                               |  1 +
 configs/pxm2_defconfig                                 |  1 +
 configs/qemu-ppce500_defconfig                         |  1 +
 configs/rainier_defconfig                              |  1 +
 configs/rainier_ramboot_defconfig                      |  1 +
 configs/rastaban_defconfig                             |  1 +
 configs/redwood_defconfig                              |  1 +
 configs/riotboard_defconfig                            |  1 +
 configs/rpi_2_defconfig                                |  1 +
 configs/rpi_defconfig                                  |  1 +
 configs/rut_defconfig                                  |  1 +
 configs/sama5d2_xplained_mmc_defconfig                 |  1 +
 configs/sama5d2_xplained_spiflash_defconfig            |  1 +
 configs/sama5d3_xplained_mmc_defconfig                 |  1 +
 configs/sama5d3_xplained_nandflash_defconfig           |  1 +
 configs/sama5d3xek_mmc_defconfig                       |  1 +
 configs/sama5d3xek_nandflash_defconfig                 |  1 +
 configs/sama5d3xek_spiflash_defconfig                  |  1 +
 configs/sama5d4_xplained_mmc_defconfig                 |  1 +
 configs/sama5d4_xplained_nandflash_defconfig           |  1 +
 configs/sama5d4_xplained_spiflash_defconfig            |  1 +
 configs/sama5d4ek_mmc_defconfig                        |  1 +
 configs/sama5d4ek_nandflash_defconfig                  |  1 +
 configs/sama5d4ek_spiflash_defconfig                   |  1 +
 configs/sansa_fuze_plus_defconfig                      |  1 +
 configs/sbc8349_PCI_33_defconfig                       |  1 +
 configs/sbc8349_PCI_66_defconfig                       |  1 +
 configs/sbc8349_defconfig                              |  1 +
 configs/sbc8548_PCI_33_PCIE_defconfig                  |  1 +
 configs/sbc8548_PCI_33_defconfig                       |  1 +
 configs/sbc8548_PCI_66_PCIE_defconfig                  |  1 +
 configs/sbc8548_PCI_66_defconfig                       |  1 +
 configs/sbc8548_defconfig                              |  1 +
 configs/sbc8641d_defconfig                             |  1 +
 configs/sc_sps_1_defconfig                             |  1 +
 configs/secomx6quq7_defconfig                          |  1 +
 configs/sequoia_defconfig                              |  1 +
 configs/sequoia_ramboot_defconfig                      |  1 +
 configs/sheevaplug_defconfig                           |  1 +
 configs/silk_defconfig                                 |  1 +
 configs/smartweb_defconfig                             |  1 +
 configs/sniper_defconfig                               |  1 +
 configs/socrates_defconfig                             |  1 +
 configs/stm32f429-discovery_defconfig                  |  1 +
 configs/stout_defconfig                                |  1 +
 configs/strider_con_defconfig                          |  1 +
 configs/strider_cpu_defconfig                          |  1 +
 configs/suvd3_defconfig                                |  1 +
 configs/sycamore_defconfig                             |  1 +
 configs/t3corp_defconfig                               |  1 +
 configs/tao3530_defconfig                              |  1 +
 configs/taurus_defconfig                               |  1 +
 configs/tbs2910_defconfig                              |  1 +
 configs/thuban_defconfig                               |  1 +
 configs/ti814x_evm_defconfig                           |  1 +
 configs/ti816x_evm_defconfig                           |  1 +
 configs/titanium_defconfig                             |  1 +
 configs/tqma6q_mba6_mmc_defconfig                      |  1 +
 configs/tqma6q_mba6_spi_defconfig                      |  1 +
 configs/tqma6s_mba6_mmc_defconfig                      |  1 +
 configs/tqma6s_mba6_spi_defconfig                      |  1 +
 configs/tqma6s_wru4_mmc_defconfig                      |  1 +
 configs/tricorder_defconfig                            |  1 +
 configs/tricorder_flash_defconfig                      |  1 +
 configs/ts4800_defconfig                               |  1 +
 configs/tseries_mmc_defconfig                          |  1 +
 configs/tseries_nand_defconfig                         |  1 +
 configs/tseries_spi_defconfig                          |  1 +
 configs/tuge1_defconfig                                |  1 +
 configs/tuxx1_defconfig                                |  1 +
 configs/twister_defconfig                              |  1 +
 configs/udoo_defconfig                                 |  1 +
 configs/usb_a9263_dataflash_defconfig                  |  1 +
 configs/usbarmory_defconfig                            |  1 +
 configs/ve8313_defconfig                               |  1 +
 configs/vexpress_aemv8a_dram_defconfig                 |  1 +
 configs/vexpress_aemv8a_juno_defconfig                 |  1 +
 configs/vexpress_aemv8a_semi_defconfig                 |  1 +
 configs/vexpress_ca15_tc2_defconfig                    |  1 +
 configs/vexpress_ca5x2_defconfig                       |  1 +
 configs/vexpress_ca9x4_defconfig                       |  1 +
 configs/vf610twr_defconfig                             |  1 +
 configs/vf610twr_nand_defconfig                        |  1 +
 configs/vme8349_defconfig                              |  1 +
 configs/walnut_defconfig                               |  1 +
 configs/wandboard_defconfig                            |  1 +
 configs/warp_defconfig                                 |  1 +
 configs/wtk_defconfig                                  |  1 +
 configs/x600_defconfig                                 |  1 +
 configs/xfi3_defconfig                                 |  1 +
 configs/xpedite517x_defconfig                          |  1 +
 configs/xpedite520x_defconfig                          |  1 +
 configs/xpedite537x_defconfig                          |  1 +
 configs/xpedite550x_defconfig                          |  1 +
 configs/yellowstone_defconfig                          |  1 +
 configs/yosemite_defconfig                             |  1 +
 configs/yucca_defconfig                                |  1 +
 include/config_distro_defaults.h                       |  2 --
 include/configs/10m50_devboard.h                       |  1 -
 include/configs/3c120_devboard.h                       |  1 -
 include/configs/B4860QDS.h                             |  1 -
 include/configs/BSC9131RDB.h                           |  1 -
 include/configs/BSC9132QDS.h                           |  1 -
 include/configs/C29XPCIE.h                             |  1 -
 include/configs/CPCI4052.h                             |  1 -
 include/configs/MPC8308RDB.h                           |  1 -
 include/configs/MPC8313ERDB.h                          |  1 -
 include/configs/MPC8315ERDB.h                          |  1 -
 include/configs/MPC8323ERDB.h                          |  1 -
 include/configs/MPC832XEMDS.h                          |  1 -
 include/configs/MPC8349EMDS.h                          |  1 -
 include/configs/MPC8349ITX.h                           |  1 -
 include/configs/MPC837XEMDS.h                          |  1 -
 include/configs/MPC837XERDB.h                          |  1 -
 include/configs/MPC8536DS.h                            |  1 -
 include/configs/MPC8540ADS.h                           |  1 -
 include/configs/MPC8541CDS.h                           |  1 -
 include/configs/MPC8544DS.h                            |  1 -
 include/configs/MPC8548CDS.h                           |  1 -
 include/configs/MPC8555CDS.h                           |  1 -
 include/configs/MPC8560ADS.h                           |  1 -
 include/configs/MPC8568MDS.h                           |  1 -
 include/configs/MPC8569MDS.h                           |  1 -
 include/configs/MPC8572DS.h                            |  1 -
 include/configs/MPC8610HPCD.h                          |  1 -
 include/configs/MPC8641HPCN.h                          |  1 -
 include/configs/P1010RDB.h                             |  1 -
 include/configs/P1022DS.h                              |  1 -
 include/configs/P1023RDB.h                             |  1 -
 include/configs/P2041RDB.h                             |  1 -
 include/configs/PLU405.h                               |  1 -
 include/configs/PMC405DE.h                             |  1 -
 include/configs/PMC440.h                               |  1 -
 include/configs/T102xQDS.h                             |  1 -
 include/configs/T102xRDB.h                             |  1 -
 include/configs/T1040QDS.h                             |  1 -
 include/configs/T104xRDB.h                             |  1 -
 include/configs/T208xQDS.h                             |  1 -
 include/configs/T208xRDB.h                             |  1 -
 include/configs/T4240RDB.h                             |  1 -
 include/configs/TQM5200.h                              |  1 -
 include/configs/TQM823L.h                              |  1 -
 include/configs/TQM823M.h                              |  1 -
 include/configs/TQM834x.h                              |  1 -
 include/configs/TQM850L.h                              |  1 -
 include/configs/TQM850M.h                              |  1 -
 include/configs/TQM855L.h                              |  1 -
 include/configs/TQM855M.h                              |  1 -
 include/configs/TQM860L.h                              |  1 -
 include/configs/TQM860M.h                              |  1 -
 include/configs/TQM862L.h                              |  1 -
 include/configs/TQM862M.h                              |  1 -
 include/configs/TQM866M.h                              |  1 -
 include/configs/TQM885D.h                              |  1 -
 include/configs/UCP1020.h                              |  1 -
 include/configs/VOM405.h                               |  1 -
 include/configs/a3m071.h                               |  1 -
 include/configs/a4m072.h                               |  1 -
 include/configs/ac14xx.h                               |  1 -
 include/configs/am3517_evm.h                           |  2 --
 include/configs/amcc-common.h                          |  1 -
 include/configs/apf27.h                                |  2 --
 include/configs/arcangel4.h                            |  3 ---
 include/configs/aria.h                                 |  1 -
 include/configs/armadillo-800eva.h                     |  1 -
 include/configs/at91-sama5_common.h                    |  2 --
 include/configs/at91rm9200ek.h                         |  1 -
 include/configs/at91sam9260ek.h                        |  2 --
 include/configs/at91sam9261ek.h                        |  3 ---
 include/configs/at91sam9263ek.h                        |  2 --
 include/configs/at91sam9m10g45ek.h                     |  2 --
 include/configs/at91sam9n12ek.h                        |  2 --
 include/configs/at91sam9rlek.h                         |  2 --
 include/configs/at91sam9x5ek.h                         |  2 --
 include/configs/axs101.h                               |  2 --
 include/configs/bcm_ep_board.h                         |  3 ---
 include/configs/cm5200.h                               |  1 -
 include/configs/cm_t35.h                               |  2 --
 include/configs/cm_t3517.h                             |  1 -
 include/configs/cm_t54.h                               |  1 -
 include/configs/colibri_pxa270.h                       |  1 -
 include/configs/colibri_vf.h                           |  1 -
 include/configs/controlcenterd.h                       |  1 -
 include/configs/corenet_ds.h                           |  1 -
 include/configs/corvus.h                               |  1 -
 include/configs/cyrus.h                                |  1 -
 include/configs/da850evm.h                             |  1 -
 include/configs/devkit3250.h                           |  1 -
 include/configs/digsy_mtc.h                            |  1 -
 include/configs/dns325.h                               |  5 -----
 include/configs/hikey.h                                |  3 ---
 include/configs/hrcon.h                                |  1 -
 include/configs/ids8313.h                              |  1 -
 include/configs/integrator-common.h                    |  1 -
 include/configs/ipek01.h                               |  1 -
 include/configs/jupiter.h                              |  1 -
 include/configs/km/km-powerpc.h                        |  1 -
 include/configs/km/km_arm.h                            |  3 ---
 include/configs/km/kmp204x-common.h                    |  1 -
 include/configs/kwb.h                                  |  1 -
 include/configs/kzm9g.h                                |  1 -
 include/configs/lacie_kw.h                             |  5 -----
 include/configs/ls1021aqds.h                           |  1 -
 include/configs/ls1021atwr.h                           |  1 -
 include/configs/ls1043a_common.h                       |  1 -
 include/configs/ls1043aqds.h                           |  1 -
 include/configs/ls2080a_common.h                       |  1 -
 include/configs/lsxl.h                                 |  1 -
 include/configs/lwmon5.h                               |  1 -
 include/configs/m53evk.h                               |  1 -
 include/configs/manroland/common.h                     |  1 -
 include/configs/mcx.h                                  |  1 -
 include/configs/mecp5123.h                             |  1 -
 include/configs/meesc.h                                |  1 -
 include/configs/microblaze-generic.h                   |  1 -
 include/configs/motionpro.h                            |  1 -
 include/configs/mpc5121ads.h                           |  1 -
 include/configs/mpc8308_p1m.h                          |  1 -
 include/configs/munices.h                              |  1 -
 include/configs/mv-common.h                            |  2 --
 include/configs/mv-plug-common.h                       |  5 -----
 include/configs/mx25pdk.h                              |  1 -
 include/configs/mx31ads.h                              |  1 -
 include/configs/mx35pdk.h                              |  1 -
 include/configs/mx51evk.h                              |  2 --
 include/configs/mx53ard.h                              |  1 -
 include/configs/mx53evk.h                              |  2 --
 include/configs/mx53loco.h                             |  2 --
 include/configs/mx53smd.h                              |  2 --
 include/configs/mx6_common.h                           |  1 -
 include/configs/mx6ul_14x14_evk.h                      |  1 -
 include/configs/mx7_common.h                           |  1 -
 include/configs/mxs.h                                  |  3 ---
 include/configs/nas220.h                               |  6 ------
 include/configs/nyan-big.h                             |  1 -
 include/configs/o2dnt-common.h                         |  1 -
 include/configs/omapl138_lcdk.h                        |  1 -
 include/configs/openrisc-generic.h                     |  1 -
 include/configs/p1_p2_rdb_pc.h                         |  1 -
 include/configs/p1_twr.h                               |  1 -
 include/configs/pcm030.h                               |  1 -
 include/configs/pcm052.h                               |  1 -
 include/configs/pdm360ng.h                             |  1 -
 include/configs/picosam9g45.h                          |  2 --
 include/configs/qemu-ppce500.h                         |  1 -
 include/configs/rcar-gen2-common.h                     |  1 -
 include/configs/rk3288_common.h                        |  1 -
 include/configs/s5p_goni.h                             |  3 ---
 include/configs/sandbox.h                              |  1 -
 include/configs/sbc8349.h                              |  1 -
 include/configs/sbc8548.h                              |  1 -
 include/configs/sbc8641d.h                             |  1 -
 include/configs/siemens-am33x-common.h                 |  1 -
 include/configs/smartweb.h                             |  1 -
 include/configs/smdkc100.h                             |  3 ---
 include/configs/socfpga_common.h                       |  1 -
 include/configs/socrates.h                             |  2 --
 include/configs/stm32f429-discovery.h                  |  2 --
 include/configs/strider.h                              |  1 -
 include/configs/stv0991.h                              |  2 --
 include/configs/t4qds.h                                |  1 -
 include/configs/tam3517-common.h                       |  1 -
 include/configs/tao3530.h                              |  2 --
 include/configs/taurus.h                               |  1 -
 include/configs/tb100.h                                |  2 --
 include/configs/thunderx_88xx.h                        |  3 ---
 include/configs/ti814x_evm.h                           |  1 -
 include/configs/ti816x_evm.h                           |  1 -
 include/configs/ti_armv7_common.h                      |  1 -
 include/configs/tqma6.h                                |  1 -
 include/configs/tricorder.h                            |  2 --
 include/configs/ts4800.h                               |  2 --
 include/configs/tseries.h                              |  1 -
 include/configs/uniphier.h                             |  3 ---
 include/configs/usb_a9263.h                            |  1 -
 include/configs/usbarmory.h                            |  1 -
 include/configs/ve8313.h                               |  1 -
 include/configs/vexpress_aemv8a.h                      |  3 ---
 include/configs/vf610twr.h                             |  1 -
 include/configs/vme8349.h                              |  1 -
 include/configs/x600.h                                 |  1 -
 include/configs/x86-common.h                           |  1 -
 include/configs/xilinx_zynqmp.h                        |  1 -
 include/configs/xpedite517x.h                          |  1 -
 include/configs/xpedite520x.h                          |  1 -
 include/configs/xpedite537x.h                          |  1 -
 include/configs/xpedite550x.h                          |  1 -
 include/configs/zynq-common.h                          |  3 ---
 include/image.h                                        |  1 -
 lib/Kconfig                                            | 10 ++++++++++
 882 files changed, 699 insertions(+), 258 deletions(-)

diff --git a/configs/B4420QDS_NAND_defconfig b/configs/B4420QDS_NAND_defconfig
index e50833a..3e08b2e 100644
--- a/configs/B4420QDS_NAND_defconfig
+++ b/configs/B4420QDS_NAND_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/B4420QDS_SPIFLASH_defconfig b/configs/B4420QDS_SPIFLASH_defconfig
index b53a1cf..aa463e1 100644
--- a/configs/B4420QDS_SPIFLASH_defconfig
+++ b/configs/B4420QDS_SPIFLASH_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/B4420QDS_defconfig b/configs/B4420QDS_defconfig
index 8308b95..bb01b27 100644
--- a/configs/B4420QDS_defconfig
+++ b/configs/B4420QDS_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/B4860QDS_NAND_defconfig b/configs/B4860QDS_NAND_defconfig
index a8f05db..cfa664c 100644
--- a/configs/B4860QDS_NAND_defconfig
+++ b/configs/B4860QDS_NAND_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/B4860QDS_SECURE_BOOT_defconfig b/configs/B4860QDS_SECURE_BOOT_defconfig
index 1a61dc3..6273157 100644
--- a/configs/B4860QDS_SECURE_BOOT_defconfig
+++ b/configs/B4860QDS_SECURE_BOOT_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/B4860QDS_SPIFLASH_defconfig b/configs/B4860QDS_SPIFLASH_defconfig
index 0875ee7..2bf7ee4 100644
--- a/configs/B4860QDS_SPIFLASH_defconfig
+++ b/configs/B4860QDS_SPIFLASH_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/B4860QDS_SRIO_PCIE_BOOT_defconfig b/configs/B4860QDS_SRIO_PCIE_BOOT_defconfig
index 11db5bc..f2e79f5 100644
--- a/configs/B4860QDS_SRIO_PCIE_BOOT_defconfig
+++ b/configs/B4860QDS_SRIO_PCIE_BOOT_defconfig
@@ -10,3 +10,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/B4860QDS_defconfig b/configs/B4860QDS_defconfig
index 54ceec7..e03447c 100644
--- a/configs/B4860QDS_defconfig
+++ b/configs/B4860QDS_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/BSC9131RDB_NAND_SYSCLK100_defconfig b/configs/BSC9131RDB_NAND_SYSCLK100_defconfig
index 5e0e09b..1d9b859 100644
--- a/configs/BSC9131RDB_NAND_SYSCLK100_defconfig
+++ b/configs/BSC9131RDB_NAND_SYSCLK100_defconfig
@@ -9,3 +9,4 @@ CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/BSC9131RDB_NAND_defconfig b/configs/BSC9131RDB_NAND_defconfig
index 4f666f1..ed6f861 100644
--- a/configs/BSC9131RDB_NAND_defconfig
+++ b/configs/BSC9131RDB_NAND_defconfig
@@ -9,3 +9,4 @@ CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/BSC9131RDB_SPIFLASH_SYSCLK100_defconfig b/configs/BSC9131RDB_SPIFLASH_SYSCLK100_defconfig
index ca90c83..52c1363 100644
--- a/configs/BSC9131RDB_SPIFLASH_SYSCLK100_defconfig
+++ b/configs/BSC9131RDB_SPIFLASH_SYSCLK100_defconfig
@@ -8,3 +8,4 @@ CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/BSC9131RDB_SPIFLASH_defconfig b/configs/BSC9131RDB_SPIFLASH_defconfig
index 2902a68..13c4fe6 100644
--- a/configs/BSC9131RDB_SPIFLASH_defconfig
+++ b/configs/BSC9131RDB_SPIFLASH_defconfig
@@ -8,3 +8,4 @@ CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/BSC9132QDS_NAND_DDRCLK100_SECURE_defconfig b/configs/BSC9132QDS_NAND_DDRCLK100_SECURE_defconfig
index 15e3862..32f2010 100644
--- a/configs/BSC9132QDS_NAND_DDRCLK100_SECURE_defconfig
+++ b/configs/BSC9132QDS_NAND_DDRCLK100_SECURE_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/BSC9132QDS_NAND_DDRCLK100_defconfig b/configs/BSC9132QDS_NAND_DDRCLK100_defconfig
index 48f1c3c..b19b3ee 100644
--- a/configs/BSC9132QDS_NAND_DDRCLK100_defconfig
+++ b/configs/BSC9132QDS_NAND_DDRCLK100_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/BSC9132QDS_NAND_DDRCLK133_SECURE_defconfig b/configs/BSC9132QDS_NAND_DDRCLK133_SECURE_defconfig
index b909789..646850d 100644
--- a/configs/BSC9132QDS_NAND_DDRCLK133_SECURE_defconfig
+++ b/configs/BSC9132QDS_NAND_DDRCLK133_SECURE_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/BSC9132QDS_NAND_DDRCLK133_defconfig b/configs/BSC9132QDS_NAND_DDRCLK133_defconfig
index 06b411d..5bf5e1d 100644
--- a/configs/BSC9132QDS_NAND_DDRCLK133_defconfig
+++ b/configs/BSC9132QDS_NAND_DDRCLK133_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/BSC9132QDS_NOR_DDRCLK100_SECURE_defconfig b/configs/BSC9132QDS_NOR_DDRCLK100_SECURE_defconfig
index 6f37d36..a593f75 100644
--- a/configs/BSC9132QDS_NOR_DDRCLK100_SECURE_defconfig
+++ b/configs/BSC9132QDS_NOR_DDRCLK100_SECURE_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/BSC9132QDS_NOR_DDRCLK100_defconfig b/configs/BSC9132QDS_NOR_DDRCLK100_defconfig
index 4993dc9..27db61d 100644
--- a/configs/BSC9132QDS_NOR_DDRCLK100_defconfig
+++ b/configs/BSC9132QDS_NOR_DDRCLK100_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/BSC9132QDS_NOR_DDRCLK133_SECURE_defconfig b/configs/BSC9132QDS_NOR_DDRCLK133_SECURE_defconfig
index d69047e..a31435e 100644
--- a/configs/BSC9132QDS_NOR_DDRCLK133_SECURE_defconfig
+++ b/configs/BSC9132QDS_NOR_DDRCLK133_SECURE_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/BSC9132QDS_NOR_DDRCLK133_defconfig b/configs/BSC9132QDS_NOR_DDRCLK133_defconfig
index f9129ca..ede7b04 100644
--- a/configs/BSC9132QDS_NOR_DDRCLK133_defconfig
+++ b/configs/BSC9132QDS_NOR_DDRCLK133_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/BSC9132QDS_SDCARD_DDRCLK100_SECURE_defconfig b/configs/BSC9132QDS_SDCARD_DDRCLK100_SECURE_defconfig
index d11e9e3..45497ae 100644
--- a/configs/BSC9132QDS_SDCARD_DDRCLK100_SECURE_defconfig
+++ b/configs/BSC9132QDS_SDCARD_DDRCLK100_SECURE_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/BSC9132QDS_SDCARD_DDRCLK100_defconfig b/configs/BSC9132QDS_SDCARD_DDRCLK100_defconfig
index 4c22ce6..c4ce52f 100644
--- a/configs/BSC9132QDS_SDCARD_DDRCLK100_defconfig
+++ b/configs/BSC9132QDS_SDCARD_DDRCLK100_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/BSC9132QDS_SDCARD_DDRCLK133_SECURE_defconfig b/configs/BSC9132QDS_SDCARD_DDRCLK133_SECURE_defconfig
index f350c34..da07cb7 100644
--- a/configs/BSC9132QDS_SDCARD_DDRCLK133_SECURE_defconfig
+++ b/configs/BSC9132QDS_SDCARD_DDRCLK133_SECURE_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/BSC9132QDS_SDCARD_DDRCLK133_defconfig b/configs/BSC9132QDS_SDCARD_DDRCLK133_defconfig
index 1862f0c..434b7cb 100644
--- a/configs/BSC9132QDS_SDCARD_DDRCLK133_defconfig
+++ b/configs/BSC9132QDS_SDCARD_DDRCLK133_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/BSC9132QDS_SPIFLASH_DDRCLK100_SECURE_defconfig b/configs/BSC9132QDS_SPIFLASH_DDRCLK100_SECURE_defconfig
index 5173a5b..d3bc4a0 100644
--- a/configs/BSC9132QDS_SPIFLASH_DDRCLK100_SECURE_defconfig
+++ b/configs/BSC9132QDS_SPIFLASH_DDRCLK100_SECURE_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/BSC9132QDS_SPIFLASH_DDRCLK100_defconfig b/configs/BSC9132QDS_SPIFLASH_DDRCLK100_defconfig
index a1a5cd3..b63db17 100644
--- a/configs/BSC9132QDS_SPIFLASH_DDRCLK100_defconfig
+++ b/configs/BSC9132QDS_SPIFLASH_DDRCLK100_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/BSC9132QDS_SPIFLASH_DDRCLK133_SECURE_defconfig b/configs/BSC9132QDS_SPIFLASH_DDRCLK133_SECURE_defconfig
index 14ed190..1ba0f24 100644
--- a/configs/BSC9132QDS_SPIFLASH_DDRCLK133_SECURE_defconfig
+++ b/configs/BSC9132QDS_SPIFLASH_DDRCLK133_SECURE_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/BSC9132QDS_SPIFLASH_DDRCLK133_defconfig b/configs/BSC9132QDS_SPIFLASH_DDRCLK133_defconfig
index 6e5fbaf..7318d69 100644
--- a/configs/BSC9132QDS_SPIFLASH_DDRCLK133_defconfig
+++ b/configs/BSC9132QDS_SPIFLASH_DDRCLK133_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/C29XPCIE_NAND_defconfig b/configs/C29XPCIE_NAND_defconfig
index bef3771..8fa3f23 100644
--- a/configs/C29XPCIE_NAND_defconfig
+++ b/configs/C29XPCIE_NAND_defconfig
@@ -11,3 +11,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/C29XPCIE_NOR_SECBOOT_defconfig b/configs/C29XPCIE_NOR_SECBOOT_defconfig
index 110e597..1e471be 100644
--- a/configs/C29XPCIE_NOR_SECBOOT_defconfig
+++ b/configs/C29XPCIE_NOR_SECBOOT_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/C29XPCIE_SPIFLASH_SECBOOT_defconfig b/configs/C29XPCIE_SPIFLASH_SECBOOT_defconfig
index de0beb6..7506185 100644
--- a/configs/C29XPCIE_SPIFLASH_SECBOOT_defconfig
+++ b/configs/C29XPCIE_SPIFLASH_SECBOOT_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/C29XPCIE_SPIFLASH_defconfig b/configs/C29XPCIE_SPIFLASH_defconfig
index d2d9262..52a5ee3 100644
--- a/configs/C29XPCIE_SPIFLASH_defconfig
+++ b/configs/C29XPCIE_SPIFLASH_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/C29XPCIE_defconfig b/configs/C29XPCIE_defconfig
index 373db16..be242e6 100644
--- a/configs/C29XPCIE_defconfig
+++ b/configs/C29XPCIE_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/CPCI4052_defconfig b/configs/CPCI4052_defconfig
index ba4a13e..9e52f12 100644
--- a/configs/CPCI4052_defconfig
+++ b/configs/CPCI4052_defconfig
@@ -6,3 +6,4 @@ CONFIG_AUTOBOOT_PROMPT="Press SPACE to abort autoboot in %d seconds\n"
 CONFIG_AUTOBOOT_STOP_STR=" "
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/Cyrus_P5020_defconfig b/configs/Cyrus_P5020_defconfig
index e4deda9..d0ba224 100644
--- a/configs/Cyrus_P5020_defconfig
+++ b/configs/Cyrus_P5020_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/Cyrus_P5040_defconfig b/configs/Cyrus_P5040_defconfig
index 026d37a..910436e 100644
--- a/configs/Cyrus_P5040_defconfig
+++ b/configs/Cyrus_P5040_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC8308RDB_defconfig b/configs/MPC8308RDB_defconfig
index 2aec6d9..d9303eb 100644
--- a/configs/MPC8308RDB_defconfig
+++ b/configs/MPC8308RDB_defconfig
@@ -3,3 +3,4 @@ CONFIG_MPC83xx=y
 CONFIG_TARGET_MPC8308RDB=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC8313ERDB_33_defconfig b/configs/MPC8313ERDB_33_defconfig
index d736191..e32ccbe 100644
--- a/configs/MPC8313ERDB_33_defconfig
+++ b/configs/MPC8313ERDB_33_defconfig
@@ -5,3 +5,4 @@ CONFIG_SYS_EXTRA_OPTIONS="SYS_33MHZ"
 CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC8313ERDB_66_defconfig b/configs/MPC8313ERDB_66_defconfig
index 583fde8..9e9308b 100644
--- a/configs/MPC8313ERDB_66_defconfig
+++ b/configs/MPC8313ERDB_66_defconfig
@@ -5,3 +5,4 @@ CONFIG_SYS_EXTRA_OPTIONS="SYS_66MHZ"
 CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC8313ERDB_NAND_33_defconfig b/configs/MPC8313ERDB_NAND_33_defconfig
index 7faa2fe..3856f75 100644
--- a/configs/MPC8313ERDB_NAND_33_defconfig
+++ b/configs/MPC8313ERDB_NAND_33_defconfig
@@ -6,3 +6,4 @@ CONFIG_SYS_EXTRA_OPTIONS="SYS_33MHZ,NAND"
 CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC8313ERDB_NAND_66_defconfig b/configs/MPC8313ERDB_NAND_66_defconfig
index bb4a35d..8e0a704 100644
--- a/configs/MPC8313ERDB_NAND_66_defconfig
+++ b/configs/MPC8313ERDB_NAND_66_defconfig
@@ -6,3 +6,4 @@ CONFIG_SYS_EXTRA_OPTIONS="SYS_66MHZ,NAND"
 CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC8315ERDB_defconfig b/configs/MPC8315ERDB_defconfig
index 3d9dede..8d4881b 100644
--- a/configs/MPC8315ERDB_defconfig
+++ b/configs/MPC8315ERDB_defconfig
@@ -3,3 +3,4 @@ CONFIG_MPC83xx=y
 CONFIG_TARGET_MPC8315ERDB=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC8323ERDB_defconfig b/configs/MPC8323ERDB_defconfig
index 337a0dd..003c592 100644
--- a/configs/MPC8323ERDB_defconfig
+++ b/configs/MPC8323ERDB_defconfig
@@ -3,3 +3,4 @@ CONFIG_MPC83xx=y
 CONFIG_TARGET_MPC8323ERDB=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC832XEMDS_ATM_defconfig b/configs/MPC832XEMDS_ATM_defconfig
index cd29b89..9408528 100644
--- a/configs/MPC832XEMDS_ATM_defconfig
+++ b/configs/MPC832XEMDS_ATM_defconfig
@@ -4,3 +4,4 @@ CONFIG_TARGET_MPC832XEMDS=y
 CONFIG_SYS_EXTRA_OPTIONS="PQ_MDS_PIB=1,PQ_MDS_PIB_ATM=1"
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC832XEMDS_HOST_33_defconfig b/configs/MPC832XEMDS_HOST_33_defconfig
index 071fe08..680b6bc 100644
--- a/configs/MPC832XEMDS_HOST_33_defconfig
+++ b/configs/MPC832XEMDS_HOST_33_defconfig
@@ -4,3 +4,4 @@ CONFIG_TARGET_MPC832XEMDS=y
 CONFIG_SYS_EXTRA_OPTIONS="PCI,PCI_33M,PQ_MDS_PIB=1"
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC832XEMDS_HOST_66_defconfig b/configs/MPC832XEMDS_HOST_66_defconfig
index 789c8b1..acbe1d1 100644
--- a/configs/MPC832XEMDS_HOST_66_defconfig
+++ b/configs/MPC832XEMDS_HOST_66_defconfig
@@ -4,3 +4,4 @@ CONFIG_TARGET_MPC832XEMDS=y
 CONFIG_SYS_EXTRA_OPTIONS="PCI,PCI_66M,PQ_MDS_PIB=1"
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC832XEMDS_SLAVE_defconfig b/configs/MPC832XEMDS_SLAVE_defconfig
index 7f5c55a..a5c01b6 100644
--- a/configs/MPC832XEMDS_SLAVE_defconfig
+++ b/configs/MPC832XEMDS_SLAVE_defconfig
@@ -4,3 +4,4 @@ CONFIG_TARGET_MPC832XEMDS=y
 CONFIG_SYS_EXTRA_OPTIONS="PCI,PCISLAVE"
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC832XEMDS_defconfig b/configs/MPC832XEMDS_defconfig
index 2ea5868..ea2cc02 100644
--- a/configs/MPC832XEMDS_defconfig
+++ b/configs/MPC832XEMDS_defconfig
@@ -3,3 +3,4 @@ CONFIG_MPC83xx=y
 CONFIG_TARGET_MPC832XEMDS=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC8349EMDS_defconfig b/configs/MPC8349EMDS_defconfig
index f4d1d45..db62b52 100644
--- a/configs/MPC8349EMDS_defconfig
+++ b/configs/MPC8349EMDS_defconfig
@@ -3,3 +3,4 @@ CONFIG_MPC83xx=y
 CONFIG_TARGET_MPC8349EMDS=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC8349ITXGP_defconfig b/configs/MPC8349ITXGP_defconfig
index 445beb6..c1bc8ca 100644
--- a/configs/MPC8349ITXGP_defconfig
+++ b/configs/MPC8349ITXGP_defconfig
@@ -5,3 +5,4 @@ CONFIG_SYS_EXTRA_OPTIONS="MPC8349ITXGP,SYS_TEXT_BASE=0xFE000000"
 CONFIG_SYS_PROMPT="MPC8349E-mITX-GP> "
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC8349ITX_LOWBOOT_defconfig b/configs/MPC8349ITX_LOWBOOT_defconfig
index c260a46..9b85433 100644
--- a/configs/MPC8349ITX_LOWBOOT_defconfig
+++ b/configs/MPC8349ITX_LOWBOOT_defconfig
@@ -5,3 +5,4 @@ CONFIG_SYS_EXTRA_OPTIONS="MPC8349ITX,SYS_TEXT_BASE=0xFE000000"
 CONFIG_SYS_PROMPT="MPC8349E-mITX> "
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC8349ITX_defconfig b/configs/MPC8349ITX_defconfig
index 5b234c6..1ea68f8 100644
--- a/configs/MPC8349ITX_defconfig
+++ b/configs/MPC8349ITX_defconfig
@@ -5,3 +5,4 @@ CONFIG_SYS_EXTRA_OPTIONS="MPC8349ITX"
 CONFIG_SYS_PROMPT="MPC8349E-mITX> "
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC837XEMDS_HOST_defconfig b/configs/MPC837XEMDS_HOST_defconfig
index 972e0f8..9ce9914 100644
--- a/configs/MPC837XEMDS_HOST_defconfig
+++ b/configs/MPC837XEMDS_HOST_defconfig
@@ -4,3 +4,4 @@ CONFIG_TARGET_MPC837XEMDS=y
 CONFIG_SYS_EXTRA_OPTIONS="PCI"
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC837XEMDS_defconfig b/configs/MPC837XEMDS_defconfig
index 9ddddde..bf5e1b3 100644
--- a/configs/MPC837XEMDS_defconfig
+++ b/configs/MPC837XEMDS_defconfig
@@ -3,3 +3,4 @@ CONFIG_MPC83xx=y
 CONFIG_TARGET_MPC837XEMDS=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC837XERDB_defconfig b/configs/MPC837XERDB_defconfig
index c77fe0c..ec76ba9 100644
--- a/configs/MPC837XERDB_defconfig
+++ b/configs/MPC837XERDB_defconfig
@@ -3,3 +3,4 @@ CONFIG_MPC83xx=y
 CONFIG_TARGET_MPC837XERDB=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC8536DS_36BIT_defconfig b/configs/MPC8536DS_36BIT_defconfig
index fdea51d..cec9709 100644
--- a/configs/MPC8536DS_36BIT_defconfig
+++ b/configs/MPC8536DS_36BIT_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC8536DS_SDCARD_defconfig b/configs/MPC8536DS_SDCARD_defconfig
index a7492fd..1a3ea88 100644
--- a/configs/MPC8536DS_SDCARD_defconfig
+++ b/configs/MPC8536DS_SDCARD_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC8536DS_SPIFLASH_defconfig b/configs/MPC8536DS_SPIFLASH_defconfig
index e2a4226..17df692 100644
--- a/configs/MPC8536DS_SPIFLASH_defconfig
+++ b/configs/MPC8536DS_SPIFLASH_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC8536DS_defconfig b/configs/MPC8536DS_defconfig
index c07b84a..78fef28 100644
--- a/configs/MPC8536DS_defconfig
+++ b/configs/MPC8536DS_defconfig
@@ -7,3 +7,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC8540ADS_defconfig b/configs/MPC8540ADS_defconfig
index 1239ba8..f6906f7 100644
--- a/configs/MPC8540ADS_defconfig
+++ b/configs/MPC8540ADS_defconfig
@@ -2,3 +2,4 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_MPC8540ADS=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC8541CDS_defconfig b/configs/MPC8541CDS_defconfig
index 0c5cc13..a487f19 100644
--- a/configs/MPC8541CDS_defconfig
+++ b/configs/MPC8541CDS_defconfig
@@ -2,3 +2,4 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_MPC8541CDS=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC8541CDS_legacy_defconfig b/configs/MPC8541CDS_legacy_defconfig
index 3ae3a3d..73b7a72 100644
--- a/configs/MPC8541CDS_legacy_defconfig
+++ b/configs/MPC8541CDS_legacy_defconfig
@@ -3,3 +3,4 @@ CONFIG_MPC85xx=y
 CONFIG_TARGET_MPC8541CDS=y
 CONFIG_SYS_EXTRA_OPTIONS="LEGACY"
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC8544DS_defconfig b/configs/MPC8544DS_defconfig
index e4e2f9c..48cac28 100644
--- a/configs/MPC8544DS_defconfig
+++ b/configs/MPC8544DS_defconfig
@@ -4,3 +4,4 @@ CONFIG_TARGET_MPC8544DS=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC8548CDS_36BIT_defconfig b/configs/MPC8548CDS_36BIT_defconfig
index 5e635e0..a880825 100644
--- a/configs/MPC8548CDS_36BIT_defconfig
+++ b/configs/MPC8548CDS_36BIT_defconfig
@@ -5,3 +5,4 @@ CONFIG_SYS_EXTRA_OPTIONS="36BIT"
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC8548CDS_defconfig b/configs/MPC8548CDS_defconfig
index ac2c090..fd7d87b 100644
--- a/configs/MPC8548CDS_defconfig
+++ b/configs/MPC8548CDS_defconfig
@@ -4,3 +4,4 @@ CONFIG_TARGET_MPC8548CDS=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC8548CDS_legacy_defconfig b/configs/MPC8548CDS_legacy_defconfig
index 3e1ecd7..73231f4 100644
--- a/configs/MPC8548CDS_legacy_defconfig
+++ b/configs/MPC8548CDS_legacy_defconfig
@@ -5,3 +5,4 @@ CONFIG_SYS_EXTRA_OPTIONS="LEGACY"
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC8555CDS_defconfig b/configs/MPC8555CDS_defconfig
index 9a7c16e..fc88ec9 100644
--- a/configs/MPC8555CDS_defconfig
+++ b/configs/MPC8555CDS_defconfig
@@ -2,3 +2,4 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_MPC8555CDS=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC8555CDS_legacy_defconfig b/configs/MPC8555CDS_legacy_defconfig
index eb6382c..bc069e1 100644
--- a/configs/MPC8555CDS_legacy_defconfig
+++ b/configs/MPC8555CDS_legacy_defconfig
@@ -3,3 +3,4 @@ CONFIG_MPC85xx=y
 CONFIG_TARGET_MPC8555CDS=y
 CONFIG_SYS_EXTRA_OPTIONS="LEGACY"
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC8560ADS_defconfig b/configs/MPC8560ADS_defconfig
index aa84d28..671f805 100644
--- a/configs/MPC8560ADS_defconfig
+++ b/configs/MPC8560ADS_defconfig
@@ -1,3 +1,4 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_MPC8560ADS=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC8568MDS_defconfig b/configs/MPC8568MDS_defconfig
index 36b5c3b..be7de94 100644
--- a/configs/MPC8568MDS_defconfig
+++ b/configs/MPC8568MDS_defconfig
@@ -2,3 +2,4 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_MPC8568MDS=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC8569MDS_ATM_defconfig b/configs/MPC8569MDS_ATM_defconfig
index 186126b..d7dda0c 100644
--- a/configs/MPC8569MDS_ATM_defconfig
+++ b/configs/MPC8569MDS_ATM_defconfig
@@ -5,3 +5,4 @@ CONFIG_SYS_EXTRA_OPTIONS="ATM"
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC8569MDS_defconfig b/configs/MPC8569MDS_defconfig
index bfb51d2..7f728d8 100644
--- a/configs/MPC8569MDS_defconfig
+++ b/configs/MPC8569MDS_defconfig
@@ -4,3 +4,4 @@ CONFIG_TARGET_MPC8569MDS=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC8572DS_36BIT_defconfig b/configs/MPC8572DS_36BIT_defconfig
index 878404b..3682156 100644
--- a/configs/MPC8572DS_36BIT_defconfig
+++ b/configs/MPC8572DS_36BIT_defconfig
@@ -5,3 +5,4 @@ CONFIG_SYS_EXTRA_OPTIONS="36BIT"
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC8572DS_defconfig b/configs/MPC8572DS_defconfig
index 8b42ea3..c498e76 100644
--- a/configs/MPC8572DS_defconfig
+++ b/configs/MPC8572DS_defconfig
@@ -4,3 +4,4 @@ CONFIG_TARGET_MPC8572DS=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC8610HPCD_defconfig b/configs/MPC8610HPCD_defconfig
index bdde5d0..41e9553 100644
--- a/configs/MPC8610HPCD_defconfig
+++ b/configs/MPC8610HPCD_defconfig
@@ -3,3 +3,4 @@ CONFIG_MPC86xx=y
 CONFIG_TARGET_MPC8610HPCD=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC8641HPCN_36BIT_defconfig b/configs/MPC8641HPCN_36BIT_defconfig
index 46f8077..14e8312 100644
--- a/configs/MPC8641HPCN_36BIT_defconfig
+++ b/configs/MPC8641HPCN_36BIT_defconfig
@@ -4,3 +4,4 @@ CONFIG_TARGET_MPC8641HPCN=y
 CONFIG_SYS_EXTRA_OPTIONS="PHYS_64BIT"
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC8641HPCN_defconfig b/configs/MPC8641HPCN_defconfig
index 25056d6..902a76b 100644
--- a/configs/MPC8641HPCN_defconfig
+++ b/configs/MPC8641HPCN_defconfig
@@ -3,3 +3,4 @@ CONFIG_MPC86xx=y
 CONFIG_TARGET_MPC8641HPCN=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/MiniFAP_defconfig b/configs/MiniFAP_defconfig
index 1e5fd75..87ab5bc 100644
--- a/configs/MiniFAP_defconfig
+++ b/configs/MiniFAP_defconfig
@@ -3,3 +3,4 @@ CONFIG_MPC5xxx=y
 CONFIG_TARGET_TQM5200=y
 CONFIG_SYS_EXTRA_OPTIONS="MINIFAP"
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/O2D300_defconfig b/configs/O2D300_defconfig
index db88295..8a54b82 100644
--- a/configs/O2D300_defconfig
+++ b/configs/O2D300_defconfig
@@ -2,3 +2,4 @@ CONFIG_PPC=y
 CONFIG_MPC5xxx=y
 CONFIG_TARGET_O2D300=y
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/O2DNT2_RAMBOOT_defconfig b/configs/O2DNT2_RAMBOOT_defconfig
index ca54ca5..cfd224c 100644
--- a/configs/O2DNT2_RAMBOOT_defconfig
+++ b/configs/O2DNT2_RAMBOOT_defconfig
@@ -6,3 +6,4 @@ CONFIG_AUTOBOOT_KEYED=y
 CONFIG_AUTOBOOT_PROMPT="Autobooting in %d seconds, press password to stop\n"
 CONFIG_AUTOBOOT_STOP_STR="++++++++++"
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/O2DNT2_defconfig b/configs/O2DNT2_defconfig
index a4ead75..90c79ec 100644
--- a/configs/O2DNT2_defconfig
+++ b/configs/O2DNT2_defconfig
@@ -5,3 +5,4 @@ CONFIG_AUTOBOOT_KEYED=y
 CONFIG_AUTOBOOT_PROMPT="Autobooting in %d seconds, press password to stop\n"
 CONFIG_AUTOBOOT_STOP_STR="++++++++++"
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/O2D_defconfig b/configs/O2D_defconfig
index 3248fc9..96dbd0b 100644
--- a/configs/O2D_defconfig
+++ b/configs/O2D_defconfig
@@ -2,3 +2,4 @@ CONFIG_PPC=y
 CONFIG_MPC5xxx=y
 CONFIG_TARGET_O2D=y
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/O2I_defconfig b/configs/O2I_defconfig
index 5d51be6..61fb0c3 100644
--- a/configs/O2I_defconfig
+++ b/configs/O2I_defconfig
@@ -2,3 +2,4 @@ CONFIG_PPC=y
 CONFIG_MPC5xxx=y
 CONFIG_TARGET_O2I=y
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/O2MNT_O2M110_defconfig b/configs/O2MNT_O2M110_defconfig
index 22e7e98..ebb9d3c 100644
--- a/configs/O2MNT_O2M110_defconfig
+++ b/configs/O2MNT_O2M110_defconfig
@@ -3,3 +3,4 @@ CONFIG_MPC5xxx=y
 CONFIG_TARGET_O2MNT=y
 CONFIG_SYS_EXTRA_OPTIONS="IFM_SENSOR_TYPE=\"O2M110\""
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/O2MNT_O2M112_defconfig b/configs/O2MNT_O2M112_defconfig
index 5342719..3bf3cff 100644
--- a/configs/O2MNT_O2M112_defconfig
+++ b/configs/O2MNT_O2M112_defconfig
@@ -3,3 +3,4 @@ CONFIG_MPC5xxx=y
 CONFIG_TARGET_O2MNT=y
 CONFIG_SYS_EXTRA_OPTIONS="IFM_SENSOR_TYPE=\"O2M112\""
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/O2MNT_O2M113_defconfig b/configs/O2MNT_O2M113_defconfig
index bcbb598..05f6f08 100644
--- a/configs/O2MNT_O2M113_defconfig
+++ b/configs/O2MNT_O2M113_defconfig
@@ -3,3 +3,4 @@ CONFIG_MPC5xxx=y
 CONFIG_TARGET_O2MNT=y
 CONFIG_SYS_EXTRA_OPTIONS="IFM_SENSOR_TYPE=\"O2M113\""
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/O2MNT_defconfig b/configs/O2MNT_defconfig
index a29f70a..45236f7 100644
--- a/configs/O2MNT_defconfig
+++ b/configs/O2MNT_defconfig
@@ -2,3 +2,4 @@ CONFIG_PPC=y
 CONFIG_MPC5xxx=y
 CONFIG_TARGET_O2MNT=y
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/O3DNT_defconfig b/configs/O3DNT_defconfig
index 8411294..5f2f0c1 100644
--- a/configs/O3DNT_defconfig
+++ b/configs/O3DNT_defconfig
@@ -2,3 +2,4 @@ CONFIG_PPC=y
 CONFIG_MPC5xxx=y
 CONFIG_TARGET_O3DNT=y
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1010RDB-PA_36BIT_NAND_SECBOOT_defconfig b/configs/P1010RDB-PA_36BIT_NAND_SECBOOT_defconfig
index c533f97..34f1388 100644
--- a/configs/P1010RDB-PA_36BIT_NAND_SECBOOT_defconfig
+++ b/configs/P1010RDB-PA_36BIT_NAND_SECBOOT_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1010RDB-PA_36BIT_NAND_defconfig b/configs/P1010RDB-PA_36BIT_NAND_defconfig
index 8c0f763..2a747d9 100644
--- a/configs/P1010RDB-PA_36BIT_NAND_defconfig
+++ b/configs/P1010RDB-PA_36BIT_NAND_defconfig
@@ -10,3 +10,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1010RDB-PA_36BIT_NOR_SECBOOT_defconfig b/configs/P1010RDB-PA_36BIT_NOR_SECBOOT_defconfig
index c09e73e..15c0144 100644
--- a/configs/P1010RDB-PA_36BIT_NOR_SECBOOT_defconfig
+++ b/configs/P1010RDB-PA_36BIT_NOR_SECBOOT_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1010RDB-PA_36BIT_NOR_defconfig b/configs/P1010RDB-PA_36BIT_NOR_defconfig
index 32580d8..499c8a5 100644
--- a/configs/P1010RDB-PA_36BIT_NOR_defconfig
+++ b/configs/P1010RDB-PA_36BIT_NOR_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1010RDB-PA_36BIT_SDCARD_defconfig b/configs/P1010RDB-PA_36BIT_SDCARD_defconfig
index d656b21..f50a963 100644
--- a/configs/P1010RDB-PA_36BIT_SDCARD_defconfig
+++ b/configs/P1010RDB-PA_36BIT_SDCARD_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1010RDB-PA_36BIT_SPIFLASH_SECBOOT_defconfig b/configs/P1010RDB-PA_36BIT_SPIFLASH_SECBOOT_defconfig
index 7d31491..aeac38e 100644
--- a/configs/P1010RDB-PA_36BIT_SPIFLASH_SECBOOT_defconfig
+++ b/configs/P1010RDB-PA_36BIT_SPIFLASH_SECBOOT_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1010RDB-PA_36BIT_SPIFLASH_defconfig b/configs/P1010RDB-PA_36BIT_SPIFLASH_defconfig
index 981d4db..24ec072 100644
--- a/configs/P1010RDB-PA_36BIT_SPIFLASH_defconfig
+++ b/configs/P1010RDB-PA_36BIT_SPIFLASH_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1010RDB-PA_NAND_SECBOOT_defconfig b/configs/P1010RDB-PA_NAND_SECBOOT_defconfig
index d49b5a7..914912f 100644
--- a/configs/P1010RDB-PA_NAND_SECBOOT_defconfig
+++ b/configs/P1010RDB-PA_NAND_SECBOOT_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1010RDB-PA_NAND_defconfig b/configs/P1010RDB-PA_NAND_defconfig
index f638ff2..5ecd715 100644
--- a/configs/P1010RDB-PA_NAND_defconfig
+++ b/configs/P1010RDB-PA_NAND_defconfig
@@ -10,3 +10,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1010RDB-PA_NOR_SECBOOT_defconfig b/configs/P1010RDB-PA_NOR_SECBOOT_defconfig
index 8a4793d..fdfb8e2 100644
--- a/configs/P1010RDB-PA_NOR_SECBOOT_defconfig
+++ b/configs/P1010RDB-PA_NOR_SECBOOT_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1010RDB-PA_NOR_defconfig b/configs/P1010RDB-PA_NOR_defconfig
index f00c54f..06a6f36 100644
--- a/configs/P1010RDB-PA_NOR_defconfig
+++ b/configs/P1010RDB-PA_NOR_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1010RDB-PA_SDCARD_defconfig b/configs/P1010RDB-PA_SDCARD_defconfig
index 384d0e7..5971937 100644
--- a/configs/P1010RDB-PA_SDCARD_defconfig
+++ b/configs/P1010RDB-PA_SDCARD_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1010RDB-PA_SPIFLASH_SECBOOT_defconfig b/configs/P1010RDB-PA_SPIFLASH_SECBOOT_defconfig
index 751cc54..567e9b0 100644
--- a/configs/P1010RDB-PA_SPIFLASH_SECBOOT_defconfig
+++ b/configs/P1010RDB-PA_SPIFLASH_SECBOOT_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1010RDB-PA_SPIFLASH_defconfig b/configs/P1010RDB-PA_SPIFLASH_defconfig
index fc4afce..7aa5428 100644
--- a/configs/P1010RDB-PA_SPIFLASH_defconfig
+++ b/configs/P1010RDB-PA_SPIFLASH_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1010RDB-PB_36BIT_NAND_SECBOOT_defconfig b/configs/P1010RDB-PB_36BIT_NAND_SECBOOT_defconfig
index 40e2f26..253b19a9 100644
--- a/configs/P1010RDB-PB_36BIT_NAND_SECBOOT_defconfig
+++ b/configs/P1010RDB-PB_36BIT_NAND_SECBOOT_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1010RDB-PB_36BIT_NAND_defconfig b/configs/P1010RDB-PB_36BIT_NAND_defconfig
index 6321123..f46739e 100644
--- a/configs/P1010RDB-PB_36BIT_NAND_defconfig
+++ b/configs/P1010RDB-PB_36BIT_NAND_defconfig
@@ -10,3 +10,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1010RDB-PB_36BIT_NOR_SECBOOT_defconfig b/configs/P1010RDB-PB_36BIT_NOR_SECBOOT_defconfig
index 982f829..e05f7c0 100644
--- a/configs/P1010RDB-PB_36BIT_NOR_SECBOOT_defconfig
+++ b/configs/P1010RDB-PB_36BIT_NOR_SECBOOT_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1010RDB-PB_36BIT_NOR_defconfig b/configs/P1010RDB-PB_36BIT_NOR_defconfig
index 521a3d4..a58b239 100644
--- a/configs/P1010RDB-PB_36BIT_NOR_defconfig
+++ b/configs/P1010RDB-PB_36BIT_NOR_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1010RDB-PB_36BIT_SDCARD_defconfig b/configs/P1010RDB-PB_36BIT_SDCARD_defconfig
index ac6ee07..02ce36a 100644
--- a/configs/P1010RDB-PB_36BIT_SDCARD_defconfig
+++ b/configs/P1010RDB-PB_36BIT_SDCARD_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1010RDB-PB_36BIT_SPIFLASH_SECBOOT_defconfig b/configs/P1010RDB-PB_36BIT_SPIFLASH_SECBOOT_defconfig
index 2363aec..20bfb91 100644
--- a/configs/P1010RDB-PB_36BIT_SPIFLASH_SECBOOT_defconfig
+++ b/configs/P1010RDB-PB_36BIT_SPIFLASH_SECBOOT_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1010RDB-PB_36BIT_SPIFLASH_defconfig b/configs/P1010RDB-PB_36BIT_SPIFLASH_defconfig
index 875e4d5..aed80c6 100644
--- a/configs/P1010RDB-PB_36BIT_SPIFLASH_defconfig
+++ b/configs/P1010RDB-PB_36BIT_SPIFLASH_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1010RDB-PB_NAND_SECBOOT_defconfig b/configs/P1010RDB-PB_NAND_SECBOOT_defconfig
index 51286af..05b3a81 100644
--- a/configs/P1010RDB-PB_NAND_SECBOOT_defconfig
+++ b/configs/P1010RDB-PB_NAND_SECBOOT_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1010RDB-PB_NAND_defconfig b/configs/P1010RDB-PB_NAND_defconfig
index 47e249c..78d6086 100644
--- a/configs/P1010RDB-PB_NAND_defconfig
+++ b/configs/P1010RDB-PB_NAND_defconfig
@@ -10,3 +10,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1010RDB-PB_NOR_SECBOOT_defconfig b/configs/P1010RDB-PB_NOR_SECBOOT_defconfig
index aa68725..0a84505 100644
--- a/configs/P1010RDB-PB_NOR_SECBOOT_defconfig
+++ b/configs/P1010RDB-PB_NOR_SECBOOT_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1010RDB-PB_NOR_defconfig b/configs/P1010RDB-PB_NOR_defconfig
index c07fa85..c9292c5 100644
--- a/configs/P1010RDB-PB_NOR_defconfig
+++ b/configs/P1010RDB-PB_NOR_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1010RDB-PB_SDCARD_defconfig b/configs/P1010RDB-PB_SDCARD_defconfig
index 7a431b5..6445a4c 100644
--- a/configs/P1010RDB-PB_SDCARD_defconfig
+++ b/configs/P1010RDB-PB_SDCARD_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1010RDB-PB_SPIFLASH_SECBOOT_defconfig b/configs/P1010RDB-PB_SPIFLASH_SECBOOT_defconfig
index d3d9e49..975e718 100644
--- a/configs/P1010RDB-PB_SPIFLASH_SECBOOT_defconfig
+++ b/configs/P1010RDB-PB_SPIFLASH_SECBOOT_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1010RDB-PB_SPIFLASH_defconfig b/configs/P1010RDB-PB_SPIFLASH_defconfig
index 256bdf4..5a0e5cc 100644
--- a/configs/P1010RDB-PB_SPIFLASH_defconfig
+++ b/configs/P1010RDB-PB_SPIFLASH_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1020MBG-PC_36BIT_SDCARD_defconfig b/configs/P1020MBG-PC_36BIT_SDCARD_defconfig
index ef36139..43029c6 100644
--- a/configs/P1020MBG-PC_36BIT_SDCARD_defconfig
+++ b/configs/P1020MBG-PC_36BIT_SDCARD_defconfig
@@ -7,3 +7,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1020MBG-PC_36BIT_defconfig b/configs/P1020MBG-PC_36BIT_defconfig
index 0cbe477..01ac4f5 100644
--- a/configs/P1020MBG-PC_36BIT_defconfig
+++ b/configs/P1020MBG-PC_36BIT_defconfig
@@ -6,3 +6,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1020MBG-PC_SDCARD_defconfig b/configs/P1020MBG-PC_SDCARD_defconfig
index 4771767..7f5158c 100644
--- a/configs/P1020MBG-PC_SDCARD_defconfig
+++ b/configs/P1020MBG-PC_SDCARD_defconfig
@@ -7,3 +7,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1020MBG-PC_defconfig b/configs/P1020MBG-PC_defconfig
index 9c25cfc..d7e8053 100644
--- a/configs/P1020MBG-PC_defconfig
+++ b/configs/P1020MBG-PC_defconfig
@@ -6,3 +6,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1020RDB-PC_36BIT_NAND_defconfig b/configs/P1020RDB-PC_36BIT_NAND_defconfig
index 0ecaaff..878fd8d 100644
--- a/configs/P1020RDB-PC_36BIT_NAND_defconfig
+++ b/configs/P1020RDB-PC_36BIT_NAND_defconfig
@@ -10,3 +10,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1020RDB-PC_36BIT_SDCARD_defconfig b/configs/P1020RDB-PC_36BIT_SDCARD_defconfig
index 32d3606..8ae0c35 100644
--- a/configs/P1020RDB-PC_36BIT_SDCARD_defconfig
+++ b/configs/P1020RDB-PC_36BIT_SDCARD_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1020RDB-PC_36BIT_SPIFLASH_defconfig b/configs/P1020RDB-PC_36BIT_SPIFLASH_defconfig
index da260a7..9874432 100644
--- a/configs/P1020RDB-PC_36BIT_SPIFLASH_defconfig
+++ b/configs/P1020RDB-PC_36BIT_SPIFLASH_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1020RDB-PC_36BIT_defconfig b/configs/P1020RDB-PC_36BIT_defconfig
index 3fad0b9..e5f8fd0 100644
--- a/configs/P1020RDB-PC_36BIT_defconfig
+++ b/configs/P1020RDB-PC_36BIT_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1020RDB-PC_NAND_defconfig b/configs/P1020RDB-PC_NAND_defconfig
index 09616da..ce393ba 100644
--- a/configs/P1020RDB-PC_NAND_defconfig
+++ b/configs/P1020RDB-PC_NAND_defconfig
@@ -10,3 +10,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1020RDB-PC_SDCARD_defconfig b/configs/P1020RDB-PC_SDCARD_defconfig
index 4ed2f7c..cd90ceb 100644
--- a/configs/P1020RDB-PC_SDCARD_defconfig
+++ b/configs/P1020RDB-PC_SDCARD_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1020RDB-PC_SPIFLASH_defconfig b/configs/P1020RDB-PC_SPIFLASH_defconfig
index 3a26800..7a3f056 100644
--- a/configs/P1020RDB-PC_SPIFLASH_defconfig
+++ b/configs/P1020RDB-PC_SPIFLASH_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1020RDB-PC_defconfig b/configs/P1020RDB-PC_defconfig
index 734824e..aa5c83d 100644
--- a/configs/P1020RDB-PC_defconfig
+++ b/configs/P1020RDB-PC_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1020RDB-PD_NAND_defconfig b/configs/P1020RDB-PD_NAND_defconfig
index c45b2a8..1bde069 100644
--- a/configs/P1020RDB-PD_NAND_defconfig
+++ b/configs/P1020RDB-PD_NAND_defconfig
@@ -10,3 +10,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1020RDB-PD_SDCARD_defconfig b/configs/P1020RDB-PD_SDCARD_defconfig
index bdfc29e..ca8657e 100644
--- a/configs/P1020RDB-PD_SDCARD_defconfig
+++ b/configs/P1020RDB-PD_SDCARD_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1020RDB-PD_SPIFLASH_defconfig b/configs/P1020RDB-PD_SPIFLASH_defconfig
index 4ebcfea..694ad81 100644
--- a/configs/P1020RDB-PD_SPIFLASH_defconfig
+++ b/configs/P1020RDB-PD_SPIFLASH_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1020RDB-PD_defconfig b/configs/P1020RDB-PD_defconfig
index 3c97423..77c4c1d 100644
--- a/configs/P1020RDB-PD_defconfig
+++ b/configs/P1020RDB-PD_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1020UTM-PC_36BIT_SDCARD_defconfig b/configs/P1020UTM-PC_36BIT_SDCARD_defconfig
index 27259c3..e2021b6 100644
--- a/configs/P1020UTM-PC_36BIT_SDCARD_defconfig
+++ b/configs/P1020UTM-PC_36BIT_SDCARD_defconfig
@@ -7,3 +7,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1020UTM-PC_36BIT_defconfig b/configs/P1020UTM-PC_36BIT_defconfig
index ace09b0..1bd8f7b 100644
--- a/configs/P1020UTM-PC_36BIT_defconfig
+++ b/configs/P1020UTM-PC_36BIT_defconfig
@@ -6,3 +6,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1020UTM-PC_SDCARD_defconfig b/configs/P1020UTM-PC_SDCARD_defconfig
index 42e6d1c..424b846 100644
--- a/configs/P1020UTM-PC_SDCARD_defconfig
+++ b/configs/P1020UTM-PC_SDCARD_defconfig
@@ -7,3 +7,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1020UTM-PC_defconfig b/configs/P1020UTM-PC_defconfig
index 9a5a04f..047b654 100644
--- a/configs/P1020UTM-PC_defconfig
+++ b/configs/P1020UTM-PC_defconfig
@@ -6,3 +6,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1021RDB-PC_36BIT_NAND_defconfig b/configs/P1021RDB-PC_36BIT_NAND_defconfig
index d6ec2ad..7040753 100644
--- a/configs/P1021RDB-PC_36BIT_NAND_defconfig
+++ b/configs/P1021RDB-PC_36BIT_NAND_defconfig
@@ -10,3 +10,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1021RDB-PC_36BIT_SDCARD_defconfig b/configs/P1021RDB-PC_36BIT_SDCARD_defconfig
index 9414eab..eed6774 100644
--- a/configs/P1021RDB-PC_36BIT_SDCARD_defconfig
+++ b/configs/P1021RDB-PC_36BIT_SDCARD_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1021RDB-PC_36BIT_SPIFLASH_defconfig b/configs/P1021RDB-PC_36BIT_SPIFLASH_defconfig
index 429d249..28a94bc 100644
--- a/configs/P1021RDB-PC_36BIT_SPIFLASH_defconfig
+++ b/configs/P1021RDB-PC_36BIT_SPIFLASH_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1021RDB-PC_36BIT_defconfig b/configs/P1021RDB-PC_36BIT_defconfig
index 236d67a..6e42ede 100644
--- a/configs/P1021RDB-PC_36BIT_defconfig
+++ b/configs/P1021RDB-PC_36BIT_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1021RDB-PC_NAND_defconfig b/configs/P1021RDB-PC_NAND_defconfig
index e1410b6..040fa1e 100644
--- a/configs/P1021RDB-PC_NAND_defconfig
+++ b/configs/P1021RDB-PC_NAND_defconfig
@@ -10,3 +10,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1021RDB-PC_SDCARD_defconfig b/configs/P1021RDB-PC_SDCARD_defconfig
index 8950dcd..d1cc73e 100644
--- a/configs/P1021RDB-PC_SDCARD_defconfig
+++ b/configs/P1021RDB-PC_SDCARD_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1021RDB-PC_SPIFLASH_defconfig b/configs/P1021RDB-PC_SPIFLASH_defconfig
index 8760a60..43aca3e 100644
--- a/configs/P1021RDB-PC_SPIFLASH_defconfig
+++ b/configs/P1021RDB-PC_SPIFLASH_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1021RDB-PC_defconfig b/configs/P1021RDB-PC_defconfig
index fd52fcf..3114e01 100644
--- a/configs/P1021RDB-PC_defconfig
+++ b/configs/P1021RDB-PC_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1022DS_36BIT_NAND_defconfig b/configs/P1022DS_36BIT_NAND_defconfig
index a57ab4a..d8272d4 100644
--- a/configs/P1022DS_36BIT_NAND_defconfig
+++ b/configs/P1022DS_36BIT_NAND_defconfig
@@ -10,3 +10,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1022DS_36BIT_SDCARD_defconfig b/configs/P1022DS_36BIT_SDCARD_defconfig
index 0e68138..635c8e0 100644
--- a/configs/P1022DS_36BIT_SDCARD_defconfig
+++ b/configs/P1022DS_36BIT_SDCARD_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1022DS_36BIT_SPIFLASH_defconfig b/configs/P1022DS_36BIT_SPIFLASH_defconfig
index 130b7cf..76fc6d6 100644
--- a/configs/P1022DS_36BIT_SPIFLASH_defconfig
+++ b/configs/P1022DS_36BIT_SPIFLASH_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1022DS_36BIT_defconfig b/configs/P1022DS_36BIT_defconfig
index 5646062..4c93f39 100644
--- a/configs/P1022DS_36BIT_defconfig
+++ b/configs/P1022DS_36BIT_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1022DS_NAND_defconfig b/configs/P1022DS_NAND_defconfig
index ef08a9e..1a8cb73 100644
--- a/configs/P1022DS_NAND_defconfig
+++ b/configs/P1022DS_NAND_defconfig
@@ -10,3 +10,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1022DS_SDCARD_defconfig b/configs/P1022DS_SDCARD_defconfig
index 8ff94af..5822f3e 100644
--- a/configs/P1022DS_SDCARD_defconfig
+++ b/configs/P1022DS_SDCARD_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1022DS_SPIFLASH_defconfig b/configs/P1022DS_SPIFLASH_defconfig
index ecc48cc..0d9d6dd 100644
--- a/configs/P1022DS_SPIFLASH_defconfig
+++ b/configs/P1022DS_SPIFLASH_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1022DS_defconfig b/configs/P1022DS_defconfig
index 40c6621..ecade54 100644
--- a/configs/P1022DS_defconfig
+++ b/configs/P1022DS_defconfig
@@ -7,3 +7,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1023RDB_defconfig b/configs/P1023RDB_defconfig
index 2478f30..301f955 100644
--- a/configs/P1023RDB_defconfig
+++ b/configs/P1023RDB_defconfig
@@ -4,3 +4,4 @@ CONFIG_TARGET_P1023RDB=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1024RDB_36BIT_defconfig b/configs/P1024RDB_36BIT_defconfig
index 3f96330..e55304d 100644
--- a/configs/P1024RDB_36BIT_defconfig
+++ b/configs/P1024RDB_36BIT_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1024RDB_NAND_defconfig b/configs/P1024RDB_NAND_defconfig
index 05c06b6..717a9d4 100644
--- a/configs/P1024RDB_NAND_defconfig
+++ b/configs/P1024RDB_NAND_defconfig
@@ -10,3 +10,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1024RDB_SDCARD_defconfig b/configs/P1024RDB_SDCARD_defconfig
index ad081e5..dd868c0 100644
--- a/configs/P1024RDB_SDCARD_defconfig
+++ b/configs/P1024RDB_SDCARD_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1024RDB_SPIFLASH_defconfig b/configs/P1024RDB_SPIFLASH_defconfig
index 12158de..2d5d313 100644
--- a/configs/P1024RDB_SPIFLASH_defconfig
+++ b/configs/P1024RDB_SPIFLASH_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1024RDB_defconfig b/configs/P1024RDB_defconfig
index 3d13da9..527af8a 100644
--- a/configs/P1024RDB_defconfig
+++ b/configs/P1024RDB_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1025RDB_36BIT_defconfig b/configs/P1025RDB_36BIT_defconfig
index 453c057..943b79f 100644
--- a/configs/P1025RDB_36BIT_defconfig
+++ b/configs/P1025RDB_36BIT_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1025RDB_NAND_defconfig b/configs/P1025RDB_NAND_defconfig
index 1c5e06a..dcbb704 100644
--- a/configs/P1025RDB_NAND_defconfig
+++ b/configs/P1025RDB_NAND_defconfig
@@ -10,3 +10,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1025RDB_SDCARD_defconfig b/configs/P1025RDB_SDCARD_defconfig
index fc01fe6..a110842 100644
--- a/configs/P1025RDB_SDCARD_defconfig
+++ b/configs/P1025RDB_SDCARD_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1025RDB_SPIFLASH_defconfig b/configs/P1025RDB_SPIFLASH_defconfig
index 0a37298..27f1a56 100644
--- a/configs/P1025RDB_SPIFLASH_defconfig
+++ b/configs/P1025RDB_SPIFLASH_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P1025RDB_defconfig b/configs/P1025RDB_defconfig
index fe21544..466f080 100644
--- a/configs/P1025RDB_defconfig
+++ b/configs/P1025RDB_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P2020RDB-PC_36BIT_NAND_defconfig b/configs/P2020RDB-PC_36BIT_NAND_defconfig
index 578bfc5..26224dd 100644
--- a/configs/P2020RDB-PC_36BIT_NAND_defconfig
+++ b/configs/P2020RDB-PC_36BIT_NAND_defconfig
@@ -10,3 +10,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P2020RDB-PC_36BIT_SDCARD_defconfig b/configs/P2020RDB-PC_36BIT_SDCARD_defconfig
index 19c795a..f9824b6 100644
--- a/configs/P2020RDB-PC_36BIT_SDCARD_defconfig
+++ b/configs/P2020RDB-PC_36BIT_SDCARD_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P2020RDB-PC_36BIT_SPIFLASH_defconfig b/configs/P2020RDB-PC_36BIT_SPIFLASH_defconfig
index bdc5e43..ff9cc65 100644
--- a/configs/P2020RDB-PC_36BIT_SPIFLASH_defconfig
+++ b/configs/P2020RDB-PC_36BIT_SPIFLASH_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P2020RDB-PC_36BIT_defconfig b/configs/P2020RDB-PC_36BIT_defconfig
index b9d4a47..9263d70 100644
--- a/configs/P2020RDB-PC_36BIT_defconfig
+++ b/configs/P2020RDB-PC_36BIT_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P2020RDB-PC_NAND_defconfig b/configs/P2020RDB-PC_NAND_defconfig
index ea9f830..b0c2a9e 100644
--- a/configs/P2020RDB-PC_NAND_defconfig
+++ b/configs/P2020RDB-PC_NAND_defconfig
@@ -10,3 +10,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P2020RDB-PC_SDCARD_defconfig b/configs/P2020RDB-PC_SDCARD_defconfig
index 997887d..e9c27db 100644
--- a/configs/P2020RDB-PC_SDCARD_defconfig
+++ b/configs/P2020RDB-PC_SDCARD_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P2020RDB-PC_SPIFLASH_defconfig b/configs/P2020RDB-PC_SPIFLASH_defconfig
index e547ea4..65ccac3 100644
--- a/configs/P2020RDB-PC_SPIFLASH_defconfig
+++ b/configs/P2020RDB-PC_SPIFLASH_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P2020RDB-PC_defconfig b/configs/P2020RDB-PC_defconfig
index fdad880..a551d61 100644
--- a/configs/P2020RDB-PC_defconfig
+++ b/configs/P2020RDB-PC_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P2041RDB_NAND_defconfig b/configs/P2041RDB_NAND_defconfig
index 540b79d..65a6fd9 100644
--- a/configs/P2041RDB_NAND_defconfig
+++ b/configs/P2041RDB_NAND_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P2041RDB_SDCARD_defconfig b/configs/P2041RDB_SDCARD_defconfig
index e879d94..5d4af31 100644
--- a/configs/P2041RDB_SDCARD_defconfig
+++ b/configs/P2041RDB_SDCARD_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P2041RDB_SECURE_BOOT_defconfig b/configs/P2041RDB_SECURE_BOOT_defconfig
index 114fc32..459941c 100644
--- a/configs/P2041RDB_SECURE_BOOT_defconfig
+++ b/configs/P2041RDB_SECURE_BOOT_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P2041RDB_SPIFLASH_defconfig b/configs/P2041RDB_SPIFLASH_defconfig
index 6feec40..844cee0 100644
--- a/configs/P2041RDB_SPIFLASH_defconfig
+++ b/configs/P2041RDB_SPIFLASH_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P2041RDB_SRIO_PCIE_BOOT_defconfig b/configs/P2041RDB_SRIO_PCIE_BOOT_defconfig
index 45ba154..b2e35af 100644
--- a/configs/P2041RDB_SRIO_PCIE_BOOT_defconfig
+++ b/configs/P2041RDB_SRIO_PCIE_BOOT_defconfig
@@ -10,3 +10,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P2041RDB_defconfig b/configs/P2041RDB_defconfig
index 9a455ef..bfc440f 100644
--- a/configs/P2041RDB_defconfig
+++ b/configs/P2041RDB_defconfig
@@ -7,3 +7,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P3041DS_NAND_SECURE_BOOT_defconfig b/configs/P3041DS_NAND_SECURE_BOOT_defconfig
index 783089b..ee29d2f 100644
--- a/configs/P3041DS_NAND_SECURE_BOOT_defconfig
+++ b/configs/P3041DS_NAND_SECURE_BOOT_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P3041DS_NAND_defconfig b/configs/P3041DS_NAND_defconfig
index d8fa407..66194c1 100644
--- a/configs/P3041DS_NAND_defconfig
+++ b/configs/P3041DS_NAND_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P3041DS_SDCARD_defconfig b/configs/P3041DS_SDCARD_defconfig
index 385bcc8..669a956 100644
--- a/configs/P3041DS_SDCARD_defconfig
+++ b/configs/P3041DS_SDCARD_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P3041DS_SECURE_BOOT_defconfig b/configs/P3041DS_SECURE_BOOT_defconfig
index 5d463a2..b4736e2 100644
--- a/configs/P3041DS_SECURE_BOOT_defconfig
+++ b/configs/P3041DS_SECURE_BOOT_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P3041DS_SPIFLASH_defconfig b/configs/P3041DS_SPIFLASH_defconfig
index 2c52861..1bffa87 100644
--- a/configs/P3041DS_SPIFLASH_defconfig
+++ b/configs/P3041DS_SPIFLASH_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P3041DS_SRIO_PCIE_BOOT_defconfig b/configs/P3041DS_SRIO_PCIE_BOOT_defconfig
index 6925f99..0d98ef9 100644
--- a/configs/P3041DS_SRIO_PCIE_BOOT_defconfig
+++ b/configs/P3041DS_SRIO_PCIE_BOOT_defconfig
@@ -10,3 +10,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P3041DS_defconfig b/configs/P3041DS_defconfig
index b41254d..fd155f8 100644
--- a/configs/P3041DS_defconfig
+++ b/configs/P3041DS_defconfig
@@ -7,3 +7,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P4080DS_SDCARD_defconfig b/configs/P4080DS_SDCARD_defconfig
index 4a0a65d..285df12 100644
--- a/configs/P4080DS_SDCARD_defconfig
+++ b/configs/P4080DS_SDCARD_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P4080DS_SECURE_BOOT_defconfig b/configs/P4080DS_SECURE_BOOT_defconfig
index 92e1c1d..094dcfd 100644
--- a/configs/P4080DS_SECURE_BOOT_defconfig
+++ b/configs/P4080DS_SECURE_BOOT_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P4080DS_SPIFLASH_defconfig b/configs/P4080DS_SPIFLASH_defconfig
index c503a70..b37a6d8 100644
--- a/configs/P4080DS_SPIFLASH_defconfig
+++ b/configs/P4080DS_SPIFLASH_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P4080DS_SRIO_PCIE_BOOT_defconfig b/configs/P4080DS_SRIO_PCIE_BOOT_defconfig
index f9b877b..e4680db 100644
--- a/configs/P4080DS_SRIO_PCIE_BOOT_defconfig
+++ b/configs/P4080DS_SRIO_PCIE_BOOT_defconfig
@@ -10,3 +10,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P4080DS_defconfig b/configs/P4080DS_defconfig
index 319f1c7..1604199 100644
--- a/configs/P4080DS_defconfig
+++ b/configs/P4080DS_defconfig
@@ -7,3 +7,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P5020DS_NAND_SECURE_BOOT_defconfig b/configs/P5020DS_NAND_SECURE_BOOT_defconfig
index 46b78bc..fe1838b 100644
--- a/configs/P5020DS_NAND_SECURE_BOOT_defconfig
+++ b/configs/P5020DS_NAND_SECURE_BOOT_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P5020DS_NAND_defconfig b/configs/P5020DS_NAND_defconfig
index 259371c..eff8b8d 100644
--- a/configs/P5020DS_NAND_defconfig
+++ b/configs/P5020DS_NAND_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P5020DS_SDCARD_defconfig b/configs/P5020DS_SDCARD_defconfig
index 2da6f48..9f2d323 100644
--- a/configs/P5020DS_SDCARD_defconfig
+++ b/configs/P5020DS_SDCARD_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P5020DS_SECURE_BOOT_defconfig b/configs/P5020DS_SECURE_BOOT_defconfig
index aeb7949..bec3c9a 100644
--- a/configs/P5020DS_SECURE_BOOT_defconfig
+++ b/configs/P5020DS_SECURE_BOOT_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P5020DS_SPIFLASH_defconfig b/configs/P5020DS_SPIFLASH_defconfig
index ae06e9c..0d4ccbe 100644
--- a/configs/P5020DS_SPIFLASH_defconfig
+++ b/configs/P5020DS_SPIFLASH_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P5020DS_SRIO_PCIE_BOOT_defconfig b/configs/P5020DS_SRIO_PCIE_BOOT_defconfig
index 53a279e..70e7a87 100644
--- a/configs/P5020DS_SRIO_PCIE_BOOT_defconfig
+++ b/configs/P5020DS_SRIO_PCIE_BOOT_defconfig
@@ -10,3 +10,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P5020DS_defconfig b/configs/P5020DS_defconfig
index e133570..a81d1b1 100644
--- a/configs/P5020DS_defconfig
+++ b/configs/P5020DS_defconfig
@@ -7,3 +7,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P5040DS_NAND_SECURE_BOOT_defconfig b/configs/P5040DS_NAND_SECURE_BOOT_defconfig
index 063e0f7..2976fb8 100644
--- a/configs/P5040DS_NAND_SECURE_BOOT_defconfig
+++ b/configs/P5040DS_NAND_SECURE_BOOT_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P5040DS_NAND_defconfig b/configs/P5040DS_NAND_defconfig
index 2c5f058..cc8eae9 100644
--- a/configs/P5040DS_NAND_defconfig
+++ b/configs/P5040DS_NAND_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P5040DS_SDCARD_defconfig b/configs/P5040DS_SDCARD_defconfig
index d78bea0..e4b2824 100644
--- a/configs/P5040DS_SDCARD_defconfig
+++ b/configs/P5040DS_SDCARD_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P5040DS_SECURE_BOOT_defconfig b/configs/P5040DS_SECURE_BOOT_defconfig
index ca1c87c..a2c4a60 100644
--- a/configs/P5040DS_SECURE_BOOT_defconfig
+++ b/configs/P5040DS_SECURE_BOOT_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P5040DS_SPIFLASH_defconfig b/configs/P5040DS_SPIFLASH_defconfig
index 4c403b6..3db7980 100644
--- a/configs/P5040DS_SPIFLASH_defconfig
+++ b/configs/P5040DS_SPIFLASH_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/P5040DS_defconfig b/configs/P5040DS_defconfig
index 4c01789..12b61b9 100644
--- a/configs/P5040DS_defconfig
+++ b/configs/P5040DS_defconfig
@@ -7,3 +7,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/PLU405_defconfig b/configs/PLU405_defconfig
index 546376f..f7a204c 100644
--- a/configs/PLU405_defconfig
+++ b/configs/PLU405_defconfig
@@ -6,3 +6,4 @@ CONFIG_AUTOBOOT_PROMPT="Press SPACE to abort autoboot in %d seconds\n"
 CONFIG_AUTOBOOT_STOP_STR=" "
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/PMC405DE_defconfig b/configs/PMC405DE_defconfig
index 53fccf5..fc78a64 100644
--- a/configs/PMC405DE_defconfig
+++ b/configs/PMC405DE_defconfig
@@ -6,3 +6,4 @@ CONFIG_AUTOBOOT_PROMPT="Press SPACE to abort autoboot in %d seconds\n"
 CONFIG_AUTOBOOT_STOP_STR=" "
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/PMC440_defconfig b/configs/PMC440_defconfig
index 984497a..3b8b4fd 100644
--- a/configs/PMC440_defconfig
+++ b/configs/PMC440_defconfig
@@ -6,3 +6,4 @@ CONFIG_AUTOBOOT_PROMPT="Press SPACE to abort autoboot in %d seconds\n"
 CONFIG_AUTOBOOT_STOP_STR=" "
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T1023RDB_NAND_defconfig b/configs/T1023RDB_NAND_defconfig
index 4fe6af8..356f872 100644
--- a/configs/T1023RDB_NAND_defconfig
+++ b/configs/T1023RDB_NAND_defconfig
@@ -11,3 +11,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T1023RDB_SDCARD_defconfig b/configs/T1023RDB_SDCARD_defconfig
index 84febc5..730482e 100644
--- a/configs/T1023RDB_SDCARD_defconfig
+++ b/configs/T1023RDB_SDCARD_defconfig
@@ -11,3 +11,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T1023RDB_SECURE_BOOT_defconfig b/configs/T1023RDB_SECURE_BOOT_defconfig
index 8e355be..4144cf8 100644
--- a/configs/T1023RDB_SECURE_BOOT_defconfig
+++ b/configs/T1023RDB_SECURE_BOOT_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T1023RDB_SPIFLASH_defconfig b/configs/T1023RDB_SPIFLASH_defconfig
index b72fc86..6725127 100644
--- a/configs/T1023RDB_SPIFLASH_defconfig
+++ b/configs/T1023RDB_SPIFLASH_defconfig
@@ -11,3 +11,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T1023RDB_defconfig b/configs/T1023RDB_defconfig
index eb5d4ef..52c4974 100644
--- a/configs/T1023RDB_defconfig
+++ b/configs/T1023RDB_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T1024QDS_DDR4_SECURE_BOOT_defconfig b/configs/T1024QDS_DDR4_SECURE_BOOT_defconfig
index 5a30ab4..db12e4e 100644
--- a/configs/T1024QDS_DDR4_SECURE_BOOT_defconfig
+++ b/configs/T1024QDS_DDR4_SECURE_BOOT_defconfig
@@ -10,3 +10,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T1024QDS_DDR4_defconfig b/configs/T1024QDS_DDR4_defconfig
index 39dc0a6..31b9d36 100644
--- a/configs/T1024QDS_DDR4_defconfig
+++ b/configs/T1024QDS_DDR4_defconfig
@@ -8,3 +8,4 @@ CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_SPI_FLASH_SST=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T1024QDS_NAND_defconfig b/configs/T1024QDS_NAND_defconfig
index 4425bb2..351f219 100644
--- a/configs/T1024QDS_NAND_defconfig
+++ b/configs/T1024QDS_NAND_defconfig
@@ -11,3 +11,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T1024QDS_SDCARD_defconfig b/configs/T1024QDS_SDCARD_defconfig
index 97e32ca..84cefd2 100644
--- a/configs/T1024QDS_SDCARD_defconfig
+++ b/configs/T1024QDS_SDCARD_defconfig
@@ -11,3 +11,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T1024QDS_SECURE_BOOT_defconfig b/configs/T1024QDS_SECURE_BOOT_defconfig
index aa5dcde..12a0f4e 100644
--- a/configs/T1024QDS_SECURE_BOOT_defconfig
+++ b/configs/T1024QDS_SECURE_BOOT_defconfig
@@ -10,3 +10,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T1024QDS_SPIFLASH_defconfig b/configs/T1024QDS_SPIFLASH_defconfig
index beaac8b..5539c23 100644
--- a/configs/T1024QDS_SPIFLASH_defconfig
+++ b/configs/T1024QDS_SPIFLASH_defconfig
@@ -11,3 +11,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T1024QDS_defconfig b/configs/T1024QDS_defconfig
index 7bb2ea6..a55078a 100644
--- a/configs/T1024QDS_defconfig
+++ b/configs/T1024QDS_defconfig
@@ -10,3 +10,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T1024RDB_NAND_defconfig b/configs/T1024RDB_NAND_defconfig
index 065e168..c3e1255 100644
--- a/configs/T1024RDB_NAND_defconfig
+++ b/configs/T1024RDB_NAND_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T1024RDB_SDCARD_defconfig b/configs/T1024RDB_SDCARD_defconfig
index ae4f8cf..1f3006c 100644
--- a/configs/T1024RDB_SDCARD_defconfig
+++ b/configs/T1024RDB_SDCARD_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T1024RDB_SECURE_BOOT_defconfig b/configs/T1024RDB_SECURE_BOOT_defconfig
index e24c91b..04d0195 100644
--- a/configs/T1024RDB_SECURE_BOOT_defconfig
+++ b/configs/T1024RDB_SECURE_BOOT_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T1024RDB_SPIFLASH_defconfig b/configs/T1024RDB_SPIFLASH_defconfig
index 91aad61..05e5cbb 100644
--- a/configs/T1024RDB_SPIFLASH_defconfig
+++ b/configs/T1024RDB_SPIFLASH_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T1024RDB_defconfig b/configs/T1024RDB_defconfig
index d43ec06..f617fab 100644
--- a/configs/T1024RDB_defconfig
+++ b/configs/T1024RDB_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T1040D4RDB_NAND_defconfig b/configs/T1040D4RDB_NAND_defconfig
index e96c984..cce44bc 100644
--- a/configs/T1040D4RDB_NAND_defconfig
+++ b/configs/T1040D4RDB_NAND_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T1040D4RDB_SDCARD_defconfig b/configs/T1040D4RDB_SDCARD_defconfig
index e90d39d..1d3a437 100644
--- a/configs/T1040D4RDB_SDCARD_defconfig
+++ b/configs/T1040D4RDB_SDCARD_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T1040D4RDB_SECURE_BOOT_defconfig b/configs/T1040D4RDB_SECURE_BOOT_defconfig
index 17f7585..acff602 100644
--- a/configs/T1040D4RDB_SECURE_BOOT_defconfig
+++ b/configs/T1040D4RDB_SECURE_BOOT_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T1040D4RDB_SPIFLASH_defconfig b/configs/T1040D4RDB_SPIFLASH_defconfig
index 0191a63..7d6d40b 100644
--- a/configs/T1040D4RDB_SPIFLASH_defconfig
+++ b/configs/T1040D4RDB_SPIFLASH_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T1040D4RDB_defconfig b/configs/T1040D4RDB_defconfig
index 6feecb3..7521073 100644
--- a/configs/T1040D4RDB_defconfig
+++ b/configs/T1040D4RDB_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T1040QDS_DDR4_defconfig b/configs/T1040QDS_DDR4_defconfig
index 52b67c8..73faa99 100644
--- a/configs/T1040QDS_DDR4_defconfig
+++ b/configs/T1040QDS_DDR4_defconfig
@@ -10,3 +10,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T1040QDS_SECURE_BOOT_defconfig b/configs/T1040QDS_SECURE_BOOT_defconfig
index d98b87a..b763f59 100644
--- a/configs/T1040QDS_SECURE_BOOT_defconfig
+++ b/configs/T1040QDS_SECURE_BOOT_defconfig
@@ -10,3 +10,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T1040QDS_defconfig b/configs/T1040QDS_defconfig
index 56eb500..7594b2e 100644
--- a/configs/T1040QDS_defconfig
+++ b/configs/T1040QDS_defconfig
@@ -10,3 +10,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T1040RDB_NAND_defconfig b/configs/T1040RDB_NAND_defconfig
index 74f22d2..37d6e84 100644
--- a/configs/T1040RDB_NAND_defconfig
+++ b/configs/T1040RDB_NAND_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T1040RDB_SDCARD_defconfig b/configs/T1040RDB_SDCARD_defconfig
index a0f9f2d..3bc7f82 100644
--- a/configs/T1040RDB_SDCARD_defconfig
+++ b/configs/T1040RDB_SDCARD_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T1040RDB_SECURE_BOOT_defconfig b/configs/T1040RDB_SECURE_BOOT_defconfig
index 7b19069..4a54064 100644
--- a/configs/T1040RDB_SECURE_BOOT_defconfig
+++ b/configs/T1040RDB_SECURE_BOOT_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T1040RDB_SPIFLASH_defconfig b/configs/T1040RDB_SPIFLASH_defconfig
index 3305e49..7013e2e 100644
--- a/configs/T1040RDB_SPIFLASH_defconfig
+++ b/configs/T1040RDB_SPIFLASH_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T1040RDB_defconfig b/configs/T1040RDB_defconfig
index 8b7816d..06f5262 100644
--- a/configs/T1040RDB_defconfig
+++ b/configs/T1040RDB_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T1042D4RDB_NAND_defconfig b/configs/T1042D4RDB_NAND_defconfig
index 8c77cda..c95319b 100644
--- a/configs/T1042D4RDB_NAND_defconfig
+++ b/configs/T1042D4RDB_NAND_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T1042D4RDB_SDCARD_defconfig b/configs/T1042D4RDB_SDCARD_defconfig
index 0a3b0f8..20c30aa 100644
--- a/configs/T1042D4RDB_SDCARD_defconfig
+++ b/configs/T1042D4RDB_SDCARD_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T1042D4RDB_SECURE_BOOT_defconfig b/configs/T1042D4RDB_SECURE_BOOT_defconfig
index f856f7d..173ed25 100644
--- a/configs/T1042D4RDB_SECURE_BOOT_defconfig
+++ b/configs/T1042D4RDB_SECURE_BOOT_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T1042D4RDB_SPIFLASH_defconfig b/configs/T1042D4RDB_SPIFLASH_defconfig
index 307de29..6aa43c5 100644
--- a/configs/T1042D4RDB_SPIFLASH_defconfig
+++ b/configs/T1042D4RDB_SPIFLASH_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T1042D4RDB_defconfig b/configs/T1042D4RDB_defconfig
index 1549200..054e09c 100644
--- a/configs/T1042D4RDB_defconfig
+++ b/configs/T1042D4RDB_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T1042RDB_PI_NAND_defconfig b/configs/T1042RDB_PI_NAND_defconfig
index fb229df..0dcc625 100644
--- a/configs/T1042RDB_PI_NAND_defconfig
+++ b/configs/T1042RDB_PI_NAND_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T1042RDB_PI_SDCARD_defconfig b/configs/T1042RDB_PI_SDCARD_defconfig
index 3743a1f..d9a1e58 100644
--- a/configs/T1042RDB_PI_SDCARD_defconfig
+++ b/configs/T1042RDB_PI_SDCARD_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T1042RDB_PI_SPIFLASH_defconfig b/configs/T1042RDB_PI_SPIFLASH_defconfig
index ce3e54e..5d621d8 100644
--- a/configs/T1042RDB_PI_SPIFLASH_defconfig
+++ b/configs/T1042RDB_PI_SPIFLASH_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T1042RDB_PI_defconfig b/configs/T1042RDB_PI_defconfig
index 18d3967..08d7d4c 100644
--- a/configs/T1042RDB_PI_defconfig
+++ b/configs/T1042RDB_PI_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T1042RDB_SECURE_BOOT_defconfig b/configs/T1042RDB_SECURE_BOOT_defconfig
index cdcfccf..3a18869 100644
--- a/configs/T1042RDB_SECURE_BOOT_defconfig
+++ b/configs/T1042RDB_SECURE_BOOT_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T1042RDB_defconfig b/configs/T1042RDB_defconfig
index 2a11421..45b053e 100644
--- a/configs/T1042RDB_defconfig
+++ b/configs/T1042RDB_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T2080QDS_NAND_defconfig b/configs/T2080QDS_NAND_defconfig
index 13f40b4..35da154 100644
--- a/configs/T2080QDS_NAND_defconfig
+++ b/configs/T2080QDS_NAND_defconfig
@@ -11,3 +11,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T2080QDS_SDCARD_defconfig b/configs/T2080QDS_SDCARD_defconfig
index a72830e..c53888b 100644
--- a/configs/T2080QDS_SDCARD_defconfig
+++ b/configs/T2080QDS_SDCARD_defconfig
@@ -11,3 +11,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T2080QDS_SECURE_BOOT_defconfig b/configs/T2080QDS_SECURE_BOOT_defconfig
index 6a50147..7e3c1fa 100644
--- a/configs/T2080QDS_SECURE_BOOT_defconfig
+++ b/configs/T2080QDS_SECURE_BOOT_defconfig
@@ -10,3 +10,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T2080QDS_SPIFLASH_defconfig b/configs/T2080QDS_SPIFLASH_defconfig
index dc66fd3..b9ee047 100644
--- a/configs/T2080QDS_SPIFLASH_defconfig
+++ b/configs/T2080QDS_SPIFLASH_defconfig
@@ -11,3 +11,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T2080QDS_SRIO_PCIE_BOOT_defconfig b/configs/T2080QDS_SRIO_PCIE_BOOT_defconfig
index ca842a4..40a304d 100644
--- a/configs/T2080QDS_SRIO_PCIE_BOOT_defconfig
+++ b/configs/T2080QDS_SRIO_PCIE_BOOT_defconfig
@@ -12,3 +12,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T2080QDS_defconfig b/configs/T2080QDS_defconfig
index 3d2be66..a5aa23b 100644
--- a/configs/T2080QDS_defconfig
+++ b/configs/T2080QDS_defconfig
@@ -10,3 +10,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T2080RDB_NAND_defconfig b/configs/T2080RDB_NAND_defconfig
index e2eead4..c51e55a 100644
--- a/configs/T2080RDB_NAND_defconfig
+++ b/configs/T2080RDB_NAND_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T2080RDB_SDCARD_defconfig b/configs/T2080RDB_SDCARD_defconfig
index fc61d1a..027da86 100644
--- a/configs/T2080RDB_SDCARD_defconfig
+++ b/configs/T2080RDB_SDCARD_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T2080RDB_SECURE_BOOT_defconfig b/configs/T2080RDB_SECURE_BOOT_defconfig
index fe4a439..ed6b3e4 100644
--- a/configs/T2080RDB_SECURE_BOOT_defconfig
+++ b/configs/T2080RDB_SECURE_BOOT_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T2080RDB_SPIFLASH_defconfig b/configs/T2080RDB_SPIFLASH_defconfig
index 4fbaf65..b916425 100644
--- a/configs/T2080RDB_SPIFLASH_defconfig
+++ b/configs/T2080RDB_SPIFLASH_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T2080RDB_SRIO_PCIE_BOOT_defconfig b/configs/T2080RDB_SRIO_PCIE_BOOT_defconfig
index 95720ee..fe7a259 100644
--- a/configs/T2080RDB_SRIO_PCIE_BOOT_defconfig
+++ b/configs/T2080RDB_SRIO_PCIE_BOOT_defconfig
@@ -10,3 +10,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T2080RDB_defconfig b/configs/T2080RDB_defconfig
index bc2fc92..155999f 100644
--- a/configs/T2080RDB_defconfig
+++ b/configs/T2080RDB_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T2081QDS_NAND_defconfig b/configs/T2081QDS_NAND_defconfig
index 57f327c..0621a19 100644
--- a/configs/T2081QDS_NAND_defconfig
+++ b/configs/T2081QDS_NAND_defconfig
@@ -11,3 +11,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T2081QDS_SDCARD_defconfig b/configs/T2081QDS_SDCARD_defconfig
index 74a134e..f864b49 100644
--- a/configs/T2081QDS_SDCARD_defconfig
+++ b/configs/T2081QDS_SDCARD_defconfig
@@ -11,3 +11,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T2081QDS_SPIFLASH_defconfig b/configs/T2081QDS_SPIFLASH_defconfig
index 85d48c3..b44fd5f 100644
--- a/configs/T2081QDS_SPIFLASH_defconfig
+++ b/configs/T2081QDS_SPIFLASH_defconfig
@@ -11,3 +11,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T2081QDS_SRIO_PCIE_BOOT_defconfig b/configs/T2081QDS_SRIO_PCIE_BOOT_defconfig
index 70f87d7..83ab6f0 100644
--- a/configs/T2081QDS_SRIO_PCIE_BOOT_defconfig
+++ b/configs/T2081QDS_SRIO_PCIE_BOOT_defconfig
@@ -12,3 +12,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T2081QDS_defconfig b/configs/T2081QDS_defconfig
index 23ed67c..d795639 100644
--- a/configs/T2081QDS_defconfig
+++ b/configs/T2081QDS_defconfig
@@ -10,3 +10,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T4160QDS_NAND_defconfig b/configs/T4160QDS_NAND_defconfig
index bf88846..43236e7 100644
--- a/configs/T4160QDS_NAND_defconfig
+++ b/configs/T4160QDS_NAND_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T4160QDS_SDCARD_defconfig b/configs/T4160QDS_SDCARD_defconfig
index dcb9ac8..6144b3b 100644
--- a/configs/T4160QDS_SDCARD_defconfig
+++ b/configs/T4160QDS_SDCARD_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T4160QDS_SECURE_BOOT_defconfig b/configs/T4160QDS_SECURE_BOOT_defconfig
index 42e6508..68a89cb 100644
--- a/configs/T4160QDS_SECURE_BOOT_defconfig
+++ b/configs/T4160QDS_SECURE_BOOT_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T4160QDS_defconfig b/configs/T4160QDS_defconfig
index d87eb23..1180aad 100644
--- a/configs/T4160QDS_defconfig
+++ b/configs/T4160QDS_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T4160RDB_defconfig b/configs/T4160RDB_defconfig
index 708374b..d69c4be 100644
--- a/configs/T4160RDB_defconfig
+++ b/configs/T4160RDB_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T4240QDS_NAND_defconfig b/configs/T4240QDS_NAND_defconfig
index 4ee998b..63a3c6c 100644
--- a/configs/T4240QDS_NAND_defconfig
+++ b/configs/T4240QDS_NAND_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T4240QDS_SDCARD_defconfig b/configs/T4240QDS_SDCARD_defconfig
index 6a3320a..e085802 100644
--- a/configs/T4240QDS_SDCARD_defconfig
+++ b/configs/T4240QDS_SDCARD_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T4240QDS_SECURE_BOOT_defconfig b/configs/T4240QDS_SECURE_BOOT_defconfig
index 861ac5c..a0eb595 100644
--- a/configs/T4240QDS_SECURE_BOOT_defconfig
+++ b/configs/T4240QDS_SECURE_BOOT_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T4240QDS_SRIO_PCIE_BOOT_defconfig b/configs/T4240QDS_SRIO_PCIE_BOOT_defconfig
index 0adca74..f5e246d 100644
--- a/configs/T4240QDS_SRIO_PCIE_BOOT_defconfig
+++ b/configs/T4240QDS_SRIO_PCIE_BOOT_defconfig
@@ -10,3 +10,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T4240QDS_defconfig b/configs/T4240QDS_defconfig
index 7d8e826..c00e5a3 100644
--- a/configs/T4240QDS_defconfig
+++ b/configs/T4240QDS_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T4240RDB_SDCARD_defconfig b/configs/T4240RDB_SDCARD_defconfig
index 009ec04..0249f8a 100644
--- a/configs/T4240RDB_SDCARD_defconfig
+++ b/configs/T4240RDB_SDCARD_defconfig
@@ -9,3 +9,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T4240RDB_defconfig b/configs/T4240RDB_defconfig
index 217471a..fb8f08a 100644
--- a/configs/T4240RDB_defconfig
+++ b/configs/T4240RDB_defconfig
@@ -8,3 +8,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/TQM5200S_HIGHBOOT_defconfig b/configs/TQM5200S_HIGHBOOT_defconfig
index 4c38482..544c2ff 100644
--- a/configs/TQM5200S_HIGHBOOT_defconfig
+++ b/configs/TQM5200S_HIGHBOOT_defconfig
@@ -3,3 +3,4 @@ CONFIG_MPC5xxx=y
 CONFIG_TARGET_TQM5200=y
 CONFIG_SYS_EXTRA_OPTIONS="TQM5200_B,TQM5200S,SYS_TEXT_BASE=0xFFF00000"
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/TQM5200S_defconfig b/configs/TQM5200S_defconfig
index a01bd39..617b94e 100644
--- a/configs/TQM5200S_defconfig
+++ b/configs/TQM5200S_defconfig
@@ -3,3 +3,4 @@ CONFIG_MPC5xxx=y
 CONFIG_TARGET_TQM5200=y
 CONFIG_SYS_EXTRA_OPTIONS="TQM5200_B,TQM5200S"
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/TQM5200_B_HIGHBOOT_defconfig b/configs/TQM5200_B_HIGHBOOT_defconfig
index dac1eef..2f31085 100644
--- a/configs/TQM5200_B_HIGHBOOT_defconfig
+++ b/configs/TQM5200_B_HIGHBOOT_defconfig
@@ -3,3 +3,4 @@ CONFIG_MPC5xxx=y
 CONFIG_TARGET_TQM5200=y
 CONFIG_SYS_EXTRA_OPTIONS="TQM5200_B,SYS_TEXT_BASE=0xFFF00000"
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/TQM5200_B_defconfig b/configs/TQM5200_B_defconfig
index 8417ce2..15eeaaf 100644
--- a/configs/TQM5200_B_defconfig
+++ b/configs/TQM5200_B_defconfig
@@ -3,3 +3,4 @@ CONFIG_MPC5xxx=y
 CONFIG_TARGET_TQM5200=y
 CONFIG_SYS_EXTRA_OPTIONS="TQM5200_B"
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/TQM5200_STK100_defconfig b/configs/TQM5200_STK100_defconfig
index 9e381f4..91e87d5 100644
--- a/configs/TQM5200_STK100_defconfig
+++ b/configs/TQM5200_STK100_defconfig
@@ -3,3 +3,4 @@ CONFIG_MPC5xxx=y
 CONFIG_TARGET_TQM5200=y
 CONFIG_SYS_EXTRA_OPTIONS="STK52XX_REV100"
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/TQM5200_defconfig b/configs/TQM5200_defconfig
index d82a5be..922f725 100644
--- a/configs/TQM5200_defconfig
+++ b/configs/TQM5200_defconfig
@@ -2,3 +2,4 @@ CONFIG_PPC=y
 CONFIG_MPC5xxx=y
 CONFIG_TARGET_TQM5200=y
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/TQM823L_LCD_defconfig b/configs/TQM823L_LCD_defconfig
index ebe9bdf..9a697c0 100644
--- a/configs/TQM823L_LCD_defconfig
+++ b/configs/TQM823L_LCD_defconfig
@@ -3,3 +3,4 @@ CONFIG_8xx=y
 CONFIG_TARGET_TQM823L=y
 CONFIG_SYS_EXTRA_OPTIONS="LCD,NEC_NL6448BC20"
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/TQM823L_defconfig b/configs/TQM823L_defconfig
index 05e69c3..1219118 100644
--- a/configs/TQM823L_defconfig
+++ b/configs/TQM823L_defconfig
@@ -2,3 +2,4 @@ CONFIG_PPC=y
 CONFIG_8xx=y
 CONFIG_TARGET_TQM823L=y
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/TQM823M_defconfig b/configs/TQM823M_defconfig
index 4c9ead8..10ef9f0 100644
--- a/configs/TQM823M_defconfig
+++ b/configs/TQM823M_defconfig
@@ -2,3 +2,4 @@ CONFIG_PPC=y
 CONFIG_8xx=y
 CONFIG_TARGET_TQM823M=y
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/TQM834x_defconfig b/configs/TQM834x_defconfig
index f88beef..d77baed 100644
--- a/configs/TQM834x_defconfig
+++ b/configs/TQM834x_defconfig
@@ -3,3 +3,4 @@ CONFIG_MPC83xx=y
 CONFIG_TARGET_TQM834X=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/TQM850L_defconfig b/configs/TQM850L_defconfig
index 47c4070..0134391 100644
--- a/configs/TQM850L_defconfig
+++ b/configs/TQM850L_defconfig
@@ -2,3 +2,4 @@ CONFIG_PPC=y
 CONFIG_8xx=y
 CONFIG_TARGET_TQM850L=y
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/TQM850M_defconfig b/configs/TQM850M_defconfig
index e4784b5..f0a62c3 100644
--- a/configs/TQM850M_defconfig
+++ b/configs/TQM850M_defconfig
@@ -2,3 +2,4 @@ CONFIG_PPC=y
 CONFIG_8xx=y
 CONFIG_TARGET_TQM850M=y
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/TQM855L_defconfig b/configs/TQM855L_defconfig
index e0b03af..a7aacaf 100644
--- a/configs/TQM855L_defconfig
+++ b/configs/TQM855L_defconfig
@@ -2,3 +2,4 @@ CONFIG_PPC=y
 CONFIG_8xx=y
 CONFIG_TARGET_TQM855L=y
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/TQM855M_defconfig b/configs/TQM855M_defconfig
index 32496bf..59feaba 100644
--- a/configs/TQM855M_defconfig
+++ b/configs/TQM855M_defconfig
@@ -2,3 +2,4 @@ CONFIG_PPC=y
 CONFIG_8xx=y
 CONFIG_TARGET_TQM855M=y
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/TQM860L_defconfig b/configs/TQM860L_defconfig
index b83a07b..afb0b134 100644
--- a/configs/TQM860L_defconfig
+++ b/configs/TQM860L_defconfig
@@ -2,3 +2,4 @@ CONFIG_PPC=y
 CONFIG_8xx=y
 CONFIG_TARGET_TQM860L=y
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/TQM860M_defconfig b/configs/TQM860M_defconfig
index d95ad79..e20e3c0 100644
--- a/configs/TQM860M_defconfig
+++ b/configs/TQM860M_defconfig
@@ -2,3 +2,4 @@ CONFIG_PPC=y
 CONFIG_8xx=y
 CONFIG_TARGET_TQM860M=y
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/TQM862L_defconfig b/configs/TQM862L_defconfig
index 75c8801..9274ebb 100644
--- a/configs/TQM862L_defconfig
+++ b/configs/TQM862L_defconfig
@@ -2,3 +2,4 @@ CONFIG_PPC=y
 CONFIG_8xx=y
 CONFIG_TARGET_TQM862L=y
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/TQM862M_defconfig b/configs/TQM862M_defconfig
index d5f8222..37af0d9 100644
--- a/configs/TQM862M_defconfig
+++ b/configs/TQM862M_defconfig
@@ -2,3 +2,4 @@ CONFIG_PPC=y
 CONFIG_8xx=y
 CONFIG_TARGET_TQM862M=y
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/TQM866M_defconfig b/configs/TQM866M_defconfig
index 74f12e2..58b5737 100644
--- a/configs/TQM866M_defconfig
+++ b/configs/TQM866M_defconfig
@@ -2,3 +2,4 @@ CONFIG_PPC=y
 CONFIG_8xx=y
 CONFIG_TARGET_TQM866M=y
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/TQM885D_defconfig b/configs/TQM885D_defconfig
index bcad969..046e2fe 100644
--- a/configs/TQM885D_defconfig
+++ b/configs/TQM885D_defconfig
@@ -2,3 +2,4 @@ CONFIG_PPC=y
 CONFIG_8xx=y
 CONFIG_TARGET_TQM885D=y
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/TTTech_defconfig b/configs/TTTech_defconfig
index d239a73..b41a919 100644
--- a/configs/TTTech_defconfig
+++ b/configs/TTTech_defconfig
@@ -3,3 +3,4 @@ CONFIG_8xx=y
 CONFIG_TARGET_TQM823L=y
 CONFIG_SYS_EXTRA_OPTIONS="LCD,SHARP_LQ104V7DS01"
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/TWR-P1025_defconfig b/configs/TWR-P1025_defconfig
index 2b0a2ab..ededa1b 100644
--- a/configs/TWR-P1025_defconfig
+++ b/configs/TWR-P1025_defconfig
@@ -6,3 +6,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/UCP1020_SPIFLASH_defconfig b/configs/UCP1020_SPIFLASH_defconfig
index a075bcc..02976be 100644
--- a/configs/UCP1020_SPIFLASH_defconfig
+++ b/configs/UCP1020_SPIFLASH_defconfig
@@ -14,3 +14,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/UCP1020_defconfig b/configs/UCP1020_defconfig
index c8da464..4baea4f 100644
--- a/configs/UCP1020_defconfig
+++ b/configs/UCP1020_defconfig
@@ -14,3 +14,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/VOM405_defconfig b/configs/VOM405_defconfig
index 53ac1bf..b368e76 100644
--- a/configs/VOM405_defconfig
+++ b/configs/VOM405_defconfig
@@ -3,3 +3,4 @@ CONFIG_4xx=y
 CONFIG_TARGET_VOM405=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/a3m071_defconfig b/configs/a3m071_defconfig
index 3a6188e..6707e61 100644
--- a/configs/a3m071_defconfig
+++ b/configs/a3m071_defconfig
@@ -4,3 +4,4 @@ CONFIG_TARGET_A3M071=y
 CONFIG_SPL=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_LIB_RAND=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/a4m072_defconfig b/configs/a4m072_defconfig
index 4a02293..379b0db 100644
--- a/configs/a4m072_defconfig
+++ b/configs/a4m072_defconfig
@@ -5,3 +5,4 @@ CONFIG_AUTOBOOT_KEYED=y
 CONFIG_AUTOBOOT_PROMPT="autoboot in %d seconds\n"
 CONFIG_AUTOBOOT_DELAY_STR="asdfg"
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/a4m2k_defconfig b/configs/a4m2k_defconfig
index 22db933..5d52092 100644
--- a/configs/a4m2k_defconfig
+++ b/configs/a4m2k_defconfig
@@ -5,3 +5,4 @@ CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="A4M2K"
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_LIB_RAND=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/ac14xx_defconfig b/configs/ac14xx_defconfig
index 608b56a..21cb0b8 100644
--- a/configs/ac14xx_defconfig
+++ b/configs/ac14xx_defconfig
@@ -3,3 +3,4 @@ CONFIG_MPC512X=y
 CONFIG_TARGET_AC14XX=y
 CONFIG_SYS_PROMPT="ac14xx> "
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/acadia_defconfig b/configs/acadia_defconfig
index 51efe06..07c8668 100644
--- a/configs/acadia_defconfig
+++ b/configs/acadia_defconfig
@@ -2,3 +2,4 @@ CONFIG_PPC=y
 CONFIG_4xx=y
 CONFIG_TARGET_ACADIA=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/alt_defconfig b/configs/alt_defconfig
index aaf6a99..4ea33ef 100644
--- a/configs/alt_defconfig
+++ b/configs/alt_defconfig
@@ -20,3 +20,4 @@ CONFIG_SH_SDHI=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_BAR=y
 CONFIG_SPI_FLASH_SPANSION=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/am335x_baltos_defconfig b/configs/am335x_baltos_defconfig
index 91bb63f..200e375 100644
--- a/configs/am335x_baltos_defconfig
+++ b/configs/am335x_baltos_defconfig
@@ -11,3 +11,4 @@ CONFIG_SYS_EXTRA_OPTIONS="NAND"
 CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/am335x_boneblack_defconfig b/configs/am335x_boneblack_defconfig
index 8803da5..40da085 100644
--- a/configs/am335x_boneblack_defconfig
+++ b/configs/am335x_boneblack_defconfig
@@ -16,3 +16,4 @@ CONFIG_DFU_TFTP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_WINBOND=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/am335x_evm_defconfig b/configs/am335x_evm_defconfig
index 7753ab5..bc1e8d9 100644
--- a/configs/am335x_evm_defconfig
+++ b/configs/am335x_evm_defconfig
@@ -15,3 +15,4 @@ CONFIG_CMD_GPIO=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_WINBOND=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/am335x_evm_nor_defconfig b/configs/am335x_evm_nor_defconfig
index bde7b8a..cdf13ed 100644
--- a/configs/am335x_evm_nor_defconfig
+++ b/configs/am335x_evm_nor_defconfig
@@ -11,3 +11,4 @@ CONFIG_CMD_GPIO=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_WINBOND=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/am335x_evm_norboot_defconfig b/configs/am335x_evm_norboot_defconfig
index 94dfb5a..b1ab2f3 100644
--- a/configs/am335x_evm_norboot_defconfig
+++ b/configs/am335x_evm_norboot_defconfig
@@ -8,3 +8,4 @@ CONFIG_CMD_GPIO=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_WINBOND=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/am335x_evm_spiboot_defconfig b/configs/am335x_evm_spiboot_defconfig
index 9757142..e360643 100644
--- a/configs/am335x_evm_spiboot_defconfig
+++ b/configs/am335x_evm_spiboot_defconfig
@@ -11,3 +11,4 @@ CONFIG_CMD_GPIO=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_WINBOND=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/am335x_evm_usbspl_defconfig b/configs/am335x_evm_usbspl_defconfig
index 0329948..806e3dc 100644
--- a/configs/am335x_evm_usbspl_defconfig
+++ b/configs/am335x_evm_usbspl_defconfig
@@ -11,3 +11,4 @@ CONFIG_CMD_GPIO=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_WINBOND=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/am335x_igep0033_defconfig b/configs/am335x_igep0033_defconfig
index 8f6bf02..5d448c3 100644
--- a/configs/am335x_igep0033_defconfig
+++ b/configs/am335x_igep0033_defconfig
@@ -8,3 +8,4 @@ CONFIG_SPL_STACK_R=y
 CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/am335x_sl50_defconfig b/configs/am335x_sl50_defconfig
index d6cd92e..220dd23 100644
--- a/configs/am335x_sl50_defconfig
+++ b/configs/am335x_sl50_defconfig
@@ -9,3 +9,4 @@ CONFIG_SYS_EXTRA_OPTIONS="EMMC_BOOT"
 CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/am3517_evm_defconfig b/configs/am3517_evm_defconfig
index cde84fe..1da7451 100644
--- a/configs/am3517_evm_defconfig
+++ b/configs/am3517_evm_defconfig
@@ -10,3 +10,4 @@ CONFIG_SYS_PROMPT="AM3517_EVM # "
 # CONFIG_CMD_FPGA is not set
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/am43xx_evm_defconfig b/configs/am43xx_evm_defconfig
index 1ba1c8b..8ef28f3 100644
--- a/configs/am43xx_evm_defconfig
+++ b/configs/am43xx_evm_defconfig
@@ -11,3 +11,4 @@ CONFIG_SPI_FLASH_BAR=y
 CONFIG_SPI_FLASH_MACRONIX=y
 CONFIG_SYS_NS16550=y
 CONFIG_TI_QSPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/am43xx_evm_ethboot_defconfig b/configs/am43xx_evm_ethboot_defconfig
index ff2acf0..7143597 100644
--- a/configs/am43xx_evm_ethboot_defconfig
+++ b/configs/am43xx_evm_ethboot_defconfig
@@ -10,3 +10,4 @@ CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_MACRONIX=y
 CONFIG_SYS_NS16550=y
 CONFIG_TI_QSPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/am43xx_evm_qspiboot_defconfig b/configs/am43xx_evm_qspiboot_defconfig
index 095f4d0..a9a862b 100644
--- a/configs/am43xx_evm_qspiboot_defconfig
+++ b/configs/am43xx_evm_qspiboot_defconfig
@@ -9,3 +9,4 @@ CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_MACRONIX=y
 CONFIG_SYS_NS16550=y
 CONFIG_TI_QSPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/am43xx_evm_usbhost_boot_defconfig b/configs/am43xx_evm_usbhost_boot_defconfig
index be99599..2c73dbe 100644
--- a/configs/am43xx_evm_usbhost_boot_defconfig
+++ b/configs/am43xx_evm_usbhost_boot_defconfig
@@ -10,3 +10,4 @@ CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_MACRONIX=y
 CONFIG_SYS_NS16550=y
 CONFIG_TI_QSPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/am57xx_evm_nodt_defconfig b/configs/am57xx_evm_nodt_defconfig
index e351be4..7641db5 100644
--- a/configs/am57xx_evm_nodt_defconfig
+++ b/configs/am57xx_evm_nodt_defconfig
@@ -8,3 +8,4 @@ CONFIG_SYS_EXTRA_OPTIONS="CONS_INDEX=3"
 CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/apf27_defconfig b/configs/apf27_defconfig
index 3a7a8c1..3d6fe7b 100644
--- a/configs/apf27_defconfig
+++ b/configs/apf27_defconfig
@@ -4,3 +4,4 @@ CONFIG_SPL=y
 CONFIG_SYS_PROMPT="BIOS> "
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/apx4devkit_defconfig b/configs/apx4devkit_defconfig
index 5727929..e69fce2 100644
--- a/configs/apx4devkit_defconfig
+++ b/configs/apx4devkit_defconfig
@@ -4,3 +4,4 @@ CONFIG_SPL=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/aria_defconfig b/configs/aria_defconfig
index 1c073bf..24541f4 100644
--- a/configs/aria_defconfig
+++ b/configs/aria_defconfig
@@ -2,3 +2,4 @@ CONFIG_PPC=y
 CONFIG_MPC512X=y
 CONFIG_TARGET_ARIA=y
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/aristainetos2_defconfig b/configs/aristainetos2_defconfig
index b83e7ea..de55ea8 100644
--- a/configs/aristainetos2_defconfig
+++ b/configs/aristainetos2_defconfig
@@ -7,3 +7,4 @@ CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/aristainetos/aristainetos2.cfg,MX6DL"
 CONFIG_CMD_GPIO=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/aristainetos2b_defconfig b/configs/aristainetos2b_defconfig
index cdad556..f790403 100644
--- a/configs/aristainetos2b_defconfig
+++ b/configs/aristainetos2b_defconfig
@@ -7,3 +7,4 @@ CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/aristainetos/aristainetos2.cfg,MX6DL"
 CONFIG_CMD_GPIO=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/aristainetos_defconfig b/configs/aristainetos_defconfig
index 15fc3a9..0bd93d4 100644
--- a/configs/aristainetos_defconfig
+++ b/configs/aristainetos_defconfig
@@ -7,3 +7,4 @@ CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/aristainetos/aristainetos.cfg,MX6DL"
 CONFIG_CMD_GPIO=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/armadillo-800eva_defconfig b/configs/armadillo-800eva_defconfig
index 240d72d..dc326e1 100644
--- a/configs/armadillo-800eva_defconfig
+++ b/configs/armadillo-800eva_defconfig
@@ -18,3 +18,4 @@ CONFIG_TARGET_ARMADILLO_800EVA=y
 # CONFIG_CMD_SOURCE is not set
 # CONFIG_CMD_SETEXPR is not set
 # CONFIG_CMD_MISC is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/aspenite_defconfig b/configs/aspenite_defconfig
index 812122f..d3ac8d8 100644
--- a/configs/aspenite_defconfig
+++ b/configs/aspenite_defconfig
@@ -6,3 +6,4 @@ CONFIG_TARGET_ASPENITE=y
 # CONFIG_CMD_NET is not set
 # CONFIG_CMD_NFS is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/at91rm9200ek_defconfig b/configs/at91rm9200ek_defconfig
index e743b53..7c99aa0 100644
--- a/configs/at91rm9200ek_defconfig
+++ b/configs/at91rm9200ek_defconfig
@@ -4,3 +4,4 @@ CONFIG_TARGET_AT91RM9200EK=y
 CONFIG_SYS_PROMPT="U-Boot> "
 # CONFIG_CMD_FPGA is not set
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/at91rm9200ek_ram_defconfig b/configs/at91rm9200ek_ram_defconfig
index 2043923..96a4536 100644
--- a/configs/at91rm9200ek_ram_defconfig
+++ b/configs/at91rm9200ek_ram_defconfig
@@ -5,3 +5,4 @@ CONFIG_SYS_EXTRA_OPTIONS="RAMBOOT"
 CONFIG_SYS_PROMPT="U-Boot> "
 # CONFIG_CMD_FPGA is not set
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/at91sam9260ek_dataflash_cs0_defconfig b/configs/at91sam9260ek_dataflash_cs0_defconfig
index 3c52fef..a71a21f 100644
--- a/configs/at91sam9260ek_dataflash_cs0_defconfig
+++ b/configs/at91sam9260ek_dataflash_cs0_defconfig
@@ -10,3 +10,4 @@ CONFIG_SYS_PROMPT="U-Boot> "
 # CONFIG_CMD_FPGA is not set
 # CONFIG_CMD_SOURCE is not set
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/at91sam9260ek_dataflash_cs1_defconfig b/configs/at91sam9260ek_dataflash_cs1_defconfig
index 3b98493..5884ffa 100644
--- a/configs/at91sam9260ek_dataflash_cs1_defconfig
+++ b/configs/at91sam9260ek_dataflash_cs1_defconfig
@@ -10,3 +10,4 @@ CONFIG_SYS_PROMPT="U-Boot> "
 # CONFIG_CMD_FPGA is not set
 # CONFIG_CMD_SOURCE is not set
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/at91sam9260ek_nandflash_defconfig b/configs/at91sam9260ek_nandflash_defconfig
index 0eac59b..9d49a1a 100644
--- a/configs/at91sam9260ek_nandflash_defconfig
+++ b/configs/at91sam9260ek_nandflash_defconfig
@@ -10,3 +10,4 @@ CONFIG_SYS_PROMPT="U-Boot> "
 # CONFIG_CMD_FPGA is not set
 # CONFIG_CMD_SOURCE is not set
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/at91sam9261ek_dataflash_cs0_defconfig b/configs/at91sam9261ek_dataflash_cs0_defconfig
index b902f60..2bdc4a6 100644
--- a/configs/at91sam9261ek_dataflash_cs0_defconfig
+++ b/configs/at91sam9261ek_dataflash_cs0_defconfig
@@ -10,3 +10,4 @@ CONFIG_SYS_PROMPT="U-Boot> "
 # CONFIG_CMD_FPGA is not set
 # CONFIG_CMD_SOURCE is not set
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/at91sam9261ek_dataflash_cs3_defconfig b/configs/at91sam9261ek_dataflash_cs3_defconfig
index c370ae7..0f6946a 100644
--- a/configs/at91sam9261ek_dataflash_cs3_defconfig
+++ b/configs/at91sam9261ek_dataflash_cs3_defconfig
@@ -10,3 +10,4 @@ CONFIG_SYS_PROMPT="U-Boot> "
 # CONFIG_CMD_FPGA is not set
 # CONFIG_CMD_SOURCE is not set
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/at91sam9261ek_nandflash_defconfig b/configs/at91sam9261ek_nandflash_defconfig
index d7a98c6..6a5a850 100644
--- a/configs/at91sam9261ek_nandflash_defconfig
+++ b/configs/at91sam9261ek_nandflash_defconfig
@@ -10,3 +10,4 @@ CONFIG_SYS_PROMPT="U-Boot> "
 # CONFIG_CMD_FPGA is not set
 # CONFIG_CMD_SOURCE is not set
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/at91sam9263ek_dataflash_cs0_defconfig b/configs/at91sam9263ek_dataflash_cs0_defconfig
index f2edb9f..1ca4f46 100644
--- a/configs/at91sam9263ek_dataflash_cs0_defconfig
+++ b/configs/at91sam9263ek_dataflash_cs0_defconfig
@@ -10,3 +10,4 @@ CONFIG_SYS_PROMPT="U-Boot> "
 # CONFIG_CMD_FPGA is not set
 # CONFIG_CMD_SOURCE is not set
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/at91sam9263ek_dataflash_defconfig b/configs/at91sam9263ek_dataflash_defconfig
index f2edb9f..1ca4f46 100644
--- a/configs/at91sam9263ek_dataflash_defconfig
+++ b/configs/at91sam9263ek_dataflash_defconfig
@@ -10,3 +10,4 @@ CONFIG_SYS_PROMPT="U-Boot> "
 # CONFIG_CMD_FPGA is not set
 # CONFIG_CMD_SOURCE is not set
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/at91sam9263ek_nandflash_defconfig b/configs/at91sam9263ek_nandflash_defconfig
index c69e740..15306e6 100644
--- a/configs/at91sam9263ek_nandflash_defconfig
+++ b/configs/at91sam9263ek_nandflash_defconfig
@@ -10,3 +10,4 @@ CONFIG_SYS_PROMPT="U-Boot> "
 # CONFIG_CMD_FPGA is not set
 # CONFIG_CMD_SOURCE is not set
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/at91sam9263ek_norflash_boot_defconfig b/configs/at91sam9263ek_norflash_boot_defconfig
index b5cd0da..2cf8cb9 100644
--- a/configs/at91sam9263ek_norflash_boot_defconfig
+++ b/configs/at91sam9263ek_norflash_boot_defconfig
@@ -10,3 +10,4 @@ CONFIG_SYS_PROMPT="U-Boot> "
 # CONFIG_CMD_FPGA is not set
 # CONFIG_CMD_SOURCE is not set
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/at91sam9263ek_norflash_defconfig b/configs/at91sam9263ek_norflash_defconfig
index 790fcc2..abb044c 100644
--- a/configs/at91sam9263ek_norflash_defconfig
+++ b/configs/at91sam9263ek_norflash_defconfig
@@ -10,3 +10,4 @@ CONFIG_SYS_PROMPT="U-Boot> "
 # CONFIG_CMD_FPGA is not set
 # CONFIG_CMD_SOURCE is not set
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/at91sam9g10ek_dataflash_cs0_defconfig b/configs/at91sam9g10ek_dataflash_cs0_defconfig
index a18d776..173990e 100644
--- a/configs/at91sam9g10ek_dataflash_cs0_defconfig
+++ b/configs/at91sam9g10ek_dataflash_cs0_defconfig
@@ -10,3 +10,4 @@ CONFIG_SYS_PROMPT="U-Boot> "
 # CONFIG_CMD_FPGA is not set
 # CONFIG_CMD_SOURCE is not set
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/at91sam9g10ek_dataflash_cs3_defconfig b/configs/at91sam9g10ek_dataflash_cs3_defconfig
index 7c4a62c..551bfea 100644
--- a/configs/at91sam9g10ek_dataflash_cs3_defconfig
+++ b/configs/at91sam9g10ek_dataflash_cs3_defconfig
@@ -10,3 +10,4 @@ CONFIG_SYS_PROMPT="U-Boot> "
 # CONFIG_CMD_FPGA is not set
 # CONFIG_CMD_SOURCE is not set
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/at91sam9g10ek_nandflash_defconfig b/configs/at91sam9g10ek_nandflash_defconfig
index 98a14f4..505c5ed 100644
--- a/configs/at91sam9g10ek_nandflash_defconfig
+++ b/configs/at91sam9g10ek_nandflash_defconfig
@@ -10,3 +10,4 @@ CONFIG_SYS_PROMPT="U-Boot> "
 # CONFIG_CMD_FPGA is not set
 # CONFIG_CMD_SOURCE is not set
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/at91sam9g20ek_2mmc_defconfig b/configs/at91sam9g20ek_2mmc_defconfig
index 4c669f4..c5d0e68 100644
--- a/configs/at91sam9g20ek_2mmc_defconfig
+++ b/configs/at91sam9g20ek_2mmc_defconfig
@@ -10,3 +10,4 @@ CONFIG_SYS_PROMPT="U-Boot> "
 # CONFIG_CMD_FPGA is not set
 # CONFIG_CMD_SOURCE is not set
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/at91sam9g20ek_2mmc_nandflash_defconfig b/configs/at91sam9g20ek_2mmc_nandflash_defconfig
index 8c39f19..b8ec67c 100644
--- a/configs/at91sam9g20ek_2mmc_nandflash_defconfig
+++ b/configs/at91sam9g20ek_2mmc_nandflash_defconfig
@@ -10,3 +10,4 @@ CONFIG_SYS_PROMPT="U-Boot> "
 # CONFIG_CMD_FPGA is not set
 # CONFIG_CMD_SOURCE is not set
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/at91sam9g20ek_dataflash_cs0_defconfig b/configs/at91sam9g20ek_dataflash_cs0_defconfig
index ed2cbf9..0317cae 100644
--- a/configs/at91sam9g20ek_dataflash_cs0_defconfig
+++ b/configs/at91sam9g20ek_dataflash_cs0_defconfig
@@ -10,3 +10,4 @@ CONFIG_SYS_PROMPT="U-Boot> "
 # CONFIG_CMD_FPGA is not set
 # CONFIG_CMD_SOURCE is not set
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/at91sam9g20ek_dataflash_cs1_defconfig b/configs/at91sam9g20ek_dataflash_cs1_defconfig
index 06d52de..c87188f 100644
--- a/configs/at91sam9g20ek_dataflash_cs1_defconfig
+++ b/configs/at91sam9g20ek_dataflash_cs1_defconfig
@@ -10,3 +10,4 @@ CONFIG_SYS_PROMPT="U-Boot> "
 # CONFIG_CMD_FPGA is not set
 # CONFIG_CMD_SOURCE is not set
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/at91sam9g20ek_nandflash_defconfig b/configs/at91sam9g20ek_nandflash_defconfig
index 8bc3fee..7b13e96 100644
--- a/configs/at91sam9g20ek_nandflash_defconfig
+++ b/configs/at91sam9g20ek_nandflash_defconfig
@@ -10,3 +10,4 @@ CONFIG_SYS_PROMPT="U-Boot> "
 # CONFIG_CMD_FPGA is not set
 # CONFIG_CMD_SOURCE is not set
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/at91sam9m10g45ek_mmc_defconfig b/configs/at91sam9m10g45ek_mmc_defconfig
index 6e4e6a4..c4d3962 100644
--- a/configs/at91sam9m10g45ek_mmc_defconfig
+++ b/configs/at91sam9m10g45ek_mmc_defconfig
@@ -11,3 +11,4 @@ CONFIG_SYS_PROMPT="U-Boot> "
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/at91sam9m10g45ek_nandflash_defconfig b/configs/at91sam9m10g45ek_nandflash_defconfig
index 825129c..4d42256 100644
--- a/configs/at91sam9m10g45ek_nandflash_defconfig
+++ b/configs/at91sam9m10g45ek_nandflash_defconfig
@@ -11,3 +11,4 @@ CONFIG_SYS_PROMPT="U-Boot> "
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/at91sam9n12ek_mmc_defconfig b/configs/at91sam9n12ek_mmc_defconfig
index 6f2390b..6f45120 100644
--- a/configs/at91sam9n12ek_mmc_defconfig
+++ b/configs/at91sam9n12ek_mmc_defconfig
@@ -9,3 +9,4 @@ CONFIG_SYS_PROMPT="U-Boot> "
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_ATMEL=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/at91sam9n12ek_nandflash_defconfig b/configs/at91sam9n12ek_nandflash_defconfig
index ec16f34..df099b2 100644
--- a/configs/at91sam9n12ek_nandflash_defconfig
+++ b/configs/at91sam9n12ek_nandflash_defconfig
@@ -10,3 +10,4 @@ CONFIG_SYS_PROMPT="U-Boot> "
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_ATMEL=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/at91sam9n12ek_spiflash_defconfig b/configs/at91sam9n12ek_spiflash_defconfig
index 655c574..20cf592 100644
--- a/configs/at91sam9n12ek_spiflash_defconfig
+++ b/configs/at91sam9n12ek_spiflash_defconfig
@@ -10,3 +10,4 @@ CONFIG_SYS_PROMPT="U-Boot> "
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_ATMEL=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/at91sam9rlek_dataflash_defconfig b/configs/at91sam9rlek_dataflash_defconfig
index e1ca59d..6dc8dbc 100644
--- a/configs/at91sam9rlek_dataflash_defconfig
+++ b/configs/at91sam9rlek_dataflash_defconfig
@@ -13,3 +13,4 @@ CONFIG_SYS_PROMPT="U-Boot> "
 # CONFIG_CMD_SETEXPR is not set
 # CONFIG_CMD_NET is not set
 # CONFIG_CMD_NFS is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/at91sam9rlek_mmc_defconfig b/configs/at91sam9rlek_mmc_defconfig
index 7202997..dcf8ec6 100644
--- a/configs/at91sam9rlek_mmc_defconfig
+++ b/configs/at91sam9rlek_mmc_defconfig
@@ -13,3 +13,4 @@ CONFIG_SYS_PROMPT="U-Boot> "
 # CONFIG_CMD_SETEXPR is not set
 # CONFIG_CMD_NET is not set
 # CONFIG_CMD_NFS is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/at91sam9rlek_nandflash_defconfig b/configs/at91sam9rlek_nandflash_defconfig
index 220f95f..3e825aa 100644
--- a/configs/at91sam9rlek_nandflash_defconfig
+++ b/configs/at91sam9rlek_nandflash_defconfig
@@ -13,3 +13,4 @@ CONFIG_SYS_PROMPT="U-Boot> "
 # CONFIG_CMD_SETEXPR is not set
 # CONFIG_CMD_NET is not set
 # CONFIG_CMD_NFS is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/at91sam9x5ek_dataflash_defconfig b/configs/at91sam9x5ek_dataflash_defconfig
index 43b32d1..b6154da 100644
--- a/configs/at91sam9x5ek_dataflash_defconfig
+++ b/configs/at91sam9x5ek_dataflash_defconfig
@@ -10,3 +10,4 @@ CONFIG_SYS_PROMPT="U-Boot> "
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_ATMEL=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/at91sam9x5ek_mmc_defconfig b/configs/at91sam9x5ek_mmc_defconfig
index 29fdf31..b782e25 100644
--- a/configs/at91sam9x5ek_mmc_defconfig
+++ b/configs/at91sam9x5ek_mmc_defconfig
@@ -10,3 +10,4 @@ CONFIG_SYS_PROMPT="U-Boot> "
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_ATMEL=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/at91sam9x5ek_nandflash_defconfig b/configs/at91sam9x5ek_nandflash_defconfig
index 004ee25..66be263 100644
--- a/configs/at91sam9x5ek_nandflash_defconfig
+++ b/configs/at91sam9x5ek_nandflash_defconfig
@@ -11,3 +11,4 @@ CONFIG_SYS_PROMPT="U-Boot> "
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_ATMEL=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/at91sam9x5ek_spiflash_defconfig b/configs/at91sam9x5ek_spiflash_defconfig
index c574422..0eba857 100644
--- a/configs/at91sam9x5ek_spiflash_defconfig
+++ b/configs/at91sam9x5ek_spiflash_defconfig
@@ -11,3 +11,4 @@ CONFIG_SYS_PROMPT="U-Boot> "
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_ATMEL=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/at91sam9xeek_dataflash_cs0_defconfig b/configs/at91sam9xeek_dataflash_cs0_defconfig
index 14e49bc..57e4481 100644
--- a/configs/at91sam9xeek_dataflash_cs0_defconfig
+++ b/configs/at91sam9xeek_dataflash_cs0_defconfig
@@ -10,3 +10,4 @@ CONFIG_SYS_PROMPT="U-Boot> "
 # CONFIG_CMD_FPGA is not set
 # CONFIG_CMD_SOURCE is not set
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/at91sam9xeek_dataflash_cs1_defconfig b/configs/at91sam9xeek_dataflash_cs1_defconfig
index d04c6e6..f6b585b 100644
--- a/configs/at91sam9xeek_dataflash_cs1_defconfig
+++ b/configs/at91sam9xeek_dataflash_cs1_defconfig
@@ -10,3 +10,4 @@ CONFIG_SYS_PROMPT="U-Boot> "
 # CONFIG_CMD_FPGA is not set
 # CONFIG_CMD_SOURCE is not set
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/at91sam9xeek_nandflash_defconfig b/configs/at91sam9xeek_nandflash_defconfig
index 795e1c2..0d1c2c3 100644
--- a/configs/at91sam9xeek_nandflash_defconfig
+++ b/configs/at91sam9xeek_nandflash_defconfig
@@ -10,3 +10,4 @@ CONFIG_SYS_PROMPT="U-Boot> "
 # CONFIG_CMD_FPGA is not set
 # CONFIG_CMD_SOURCE is not set
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/axm_defconfig b/configs/axm_defconfig
index 25e4570..65c13eb 100644
--- a/configs/axm_defconfig
+++ b/configs/axm_defconfig
@@ -13,3 +13,4 @@ CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9G20,MACH_TYPE=2068,BOARD_AXM"
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_USE_TINY_PRINTF=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/bamboo_defconfig b/configs/bamboo_defconfig
index 6ecdbcc..6b510e1 100644
--- a/configs/bamboo_defconfig
+++ b/configs/bamboo_defconfig
@@ -2,3 +2,4 @@ CONFIG_PPC=y
 CONFIG_4xx=y
 CONFIG_TARGET_BAMBOO=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/bcm911360_entphn-ns_defconfig b/configs/bcm911360_entphn-ns_defconfig
index 58c0ff6..c1b41eb 100644
--- a/configs/bcm911360_entphn-ns_defconfig
+++ b/configs/bcm911360_entphn-ns_defconfig
@@ -5,3 +5,4 @@ CONFIG_SYS_EXTRA_OPTIONS="SYS_SDRAM_SIZE=0x20000000,ARMV7_NONSEC"
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/bcm911360_entphn_defconfig b/configs/bcm911360_entphn_defconfig
index 2589cb1..ed1dea5 100644
--- a/configs/bcm911360_entphn_defconfig
+++ b/configs/bcm911360_entphn_defconfig
@@ -5,3 +5,4 @@ CONFIG_SYS_EXTRA_OPTIONS="SYS_SDRAM_SIZE=0x20000000"
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/bcm911360k_defconfig b/configs/bcm911360k_defconfig
index ba430e6..8fcde6c 100644
--- a/configs/bcm911360k_defconfig
+++ b/configs/bcm911360k_defconfig
@@ -5,3 +5,4 @@ CONFIG_SYS_EXTRA_OPTIONS="SYS_SDRAM_SIZE=0x40000000"
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/bcm958300k-ns_defconfig b/configs/bcm958300k-ns_defconfig
index 14db5a1..670b57f 100644
--- a/configs/bcm958300k-ns_defconfig
+++ b/configs/bcm958300k-ns_defconfig
@@ -5,3 +5,4 @@ CONFIG_SYS_EXTRA_OPTIONS="SYS_SDRAM_SIZE=0x40000000,ARMV7_NONSEC"
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/bcm958300k_defconfig b/configs/bcm958300k_defconfig
index ba430e6..8fcde6c 100644
--- a/configs/bcm958300k_defconfig
+++ b/configs/bcm958300k_defconfig
@@ -5,3 +5,4 @@ CONFIG_SYS_EXTRA_OPTIONS="SYS_SDRAM_SIZE=0x40000000"
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/bcm958305k_defconfig b/configs/bcm958305k_defconfig
index ba430e6..8fcde6c 100644
--- a/configs/bcm958305k_defconfig
+++ b/configs/bcm958305k_defconfig
@@ -5,3 +5,4 @@ CONFIG_SYS_EXTRA_OPTIONS="SYS_SDRAM_SIZE=0x40000000"
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/bcm958622hr_defconfig b/configs/bcm958622hr_defconfig
index 3bf0b0e..4a24da2 100644
--- a/configs/bcm958622hr_defconfig
+++ b/configs/bcm958622hr_defconfig
@@ -5,3 +5,4 @@ CONFIG_SYS_EXTRA_OPTIONS="SYS_SDRAM_SIZE=0x01000000"
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/bg0900_defconfig b/configs/bg0900_defconfig
index 620d621..c11617a 100644
--- a/configs/bg0900_defconfig
+++ b/configs/bg0900_defconfig
@@ -7,3 +7,4 @@ CONFIG_CMD_GPIO=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_BAR=y
 CONFIG_SPI_FLASH_STMICRO=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/birdland_bav335a_defconfig b/configs/birdland_bav335a_defconfig
index d807ea5..7ffa870 100644
--- a/configs/birdland_bav335a_defconfig
+++ b/configs/birdland_bav335a_defconfig
@@ -10,3 +10,4 @@ CONFIG_CMD_GPIO=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_WINBOND=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/birdland_bav335b_defconfig b/configs/birdland_bav335b_defconfig
index 2ed64f6..03b91a3 100644
--- a/configs/birdland_bav335b_defconfig
+++ b/configs/birdland_bav335b_defconfig
@@ -10,3 +10,4 @@ CONFIG_CMD_GPIO=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_WINBOND=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/bubinga_defconfig b/configs/bubinga_defconfig
index 1423dc5..ac94dca 100644
--- a/configs/bubinga_defconfig
+++ b/configs/bubinga_defconfig
@@ -2,3 +2,4 @@ CONFIG_PPC=y
 CONFIG_4xx=y
 CONFIG_TARGET_BUBINGA=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/caddy2_defconfig b/configs/caddy2_defconfig
index a353aa1..2d2b70b 100644
--- a/configs/caddy2_defconfig
+++ b/configs/caddy2_defconfig
@@ -6,3 +6,4 @@ CONFIG_SYS_EXTRA_OPTIONS="CADDY2"
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/cairo_defconfig b/configs/cairo_defconfig
index 3844bd4..e421fe1 100644
--- a/configs/cairo_defconfig
+++ b/configs/cairo_defconfig
@@ -10,3 +10,4 @@ CONFIG_SYS_PROMPT="Cairo # "
 CONFIG_CMD_GPIO=y
 # CONFIG_CMD_NET is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/cam5200_defconfig b/configs/cam5200_defconfig
index eda131a..77fbeb2 100644
--- a/configs/cam5200_defconfig
+++ b/configs/cam5200_defconfig
@@ -3,3 +3,4 @@ CONFIG_MPC5xxx=y
 CONFIG_TARGET_TQM5200=y
 CONFIG_SYS_EXTRA_OPTIONS="CAM5200,TQM5200S,TQM5200_B"
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/cam5200_niosflash_defconfig b/configs/cam5200_niosflash_defconfig
index aa7c70a..f962195 100644
--- a/configs/cam5200_niosflash_defconfig
+++ b/configs/cam5200_niosflash_defconfig
@@ -3,3 +3,4 @@ CONFIG_MPC5xxx=y
 CONFIG_TARGET_TQM5200=y
 CONFIG_SYS_EXTRA_OPTIONS="CAM5200,TQM5200S,TQM5200_B,CAM5200_NIOSFLASH"
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/cgtqmx6eval_defconfig b/configs/cgtqmx6eval_defconfig
index a0c146c..8fc8e64 100644
--- a/configs/cgtqmx6eval_defconfig
+++ b/configs/cgtqmx6eval_defconfig
@@ -8,3 +8,4 @@ CONFIG_SYS_PROMPT="CGT-QMX6-Quad U-Boot > "
 # CONFIG_CMD_FLASH is not set
 CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/charon_defconfig b/configs/charon_defconfig
index d67cc55..f2d521f 100644
--- a/configs/charon_defconfig
+++ b/configs/charon_defconfig
@@ -2,3 +2,4 @@ CONFIG_PPC=y
 CONFIG_MPC5xxx=y
 CONFIG_TARGET_CHARON=y
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/cm5200_defconfig b/configs/cm5200_defconfig
index 76c7b06..91d9267 100644
--- a/configs/cm5200_defconfig
+++ b/configs/cm5200_defconfig
@@ -2,3 +2,4 @@ CONFIG_PPC=y
 CONFIG_MPC5xxx=y
 CONFIG_TARGET_CM5200=y
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/cm_fx6_defconfig b/configs/cm_fx6_defconfig
index 528251c..1a5b263 100644
--- a/configs/cm_fx6_defconfig
+++ b/configs/cm_fx6_defconfig
@@ -31,3 +31,4 @@ CONFIG_USB_EHCI_HCD=y
 CONFIG_USB_STORAGE=y
 CONFIG_USB_KEYBOARD=y
 CONFIG_SYS_USB_EVENT_POLL_VIA_INT_QUEUE=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/cm_t335_defconfig b/configs/cm_t335_defconfig
index df16a61..1cabf0e 100644
--- a/configs/cm_t335_defconfig
+++ b/configs/cm_t335_defconfig
@@ -7,3 +7,4 @@ CONFIG_SYS_PROMPT="CM-T335 # "
 CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/cm_t3517_defconfig b/configs/cm_t3517_defconfig
index 1d9af56..054a1c9 100644
--- a/configs/cm_t3517_defconfig
+++ b/configs/cm_t3517_defconfig
@@ -8,3 +8,4 @@ CONFIG_SYS_PROMPT="CM-T3517 # "
 CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/cm_t35_defconfig b/configs/cm_t35_defconfig
index 1e1591f..71a9005 100644
--- a/configs/cm_t35_defconfig
+++ b/configs/cm_t35_defconfig
@@ -9,3 +9,4 @@ CONFIG_SYS_PROMPT="CM-T3x # "
 CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/cm_t43_defconfig b/configs/cm_t43_defconfig
index 6044ae9..a99afb5 100644
--- a/configs/cm_t43_defconfig
+++ b/configs/cm_t43_defconfig
@@ -10,3 +10,4 @@ CONFIG_CMD_GPIO=y
 # CONFIG_CMD_NFS is not set
 CONFIG_DM=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/cm_t54_defconfig b/configs/cm_t54_defconfig
index ccf3807..9d4932f 100644
--- a/configs/cm_t54_defconfig
+++ b/configs/cm_t54_defconfig
@@ -9,3 +9,4 @@ CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
 # CONFIG_CMD_NFS is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/colibri_pxa270_defconfig b/configs/colibri_pxa270_defconfig
index 3963a50..7006e8a 100644
--- a/configs/colibri_pxa270_defconfig
+++ b/configs/colibri_pxa270_defconfig
@@ -4,3 +4,4 @@ CONFIG_TARGET_COLIBRI_PXA270=y
 # CONFIG_CMD_LOADB is not set
 # CONFIG_CMD_LOADS is not set
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/colibri_vf_defconfig b/configs/colibri_vf_defconfig
index 45917c8..e6d8231 100644
--- a/configs/colibri_vf_defconfig
+++ b/configs/colibri_vf_defconfig
@@ -9,3 +9,4 @@ CONFIG_DM=y
 CONFIG_NAND_VF610_NFC=y
 CONFIG_SYS_NAND_VF610_NFC_60_ECC_BYTES=y
 CONFIG_FSL_LPUART=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/controlcenterd_36BIT_SDCARD_DEVELOP_defconfig b/configs/controlcenterd_36BIT_SDCARD_DEVELOP_defconfig
index 3df602f..0462c50 100644
--- a/configs/controlcenterd_36BIT_SDCARD_DEVELOP_defconfig
+++ b/configs/controlcenterd_36BIT_SDCARD_DEVELOP_defconfig
@@ -12,3 +12,4 @@ CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
 CONFIG_TPM_AUTH_SESSIONS=y
 CONFIG_TPM=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/controlcenterd_36BIT_SDCARD_defconfig b/configs/controlcenterd_36BIT_SDCARD_defconfig
index c30dfae..7f52711 100644
--- a/configs/controlcenterd_36BIT_SDCARD_defconfig
+++ b/configs/controlcenterd_36BIT_SDCARD_defconfig
@@ -12,3 +12,4 @@ CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
 CONFIG_TPM_AUTH_SESSIONS=y
 CONFIG_TPM=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/corvus_defconfig b/configs/corvus_defconfig
index c9410db..1aabf26 100644
--- a/configs/corvus_defconfig
+++ b/configs/corvus_defconfig
@@ -10,3 +10,4 @@ CONFIG_SYS_PROMPT="U-Boot> "
 # CONFIG_CMD_LOADS is not set
 # CONFIG_CMD_FPGA is not set
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/d2net_v2_defconfig b/configs/d2net_v2_defconfig
index c962a61..b2d2aeb 100644
--- a/configs/d2net_v2_defconfig
+++ b/configs/d2net_v2_defconfig
@@ -8,3 +8,4 @@ CONFIG_SYS_EXTRA_OPTIONS="D2NET_V2"
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_MACRONIX=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/da850_am18xxevm_defconfig b/configs/da850_am18xxevm_defconfig
index c253c38..870186c 100644
--- a/configs/da850_am18xxevm_defconfig
+++ b/configs/da850_am18xxevm_defconfig
@@ -10,3 +10,4 @@ CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_SPI_FLASH_WINBOND=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/da850evm_defconfig b/configs/da850evm_defconfig
index 75f4eb6..6d7f984 100644
--- a/configs/da850evm_defconfig
+++ b/configs/da850evm_defconfig
@@ -11,3 +11,4 @@ CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_SPI_FLASH_WINBOND=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/da850evm_direct_nor_defconfig b/configs/da850evm_direct_nor_defconfig
index d8c002f..7aba5c4 100644
--- a/configs/da850evm_direct_nor_defconfig
+++ b/configs/da850evm_direct_nor_defconfig
@@ -8,3 +8,4 @@ CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_SPI_FLASH_WINBOND=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/devconcenter_defconfig b/configs/devconcenter_defconfig
index f75bb62..0322e31 100644
--- a/configs/devconcenter_defconfig
+++ b/configs/devconcenter_defconfig
@@ -3,3 +3,4 @@ CONFIG_4xx=y
 CONFIG_TARGET_INTIP=y
 CONFIG_SYS_EXTRA_OPTIONS="DEVCONCENTER"
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/devkit3250_defconfig b/configs/devkit3250_defconfig
index ddf09fe..dbb447d 100644
--- a/configs/devkit3250_defconfig
+++ b/configs/devkit3250_defconfig
@@ -10,3 +10,4 @@ CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_DM=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/devkit8000_defconfig b/configs/devkit8000_defconfig
index d782f45..57894da 100644
--- a/configs/devkit8000_defconfig
+++ b/configs/devkit8000_defconfig
@@ -8,3 +8,4 @@ CONFIG_SPL=y
 # CONFIG_CMD_FPGA is not set
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/digsy_mtc_RAMBOOT_defconfig b/configs/digsy_mtc_RAMBOOT_defconfig
index 17ac961..9055029 100644
--- a/configs/digsy_mtc_RAMBOOT_defconfig
+++ b/configs/digsy_mtc_RAMBOOT_defconfig
@@ -7,3 +7,4 @@ CONFIG_AUTOBOOT_PROMPT="Press SPACE to abort autoboot in %d seconds\n"
 CONFIG_AUTOBOOT_DELAY_STR="d"
 CONFIG_AUTOBOOT_STOP_STR=" "
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/digsy_mtc_defconfig b/configs/digsy_mtc_defconfig
index 913ba7e..8a134fd 100644
--- a/configs/digsy_mtc_defconfig
+++ b/configs/digsy_mtc_defconfig
@@ -5,3 +5,4 @@ CONFIG_AUTOBOOT_KEYED=y
 CONFIG_AUTOBOOT_PROMPT="autoboot in %d seconds\n"
 CONFIG_AUTOBOOT_DELAY_STR=" "
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/digsy_mtc_rev5_RAMBOOT_defconfig b/configs/digsy_mtc_rev5_RAMBOOT_defconfig
index 408cff5..6623b3d 100644
--- a/configs/digsy_mtc_rev5_RAMBOOT_defconfig
+++ b/configs/digsy_mtc_rev5_RAMBOOT_defconfig
@@ -7,3 +7,4 @@ CONFIG_AUTOBOOT_PROMPT="Press SPACE to abort autoboot in %d seconds\n"
 CONFIG_AUTOBOOT_DELAY_STR="d"
 CONFIG_AUTOBOOT_STOP_STR=" "
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/digsy_mtc_rev5_defconfig b/configs/digsy_mtc_rev5_defconfig
index e950eb3..c91a5b3 100644
--- a/configs/digsy_mtc_rev5_defconfig
+++ b/configs/digsy_mtc_rev5_defconfig
@@ -7,3 +7,4 @@ CONFIG_AUTOBOOT_PROMPT="Press SPACE to abort autoboot in %d seconds\n"
 CONFIG_AUTOBOOT_DELAY_STR="d"
 CONFIG_AUTOBOOT_STOP_STR=" "
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/dlvision-10g_defconfig b/configs/dlvision-10g_defconfig
index fe15a4a..9dbcbb4 100644
--- a/configs/dlvision-10g_defconfig
+++ b/configs/dlvision-10g_defconfig
@@ -6,3 +6,4 @@ CONFIG_AUTOBOOT_STOP_STR=" "
 # CONFIG_CMD_ELF is not set
 # CONFIG_CMD_NFS is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/dlvision_defconfig b/configs/dlvision_defconfig
index b011cb1..7a30948 100644
--- a/configs/dlvision_defconfig
+++ b/configs/dlvision_defconfig
@@ -4,3 +4,4 @@ CONFIG_TARGET_DLVISION=y
 # CONFIG_CMD_ELF is not set
 # CONFIG_CMD_NFS is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/dns325_defconfig b/configs/dns325_defconfig
index 1c4e502..ed83019 100644
--- a/configs/dns325_defconfig
+++ b/configs/dns325_defconfig
@@ -5,3 +5,4 @@ CONFIG_TARGET_DNS325=y
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/dockstar_defconfig b/configs/dockstar_defconfig
index 43e6423..757043b 100644
--- a/configs/dockstar_defconfig
+++ b/configs/dockstar_defconfig
@@ -6,3 +6,4 @@ CONFIG_SYS_PROMPT="DockStar> "
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/dra7xx_evm_defconfig b/configs/dra7xx_evm_defconfig
index 1be2f5b..1f91c6b 100644
--- a/configs/dra7xx_evm_defconfig
+++ b/configs/dra7xx_evm_defconfig
@@ -14,3 +14,4 @@ CONFIG_SPI_FLASH_BAR=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_SYS_NS16550=y
 CONFIG_TI_QSPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/dra7xx_evm_qspiboot_defconfig b/configs/dra7xx_evm_qspiboot_defconfig
index 4370b96..92da2aa 100644
--- a/configs/dra7xx_evm_qspiboot_defconfig
+++ b/configs/dra7xx_evm_qspiboot_defconfig
@@ -14,3 +14,4 @@ CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_SYS_NS16550=y
 CONFIG_TI_QSPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/dra7xx_evm_uart3_defconfig b/configs/dra7xx_evm_uart3_defconfig
index 204483a..b67c02a 100644
--- a/configs/dra7xx_evm_uart3_defconfig
+++ b/configs/dra7xx_evm_uart3_defconfig
@@ -15,3 +15,4 @@ CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_SYS_NS16550=y
 CONFIG_TI_QSPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/draco_defconfig b/configs/draco_defconfig
index f7174e6..967f2ff 100644
--- a/configs/draco_defconfig
+++ b/configs/draco_defconfig
@@ -12,3 +12,4 @@ CONFIG_CMD_GPIO=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_WINBOND=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/dreamplug_defconfig b/configs/dreamplug_defconfig
index 966fa9e..c6b3b53 100644
--- a/configs/dreamplug_defconfig
+++ b/configs/dreamplug_defconfig
@@ -12,3 +12,4 @@ CONFIG_CMD_PING=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_MACRONIX=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/duovero_defconfig b/configs/duovero_defconfig
index 81d089e..30e5255 100644
--- a/configs/duovero_defconfig
+++ b/configs/duovero_defconfig
@@ -9,3 +9,4 @@ CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
 # CONFIG_CMD_NFS is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/eco5pk_defconfig b/configs/eco5pk_defconfig
index 9ca47e6..579f80e 100644
--- a/configs/eco5pk_defconfig
+++ b/configs/eco5pk_defconfig
@@ -8,3 +8,4 @@ CONFIG_SYS_PROMPT="ECO5-PK # "
 CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/fo300_defconfig b/configs/fo300_defconfig
index b8e5c80..9a857b6 100644
--- a/configs/fo300_defconfig
+++ b/configs/fo300_defconfig
@@ -3,3 +3,4 @@ CONFIG_MPC5xxx=y
 CONFIG_TARGET_TQM5200=y
 CONFIG_SYS_EXTRA_OPTIONS="FO300"
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/gdppc440etx_defconfig b/configs/gdppc440etx_defconfig
index 9b06cb6..0c04678 100644
--- a/configs/gdppc440etx_defconfig
+++ b/configs/gdppc440etx_defconfig
@@ -4,3 +4,4 @@ CONFIG_TARGET_GDPPC440ETX=y
 CONFIG_AUTOBOOT_KEYED=y
 CONFIG_AUTOBOOT_STOP_STR=" "
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/goflexhome_defconfig b/configs/goflexhome_defconfig
index 779daf6..ece39de 100644
--- a/configs/goflexhome_defconfig
+++ b/configs/goflexhome_defconfig
@@ -6,3 +6,4 @@ CONFIG_SYS_PROMPT="GoFlexHome> "
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/gose_defconfig b/configs/gose_defconfig
index 01aa817..475bdd1 100644
--- a/configs/gose_defconfig
+++ b/configs/gose_defconfig
@@ -20,3 +20,4 @@ CONFIG_SH_SDHI=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_BAR=y
 CONFIG_SPI_FLASH_SPANSION=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/gplugd_defconfig b/configs/gplugd_defconfig
index d2c5e6a..b7ef262 100644
--- a/configs/gplugd_defconfig
+++ b/configs/gplugd_defconfig
@@ -8,3 +8,4 @@ CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_ATMEL=y
 CONFIG_SPI_FLASH_MACRONIX=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/guruplug_defconfig b/configs/guruplug_defconfig
index 7e20dbb..453afb0 100644
--- a/configs/guruplug_defconfig
+++ b/configs/guruplug_defconfig
@@ -10,3 +10,4 @@ CONFIG_CMD_USB=y
 CONFIG_CMD_DHCP=y
 CONFIG_CMD_PING=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/gwventana_defconfig b/configs/gwventana_defconfig
index 547e7f6..5347876 100644
--- a/configs/gwventana_defconfig
+++ b/configs/gwventana_defconfig
@@ -13,3 +13,4 @@ CONFIG_CMD_GPIO=y
 CONFIG_DM=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/haleakala_defconfig b/configs/haleakala_defconfig
index 234bbea..7b98566 100644
--- a/configs/haleakala_defconfig
+++ b/configs/haleakala_defconfig
@@ -3,3 +3,4 @@ CONFIG_4xx=y
 CONFIG_TARGET_KILAUEA=y
 CONFIG_SYS_EXTRA_OPTIONS="HALEAKALA"
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/highbank_defconfig b/configs/highbank_defconfig
index f7042e2..5af707d 100644
--- a/configs/highbank_defconfig
+++ b/configs/highbank_defconfig
@@ -6,3 +6,4 @@ CONFIG_AUTOBOOT_KEYED_CTRLC=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/hikey_defconfig b/configs/hikey_defconfig
index fd94bf5..8b75642 100644
--- a/configs/hikey_defconfig
+++ b/configs/hikey_defconfig
@@ -2,3 +2,4 @@ CONFIG_ARM=y
 CONFIG_SYS_MALLOC_F_LEN=0x2000
 # CONFIG_CMD_IMLS is not set
 CONFIG_CMD_GPIO=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/hrcon_defconfig b/configs/hrcon_defconfig
index f6c531f..a4b733b 100644
--- a/configs/hrcon_defconfig
+++ b/configs/hrcon_defconfig
@@ -5,3 +5,4 @@ CONFIG_AUTOBOOT_KEYED=y
 CONFIG_AUTOBOOT_STOP_STR=" "
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/hrcon_dh_defconfig b/configs/hrcon_dh_defconfig
index aad015a..f8fa4ef 100644
--- a/configs/hrcon_dh_defconfig
+++ b/configs/hrcon_dh_defconfig
@@ -3,3 +3,4 @@ CONFIG_MPC83xx=y
 CONFIG_TARGET_HRCON=y
 CONFIG_SYS_EXTRA_OPTIONS="HRCON_DH"
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/ib62x0_defconfig b/configs/ib62x0_defconfig
index a229f46..22ef1a6 100644
--- a/configs/ib62x0_defconfig
+++ b/configs/ib62x0_defconfig
@@ -11,3 +11,4 @@ CONFIG_CMD_USB=y
 CONFIG_CMD_DHCP=y
 CONFIG_CMD_PING=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/icon_defconfig b/configs/icon_defconfig
index 36fd884..ede63a7 100644
--- a/configs/icon_defconfig
+++ b/configs/icon_defconfig
@@ -2,3 +2,4 @@ CONFIG_PPC=y
 CONFIG_4xx=y
 CONFIG_TARGET_ICON=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/iconnect_defconfig b/configs/iconnect_defconfig
index 3b4d37e..cdb21b7 100644
--- a/configs/iconnect_defconfig
+++ b/configs/iconnect_defconfig
@@ -6,3 +6,4 @@ CONFIG_SYS_PROMPT="iconnect => "
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/ids8313_defconfig b/configs/ids8313_defconfig
index deafa38..7ae2f73 100644
--- a/configs/ids8313_defconfig
+++ b/configs/ids8313_defconfig
@@ -9,3 +9,4 @@ CONFIG_AUTOBOOT_PROMPT="Enter password - autoboot in %d seconds...\n"
 CONFIG_AUTOBOOT_DELAY_STR="ids"
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/igep0020_defconfig b/configs/igep0020_defconfig
index 805a224..2731e94 100644
--- a/configs/igep0020_defconfig
+++ b/configs/igep0020_defconfig
@@ -9,3 +9,4 @@ CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/igep0020_nand_defconfig b/configs/igep0020_nand_defconfig
index be16b6b..dec1f8d 100644
--- a/configs/igep0020_nand_defconfig
+++ b/configs/igep0020_nand_defconfig
@@ -9,3 +9,4 @@ CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/igep0030_defconfig b/configs/igep0030_defconfig
index 63ce633..73b02e9 100644
--- a/configs/igep0030_defconfig
+++ b/configs/igep0030_defconfig
@@ -8,3 +8,4 @@ CONFIG_SYS_EXTRA_OPTIONS="MACH_TYPE=MACH_TYPE_IGEP0030,BOOT_ONENAND"
 CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/igep0030_nand_defconfig b/configs/igep0030_nand_defconfig
index dce7e06..ab65213 100644
--- a/configs/igep0030_nand_defconfig
+++ b/configs/igep0030_nand_defconfig
@@ -8,3 +8,4 @@ CONFIG_SYS_EXTRA_OPTIONS="MACH_TYPE=MACH_TYPE_IGEP0030,BOOT_NAND"
 CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/igep0032_defconfig b/configs/igep0032_defconfig
index 9a13705..a779d47 100644
--- a/configs/igep0032_defconfig
+++ b/configs/igep0032_defconfig
@@ -9,3 +9,4 @@ CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/inetspace_v2_defconfig b/configs/inetspace_v2_defconfig
index 2d03974..6e49081 100644
--- a/configs/inetspace_v2_defconfig
+++ b/configs/inetspace_v2_defconfig
@@ -8,3 +8,4 @@ CONFIG_SYS_EXTRA_OPTIONS="INETSPACE_V2"
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_MACRONIX=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/integratorap_cm720t_defconfig b/configs/integratorap_cm720t_defconfig
index 5541f8e..6291139 100644
--- a/configs/integratorap_cm720t_defconfig
+++ b/configs/integratorap_cm720t_defconfig
@@ -4,3 +4,4 @@ CONFIG_ARCH_INTEGRATOR_AP=y
 CONFIG_CM720T=y
 CONFIG_SYS_PROMPT="Integrator-AP # "
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/integratorap_cm920t_defconfig b/configs/integratorap_cm920t_defconfig
index de094b1..7132607 100644
--- a/configs/integratorap_cm920t_defconfig
+++ b/configs/integratorap_cm920t_defconfig
@@ -4,3 +4,4 @@ CONFIG_ARCH_INTEGRATOR_AP=y
 CONFIG_CM920T=y
 CONFIG_SYS_PROMPT="Integrator-AP # "
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/integratorap_cm926ejs_defconfig b/configs/integratorap_cm926ejs_defconfig
index cf75425..f58e256 100644
--- a/configs/integratorap_cm926ejs_defconfig
+++ b/configs/integratorap_cm926ejs_defconfig
@@ -4,3 +4,4 @@ CONFIG_ARCH_INTEGRATOR_AP=y
 CONFIG_CM926EJ_S=y
 CONFIG_SYS_PROMPT="Integrator-AP # "
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/integratorap_cm946es_defconfig b/configs/integratorap_cm946es_defconfig
index cd1b1c3..b32512d 100644
--- a/configs/integratorap_cm946es_defconfig
+++ b/configs/integratorap_cm946es_defconfig
@@ -4,3 +4,4 @@ CONFIG_ARCH_INTEGRATOR_AP=y
 CONFIG_CM946ES=y
 CONFIG_SYS_PROMPT="Integrator-AP # "
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/integratorcp_cm1136_defconfig b/configs/integratorcp_cm1136_defconfig
index 292a0fb..76c8998 100644
--- a/configs/integratorcp_cm1136_defconfig
+++ b/configs/integratorcp_cm1136_defconfig
@@ -4,3 +4,4 @@ CONFIG_ARCH_INTEGRATOR_CP=y
 CONFIG_CM1136=y
 CONFIG_SYS_PROMPT="Integrator-CP # "
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/integratorcp_cm920t_defconfig b/configs/integratorcp_cm920t_defconfig
index 20cd404..ca7beb3 100644
--- a/configs/integratorcp_cm920t_defconfig
+++ b/configs/integratorcp_cm920t_defconfig
@@ -4,3 +4,4 @@ CONFIG_ARCH_INTEGRATOR_CP=y
 CONFIG_CM920T=y
 CONFIG_SYS_PROMPT="Integrator-CP # "
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/integratorcp_cm926ejs_defconfig b/configs/integratorcp_cm926ejs_defconfig
index 1091be3..71ca032 100644
--- a/configs/integratorcp_cm926ejs_defconfig
+++ b/configs/integratorcp_cm926ejs_defconfig
@@ -4,3 +4,4 @@ CONFIG_ARCH_INTEGRATOR_CP=y
 CONFIG_CM926EJ_S=y
 CONFIG_SYS_PROMPT="Integrator-CP # "
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/integratorcp_cm946es_defconfig b/configs/integratorcp_cm946es_defconfig
index a4aeba4..d4d11b8 100644
--- a/configs/integratorcp_cm946es_defconfig
+++ b/configs/integratorcp_cm946es_defconfig
@@ -4,3 +4,4 @@ CONFIG_ARCH_INTEGRATOR_CP=y
 CONFIG_CM946ES=y
 CONFIG_SYS_PROMPT="Integrator-CP # "
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/intip_defconfig b/configs/intip_defconfig
index 7893f64..51a21fe 100644
--- a/configs/intip_defconfig
+++ b/configs/intip_defconfig
@@ -5,3 +5,4 @@ CONFIG_SYS_EXTRA_OPTIONS="INTIB"
 CONFIG_AUTOBOOT_KEYED=y
 CONFIG_AUTOBOOT_STOP_STR=" "
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/io64_defconfig b/configs/io64_defconfig
index b433cdd..30f7fee 100644
--- a/configs/io64_defconfig
+++ b/configs/io64_defconfig
@@ -4,3 +4,4 @@ CONFIG_TARGET_IO64=y
 CONFIG_AUTOBOOT_KEYED=y
 CONFIG_AUTOBOOT_STOP_STR=" "
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/io_defconfig b/configs/io_defconfig
index 17c9c9d..e83112c 100644
--- a/configs/io_defconfig
+++ b/configs/io_defconfig
@@ -6,3 +6,4 @@ CONFIG_AUTOBOOT_STOP_STR=" "
 # CONFIG_CMD_ELF is not set
 # CONFIG_CMD_NFS is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/iocon_defconfig b/configs/iocon_defconfig
index a6532d1..dac950e 100644
--- a/configs/iocon_defconfig
+++ b/configs/iocon_defconfig
@@ -7,3 +7,4 @@ CONFIG_AUTOBOOT_STOP_STR=" "
 # CONFIG_CMD_ELF is not set
 # CONFIG_CMD_NFS is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/ipek01_defconfig b/configs/ipek01_defconfig
index c8ddbc5..3f856e9 100644
--- a/configs/ipek01_defconfig
+++ b/configs/ipek01_defconfig
@@ -2,3 +2,4 @@ CONFIG_PPC=y
 CONFIG_MPC5xxx=y
 CONFIG_TARGET_IPEK01=y
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/katmai_defconfig b/configs/katmai_defconfig
index a2c4294..2438c29 100644
--- a/configs/katmai_defconfig
+++ b/configs/katmai_defconfig
@@ -2,3 +2,4 @@ CONFIG_PPC=y
 CONFIG_4xx=y
 CONFIG_TARGET_KATMAI=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/kilauea_defconfig b/configs/kilauea_defconfig
index 5c77b0c..7452105 100644
--- a/configs/kilauea_defconfig
+++ b/configs/kilauea_defconfig
@@ -3,3 +3,4 @@ CONFIG_4xx=y
 CONFIG_TARGET_KILAUEA=y
 CONFIG_SYS_EXTRA_OPTIONS="KILAUEA"
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/km_kirkwood_128m16_defconfig b/configs/km_kirkwood_128m16_defconfig
index d2625e5..349651d 100644
--- a/configs/km_kirkwood_128m16_defconfig
+++ b/configs/km_kirkwood_128m16_defconfig
@@ -7,3 +7,4 @@ CONFIG_SYS_EXTRA_OPTIONS="KM_KIRKWOOD_128M16"
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/km_kirkwood_defconfig b/configs/km_kirkwood_defconfig
index 4db809e..9a0d85c 100644
--- a/configs/km_kirkwood_defconfig
+++ b/configs/km_kirkwood_defconfig
@@ -7,3 +7,4 @@ CONFIG_SYS_EXTRA_OPTIONS="KM_KIRKWOOD"
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/km_kirkwood_pci_defconfig b/configs/km_kirkwood_pci_defconfig
index 98b1c10..d2c488e 100644
--- a/configs/km_kirkwood_pci_defconfig
+++ b/configs/km_kirkwood_pci_defconfig
@@ -7,3 +7,4 @@ CONFIG_SYS_EXTRA_OPTIONS="KM_KIRKWOOD_PCI"
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/kmcoge4_defconfig b/configs/kmcoge4_defconfig
index b4371ff..0165877 100644
--- a/configs/kmcoge4_defconfig
+++ b/configs/kmcoge4_defconfig
@@ -11,3 +11,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/kmcoge5ne_defconfig b/configs/kmcoge5ne_defconfig
index 6623162..ca13a26 100644
--- a/configs/kmcoge5ne_defconfig
+++ b/configs/kmcoge5ne_defconfig
@@ -3,3 +3,4 @@ CONFIG_MPC83xx=y
 CONFIG_TARGET_KM8360=y
 CONFIG_SYS_EXTRA_OPTIONS="KMCOGE5NE"
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/kmcoge5un_defconfig b/configs/kmcoge5un_defconfig
index 0b4fee1..b390e3e 100644
--- a/configs/kmcoge5un_defconfig
+++ b/configs/kmcoge5un_defconfig
@@ -7,3 +7,4 @@ CONFIG_SYS_EXTRA_OPTIONS="KM_COGE5UN"
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/kmeter1_defconfig b/configs/kmeter1_defconfig
index 98c4cc9..7466f07 100644
--- a/configs/kmeter1_defconfig
+++ b/configs/kmeter1_defconfig
@@ -3,3 +3,4 @@ CONFIG_MPC83xx=y
 CONFIG_TARGET_KM8360=y
 CONFIG_SYS_EXTRA_OPTIONS="KMETER1"
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/kmlion1_defconfig b/configs/kmlion1_defconfig
index bf55746..812eab7 100644
--- a/configs/kmlion1_defconfig
+++ b/configs/kmlion1_defconfig
@@ -11,3 +11,4 @@ CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/kmnusa_defconfig b/configs/kmnusa_defconfig
index 13a3187..3a1aa69 100644
--- a/configs/kmnusa_defconfig
+++ b/configs/kmnusa_defconfig
@@ -7,3 +7,4 @@ CONFIG_SYS_EXTRA_OPTIONS="KM_NUSA"
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/kmopti2_defconfig b/configs/kmopti2_defconfig
index 6d7896e..798f748 100644
--- a/configs/kmopti2_defconfig
+++ b/configs/kmopti2_defconfig
@@ -3,3 +3,4 @@ CONFIG_MPC83xx=y
 CONFIG_TARGET_TUXX1=y
 CONFIG_SYS_EXTRA_OPTIONS="KMOPTI2"
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/kmsugp1_defconfig b/configs/kmsugp1_defconfig
index 0f4c51b..bc9aaec 100644
--- a/configs/kmsugp1_defconfig
+++ b/configs/kmsugp1_defconfig
@@ -7,3 +7,4 @@ CONFIG_SYS_EXTRA_OPTIONS="KM_SUGP1"
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/kmsupx5_defconfig b/configs/kmsupx5_defconfig
index 6cc721b..6050b3b 100644
--- a/configs/kmsupx5_defconfig
+++ b/configs/kmsupx5_defconfig
@@ -3,3 +3,4 @@ CONFIG_MPC83xx=y
 CONFIG_TARGET_TUXX1=y
 CONFIG_SYS_EXTRA_OPTIONS="KMSUPX5"
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/kmsuv31_defconfig b/configs/kmsuv31_defconfig
index 0c27f17..0a16c04 100644
--- a/configs/kmsuv31_defconfig
+++ b/configs/kmsuv31_defconfig
@@ -7,3 +7,4 @@ CONFIG_SYS_EXTRA_OPTIONS="KM_SUV31"
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/kmtegr1_defconfig b/configs/kmtegr1_defconfig
index 6acf420..f407ce1 100644
--- a/configs/kmtegr1_defconfig
+++ b/configs/kmtegr1_defconfig
@@ -3,3 +3,4 @@ CONFIG_MPC83xx=y
 CONFIG_TARGET_SUVD3=y
 CONFIG_SYS_EXTRA_OPTIONS="KMTEGR1"
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/kmtepr2_defconfig b/configs/kmtepr2_defconfig
index a4427ac..e55f4db 100644
--- a/configs/kmtepr2_defconfig
+++ b/configs/kmtepr2_defconfig
@@ -3,3 +3,4 @@ CONFIG_MPC83xx=y
 CONFIG_TARGET_TUXX1=y
 CONFIG_SYS_EXTRA_OPTIONS="KMTEPR2"
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/kmvect1_defconfig b/configs/kmvect1_defconfig
index c2ee6be..1e75011 100644
--- a/configs/kmvect1_defconfig
+++ b/configs/kmvect1_defconfig
@@ -3,3 +3,4 @@ CONFIG_MPC83xx=y
 CONFIG_TARGET_SUVD3=y
 CONFIG_SYS_EXTRA_OPTIONS="KMVECT1"
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/koelsch_defconfig b/configs/koelsch_defconfig
index fc8a567..24ea181 100644
--- a/configs/koelsch_defconfig
+++ b/configs/koelsch_defconfig
@@ -20,3 +20,4 @@ CONFIG_SH_SDHI=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_BAR=y
 CONFIG_SPI_FLASH_SPANSION=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/kwb_defconfig b/configs/kwb_defconfig
index 10d39eb..cc6c9e7 100644
--- a/configs/kwb_defconfig
+++ b/configs/kwb_defconfig
@@ -20,3 +20,4 @@ CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
 # CONFIG_CMD_NFS is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/kzm9g_defconfig b/configs/kzm9g_defconfig
index 476f5f0..ac7690d 100644
--- a/configs/kzm9g_defconfig
+++ b/configs/kzm9g_defconfig
@@ -3,3 +3,4 @@ CONFIG_RMOBILE=y
 CONFIG_TARGET_KZM9G=y
 CONFIG_SYS_PROMPT="KZM-A9-GT# "
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/lager_defconfig b/configs/lager_defconfig
index 77f1fb3..f042ff7 100644
--- a/configs/lager_defconfig
+++ b/configs/lager_defconfig
@@ -20,3 +20,4 @@ CONFIG_SH_SDHI=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_BAR=y
 CONFIG_SPI_FLASH_SPANSION=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/ls1021aqds_ddr4_nor_defconfig b/configs/ls1021aqds_ddr4_nor_defconfig
index 2f16339..4e790c7 100644
--- a/configs/ls1021aqds_ddr4_nor_defconfig
+++ b/configs/ls1021aqds_ddr4_nor_defconfig
@@ -5,3 +5,4 @@ CONFIG_SYS_EXTRA_OPTIONS="SYS_FSL_DDR4"
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/ls1021aqds_ddr4_nor_lpuart_defconfig b/configs/ls1021aqds_ddr4_nor_lpuart_defconfig
index 44b2a0d..c76efdb 100644
--- a/configs/ls1021aqds_ddr4_nor_lpuart_defconfig
+++ b/configs/ls1021aqds_ddr4_nor_lpuart_defconfig
@@ -5,3 +5,4 @@ CONFIG_SYS_EXTRA_OPTIONS="SYS_FSL_DDR4,LPUART"
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_FSL_LPUART=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/ls1021aqds_nand_defconfig b/configs/ls1021aqds_nand_defconfig
index fe84419..0c0856c 100644
--- a/configs/ls1021aqds_nand_defconfig
+++ b/configs/ls1021aqds_nand_defconfig
@@ -6,3 +6,4 @@ CONFIG_SYS_EXTRA_OPTIONS="RAMBOOT_PBL,SPL_FSL_PBL,NAND_BOOT"
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/ls1021aqds_nor_SECURE_BOOT_defconfig b/configs/ls1021aqds_nor_SECURE_BOOT_defconfig
index 025a8f2..5ff3d75 100644
--- a/configs/ls1021aqds_nor_SECURE_BOOT_defconfig
+++ b/configs/ls1021aqds_nor_SECURE_BOOT_defconfig
@@ -5,3 +5,4 @@ CONFIG_SYS_EXTRA_OPTIONS="SECURE_BOOT"
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/ls1021aqds_nor_defconfig b/configs/ls1021aqds_nor_defconfig
index 6878df4..7aadf81 100644
--- a/configs/ls1021aqds_nor_defconfig
+++ b/configs/ls1021aqds_nor_defconfig
@@ -4,3 +4,4 @@ CONFIG_TARGET_LS1021AQDS=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/ls1021aqds_nor_lpuart_defconfig b/configs/ls1021aqds_nor_lpuart_defconfig
index 1186af2..f9a59a4 100644
--- a/configs/ls1021aqds_nor_lpuart_defconfig
+++ b/configs/ls1021aqds_nor_lpuart_defconfig
@@ -5,3 +5,4 @@ CONFIG_SYS_EXTRA_OPTIONS="LPUART"
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_FSL_LPUART=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/ls1021aqds_sdcard_defconfig b/configs/ls1021aqds_sdcard_defconfig
index 3249b48..6f3dbfb 100644
--- a/configs/ls1021aqds_sdcard_defconfig
+++ b/configs/ls1021aqds_sdcard_defconfig
@@ -6,3 +6,4 @@ CONFIG_SYS_EXTRA_OPTIONS="RAMBOOT_PBL,SPL_FSL_PBL,SD_BOOT"
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/ls1021atwr_nor_SECURE_BOOT_defconfig b/configs/ls1021atwr_nor_SECURE_BOOT_defconfig
index bf19c33..db2bf19 100644
--- a/configs/ls1021atwr_nor_SECURE_BOOT_defconfig
+++ b/configs/ls1021atwr_nor_SECURE_BOOT_defconfig
@@ -5,3 +5,4 @@ CONFIG_SYS_EXTRA_OPTIONS="SECURE_BOOT"
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/ls1021atwr_sdcard_ifc_defconfig b/configs/ls1021atwr_sdcard_ifc_defconfig
index f6d4b4a..c658360 100644
--- a/configs/ls1021atwr_sdcard_ifc_defconfig
+++ b/configs/ls1021atwr_sdcard_ifc_defconfig
@@ -5,3 +5,4 @@ CONFIG_SYS_EXTRA_OPTIONS="RAMBOOT_PBL,SPL_FSL_PBL,SD_BOOT"
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/ls1043aqds_nand_defconfig b/configs/ls1043aqds_nand_defconfig
index b1d8856..e7f8860 100644
--- a/configs/ls1043aqds_nand_defconfig
+++ b/configs/ls1043aqds_nand_defconfig
@@ -3,3 +3,4 @@ CONFIG_TARGET_LS1043AQDS=y
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="SYS_FSL_DDR4,RAMBOOT_PBL,SPL_FSL_PBL,NAND_BOOT"
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/ls1043aqds_nor_ddr3_defconfig b/configs/ls1043aqds_nor_ddr3_defconfig
index 5221ddb..b8945ad 100644
--- a/configs/ls1043aqds_nor_ddr3_defconfig
+++ b/configs/ls1043aqds_nor_ddr3_defconfig
@@ -1,3 +1,4 @@
 CONFIG_ARM=y
 CONFIG_TARGET_LS1043AQDS=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/ls1043aqds_sdcard_ifc_defconfig b/configs/ls1043aqds_sdcard_ifc_defconfig
index 2551c6e..de77bde 100644
--- a/configs/ls1043aqds_sdcard_ifc_defconfig
+++ b/configs/ls1043aqds_sdcard_ifc_defconfig
@@ -3,3 +3,4 @@ CONFIG_TARGET_LS1043AQDS=y
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="SYS_FSL_DDR4,RAMBOOT_PBL,SPL_FSL_PBL,SD_BOOT"
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/ls2080a_emu_defconfig b/configs/ls2080a_emu_defconfig
index d58d2d0..64787c1 100644
--- a/configs/ls2080a_emu_defconfig
+++ b/configs/ls2080a_emu_defconfig
@@ -13,3 +13,4 @@ CONFIG_SYS_EXTRA_OPTIONS="EMU,SYS_FSL_DDR4, LS2080A"
 # CONFIG_CMD_NFS is not set
 # CONFIG_CMD_MISC is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/ls2080a_simu_defconfig b/configs/ls2080a_simu_defconfig
index 4c19b89..fe8281b 100644
--- a/configs/ls2080a_simu_defconfig
+++ b/configs/ls2080a_simu_defconfig
@@ -14,3 +14,4 @@ CONFIG_SYS_EXTRA_OPTIONS="SIMU, LS2080A"
 # CONFIG_CMD_MISC is not set
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/ls2080aqds_nand_defconfig b/configs/ls2080aqds_nand_defconfig
index b7d64f6..799efdf 100644
--- a/configs/ls2080aqds_nand_defconfig
+++ b/configs/ls2080aqds_nand_defconfig
@@ -7,3 +7,4 @@ CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/ls2080ardb_nand_defconfig b/configs/ls2080ardb_nand_defconfig
index daed2e3..be53cf8 100644
--- a/configs/ls2080ardb_nand_defconfig
+++ b/configs/ls2080ardb_nand_defconfig
@@ -7,3 +7,4 @@ CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/ls2085a_emu_defconfig b/configs/ls2085a_emu_defconfig
index 1c20a27..a7ab1a4 100644
--- a/configs/ls2085a_emu_defconfig
+++ b/configs/ls2085a_emu_defconfig
@@ -13,3 +13,4 @@ CONFIG_SYS_EXTRA_OPTIONS="EMU,SYS_FSL_DDR4, LS2085A"
 # CONFIG_CMD_NFS is not set
 # CONFIG_CMD_MISC is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/ls2085a_simu_defconfig b/configs/ls2085a_simu_defconfig
index 38905ce..577fca0 100644
--- a/configs/ls2085a_simu_defconfig
+++ b/configs/ls2085a_simu_defconfig
@@ -14,3 +14,4 @@ CONFIG_SYS_EXTRA_OPTIONS="SIMU, LS2085A"
 # CONFIG_CMD_MISC is not set
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/ls2085aqds_nand_defconfig b/configs/ls2085aqds_nand_defconfig
index b6bc7c6..9cdf118 100644
--- a/configs/ls2085aqds_nand_defconfig
+++ b/configs/ls2085aqds_nand_defconfig
@@ -7,3 +7,4 @@ CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/ls2085ardb_nand_defconfig b/configs/ls2085ardb_nand_defconfig
index 593b8ca..93b810b 100644
--- a/configs/ls2085ardb_nand_defconfig
+++ b/configs/ls2085ardb_nand_defconfig
@@ -7,3 +7,4 @@ CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/lschlv2_defconfig b/configs/lschlv2_defconfig
index 7264c2d..f33cda6 100644
--- a/configs/lschlv2_defconfig
+++ b/configs/lschlv2_defconfig
@@ -9,3 +9,4 @@ CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/lsxhl_defconfig b/configs/lsxhl_defconfig
index 62acb40..9f3fde5 100644
--- a/configs/lsxhl_defconfig
+++ b/configs/lsxhl_defconfig
@@ -9,3 +9,4 @@ CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/luan_defconfig b/configs/luan_defconfig
index 7babe26..d03bbb9 100644
--- a/configs/luan_defconfig
+++ b/configs/luan_defconfig
@@ -2,3 +2,4 @@ CONFIG_PPC=y
 CONFIG_4xx=y
 CONFIG_TARGET_LUAN=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/lwmon5_defconfig b/configs/lwmon5_defconfig
index 5cbca3b..7a2795e 100644
--- a/configs/lwmon5_defconfig
+++ b/configs/lwmon5_defconfig
@@ -3,3 +3,4 @@ CONFIG_4xx=y
 CONFIG_TARGET_LWMON5=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/m28evk_defconfig b/configs/m28evk_defconfig
index 9da42eb..e555970 100644
--- a/configs/m28evk_defconfig
+++ b/configs/m28evk_defconfig
@@ -6,3 +6,4 @@ CONFIG_SPL=y
 CONFIG_CMD_GPIO=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/m53evk_defconfig b/configs/m53evk_defconfig
index b5e72ef..a830691 100644
--- a/configs/m53evk_defconfig
+++ b/configs/m53evk_defconfig
@@ -4,3 +4,4 @@ CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/denx/m53evk/imximage.cfg"
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/makalu_defconfig b/configs/makalu_defconfig
index 1b71638..607c730 100644
--- a/configs/makalu_defconfig
+++ b/configs/makalu_defconfig
@@ -2,3 +2,4 @@ CONFIG_PPC=y
 CONFIG_4xx=y
 CONFIG_TARGET_MAKALU=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/marsboard_defconfig b/configs/marsboard_defconfig
index 8495800..4bdbb6d 100644
--- a/configs/marsboard_defconfig
+++ b/configs/marsboard_defconfig
@@ -9,3 +9,4 @@ CONFIG_DM=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SST=y
 CONFIG_DM_THERMAL=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/mcx_defconfig b/configs/mcx_defconfig
index 1e204d5..602c7d0 100644
--- a/configs/mcx_defconfig
+++ b/configs/mcx_defconfig
@@ -10,3 +10,4 @@ CONFIG_SYS_PROMPT="mcx # "
 CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/mecp5123_defconfig b/configs/mecp5123_defconfig
index 1957f0b..30d6e26 100644
--- a/configs/mecp5123_defconfig
+++ b/configs/mecp5123_defconfig
@@ -2,3 +2,4 @@ CONFIG_PPC=y
 CONFIG_MPC512X=y
 CONFIG_TARGET_MECP5123=y
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/meesc_dataflash_defconfig b/configs/meesc_dataflash_defconfig
index e4f7cce..812cc04 100644
--- a/configs/meesc_dataflash_defconfig
+++ b/configs/meesc_dataflash_defconfig
@@ -7,3 +7,4 @@ CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9263,SYS_USE_DATAFLASH"
 # CONFIG_CMD_LOADS is not set
 # CONFIG_CMD_FPGA is not set
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/meesc_defconfig b/configs/meesc_defconfig
index 7d1fe7b..b63712d 100644
--- a/configs/meesc_defconfig
+++ b/configs/meesc_defconfig
@@ -7,3 +7,4 @@ CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9263,SYS_USE_NANDFLASH"
 # CONFIG_CMD_LOADS is not set
 # CONFIG_CMD_FPGA is not set
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/mgcoge3ne_defconfig b/configs/mgcoge3ne_defconfig
index 7b795f5..4ec6910 100644
--- a/configs/mgcoge3ne_defconfig
+++ b/configs/mgcoge3ne_defconfig
@@ -2,3 +2,4 @@ CONFIG_PPC=y
 CONFIG_MPC8260=y
 CONFIG_TARGET_KM82XX=y
 CONFIG_SYS_EXTRA_OPTIONS="MGCOGE3NE"
+CONFIG_OF_LIBFDT=y
diff --git a/configs/mgcoge3un_defconfig b/configs/mgcoge3un_defconfig
index 965972a..f1e8fd7 100644
--- a/configs/mgcoge3un_defconfig
+++ b/configs/mgcoge3un_defconfig
@@ -7,3 +7,4 @@ CONFIG_SYS_EXTRA_OPTIONS="KM_MGCOGE3UN"
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/mgcoge_defconfig b/configs/mgcoge_defconfig
index 1fb8dfd..8c57b6c 100644
--- a/configs/mgcoge_defconfig
+++ b/configs/mgcoge_defconfig
@@ -2,3 +2,4 @@ CONFIG_PPC=y
 CONFIG_MPC8260=y
 CONFIG_TARGET_KM82XX=y
 CONFIG_SYS_EXTRA_OPTIONS="MGCOGE"
+CONFIG_OF_LIBFDT=y
diff --git a/configs/motionpro_defconfig b/configs/motionpro_defconfig
index 4d3f909..7df993c 100644
--- a/configs/motionpro_defconfig
+++ b/configs/motionpro_defconfig
@@ -5,3 +5,4 @@ CONFIG_AUTOBOOT_KEYED=y
 CONFIG_AUTOBOOT_PROMPT="Autobooting in %d seconds, press \"<Esc><Esc>\" to stop\n"
 CONFIG_AUTOBOOT_STOP_STR="\x1b\x1b"
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/mpc5121ads_defconfig b/configs/mpc5121ads_defconfig
index e5fe27f..8f4c1e8 100644
--- a/configs/mpc5121ads_defconfig
+++ b/configs/mpc5121ads_defconfig
@@ -2,3 +2,4 @@ CONFIG_PPC=y
 CONFIG_MPC512X=y
 CONFIG_TARGET_MPC5121ADS=y
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/mpc5121ads_rev2_defconfig b/configs/mpc5121ads_rev2_defconfig
index 3562353..b26f6dd 100644
--- a/configs/mpc5121ads_rev2_defconfig
+++ b/configs/mpc5121ads_rev2_defconfig
@@ -3,3 +3,4 @@ CONFIG_MPC512X=y
 CONFIG_TARGET_MPC5121ADS=y
 CONFIG_SYS_EXTRA_OPTIONS="MPC5121ADS_REV2"
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/mpc8308_p1m_defconfig b/configs/mpc8308_p1m_defconfig
index c31d948..ee06044 100644
--- a/configs/mpc8308_p1m_defconfig
+++ b/configs/mpc8308_p1m_defconfig
@@ -3,3 +3,4 @@ CONFIG_MPC83xx=y
 CONFIG_TARGET_MPC8308_P1M=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/mt_ventoux_defconfig b/configs/mt_ventoux_defconfig
index a0153e4..338df22 100644
--- a/configs/mt_ventoux_defconfig
+++ b/configs/mt_ventoux_defconfig
@@ -8,3 +8,4 @@ CONFIG_SYS_PROMPT="mt_ventoux => "
 CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/munices_defconfig b/configs/munices_defconfig
index 1c0309a..0496b81 100644
--- a/configs/munices_defconfig
+++ b/configs/munices_defconfig
@@ -2,3 +2,4 @@ CONFIG_PPC=y
 CONFIG_MPC5xxx=y
 CONFIG_TARGET_MUNICES=y
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/mx23_olinuxino_defconfig b/configs/mx23_olinuxino_defconfig
index 22c46f8..4582cce 100644
--- a/configs/mx23_olinuxino_defconfig
+++ b/configs/mx23_olinuxino_defconfig
@@ -5,3 +5,4 @@ CONFIG_SPL=y
 # CONFIG_CMD_FLASH is not set
 CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/mx23evk_defconfig b/configs/mx23evk_defconfig
index 55e8915..43e3d0a 100644
--- a/configs/mx23evk_defconfig
+++ b/configs/mx23evk_defconfig
@@ -7,3 +7,4 @@ CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
 # CONFIG_CMD_NET is not set
 # CONFIG_CMD_NFS is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/mx25pdk_defconfig b/configs/mx25pdk_defconfig
index 79edf33..5a4bd57 100644
--- a/configs/mx25pdk_defconfig
+++ b/configs/mx25pdk_defconfig
@@ -4,3 +4,4 @@ CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/freescale/mx25pdk/imximage.cfg"
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/mx28evk_auart_console_defconfig b/configs/mx28evk_auart_console_defconfig
index dcabd7b..f4c934f 100644
--- a/configs/mx28evk_auart_console_defconfig
+++ b/configs/mx28evk_auart_console_defconfig
@@ -7,3 +7,4 @@ CONFIG_SYS_EXTRA_OPTIONS="MXS_AUART,MXS_AUART_BASE=MXS_UARTAPP3_BASE,ENV_IS_IN_M
 CONFIG_CMD_GPIO=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SST=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/mx28evk_defconfig b/configs/mx28evk_defconfig
index d7f0706..d0e413d 100644
--- a/configs/mx28evk_defconfig
+++ b/configs/mx28evk_defconfig
@@ -7,3 +7,4 @@ CONFIG_SYS_EXTRA_OPTIONS="ENV_IS_IN_MMC"
 CONFIG_CMD_GPIO=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SST=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/mx28evk_nand_defconfig b/configs/mx28evk_nand_defconfig
index f4ace44..0f76bde 100644
--- a/configs/mx28evk_nand_defconfig
+++ b/configs/mx28evk_nand_defconfig
@@ -7,3 +7,4 @@ CONFIG_SYS_EXTRA_OPTIONS="ENV_IS_IN_NAND"
 CONFIG_CMD_GPIO=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SST=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/mx28evk_spi_defconfig b/configs/mx28evk_spi_defconfig
index 976ebc2..ad939ca 100644
--- a/configs/mx28evk_spi_defconfig
+++ b/configs/mx28evk_spi_defconfig
@@ -7,3 +7,4 @@ CONFIG_SYS_EXTRA_OPTIONS="ENV_IS_IN_SPI_FLASH"
 CONFIG_CMD_GPIO=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SST=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/mx35pdk_defconfig b/configs/mx35pdk_defconfig
index c13e9f2..699d929 100644
--- a/configs/mx35pdk_defconfig
+++ b/configs/mx35pdk_defconfig
@@ -1,3 +1,4 @@
 CONFIG_ARM=y
 CONFIG_TARGET_MX35PDK=y
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/mx51evk_defconfig b/configs/mx51evk_defconfig
index f2c3743..0bb0c61 100644
--- a/configs/mx51evk_defconfig
+++ b/configs/mx51evk_defconfig
@@ -3,3 +3,4 @@ CONFIG_TARGET_MX51EVK=y
 CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/freescale/mx51evk/imximage.cfg"
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/mx53ard_defconfig b/configs/mx53ard_defconfig
index 8f233c9..e8a211a 100644
--- a/configs/mx53ard_defconfig
+++ b/configs/mx53ard_defconfig
@@ -2,3 +2,4 @@ CONFIG_ARM=y
 CONFIG_TARGET_MX53ARD=y
 CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/freescale/mx53ard/imximage_dd3.cfg"
 # CONFIG_CMD_IMLS is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/mx53evk_defconfig b/configs/mx53evk_defconfig
index 958a7d8..1c4da22 100644
--- a/configs/mx53evk_defconfig
+++ b/configs/mx53evk_defconfig
@@ -3,3 +3,4 @@ CONFIG_TARGET_MX53EVK=y
 CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/freescale/mx53evk/imximage.cfg"
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/mx53loco_defconfig b/configs/mx53loco_defconfig
index 1badd4e..273ce16 100644
--- a/configs/mx53loco_defconfig
+++ b/configs/mx53loco_defconfig
@@ -3,3 +3,4 @@ CONFIG_TARGET_MX53LOCO=y
 CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/freescale/mx53loco/imximage.cfg"
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/mx53smd_defconfig b/configs/mx53smd_defconfig
index 2fdd374..92e9f63 100644
--- a/configs/mx53smd_defconfig
+++ b/configs/mx53smd_defconfig
@@ -3,3 +3,4 @@ CONFIG_TARGET_MX53SMD=y
 CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/freescale/mx53smd/imximage.cfg"
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/mx6cuboxi_defconfig b/configs/mx6cuboxi_defconfig
index e8964d9..58e297a 100644
--- a/configs/mx6cuboxi_defconfig
+++ b/configs/mx6cuboxi_defconfig
@@ -8,3 +8,4 @@ CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/imx-common/spl_sd.cfg,MX6QDL"
 CONFIG_CMD_GPIO=y
 CONFIG_DM=y
 CONFIG_DM_THERMAL=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/mx6dlarm2_defconfig b/configs/mx6dlarm2_defconfig
index de96d35..60e5dd6 100644
--- a/configs/mx6dlarm2_defconfig
+++ b/configs/mx6dlarm2_defconfig
@@ -6,3 +6,4 @@ CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/freescale/mx6qarm2/imximage_mx6dl.cfg
 # CONFIG_CMD_FLASH is not set
 CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/mx6dlarm2_lpddr2_defconfig b/configs/mx6dlarm2_lpddr2_defconfig
index 9ee4ee7..01a682f 100644
--- a/configs/mx6dlarm2_lpddr2_defconfig
+++ b/configs/mx6dlarm2_lpddr2_defconfig
@@ -6,3 +6,4 @@ CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/freescale/mx6qarm2/imximage_mx6dl.cfg
 # CONFIG_CMD_FLASH is not set
 CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/mx6dlsabreauto_defconfig b/configs/mx6dlsabreauto_defconfig
index 40d82ca..46b8a9f 100644
--- a/configs/mx6dlsabreauto_defconfig
+++ b/configs/mx6dlsabreauto_defconfig
@@ -7,3 +7,4 @@ CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/freescale/mx6qsabreauto/mx6dl.cfg,MX6
 CONFIG_CMD_GPIO=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/mx6dlsabresd_defconfig b/configs/mx6dlsabresd_defconfig
index b2cf924..45a7ec3 100644
--- a/configs/mx6dlsabresd_defconfig
+++ b/configs/mx6dlsabresd_defconfig
@@ -7,3 +7,4 @@ CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/freescale/mx6sabresd/mx6dlsabresd.cfg
 CONFIG_CMD_GPIO=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/mx6qarm2_defconfig b/configs/mx6qarm2_defconfig
index 7f08d86..7aa7916 100644
--- a/configs/mx6qarm2_defconfig
+++ b/configs/mx6qarm2_defconfig
@@ -6,3 +6,4 @@ CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/freescale/mx6qarm2/imximage.cfg,MX6Q,
 # CONFIG_CMD_FLASH is not set
 CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/mx6qarm2_lpddr2_defconfig b/configs/mx6qarm2_lpddr2_defconfig
index 7186799..5920430 100644
--- a/configs/mx6qarm2_lpddr2_defconfig
+++ b/configs/mx6qarm2_lpddr2_defconfig
@@ -6,3 +6,4 @@ CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/freescale/mx6qarm2/imximage.cfg,MX6Q,
 # CONFIG_CMD_FLASH is not set
 CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/mx6qpsabreauto_defconfig b/configs/mx6qpsabreauto_defconfig
index c44cd8f..0877c41 100644
--- a/configs/mx6qpsabreauto_defconfig
+++ b/configs/mx6qpsabreauto_defconfig
@@ -5,3 +5,4 @@ CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/freescale/mx6qsabreauto/mx6qp.cfg,MX6
 CONFIG_CMD_GPIO=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/mx6qsabreauto_defconfig b/configs/mx6qsabreauto_defconfig
index 67b9e10..36ebc89 100644
--- a/configs/mx6qsabreauto_defconfig
+++ b/configs/mx6qsabreauto_defconfig
@@ -7,3 +7,4 @@ CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/freescale/mx6qsabreauto/imximage.cfg,
 CONFIG_CMD_GPIO=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/mx6qsabrelite_defconfig b/configs/mx6qsabrelite_defconfig
index 8736e31..fc8323c 100644
--- a/configs/mx6qsabrelite_defconfig
+++ b/configs/mx6qsabrelite_defconfig
@@ -9,3 +9,4 @@ CONFIG_DM=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SST=y
 CONFIG_DM_THERMAL=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/mx6qsabresd_defconfig b/configs/mx6qsabresd_defconfig
index 63187b3..224e6ed 100644
--- a/configs/mx6qsabresd_defconfig
+++ b/configs/mx6qsabresd_defconfig
@@ -7,3 +7,4 @@ CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/freescale/mx6sabresd/mx6q_4x_mt41j128
 CONFIG_CMD_GPIO=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/mx6sabresd_spl_defconfig b/configs/mx6sabresd_spl_defconfig
index d047309..406777c 100644
--- a/configs/mx6sabresd_spl_defconfig
+++ b/configs/mx6sabresd_spl_defconfig
@@ -8,3 +8,4 @@ CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/imx-common/spl_sd.cfg,SPL,MX6Q"
 CONFIG_CMD_GPIO=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/mx6slevk_defconfig b/configs/mx6slevk_defconfig
index 5eca5e9..2d24622 100644
--- a/configs/mx6slevk_defconfig
+++ b/configs/mx6slevk_defconfig
@@ -10,3 +10,4 @@ CONFIG_DM=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_DM_THERMAL=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/mx6slevk_spinor_defconfig b/configs/mx6slevk_spinor_defconfig
index caf0335..65b5e9d 100644
--- a/configs/mx6slevk_spinor_defconfig
+++ b/configs/mx6slevk_spinor_defconfig
@@ -10,3 +10,4 @@ CONFIG_DM=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_DM_THERMAL=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/mx6slevk_spl_defconfig b/configs/mx6slevk_spl_defconfig
index 2603927..fee352c 100644
--- a/configs/mx6slevk_spl_defconfig
+++ b/configs/mx6slevk_spl_defconfig
@@ -8,3 +8,4 @@ CONFIG_DM=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_DM_THERMAL=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/mx6sxsabresd_defconfig b/configs/mx6sxsabresd_defconfig
index 953a246..f4e88f2 100644
--- a/configs/mx6sxsabresd_defconfig
+++ b/configs/mx6sxsabresd_defconfig
@@ -8,3 +8,4 @@ CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_BAR=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/mx6sxsabresd_spl_defconfig b/configs/mx6sxsabresd_spl_defconfig
index 3843f99..2713a4b 100644
--- a/configs/mx6sxsabresd_spl_defconfig
+++ b/configs/mx6sxsabresd_spl_defconfig
@@ -8,3 +8,4 @@ CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/imx-common/spl_sd.cfg,MX6SX"
 CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SPI_FLASH=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/mx6ul_14x14_evk_defconfig b/configs/mx6ul_14x14_evk_defconfig
index 835285f..77d78e7 100644
--- a/configs/mx6ul_14x14_evk_defconfig
+++ b/configs/mx6ul_14x14_evk_defconfig
@@ -6,3 +6,4 @@ CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/imx-common/spl_sd.cfg"
 CONFIG_CMD_GPIO=y
 CONFIG_CMD_DHCP=y
 CONFIG_CMD_PING=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/mx6ul_9x9_evk_defconfig b/configs/mx6ul_9x9_evk_defconfig
index efbffe3..a6dd96b 100644
--- a/configs/mx6ul_9x9_evk_defconfig
+++ b/configs/mx6ul_9x9_evk_defconfig
@@ -6,3 +6,4 @@ CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/imx-common/spl_sd.cfg"
 CONFIG_CMD_GPIO=y
 CONFIG_CMD_DHCP=y
 CONFIG_CMD_PING=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/mx7dsabresd_defconfig b/configs/mx7dsabresd_defconfig
index 420d13e..58d7baa 100644
--- a/configs/mx7dsabresd_defconfig
+++ b/configs/mx7dsabresd_defconfig
@@ -10,3 +10,4 @@ CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_CMD_DHCP=y
 CONFIG_CMD_PING=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/nas220_defconfig b/configs/nas220_defconfig
index eae74a0..ab9ebba 100644
--- a/configs/nas220_defconfig
+++ b/configs/nas220_defconfig
@@ -6,3 +6,4 @@ CONFIG_SYS_PROMPT="nas220> "
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/neo_defconfig b/configs/neo_defconfig
index a500b5f..434fe8f 100644
--- a/configs/neo_defconfig
+++ b/configs/neo_defconfig
@@ -4,3 +4,4 @@ CONFIG_TARGET_NEO=y
 # CONFIG_CMD_ELF is not set
 # CONFIG_CMD_NFS is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/net2big_v2_defconfig b/configs/net2big_v2_defconfig
index 87f4f92..c0aee31 100644
--- a/configs/net2big_v2_defconfig
+++ b/configs/net2big_v2_defconfig
@@ -8,3 +8,4 @@ CONFIG_SYS_EXTRA_OPTIONS="NET2BIG_V2"
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_MACRONIX=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/netspace_lite_v2_defconfig b/configs/netspace_lite_v2_defconfig
index 2e2ee35..eb26f88 100644
--- a/configs/netspace_lite_v2_defconfig
+++ b/configs/netspace_lite_v2_defconfig
@@ -8,3 +8,4 @@ CONFIG_SYS_EXTRA_OPTIONS="NETSPACE_LITE_V2"
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_MACRONIX=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/netspace_max_v2_defconfig b/configs/netspace_max_v2_defconfig
index d336ef3..e37523e 100644
--- a/configs/netspace_max_v2_defconfig
+++ b/configs/netspace_max_v2_defconfig
@@ -8,3 +8,4 @@ CONFIG_SYS_EXTRA_OPTIONS="NETSPACE_MAX_V2"
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_MACRONIX=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/netspace_mini_v2_defconfig b/configs/netspace_mini_v2_defconfig
index 667da1b..e847123 100644
--- a/configs/netspace_mini_v2_defconfig
+++ b/configs/netspace_mini_v2_defconfig
@@ -8,3 +8,4 @@ CONFIG_SYS_EXTRA_OPTIONS="NETSPACE_MINI_V2"
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_MACRONIX=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/netspace_v2_defconfig b/configs/netspace_v2_defconfig
index 949f680..01a6f7e 100644
--- a/configs/netspace_v2_defconfig
+++ b/configs/netspace_v2_defconfig
@@ -8,3 +8,4 @@ CONFIG_SYS_EXTRA_OPTIONS="NETSPACE_V2"
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_MACRONIX=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/nitrogen6dl2g_defconfig b/configs/nitrogen6dl2g_defconfig
index 281292d..40da15c 100644
--- a/configs/nitrogen6dl2g_defconfig
+++ b/configs/nitrogen6dl2g_defconfig
@@ -7,3 +7,4 @@ CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/boundary/nitrogen6x/nitrogen6dl2g.cfg
 CONFIG_CMD_GPIO=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SST=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/nitrogen6dl_defconfig b/configs/nitrogen6dl_defconfig
index 5ae77e3..5f7c17a 100644
--- a/configs/nitrogen6dl_defconfig
+++ b/configs/nitrogen6dl_defconfig
@@ -7,3 +7,4 @@ CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/boundary/nitrogen6x/nitrogen6dl.cfg,M
 CONFIG_CMD_GPIO=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SST=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/nitrogen6q2g_defconfig b/configs/nitrogen6q2g_defconfig
index e5c7824..8707d7e 100644
--- a/configs/nitrogen6q2g_defconfig
+++ b/configs/nitrogen6q2g_defconfig
@@ -7,3 +7,4 @@ CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/boundary/nitrogen6x/nitrogen6q2g.cfg,
 CONFIG_CMD_GPIO=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SST=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/nitrogen6q_defconfig b/configs/nitrogen6q_defconfig
index e2a1242..fbe9b6f 100644
--- a/configs/nitrogen6q_defconfig
+++ b/configs/nitrogen6q_defconfig
@@ -7,3 +7,4 @@ CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/boundary/nitrogen6x/nitrogen6q.cfg,MX
 CONFIG_CMD_GPIO=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SST=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/nitrogen6s1g_defconfig b/configs/nitrogen6s1g_defconfig
index 3d38c08..078fc20 100644
--- a/configs/nitrogen6s1g_defconfig
+++ b/configs/nitrogen6s1g_defconfig
@@ -7,3 +7,4 @@ CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/boundary/nitrogen6x/nitrogen6s1g.cfg,
 CONFIG_CMD_GPIO=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SST=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/nitrogen6s_defconfig b/configs/nitrogen6s_defconfig
index 9b44758..707fb58 100644
--- a/configs/nitrogen6s_defconfig
+++ b/configs/nitrogen6s_defconfig
@@ -7,3 +7,4 @@ CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/boundary/nitrogen6x/nitrogen6s.cfg,MX
 CONFIG_CMD_GPIO=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SST=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/novena_defconfig b/configs/novena_defconfig
index 889aac2..148d693 100644
--- a/configs/novena_defconfig
+++ b/configs/novena_defconfig
@@ -6,3 +6,4 @@ CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/imx-common/spl_sd.cfg,MX6Q"
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 CONFIG_CMD_GPIO=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/nsa310s_defconfig b/configs/nsa310s_defconfig
index dcd86c8..ddd9004 100644
--- a/configs/nsa310s_defconfig
+++ b/configs/nsa310s_defconfig
@@ -11,3 +11,4 @@ CONFIG_CMD_USB=y
 CONFIG_CMD_DHCP=y
 CONFIG_CMD_PING=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/omap3_beagle_defconfig b/configs/omap3_beagle_defconfig
index 988f99d..1fb1f71 100644
--- a/configs/omap3_beagle_defconfig
+++ b/configs/omap3_beagle_defconfig
@@ -7,3 +7,4 @@ CONFIG_SYS_EXTRA_OPTIONS="NAND"
 # CONFIG_CMD_FLASH is not set
 CONFIG_CMD_GPIO=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/omap3_ha_defconfig b/configs/omap3_ha_defconfig
index 04b3215..5fc4bfc 100644
--- a/configs/omap3_ha_defconfig
+++ b/configs/omap3_ha_defconfig
@@ -9,3 +9,4 @@ CONFIG_SYS_EXTRA_OPTIONS="SYS_BOARD_OMAP3_HA"
 # CONFIG_CMD_FPGA is not set
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/omap3_logic_defconfig b/configs/omap3_logic_defconfig
index 0ff510e..ab785a7 100644
--- a/configs/omap3_logic_defconfig
+++ b/configs/omap3_logic_defconfig
@@ -8,3 +8,4 @@ CONFIG_SYS_PROMPT="OMAP Logic # "
 # CONFIG_CMD_FPGA is not set
 CONFIG_CMD_GPIO=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/omap3_overo_defconfig b/configs/omap3_overo_defconfig
index 4c2a17d..2958e24 100644
--- a/configs/omap3_overo_defconfig
+++ b/configs/omap3_overo_defconfig
@@ -11,3 +11,4 @@ CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
 # CONFIG_CMD_NFS is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/omap3_pandora_defconfig b/configs/omap3_pandora_defconfig
index badfde6..e565d65 100644
--- a/configs/omap3_pandora_defconfig
+++ b/configs/omap3_pandora_defconfig
@@ -11,3 +11,4 @@ CONFIG_CMD_GPIO=y
 # CONFIG_CMD_NET is not set
 # CONFIG_CMD_NFS is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/omap3_zoom1_defconfig b/configs/omap3_zoom1_defconfig
index 639000c..70f0fdb 100644
--- a/configs/omap3_zoom1_defconfig
+++ b/configs/omap3_zoom1_defconfig
@@ -8,3 +8,4 @@ CONFIG_TARGET_OMAP3_ZOOM1=y
 CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/omap4_panda_defconfig b/configs/omap4_panda_defconfig
index 332ed66..c6ff836 100644
--- a/configs/omap4_panda_defconfig
+++ b/configs/omap4_panda_defconfig
@@ -8,3 +8,4 @@ CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
 # CONFIG_CMD_NFS is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/omap4_sdp4430_defconfig b/configs/omap4_sdp4430_defconfig
index 023ee41..d42fc47 100644
--- a/configs/omap4_sdp4430_defconfig
+++ b/configs/omap4_sdp4430_defconfig
@@ -9,3 +9,4 @@ CONFIG_CMD_GPIO=y
 # CONFIG_CMD_NET is not set
 # CONFIG_CMD_NFS is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/omap5_uevm_defconfig b/configs/omap5_uevm_defconfig
index ba5d9ca..cdd80cc 100644
--- a/configs/omap5_uevm_defconfig
+++ b/configs/omap5_uevm_defconfig
@@ -7,3 +7,4 @@ CONFIG_SPL=y
 CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/omapl138_lcdk_defconfig b/configs/omapl138_lcdk_defconfig
index 7c2d6c8..8b97508 100644
--- a/configs/omapl138_lcdk_defconfig
+++ b/configs/omapl138_lcdk_defconfig
@@ -10,3 +10,4 @@ CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_SPI_FLASH_WINBOND=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/openrd_base_defconfig b/configs/openrd_base_defconfig
index ea7861d..26dc87e 100644
--- a/configs/openrd_base_defconfig
+++ b/configs/openrd_base_defconfig
@@ -6,3 +6,4 @@ CONFIG_SYS_EXTRA_OPTIONS="BOARD_IS_OPENRD_BASE"
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/openrd_client_defconfig b/configs/openrd_client_defconfig
index 886698b..2e0606d 100644
--- a/configs/openrd_client_defconfig
+++ b/configs/openrd_client_defconfig
@@ -6,3 +6,4 @@ CONFIG_SYS_EXTRA_OPTIONS="BOARD_IS_OPENRD_CLIENT"
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/openrd_ultimate_defconfig b/configs/openrd_ultimate_defconfig
index 4989319..451c8ab 100644
--- a/configs/openrd_ultimate_defconfig
+++ b/configs/openrd_ultimate_defconfig
@@ -6,3 +6,4 @@ CONFIG_SYS_EXTRA_OPTIONS="BOARD_IS_OPENRD_ULTIMATE"
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/ot1200_defconfig b/configs/ot1200_defconfig
index a1ecf06..5e8671f 100644
--- a/configs/ot1200_defconfig
+++ b/configs/ot1200_defconfig
@@ -10,3 +10,4 @@ CONFIG_SPI_FLASH_MACRONIX=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_SPI_FLASH_SST=y
 CONFIG_SPI_FLASH_WINBOND=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/ot1200_spl_defconfig b/configs/ot1200_spl_defconfig
index 5d44d7d..2d37d8b 100644
--- a/configs/ot1200_spl_defconfig
+++ b/configs/ot1200_spl_defconfig
@@ -11,3 +11,4 @@ CONFIG_SPI_FLASH_MACRONIX=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_SPI_FLASH_SST=y
 CONFIG_SPI_FLASH_WINBOND=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/pcm030_LOWBOOT_defconfig b/configs/pcm030_LOWBOOT_defconfig
index 42389bb..4397d42 100644
--- a/configs/pcm030_LOWBOOT_defconfig
+++ b/configs/pcm030_LOWBOOT_defconfig
@@ -3,3 +3,4 @@ CONFIG_MPC5xxx=y
 CONFIG_TARGET_PCM030=y
 CONFIG_SYS_EXTRA_OPTIONS="SYS_TEXT_BASE=0xFF000000"
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/pcm030_defconfig b/configs/pcm030_defconfig
index 9da4bb0..e72a9c6 100644
--- a/configs/pcm030_defconfig
+++ b/configs/pcm030_defconfig
@@ -3,3 +3,4 @@ CONFIG_MPC5xxx=y
 CONFIG_TARGET_PCM030=y
 CONFIG_SYS_PROMPT="uboot> "
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/pcm051_rev1_defconfig b/configs/pcm051_rev1_defconfig
index ce7c4bb..b74b372 100644
--- a/configs/pcm051_rev1_defconfig
+++ b/configs/pcm051_rev1_defconfig
@@ -9,3 +9,4 @@ CONFIG_CMD_GPIO=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_WINBOND=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/pcm051_rev3_defconfig b/configs/pcm051_rev3_defconfig
index 7c2dee4..18be2a0 100644
--- a/configs/pcm051_rev3_defconfig
+++ b/configs/pcm051_rev3_defconfig
@@ -9,3 +9,4 @@ CONFIG_CMD_GPIO=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_WINBOND=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/pcm052_defconfig b/configs/pcm052_defconfig
index 26ab733..17db929 100644
--- a/configs/pcm052_defconfig
+++ b/configs/pcm052_defconfig
@@ -4,3 +4,4 @@ CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/phytec/pcm052/imximage.cfg,ENV_IS_IN_
 CONFIG_NAND_VF610_NFC=y
 CONFIG_SYS_NAND_BUSWIDTH_16BIT=y
 CONFIG_FSL_LPUART=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/pdm360ng_defconfig b/configs/pdm360ng_defconfig
index 3997f59..560e9e4 100644
--- a/configs/pdm360ng_defconfig
+++ b/configs/pdm360ng_defconfig
@@ -2,3 +2,4 @@ CONFIG_PPC=y
 CONFIG_MPC512X=y
 CONFIG_TARGET_PDM360NG=y
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/pengwyn_defconfig b/configs/pengwyn_defconfig
index 00a3dac..97ee71d 100644
--- a/configs/pengwyn_defconfig
+++ b/configs/pengwyn_defconfig
@@ -6,3 +6,4 @@ CONFIG_SPL=y
 CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/pepper_defconfig b/configs/pepper_defconfig
index 62bb80a..7073739 100644
--- a/configs/pepper_defconfig
+++ b/configs/pepper_defconfig
@@ -7,3 +7,4 @@ CONFIG_SYS_PROMPT="pepper# "
 CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/picosam9g45_defconfig b/configs/picosam9g45_defconfig
index ccca1ca..687e69b 100644
--- a/configs/picosam9g45_defconfig
+++ b/configs/picosam9g45_defconfig
@@ -11,3 +11,4 @@ CONFIG_SYS_PROMPT="U-Boot> "
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/platinum_picon_defconfig b/configs/platinum_picon_defconfig
index c4a82d7..b7e5d7c 100644
--- a/configs/platinum_picon_defconfig
+++ b/configs/platinum_picon_defconfig
@@ -8,3 +8,4 @@ CONFIG_SYS_PROMPT="picon > "
 # CONFIG_CMD_FLASH is not set
 CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/platinum_titanium_defconfig b/configs/platinum_titanium_defconfig
index f824bae..cb38895 100644
--- a/configs/platinum_titanium_defconfig
+++ b/configs/platinum_titanium_defconfig
@@ -8,3 +8,4 @@ CONFIG_SYS_PROMPT="titanium > "
 # CONFIG_CMD_FLASH is not set
 CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/pogo_e02_defconfig b/configs/pogo_e02_defconfig
index 1a31256..53ee15c 100644
--- a/configs/pogo_e02_defconfig
+++ b/configs/pogo_e02_defconfig
@@ -6,3 +6,4 @@ CONFIG_SYS_PROMPT="PogoE02> "
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/porter_defconfig b/configs/porter_defconfig
index 44f2387..5899f73 100644
--- a/configs/porter_defconfig
+++ b/configs/porter_defconfig
@@ -20,3 +20,4 @@ CONFIG_SH_SDHI=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_BAR=y
 CONFIG_SPI_FLASH_SPANSION=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/portl2_defconfig b/configs/portl2_defconfig
index 0efc4c6..37c9ddb 100644
--- a/configs/portl2_defconfig
+++ b/configs/portl2_defconfig
@@ -7,3 +7,4 @@ CONFIG_SYS_EXTRA_OPTIONS="KM_PORTL2"
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/pxm2_defconfig b/configs/pxm2_defconfig
index 02984ed..8e86e1d 100644
--- a/configs/pxm2_defconfig
+++ b/configs/pxm2_defconfig
@@ -12,3 +12,4 @@ CONFIG_CMD_GPIO=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_WINBOND=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/qemu-ppce500_defconfig b/configs/qemu-ppce500_defconfig
index d28532c..6b5619c 100644
--- a/configs/qemu-ppce500_defconfig
+++ b/configs/qemu-ppce500_defconfig
@@ -6,3 +6,4 @@ CONFIG_TARGET_QEMU_PPCE500=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/rainier_defconfig b/configs/rainier_defconfig
index cffc355..6817023 100644
--- a/configs/rainier_defconfig
+++ b/configs/rainier_defconfig
@@ -3,3 +3,4 @@ CONFIG_4xx=y
 CONFIG_TARGET_SEQUOIA=y
 CONFIG_SYS_EXTRA_OPTIONS="RAINIER"
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/rainier_ramboot_defconfig b/configs/rainier_ramboot_defconfig
index 9766835..dcd68fd 100644
--- a/configs/rainier_ramboot_defconfig
+++ b/configs/rainier_ramboot_defconfig
@@ -3,3 +3,4 @@ CONFIG_4xx=y
 CONFIG_TARGET_SEQUOIA=y
 CONFIG_SYS_EXTRA_OPTIONS="RAINIER,SYS_RAMBOOT,SYS_TEXT_BASE=0x01000000,SYS_LDSCRIPT=board/amcc/sequoia/u-boot-ram.lds"
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/rastaban_defconfig b/configs/rastaban_defconfig
index a1403fb..6e7d0d2 100644
--- a/configs/rastaban_defconfig
+++ b/configs/rastaban_defconfig
@@ -12,3 +12,4 @@ CONFIG_CMD_GPIO=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_WINBOND=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/redwood_defconfig b/configs/redwood_defconfig
index 3b7cebb..dbd652b 100644
--- a/configs/redwood_defconfig
+++ b/configs/redwood_defconfig
@@ -2,3 +2,4 @@ CONFIG_PPC=y
 CONFIG_4xx=y
 CONFIG_TARGET_REDWOOD=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/riotboard_defconfig b/configs/riotboard_defconfig
index 3cf82c3..35b96a3 100644
--- a/configs/riotboard_defconfig
+++ b/configs/riotboard_defconfig
@@ -9,3 +9,4 @@ CONFIG_DM=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SST=y
 CONFIG_DM_THERMAL=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/rpi_2_defconfig b/configs/rpi_2_defconfig
index bd81ee6..b80ac16 100644
--- a/configs/rpi_2_defconfig
+++ b/configs/rpi_2_defconfig
@@ -7,3 +7,4 @@ CONFIG_SYS_PROMPT="U-Boot> "
 # CONFIG_CMD_FPGA is not set
 CONFIG_CMD_GPIO=y
 CONFIG_PHYS_TO_BUS=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/rpi_defconfig b/configs/rpi_defconfig
index 5d27909..7fc8bbc 100644
--- a/configs/rpi_defconfig
+++ b/configs/rpi_defconfig
@@ -7,3 +7,4 @@ CONFIG_SYS_PROMPT="U-Boot> "
 # CONFIG_CMD_FPGA is not set
 CONFIG_CMD_GPIO=y
 CONFIG_PHYS_TO_BUS=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/rut_defconfig b/configs/rut_defconfig
index 4c1fd4b..647088e 100644
--- a/configs/rut_defconfig
+++ b/configs/rut_defconfig
@@ -12,3 +12,4 @@ CONFIG_CMD_GPIO=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_WINBOND=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/sama5d2_xplained_mmc_defconfig b/configs/sama5d2_xplained_mmc_defconfig
index c1dcbef..1bf6575 100644
--- a/configs/sama5d2_xplained_mmc_defconfig
+++ b/configs/sama5d2_xplained_mmc_defconfig
@@ -9,3 +9,4 @@ CONFIG_SYS_EXTRA_OPTIONS="SAMA5D2,SYS_USE_MMC"
 CONFIG_CMD_SF=y
 # CONFIG_CMD_FPGA is not set
 CONFIG_SPI_FLASH=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/sama5d2_xplained_spiflash_defconfig b/configs/sama5d2_xplained_spiflash_defconfig
index 0271e8e..2231f68 100644
--- a/configs/sama5d2_xplained_spiflash_defconfig
+++ b/configs/sama5d2_xplained_spiflash_defconfig
@@ -9,3 +9,4 @@ CONFIG_SYS_EXTRA_OPTIONS="SAMA5D2,SYS_USE_SERIALFLASH"
 CONFIG_CMD_SF=y
 # CONFIG_CMD_FPGA is not set
 CONFIG_SPI_FLASH=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/sama5d3_xplained_mmc_defconfig b/configs/sama5d3_xplained_mmc_defconfig
index 36f8254..1133892 100644
--- a/configs/sama5d3_xplained_mmc_defconfig
+++ b/configs/sama5d3_xplained_mmc_defconfig
@@ -8,3 +8,4 @@ CONFIG_SYS_EXTRA_OPTIONS="SAMA5D3,SYS_USE_MMC"
 # CONFIG_CMD_LOADS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/sama5d3_xplained_nandflash_defconfig b/configs/sama5d3_xplained_nandflash_defconfig
index 2de83d4..e4f577b 100644
--- a/configs/sama5d3_xplained_nandflash_defconfig
+++ b/configs/sama5d3_xplained_nandflash_defconfig
@@ -8,3 +8,4 @@ CONFIG_SYS_EXTRA_OPTIONS="SAMA5D3,SYS_USE_NANDFLASH"
 # CONFIG_CMD_LOADS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/sama5d3xek_mmc_defconfig b/configs/sama5d3xek_mmc_defconfig
index 644b150..4a97da1 100644
--- a/configs/sama5d3xek_mmc_defconfig
+++ b/configs/sama5d3xek_mmc_defconfig
@@ -8,3 +8,4 @@ CONFIG_SYS_EXTRA_OPTIONS="SAMA5D3,SYS_USE_MMC"
 # CONFIG_CMD_FPGA is not set
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_ATMEL=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/sama5d3xek_nandflash_defconfig b/configs/sama5d3xek_nandflash_defconfig
index 1e428809a..968cd66 100644
--- a/configs/sama5d3xek_nandflash_defconfig
+++ b/configs/sama5d3xek_nandflash_defconfig
@@ -8,3 +8,4 @@ CONFIG_SYS_EXTRA_OPTIONS="SAMA5D3,SYS_USE_NANDFLASH"
 # CONFIG_CMD_FPGA is not set
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_ATMEL=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/sama5d3xek_spiflash_defconfig b/configs/sama5d3xek_spiflash_defconfig
index 724b55b..bc98e6b 100644
--- a/configs/sama5d3xek_spiflash_defconfig
+++ b/configs/sama5d3xek_spiflash_defconfig
@@ -8,3 +8,4 @@ CONFIG_SYS_EXTRA_OPTIONS="SAMA5D3,SYS_USE_SERIALFLASH"
 # CONFIG_CMD_FPGA is not set
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_ATMEL=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/sama5d4_xplained_mmc_defconfig b/configs/sama5d4_xplained_mmc_defconfig
index 3daac36..f1261ab 100644
--- a/configs/sama5d4_xplained_mmc_defconfig
+++ b/configs/sama5d4_xplained_mmc_defconfig
@@ -10,3 +10,4 @@ CONFIG_SYS_EXTRA_OPTIONS="SAMA5D4,SYS_USE_MMC"
 # CONFIG_CMD_FPGA is not set
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_ATMEL=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/sama5d4_xplained_nandflash_defconfig b/configs/sama5d4_xplained_nandflash_defconfig
index e3517e8..0e53b32 100644
--- a/configs/sama5d4_xplained_nandflash_defconfig
+++ b/configs/sama5d4_xplained_nandflash_defconfig
@@ -10,3 +10,4 @@ CONFIG_SYS_EXTRA_OPTIONS="SAMA5D4,SYS_USE_NANDFLASH"
 # CONFIG_CMD_FPGA is not set
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_ATMEL=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/sama5d4_xplained_spiflash_defconfig b/configs/sama5d4_xplained_spiflash_defconfig
index 1cdb9bc..a1b2c53 100644
--- a/configs/sama5d4_xplained_spiflash_defconfig
+++ b/configs/sama5d4_xplained_spiflash_defconfig
@@ -10,3 +10,4 @@ CONFIG_SYS_EXTRA_OPTIONS="SAMA5D4,SYS_USE_SERIALFLASH"
 # CONFIG_CMD_FPGA is not set
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_ATMEL=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/sama5d4ek_mmc_defconfig b/configs/sama5d4ek_mmc_defconfig
index a75705a..bf81f9b 100644
--- a/configs/sama5d4ek_mmc_defconfig
+++ b/configs/sama5d4ek_mmc_defconfig
@@ -10,3 +10,4 @@ CONFIG_SYS_EXTRA_OPTIONS="SAMA5D4,SYS_USE_MMC"
 # CONFIG_CMD_FPGA is not set
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_ATMEL=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/sama5d4ek_nandflash_defconfig b/configs/sama5d4ek_nandflash_defconfig
index 346a890..c78266e 100644
--- a/configs/sama5d4ek_nandflash_defconfig
+++ b/configs/sama5d4ek_nandflash_defconfig
@@ -10,3 +10,4 @@ CONFIG_SYS_EXTRA_OPTIONS="SAMA5D4,SYS_USE_NANDFLASH"
 # CONFIG_CMD_FPGA is not set
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_ATMEL=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/sama5d4ek_spiflash_defconfig b/configs/sama5d4ek_spiflash_defconfig
index efba861..7c10aab 100644
--- a/configs/sama5d4ek_spiflash_defconfig
+++ b/configs/sama5d4ek_spiflash_defconfig
@@ -10,3 +10,4 @@ CONFIG_SYS_EXTRA_OPTIONS="SAMA5D4,SYS_USE_SERIALFLASH"
 # CONFIG_CMD_FPGA is not set
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_ATMEL=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/sansa_fuze_plus_defconfig b/configs/sansa_fuze_plus_defconfig
index 0d41602..b8949aa 100644
--- a/configs/sansa_fuze_plus_defconfig
+++ b/configs/sansa_fuze_plus_defconfig
@@ -5,3 +5,4 @@ CONFIG_SPL=y
 # CONFIG_CMD_FLASH is not set
 CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/sbc8349_PCI_33_defconfig b/configs/sbc8349_PCI_33_defconfig
index 068b1b6..f78d205 100644
--- a/configs/sbc8349_PCI_33_defconfig
+++ b/configs/sbc8349_PCI_33_defconfig
@@ -4,3 +4,4 @@ CONFIG_TARGET_SBC8349=y
 CONFIG_SYS_EXTRA_OPTIONS="PCI,PCI_33M"
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/sbc8349_PCI_66_defconfig b/configs/sbc8349_PCI_66_defconfig
index 9939155..4d3cd50 100644
--- a/configs/sbc8349_PCI_66_defconfig
+++ b/configs/sbc8349_PCI_66_defconfig
@@ -4,3 +4,4 @@ CONFIG_TARGET_SBC8349=y
 CONFIG_SYS_EXTRA_OPTIONS="PCI,PCI_66M"
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/sbc8349_defconfig b/configs/sbc8349_defconfig
index f1e356d..9bb1f6a 100644
--- a/configs/sbc8349_defconfig
+++ b/configs/sbc8349_defconfig
@@ -3,3 +3,4 @@ CONFIG_MPC83xx=y
 CONFIG_TARGET_SBC8349=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/sbc8548_PCI_33_PCIE_defconfig b/configs/sbc8548_PCI_33_PCIE_defconfig
index bf1f0a5..da8e71b 100644
--- a/configs/sbc8548_PCI_33_PCIE_defconfig
+++ b/configs/sbc8548_PCI_33_PCIE_defconfig
@@ -4,3 +4,4 @@ CONFIG_TARGET_SBC8548=y
 CONFIG_SYS_EXTRA_OPTIONS="PCI,33,PCIE"
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/sbc8548_PCI_33_defconfig b/configs/sbc8548_PCI_33_defconfig
index 789333e..4790f72 100644
--- a/configs/sbc8548_PCI_33_defconfig
+++ b/configs/sbc8548_PCI_33_defconfig
@@ -4,3 +4,4 @@ CONFIG_TARGET_SBC8548=y
 CONFIG_SYS_EXTRA_OPTIONS="PCI,33"
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/sbc8548_PCI_66_PCIE_defconfig b/configs/sbc8548_PCI_66_PCIE_defconfig
index e0f3752..09d3112 100644
--- a/configs/sbc8548_PCI_66_PCIE_defconfig
+++ b/configs/sbc8548_PCI_66_PCIE_defconfig
@@ -4,3 +4,4 @@ CONFIG_TARGET_SBC8548=y
 CONFIG_SYS_EXTRA_OPTIONS="PCI,66,PCIE"
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/sbc8548_PCI_66_defconfig b/configs/sbc8548_PCI_66_defconfig
index 132e66d..7b5a110 100644
--- a/configs/sbc8548_PCI_66_defconfig
+++ b/configs/sbc8548_PCI_66_defconfig
@@ -4,3 +4,4 @@ CONFIG_TARGET_SBC8548=y
 CONFIG_SYS_EXTRA_OPTIONS="PCI,66"
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/sbc8548_defconfig b/configs/sbc8548_defconfig
index b8d9d5a..7220a0c 100644
--- a/configs/sbc8548_defconfig
+++ b/configs/sbc8548_defconfig
@@ -3,3 +3,4 @@ CONFIG_MPC85xx=y
 CONFIG_TARGET_SBC8548=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/sbc8641d_defconfig b/configs/sbc8641d_defconfig
index a37b18e..6b19fc7 100644
--- a/configs/sbc8641d_defconfig
+++ b/configs/sbc8641d_defconfig
@@ -3,3 +3,4 @@ CONFIG_MPC86xx=y
 CONFIG_TARGET_SBC8641D=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/sc_sps_1_defconfig b/configs/sc_sps_1_defconfig
index a9aec82..06f2322 100644
--- a/configs/sc_sps_1_defconfig
+++ b/configs/sc_sps_1_defconfig
@@ -4,3 +4,4 @@ CONFIG_SPL=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 CONFIG_CMD_GPIO=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/secomx6quq7_defconfig b/configs/secomx6quq7_defconfig
index 5291881..0980e68 100644
--- a/configs/secomx6quq7_defconfig
+++ b/configs/secomx6quq7_defconfig
@@ -9,3 +9,4 @@ CONFIG_SYS_PROMPT="SECO MX6Q uQ7 U-Boot > "
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 CONFIG_CMD_GPIO=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/sequoia_defconfig b/configs/sequoia_defconfig
index 39190a3..9085405 100644
--- a/configs/sequoia_defconfig
+++ b/configs/sequoia_defconfig
@@ -3,3 +3,4 @@ CONFIG_4xx=y
 CONFIG_TARGET_SEQUOIA=y
 CONFIG_SYS_EXTRA_OPTIONS="SEQUOIA"
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/sequoia_ramboot_defconfig b/configs/sequoia_ramboot_defconfig
index b86b230..c9fc855 100644
--- a/configs/sequoia_ramboot_defconfig
+++ b/configs/sequoia_ramboot_defconfig
@@ -3,3 +3,4 @@ CONFIG_4xx=y
 CONFIG_TARGET_SEQUOIA=y
 CONFIG_SYS_EXTRA_OPTIONS="SEQUOIA,SYS_RAMBOOT,SYS_TEXT_BASE=0x01000000,SYS_LDSCRIPT=board/amcc/sequoia/u-boot-ram.lds"
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/sheevaplug_defconfig b/configs/sheevaplug_defconfig
index 9b41460..a51abc7 100644
--- a/configs/sheevaplug_defconfig
+++ b/configs/sheevaplug_defconfig
@@ -10,3 +10,4 @@ CONFIG_CMD_USB=y
 CONFIG_CMD_DHCP=y
 CONFIG_CMD_PING=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/silk_defconfig b/configs/silk_defconfig
index 836beff..67fca2a 100644
--- a/configs/silk_defconfig
+++ b/configs/silk_defconfig
@@ -20,3 +20,4 @@ CONFIG_SH_SDHI=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_BAR=y
 CONFIG_SPI_FLASH_SPANSION=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/smartweb_defconfig b/configs/smartweb_defconfig
index ee4340f..d1127b0 100644
--- a/configs/smartweb_defconfig
+++ b/configs/smartweb_defconfig
@@ -4,3 +4,4 @@ CONFIG_TARGET_SMARTWEB=y
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9260"
 CONFIG_SYS_PROMPT="U-Boot> "
+CONFIG_OF_LIBFDT=y
diff --git a/configs/sniper_defconfig b/configs/sniper_defconfig
index 0474deb..fd59a97 100644
--- a/configs/sniper_defconfig
+++ b/configs/sniper_defconfig
@@ -9,3 +9,4 @@ CONFIG_SYS_PROMPT="Sniper # "
 CONFIG_SYS_NS16550=y
 CONFIG_USB=y
 CONFIG_USB_MUSB_GADGET=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/socrates_defconfig b/configs/socrates_defconfig
index 19cc388..39e7ffb 100644
--- a/configs/socrates_defconfig
+++ b/configs/socrates_defconfig
@@ -4,3 +4,4 @@ CONFIG_TARGET_SOCRATES=y
 # CONFIG_CMD_SETEXPR is not set
 # CONFIG_CMD_NFS is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/stm32f429-discovery_defconfig b/configs/stm32f429-discovery_defconfig
index fb330e2..00d105b 100644
--- a/configs/stm32f429-discovery_defconfig
+++ b/configs/stm32f429-discovery_defconfig
@@ -4,3 +4,4 @@ CONFIG_STM32F4=y
 CONFIG_TARGET_STM32F429_DISCOVERY=y
 CONFIG_SYS_PROMPT="U-Boot > "
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/stout_defconfig b/configs/stout_defconfig
index d353495..c5af189 100644
--- a/configs/stout_defconfig
+++ b/configs/stout_defconfig
@@ -20,3 +20,4 @@ CONFIG_SH_SDHI=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_BAR=y
 CONFIG_SPI_FLASH_SPANSION=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/strider_con_defconfig b/configs/strider_con_defconfig
index 59fdc7b..6369d97 100644
--- a/configs/strider_con_defconfig
+++ b/configs/strider_con_defconfig
@@ -6,3 +6,4 @@ CONFIG_AUTOBOOT_KEYED=y
 CONFIG_AUTOBOOT_STOP_STR=" "
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/strider_cpu_defconfig b/configs/strider_cpu_defconfig
index a0584b8..3ca0f30 100644
--- a/configs/strider_cpu_defconfig
+++ b/configs/strider_cpu_defconfig
@@ -6,3 +6,4 @@ CONFIG_AUTOBOOT_KEYED=y
 CONFIG_AUTOBOOT_STOP_STR=" "
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/suvd3_defconfig b/configs/suvd3_defconfig
index b0b8390f..737d0ee 100644
--- a/configs/suvd3_defconfig
+++ b/configs/suvd3_defconfig
@@ -3,3 +3,4 @@ CONFIG_MPC83xx=y
 CONFIG_TARGET_SUVD3=y
 CONFIG_SYS_EXTRA_OPTIONS="SUVD3"
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/sycamore_defconfig b/configs/sycamore_defconfig
index 29b3d2b..2fb075d 100644
--- a/configs/sycamore_defconfig
+++ b/configs/sycamore_defconfig
@@ -2,3 +2,4 @@ CONFIG_PPC=y
 CONFIG_4xx=y
 CONFIG_TARGET_WALNUT=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/t3corp_defconfig b/configs/t3corp_defconfig
index 75eeda6..fe3e400 100644
--- a/configs/t3corp_defconfig
+++ b/configs/t3corp_defconfig
@@ -2,3 +2,4 @@ CONFIG_PPC=y
 CONFIG_4xx=y
 CONFIG_TARGET_T3CORP=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/tao3530_defconfig b/configs/tao3530_defconfig
index af4292b..c1eb34c 100644
--- a/configs/tao3530_defconfig
+++ b/configs/tao3530_defconfig
@@ -9,3 +9,4 @@ CONFIG_SYS_PROMPT="TAO-3530 # "
 # CONFIG_CMD_FPGA is not set
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/taurus_defconfig b/configs/taurus_defconfig
index 3f08cc1..0af7f2d 100644
--- a/configs/taurus_defconfig
+++ b/configs/taurus_defconfig
@@ -14,3 +14,4 @@ CONFIG_SYS_PROMPT="U-Boot> "
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_USE_TINY_PRINTF=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/tbs2910_defconfig b/configs/tbs2910_defconfig
index c56c412..9693556 100644
--- a/configs/tbs2910_defconfig
+++ b/configs/tbs2910_defconfig
@@ -7,3 +7,4 @@ CONFIG_SYS_PROMPT="Matrix U-Boot> "
 CONFIG_CMD_GPIO=y
 CONFIG_DM=y
 CONFIG_DM_THERMAL=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/thuban_defconfig b/configs/thuban_defconfig
index 13aade6..666cf5e 100644
--- a/configs/thuban_defconfig
+++ b/configs/thuban_defconfig
@@ -12,3 +12,4 @@ CONFIG_CMD_GPIO=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_WINBOND=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/ti814x_evm_defconfig b/configs/ti814x_evm_defconfig
index 0c9a9d1..52d3a65 100644
--- a/configs/ti814x_evm_defconfig
+++ b/configs/ti814x_evm_defconfig
@@ -6,3 +6,4 @@ CONFIG_SYS_PROMPT="U-Boot# "
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/ti816x_evm_defconfig b/configs/ti816x_evm_defconfig
index 78f11f5..13a2c6e 100644
--- a/configs/ti816x_evm_defconfig
+++ b/configs/ti816x_evm_defconfig
@@ -6,3 +6,4 @@ CONFIG_SYS_PROMPT="u-boot/ti816x# "
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/titanium_defconfig b/configs/titanium_defconfig
index e7f594c..6c93616 100644
--- a/configs/titanium_defconfig
+++ b/configs/titanium_defconfig
@@ -7,3 +7,4 @@ CONFIG_SYS_PROMPT="Titanium > "
 # CONFIG_CMD_FLASH is not set
 CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/tqma6q_mba6_mmc_defconfig b/configs/tqma6q_mba6_mmc_defconfig
index cdc51c0..500c96e 100644
--- a/configs/tqma6q_mba6_mmc_defconfig
+++ b/configs/tqma6q_mba6_mmc_defconfig
@@ -6,3 +6,4 @@ CONFIG_TARGET_TQMA6=y
 CONFIG_CMD_GPIO=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/tqma6q_mba6_spi_defconfig b/configs/tqma6q_mba6_spi_defconfig
index 1408be3..e9e01f5 100644
--- a/configs/tqma6q_mba6_spi_defconfig
+++ b/configs/tqma6q_mba6_spi_defconfig
@@ -7,3 +7,4 @@ CONFIG_TQMA6X_SPI_BOOT=y
 CONFIG_CMD_GPIO=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/tqma6s_mba6_mmc_defconfig b/configs/tqma6s_mba6_mmc_defconfig
index 4e5428b..148c5e9 100644
--- a/configs/tqma6s_mba6_mmc_defconfig
+++ b/configs/tqma6s_mba6_mmc_defconfig
@@ -7,3 +7,4 @@ CONFIG_TQMA6S=y
 CONFIG_CMD_GPIO=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/tqma6s_mba6_spi_defconfig b/configs/tqma6s_mba6_spi_defconfig
index 04740ec..4850c19 100644
--- a/configs/tqma6s_mba6_spi_defconfig
+++ b/configs/tqma6s_mba6_spi_defconfig
@@ -8,3 +8,4 @@ CONFIG_TQMA6X_SPI_BOOT=y
 CONFIG_CMD_GPIO=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/tqma6s_wru4_mmc_defconfig b/configs/tqma6s_wru4_mmc_defconfig
index 1d47006..1402c8d 100644
--- a/configs/tqma6s_wru4_mmc_defconfig
+++ b/configs/tqma6s_wru4_mmc_defconfig
@@ -9,3 +9,4 @@ CONFIG_AUTOBOOT_ENCRYPTION=y
 CONFIG_AUTOBOOT_STOP_STR_SHA256="36a9e7f1c95b82ffb99743e0c5c4ce95d83c9a430aac59f84ef3cbfab6145068"
 CONFIG_CMD_GPIO=y
 CONFIG_PCA9551_LED=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/tricorder_defconfig b/configs/tricorder_defconfig
index c32ef86..bdd9c89 100644
--- a/configs/tricorder_defconfig
+++ b/configs/tricorder_defconfig
@@ -11,3 +11,4 @@ CONFIG_SYS_PROMPT="OMAP3 Tricorder # "
 # CONFIG_CMD_NET is not set
 # CONFIG_CMD_NFS is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/tricorder_flash_defconfig b/configs/tricorder_flash_defconfig
index 1cf3928..3bac8e3 100644
--- a/configs/tricorder_flash_defconfig
+++ b/configs/tricorder_flash_defconfig
@@ -11,3 +11,4 @@ CONFIG_SYS_EXTRA_OPTIONS="FLASHCARD"
 # CONFIG_CMD_NET is not set
 # CONFIG_CMD_NFS is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/ts4800_defconfig b/configs/ts4800_defconfig
index a2fa541..1b30033 100644
--- a/configs/ts4800_defconfig
+++ b/configs/ts4800_defconfig
@@ -2,3 +2,4 @@ CONFIG_ARM=y
 CONFIG_TARGET_TS4800=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/tseries_mmc_defconfig b/configs/tseries_mmc_defconfig
index 7518774..54f4c44 100644
--- a/configs/tseries_mmc_defconfig
+++ b/configs/tseries_mmc_defconfig
@@ -17,3 +17,4 @@ CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
 # CONFIG_CMD_NFS is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/tseries_nand_defconfig b/configs/tseries_nand_defconfig
index 65d514a..573c362 100644
--- a/configs/tseries_nand_defconfig
+++ b/configs/tseries_nand_defconfig
@@ -17,3 +17,4 @@ CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
 # CONFIG_CMD_NFS is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/tseries_spi_defconfig b/configs/tseries_spi_defconfig
index 11e4e6b..1504049 100644
--- a/configs/tseries_spi_defconfig
+++ b/configs/tseries_spi_defconfig
@@ -19,3 +19,4 @@ CONFIG_CMD_GPIO=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/tuge1_defconfig b/configs/tuge1_defconfig
index 1030dc7..f24a9d8 100644
--- a/configs/tuge1_defconfig
+++ b/configs/tuge1_defconfig
@@ -3,3 +3,4 @@ CONFIG_MPC83xx=y
 CONFIG_TARGET_TUXX1=y
 CONFIG_SYS_EXTRA_OPTIONS="TUGE1"
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/tuxx1_defconfig b/configs/tuxx1_defconfig
index 7675fb3..da69df4 100644
--- a/configs/tuxx1_defconfig
+++ b/configs/tuxx1_defconfig
@@ -3,3 +3,4 @@ CONFIG_MPC83xx=y
 CONFIG_TARGET_TUXX1=y
 CONFIG_SYS_EXTRA_OPTIONS="TUXX1"
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/twister_defconfig b/configs/twister_defconfig
index e721edb..adb51be 100644
--- a/configs/twister_defconfig
+++ b/configs/twister_defconfig
@@ -8,3 +8,4 @@ CONFIG_SYS_PROMPT="twister => "
 CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/udoo_defconfig b/configs/udoo_defconfig
index 0a7f70a..3f53749 100644
--- a/configs/udoo_defconfig
+++ b/configs/udoo_defconfig
@@ -6,3 +6,4 @@ CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/imx-common/spl_sd.cfg,MX6QDL"
 CONFIG_CMD_GPIO=y
 CONFIG_DM=y
 CONFIG_DM_THERMAL=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/usb_a9263_dataflash_defconfig b/configs/usb_a9263_dataflash_defconfig
index edf2b83..e90dd66 100644
--- a/configs/usb_a9263_dataflash_defconfig
+++ b/configs/usb_a9263_dataflash_defconfig
@@ -11,3 +11,4 @@ CONFIG_SYS_PROMPT="U-Boot> "
 # CONFIG_CMD_FPGA is not set
 # CONFIG_CMD_ITEST is not set
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/usbarmory_defconfig b/configs/usbarmory_defconfig
index c25d103..68f78b3 100644
--- a/configs/usbarmory_defconfig
+++ b/configs/usbarmory_defconfig
@@ -3,3 +3,4 @@ CONFIG_ARCH_MX5=y
 CONFIG_TARGET_USBARMORY=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/ve8313_defconfig b/configs/ve8313_defconfig
index 5a8ba8e..076a6de 100644
--- a/configs/ve8313_defconfig
+++ b/configs/ve8313_defconfig
@@ -3,3 +3,4 @@ CONFIG_MPC83xx=y
 CONFIG_TARGET_VE8313=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/vexpress_aemv8a_dram_defconfig b/configs/vexpress_aemv8a_dram_defconfig
index cad4466..0b5799a 100644
--- a/configs/vexpress_aemv8a_dram_defconfig
+++ b/configs/vexpress_aemv8a_dram_defconfig
@@ -16,3 +16,4 @@ CONFIG_SYS_PROMPT="VExpress64# "
 # CONFIG_CMD_NFS is not set
 # CONFIG_CMD_MISC is not set
 CONFIG_DM=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/vexpress_aemv8a_juno_defconfig b/configs/vexpress_aemv8a_juno_defconfig
index bc3e05a..07036cc 100644
--- a/configs/vexpress_aemv8a_juno_defconfig
+++ b/configs/vexpress_aemv8a_juno_defconfig
@@ -16,3 +16,4 @@ CONFIG_SYS_PROMPT="VExpress64# "
 # CONFIG_CMD_NFS is not set
 # CONFIG_CMD_MISC is not set
 CONFIG_DM=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/vexpress_aemv8a_semi_defconfig b/configs/vexpress_aemv8a_semi_defconfig
index e899b90..16d6796 100644
--- a/configs/vexpress_aemv8a_semi_defconfig
+++ b/configs/vexpress_aemv8a_semi_defconfig
@@ -16,3 +16,4 @@ CONFIG_SYS_PROMPT="VExpress64# "
 # CONFIG_CMD_NFS is not set
 # CONFIG_CMD_MISC is not set
 CONFIG_DM=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/vexpress_ca15_tc2_defconfig b/configs/vexpress_ca15_tc2_defconfig
index a3ff78a..0016030 100644
--- a/configs/vexpress_ca15_tc2_defconfig
+++ b/configs/vexpress_ca15_tc2_defconfig
@@ -14,3 +14,4 @@ CONFIG_TARGET_VEXPRESS_CA15_TC2=y
 # CONFIG_CMD_SETEXPR is not set
 # CONFIG_CMD_NFS is not set
 # CONFIG_CMD_MISC is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/vexpress_ca5x2_defconfig b/configs/vexpress_ca5x2_defconfig
index ce5da91..b260401 100644
--- a/configs/vexpress_ca5x2_defconfig
+++ b/configs/vexpress_ca5x2_defconfig
@@ -14,3 +14,4 @@ CONFIG_TARGET_VEXPRESS_CA5X2=y
 # CONFIG_CMD_SETEXPR is not set
 # CONFIG_CMD_NFS is not set
 # CONFIG_CMD_MISC is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/vexpress_ca9x4_defconfig b/configs/vexpress_ca9x4_defconfig
index 2947fc1..4a64339 100644
--- a/configs/vexpress_ca9x4_defconfig
+++ b/configs/vexpress_ca9x4_defconfig
@@ -14,3 +14,4 @@ CONFIG_TARGET_VEXPRESS_CA9X4=y
 # CONFIG_CMD_SETEXPR is not set
 # CONFIG_CMD_NFS is not set
 # CONFIG_CMD_MISC is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/vf610twr_defconfig b/configs/vf610twr_defconfig
index d51c93b..cb5b9e5 100644
--- a/configs/vf610twr_defconfig
+++ b/configs/vf610twr_defconfig
@@ -7,3 +7,4 @@ CONFIG_NAND_VF610_NFC=y
 CONFIG_SYS_NAND_BUSWIDTH_16BIT=y
 CONFIG_SPI_FLASH=y
 CONFIG_FSL_LPUART=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/vf610twr_nand_defconfig b/configs/vf610twr_nand_defconfig
index 299fa8f..903e3f8 100644
--- a/configs/vf610twr_nand_defconfig
+++ b/configs/vf610twr_nand_defconfig
@@ -7,3 +7,4 @@ CONFIG_NAND_VF610_NFC=y
 CONFIG_SYS_NAND_BUSWIDTH_16BIT=y
 CONFIG_SPI_FLASH=y
 CONFIG_FSL_LPUART=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/vme8349_defconfig b/configs/vme8349_defconfig
index 7a91da3..a3f9e9c 100644
--- a/configs/vme8349_defconfig
+++ b/configs/vme8349_defconfig
@@ -3,3 +3,4 @@ CONFIG_MPC83xx=y
 CONFIG_TARGET_VME8349=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/walnut_defconfig b/configs/walnut_defconfig
index 29b3d2b..2fb075d 100644
--- a/configs/walnut_defconfig
+++ b/configs/walnut_defconfig
@@ -2,3 +2,4 @@ CONFIG_PPC=y
 CONFIG_4xx=y
 CONFIG_TARGET_WALNUT=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/wandboard_defconfig b/configs/wandboard_defconfig
index f2c9cd2..f6bd308 100644
--- a/configs/wandboard_defconfig
+++ b/configs/wandboard_defconfig
@@ -8,3 +8,4 @@ CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/imx-common/spl_sd.cfg,MX6QDL"
 CONFIG_CMD_GPIO=y
 CONFIG_DM=y
 CONFIG_DM_THERMAL=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/warp_defconfig b/configs/warp_defconfig
index f112d33..959e29c 100644
--- a/configs/warp_defconfig
+++ b/configs/warp_defconfig
@@ -8,3 +8,4 @@ CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
 # CONFIG_CMD_NET is not set
 # CONFIG_CMD_NFS is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/wtk_defconfig b/configs/wtk_defconfig
index 7d4f754..5069487 100644
--- a/configs/wtk_defconfig
+++ b/configs/wtk_defconfig
@@ -3,3 +3,4 @@ CONFIG_8xx=y
 CONFIG_TARGET_TQM823L=y
 CONFIG_SYS_EXTRA_OPTIONS="LCD,SHARP_LQ065T9DR51U"
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/x600_defconfig b/configs/x600_defconfig
index 71dc7dc..881c080 100644
--- a/configs/x600_defconfig
+++ b/configs/x600_defconfig
@@ -10,3 +10,4 @@ CONFIG_CMD_GPIO=y
 CONFIG_NETDEVICES=y
 CONFIG_ETH_DESIGNWARE=y
 CONFIG_USE_TINY_PRINTF=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/xfi3_defconfig b/configs/xfi3_defconfig
index 3c7cb0d..437e018 100644
--- a/configs/xfi3_defconfig
+++ b/configs/xfi3_defconfig
@@ -5,3 +5,4 @@ CONFIG_SPL=y
 # CONFIG_CMD_FLASH is not set
 CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_LIBFDT=y
diff --git a/configs/xpedite517x_defconfig b/configs/xpedite517x_defconfig
index 07c4642..ab3a5fd 100644
--- a/configs/xpedite517x_defconfig
+++ b/configs/xpedite517x_defconfig
@@ -3,3 +3,4 @@ CONFIG_MPC86xx=y
 CONFIG_TARGET_XPEDITE517X=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/xpedite520x_defconfig b/configs/xpedite520x_defconfig
index 6a25b47..5b93e43 100644
--- a/configs/xpedite520x_defconfig
+++ b/configs/xpedite520x_defconfig
@@ -3,3 +3,4 @@ CONFIG_MPC85xx=y
 CONFIG_TARGET_XPEDITE520X=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/xpedite537x_defconfig b/configs/xpedite537x_defconfig
index 611f1b1..5f8a6e2 100644
--- a/configs/xpedite537x_defconfig
+++ b/configs/xpedite537x_defconfig
@@ -3,3 +3,4 @@ CONFIG_MPC85xx=y
 CONFIG_TARGET_XPEDITE537X=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/xpedite550x_defconfig b/configs/xpedite550x_defconfig
index 8f6b433..0c4fc6c 100644
--- a/configs/xpedite550x_defconfig
+++ b/configs/xpedite550x_defconfig
@@ -3,3 +3,4 @@ CONFIG_MPC85xx=y
 CONFIG_TARGET_XPEDITE550X=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/yellowstone_defconfig b/configs/yellowstone_defconfig
index 7f4144c..ef62cc6 100644
--- a/configs/yellowstone_defconfig
+++ b/configs/yellowstone_defconfig
@@ -3,3 +3,4 @@ CONFIG_4xx=y
 CONFIG_TARGET_YOSEMITE=y
 CONFIG_SYS_EXTRA_OPTIONS="YELLOWSTONE"
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/yosemite_defconfig b/configs/yosemite_defconfig
index cd852c2..9237996 100644
--- a/configs/yosemite_defconfig
+++ b/configs/yosemite_defconfig
@@ -3,3 +3,4 @@ CONFIG_4xx=y
 CONFIG_TARGET_YOSEMITE=y
 CONFIG_SYS_EXTRA_OPTIONS="YOSEMITE"
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/yucca_defconfig b/configs/yucca_defconfig
index c3e7a7a..fe77adc 100644
--- a/configs/yucca_defconfig
+++ b/configs/yucca_defconfig
@@ -2,3 +2,4 @@ CONFIG_PPC=y
 CONFIG_4xx=y
 CONFIG_TARGET_YUCCA=y
 CONFIG_SYS_NS16550=y
+CONFIG_OF_LIBFDT=y
diff --git a/include/config_distro_defaults.h b/include/config_distro_defaults.h
index 9d1de55..25651ad 100644
--- a/include/config_distro_defaults.h
+++ b/include/config_distro_defaults.h
@@ -41,8 +41,6 @@
 #define CONFIG_BOOTP_PXE_CLIENTARCH     0x9
 #endif
 
-#define CONFIG_OF_LIBFDT
-
 #ifdef CONFIG_ARM64
 #define CONFIG_CMD_BOOTI
 #else
diff --git a/include/configs/10m50_devboard.h b/include/configs/10m50_devboard.h
index 8dfe2a8..765151c 100644
--- a/include/configs/10m50_devboard.h
+++ b/include/configs/10m50_devboard.h
@@ -49,7 +49,6 @@
 /*
  * FDT options
  */
-#define CONFIG_OF_LIBFDT
 #define CONFIG_OF_BOARD_SETUP
 #define CONFIG_LMB
 
diff --git a/include/configs/3c120_devboard.h b/include/configs/3c120_devboard.h
index 2e94b69..7bb2d61 100644
--- a/include/configs/3c120_devboard.h
+++ b/include/configs/3c120_devboard.h
@@ -52,7 +52,6 @@
 /*
  * FDT options
  */
-#define CONFIG_OF_LIBFDT
 #define CONFIG_OF_BOARD_SETUP
 #define CONFIG_LMB
 
diff --git a/include/configs/B4860QDS.h b/include/configs/B4860QDS.h
index 9fb5cee..b3f32c8 100644
--- a/include/configs/B4860QDS.h
+++ b/include/configs/B4860QDS.h
@@ -504,7 +504,6 @@ unsigned long get_board_ddr_clk(void);
 #define CONFIG_SYS_PROMPT_HUSH_PS2 "> "
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT
 #define CONFIG_OF_BOARD_SETUP
 #define CONFIG_OF_STDOUT_VIA_ALIAS
 
diff --git a/include/configs/BSC9131RDB.h b/include/configs/BSC9131RDB.h
index 4b5ad0e..9ef1208 100644
--- a/include/configs/BSC9131RDB.h
+++ b/include/configs/BSC9131RDB.h
@@ -250,7 +250,6 @@ extern unsigned long get_sdram_size(void);
 /*
  * Pass open firmware flat tree
  */
-#define CONFIG_OF_LIBFDT
 #define CONFIG_OF_BOARD_SETUP
 #define CONFIG_OF_STDOUT_VIA_ALIAS
 
diff --git a/include/configs/BSC9132QDS.h b/include/configs/BSC9132QDS.h
index d0e5a25..dd02b27 100644
--- a/include/configs/BSC9132QDS.h
+++ b/include/configs/BSC9132QDS.h
@@ -434,7 +434,6 @@ combinations. this should be removed later
 /*
  * Pass open firmware flat tree
  */
-#define CONFIG_OF_LIBFDT
 #define CONFIG_OF_BOARD_SETUP
 #define CONFIG_OF_STDOUT_VIA_ALIAS
 
diff --git a/include/configs/C29XPCIE.h b/include/configs/C29XPCIE.h
index 16920c6..6310e63 100644
--- a/include/configs/C29XPCIE.h
+++ b/include/configs/C29XPCIE.h
@@ -399,7 +399,6 @@
 /*
  * Pass open firmware flat tree
  */
-#define CONFIG_OF_LIBFDT
 #define CONFIG_OF_BOARD_SETUP
 #define CONFIG_OF_STDOUT_VIA_ALIAS
 
diff --git a/include/configs/CPCI4052.h b/include/configs/CPCI4052.h
index 1e5285c..e5a50df 100644
--- a/include/configs/CPCI4052.h
+++ b/include/configs/CPCI4052.h
@@ -209,7 +209,6 @@
  */
 #define CONFIG_SYS_BOOTMAPSZ		(8 << 20)	/* Initial Memory map for Linux */
 
-#define CONFIG_OF_LIBFDT
 #define CONFIG_OF_BOARD_SETUP
 
 /*-----------------------------------------------------------------------
diff --git a/include/configs/MPC8308RDB.h b/include/configs/MPC8308RDB.h
index 955ce62..c1f914a 100644
--- a/include/configs/MPC8308RDB.h
+++ b/include/configs/MPC8308RDB.h
@@ -329,7 +329,6 @@
 #define CONFIG_SYS_HUSH_PARSER
 
 /* Pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT	1
 #define CONFIG_OF_BOARD_SETUP	1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
diff --git a/include/configs/MPC8313ERDB.h b/include/configs/MPC8313ERDB.h
index fa6dd6f..936a914 100644
--- a/include/configs/MPC8313ERDB.h
+++ b/include/configs/MPC8313ERDB.h
@@ -360,7 +360,6 @@
 #endif
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT	1
 #define CONFIG_OF_BOARD_SETUP	1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
diff --git a/include/configs/MPC8315ERDB.h b/include/configs/MPC8315ERDB.h
index ba952e3..d204564 100644
--- a/include/configs/MPC8315ERDB.h
+++ b/include/configs/MPC8315ERDB.h
@@ -306,7 +306,6 @@
 #define CONFIG_SYS_HUSH_PARSER
 
 /* Pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT	1
 #define CONFIG_OF_BOARD_SETUP	1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
diff --git a/include/configs/MPC8323ERDB.h b/include/configs/MPC8323ERDB.h
index a1d45d8..fb15d3b 100644
--- a/include/configs/MPC8323ERDB.h
+++ b/include/configs/MPC8323ERDB.h
@@ -228,7 +228,6 @@
 #define CONFIG_SYS_HUSH_PARSER
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT	1
 #define CONFIG_OF_BOARD_SETUP	1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
diff --git a/include/configs/MPC832XEMDS.h b/include/configs/MPC832XEMDS.h
index b3322ae..eac2bcf 100644
--- a/include/configs/MPC832XEMDS.h
+++ b/include/configs/MPC832XEMDS.h
@@ -308,7 +308,6 @@
 #define CONFIG_SYS_HUSH_PARSER
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT	1
 #define CONFIG_OF_BOARD_SETUP	1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
diff --git a/include/configs/MPC8349EMDS.h b/include/configs/MPC8349EMDS.h
index 71dcc6c..cad8478 100644
--- a/include/configs/MPC8349EMDS.h
+++ b/include/configs/MPC8349EMDS.h
@@ -334,7 +334,6 @@
 #define CONFIG_SYS_HUSH_PARSER
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT	1
 #define CONFIG_OF_BOARD_SETUP	1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
diff --git a/include/configs/MPC8349ITX.h b/include/configs/MPC8349ITX.h
index ded73b4..f058918 100644
--- a/include/configs/MPC8349ITX.h
+++ b/include/configs/MPC8349ITX.h
@@ -367,7 +367,6 @@ boards, we say we have two, but don't display a message if we find only one. */
 #define CONFIG_SYS_NS16550_COM2	(CONFIG_SYS_IMMR + 0x4600)
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT	1
 #define CONFIG_OF_BOARD_SETUP	1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
diff --git a/include/configs/MPC837XEMDS.h b/include/configs/MPC837XEMDS.h
index df47888..88867ea 100644
--- a/include/configs/MPC837XEMDS.h
+++ b/include/configs/MPC837XEMDS.h
@@ -322,7 +322,6 @@
 #define CONFIG_SYS_HUSH_PARSER
 
 /* Pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT	1
 #define CONFIG_OF_BOARD_SETUP	1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
diff --git a/include/configs/MPC837XERDB.h b/include/configs/MPC837XERDB.h
index e77848e..abd818e 100644
--- a/include/configs/MPC837XERDB.h
+++ b/include/configs/MPC837XERDB.h
@@ -348,7 +348,6 @@
 #define CONFIG_SYS_HUSH_PARSER
 
 /* Pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT	1
 #define CONFIG_OF_BOARD_SETUP	1
 #define CONFIG_OF_STDOUT_VIA_ALIAS 1
 
diff --git a/include/configs/MPC8536DS.h b/include/configs/MPC8536DS.h
index 294be3b..746883a 100644
--- a/include/configs/MPC8536DS.h
+++ b/include/configs/MPC8536DS.h
@@ -387,7 +387,6 @@
 /*
  * Pass open firmware flat tree
  */
-#define CONFIG_OF_LIBFDT		1
 #define CONFIG_OF_BOARD_SETUP		1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
diff --git a/include/configs/MPC8540ADS.h b/include/configs/MPC8540ADS.h
index 921180f..d616c0f 100644
--- a/include/configs/MPC8540ADS.h
+++ b/include/configs/MPC8540ADS.h
@@ -237,7 +237,6 @@
 #endif
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT		1
 #define CONFIG_OF_BOARD_SETUP		1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
diff --git a/include/configs/MPC8541CDS.h b/include/configs/MPC8541CDS.h
index d5805c1..830bd84 100644
--- a/include/configs/MPC8541CDS.h
+++ b/include/configs/MPC8541CDS.h
@@ -260,7 +260,6 @@ extern unsigned long get_clock_freq(void);
 #endif
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT		1
 #define CONFIG_OF_BOARD_SETUP		1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
diff --git a/include/configs/MPC8544DS.h b/include/configs/MPC8544DS.h
index 0fa5fd3..c1cd986 100644
--- a/include/configs/MPC8544DS.h
+++ b/include/configs/MPC8544DS.h
@@ -210,7 +210,6 @@ extern unsigned long get_board_sys_clk(unsigned long dummy);
 #define CONFIG_SYS_HUSH_PARSER
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT		1
 #define CONFIG_OF_BOARD_SETUP		1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
diff --git a/include/configs/MPC8548CDS.h b/include/configs/MPC8548CDS.h
index a84ebfd..1115af9 100644
--- a/include/configs/MPC8548CDS.h
+++ b/include/configs/MPC8548CDS.h
@@ -335,7 +335,6 @@ extern unsigned long get_clock_freq(void);
 #define CONFIG_SYS_HUSH_PARSER
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT		1
 #define CONFIG_OF_BOARD_SETUP		1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
diff --git a/include/configs/MPC8555CDS.h b/include/configs/MPC8555CDS.h
index 84b8174..7b82b9e 100644
--- a/include/configs/MPC8555CDS.h
+++ b/include/configs/MPC8555CDS.h
@@ -258,7 +258,6 @@ extern unsigned long get_clock_freq(void);
 #endif
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT		1
 #define CONFIG_OF_BOARD_SETUP		1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
diff --git a/include/configs/MPC8560ADS.h b/include/configs/MPC8560ADS.h
index 69ce13c..8d6e442 100644
--- a/include/configs/MPC8560ADS.h
+++ b/include/configs/MPC8560ADS.h
@@ -232,7 +232,6 @@
 #endif
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT		1
 #define CONFIG_OF_BOARD_SETUP		1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
diff --git a/include/configs/MPC8568MDS.h b/include/configs/MPC8568MDS.h
index 03ba806..c807303 100644
--- a/include/configs/MPC8568MDS.h
+++ b/include/configs/MPC8568MDS.h
@@ -243,7 +243,6 @@ extern unsigned long get_clock_freq(void);
 #endif
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT		1
 #define CONFIG_OF_BOARD_SETUP		1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
diff --git a/include/configs/MPC8569MDS.h b/include/configs/MPC8569MDS.h
index f86d10f..00c1e22 100644
--- a/include/configs/MPC8569MDS.h
+++ b/include/configs/MPC8569MDS.h
@@ -254,7 +254,6 @@ extern unsigned long get_clock_freq(void);
 #endif
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT		1
 #define CONFIG_OF_BOARD_SETUP		1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
diff --git a/include/configs/MPC8572DS.h b/include/configs/MPC8572DS.h
index b34a033..43ac8f3 100644
--- a/include/configs/MPC8572DS.h
+++ b/include/configs/MPC8572DS.h
@@ -383,7 +383,6 @@
 /*
  * Pass open firmware flat tree
  */
-#define CONFIG_OF_LIBFDT		1
 #define CONFIG_OF_BOARD_SETUP		1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
diff --git a/include/configs/MPC8610HPCD.h b/include/configs/MPC8610HPCD.h
index f8aef2e..13aa282 100644
--- a/include/configs/MPC8610HPCD.h
+++ b/include/configs/MPC8610HPCD.h
@@ -239,7 +239,6 @@
 /*
  * Pass open firmware flat tree to kernel
  */
-#define CONFIG_OF_LIBFDT		1
 #define CONFIG_OF_BOARD_SETUP		1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
diff --git a/include/configs/MPC8641HPCN.h b/include/configs/MPC8641HPCN.h
index a84db51..78471d7 100644
--- a/include/configs/MPC8641HPCN.h
+++ b/include/configs/MPC8641HPCN.h
@@ -275,7 +275,6 @@ extern unsigned long get_board_sys_clk(unsigned long dummy);
 /*
  * Pass open firmware flat tree to kernel
  */
-#define CONFIG_OF_LIBFDT		1
 #define CONFIG_OF_BOARD_SETUP		1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
diff --git a/include/configs/P1010RDB.h b/include/configs/P1010RDB.h
index f9776c0..0f32968 100644
--- a/include/configs/P1010RDB.h
+++ b/include/configs/P1010RDB.h
@@ -625,7 +625,6 @@ extern unsigned long get_sdram_size(void);
 /*
  * Pass open firmware flat tree
  */
-#define CONFIG_OF_LIBFDT
 #define CONFIG_OF_BOARD_SETUP
 #define CONFIG_OF_STDOUT_VIA_ALIAS
 
diff --git a/include/configs/P1022DS.h b/include/configs/P1022DS.h
index 6235bbb..3aa10d1 100644
--- a/include/configs/P1022DS.h
+++ b/include/configs/P1022DS.h
@@ -446,7 +446,6 @@
 /*
  * Pass open firmware flat tree
  */
-#define CONFIG_OF_LIBFDT
 #define CONFIG_OF_BOARD_SETUP
 #define CONFIG_OF_STDOUT_VIA_ALIAS
 
diff --git a/include/configs/P1023RDB.h b/include/configs/P1023RDB.h
index bc479f6..3943707 100644
--- a/include/configs/P1023RDB.h
+++ b/include/configs/P1023RDB.h
@@ -178,7 +178,6 @@ extern unsigned long get_clock_freq(void);
 /*
  * Pass open firmware flat tree
  */
-#define CONFIG_OF_LIBFDT
 #define CONFIG_OF_BOARD_SETUP
 #define CONFIG_OF_STDOUT_VIA_ALIAS
 
diff --git a/include/configs/P2041RDB.h b/include/configs/P2041RDB.h
index b2e51b5..12f78a4 100644
--- a/include/configs/P2041RDB.h
+++ b/include/configs/P2041RDB.h
@@ -340,7 +340,6 @@ unsigned long get_board_sys_clk(unsigned long dummy);
 #define CONFIG_SYS_HUSH_PARSER
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT
 #define CONFIG_OF_BOARD_SETUP
 #define CONFIG_OF_STDOUT_VIA_ALIAS
 
diff --git a/include/configs/PLU405.h b/include/configs/PLU405.h
index 4eb5fe1..71f0699 100644
--- a/include/configs/PLU405.h
+++ b/include/configs/PLU405.h
@@ -73,7 +73,6 @@
 #define CONFIG_CMD_EEPROM
 #define CONFIG_CMD_USB
 
-#define CONFIG_OF_LIBFDT
 #define CONFIG_OF_BOARD_SETUP
 
 #define CONFIG_MAC_PARTITION
diff --git a/include/configs/PMC405DE.h b/include/configs/PMC405DE.h
index ce0c49f..927162f 100644
--- a/include/configs/PMC405DE.h
+++ b/include/configs/PMC405DE.h
@@ -64,7 +64,6 @@
 #define CONFIG_CMD_PCI
 #define CONFIG_CMD_PING
 
-#define CONFIG_OF_LIBFDT
 #define CONFIG_OF_BOARD_SETUP
 
 #undef  CONFIG_WATCHDOG			/* watchdog disabled */
diff --git a/include/configs/PMC440.h b/include/configs/PMC440.h
index 05ad315..ad20117 100644
--- a/include/configs/PMC440.h
+++ b/include/configs/PMC440.h
@@ -408,7 +408,6 @@
 #endif
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT	1
 #define CONFIG_OF_BOARD_SETUP	1
 
 #define CONFIG_API		1
diff --git a/include/configs/T102xQDS.h b/include/configs/T102xQDS.h
index 951cbc4..d373194 100644
--- a/include/configs/T102xQDS.h
+++ b/include/configs/T102xQDS.h
@@ -535,7 +535,6 @@ unsigned long get_board_ddr_clk(void);
 #endif
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT
 #define CONFIG_OF_BOARD_SETUP
 #define CONFIG_OF_STDOUT_VIA_ALIAS
 
diff --git a/include/configs/T102xRDB.h b/include/configs/T102xRDB.h
index 4a0f5b2..394ff14 100644
--- a/include/configs/T102xRDB.h
+++ b/include/configs/T102xRDB.h
@@ -533,7 +533,6 @@ unsigned long get_board_ddr_clk(void);
 #endif
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT
 #define CONFIG_OF_BOARD_SETUP
 #define CONFIG_OF_STDOUT_VIA_ALIAS
 
diff --git a/include/configs/T1040QDS.h b/include/configs/T1040QDS.h
index 9e151da..3d43459 100644
--- a/include/configs/T1040QDS.h
+++ b/include/configs/T1040QDS.h
@@ -436,7 +436,6 @@ unsigned long get_board_ddr_clk(void);
 #endif
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT
 #define CONFIG_OF_BOARD_SETUP
 #define CONFIG_OF_STDOUT_VIA_ALIAS
 
diff --git a/include/configs/T104xRDB.h b/include/configs/T104xRDB.h
index da65f56..a1578cd 100644
--- a/include/configs/T104xRDB.h
+++ b/include/configs/T104xRDB.h
@@ -488,7 +488,6 @@ $(SRCTREE)/board/freescale/t104xrdb/t1042d4_rcw.cfg
 #endif
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT
 #define CONFIG_OF_BOARD_SETUP
 #define CONFIG_OF_STDOUT_VIA_ALIAS
 
diff --git a/include/configs/T208xQDS.h b/include/configs/T208xQDS.h
index a0cecc6..954ce81 100644
--- a/include/configs/T208xQDS.h
+++ b/include/configs/T208xQDS.h
@@ -460,7 +460,6 @@ unsigned long get_board_ddr_clk(void);
 #define CONFIG_SYS_PROMPT_HUSH_PS2 "> "
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT
 #define CONFIG_OF_BOARD_SETUP
 #define CONFIG_OF_STDOUT_VIA_ALIAS
 
diff --git a/include/configs/T208xRDB.h b/include/configs/T208xRDB.h
index 312b0eb..2c5ade2 100644
--- a/include/configs/T208xRDB.h
+++ b/include/configs/T208xRDB.h
@@ -420,7 +420,6 @@ unsigned long get_board_ddr_clk(void);
 #define CONFIG_SYS_PROMPT_HUSH_PS2 "> "
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT
 #define CONFIG_OF_BOARD_SETUP
 #define CONFIG_OF_STDOUT_VIA_ALIAS
 
diff --git a/include/configs/T4240RDB.h b/include/configs/T4240RDB.h
index 4a17f41..0c49aad 100644
--- a/include/configs/T4240RDB.h
+++ b/include/configs/T4240RDB.h
@@ -214,7 +214,6 @@
 #define CONFIG_SYS_PROMPT_HUSH_PS2 "> "
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT
 #define CONFIG_OF_BOARD_SETUP
 #define CONFIG_OF_STDOUT_VIA_ALIAS
 
diff --git a/include/configs/TQM5200.h b/include/configs/TQM5200.h
index 342fdfe..88aca17 100644
--- a/include/configs/TQM5200.h
+++ b/include/configs/TQM5200.h
@@ -730,7 +730,6 @@
  * Open firmware flat tree support
  *-----------------------------------------------------------------------
  */
-#define CONFIG_OF_LIBFDT	1
 #define CONFIG_OF_BOARD_SETUP	1
 
 #define OF_CPU			"PowerPC,5200 at 0"
diff --git a/include/configs/TQM823L.h b/include/configs/TQM823L.h
index 013e40e..03e1951 100644
--- a/include/configs/TQM823L.h
+++ b/include/configs/TQM823L.h
@@ -458,7 +458,6 @@
 			 MAMR_RLFA_1X	 | MAMR_WLFA_1X	   | MAMR_TLFA_4X)
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT	1
 #define CONFIG_OF_BOARD_SETUP	1
 #define CONFIG_HWCONFIG		1
 
diff --git a/include/configs/TQM823M.h b/include/configs/TQM823M.h
index fbb2f84..3982761 100644
--- a/include/configs/TQM823M.h
+++ b/include/configs/TQM823M.h
@@ -454,7 +454,6 @@
 			 MAMR_RLFA_1X	 | MAMR_WLFA_1X	   | MAMR_TLFA_4X)
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT	1
 #define CONFIG_OF_BOARD_SETUP	1
 #define CONFIG_HWCONFIG		1
 
diff --git a/include/configs/TQM834x.h b/include/configs/TQM834x.h
index 58a17f5..148590a 100644
--- a/include/configs/TQM834x.h
+++ b/include/configs/TQM834x.h
@@ -328,7 +328,6 @@
 #undef CONFIG_WATCHDOG		/* watchdog disabled */
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT	1
 #define CONFIG_OF_BOARD_SETUP	1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
diff --git a/include/configs/TQM850L.h b/include/configs/TQM850L.h
index 0077105..57c5fbb 100644
--- a/include/configs/TQM850L.h
+++ b/include/configs/TQM850L.h
@@ -442,7 +442,6 @@
 			 MAMR_RLFA_1X	 | MAMR_WLFA_1X	   | MAMR_TLFA_4X)
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT	1
 #define CONFIG_OF_BOARD_SETUP	1
 #define CONFIG_HWCONFIG		1
 
diff --git a/include/configs/TQM850M.h b/include/configs/TQM850M.h
index 4a443ed..ec786a4 100644
--- a/include/configs/TQM850M.h
+++ b/include/configs/TQM850M.h
@@ -444,7 +444,6 @@
 			 MAMR_RLFA_1X	 | MAMR_WLFA_1X	   | MAMR_TLFA_4X)
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT	1
 #define CONFIG_OF_BOARD_SETUP	1
 #define CONFIG_HWCONFIG		1
 
diff --git a/include/configs/TQM855L.h b/include/configs/TQM855L.h
index 3fbc1ad..879b4bf 100644
--- a/include/configs/TQM855L.h
+++ b/include/configs/TQM855L.h
@@ -450,7 +450,6 @@
 #define CONFIG_ETHPRIME		"SCC"
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT	1
 #define CONFIG_OF_BOARD_SETUP	1
 #define CONFIG_HWCONFIG		1
 
diff --git a/include/configs/TQM855M.h b/include/configs/TQM855M.h
index d2729d6..d65347f 100644
--- a/include/configs/TQM855M.h
+++ b/include/configs/TQM855M.h
@@ -481,7 +481,6 @@
 #define CONFIG_ETHPRIME		"SCC"
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT	1
 #define CONFIG_OF_BOARD_SETUP	1
 #define CONFIG_HWCONFIG		1
 
diff --git a/include/configs/TQM860L.h b/include/configs/TQM860L.h
index 764568d..e433ff0 100644
--- a/include/configs/TQM860L.h
+++ b/include/configs/TQM860L.h
@@ -449,7 +449,6 @@
 #define CONFIG_ETHPRIME		"SCC"
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT       1
 #define CONFIG_OF_BOARD_SETUP  1
 #define CONFIG_HWCONFIG		1
 
diff --git a/include/configs/TQM860M.h b/include/configs/TQM860M.h
index 0894f59..bd68913 100644
--- a/include/configs/TQM860M.h
+++ b/include/configs/TQM860M.h
@@ -454,7 +454,6 @@
 #define CONFIG_ETHPRIME		"SCC"
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT	1
 #define CONFIG_OF_BOARD_SETUP	1
 #define CONFIG_HWCONFIG		1
 
diff --git a/include/configs/TQM862L.h b/include/configs/TQM862L.h
index 9650b8d..31c9059 100644
--- a/include/configs/TQM862L.h
+++ b/include/configs/TQM862L.h
@@ -454,7 +454,6 @@
 #define CONFIG_ETHPRIME		"SCC"
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT	1
 #define CONFIG_OF_BOARD_SETUP	1
 #define CONFIG_HWCONFIG		1
 
diff --git a/include/configs/TQM862M.h b/include/configs/TQM862M.h
index 8b8db89..a68edd1 100644
--- a/include/configs/TQM862M.h
+++ b/include/configs/TQM862M.h
@@ -455,7 +455,6 @@
 #define CONFIG_ETHPRIME		"SCC"
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT	1
 #define CONFIG_OF_BOARD_SETUP	1
 #define CONFIG_HWCONFIG		1
 
diff --git a/include/configs/TQM866M.h b/include/configs/TQM866M.h
index a011d2e..b8bdde1 100644
--- a/include/configs/TQM866M.h
+++ b/include/configs/TQM866M.h
@@ -473,7 +473,6 @@
 #define CONFIG_ETHPRIME		"SCC"
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT	1
 #define CONFIG_OF_BOARD_SETUP	1
 #define CONFIG_HWCONFIG		1
 
diff --git a/include/configs/TQM885D.h b/include/configs/TQM885D.h
index 023736e..2725e39 100644
--- a/include/configs/TQM885D.h
+++ b/include/configs/TQM885D.h
@@ -473,7 +473,6 @@
 #define CONFIG_ETHPRIME		"SCC"
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT	1
 #define CONFIG_OF_BOARD_SETUP	1
 #define CONFIG_HWCONFIG		1
 
diff --git a/include/configs/UCP1020.h b/include/configs/UCP1020.h
index 2354009..3be2893 100644
--- a/include/configs/UCP1020.h
+++ b/include/configs/UCP1020.h
@@ -348,7 +348,6 @@
 /*
  * Pass open firmware flat tree
  */
-#define CONFIG_OF_LIBFDT
 #define CONFIG_OF_BOARD_SETUP
 #define CONFIG_OF_STDOUT_VIA_ALIAS
 
diff --git a/include/configs/VOM405.h b/include/configs/VOM405.h
index 6cbf1b7..3421cca 100644
--- a/include/configs/VOM405.h
+++ b/include/configs/VOM405.h
@@ -66,7 +66,6 @@
 #define CONFIG_CMD_PING
 #define CONFIG_CMD_EEPROM
 
-#define CONFIG_OF_LIBFDT
 #define CONFIG_OF_BOARD_SETUP
 
 #undef	CONFIG_WATCHDOG			/* watchdog disabled		*/
diff --git a/include/configs/a3m071.h b/include/configs/a3m071.h
index 4839ede..aeb2eff 100644
--- a/include/configs/a3m071.h
+++ b/include/configs/a3m071.h
@@ -96,7 +96,6 @@
 #endif
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT
 #define CONFIG_OF_BOARD_SETUP
 
 /* maximum size of the flat tree (8K) */
diff --git a/include/configs/a4m072.h b/include/configs/a4m072.h
index 0ff5164..cea8a72 100644
--- a/include/configs/a4m072.h
+++ b/include/configs/a4m072.h
@@ -354,7 +354,6 @@
  * Open firmware flat tree support
  *-----------------------------------------------------------------------
  */
-#define CONFIG_OF_LIBFDT	1
 #define CONFIG_OF_BOARD_SETUP	1
 
 #define OF_CPU			"PowerPC,5200 at 0"
diff --git a/include/configs/ac14xx.h b/include/configs/ac14xx.h
index 320be8f..6f34379 100644
--- a/include/configs/ac14xx.h
+++ b/include/configs/ac14xx.h
@@ -558,7 +558,6 @@
 #define CONFIG_ARP_TIMEOUT	200UL
 
 #define CONFIG_FIT		1
-#define CONFIG_OF_LIBFDT	1
 #define CONFIG_OF_BOARD_SETUP	1
 #define CONFIG_OF_SUPPORT_OLD_DEVICE_TREES	1
 
diff --git a/include/configs/am3517_evm.h b/include/configs/am3517_evm.h
index 23457d6..13d5f02 100644
--- a/include/configs/am3517_evm.h
+++ b/include/configs/am3517_evm.h
@@ -41,8 +41,6 @@
 
 #define CONFIG_MISC_INIT_R
 
-#define CONFIG_OF_LIBFDT
-
 #define CONFIG_CMDLINE_TAG		1	/* enable passing of ATAGs */
 #define CONFIG_SETUP_MEMORY_TAGS	1
 #define CONFIG_INITRD_TAG		1
diff --git a/include/configs/amcc-common.h b/include/configs/amcc-common.h
index 78d8044..594e314 100644
--- a/include/configs/amcc-common.h
+++ b/include/configs/amcc-common.h
@@ -125,7 +125,6 @@
 /*
  * Pass open firmware flat tree
  */
-#define CONFIG_OF_LIBFDT
 #define CONFIG_OF_BOARD_SETUP
 /* Update size in "reg" property of NOR FLASH device tree nodes */
 #define CONFIG_FDT_FIXUP_NOR_FLASH_SIZE
diff --git a/include/configs/apf27.h b/include/configs/apf27.h
index 5b286d2..018d586 100644
--- a/include/configs/apf27.h
+++ b/include/configs/apf27.h
@@ -161,8 +161,6 @@
 #define CONFIG_SETUP_MEMORY_TAGS	/* send memory definition to kernel */
 #define CONFIG_INITRD_TAG		/* send initrd params	*/
 
-#define CONFIG_OF_LIBFDT
-
 #define CONFIG_BOOTDELAY	5
 #define CONFIG_ZERO_BOOTDELAY_CHECK
 #define	CONFIG_BOOTFILE		__stringify(CONFIG_BOARD_NAME) "-linux.bin"
diff --git a/include/configs/arcangel4.h b/include/configs/arcangel4.h
index 63f61ae..8a860ee 100644
--- a/include/configs/arcangel4.h
+++ b/include/configs/arcangel4.h
@@ -41,9 +41,6 @@
 /*
  * Command line configuration
  */
-
-#define CONFIG_OF_LIBFDT
-
 #define CONFIG_AUTO_COMPLETE
 #define CONFIG_SYS_MAXARGS		16
 
diff --git a/include/configs/aria.h b/include/configs/aria.h
index c38bf3c..94f5717 100644
--- a/include/configs/aria.h
+++ b/include/configs/aria.h
@@ -572,7 +572,6 @@
 
 #define CONFIG_BOOTCOMMAND	"run flash_self"
 
-#define CONFIG_OF_LIBFDT	1
 #define CONFIG_OF_BOARD_SETUP	1
 #define CONFIG_OF_SUPPORT_OLD_DEVICE_TREES	1
 
diff --git a/include/configs/armadillo-800eva.h b/include/configs/armadillo-800eva.h
index dfbd60d..1ce9b9a 100644
--- a/include/configs/armadillo-800eva.h
+++ b/include/configs/armadillo-800eva.h
@@ -23,7 +23,6 @@
 #define CONFIG_CMD_DHCP
 #define CONFIG_CMD_BOOTZ
 
-#define CONFIG_OF_LIBFDT
 #define BOARD_LATE_INIT
 
 #define CONFIG_BAUDRATE		115200
diff --git a/include/configs/at91-sama5_common.h b/include/configs/at91-sama5_common.h
index 9db4a4f..9db3101 100644
--- a/include/configs/at91-sama5_common.h
+++ b/include/configs/at91-sama5_common.h
@@ -29,8 +29,6 @@
 
 #define CONFIG_ENV_VARS_UBOOT_CONFIG
 #define CONFIG_CMD_BOOTZ
-#define CONFIG_OF_LIBFDT		/* Device Tree support */
-
 
 /* general purpose I/O */
 #define CONFIG_AT91_GPIO
diff --git a/include/configs/at91rm9200ek.h b/include/configs/at91rm9200ek.h
index 9274024..5903f7c 100644
--- a/include/configs/at91rm9200ek.h
+++ b/include/configs/at91rm9200ek.h
@@ -59,7 +59,6 @@
 #define CONFIG_BOARD_EARLY_INIT_F
 
 #define CONFIG_CMD_BOOTZ
-#define CONFIG_OF_LIBFDT
 
 
 /*
diff --git a/include/configs/at91sam9260ek.h b/include/configs/at91sam9260ek.h
index cc3e69c..7820295 100644
--- a/include/configs/at91sam9260ek.h
+++ b/include/configs/at91sam9260ek.h
@@ -46,8 +46,6 @@
 #define CONFIG_DISPLAY_CPUINFO
 
 #define CONFIG_CMD_BOOTZ
-#define CONFIG_OF_LIBFDT
-
 
 /* general purpose I/O */
 #define CONFIG_ATMEL_LEGACY		/* required until (g)pio is fixed */
diff --git a/include/configs/at91sam9261ek.h b/include/configs/at91sam9261ek.h
index 64fb38b..c7ba9eb 100644
--- a/include/configs/at91sam9261ek.h
+++ b/include/configs/at91sam9261ek.h
@@ -31,9 +31,6 @@
 
 #define CONFIG_DISPLAY_CPUINFO
 
-#define CONFIG_OF_LIBFDT
-
-
 #define CONFIG_ATMEL_LEGACY
 #define CONFIG_SYS_TEXT_BASE		0x21f00000
 
diff --git a/include/configs/at91sam9263ek.h b/include/configs/at91sam9263ek.h
index 89ee9fe..c826427 100644
--- a/include/configs/at91sam9263ek.h
+++ b/include/configs/at91sam9263ek.h
@@ -46,8 +46,6 @@
 #define CONFIG_DISPLAY_CPUINFO
 
 #define CONFIG_CMD_BOOTZ
-#define CONFIG_OF_LIBFDT
-
 
 /*
  * Hardware drivers
diff --git a/include/configs/at91sam9m10g45ek.h b/include/configs/at91sam9m10g45ek.h
index cc42c90..d4baf48 100644
--- a/include/configs/at91sam9m10g45ek.h
+++ b/include/configs/at91sam9m10g45ek.h
@@ -31,8 +31,6 @@
 #define CONFIG_DISPLAY_CPUINFO
 
 #define CONFIG_CMD_BOOTZ
-#define CONFIG_OF_LIBFDT
-
 
 /* general purpose I/O */
 #define CONFIG_ATMEL_LEGACY		/* required until (g)pio is fixed */
diff --git a/include/configs/at91sam9n12ek.h b/include/configs/at91sam9n12ek.h
index ba91d1f..14a8436 100644
--- a/include/configs/at91sam9n12ek.h
+++ b/include/configs/at91sam9n12ek.h
@@ -30,8 +30,6 @@
 #define CONFIG_BOARD_EARLY_INIT_F
 #define CONFIG_DISPLAY_CPUINFO
 
-#define CONFIG_OF_LIBFDT
-
 /* general purpose I/O */
 #define CONFIG_AT91_GPIO
 
diff --git a/include/configs/at91sam9rlek.h b/include/configs/at91sam9rlek.h
index a7a0502..0d45354 100644
--- a/include/configs/at91sam9rlek.h
+++ b/include/configs/at91sam9rlek.h
@@ -32,8 +32,6 @@
 #define CONFIG_DISPLAY_CPUINFO
 
 #define CONFIG_CMD_BOOTZ
-#define CONFIG_OF_LIBFDT
-
 
 #define CONFIG_ATMEL_LEGACY
 #define CONFIG_AT91_GPIO		1
diff --git a/include/configs/at91sam9x5ek.h b/include/configs/at91sam9x5ek.h
index 45bb861..cd91a7b 100644
--- a/include/configs/at91sam9x5ek.h
+++ b/include/configs/at91sam9x5ek.h
@@ -27,8 +27,6 @@
 #define CONFIG_DISPLAY_CPUINFO
 
 #define CONFIG_CMD_BOOTZ
-#define CONFIG_OF_LIBFDT
-
 
 /* general purpose I/O */
 #define CONFIG_ATMEL_LEGACY		/* required until (g)pio is fixed */
diff --git a/include/configs/axs101.h b/include/configs/axs101.h
index 98fff63..006ddb3 100644
--- a/include/configs/axs101.h
+++ b/include/configs/axs101.h
@@ -39,8 +39,6 @@
 #define CONFIG_BOARD_TYPES
 #define CONFIG_BOARD_EARLY_INIT_F
 
-#define CONFIG_OF_LIBFDT
-
 /*
  * NAND Flash configuration
  */
diff --git a/include/configs/bcm_ep_board.h b/include/configs/bcm_ep_board.h
index 305864f..3827ecf 100644
--- a/include/configs/bcm_ep_board.h
+++ b/include/configs/bcm_ep_board.h
@@ -85,9 +85,6 @@
 #define CONFIG_CMD_FAT
 #define CONFIG_FAT_WRITE
 
-/* Enable devicetree support */
-#define CONFIG_OF_LIBFDT
-
 /* SHA hashing */
 #define CONFIG_CMD_HASH
 #define CONFIG_HASH_VERIFY
diff --git a/include/configs/cm5200.h b/include/configs/cm5200.h
index 69b2674..dd9a424 100644
--- a/include/configs/cm5200.h
+++ b/include/configs/cm5200.h
@@ -315,7 +315,6 @@
 /*
  * Flat Device Tree support
  */
-#define CONFIG_OF_LIBFDT	1
 #define CONFIG_OF_BOARD_SETUP	1
 #define OF_CPU			"PowerPC,5200 at 0"
 #define OF_SOC			"soc5200 at f0000000"
diff --git a/include/configs/cm_t35.h b/include/configs/cm_t35.h
index 2dc745e..26e082a 100644
--- a/include/configs/cm_t35.h
+++ b/include/configs/cm_t35.h
@@ -46,8 +46,6 @@
 
 #define CONFIG_MISC_INIT_R
 
-#define CONFIG_OF_LIBFDT		1
-
 #define CONFIG_CMDLINE_TAG		/* enable passing of ATAGs */
 #define CONFIG_SETUP_MEMORY_TAGS
 #define CONFIG_INITRD_TAG
diff --git a/include/configs/cm_t3517.h b/include/configs/cm_t3517.h
index 0aefec8..89f34a2 100644
--- a/include/configs/cm_t3517.h
+++ b/include/configs/cm_t3517.h
@@ -49,7 +49,6 @@
 
 #define CONFIG_MISC_INIT_R
 
-#define CONFIG_OF_LIBFDT
 /*
  * The early kernel mapping on ARM currently only maps from the base of DRAM
  * to the end of the kernel image.  The kernel is loaded at DRAM base + 0x8000.
diff --git a/include/configs/cm_t54.h b/include/configs/cm_t54.h
index 6d57cd6..42d54a4 100644
--- a/include/configs/cm_t54.h
+++ b/include/configs/cm_t54.h
@@ -19,7 +19,6 @@
 #undef CONFIG_SPL_OS_BOOT
 
 /* Device Tree defines */
-#define CONFIG_OF_LIBFDT
 #define CONFIG_OF_BOARD_SETUP
 
 /* EEPROM related defines */
diff --git a/include/configs/colibri_pxa270.h b/include/configs/colibri_pxa270.h
index 0fc24a0..e8851e7 100644
--- a/include/configs/colibri_pxa270.h
+++ b/include/configs/colibri_pxa270.h
@@ -41,7 +41,6 @@
 #define	CONFIG_CMDLINE_TAG
 #define	CONFIG_SETUP_MEMORY_TAGS
 #define	CONFIG_LZMA			/* LZMA compression support */
-#define	CONFIG_OF_LIBFDT
 
 /*
  * Serial Console Configuration
diff --git a/include/configs/colibri_vf.h b/include/configs/colibri_vf.h
index 5aed3a5..76c3121 100644
--- a/include/configs/colibri_vf.h
+++ b/include/configs/colibri_vf.h
@@ -224,7 +224,6 @@
 #define CONFIG_ENV_OFFSET		(12 * 64 * 2048)
 #endif
 
-#define CONFIG_OF_LIBFDT
 #define CONFIG_CMD_BOOTZ
 
 #define CONFIG_SYS_NO_FLASH
diff --git a/include/configs/controlcenterd.h b/include/configs/controlcenterd.h
index 641aa7c..2e9b910 100644
--- a/include/configs/controlcenterd.h
+++ b/include/configs/controlcenterd.h
@@ -403,7 +403,6 @@
 /*
  * Pass open firmware flat tree
  */
-#define CONFIG_OF_LIBFDT
 #define CONFIG_OF_BOARD_SETUP
 #define CONFIG_OF_STDOUT_VIA_ALIAS
 
diff --git a/include/configs/corenet_ds.h b/include/configs/corenet_ds.h
index aef37dd..f393f80 100644
--- a/include/configs/corenet_ds.h
+++ b/include/configs/corenet_ds.h
@@ -345,7 +345,6 @@
 #define CONFIG_SYS_HUSH_PARSER
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT
 #define CONFIG_OF_BOARD_SETUP
 #define CONFIG_OF_STDOUT_VIA_ALIAS
 
diff --git a/include/configs/corvus.h b/include/configs/corvus.h
index 97797e2..a1fd93f 100644
--- a/include/configs/corvus.h
+++ b/include/configs/corvus.h
@@ -40,7 +40,6 @@
 #define CONFIG_DISPLAY_CPUINFO
 
 #define CONFIG_CMD_BOOTZ
-#define CONFIG_OF_LIBFDT
 
 /* general purpose I/O */
 #define CONFIG_ATMEL_LEGACY		/* required until (g)pio is fixed */
diff --git a/include/configs/cyrus.h b/include/configs/cyrus.h
index 99b3aef..3e0f100 100644
--- a/include/configs/cyrus.h
+++ b/include/configs/cyrus.h
@@ -232,7 +232,6 @@
 #define CONFIG_SYS_PROMPT_HUSH_PS2 "> "
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT
 #define CONFIG_OF_BOARD_SETUP
 
 /* new uImage format support */
diff --git a/include/configs/da850evm.h b/include/configs/da850evm.h
index 63abb80..24e55e8 100644
--- a/include/configs/da850evm.h
+++ b/include/configs/da850evm.h
@@ -270,7 +270,6 @@
 #define CONFIG_SYS_LONGHELP
 #define CONFIG_CRC32_VERIFY
 #define CONFIG_MX_CYCLIC
-#define CONFIG_OF_LIBFDT
 
 /*
  * Linux Information
diff --git a/include/configs/devkit3250.h b/include/configs/devkit3250.h
index 99d9148..a8ce7e1 100644
--- a/include/configs/devkit3250.h
+++ b/include/configs/devkit3250.h
@@ -152,7 +152,6 @@
 /*
  * Pass open firmware flat tree
  */
-#define CONFIG_OF_LIBFDT
 
 /*
  * Environment
diff --git a/include/configs/digsy_mtc.h b/include/configs/digsy_mtc.h
index f802c8d..09b1646 100644
--- a/include/configs/digsy_mtc.h
+++ b/include/configs/digsy_mtc.h
@@ -296,7 +296,6 @@
 #define CONFIG_SYS_FLASH_ERASE_TOUT	240000
 #define CONFIG_SYS_FLASH_WRITE_TOUT	500
 
-#define CONFIG_OF_LIBFDT  1
 #define CONFIG_OF_BOARD_SETUP	1
 
 #define OF_CPU			"PowerPC,5200 at 0"
diff --git a/include/configs/dns325.h b/include/configs/dns325.h
index c59a324..80f7a1e 100644
--- a/include/configs/dns325.h
+++ b/include/configs/dns325.h
@@ -91,11 +91,6 @@
 #define CONFIG_SYS_CONSOLE_IS_IN_ENV
 
 /*
- * Enable device tree support
- */
-#define CONFIG_OF_LIBFDT
-
-/*
  * Display cpu info at boot
  */
 #define CONFIG_DISPLAY_CPUINFO
diff --git a/include/configs/hikey.h b/include/configs/hikey.h
index 796861e..993b8b1 100644
--- a/include/configs/hikey.h
+++ b/include/configs/hikey.h
@@ -26,9 +26,6 @@
 
 #define CONFIG_IDENT_STRING		"hikey"
 
-/* Flat Device Tree Definitions */
-#define CONFIG_OF_LIBFDT
-
 #define CONFIG_BOARD_EARLY_INIT_F
 
 /* Physical Memory Map */
diff --git a/include/configs/hrcon.h b/include/configs/hrcon.h
index 801be68..d1e3ff7 100644
--- a/include/configs/hrcon.h
+++ b/include/configs/hrcon.h
@@ -318,7 +318,6 @@
 #define CONFIG_SYS_HUSH_PARSER
 
 /* Pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT		1
 #define CONFIG_OF_BOARD_SETUP		1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
diff --git a/include/configs/ids8313.h b/include/configs/ids8313.h
index 0a5a9f1..59d1f2f 100644
--- a/include/configs/ids8313.h
+++ b/include/configs/ids8313.h
@@ -430,7 +430,6 @@
 #define CONFIG_BOOTP_BOOTPATH
 #define CONFIG_BOOTP_BOOTFILESIZE
 /* pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT
 #define CONFIG_OF_BOARD_SETUP
 #define CONFIG_OF_STDOUT_VIA_ALIAS
 
diff --git a/include/configs/integrator-common.h b/include/configs/integrator-common.h
index 639a30a..43d2c3d 100644
--- a/include/configs/integrator-common.h
+++ b/include/configs/integrator-common.h
@@ -27,7 +27,6 @@
 
 #define CONFIG_CMDLINE_TAG		/* enable passing of ATAGs  */
 #define CONFIG_SETUP_MEMORY_TAGS
-#define CONFIG_OF_LIBFDT		/* enable passing a Device Tree */
 #define CONFIG_MISC_INIT_R		/* call misc_init_r during start up */
 
 /*
diff --git a/include/configs/ipek01.h b/include/configs/ipek01.h
index 637bbb3..3c32d12 100644
--- a/include/configs/ipek01.h
+++ b/include/configs/ipek01.h
@@ -170,7 +170,6 @@
 /*
  * Open firmware flat tree support
  */
-#define CONFIG_OF_LIBFDT	1
 #define CONFIG_OF_BOARD_SETUP	1
 
 #define OF_CPU			"PowerPC,5200 at 0"
diff --git a/include/configs/jupiter.h b/include/configs/jupiter.h
index ba96d97..86470a0 100644
--- a/include/configs/jupiter.h
+++ b/include/configs/jupiter.h
@@ -134,7 +134,6 @@
 
 #if 0
 /* pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT	1
 #define CONFIG_OF_BOARD_SETUP	1
 
 #define OF_CPU			"PowerPC,5200 at 0"
diff --git a/include/configs/km/km-powerpc.h b/include/configs/km/km-powerpc.h
index eba7479..d2cc078 100644
--- a/include/configs/km/km-powerpc.h
+++ b/include/configs/km/km-powerpc.h
@@ -18,7 +18,6 @@
 #define CONFIG_JFFS2_CMDLINE
 
 /* Pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT
 #define CONFIG_OF_BOARD_SETUP
 
 /* standard km ethernet_present for piggy */
diff --git a/include/configs/km/km_arm.h b/include/configs/km/km_arm.h
index d1f0b12..dfc1c7e 100644
--- a/include/configs/km/km_arm.h
+++ b/include/configs/km/km_arm.h
@@ -93,9 +93,6 @@
 #define CONFIG_SKIP_LOWLEVEL_INIT	/* disable board lowlevel_init */
 #define CONFIG_MISC_INIT_R
 
-/* Pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT
-
 /*
  * NS16550 Configuration
  */
diff --git a/include/configs/km/kmp204x-common.h b/include/configs/km/kmp204x-common.h
index 6860ad2..ebfb54e 100644
--- a/include/configs/km/kmp204x-common.h
+++ b/include/configs/km/kmp204x-common.h
@@ -259,7 +259,6 @@ unsigned long get_board_sys_clk(unsigned long dummy);
 #define CONFIG_SYS_HUSH_PARSER
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT
 #define CONFIG_OF_BOARD_SETUP
 #define CONFIG_OF_STDOUT_VIA_ALIAS
 
diff --git a/include/configs/kwb.h b/include/configs/kwb.h
index 45253b8..032fd82 100644
--- a/include/configs/kwb.h
+++ b/include/configs/kwb.h
@@ -109,7 +109,6 @@ BUR_COMMON_ENV \
 #undef CONFIG_CMD_CRC32
 
 /* Support both device trees and ATAGs. */
-#define CONFIG_OF_LIBFDT
 #define CONFIG_CMDLINE_TAG
 #define CONFIG_SETUP_MEMORY_TAGS
 #define CONFIG_INITRD_TAG
diff --git a/include/configs/kzm9g.h b/include/configs/kzm9g.h
index 94b0f03..8b142d2 100644
--- a/include/configs/kzm9g.h
+++ b/include/configs/kzm9g.h
@@ -21,7 +21,6 @@
 #define CONFIG_DISPLAY_CPUINFO
 #define CONFIG_DISPLAY_BOARDINFO
 #define CONFIG_BOARD_EARLY_INIT_F
-#define CONFIG_OF_LIBFDT
 
 #define CONFIG_CMDLINE_TAG
 #define CONFIG_SETUP_MEMORY_TAGS
diff --git a/include/configs/lacie_kw.h b/include/configs/lacie_kw.h
index f8cae40..842169d 100644
--- a/include/configs/lacie_kw.h
+++ b/include/configs/lacie_kw.h
@@ -176,11 +176,6 @@
 #define CONFIG_SYS_CONSOLE_IS_IN_ENV
 
 /*
- * Enable device tree support
- */
-#define CONFIG_OF_LIBFDT
-
-/*
  * Environment variables configurations
  */
 #define CONFIG_ENV_IS_IN_SPI_FLASH
diff --git a/include/configs/ls1021aqds.h b/include/configs/ls1021aqds.h
index e8b1eca..2b8a91e 100644
--- a/include/configs/ls1021aqds.h
+++ b/include/configs/ls1021aqds.h
@@ -651,7 +651,6 @@ unsigned long get_board_ddr_clk(void);
 #define CONFIG_ENV_SECT_SIZE		0x20000 /* 128K (one sector) */
 #endif
 
-#define CONFIG_OF_LIBFDT
 #define CONFIG_OF_BOARD_SETUP
 #define CONFIG_OF_STDOUT_VIA_ALIAS
 #define CONFIG_CMD_BOOTZ
diff --git a/include/configs/ls1021atwr.h b/include/configs/ls1021atwr.h
index 317ba62..5c16ed5 100644
--- a/include/configs/ls1021atwr.h
+++ b/include/configs/ls1021atwr.h
@@ -509,7 +509,6 @@
 #define CONFIG_ENV_SECT_SIZE		0x20000 /* 128K (one sector) */
 #endif
 
-#define CONFIG_OF_LIBFDT
 #define CONFIG_OF_BOARD_SETUP
 #define CONFIG_OF_STDOUT_VIA_ALIAS
 #define CONFIG_CMD_BOOTZ
diff --git a/include/configs/ls1043a_common.h b/include/configs/ls1043a_common.h
index 677d281..4253102 100644
--- a/include/configs/ls1043a_common.h
+++ b/include/configs/ls1043a_common.h
@@ -29,7 +29,6 @@
 #define CONFIG_BOARD_EARLY_INIT_F	1
 
 /* Flat Device Tree Definitions */
-#define CONFIG_OF_LIBFDT
 #define CONFIG_OF_BOARD_SETUP
 
 /* new uImage format support */
diff --git a/include/configs/ls1043aqds.h b/include/configs/ls1043aqds.h
index 398f1c3..3b633fe 100644
--- a/include/configs/ls1043aqds.h
+++ b/include/configs/ls1043aqds.h
@@ -395,7 +395,6 @@ unsigned long get_board_ddr_clk(void);
 #define CONFIG_ENV_SIZE			0x20000
 #endif
 
-#define CONFIG_OF_LIBFDT
 #define CONFIG_OF_BOARD_SETUP
 #define CONFIG_CMD_BOOTZ
 #define CONFIG_CMD_MII
diff --git a/include/configs/ls2080a_common.h b/include/configs/ls2080a_common.h
index 4ae7d11..de40209 100644
--- a/include/configs/ls2080a_common.h
+++ b/include/configs/ls2080a_common.h
@@ -48,7 +48,6 @@
 #define CONFIG_BOARD_EARLY_INIT_F	1
 
 /* Flat Device Tree Definitions */
-#define CONFIG_OF_LIBFDT
 #define CONFIG_OF_BOARD_SETUP
 #define CONFIG_OF_STDOUT_VIA_ALIAS
 
diff --git a/include/configs/lsxl.h b/include/configs/lsxl.h
index 19ee5bc..8fb0135 100644
--- a/include/configs/lsxl.h
+++ b/include/configs/lsxl.h
@@ -37,7 +37,6 @@
 #define CONFIG_SHOW_BOOT_PROGRESS
 
 #define CONFIG_KIRKWOOD_GPIO
-#define CONFIG_OF_LIBFDT
 
 #define CONFIG_SYS_NO_FLASH
 #define CONFIG_SYS_HUSH_PARSER
diff --git a/include/configs/lwmon5.h b/include/configs/lwmon5.h
index 69172bb..9252454 100644
--- a/include/configs/lwmon5.h
+++ b/include/configs/lwmon5.h
@@ -303,7 +303,6 @@
 /*
  * Pass open firmware flat tree
  */
-#define CONFIG_OF_LIBFDT
 #define CONFIG_OF_BOARD_SETUP
 /* Update size in "reg" property of NOR FLASH device tree nodes */
 #define CONFIG_FDT_FIXUP_NOR_FLASH_SIZE
diff --git a/include/configs/m53evk.h b/include/configs/m53evk.h
index fbaa600..4bd1f4c 100644
--- a/include/configs/m53evk.h
+++ b/include/configs/m53evk.h
@@ -247,7 +247,6 @@
 #define CONFIG_LOADADDR		0x70800000
 #define CONFIG_BOOTCOMMAND	"run mmc_mmc"
 #define CONFIG_SYS_LOAD_ADDR	CONFIG_LOADADDR
-#define CONFIG_OF_LIBFDT
 
 /*
  * NAND SPL
diff --git a/include/configs/manroland/common.h b/include/configs/manroland/common.h
index 941290c..d05d45c 100644
--- a/include/configs/manroland/common.h
+++ b/include/configs/manroland/common.h
@@ -116,7 +116,6 @@
 #define CONFIG_LOOPW
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT	1
 #define CONFIG_OF_BOARD_SETUP	1
 
 #endif /* __MANROLAND_COMMON_H */
diff --git a/include/configs/mcx.h b/include/configs/mcx.h
index 4eea06d..83202fc 100644
--- a/include/configs/mcx.h
+++ b/include/configs/mcx.h
@@ -33,7 +33,6 @@
 #include <asm/arch/cpu.h>		/* get chip and board defs */
 #include <asm/arch/omap.h>
 
-#define CONFIG_OF_LIBFDT
 #define CONFIG_FIT
 
 /*
diff --git a/include/configs/mecp5123.h b/include/configs/mecp5123.h
index 0f39964..5f099d2 100644
--- a/include/configs/mecp5123.h
+++ b/include/configs/mecp5123.h
@@ -427,7 +427,6 @@
 
 #define CONFIG_BOOTCOMMAND	"run flash_self"
 
-#define CONFIG_OF_LIBFDT
 #define CONFIG_OF_BOARD_SETUP
 
 #define OF_CPU			"PowerPC,5121 at 0"
diff --git a/include/configs/meesc.h b/include/configs/meesc.h
index 10a6ce9..6cade14 100644
--- a/include/configs/meesc.h
+++ b/include/configs/meesc.h
@@ -57,7 +57,6 @@
 #define CONFIG_PREBOOT				/* enable preboot variable */
 
 #define CONFIG_CMD_BOOTZ
-#define CONFIG_OF_LIBFDT
 
 /*
  * Hardware drivers
diff --git a/include/configs/microblaze-generic.h b/include/configs/microblaze-generic.h
index f93861d..3e86402 100644
--- a/include/configs/microblaze-generic.h
+++ b/include/configs/microblaze-generic.h
@@ -351,7 +351,6 @@
 /* Enable flat device tree support */
 #define CONFIG_LMB		1
 #define CONFIG_FIT		1
-#define CONFIG_OF_LIBFDT	1
 
 #if defined(CONFIG_XILINX_AXIEMAC)
 # define CONFIG_MII		1
diff --git a/include/configs/motionpro.h b/include/configs/motionpro.h
index a8cf201..5414208 100644
--- a/include/configs/motionpro.h
+++ b/include/configs/motionpro.h
@@ -378,7 +378,6 @@ extern void __led_set(led_id_t id, int state);
 #define CONFIG_SYS_RESET_ADDRESS	0xfff00100
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT	1
 #define CONFIG_OF_BOARD_SETUP	1
 
 #define OF_CPU			"PowerPC,5200 at 0"
diff --git a/include/configs/mpc5121ads.h b/include/configs/mpc5121ads.h
index 5f4e157..a53b4b2 100644
--- a/include/configs/mpc5121ads.h
+++ b/include/configs/mpc5121ads.h
@@ -586,7 +586,6 @@
 
 #define CONFIG_BOOTCOMMAND	"run flash_self"
 
-#define CONFIG_OF_LIBFDT	1
 #define CONFIG_OF_BOARD_SETUP	1
 #define CONFIG_OF_SUPPORT_OLD_DEVICE_TREES	1
 
diff --git a/include/configs/mpc8308_p1m.h b/include/configs/mpc8308_p1m.h
index a90083f..d8db25b 100644
--- a/include/configs/mpc8308_p1m.h
+++ b/include/configs/mpc8308_p1m.h
@@ -306,7 +306,6 @@
 #define CONFIG_SYS_HUSH_PARSER
 
 /* Pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT	1
 #define CONFIG_OF_BOARD_SETUP	1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
diff --git a/include/configs/munices.h b/include/configs/munices.h
index c34cba3..a1305b1 100644
--- a/include/configs/munices.h
+++ b/include/configs/munices.h
@@ -185,7 +185,6 @@
 #define CONFIG_SYS_RESET_ADDRESS	0xff000000
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT	1
 #define CONFIG_OF_BOARD_SETUP	1
 
 #define OF_CPU			"PowerPC,5200 at 0"
diff --git a/include/configs/mv-common.h b/include/configs/mv-common.h
index d12d725..674aa0a 100644
--- a/include/configs/mv-common.h
+++ b/include/configs/mv-common.h
@@ -60,8 +60,6 @@
 #define CONFIG_BOOTDELAY	3	/* default enable autoboot */
 #define CONFIG_PREBOOT
 
-#define CONFIG_OF_LIBFDT		/* Device tree support */
-
 /*
  * For booting Linux, the board info and command line data
  * have to be in the first 8 MB of memory, since this is
diff --git a/include/configs/mv-plug-common.h b/include/configs/mv-plug-common.h
index d7d8d81..496bc1f 100644
--- a/include/configs/mv-plug-common.h
+++ b/include/configs/mv-plug-common.h
@@ -28,11 +28,6 @@
 #endif /* CONFIG_SYS_MVFS */
 
 /*
- * Enable device tree support
- */
-#define CONFIG_OF_LIBFDT
-
-/*
  * Commands configuration
  */
 #define CONFIG_SYS_NO_FLASH		/* Declare no flash (NOR/SPI) */
diff --git a/include/configs/mx25pdk.h b/include/configs/mx25pdk.h
index f113302..6dbeeca 100644
--- a/include/configs/mx25pdk.h
+++ b/include/configs/mx25pdk.h
@@ -82,7 +82,6 @@
 #define CONFIG_SYS_LONGHELP
 
 /* U-Boot commands */
-#define CONFIG_OF_LIBFDT
 #define CONFIG_CMD_BOOTZ
 #define CONFIG_CMD_CACHE
 #define CONFIG_CMD_MMC
diff --git a/include/configs/mx31ads.h b/include/configs/mx31ads.h
index ae9f091..8e18cfa 100644
--- a/include/configs/mx31ads.h
+++ b/include/configs/mx31ads.h
@@ -27,7 +27,6 @@
  * in the final file size: 144260 vs. 109536 Bytes.
  */
 #if 0
-#define CONFIG_OF_LIBFDT		1
 #define CONFIG_FIT			1
 #define CONFIG_FIT_VERBOSE		1
 #endif
diff --git a/include/configs/mx35pdk.h b/include/configs/mx35pdk.h
index 1b2f952..1177b0a 100644
--- a/include/configs/mx35pdk.h
+++ b/include/configs/mx35pdk.h
@@ -79,7 +79,6 @@
 /*
  * Command definition
  */
-#define CONFIG_OF_LIBFDT
 #define CONFIG_CMD_BOOTZ
 #define CONFIG_CMD_PING
 #define CONFIG_CMD_DHCP
diff --git a/include/configs/mx51evk.h b/include/configs/mx51evk.h
index 32cd58e..31cd5bb 100644
--- a/include/configs/mx51evk.h
+++ b/include/configs/mx51evk.h
@@ -28,8 +28,6 @@
 #define CONFIG_INITRD_TAG
 #define CONFIG_REVISION_TAG
 
-#define CONFIG_OF_LIBFDT
-
 #define CONFIG_MACH_TYPE	MACH_TYPE_MX51_BABBAGE
 /*
  * Size of malloc() pool
diff --git a/include/configs/mx53ard.h b/include/configs/mx53ard.h
index fdb4134..2cc3a40 100644
--- a/include/configs/mx53ard.h
+++ b/include/configs/mx53ard.h
@@ -223,7 +223,6 @@
 #define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV	0
 
-#define CONFIG_OF_LIBFDT
 
 #define MX53ARD_CS1GCR1		(CSEN | DSZ(2))
 #define MX53ARD_CS1RCR1		(RCSN(2) | OEN (1) | RWSC(22))
diff --git a/include/configs/mx53evk.h b/include/configs/mx53evk.h
index 37430f0..fca567d 100644
--- a/include/configs/mx53evk.h
+++ b/include/configs/mx53evk.h
@@ -25,8 +25,6 @@
 
 #define CONFIG_SYS_FSL_CLK
 
-#define CONFIG_OF_LIBFDT
-
 /* Size of malloc() pool */
 #define CONFIG_SYS_MALLOC_LEN		(CONFIG_ENV_SIZE + 2 * 1024 * 1024)
 
diff --git a/include/configs/mx53loco.h b/include/configs/mx53loco.h
index 54d3e3e..cfb3ae3 100644
--- a/include/configs/mx53loco.h
+++ b/include/configs/mx53loco.h
@@ -217,8 +217,6 @@
 #define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV 0
 
-#define CONFIG_OF_LIBFDT
-
 #define CONFIG_CMD_SATA
 #ifdef CONFIG_CMD_SATA
 	#define CONFIG_DWC_AHSATA
diff --git a/include/configs/mx53smd.h b/include/configs/mx53smd.h
index d915b88..33d2163 100644
--- a/include/configs/mx53smd.h
+++ b/include/configs/mx53smd.h
@@ -159,6 +159,4 @@
 #define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV 0
 
-#define CONFIG_OF_LIBFDT
-
 #endif				/* __CONFIG_H */
diff --git a/include/configs/mx6_common.h b/include/configs/mx6_common.h
index 179b4f9..3abc773 100644
--- a/include/configs/mx6_common.h
+++ b/include/configs/mx6_common.h
@@ -69,7 +69,6 @@
 #define CONFIG_BAUDRATE         115200
 
 /* Filesystems and image support */
-#define CONFIG_OF_LIBFDT
 #define CONFIG_CMD_BOOTZ
 #define CONFIG_SUPPORT_RAW_INITRD
 #define CONFIG_CMD_FS_GENERIC
diff --git a/include/configs/mx6ul_14x14_evk.h b/include/configs/mx6ul_14x14_evk.h
index 4374c3a..c1f64ab 100644
--- a/include/configs/mx6ul_14x14_evk.h
+++ b/include/configs/mx6ul_14x14_evk.h
@@ -187,7 +187,6 @@
 #define CONFIG_SYS_MMC_ENV_PART		0	/* user area */
 #define CONFIG_MMCROOT			"/dev/mmcblk1p2"  /* USDHC2 */
 
-#define CONFIG_OF_LIBFDT
 #define CONFIG_CMD_BOOTZ
 #define CONFIG_CMD_BMODE
 
diff --git a/include/configs/mx7_common.h b/include/configs/mx7_common.h
index fac7c3f..a627456 100644
--- a/include/configs/mx7_common.h
+++ b/include/configs/mx7_common.h
@@ -53,7 +53,6 @@
 #define CONFIG_BAUDRATE                 115200
 
 /* Filesystems and image support */
-#define CONFIG_OF_LIBFDT
 #define CONFIG_CMD_BOOTZ
 #define CONFIG_DOS_PARTITION
 #define CONFIG_CMD_EXT2
diff --git a/include/configs/mxs.h b/include/configs/mxs.h
index 63fdf9e..381dddf 100644
--- a/include/configs/mxs.h
+++ b/include/configs/mxs.h
@@ -41,9 +41,6 @@
  * CPU specifics
  */
 
-/* MXS uses FDT */
-#define CONFIG_OF_LIBFDT
-
 /* Startup hooks */
 #define CONFIG_BOARD_EARLY_INIT_F
 #define CONFIG_ARCH_MISC_INIT
diff --git a/include/configs/nas220.h b/include/configs/nas220.h
index e5ff7e1..36a00d3 100644
--- a/include/configs/nas220.h
+++ b/include/configs/nas220.h
@@ -137,12 +137,6 @@
 #define CONFIG_SYS_ATA_IDE1_OFFSET      MV_SATA_PORT1_OFFSET
 #endif
 
-
-/*
- * Device Tree
- */
-#define CONFIG_OF_LIBFDT
-
 /*
  * EFI partition
  */
diff --git a/include/configs/nyan-big.h b/include/configs/nyan-big.h
index 176f6e9..6f73158 100644
--- a/include/configs/nyan-big.h
+++ b/include/configs/nyan-big.h
@@ -71,7 +71,6 @@
 
 #define CONFIG_FIT
 #define CONFIG_FIT_BEST_MATCH
-#define CONFIG_OF_LIBFDT
 
 #define CONFIG_KEYBOARD
 
diff --git a/include/configs/o2dnt-common.h b/include/configs/o2dnt-common.h
index 8b0dbdc..7900880 100644
--- a/include/configs/o2dnt-common.h
+++ b/include/configs/o2dnt-common.h
@@ -332,7 +332,6 @@
 /*
  * DT support
  */
-#define CONFIG_OF_LIBFDT	1
 #define CONFIG_OF_BOARD_SETUP	1
 
 #define OF_CPU			"PowerPC,5200 at 0"
diff --git a/include/configs/omapl138_lcdk.h b/include/configs/omapl138_lcdk.h
index bce4fad..fc7bfce 100644
--- a/include/configs/omapl138_lcdk.h
+++ b/include/configs/omapl138_lcdk.h
@@ -196,7 +196,6 @@
 #define CONFIG_SYS_LONGHELP
 #define CONFIG_CRC32_VERIFY
 #define CONFIG_MX_CYCLIC
-#define CONFIG_OF_LIBFDT
 
 /*
  * Linux Information
diff --git a/include/configs/openrisc-generic.h b/include/configs/openrisc-generic.h
index c854189..28e4275 100644
--- a/include/configs/openrisc-generic.h
+++ b/include/configs/openrisc-generic.h
@@ -120,7 +120,6 @@
 #define CONFIG_CMD_DHCP
 #define CONFIG_CMD_PING
 
-#define CONFIG_OF_LIBFDT
 #define CONFIG_LMB
 
 /*
diff --git a/include/configs/p1_p2_rdb_pc.h b/include/configs/p1_p2_rdb_pc.h
index 60bedaa..2f58bf6 100644
--- a/include/configs/p1_p2_rdb_pc.h
+++ b/include/configs/p1_p2_rdb_pc.h
@@ -668,7 +668,6 @@
 /*
  * Pass open firmware flat tree
  */
-#define CONFIG_OF_LIBFDT
 #define CONFIG_OF_BOARD_SETUP
 #define CONFIG_OF_STDOUT_VIA_ALIAS
 
diff --git a/include/configs/p1_twr.h b/include/configs/p1_twr.h
index 77ba2d8..a08b779 100644
--- a/include/configs/p1_twr.h
+++ b/include/configs/p1_twr.h
@@ -234,7 +234,6 @@ extern unsigned long get_board_sys_clk(unsigned long dummy);
 /*
  * Pass open firmware flat tree
  */
-#define CONFIG_OF_LIBFDT
 #define CONFIG_OF_BOARD_SETUP
 #define CONFIG_OF_STDOUT_VIA_ALIAS
 
diff --git a/include/configs/pcm030.h b/include/configs/pcm030.h
index 29feb7b..f7722ec 100644
--- a/include/configs/pcm030.h
+++ b/include/configs/pcm030.h
@@ -418,7 +418,6 @@ RTC configuration
 #define CONFIG_USB_STORAGE
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT		1
 #define CONFIG_OF_BOARD_SETUP		1
 
 #define OF_CPU				"PowerPC,5200 at 0"
diff --git a/include/configs/pcm052.h b/include/configs/pcm052.h
index 891bdb0..5d2c8a5 100644
--- a/include/configs/pcm052.h
+++ b/include/configs/pcm052.h
@@ -268,7 +268,6 @@
 #define CONFIG_ENV_OFFSET_REDUND	0xC0000
 #endif
 
-#define CONFIG_OF_LIBFDT
 #define CONFIG_CMD_BOOTZ
 
 #endif
diff --git a/include/configs/pdm360ng.h b/include/configs/pdm360ng.h
index a6e7e9c..ef4206b 100644
--- a/include/configs/pdm360ng.h
+++ b/include/configs/pdm360ng.h
@@ -461,7 +461,6 @@
 
 #define CONFIG_BOOTCOMMAND	"run env_cont"
 
-#define CONFIG_OF_LIBFDT	1
 #define CONFIG_OF_BOARD_SETUP	1
 #define CONFIG_OF_SUPPORT_OLD_DEVICE_TREES	1
 #define CONFIG_FIT
diff --git a/include/configs/picosam9g45.h b/include/configs/picosam9g45.h
index 47613de..b2ba6fc 100644
--- a/include/configs/picosam9g45.h
+++ b/include/configs/picosam9g45.h
@@ -34,8 +34,6 @@
 #define CONFIG_DISPLAY_CPUINFO
 
 #define CONFIG_CMD_BOOTZ
-#define CONFIG_OF_LIBFDT
-
 
 /* general purpose I/O */
 #define CONFIG_ATMEL_LEGACY		/* required until (g)pio is fixed */
diff --git a/include/configs/qemu-ppce500.h b/include/configs/qemu-ppce500.h
index 2dfea33..3de4004 100644
--- a/include/configs/qemu-ppce500.h
+++ b/include/configs/qemu-ppce500.h
@@ -118,7 +118,6 @@ extern unsigned long long get_phys_ccsrbar_addr_early(void);
 #define CONFIG_SYS_PROMPT_HUSH_PS2 "> "
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT
 #define CONFIG_OF_BOARD_SETUP
 #define CONFIG_OF_STDOUT_VIA_ALIAS
 
diff --git a/include/configs/rcar-gen2-common.h b/include/configs/rcar-gen2-common.h
index f0a3a18..42ce545 100644
--- a/include/configs/rcar-gen2-common.h
+++ b/include/configs/rcar-gen2-common.h
@@ -38,7 +38,6 @@
 #define CONFIG_SETUP_MEMORY_TAGS
 #define CONFIG_INITRD_TAG
 #define CONFIG_CMDLINE_EDITING
-#define CONFIG_OF_LIBFDT
 
 #define CONFIG_BAUDRATE		38400
 #define CONFIG_BOOTDELAY	3
diff --git a/include/configs/rk3288_common.h b/include/configs/rk3288_common.h
index ebf1ab0..9bd7164 100644
--- a/include/configs/rk3288_common.h
+++ b/include/configs/rk3288_common.h
@@ -17,7 +17,6 @@
 #define CONFIG_SYS_MALLOC_LEN		(32 << 20)
 #define CONFIG_SYS_CBSIZE		1024
 #define CONFIG_SYS_THUMB_BUILD
-#define CONFIG_OF_LIBFDT
 #define CONFIG_DISPLAY_BOARDINFO
 
 #define CONFIG_SYS_TIMER_RATE		(24 * 1000 * 1000)
diff --git a/include/configs/s5p_goni.h b/include/configs/s5p_goni.h
index 8f65d7e..f69cee8 100644
--- a/include/configs/s5p_goni.h
+++ b/include/configs/s5p_goni.h
@@ -276,7 +276,4 @@
 #define CONFIG_CMD_USB_MASS_STORAGE
 #define CONFIG_USB_FUNCTION_MASS_STORAGE
 
-#define CONFIG_OF_LIBFDT
-
-
 #endif	/* __CONFIG_H */
diff --git a/include/configs/sandbox.h b/include/configs/sandbox.h
index 4bffd8d..d59beb8 100644
--- a/include/configs/sandbox.h
+++ b/include/configs/sandbox.h
@@ -28,7 +28,6 @@
 /* Number of bits in a C 'long' on this architecture */
 #define CONFIG_SANDBOX_BITS_PER_LONG	64
 
-#define CONFIG_OF_LIBFDT
 #define CONFIG_LMB
 #define CONFIG_CMD_FDT
 #define CONFIG_ANDROID_BOOT_IMAGE
diff --git a/include/configs/sbc8349.h b/include/configs/sbc8349.h
index 25ec7bc..f20f964 100644
--- a/include/configs/sbc8349.h
+++ b/include/configs/sbc8349.h
@@ -283,7 +283,6 @@
 #define CONFIG_SYS_HUSH_PARSER
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT	1
 #define CONFIG_OF_BOARD_SETUP	1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
diff --git a/include/configs/sbc8548.h b/include/configs/sbc8548.h
index 9783804..f9aefca 100644
--- a/include/configs/sbc8548.h
+++ b/include/configs/sbc8548.h
@@ -420,7 +420,6 @@
 #define CONFIG_SYS_HUSH_PARSER
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT		1
 #define CONFIG_OF_BOARD_SETUP		1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
diff --git a/include/configs/sbc8641d.h b/include/configs/sbc8641d.h
index f88d685..926824f 100644
--- a/include/configs/sbc8641d.h
+++ b/include/configs/sbc8641d.h
@@ -265,7 +265,6 @@
 /*
  * Pass open firmware flat tree to kernel
  */
-#define CONFIG_OF_LIBFDT		1
 #define CONFIG_OF_BOARD_SETUP		1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
diff --git a/include/configs/siemens-am33x-common.h b/include/configs/siemens-am33x-common.h
index eac7270..3a8b90e 100644
--- a/include/configs/siemens-am33x-common.h
+++ b/include/configs/siemens-am33x-common.h
@@ -625,7 +625,6 @@
 #define CONFIG_BOOTCOUNT_ENV
 
 /* Enable Device-Tree (FDT) support */
-#define CONFIG_OF_LIBFDT
 #define CONFIG_CMD_FDT
 
 #endif	/* ! __CONFIG_SIEMENS_AM33X_COMMON_H */
diff --git a/include/configs/smartweb.h b/include/configs/smartweb.h
index 44d1d5a..537fc84 100644
--- a/include/configs/smartweb.h
+++ b/include/configs/smartweb.h
@@ -237,7 +237,6 @@
 
 #if !defined(CONFIG_SPL_BUILD)
 /* Enable Device-Tree (FDT) support */
-#define CONFIG_OF_LIBFDT
 #define CONFIG_CMD_FDT
 #define CONFIG_FIT
 #endif
diff --git a/include/configs/smdkc100.h b/include/configs/smdkc100.h
index c36e444..0870d9e 100644
--- a/include/configs/smdkc100.h
+++ b/include/configs/smdkc100.h
@@ -212,7 +212,4 @@
 #define CONFIG_ENV_SROM_BANK   3       /* Select SROM Bank-3 for Ethernet*/
 #endif /* CONFIG_CMD_NET */
 
-#define CONFIG_OF_LIBFDT
-
-
 #endif	/* __CONFIG_H */
diff --git a/include/configs/socfpga_common.h b/include/configs/socfpga_common.h
index 8de0ab9..541504a 100644
--- a/include/configs/socfpga_common.h
+++ b/include/configs/socfpga_common.h
@@ -25,7 +25,6 @@
 #define CONFIG_CRC32_VERIFY
 
 #define CONFIG_FIT
-#define CONFIG_OF_LIBFDT
 #define CONFIG_SYS_BOOTMAPSZ		(64 * 1024 * 1024)
 
 #define CONFIG_TIMESTAMP		/* Print image info with timestamp */
diff --git a/include/configs/socrates.h b/include/configs/socrates.h
index f8bddca..5956e11 100644
--- a/include/configs/socrates.h
+++ b/include/configs/socrates.h
@@ -19,7 +19,6 @@
 
 /* new uImage format support */
 #define CONFIG_FIT		1
-#define CONFIG_OF_LIBFDT	1
 #define CONFIG_FIT_VERBOSE	1 /* enable fit_format_{error,warning}() */
 
 /* High Level Configuration Options */
@@ -429,7 +428,6 @@
 #define CONFIG_BOOTCOMMAND	"run boot_nor"
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT	1
 #define CONFIG_OF_BOARD_SETUP	1
 
 /* USB support */
diff --git a/include/configs/stm32f429-discovery.h b/include/configs/stm32f429-discovery.h
index 85d492d..41f1b69 100644
--- a/include/configs/stm32f429-discovery.h
+++ b/include/configs/stm32f429-discovery.h
@@ -11,8 +11,6 @@
 #define CONFIG_SYS_THUMB_BUILD
 #define CONFIG_STM32F4DISCOVERY
 
-#define CONFIG_OF_LIBFDT
-
 #define CONFIG_BOARD_EARLY_INIT_F
 #define CONFIG_MISC_INIT_R
 
diff --git a/include/configs/strider.h b/include/configs/strider.h
index 8771cdc..13926e0 100644
--- a/include/configs/strider.h
+++ b/include/configs/strider.h
@@ -322,7 +322,6 @@
 #define CONFIG_SYS_HUSH_PARSER
 
 /* Pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT		1
 #define CONFIG_OF_BOARD_SETUP		1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
diff --git a/include/configs/stv0991.h b/include/configs/stv0991.h
index f421321..f0d0bcd 100644
--- a/include/configs/stv0991.h
+++ b/include/configs/stv0991.h
@@ -71,8 +71,6 @@
 #define CONFIG_BOOTDELAY                       3
 #define CONFIG_BOOTCOMMAND                     "go 0x40040000"
 
-#define CONFIG_OF_LIBFDT
-
 /*
 + * QSPI support
 + */
diff --git a/include/configs/t4qds.h b/include/configs/t4qds.h
index 5788a70..f65c4cf 100644
--- a/include/configs/t4qds.h
+++ b/include/configs/t4qds.h
@@ -158,7 +158,6 @@
 #define CONFIG_SYS_PROMPT_HUSH_PS2 "> "
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT
 #define CONFIG_OF_BOARD_SETUP
 #define CONFIG_OF_STDOUT_VIA_ALIAS
 
diff --git a/include/configs/tam3517-common.h b/include/configs/tam3517-common.h
index 2d941ca..38ed626 100644
--- a/include/configs/tam3517-common.h
+++ b/include/configs/tam3517-common.h
@@ -258,7 +258,6 @@
 #define CONFIG_SYS_NAND_U_BOOT_OFFS	0x80000
 #define CONFIG_SYS_NAND_U_BOOT_SIZE	0x80000
 
-#define CONFIG_OF_LIBFDT
 #define CONFIG_FIT
 #define CONFIG_CMD_UBI
 #define CONFIG_CMD_UBIFS
diff --git a/include/configs/tao3530.h b/include/configs/tao3530.h
index c1bd179..8385e09 100644
--- a/include/configs/tao3530.h
+++ b/include/configs/tao3530.h
@@ -44,8 +44,6 @@
 
 #define CONFIG_MISC_INIT_R
 
-#define CONFIG_OF_LIBFDT
-
 #define CONFIG_CMDLINE_TAG
 #define CONFIG_SETUP_MEMORY_TAGS
 #define CONFIG_INITRD_TAG
diff --git a/include/configs/taurus.h b/include/configs/taurus.h
index 1d6f9c3..c1581d8 100644
--- a/include/configs/taurus.h
+++ b/include/configs/taurus.h
@@ -52,7 +52,6 @@
 #define CONFIG_DISPLAY_CPUINFO
 
 #define CONFIG_CMD_BOOTZ
-#define CONFIG_OF_LIBFDT
 
 /* general purpose I/O */
 #define CONFIG_ATMEL_LEGACY		/* required until (g)pio is fixed */
diff --git a/include/configs/tb100.h b/include/configs/tb100.h
index e06484f..62b9de3 100644
--- a/include/configs/tb100.h
+++ b/include/configs/tb100.h
@@ -68,8 +68,6 @@
 #define CONFIG_CMD_DHCP
 #define CONFIG_CMD_PING
 
-#define CONFIG_OF_LIBFDT
-
 #define CONFIG_AUTO_COMPLETE
 #define CONFIG_SYS_MAXARGS		16
 
diff --git a/include/configs/thunderx_88xx.h b/include/configs/thunderx_88xx.h
index cece4dd..4d925ab 100644
--- a/include/configs/thunderx_88xx.h
+++ b/include/configs/thunderx_88xx.h
@@ -58,9 +58,6 @@
 #define CONFIG_SYS_TEXT_BASE		0x00500000
 #define CONFIG_SYS_INIT_SP_ADDR		(CONFIG_SYS_SDRAM_BASE + 0x7fff0)
 
-/* Flat Device Tree Definitions */
-#define CONFIG_OF_LIBFDT
-
 /* SMP Spin Table Definitions */
 #define CPU_RELEASE_ADDR		(CONFIG_SYS_SDRAM_BASE + 0x7fff0)
 
diff --git a/include/configs/ti814x_evm.h b/include/configs/ti814x_evm.h
index e726040..f23b13a 100644
--- a/include/configs/ti814x_evm.h
+++ b/include/configs/ti814x_evm.h
@@ -31,7 +31,6 @@
 #define CONFIG_SYS_NO_FLASH
 #define CONFIG_MACH_TYPE		MACH_TYPE_TI8148EVM
 
-#define CONFIG_OF_LIBFDT
 #define CONFIG_CMDLINE_TAG		/* enable passing of ATAGs  */
 #define CONFIG_SETUP_MEMORY_TAGS
 #define CONFIG_INITRD_TAG		/* for ramdisk support */
diff --git a/include/configs/ti816x_evm.h b/include/configs/ti816x_evm.h
index ba652ca..d0b7f34 100644
--- a/include/configs/ti816x_evm.h
+++ b/include/configs/ti816x_evm.h
@@ -26,7 +26,6 @@
 #define CONFIG_SYS_HUSH_PARSER
 #define CONFIG_MACH_TYPE		MACH_TYPE_TI8168EVM
 
-#define CONFIG_OF_LIBFDT
 #define CONFIG_CMDLINE_TAG		/* enable passing of ATAGs */
 #define CONFIG_SETUP_MEMORY_TAGS
 #define CONFIG_INITRD_TAG		/* required for ramdisk support */
diff --git a/include/configs/ti_armv7_common.h b/include/configs/ti_armv7_common.h
index 199612b..3afd6d7 100644
--- a/include/configs/ti_armv7_common.h
+++ b/include/configs/ti_armv7_common.h
@@ -24,7 +24,6 @@
 #define CONFIG_SYS_NO_FLASH
 
 /* Support both device trees and ATAGs. */
-#define CONFIG_OF_LIBFDT
 #define CONFIG_CMDLINE_TAG
 #define CONFIG_SETUP_MEMORY_TAGS
 #define CONFIG_INITRD_TAG
diff --git a/include/configs/tqma6.h b/include/configs/tqma6.h
index 31d7757..e7aa42d 100644
--- a/include/configs/tqma6.h
+++ b/include/configs/tqma6.h
@@ -378,7 +378,6 @@
 #define CONFIG_SYS_INIT_SP_ADDR \
 	(CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET)
 
-#define CONFIG_OF_LIBFDT
 #define CONFIG_OF_BOARD_SETUP
 #define CONFIG_FIT
 #define CONFIG_FIT_VERBOSE
diff --git a/include/configs/tricorder.h b/include/configs/tricorder.h
index f5f5324..105f906 100644
--- a/include/configs/tricorder.h
+++ b/include/configs/tricorder.h
@@ -58,8 +58,6 @@
 #define CONFIG_INITRD_TAG
 #define CONFIG_REVISION_TAG
 
-#define CONFIG_OF_LIBFDT
-
 /* Size of malloc() pool */
 #define CONFIG_SYS_MALLOC_LEN		(1024*1024)
 
diff --git a/include/configs/ts4800.h b/include/configs/ts4800.h
index 2f6c97c..fbca8a6 100644
--- a/include/configs/ts4800.h
+++ b/include/configs/ts4800.h
@@ -24,8 +24,6 @@
 
 #define CONFIG_HW_WATCHDOG
 
-#define CONFIG_OF_LIBFDT
-
 #define CONFIG_MACH_TYPE	MACH_TYPE_TS48XX
 
 /* text base address used when linking */
diff --git a/include/configs/tseries.h b/include/configs/tseries.h
index 93e3454..914d193 100644
--- a/include/configs/tseries.h
+++ b/include/configs/tseries.h
@@ -37,7 +37,6 @@
 #define CONFIG_POWER_TPS65217
 
 /* Support both device trees and ATAGs. */
-#define CONFIG_OF_LIBFDT
 #define CONFIG_USE_FDT			/* use fdt within board code */
 #define CONFIG_OF_BOARD_SETUP
 #define CONFIG_CMDLINE_TAG
diff --git a/include/configs/uniphier.h b/include/configs/uniphier.h
index 599b269..4aac255 100644
--- a/include/configs/uniphier.h
+++ b/include/configs/uniphier.h
@@ -231,9 +231,6 @@
 
 #define CONFIG_SYS_BOOTMAPSZ			0x20000000
 
-/* Open Firmware flat tree */
-#define CONFIG_OF_LIBFDT
-
 #define CONFIG_SYS_SDRAM_BASE		0x80000000
 #define CONFIG_NR_DRAM_BANKS		2
 
diff --git a/include/configs/usb_a9263.h b/include/configs/usb_a9263.h
index 54daede..7b2f1ca 100644
--- a/include/configs/usb_a9263.h
+++ b/include/configs/usb_a9263.h
@@ -33,7 +33,6 @@
 
 #define CONFIG_DISPLAY_CPUINFO
 
-#define CONFIG_OF_LIBFDT
 #define CONFIG_SYS_TEXT_BASE		0x23f00000
 
 /*
diff --git a/include/configs/usbarmory.h b/include/configs/usbarmory.h
index 6f66662..7e24fc6 100644
--- a/include/configs/usbarmory.h
+++ b/include/configs/usbarmory.h
@@ -16,7 +16,6 @@
 #define CONFIG_DISPLAY_BOARDINFO
 #define CONFIG_SYS_FSL_CLK
 #define CONFIG_BOARD_EARLY_INIT_F
-#define CONFIG_OF_LIBFDT
 #define CONFIG_MXC_GPIO
 
 #include <asm/arch/imx-regs.h>
diff --git a/include/configs/ve8313.h b/include/configs/ve8313.h
index bc2d441..8fbf33f 100644
--- a/include/configs/ve8313.h
+++ b/include/configs/ve8313.h
@@ -243,7 +243,6 @@
 				/* 0xfe0009f7 */
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT	1
 #define CONFIG_OF_BOARD_SETUP	1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
diff --git a/include/configs/vexpress_aemv8a.h b/include/configs/vexpress_aemv8a.h
index 814934a..4088442 100644
--- a/include/configs/vexpress_aemv8a.h
+++ b/include/configs/vexpress_aemv8a.h
@@ -39,9 +39,6 @@
 
 #define CONFIG_SYS_BOOTM_LEN (64 << 20)      /* Increase max gunzip size */
 
-/* Flat Device Tree Definitions */
-#define CONFIG_OF_LIBFDT
-
 /* CS register bases for the original memory map. */
 #define V2M_PA_CS0			0x00000000
 #define V2M_PA_CS1			0x14000000
diff --git a/include/configs/vf610twr.h b/include/configs/vf610twr.h
index dcfafaf..9808a52 100644
--- a/include/configs/vf610twr.h
+++ b/include/configs/vf610twr.h
@@ -275,7 +275,6 @@
 #define CONFIG_ENV_OFFSET		0x180000
 #endif
 
-#define CONFIG_OF_LIBFDT
 #define CONFIG_CMD_BOOTZ
 
 #endif
diff --git a/include/configs/vme8349.h b/include/configs/vme8349.h
index 714ebee..6343d87 100644
--- a/include/configs/vme8349.h
+++ b/include/configs/vme8349.h
@@ -216,7 +216,6 @@
 #define CONFIG_SYS_HUSH_PARSER
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_LIBFDT
 #define CONFIG_OF_BOARD_SETUP
 #define CONFIG_OF_STDOUT_VIA_ALIAS
 
diff --git a/include/configs/x600.h b/include/configs/x600.h
index 0263c50..ac477eb 100644
--- a/include/configs/x600.h
+++ b/include/configs/x600.h
@@ -152,7 +152,6 @@
 #define CONFIG_DISPLAY_CPUINFO
 #define CONFIG_BOOT_PARAMS_ADDR			0x00000100
 #define CONFIG_CMDLINE_TAG
-#define CONFIG_OF_LIBFDT		/* enable passing of devicetree */
 #define CONFIG_SETUP_MEMORY_TAGS
 #define CONFIG_MISC_INIT_R
 #define CONFIG_BOARD_LATE_INIT
diff --git a/include/configs/x86-common.h b/include/configs/x86-common.h
index 4182a3b..6e681f9 100644
--- a/include/configs/x86-common.h
+++ b/include/configs/x86-common.h
@@ -24,7 +24,6 @@
 #define CONFIG_NR_DRAM_BANKS		8
 
 #define CONFIG_LMB
-#define CONFIG_OF_LIBFDT
 
 #define CONFIG_LZO
 #define CONFIG_FIT
diff --git a/include/configs/xilinx_zynqmp.h b/include/configs/xilinx_zynqmp.h
index 03f7450..5798b3d 100644
--- a/include/configs/xilinx_zynqmp.h
+++ b/include/configs/xilinx_zynqmp.h
@@ -42,7 +42,6 @@
 #define CONFIG_SYS_INIT_SP_ADDR		(CONFIG_SYS_SDRAM_BASE + 0x7fff0)
 
 /* Flat Device Tree Definitions */
-#define CONFIG_OF_LIBFDT
 
 /* Generic Timer Definitions - setup in EL3. Setup by ATF for other cases */
 #define COUNTER_FREQUENCY		4000000
diff --git a/include/configs/xpedite517x.h b/include/configs/xpedite517x.h
index 96b357b..47ef9ac 100644
--- a/include/configs/xpedite517x.h
+++ b/include/configs/xpedite517x.h
@@ -233,7 +233,6 @@ extern unsigned long get_board_sys_clk(unsigned long dummy);
 /*
  * Pass open firmware flat tree
  */
-#define CONFIG_OF_LIBFDT		1
 #define CONFIG_OF_BOARD_SETUP		1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
diff --git a/include/configs/xpedite520x.h b/include/configs/xpedite520x.h
index b2d6a1e..712475e 100644
--- a/include/configs/xpedite520x.h
+++ b/include/configs/xpedite520x.h
@@ -196,7 +196,6 @@
 /*
  * Pass open firmware flat tree
  */
-#define CONFIG_OF_LIBFDT		1
 #define CONFIG_OF_BOARD_SETUP		1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
diff --git a/include/configs/xpedite537x.h b/include/configs/xpedite537x.h
index 8b4d4d9..1c3b14c 100644
--- a/include/configs/xpedite537x.h
+++ b/include/configs/xpedite537x.h
@@ -232,7 +232,6 @@ extern unsigned long get_board_ddr_clk(unsigned long dummy);
 /*
  * Pass open firmware flat tree
  */
-#define CONFIG_OF_LIBFDT		1
 #define CONFIG_OF_BOARD_SETUP		1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
diff --git a/include/configs/xpedite550x.h b/include/configs/xpedite550x.h
index c7e25d9..10c6695 100644
--- a/include/configs/xpedite550x.h
+++ b/include/configs/xpedite550x.h
@@ -223,7 +223,6 @@ extern unsigned long get_board_ddr_clk(unsigned long dummy);
 /*
  * Pass open firmware flat tree
  */
-#define CONFIG_OF_LIBFDT		1
 #define CONFIG_OF_BOARD_SETUP		1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 #define CONFIG_FDT_FIXUP_PCI_IRQ	1
diff --git a/include/configs/zynq-common.h b/include/configs/zynq-common.h
index 0ab6083..9a3ba99 100644
--- a/include/configs/zynq-common.h
+++ b/include/configs/zynq-common.h
@@ -276,9 +276,6 @@
 #define CONFIG_CMD_FPGA_LOADBP
 #define CONFIG_CMD_FPGA_LOADFS
 
-/* Open Firmware flat tree */
-#define CONFIG_OF_LIBFDT
-
 /* FIT support */
 #define CONFIG_IMAGE_FORMAT_LEGACY /* enable also legacy image format */
 
diff --git a/include/image.h b/include/image.h
index 299d6d2..9967bde 100644
--- a/include/image.h
+++ b/include/image.h
@@ -27,7 +27,6 @@ struct lmb;
 
 /* new uImage format support enabled on host */
 #define CONFIG_FIT		1
-#define CONFIG_OF_LIBFDT	1
 #define CONFIG_FIT_VERBOSE	1 /* enable fit_format_{error,warning}() */
 
 #define IMAGE_ENABLE_IGNORE	0
diff --git a/lib/Kconfig b/lib/Kconfig
index 46d7034..90ed497 100644
--- a/lib/Kconfig
+++ b/lib/Kconfig
@@ -128,6 +128,16 @@ config ERRNO_STR
 	  - if errno is null or positive number - a pointer to "Success" message
 	  - if errno is negative - a pointer to errno related message
 
+config OF_LIBFDT
+	bool "Enable the FDT library"
+	default y if OF_CONTROL
+	help
+	  This enables the FDT library (libfdt). It provides functions for
+	  accessing binary device tree images in memory, such as adding and
+	  removing notes and properties, scanning through the tree and finding
+	  particular compatible nodes. The library operates on a flattened
+	  version of the device tree.
+
 source lib/efi/Kconfig
 
 endmenu
-- 
2.7.0.rc3.207.g0ac5344

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

* [U-Boot] [PATCH 10/26] Kconfig: Move CONFIG_FIT and CONFIG_OF_*_SETUP to Kconfig
  2016-01-28 16:39 ` Simon Glass
                   ` (9 preceding siblings ...)
  (?)
@ 2016-01-28 16:39 ` Simon Glass
  2016-01-29  5:52   ` Heiko Schocher
  -1 siblings, 1 reply; 54+ messages in thread
From: Simon Glass @ 2016-01-28 16:39 UTC (permalink / raw)
  To: u-boot

Move these options to Kconfig and tidy up board configuration:

   CONFIG_FIT
   CONFIG_OF_BOARD_SETUP
   CONFIG_OF_SYSTEM_SETUP

Unfortunately the first one is a little complicated. We need to make sure
this option is not enabled in SPL by this change. Also this option is
enabled automatically in the host builds by defining CONFIG_GIT in the
image.h file. To solve this, add a new IMAGE_USE_FIT #define which can
be used in files that are built on the host but must also build for U-Boot
and SPL.

Note: Masahiro's moveconfig.py script is amazing.

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

 cmd/disk.c                                         |  6 ++---
 common/Kconfig                                     | 28 ++++++++++++++++++++++
 common/Makefile                                    |  2 +-
 common/bootm.c                                     | 10 ++++----
 common/image-fdt.c                                 |  8 +++----
 common/image-fit.c                                 |  3 ++-
 common/image.c                                     | 24 +++++++++----------
 configs/10m50_defconfig                            |  1 +
 configs/3c120_defconfig                            |  1 +
 configs/A10-OLinuXino-Lime_defconfig               |  1 +
 configs/A10s-OLinuXino-M_defconfig                 |  1 +
 configs/A13-OLinuXinoM_defconfig                   |  1 +
 configs/A13-OLinuXino_defconfig                    |  1 +
 configs/A20-OLinuXino-Lime2_defconfig              |  1 +
 configs/A20-OLinuXino-Lime_defconfig               |  1 +
 configs/A20-OLinuXino_MICRO_defconfig              |  1 +
 configs/A20-Olimex-SOM-EVB_defconfig               |  1 +
 configs/Ainol_AW1_defconfig                        |  1 +
 configs/Ampe_A76_defconfig                         |  1 +
 configs/Auxtek-T003_defconfig                      |  1 +
 configs/Auxtek-T004_defconfig                      |  1 +
 configs/B4420QDS_NAND_defconfig                    |  2 ++
 configs/B4420QDS_SPIFLASH_defconfig                |  2 ++
 configs/B4420QDS_defconfig                         |  2 ++
 configs/B4860QDS_NAND_defconfig                    |  2 ++
 configs/B4860QDS_SECURE_BOOT_defconfig             |  2 ++
 configs/B4860QDS_SPIFLASH_defconfig                |  2 ++
 configs/B4860QDS_SRIO_PCIE_BOOT_defconfig          |  2 ++
 configs/B4860QDS_defconfig                         |  2 ++
 configs/BSC9131RDB_NAND_SYSCLK100_defconfig        |  2 ++
 configs/BSC9131RDB_NAND_defconfig                  |  2 ++
 configs/BSC9131RDB_SPIFLASH_SYSCLK100_defconfig    |  2 ++
 configs/BSC9131RDB_SPIFLASH_defconfig              |  2 ++
 configs/BSC9132QDS_NAND_DDRCLK100_SECURE_defconfig |  2 ++
 configs/BSC9132QDS_NAND_DDRCLK100_defconfig        |  2 ++
 configs/BSC9132QDS_NAND_DDRCLK133_SECURE_defconfig |  2 ++
 configs/BSC9132QDS_NAND_DDRCLK133_defconfig        |  2 ++
 configs/BSC9132QDS_NOR_DDRCLK100_SECURE_defconfig  |  2 ++
 configs/BSC9132QDS_NOR_DDRCLK100_defconfig         |  2 ++
 configs/BSC9132QDS_NOR_DDRCLK133_SECURE_defconfig  |  2 ++
 configs/BSC9132QDS_NOR_DDRCLK133_defconfig         |  2 ++
 .../BSC9132QDS_SDCARD_DDRCLK100_SECURE_defconfig   |  2 ++
 configs/BSC9132QDS_SDCARD_DDRCLK100_defconfig      |  2 ++
 .../BSC9132QDS_SDCARD_DDRCLK133_SECURE_defconfig   |  2 ++
 configs/BSC9132QDS_SDCARD_DDRCLK133_defconfig      |  2 ++
 .../BSC9132QDS_SPIFLASH_DDRCLK100_SECURE_defconfig |  2 ++
 configs/BSC9132QDS_SPIFLASH_DDRCLK100_defconfig    |  2 ++
 .../BSC9132QDS_SPIFLASH_DDRCLK133_SECURE_defconfig |  2 ++
 configs/BSC9132QDS_SPIFLASH_DDRCLK133_defconfig    |  2 ++
 configs/Bananapi_defconfig                         |  1 +
 configs/Bananapro_defconfig                        |  1 +
 configs/C29XPCIE_NAND_defconfig                    |  2 ++
 configs/C29XPCIE_NOR_SECBOOT_defconfig             |  2 ++
 configs/C29XPCIE_SPIFLASH_SECBOOT_defconfig        |  2 ++
 configs/C29XPCIE_SPIFLASH_defconfig                |  2 ++
 configs/C29XPCIE_defconfig                         |  2 ++
 configs/CHIP_defconfig                             |  1 +
 configs/CPCI4052_defconfig                         |  1 +
 configs/CSQ_CS908_defconfig                        |  1 +
 configs/Chuwi_V7_CW0825_defconfig                  |  1 +
 configs/Colombus_defconfig                         |  1 +
 configs/Cubieboard2_defconfig                      |  1 +
 configs/Cubieboard_defconfig                       |  1 +
 configs/Cubietruck_defconfig                       |  1 +
 configs/Cyrus_P5020_defconfig                      |  2 ++
 configs/Cyrus_P5040_defconfig                      |  2 ++
 configs/Empire_electronix_d709_defconfig           |  1 +
 configs/Hummingbird_A31_defconfig                  |  1 +
 configs/Hyundai_A7HD_defconfig                     |  1 +
 configs/Lamobo_R1_defconfig                        |  1 +
 configs/Linksprite_pcDuino3_Nano_defconfig         |  1 +
 configs/Linksprite_pcDuino3_defconfig              |  1 +
 configs/Linksprite_pcDuino_defconfig               |  1 +
 configs/MK808C_defconfig                           |  1 +
 configs/MPC8308RDB_defconfig                       |  2 ++
 configs/MPC8313ERDB_33_defconfig                   |  1 +
 configs/MPC8313ERDB_66_defconfig                   |  1 +
 configs/MPC8313ERDB_NAND_33_defconfig              |  1 +
 configs/MPC8313ERDB_NAND_66_defconfig              |  1 +
 configs/MPC8315ERDB_defconfig                      |  1 +
 configs/MPC8323ERDB_defconfig                      |  1 +
 configs/MPC832XEMDS_ATM_defconfig                  |  1 +
 configs/MPC832XEMDS_HOST_33_defconfig              |  1 +
 configs/MPC832XEMDS_HOST_66_defconfig              |  1 +
 configs/MPC832XEMDS_SLAVE_defconfig                |  1 +
 configs/MPC832XEMDS_defconfig                      |  1 +
 configs/MPC8349EMDS_defconfig                      |  1 +
 configs/MPC8349ITXGP_defconfig                     |  1 +
 configs/MPC8349ITX_LOWBOOT_defconfig               |  1 +
 configs/MPC8349ITX_defconfig                       |  1 +
 configs/MPC837XEMDS_HOST_defconfig                 |  1 +
 configs/MPC837XEMDS_defconfig                      |  1 +
 configs/MPC837XERDB_defconfig                      |  1 +
 configs/MPC8536DS_36BIT_defconfig                  |  1 +
 configs/MPC8536DS_SDCARD_defconfig                 |  1 +
 configs/MPC8536DS_SPIFLASH_defconfig               |  1 +
 configs/MPC8536DS_defconfig                        |  1 +
 configs/MPC8540ADS_defconfig                       |  1 +
 configs/MPC8541CDS_defconfig                       |  1 +
 configs/MPC8541CDS_legacy_defconfig                |  1 +
 configs/MPC8544DS_defconfig                        |  1 +
 configs/MPC8548CDS_36BIT_defconfig                 |  1 +
 configs/MPC8548CDS_defconfig                       |  1 +
 configs/MPC8548CDS_legacy_defconfig                |  1 +
 configs/MPC8555CDS_defconfig                       |  1 +
 configs/MPC8555CDS_legacy_defconfig                |  1 +
 configs/MPC8560ADS_defconfig                       |  1 +
 configs/MPC8568MDS_defconfig                       |  1 +
 configs/MPC8569MDS_ATM_defconfig                   |  1 +
 configs/MPC8569MDS_defconfig                       |  1 +
 configs/MPC8572DS_36BIT_defconfig                  |  2 ++
 configs/MPC8572DS_defconfig                        |  2 ++
 configs/MPC8610HPCD_defconfig                      |  1 +
 configs/MPC8641HPCN_36BIT_defconfig                |  1 +
 configs/MPC8641HPCN_defconfig                      |  1 +
 configs/MSI_Primo73_defconfig                      |  1 +
 configs/MSI_Primo81_defconfig                      |  1 +
 configs/Marsboard_A10_defconfig                    |  1 +
 configs/Mele_A1000G_quad_defconfig                 |  1 +
 configs/Mele_A1000_defconfig                       |  1 +
 configs/Mele_I7_defconfig                          |  1 +
 configs/Mele_M3_defconfig                          |  1 +
 configs/Mele_M5_defconfig                          |  1 +
 configs/Mele_M9_defconfig                          |  1 +
 configs/Mini-X_defconfig                           |  1 +
 configs/MiniFAP_defconfig                          |  1 +
 configs/O2D300_defconfig                           |  1 +
 configs/O2DNT2_RAMBOOT_defconfig                   |  1 +
 configs/O2DNT2_defconfig                           |  1 +
 configs/O2D_defconfig                              |  1 +
 configs/O2I_defconfig                              |  1 +
 configs/O2MNT_O2M110_defconfig                     |  1 +
 configs/O2MNT_O2M112_defconfig                     |  1 +
 configs/O2MNT_O2M113_defconfig                     |  1 +
 configs/O2MNT_defconfig                            |  1 +
 configs/O3DNT_defconfig                            |  1 +
 configs/Orangepi_defconfig                         |  1 +
 configs/Orangepi_mini_defconfig                    |  1 +
 configs/P1010RDB-PA_36BIT_NAND_SECBOOT_defconfig   |  2 ++
 configs/P1010RDB-PA_36BIT_NAND_defconfig           |  2 ++
 configs/P1010RDB-PA_36BIT_NOR_SECBOOT_defconfig    |  2 ++
 configs/P1010RDB-PA_36BIT_NOR_defconfig            |  2 ++
 configs/P1010RDB-PA_36BIT_SDCARD_defconfig         |  2 ++
 .../P1010RDB-PA_36BIT_SPIFLASH_SECBOOT_defconfig   |  2 ++
 configs/P1010RDB-PA_36BIT_SPIFLASH_defconfig       |  2 ++
 configs/P1010RDB-PA_NAND_SECBOOT_defconfig         |  2 ++
 configs/P1010RDB-PA_NAND_defconfig                 |  2 ++
 configs/P1010RDB-PA_NOR_SECBOOT_defconfig          |  2 ++
 configs/P1010RDB-PA_NOR_defconfig                  |  2 ++
 configs/P1010RDB-PA_SDCARD_defconfig               |  2 ++
 configs/P1010RDB-PA_SPIFLASH_SECBOOT_defconfig     |  2 ++
 configs/P1010RDB-PA_SPIFLASH_defconfig             |  2 ++
 configs/P1010RDB-PB_36BIT_NAND_SECBOOT_defconfig   |  2 ++
 configs/P1010RDB-PB_36BIT_NAND_defconfig           |  2 ++
 configs/P1010RDB-PB_36BIT_NOR_SECBOOT_defconfig    |  2 ++
 configs/P1010RDB-PB_36BIT_NOR_defconfig            |  2 ++
 configs/P1010RDB-PB_36BIT_SDCARD_defconfig         |  2 ++
 .../P1010RDB-PB_36BIT_SPIFLASH_SECBOOT_defconfig   |  2 ++
 configs/P1010RDB-PB_36BIT_SPIFLASH_defconfig       |  2 ++
 configs/P1010RDB-PB_NAND_SECBOOT_defconfig         |  2 ++
 configs/P1010RDB-PB_NAND_defconfig                 |  2 ++
 configs/P1010RDB-PB_NOR_SECBOOT_defconfig          |  2 ++
 configs/P1010RDB-PB_NOR_defconfig                  |  2 ++
 configs/P1010RDB-PB_SDCARD_defconfig               |  2 ++
 configs/P1010RDB-PB_SPIFLASH_SECBOOT_defconfig     |  2 ++
 configs/P1010RDB-PB_SPIFLASH_defconfig             |  2 ++
 configs/P1020MBG-PC_36BIT_SDCARD_defconfig         |  2 ++
 configs/P1020MBG-PC_36BIT_defconfig                |  2 ++
 configs/P1020MBG-PC_SDCARD_defconfig               |  2 ++
 configs/P1020MBG-PC_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/P1020UTM-PC_36BIT_SDCARD_defconfig         |  2 ++
 configs/P1020UTM-PC_36BIT_defconfig                |  2 ++
 configs/P1020UTM-PC_SDCARD_defconfig               |  2 ++
 configs/P1020UTM-PC_defconfig                      |  2 ++
 configs/P1021RDB-PC_36BIT_NAND_defconfig           |  2 ++
 configs/P1021RDB-PC_36BIT_SDCARD_defconfig         |  2 ++
 configs/P1021RDB-PC_36BIT_SPIFLASH_defconfig       |  2 ++
 configs/P1021RDB-PC_36BIT_defconfig                |  2 ++
 configs/P1021RDB-PC_NAND_defconfig                 |  2 ++
 configs/P1021RDB-PC_SDCARD_defconfig               |  2 ++
 configs/P1021RDB-PC_SPIFLASH_defconfig             |  2 ++
 configs/P1021RDB-PC_defconfig                      |  2 ++
 configs/P1022DS_36BIT_NAND_defconfig               |  2 ++
 configs/P1022DS_36BIT_SDCARD_defconfig             |  2 ++
 configs/P1022DS_36BIT_SPIFLASH_defconfig           |  2 ++
 configs/P1022DS_36BIT_defconfig                    |  2 ++
 configs/P1022DS_NAND_defconfig                     |  2 ++
 configs/P1022DS_SDCARD_defconfig                   |  2 ++
 configs/P1022DS_SPIFLASH_defconfig                 |  2 ++
 configs/P1022DS_defconfig                          |  2 ++
 configs/P1023RDB_defconfig                         |  2 ++
 configs/P1024RDB_36BIT_defconfig                   |  2 ++
 configs/P1024RDB_NAND_defconfig                    |  2 ++
 configs/P1024RDB_SDCARD_defconfig                  |  2 ++
 configs/P1024RDB_SPIFLASH_defconfig                |  2 ++
 configs/P1024RDB_defconfig                         |  2 ++
 configs/P1025RDB_36BIT_defconfig                   |  2 ++
 configs/P1025RDB_NAND_defconfig                    |  2 ++
 configs/P1025RDB_SDCARD_defconfig                  |  2 ++
 configs/P1025RDB_SPIFLASH_defconfig                |  2 ++
 configs/P1025RDB_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_SECURE_BOOT_defconfig             |  2 ++
 configs/P2041RDB_SPIFLASH_defconfig                |  2 ++
 configs/P2041RDB_SRIO_PCIE_BOOT_defconfig          |  2 ++
 configs/P2041RDB_defconfig                         |  2 ++
 configs/P3041DS_NAND_SECURE_BOOT_defconfig         |  2 ++
 configs/P3041DS_NAND_defconfig                     |  2 ++
 configs/P3041DS_SDCARD_defconfig                   |  2 ++
 configs/P3041DS_SECURE_BOOT_defconfig              |  2 ++
 configs/P3041DS_SPIFLASH_defconfig                 |  2 ++
 configs/P3041DS_SRIO_PCIE_BOOT_defconfig           |  2 ++
 configs/P3041DS_defconfig                          |  2 ++
 configs/P4080DS_SDCARD_defconfig                   |  2 ++
 configs/P4080DS_SECURE_BOOT_defconfig              |  2 ++
 configs/P4080DS_SPIFLASH_defconfig                 |  2 ++
 configs/P4080DS_SRIO_PCIE_BOOT_defconfig           |  2 ++
 configs/P4080DS_defconfig                          |  2 ++
 configs/P5020DS_NAND_SECURE_BOOT_defconfig         |  2 ++
 configs/P5020DS_NAND_defconfig                     |  2 ++
 configs/P5020DS_SDCARD_defconfig                   |  2 ++
 configs/P5020DS_SECURE_BOOT_defconfig              |  2 ++
 configs/P5020DS_SPIFLASH_defconfig                 |  2 ++
 configs/P5020DS_SRIO_PCIE_BOOT_defconfig           |  2 ++
 configs/P5020DS_defconfig                          |  2 ++
 configs/P5040DS_NAND_SECURE_BOOT_defconfig         |  2 ++
 configs/P5040DS_NAND_defconfig                     |  2 ++
 configs/P5040DS_SDCARD_defconfig                   |  2 ++
 configs/P5040DS_SECURE_BOOT_defconfig              |  2 ++
 configs/P5040DS_SPIFLASH_defconfig                 |  2 ++
 configs/P5040DS_defconfig                          |  2 ++
 configs/PLU405_defconfig                           |  1 +
 configs/PMC405DE_defconfig                         |  1 +
 configs/PMC440_defconfig                           |  1 +
 configs/Sinlinx_SinA33_defconfig                   |  1 +
 configs/Sinovoip_BPI_M2_defconfig                  |  1 +
 configs/T1023RDB_NAND_defconfig                    |  2 ++
 configs/T1023RDB_SDCARD_defconfig                  |  2 ++
 configs/T1023RDB_SECURE_BOOT_defconfig             |  2 ++
 configs/T1023RDB_SPIFLASH_defconfig                |  2 ++
 configs/T1023RDB_defconfig                         |  2 ++
 configs/T1024QDS_DDR4_SECURE_BOOT_defconfig        |  2 ++
 configs/T1024QDS_DDR4_defconfig                    |  2 ++
 configs/T1024QDS_NAND_defconfig                    |  2 ++
 configs/T1024QDS_SDCARD_defconfig                  |  2 ++
 configs/T1024QDS_SECURE_BOOT_defconfig             |  2 ++
 configs/T1024QDS_SPIFLASH_defconfig                |  2 ++
 configs/T1024QDS_defconfig                         |  2 ++
 configs/T1024RDB_NAND_defconfig                    |  2 ++
 configs/T1024RDB_SDCARD_defconfig                  |  2 ++
 configs/T1024RDB_SECURE_BOOT_defconfig             |  2 ++
 configs/T1024RDB_SPIFLASH_defconfig                |  2 ++
 configs/T1024RDB_defconfig                         |  2 ++
 configs/T1040D4RDB_NAND_defconfig                  |  2 ++
 configs/T1040D4RDB_SDCARD_defconfig                |  2 ++
 configs/T1040D4RDB_SECURE_BOOT_defconfig           |  2 ++
 configs/T1040D4RDB_SPIFLASH_defconfig              |  2 ++
 configs/T1040D4RDB_defconfig                       |  2 ++
 configs/T1040QDS_DDR4_defconfig                    |  2 ++
 configs/T1040QDS_SECURE_BOOT_defconfig             |  2 ++
 configs/T1040QDS_defconfig                         |  2 ++
 configs/T1040RDB_NAND_defconfig                    |  2 ++
 configs/T1040RDB_SDCARD_defconfig                  |  2 ++
 configs/T1040RDB_SECURE_BOOT_defconfig             |  2 ++
 configs/T1040RDB_SPIFLASH_defconfig                |  2 ++
 configs/T1040RDB_defconfig                         |  2 ++
 configs/T1042D4RDB_NAND_defconfig                  |  2 ++
 configs/T1042D4RDB_SDCARD_defconfig                |  2 ++
 configs/T1042D4RDB_SECURE_BOOT_defconfig           |  2 ++
 configs/T1042D4RDB_SPIFLASH_defconfig              |  2 ++
 configs/T1042D4RDB_defconfig                       |  2 ++
 configs/T1042RDB_PI_NAND_defconfig                 |  2 ++
 configs/T1042RDB_PI_SDCARD_defconfig               |  2 ++
 configs/T1042RDB_PI_SPIFLASH_defconfig             |  2 ++
 configs/T1042RDB_PI_defconfig                      |  2 ++
 configs/T1042RDB_SECURE_BOOT_defconfig             |  2 ++
 configs/T1042RDB_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_SECURE_BOOT_defconfig             |  2 ++
 configs/T2080RDB_SPIFLASH_defconfig                |  2 ++
 configs/T2080RDB_SRIO_PCIE_BOOT_defconfig          |  2 ++
 configs/T2080RDB_defconfig                         |  2 ++
 configs/T2081QDS_NAND_defconfig                    |  2 ++
 configs/T2081QDS_SDCARD_defconfig                  |  2 ++
 configs/T2081QDS_SPIFLASH_defconfig                |  2 ++
 configs/T2081QDS_SRIO_PCIE_BOOT_defconfig          |  2 ++
 configs/T2081QDS_defconfig                         |  2 ++
 configs/T4160QDS_NAND_defconfig                    |  2 ++
 configs/T4160QDS_SDCARD_defconfig                  |  2 ++
 configs/T4160QDS_SECURE_BOOT_defconfig             |  2 ++
 configs/T4160QDS_defconfig                         |  2 ++
 configs/T4160RDB_defconfig                         |  2 ++
 configs/T4240QDS_NAND_defconfig                    |  2 ++
 configs/T4240QDS_SDCARD_defconfig                  |  2 ++
 configs/T4240QDS_SECURE_BOOT_defconfig             |  2 ++
 configs/T4240QDS_SRIO_PCIE_BOOT_defconfig          |  2 ++
 configs/T4240QDS_defconfig                         |  2 ++
 configs/T4240RDB_SDCARD_defconfig                  |  2 ++
 configs/T4240RDB_defconfig                         |  2 ++
 configs/TQM5200S_HIGHBOOT_defconfig                |  1 +
 configs/TQM5200S_defconfig                         |  1 +
 configs/TQM5200_B_HIGHBOOT_defconfig               |  1 +
 configs/TQM5200_B_defconfig                        |  1 +
 configs/TQM5200_STK100_defconfig                   |  1 +
 configs/TQM5200_defconfig                          |  1 +
 configs/TQM823L_LCD_defconfig                      |  1 +
 configs/TQM823L_defconfig                          |  1 +
 configs/TQM823M_defconfig                          |  1 +
 configs/TQM834x_defconfig                          |  1 +
 configs/TQM850L_defconfig                          |  1 +
 configs/TQM850M_defconfig                          |  1 +
 configs/TQM855L_defconfig                          |  1 +
 configs/TQM855M_defconfig                          |  1 +
 configs/TQM860L_defconfig                          |  1 +
 configs/TQM860M_defconfig                          |  1 +
 configs/TQM862L_defconfig                          |  1 +
 configs/TQM862M_defconfig                          |  1 +
 configs/TQM866M_defconfig                          |  1 +
 configs/TQM885D_defconfig                          |  1 +
 configs/TTTech_defconfig                           |  1 +
 configs/TWR-P1025_defconfig                        |  2 ++
 configs/UCP1020_SPIFLASH_defconfig                 |  2 ++
 configs/UCP1020_defconfig                          |  2 ++
 configs/UTOO_P66_defconfig                         |  1 +
 configs/VOM405_defconfig                           |  1 +
 configs/Wexler_TAB7200_defconfig                   |  1 +
 configs/Wits_Pro_A20_DKT_defconfig                 |  1 +
 configs/Wobo_i5_defconfig                          |  1 +
 configs/Yones_Toptech_BD1078_defconfig             |  1 +
 configs/a3m071_defconfig                           |  2 ++
 configs/a4m072_defconfig                           |  1 +
 configs/a4m2k_defconfig                            |  2 ++
 configs/ac14xx_defconfig                           |  2 ++
 configs/acadia_defconfig                           |  1 +
 configs/am335x_baltos_defconfig                    |  1 +
 configs/am335x_boneblack_defconfig                 |  1 +
 configs/am335x_evm_defconfig                       |  1 +
 configs/am335x_evm_nor_defconfig                   |  1 +
 configs/am335x_evm_norboot_defconfig               |  1 +
 configs/am335x_evm_spiboot_defconfig               |  1 +
 configs/am335x_evm_usbspl_defconfig                |  1 +
 configs/am335x_gp_evm_defconfig                    |  1 +
 configs/am335x_sl50_defconfig                      |  1 +
 configs/apalis_t30_defconfig                       |  1 +
 configs/arches_defconfig                           |  1 +
 configs/aria_defconfig                             |  1 +
 configs/aristainetos2_defconfig                    |  1 +
 configs/aristainetos2b_defconfig                   |  1 +
 configs/aristainetos_defconfig                     |  1 +
 configs/arndale_defconfig                          |  1 +
 configs/ba10_tv_box_defconfig                      |  1 +
 configs/bamboo_defconfig                           |  1 +
 configs/bayleybay_defconfig                        |  1 +
 configs/beaver_defconfig                           |  1 +
 configs/birdland_bav335a_defconfig                 |  1 +
 configs/birdland_bav335b_defconfig                 |  1 +
 configs/bubinga_defconfig                          |  1 +
 configs/caddy2_defconfig                           |  1 +
 configs/cam5200_defconfig                          |  1 +
 configs/cam5200_niosflash_defconfig                |  1 +
 configs/canyonlands_defconfig                      |  1 +
 configs/cardhu_defconfig                           |  1 +
 configs/charon_defconfig                           |  1 +
 configs/chromebook_link_defconfig                  |  1 +
 configs/chromebox_panther_defconfig                |  1 +
 configs/cm5200_defconfig                           |  1 +
 configs/cm_fx6_defconfig                           |  1 +
 configs/cm_t54_defconfig                           |  1 +
 configs/colibri_t20_defconfig                      |  1 +
 configs/colibri_t30_defconfig                      |  1 +
 .../controlcenterd_36BIT_SDCARD_DEVELOP_defconfig  |  2 ++
 configs/controlcenterd_36BIT_SDCARD_defconfig      |  2 ++
 configs/coreboot-x86_defconfig                     |  1 +
 configs/crownbay_defconfig                         |  1 +
 configs/dalmore_defconfig                          |  1 +
 configs/devconcenter_defconfig                     |  2 ++
 configs/digsy_mtc_RAMBOOT_defconfig                |  1 +
 configs/digsy_mtc_defconfig                        |  1 +
 configs/digsy_mtc_rev5_RAMBOOT_defconfig           |  1 +
 configs/digsy_mtc_rev5_defconfig                   |  1 +
 configs/dlvision-10g_defconfig                     |  2 ++
 configs/dlvision_defconfig                         |  2 ++
 configs/e2220-1170_defconfig                       |  1 +
 configs/eco5pk_defconfig                           |  1 +
 configs/efi-x86_defconfig                          |  1 +
 configs/flea3_defconfig                            |  1 +
 configs/fo300_defconfig                            |  1 +
 configs/ga10h_v1_1_defconfig                       |  1 +
 configs/galileo_defconfig                          |  1 +
 configs/gdppc440etx_defconfig                      |  1 +
 configs/glacier_defconfig                          |  1 +
 configs/glacier_ramboot_defconfig                  |  1 +
 configs/gt90h_v4_defconfig                         |  1 +
 configs/gwventana_defconfig                        |  2 ++
 configs/h2200_defconfig                            |  1 +
 configs/haleakala_defconfig                        |  1 +
 configs/harmony_defconfig                          |  1 +
 configs/highbank_defconfig                         |  2 ++
 configs/hrcon_defconfig                            |  2 ++
 configs/hrcon_dh_defconfig                         |  2 ++
 configs/i12-tvbox_defconfig                        |  1 +
 configs/iNet_3F_defconfig                          |  1 +
 configs/iNet_3W_defconfig                          |  1 +
 configs/iNet_86VS_defconfig                        |  1 +
 configs/icon_defconfig                             |  1 +
 configs/ids8313_defconfig                          |  1 +
 configs/inet1_defconfig                            |  1 +
 configs/inet97fv2_defconfig                        |  1 +
 configs/inet98v_rev2_defconfig                     |  1 +
 configs/inet9f_rev03_defconfig                     |  1 +
 configs/intip_defconfig                            |  2 ++
 configs/io64_defconfig                             |  2 ++
 configs/io_defconfig                               |  2 ++
 configs/iocon_defconfig                            |  1 +
 configs/ipek01_defconfig                           |  1 +
 configs/jesurun_q5_defconfig                       |  1 +
 configs/jetson-tk1_defconfig                       |  1 +
 configs/k2e_evm_defconfig                          |  1 +
 configs/k2g_evm_defconfig                          |  1 +
 configs/k2hk_evm_defconfig                         |  1 +
 configs/k2l_evm_defconfig                          |  1 +
 configs/katmai_defconfig                           |  1 +
 configs/kilauea_defconfig                          |  1 +
 configs/kmcoge4_defconfig                          |  2 ++
 configs/kmcoge5ne_defconfig                        |  1 +
 configs/kmeter1_defconfig                          |  1 +
 configs/kmlion1_defconfig                          |  2 ++
 configs/kmopti2_defconfig                          |  1 +
 configs/kmsupx5_defconfig                          |  1 +
 configs/kmtegr1_defconfig                          |  1 +
 configs/kmtepr2_defconfig                          |  1 +
 configs/kmvect1_defconfig                          |  1 +
 configs/ls1021aqds_ddr4_nor_defconfig              |  1 +
 configs/ls1021aqds_ddr4_nor_lpuart_defconfig       |  1 +
 configs/ls1021aqds_nand_defconfig                  |  1 +
 configs/ls1021aqds_nor_SECURE_BOOT_defconfig       |  1 +
 configs/ls1021aqds_nor_defconfig                   |  1 +
 configs/ls1021aqds_nor_lpuart_defconfig            |  1 +
 configs/ls1021aqds_qspi_defconfig                  |  1 +
 configs/ls1021aqds_sdcard_defconfig                |  1 +
 configs/ls1021atwr_nor_SECURE_BOOT_defconfig       |  1 +
 configs/ls1021atwr_nor_defconfig                   |  1 +
 configs/ls1021atwr_nor_lpuart_defconfig            |  1 +
 configs/ls1021atwr_qspi_defconfig                  |  1 +
 configs/ls1021atwr_sdcard_ifc_defconfig            |  1 +
 configs/ls1021atwr_sdcard_qspi_defconfig           |  1 +
 configs/ls1043aqds_defconfig                       |  2 ++
 configs/ls1043aqds_nand_defconfig                  |  2 ++
 configs/ls1043aqds_nor_ddr3_defconfig              |  2 ++
 configs/ls1043aqds_sdcard_ifc_defconfig            |  2 ++
 configs/ls1043ardb_SECURE_BOOT_defconfig           |  2 ++
 configs/ls1043ardb_defconfig                       |  2 ++
 configs/ls1043ardb_nand_defconfig                  |  2 ++
 configs/ls1043ardb_sdcard_defconfig                |  2 ++
 configs/ls2080a_emu_defconfig                      |  2 ++
 configs/ls2080a_simu_defconfig                     |  2 ++
 configs/ls2080aqds_defconfig                       |  2 ++
 configs/ls2080aqds_nand_defconfig                  |  2 ++
 configs/ls2080ardb_defconfig                       |  2 ++
 configs/ls2080ardb_nand_defconfig                  |  2 ++
 configs/ls2085a_emu_defconfig                      |  2 ++
 configs/ls2085a_simu_defconfig                     |  2 ++
 configs/ls2085aqds_defconfig                       |  2 ++
 configs/ls2085aqds_nand_defconfig                  |  2 ++
 configs/ls2085ardb_defconfig                       |  2 ++
 configs/ls2085ardb_nand_defconfig                  |  2 ++
 configs/luan_defconfig                             |  1 +
 configs/lwmon5_defconfig                           |  2 ++
 configs/m28evk_defconfig                           |  1 +
 configs/m53evk_defconfig                           |  1 +
 configs/makalu_defconfig                           |  1 +
 configs/mcx_defconfig                              |  1 +
 configs/mecp5123_defconfig                         |  1 +
 configs/medcom-wide_defconfig                      |  2 ++
 configs/meesc_dataflash_defconfig                  |  1 +
 configs/meesc_defconfig                            |  1 +
 configs/mgcoge3ne_defconfig                        |  2 ++
 configs/mgcoge_defconfig                           |  2 ++
 configs/microblaze-generic_defconfig               |  1 +
 configs/minnowmax_defconfig                        |  1 +
 configs/mixtile_loftq_defconfig                    |  1 +
 configs/mk802_a10s_defconfig                       |  1 +
 configs/mk802_defconfig                            |  1 +
 configs/mk802ii_defconfig                          |  1 +
 configs/motionpro_defconfig                        |  1 +
 configs/mpc5121ads_defconfig                       |  1 +
 configs/mpc5121ads_rev2_defconfig                  |  1 +
 configs/mpc8308_p1m_defconfig                      |  1 +
 configs/mt_ventoux_defconfig                       |  1 +
 configs/munices_defconfig                          |  1 +
 configs/neo_defconfig                              |  2 ++
 configs/novena_defconfig                           |  1 +
 configs/nyan-big_defconfig                         |  2 ++
 configs/odroid-xu3_defconfig                       |  1 +
 configs/odroid_defconfig                           |  1 +
 configs/p2371-0000_defconfig                       |  1 +
 configs/p2371-2180_defconfig                       |  1 +
 configs/p2571_defconfig                            |  1 +
 configs/paz00_defconfig                            |  1 +
 configs/pcm030_LOWBOOT_defconfig                   |  1 +
 configs/pcm030_defconfig                           |  1 +
 configs/pdm360ng_defconfig                         |  2 ++
 configs/peach-pi_defconfig                         |  1 +
 configs/peach-pit_defconfig                        |  1 +
 configs/plutux_defconfig                           |  2 ++
 configs/pov_protab2_ips9_defconfig                 |  1 +
 configs/pxm2_defconfig                             |  1 +
 configs/q8_a13_tablet_defconfig                    |  1 +
 configs/q8_a23_tablet_800x480_defconfig            |  1 +
 configs/q8_a33_tablet_1024x600_defconfig           |  1 +
 configs/q8_a33_tablet_800x480_defconfig            |  1 +
 configs/qemu-ppce500_defconfig                     |  2 ++
 configs/qemu-x86_defconfig                         |  1 +
 configs/r7-tv-dongle_defconfig                     |  1 +
 configs/rainier_defconfig                          |  1 +
 configs/rainier_ramboot_defconfig                  |  1 +
 configs/redwood_defconfig                          |  1 +
 configs/rpi_2_defconfig                            |  1 +
 configs/rpi_defconfig                              |  1 +
 configs/rut_defconfig                              |  1 +
 configs/sbc8349_PCI_33_defconfig                   |  1 +
 configs/sbc8349_PCI_66_defconfig                   |  1 +
 configs/sbc8349_defconfig                          |  1 +
 configs/sbc8548_PCI_33_PCIE_defconfig              |  1 +
 configs/sbc8548_PCI_33_defconfig                   |  1 +
 configs/sbc8548_PCI_66_PCIE_defconfig              |  1 +
 configs/sbc8548_PCI_66_defconfig                   |  1 +
 configs/sbc8548_defconfig                          |  1 +
 configs/sbc8641d_defconfig                         |  1 +
 configs/seaboard_defconfig                         |  1 +
 configs/sequoia_defconfig                          |  1 +
 configs/sequoia_ramboot_defconfig                  |  1 +
 configs/smartweb_defconfig                         |  1 +
 configs/smdk5250_defconfig                         |  1 +
 configs/smdk5420_defconfig                         |  1 +
 configs/snapper9260_defconfig                      |  1 +
 configs/snapper9g20_defconfig                      |  1 +
 configs/snow_defconfig                             |  1 +
 configs/socfpga_arria5_defconfig                   |  1 +
 configs/socfpga_cyclone5_defconfig                 |  1 +
 configs/socfpga_de0_nano_soc_defconfig             |  1 +
 configs/socfpga_mcvevk_defconfig                   |  1 +
 configs/socfpga_sockit_defconfig                   |  1 +
 configs/socfpga_socrates_defconfig                 |  1 +
 configs/socfpga_sr1500_defconfig                   |  1 +
 configs/socrates_defconfig                         |  2 ++
 configs/spring_defconfig                           |  1 +
 configs/strider_con_defconfig                      |  2 ++
 configs/strider_cpu_defconfig                      |  2 ++
 configs/sunxi_Gemei_G9_defconfig                   |  1 +
 configs/suvd3_defconfig                            |  1 +
 configs/sycamore_defconfig                         |  1 +
 configs/t3corp_defconfig                           |  2 ++
 configs/tbs2910_defconfig                          |  1 +
 configs/tec-ng_defconfig                           |  2 ++
 configs/tec_defconfig                              |  2 ++
 configs/tqma6q_mba6_mmc_defconfig                  |  2 ++
 configs/tqma6q_mba6_spi_defconfig                  |  2 ++
 configs/tqma6s_mba6_mmc_defconfig                  |  2 ++
 configs/tqma6s_mba6_spi_defconfig                  |  2 ++
 configs/tqma6s_wru4_mmc_defconfig                  |  2 ++
 configs/trats2_defconfig                           |  1 +
 configs/trats_defconfig                            |  1 +
 configs/trimslice_defconfig                        |  1 +
 configs/tseries_mmc_defconfig                      |  1 +
 configs/tseries_nand_defconfig                     |  1 +
 configs/tseries_spi_defconfig                      |  1 +
 configs/tuge1_defconfig                            |  1 +
 configs/tuxx1_defconfig                            |  1 +
 configs/twister_defconfig                          |  1 +
 configs/ve8313_defconfig                           |  1 +
 configs/venice2_defconfig                          |  1 +
 configs/ventana_defconfig                          |  1 +
 configs/vme8349_defconfig                          |  1 +
 configs/walnut_defconfig                           |  1 +
 configs/whistler_defconfig                         |  1 +
 configs/wtk_defconfig                              |  1 +
 configs/xpedite1000_defconfig                      |  1 +
 configs/xpedite517x_defconfig                      |  2 ++
 configs/xpedite520x_defconfig                      |  2 ++
 configs/xpedite537x_defconfig                      |  2 ++
 configs/xpedite550x_defconfig                      |  2 ++
 configs/yellowstone_defconfig                      |  1 +
 configs/yosemite_defconfig                         |  1 +
 configs/yucca_defconfig                            |  1 +
 include/configs/10m50_devboard.h                   |  1 -
 include/configs/3c120_devboard.h                   |  1 -
 include/configs/B4860QDS.h                         |  2 --
 include/configs/BSC9131RDB.h                       |  2 --
 include/configs/BSC9132QDS.h                       |  2 --
 include/configs/C29XPCIE.h                         |  2 --
 include/configs/CPCI4052.h                         |  1 -
 include/configs/MPC8308RDB.h                       |  2 --
 include/configs/MPC8313ERDB.h                      |  1 -
 include/configs/MPC8315ERDB.h                      |  1 -
 include/configs/MPC8323ERDB.h                      |  1 -
 include/configs/MPC832XEMDS.h                      |  1 -
 include/configs/MPC8349EMDS.h                      |  1 -
 include/configs/MPC8349ITX.h                       |  1 -
 include/configs/MPC837XEMDS.h                      |  1 -
 include/configs/MPC837XERDB.h                      |  1 -
 include/configs/MPC8536DS.h                        |  1 -
 include/configs/MPC8540ADS.h                       |  1 -
 include/configs/MPC8541CDS.h                       |  1 -
 include/configs/MPC8544DS.h                        |  1 -
 include/configs/MPC8548CDS.h                       |  1 -
 include/configs/MPC8555CDS.h                       |  1 -
 include/configs/MPC8560ADS.h                       |  1 -
 include/configs/MPC8568MDS.h                       |  1 -
 include/configs/MPC8569MDS.h                       |  1 -
 include/configs/MPC8572DS.h                        |  2 --
 include/configs/MPC8610HPCD.h                      |  1 -
 include/configs/MPC8641HPCN.h                      |  1 -
 include/configs/P1010RDB.h                         |  2 --
 include/configs/P1022DS.h                          |  2 --
 include/configs/P1023RDB.h                         |  2 --
 include/configs/P2041RDB.h                         |  2 --
 include/configs/PLU405.h                           |  1 -
 include/configs/PMC405DE.h                         |  1 -
 include/configs/PMC440.h                           |  1 -
 include/configs/T102xQDS.h                         |  2 --
 include/configs/T102xRDB.h                         |  2 --
 include/configs/T1040QDS.h                         |  2 --
 include/configs/T104xRDB.h                         |  2 --
 include/configs/T208xQDS.h                         |  2 --
 include/configs/T208xRDB.h                         |  2 --
 include/configs/T4240RDB.h                         |  2 --
 include/configs/TQM5200.h                          |  1 -
 include/configs/TQM823L.h                          |  1 -
 include/configs/TQM823M.h                          |  1 -
 include/configs/TQM834x.h                          |  1 -
 include/configs/TQM850L.h                          |  1 -
 include/configs/TQM850M.h                          |  1 -
 include/configs/TQM855L.h                          |  1 -
 include/configs/TQM855M.h                          |  1 -
 include/configs/TQM860L.h                          |  1 -
 include/configs/TQM860M.h                          |  1 -
 include/configs/TQM862L.h                          |  1 -
 include/configs/TQM862M.h                          |  1 -
 include/configs/TQM866M.h                          |  1 -
 include/configs/TQM885D.h                          |  1 -
 include/configs/UCP1020.h                          |  2 --
 include/configs/VOM405.h                           |  1 -
 include/configs/a3m071.h                           |  2 --
 include/configs/a4m072.h                           |  1 -
 include/configs/ac14xx.h                           |  2 --
 include/configs/am335x_evm.h                       |  1 -
 include/configs/am335x_sl50.h                      |  1 -
 include/configs/amcc-common.h                      |  1 -
 include/configs/aria.h                             |  1 -
 include/configs/aristainetos-common.h              |  1 -
 include/configs/baltos.h                           |  1 -
 include/configs/bav335x.h                          |  1 -
 include/configs/cm5200.h                           |  1 -
 include/configs/cm_fx6.h                           |  1 -
 include/configs/cm_t54.h                           |  1 -
 include/configs/controlcenterd.h                   |  2 --
 include/configs/corenet_ds.h                       |  2 --
 include/configs/cyrus.h                            |  2 --
 include/configs/digsy_mtc.h                        |  1 -
 include/configs/dlvision-10g.h                     |  1 -
 include/configs/dlvision.h                         |  1 -
 include/configs/exynos5-common.h                   |  1 -
 include/configs/flea3.h                            |  1 -
 include/configs/gw_ventana.h                       |  2 --
 include/configs/h2200.h                            |  1 -
 include/configs/highbank.h                         |  2 --
 include/configs/hrcon.h                            |  2 --
 include/configs/ids8313.h                          |  1 -
 include/configs/intip.h                            |  1 -
 include/configs/io.h                               |  1 -
 include/configs/io64.h                             |  1 -
 include/configs/ipek01.h                           |  1 -
 include/configs/jupiter.h                          |  1 -
 include/configs/km/km-powerpc.h                    |  1 -
 include/configs/km/kmp204x-common.h                |  2 --
 include/configs/km82xx.h                           |  1 -
 include/configs/ls1021aqds.h                       |  1 -
 include/configs/ls1021atwr.h                       |  1 -
 include/configs/ls1043a_common.h                   |  2 --
 include/configs/ls1043aqds.h                       |  1 -
 include/configs/ls2080a_common.h                   |  2 --
 include/configs/lwmon5.h                           |  2 --
 include/configs/m28evk.h                           |  1 -
 include/configs/m53evk.h                           |  1 -
 include/configs/manroland/common.h                 |  1 -
 include/configs/mcx.h                              |  1 -
 include/configs/mecp5123.h                         |  1 -
 include/configs/medcom-wide.h                      |  1 -
 include/configs/meesc.h                            |  1 -
 include/configs/microblaze-generic.h               |  1 -
 include/configs/motionpro.h                        |  1 -
 include/configs/mpc5121ads.h                       |  1 -
 include/configs/mpc8308_p1m.h                      |  1 -
 include/configs/munices.h                          |  1 -
 include/configs/mx31ads.h                          |  1 -
 include/configs/neo.h                              |  1 -
 include/configs/novena.h                           |  1 -
 include/configs/nyan-big.h                         |  1 -
 include/configs/o2dnt-common.h                     |  1 -
 include/configs/odroid.h                           |  1 -
 include/configs/p1_p2_rdb_pc.h                     |  2 --
 include/configs/p1_twr.h                           |  2 --
 include/configs/pcm030.h                           |  1 -
 include/configs/pdm360ng.h                         |  2 --
 include/configs/plutux.h                           |  1 -
 include/configs/pxm2.h                             |  1 -
 include/configs/qemu-ppce500.h                     |  2 --
 include/configs/rpi-common.h                       |  1 -
 include/configs/rut.h                              |  1 -
 include/configs/sbc8349.h                          |  1 -
 include/configs/sbc8548.h                          |  1 -
 include/configs/sbc8641d.h                         |  1 -
 include/configs/smartweb.h                         |  1 -
 include/configs/snapper9260.h                      |  1 -
 include/configs/socfpga_common.h                   |  1 -
 include/configs/socrates.h                         |  2 --
 include/configs/strider.h                          |  2 --
 include/configs/sunxi-common.h                     |  1 -
 include/configs/t3corp.h                           |  1 -
 include/configs/t4qds.h                            |  2 --
 include/configs/tam3517-common.h                   |  1 -
 include/configs/tbs2910.h                          |  1 -
 include/configs/tec-ng.h                           |  1 -
 include/configs/tec.h                              |  1 -
 include/configs/tegra-common.h                     |  1 -
 include/configs/ti_armv7_keystone2.h               |  1 -
 include/configs/tqma6.h                            |  2 --
 include/configs/trats.h                            |  1 -
 include/configs/trats2.h                           |  1 -
 include/configs/tseries.h                          |  1 -
 include/configs/ve8313.h                           |  1 -
 include/configs/vme8349.h                          |  1 -
 include/configs/x86-common.h                       |  1 -
 include/configs/xpedite1000.h                      |  1 -
 include/configs/xpedite517x.h                      |  2 --
 include/configs/xpedite520x.h                      |  2 --
 include/configs/xpedite537x.h                      |  2 --
 include/configs/xpedite550x.h                      |  2 --
 include/image.h                                    |  9 ++++---
 768 files changed, 953 insertions(+), 225 deletions(-)

diff --git a/cmd/disk.c b/cmd/disk.c
index 3025225..106f2d1 100644
--- a/cmd/disk.c
+++ b/cmd/disk.c
@@ -22,7 +22,7 @@ int common_diskboot(cmd_tbl_t *cmdtp, const char *intf, int argc,
 #endif
 	block_dev_desc_t *dev_desc;
 
-#if defined(CONFIG_FIT)
+#if CONFIG_IS_ENABLED(FIT)
 	const void *fit_hdr = NULL;
 #endif
 
@@ -82,7 +82,7 @@ int common_diskboot(cmd_tbl_t *cmdtp, const char *intf, int argc,
 		cnt = image_get_image_size(hdr);
 		break;
 #endif
-#if defined(CONFIG_FIT)
+#if CONFIG_IS_ENABLED(FIT)
 	case IMAGE_FORMAT_FIT:
 		fit_hdr = (const void *) addr;
 		puts("Fit image detected...\n");
@@ -108,7 +108,7 @@ int common_diskboot(cmd_tbl_t *cmdtp, const char *intf, int argc,
 	}
 	bootstage_mark(BOOTSTAGE_ID_IDE_READ);
 
-#if defined(CONFIG_FIT)
+#if CONFIG_IS_ENABLED(FIT)
 	/* This cannot be done earlier,
 	 * we need complete FIT image in RAM first */
 	if (genimg_get_format((void *) addr) == IMAGE_FORMAT_FIT) {
diff --git a/common/Kconfig b/common/Kconfig
index 067545d..fe488d5 100644
--- a/common/Kconfig
+++ b/common/Kconfig
@@ -124,3 +124,31 @@ config CONSOLE_RECORD_IN_SIZE
 	  tstc() and getc() will use this in preference to real device input.
 	  The buffer is allocated immediately after the malloc() region is
 	  ready.
+
+config FIT
+	bool "Enable support for Flat Image Trees"
+	depends on OF_LIBFDT
+	help
+	  U-Boot uses a type of image called FIT (Flat Image Tree) to store
+	  the Operating System, ramdisk and device tree files. This image is
+	  very flexible, supporting compression, multiple images, multiple
+	  configurations, verification through hashing and also verified
+	  boot (secure boot using RSA). This option enables that feature.
+
+config OF_BOARD_SETUP
+	bool "Set up board-specific details in device tree before boot"
+	depends on OF_LIBFDT
+	help
+	  This causes U-Boot to call ft_board_setup() before booting into
+	  the Operating System. This function can set up various
+	  board-specific information in the device tree for use by the OS.
+	  The device tree is then passed to the OS.
+
+config OF_SYSTEM_SETUP
+	bool "Set up system-specific details in device tree before boot"
+	depends on OF_LIBFDT
+	help
+	  This causes U-Boot to call ft_system_setup() before booting into
+	  the Operating System. This function can set up various
+	  system-specific information in the device tree for use by the OS.
+	  The device tree is then passed to the OS.
diff --git a/common/Makefile b/common/Makefile
index 5998411..25083a4 100644
--- a/common/Makefile
+++ b/common/Makefile
@@ -131,7 +131,7 @@ endif
 obj-y += image.o
 obj-$(CONFIG_ANDROID_BOOT_IMAGE) += image-android.o
 obj-$(CONFIG_OF_LIBFDT) += image-fdt.o
-obj-$(CONFIG_FIT) += image-fit.o
+obj-$(CONFIG_$(SPL_)FIT) += image-fit.o
 obj-$(CONFIG_FIT_SIGNATURE) += image-sig.o
 obj-$(CONFIG_IO_TRACE) += iotrace.o
 obj-y += memsize.o
diff --git a/common/bootm.c b/common/bootm.c
index 99d574d..686d28b 100644
--- a/common/bootm.c
+++ b/common/bootm.c
@@ -108,7 +108,7 @@ static int bootm_find_os(cmd_tbl_t *cmdtp, int flag, int argc,
 		images.os.arch = image_get_arch(os_hdr);
 		break;
 #endif
-#if defined(CONFIG_FIT)
+#if IMAGE_USE_FIT
 	case IMAGE_FORMAT_FIT:
 		if (fit_image_get_type(images.fit_hdr_os,
 				       images.fit_noffset_os,
@@ -180,7 +180,7 @@ static int bootm_find_os(cmd_tbl_t *cmdtp, int flag, int argc,
 		/* Kernel entry point is the setup.bin */
 	} else if (images.legacy_hdr_valid) {
 		images.ep = image_get_ep(&images.legacy_hdr_os_copy);
-#if defined(CONFIG_FIT)
+#if IMAGE_USE_FIT
 	} else if (images.fit_uname_os) {
 		int ret;
 
@@ -245,7 +245,7 @@ int bootm_find_images(int flag, int argc, char * const argv[])
 	set_working_fdt_addr((ulong)images.ft_addr);
 #endif
 
-#if defined(CONFIG_FIT)
+#if IMAGE_USE_FIT
 	/* find all of the loadables */
 	ret = boot_get_loadable(argc, argv, &images, IH_ARCH_DEFAULT,
 			       NULL, NULL);
@@ -788,7 +788,7 @@ static const void *boot_get_kernel(cmd_tbl_t *cmdtp, int flag, int argc,
 	const void *buf;
 	const char	*fit_uname_config = NULL;
 	const char	*fit_uname_kernel = NULL;
-#if defined(CONFIG_FIT)
+#if IMAGE_USE_FIT
 	int		os_noffset;
 #endif
 
@@ -849,7 +849,7 @@ static const void *boot_get_kernel(cmd_tbl_t *cmdtp, int flag, int argc,
 		bootstage_mark(BOOTSTAGE_ID_DECOMP_IMAGE);
 		break;
 #endif
-#if defined(CONFIG_FIT)
+#if IMAGE_USE_FIT
 	case IMAGE_FORMAT_FIT:
 		os_noffset = fit_image_load(images, img_addr,
 				&fit_uname_kernel, &fit_uname_config,
diff --git a/common/image-fdt.c b/common/image-fdt.c
index 5e4e5bd..80d9362 100644
--- a/common/image-fdt.c
+++ b/common/image-fdt.c
@@ -231,7 +231,7 @@ int boot_get_fdt(int flag, int argc, char * const argv[], uint8_t arch,
 	ulong		fdt_addr;
 	char		*fdt_blob = NULL;
 	void		*buf;
-#if defined(CONFIG_FIT)
+#if CONFIG_IS_ENABLED(FIT)
 	const char	*fit_uname_config = images->fit_uname_cfg;
 	const char	*fit_uname_fdt = NULL;
 	ulong		default_addr;
@@ -246,7 +246,7 @@ int boot_get_fdt(int flag, int argc, char * const argv[], uint8_t arch,
 	if (argc > 2)
 		select = argv[2];
 	if (select || genimg_has_config(images)) {
-#if defined(CONFIG_FIT)
+#if CONFIG_IS_ENABLED(FIT)
 		if (select) {
 			/*
 			 * If the FDT blob comes from the FIT image and the
@@ -276,7 +276,7 @@ int boot_get_fdt(int flag, int argc, char * const argv[], uint8_t arch,
 				debug("*  fdt: cmdline image address = 0x%08lx\n",
 				      fdt_addr);
 			}
-#if defined(CONFIG_FIT)
+#if CONFIG_IS_ENABLED(FIT)
 		} else {
 			/* use FIT configuration provided in first bootm
 			 * command argument
@@ -351,7 +351,7 @@ int boot_get_fdt(int flag, int argc, char * const argv[], uint8_t arch,
 			 * (libfdt based) and raw FDT blob (also libfdt
 			 * based).
 			 */
-#if defined(CONFIG_FIT)
+#if CONFIG_IS_ENABLED(FIT)
 			/* check FDT blob vs FIT blob */
 			if (fit_check_format(buf)) {
 				ulong load, len;
diff --git a/common/image-fit.c b/common/image-fit.c
index c531ee7..954a89b 100644
--- a/common/image-fit.c
+++ b/common/image-fit.c
@@ -1091,8 +1091,9 @@ int fit_all_image_verify(const void *fit)
 			 * Direct child node of the images parent node,
 			 * i.e. component image node.
 			 */
-			printf("   Hash(es) for Image %u (%s): ", count++,
+			printf("   Hash(es) for Image %u (%s): ", count,
 			       fit_get_name(fit, noffset, NULL));
+			count++;
 
 			if (!fit_image_verify(fit, noffset))
 				return 0;
diff --git a/common/image.c b/common/image.c
index f4a1dc8..ca43763 100644
--- a/common/image.c
+++ b/common/image.c
@@ -29,7 +29,7 @@
 #include <image.h>
 #include <mapmem.h>
 
-#if defined(CONFIG_FIT) || defined(CONFIG_OF_LIBFDT)
+#if IMAGE_USE_FIT || defined(CONFIG_OF_LIBFDT)
 #include <libfdt.h>
 #include <fdt_support.h>
 #endif
@@ -702,7 +702,7 @@ ulong genimg_get_kernel_addr_fit(char * const img_addr,
 		kernel_addr = load_addr;
 		debug("*  kernel: default image load address = 0x%08lx\n",
 		      load_addr);
-#if defined(CONFIG_FIT)
+#if CONFIG_IS_ENABLED(FIT)
 	} else if (fit_parse_conf(img_addr, load_addr, &kernel_addr,
 				  fit_uname_config)) {
 		debug("*  kernel: config '%s' from image at 0x%08lx\n",
@@ -757,7 +757,7 @@ int genimg_get_format(const void *img_addr)
 	if (image_check_magic(hdr))
 		return IMAGE_FORMAT_LEGACY;
 #endif
-#if defined(CONFIG_FIT) || defined(CONFIG_OF_LIBFDT)
+#if IMAGE_USE_FIT || defined(CONFIG_OF_LIBFDT)
 	if (fdt_check_header(img_addr) == 0)
 		return IMAGE_FORMAT_FIT;
 #endif
@@ -794,7 +794,7 @@ ulong genimg_get_image(ulong img_addr)
 
 		/* get header size */
 		h_size = image_get_header_size();
-#if defined(CONFIG_FIT)
+#if IMAGE_USE_FIT
 		if (sizeof(struct fdt_header) > h_size)
 			h_size = sizeof(struct fdt_header);
 #endif
@@ -816,7 +816,7 @@ ulong genimg_get_image(ulong img_addr)
 					ram_addr, d_size);
 			break;
 #endif
-#if defined(CONFIG_FIT)
+#if IMAGE_USE_FIT
 		case IMAGE_FORMAT_FIT:
 			d_size = fit_get_size(buf) - h_size;
 			debug("   FIT/FDT format image found at 0x%08lx, "
@@ -857,7 +857,7 @@ ulong genimg_get_image(ulong img_addr)
  */
 int genimg_has_config(bootm_headers_t *images)
 {
-#if defined(CONFIG_FIT)
+#if IMAGE_USE_FIT
 	if (images->fit_uname_cfg)
 		return 1;
 #endif
@@ -898,7 +898,7 @@ int boot_get_ramdisk(int argc, char * const argv[], bootm_headers_t *images,
 #ifdef CONFIG_SUPPORT_RAW_INITRD
 	char *end;
 #endif
-#if defined(CONFIG_FIT)
+#if IMAGE_USE_FIT
 	const char	*fit_uname_config = images->fit_uname_cfg;
 	const char	*fit_uname_ramdisk = NULL;
 	ulong		default_addr;
@@ -929,7 +929,7 @@ int boot_get_ramdisk(int argc, char * const argv[], bootm_headers_t *images,
 		debug("## Skipping init Ramdisk\n");
 		rd_len = rd_data = 0;
 	} else if (select || genimg_has_config(images)) {
-#if defined(CONFIG_FIT)
+#if IMAGE_USE_FIT
 		if (select) {
 			/*
 			 * If the init ramdisk comes from the FIT image and
@@ -960,7 +960,7 @@ int boot_get_ramdisk(int argc, char * const argv[], bootm_headers_t *images,
 						"0x%08lx\n",
 						rd_addr);
 			}
-#if defined(CONFIG_FIT)
+#if IMAGE_USE_FIT
 		} else {
 			/* use FIT configuration provided in first bootm
 			 * command argument. If the property is not defined,
@@ -1003,7 +1003,7 @@ int boot_get_ramdisk(int argc, char * const argv[], bootm_headers_t *images,
 			rd_load = image_get_load(rd_hdr);
 			break;
 #endif
-#if defined(CONFIG_FIT)
+#if IMAGE_USE_FIT
 		case IMAGE_FORMAT_FIT:
 			rd_noffset = fit_image_load(images,
 					rd_addr, &fit_uname_ramdisk,
@@ -1179,14 +1179,14 @@ error:
 int boot_get_setup(bootm_headers_t *images, uint8_t arch,
 		   ulong *setup_start, ulong *setup_len)
 {
-#if defined(CONFIG_FIT)
+#if IMAGE_USE_FIT
 	return boot_get_setup_fit(images, arch, setup_start, setup_len);
 #else
 	return -ENOENT;
 #endif
 }
 
-#if defined(CONFIG_FIT)
+#if IMAGE_USE_FIT
 int boot_get_loadable(int argc, char * const argv[], bootm_headers_t *images,
 		uint8_t arch, const ulong *ld_start, ulong * const ld_len)
 {
diff --git a/configs/10m50_defconfig b/configs/10m50_defconfig
index a0d29a0..d4b768d 100644
--- a/configs/10m50_defconfig
+++ b/configs/10m50_defconfig
@@ -4,6 +4,7 @@ CONFIG_DM_SERIAL=y
 CONFIG_DM_GPIO=y
 CONFIG_DEFAULT_DEVICE_TREE="10m50_devboard"
 CONFIG_FIT=y
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_HUSH_PARSER=y
 CONFIG_CMD_CPU=y
 # CONFIG_CMD_BOOTD is not set
diff --git a/configs/3c120_defconfig b/configs/3c120_defconfig
index 9d249c7..5fdaee0 100644
--- a/configs/3c120_defconfig
+++ b/configs/3c120_defconfig
@@ -4,6 +4,7 @@ CONFIG_DM_SERIAL=y
 CONFIG_DM_GPIO=y
 CONFIG_DEFAULT_DEVICE_TREE="3c120_devboard"
 CONFIG_FIT=y
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_HUSH_PARSER=y
 CONFIG_CMD_CPU=y
 # CONFIG_CMD_BOOTD is not set
diff --git a/configs/A10-OLinuXino-Lime_defconfig b/configs/A10-OLinuXino-Lime_defconfig
index af96f5b..2b4a012 100644
--- a/configs/A10-OLinuXino-Lime_defconfig
+++ b/configs/A10-OLinuXino-Lime_defconfig
@@ -9,6 +9,7 @@ CONFIG_DEFAULT_DEVICE_TREE="sun4i-a10-olinuxino-lime"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="SUNXI_EMAC,AHCI,SATAPWR=SUNXI_GPC(3)"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/A10s-OLinuXino-M_defconfig b/configs/A10s-OLinuXino-M_defconfig
index cba2cfd..77299a0 100644
--- a/configs/A10s-OLinuXino-M_defconfig
+++ b/configs/A10s-OLinuXino-M_defconfig
@@ -10,6 +10,7 @@ CONFIG_DEFAULT_DEVICE_TREE="sun5i-a10s-olinuxino-micro"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="SUNXI_EMAC"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/A13-OLinuXinoM_defconfig b/configs/A13-OLinuXinoM_defconfig
index 45cc5ab..eb9f1da 100644
--- a/configs/A13-OLinuXinoM_defconfig
+++ b/configs/A13-OLinuXinoM_defconfig
@@ -14,6 +14,7 @@ CONFIG_DEFAULT_DEVICE_TREE="sun5i-a13-olinuxino-micro"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="CONS_INDEX=2"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/A13-OLinuXino_defconfig b/configs/A13-OLinuXino_defconfig
index 11691a2..b9e1c1a 100644
--- a/configs/A13-OLinuXino_defconfig
+++ b/configs/A13-OLinuXino_defconfig
@@ -16,6 +16,7 @@ CONFIG_DEFAULT_DEVICE_TREE="sun5i-a13-olinuxino"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="CONS_INDEX=2"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/A20-OLinuXino-Lime2_defconfig b/configs/A20-OLinuXino-Lime2_defconfig
index b5181c6..94ec1cf 100644
--- a/configs/A20-OLinuXino-Lime2_defconfig
+++ b/configs/A20-OLinuXino-Lime2_defconfig
@@ -9,6 +9,7 @@ CONFIG_DEFAULT_DEVICE_TREE="sun7i-a20-olinuxino-lime2"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC,RGMII,AHCI,SATAPWR=SUNXI_GPC(3)"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/A20-OLinuXino-Lime_defconfig b/configs/A20-OLinuXino-Lime_defconfig
index e27698d..7fbc17a 100644
--- a/configs/A20-OLinuXino-Lime_defconfig
+++ b/configs/A20-OLinuXino-Lime_defconfig
@@ -7,6 +7,7 @@ CONFIG_DEFAULT_DEVICE_TREE="sun7i-a20-olinuxino-lime"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC,AHCI,SATAPWR=SUNXI_GPC(3)"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/A20-OLinuXino_MICRO_defconfig b/configs/A20-OLinuXino_MICRO_defconfig
index 03481f6..7cce801 100644
--- a/configs/A20-OLinuXino_MICRO_defconfig
+++ b/configs/A20-OLinuXino_MICRO_defconfig
@@ -10,6 +10,7 @@ CONFIG_DEFAULT_DEVICE_TREE="sun7i-a20-olinuxino-micro"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC,AHCI,SATAPWR=SUNXI_GPB(8)"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/A20-Olimex-SOM-EVB_defconfig b/configs/A20-Olimex-SOM-EVB_defconfig
index 001d31b..af4f8c0 100644
--- a/configs/A20-Olimex-SOM-EVB_defconfig
+++ b/configs/A20-Olimex-SOM-EVB_defconfig
@@ -12,6 +12,7 @@ CONFIG_DEFAULT_DEVICE_TREE="sun7i-a20-olimex-som-evb"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC,RGMII,AHCI,SATAPWR=SUNXI_GPC(3)"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/Ainol_AW1_defconfig b/configs/Ainol_AW1_defconfig
index 67bea5a..cf9f161 100644
--- a/configs/Ainol_AW1_defconfig
+++ b/configs/Ainol_AW1_defconfig
@@ -14,6 +14,7 @@ CONFIG_VIDEO_LCD_BL_PWM="PB2"
 CONFIG_DEFAULT_DEVICE_TREE="sun7i-a20-ainol-aw1"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/Ampe_A76_defconfig b/configs/Ampe_A76_defconfig
index 82e01ba..78848bf 100644
--- a/configs/Ampe_A76_defconfig
+++ b/configs/Ampe_A76_defconfig
@@ -16,6 +16,7 @@ CONFIG_DEFAULT_DEVICE_TREE="sun5i-a13-ampe-a76"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="CONS_INDEX=2"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/Auxtek-T003_defconfig b/configs/Auxtek-T003_defconfig
index 8f1be3e..f149b67 100644
--- a/configs/Auxtek-T003_defconfig
+++ b/configs/Auxtek-T003_defconfig
@@ -8,6 +8,7 @@ CONFIG_VIDEO_COMPOSITE=y
 CONFIG_DEFAULT_DEVICE_TREE="sun5i-a10s-auxtek-t003"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/Auxtek-T004_defconfig b/configs/Auxtek-T004_defconfig
index 434b007..c176059 100644
--- a/configs/Auxtek-T004_defconfig
+++ b/configs/Auxtek-T004_defconfig
@@ -6,6 +6,7 @@ CONFIG_USB1_VBUS_PIN="PG13"
 CONFIG_DEFAULT_DEVICE_TREE="sun5i-a10s-auxtek-t004"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/B4420QDS_NAND_defconfig b/configs/B4420QDS_NAND_defconfig
index 3e08b2e..c9decc9 100644
--- a/configs/B4420QDS_NAND_defconfig
+++ b/configs/B4420QDS_NAND_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_B4860QDS=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_B4420,RAMBOOT_PBL,SPL_FSL_PBL,NAND"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SST=y
 CONFIG_NETDEVICES=y
diff --git a/configs/B4420QDS_SPIFLASH_defconfig b/configs/B4420QDS_SPIFLASH_defconfig
index aa463e1..5220ce9 100644
--- a/configs/B4420QDS_SPIFLASH_defconfig
+++ b/configs/B4420QDS_SPIFLASH_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_B4860QDS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_B4420,RAMBOOT_PBL,SPIFLASH,SYS_TEXT_BASE=0xFFF40000"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SST=y
 CONFIG_NETDEVICES=y
diff --git a/configs/B4420QDS_defconfig b/configs/B4420QDS_defconfig
index bb01b27..20666f0 100644
--- a/configs/B4420QDS_defconfig
+++ b/configs/B4420QDS_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_B4860QDS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_B4420"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SST=y
 CONFIG_NETDEVICES=y
diff --git a/configs/B4860QDS_NAND_defconfig b/configs/B4860QDS_NAND_defconfig
index cfa664c..ed0ab90 100644
--- a/configs/B4860QDS_NAND_defconfig
+++ b/configs/B4860QDS_NAND_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_B4860QDS=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_B4860,RAMBOOT_PBL,SPL_FSL_PBL,NAND"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SST=y
 CONFIG_NETDEVICES=y
diff --git a/configs/B4860QDS_SECURE_BOOT_defconfig b/configs/B4860QDS_SECURE_BOOT_defconfig
index 6273157..2d72ef8 100644
--- a/configs/B4860QDS_SECURE_BOOT_defconfig
+++ b/configs/B4860QDS_SECURE_BOOT_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_B4860QDS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_B4860,SECURE_BOOT"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SST=y
 CONFIG_NETDEVICES=y
diff --git a/configs/B4860QDS_SPIFLASH_defconfig b/configs/B4860QDS_SPIFLASH_defconfig
index 2bf7ee4..fb58ef2 100644
--- a/configs/B4860QDS_SPIFLASH_defconfig
+++ b/configs/B4860QDS_SPIFLASH_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_B4860QDS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_B4860,RAMBOOT_PBL,SPIFLASH,SYS_TEXT_BASE=0xFFF40000"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SST=y
 CONFIG_NETDEVICES=y
diff --git a/configs/B4860QDS_SRIO_PCIE_BOOT_defconfig b/configs/B4860QDS_SRIO_PCIE_BOOT_defconfig
index f2e79f5..0421801 100644
--- a/configs/B4860QDS_SRIO_PCIE_BOOT_defconfig
+++ b/configs/B4860QDS_SRIO_PCIE_BOOT_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_B4860QDS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_B4860,SRIO_PCIE_BOOT_SLAVE,SYS_TEXT_BASE=0xFFF40000"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 CONFIG_SPI_FLASH=y
diff --git a/configs/B4860QDS_defconfig b/configs/B4860QDS_defconfig
index e03447c..879903a 100644
--- a/configs/B4860QDS_defconfig
+++ b/configs/B4860QDS_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_B4860QDS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_B4860"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SST=y
 CONFIG_NETDEVICES=y
diff --git a/configs/BSC9131RDB_NAND_SYSCLK100_defconfig b/configs/BSC9131RDB_NAND_SYSCLK100_defconfig
index 1d9b859..3c38ae9 100644
--- a/configs/BSC9131RDB_NAND_SYSCLK100_defconfig
+++ b/configs/BSC9131RDB_NAND_SYSCLK100_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_BSC9131RDB=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="BSC9131RDB,NAND,SYS_CLK_100"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 CONFIG_SPI_FLASH=y
diff --git a/configs/BSC9131RDB_NAND_defconfig b/configs/BSC9131RDB_NAND_defconfig
index ed6f861..3d7cfe7 100644
--- a/configs/BSC9131RDB_NAND_defconfig
+++ b/configs/BSC9131RDB_NAND_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_BSC9131RDB=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="BSC9131RDB,NAND"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 CONFIG_SPI_FLASH=y
diff --git a/configs/BSC9131RDB_SPIFLASH_SYSCLK100_defconfig b/configs/BSC9131RDB_SPIFLASH_SYSCLK100_defconfig
index 52c1363..2175c1b 100644
--- a/configs/BSC9131RDB_SPIFLASH_SYSCLK100_defconfig
+++ b/configs/BSC9131RDB_SPIFLASH_SYSCLK100_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_BSC9131RDB=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="BSC9131RDB,SPIFLASH,SYS_CLK_100"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 CONFIG_SPI_FLASH=y
diff --git a/configs/BSC9131RDB_SPIFLASH_defconfig b/configs/BSC9131RDB_SPIFLASH_defconfig
index 13c4fe6..be2246c 100644
--- a/configs/BSC9131RDB_SPIFLASH_defconfig
+++ b/configs/BSC9131RDB_SPIFLASH_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_BSC9131RDB=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="BSC9131RDB,SPIFLASH"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 CONFIG_SPI_FLASH=y
diff --git a/configs/BSC9132QDS_NAND_DDRCLK100_SECURE_defconfig b/configs/BSC9132QDS_NAND_DDRCLK100_SECURE_defconfig
index 32f2010..0c27478 100644
--- a/configs/BSC9132QDS_NAND_DDRCLK100_SECURE_defconfig
+++ b/configs/BSC9132QDS_NAND_DDRCLK100_SECURE_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_BSC9132QDS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="BSC9132QDS,NAND_SECBOOT,SYS_CLK_100_DDR_100,SECURE_BOOT"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/BSC9132QDS_NAND_DDRCLK100_defconfig b/configs/BSC9132QDS_NAND_DDRCLK100_defconfig
index b19b3ee..a7c85c5 100644
--- a/configs/BSC9132QDS_NAND_DDRCLK100_defconfig
+++ b/configs/BSC9132QDS_NAND_DDRCLK100_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_BSC9132QDS=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="BSC9132QDS,NAND,SYS_CLK_100_DDR_100"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/BSC9132QDS_NAND_DDRCLK133_SECURE_defconfig b/configs/BSC9132QDS_NAND_DDRCLK133_SECURE_defconfig
index 646850d..639bac9 100644
--- a/configs/BSC9132QDS_NAND_DDRCLK133_SECURE_defconfig
+++ b/configs/BSC9132QDS_NAND_DDRCLK133_SECURE_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_BSC9132QDS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="BSC9132QDS,NAND_SECBOOT,SYS_CLK_100_DDR_133,SECURE_BOOT"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/BSC9132QDS_NAND_DDRCLK133_defconfig b/configs/BSC9132QDS_NAND_DDRCLK133_defconfig
index 5bf5e1d..0436e3f 100644
--- a/configs/BSC9132QDS_NAND_DDRCLK133_defconfig
+++ b/configs/BSC9132QDS_NAND_DDRCLK133_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_BSC9132QDS=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="BSC9132QDS,NAND,SYS_CLK_100_DDR_133"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/BSC9132QDS_NOR_DDRCLK100_SECURE_defconfig b/configs/BSC9132QDS_NOR_DDRCLK100_SECURE_defconfig
index a593f75..65982a4 100644
--- a/configs/BSC9132QDS_NOR_DDRCLK100_SECURE_defconfig
+++ b/configs/BSC9132QDS_NOR_DDRCLK100_SECURE_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_BSC9132QDS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="BSC9132QDS,SYS_CLK_100_DDR_100,SECURE_BOOT"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/BSC9132QDS_NOR_DDRCLK100_defconfig b/configs/BSC9132QDS_NOR_DDRCLK100_defconfig
index 27db61d..c05fe1f 100644
--- a/configs/BSC9132QDS_NOR_DDRCLK100_defconfig
+++ b/configs/BSC9132QDS_NOR_DDRCLK100_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_BSC9132QDS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="BSC9132QDS,SYS_CLK_100_DDR_100"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/BSC9132QDS_NOR_DDRCLK133_SECURE_defconfig b/configs/BSC9132QDS_NOR_DDRCLK133_SECURE_defconfig
index a31435e..1454d58 100644
--- a/configs/BSC9132QDS_NOR_DDRCLK133_SECURE_defconfig
+++ b/configs/BSC9132QDS_NOR_DDRCLK133_SECURE_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_BSC9132QDS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="BSC9132QDS,SYS_CLK_100_DDR_133,SECURE_BOOT"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/BSC9132QDS_NOR_DDRCLK133_defconfig b/configs/BSC9132QDS_NOR_DDRCLK133_defconfig
index ede7b04..e585f0e 100644
--- a/configs/BSC9132QDS_NOR_DDRCLK133_defconfig
+++ b/configs/BSC9132QDS_NOR_DDRCLK133_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_BSC9132QDS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="BSC9132QDS,SYS_CLK_100_DDR_133"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/BSC9132QDS_SDCARD_DDRCLK100_SECURE_defconfig b/configs/BSC9132QDS_SDCARD_DDRCLK100_SECURE_defconfig
index 45497ae..873d3de 100644
--- a/configs/BSC9132QDS_SDCARD_DDRCLK100_SECURE_defconfig
+++ b/configs/BSC9132QDS_SDCARD_DDRCLK100_SECURE_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_BSC9132QDS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="BSC9132QDS,SDCARD,SYS_CLK_100_DDR_100,SECURE_BOOT"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/BSC9132QDS_SDCARD_DDRCLK100_defconfig b/configs/BSC9132QDS_SDCARD_DDRCLK100_defconfig
index c4ce52f..f9b2ba1 100644
--- a/configs/BSC9132QDS_SDCARD_DDRCLK100_defconfig
+++ b/configs/BSC9132QDS_SDCARD_DDRCLK100_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_BSC9132QDS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="BSC9132QDS,SDCARD,SYS_CLK_100_DDR_100"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/BSC9132QDS_SDCARD_DDRCLK133_SECURE_defconfig b/configs/BSC9132QDS_SDCARD_DDRCLK133_SECURE_defconfig
index da07cb7..ae4f399 100644
--- a/configs/BSC9132QDS_SDCARD_DDRCLK133_SECURE_defconfig
+++ b/configs/BSC9132QDS_SDCARD_DDRCLK133_SECURE_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_BSC9132QDS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="BSC9132QDS,SDCARD,SYS_CLK_100_DDR_133,SECURE_BOOT"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/BSC9132QDS_SDCARD_DDRCLK133_defconfig b/configs/BSC9132QDS_SDCARD_DDRCLK133_defconfig
index 434b7cb..a01ac80 100644
--- a/configs/BSC9132QDS_SDCARD_DDRCLK133_defconfig
+++ b/configs/BSC9132QDS_SDCARD_DDRCLK133_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_BSC9132QDS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="BSC9132QDS,SDCARD,SYS_CLK_100_DDR_133"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/BSC9132QDS_SPIFLASH_DDRCLK100_SECURE_defconfig b/configs/BSC9132QDS_SPIFLASH_DDRCLK100_SECURE_defconfig
index d3bc4a0..b5eb715 100644
--- a/configs/BSC9132QDS_SPIFLASH_DDRCLK100_SECURE_defconfig
+++ b/configs/BSC9132QDS_SPIFLASH_DDRCLK100_SECURE_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_BSC9132QDS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="BSC9132QDS,SPIFLASH,SYS_CLK_100_DDR_100,SECURE_BOOT"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/BSC9132QDS_SPIFLASH_DDRCLK100_defconfig b/configs/BSC9132QDS_SPIFLASH_DDRCLK100_defconfig
index b63db17..780bb45 100644
--- a/configs/BSC9132QDS_SPIFLASH_DDRCLK100_defconfig
+++ b/configs/BSC9132QDS_SPIFLASH_DDRCLK100_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_BSC9132QDS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="BSC9132QDS,SPIFLASH,SYS_CLK_100_DDR_100"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/BSC9132QDS_SPIFLASH_DDRCLK133_SECURE_defconfig b/configs/BSC9132QDS_SPIFLASH_DDRCLK133_SECURE_defconfig
index 1ba0f24..2fe59e1 100644
--- a/configs/BSC9132QDS_SPIFLASH_DDRCLK133_SECURE_defconfig
+++ b/configs/BSC9132QDS_SPIFLASH_DDRCLK133_SECURE_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_BSC9132QDS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="BSC9132QDS,SPIFLASH,SYS_CLK_100_DDR_133,SECURE_BOOT"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/BSC9132QDS_SPIFLASH_DDRCLK133_defconfig b/configs/BSC9132QDS_SPIFLASH_DDRCLK133_defconfig
index 7318d69..24c9e30 100644
--- a/configs/BSC9132QDS_SPIFLASH_DDRCLK133_defconfig
+++ b/configs/BSC9132QDS_SPIFLASH_DDRCLK133_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_BSC9132QDS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="BSC9132QDS,SPIFLASH,SYS_CLK_100_DDR_133"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/Bananapi_defconfig b/configs/Bananapi_defconfig
index 6cbb76c..0d3a8db 100644
--- a/configs/Bananapi_defconfig
+++ b/configs/Bananapi_defconfig
@@ -8,6 +8,7 @@ CONFIG_DEFAULT_DEVICE_TREE="sun7i-a20-bananapi"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC,RGMII,MACPWR=SUNXI_GPH(23),AHCI"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/Bananapro_defconfig b/configs/Bananapro_defconfig
index 4f4a07b..81e02b0 100644
--- a/configs/Bananapro_defconfig
+++ b/configs/Bananapro_defconfig
@@ -10,6 +10,7 @@ CONFIG_DEFAULT_DEVICE_TREE="sun7i-a20-bananapro"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC,RGMII,MACPWR=SUNXI_GPH(23),AHCI"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/C29XPCIE_NAND_defconfig b/configs/C29XPCIE_NAND_defconfig
index 8fa3f23..5a494ad 100644
--- a/configs/C29XPCIE_NAND_defconfig
+++ b/configs/C29XPCIE_NAND_defconfig
@@ -3,7 +3,9 @@ CONFIG_MPC85xx=y
 CONFIG_TARGET_C29XPCIE=y
 CONFIG_SPL=y
 CONFIG_TPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="C29XPCIE,36BIT,NAND"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_EON=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/C29XPCIE_NOR_SECBOOT_defconfig b/configs/C29XPCIE_NOR_SECBOOT_defconfig
index 1e471be..3a998bb 100644
--- a/configs/C29XPCIE_NOR_SECBOOT_defconfig
+++ b/configs/C29XPCIE_NOR_SECBOOT_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_C29XPCIE=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="C29XPCIE,36BIT,SECURE_BOOT"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_EON=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/C29XPCIE_SPIFLASH_SECBOOT_defconfig b/configs/C29XPCIE_SPIFLASH_SECBOOT_defconfig
index 7506185..20296d7 100644
--- a/configs/C29XPCIE_SPIFLASH_SECBOOT_defconfig
+++ b/configs/C29XPCIE_SPIFLASH_SECBOOT_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_C29XPCIE=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="C29XPCIE,36BIT,SPIFLASH,SECURE_BOOT"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_EON=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/C29XPCIE_SPIFLASH_defconfig b/configs/C29XPCIE_SPIFLASH_defconfig
index 52a5ee3..404dddc 100644
--- a/configs/C29XPCIE_SPIFLASH_defconfig
+++ b/configs/C29XPCIE_SPIFLASH_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_C29XPCIE=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="C29XPCIE,36BIT,SPIFLASH"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_EON=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/C29XPCIE_defconfig b/configs/C29XPCIE_defconfig
index be242e6..143d654 100644
--- a/configs/C29XPCIE_defconfig
+++ b/configs/C29XPCIE_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_C29XPCIE=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="C29XPCIE,36BIT"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_EON=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/CHIP_defconfig b/configs/CHIP_defconfig
index 78b2c51..439e495 100644
--- a/configs/CHIP_defconfig
+++ b/configs/CHIP_defconfig
@@ -7,6 +7,7 @@ CONFIG_USB0_VBUS_PIN="PB10"
 CONFIG_DEFAULT_DEVICE_TREE="sun5i-r8-chip"
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="CONS_INDEX=2"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 CONFIG_CMD_GPIO=y
 CONFIG_AXP_DCDC2_VOLT=1300
diff --git a/configs/CPCI4052_defconfig b/configs/CPCI4052_defconfig
index 9e52f12..49810ff 100644
--- a/configs/CPCI4052_defconfig
+++ b/configs/CPCI4052_defconfig
@@ -1,6 +1,7 @@
 CONFIG_PPC=y
 CONFIG_4xx=y
 CONFIG_TARGET_CPCI4052=y
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_AUTOBOOT_KEYED=y
 CONFIG_AUTOBOOT_PROMPT="Press SPACE to abort autoboot in %d seconds\n"
 CONFIG_AUTOBOOT_STOP_STR=" "
diff --git a/configs/CSQ_CS908_defconfig b/configs/CSQ_CS908_defconfig
index e027a47..d836244 100644
--- a/configs/CSQ_CS908_defconfig
+++ b/configs/CSQ_CS908_defconfig
@@ -8,6 +8,7 @@ CONFIG_DEFAULT_DEVICE_TREE="sun6i-a31s-cs908"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/Chuwi_V7_CW0825_defconfig b/configs/Chuwi_V7_CW0825_defconfig
index dedf772..db1b8b1 100644
--- a/configs/Chuwi_V7_CW0825_defconfig
+++ b/configs/Chuwi_V7_CW0825_defconfig
@@ -14,6 +14,7 @@ CONFIG_VIDEO_LCD_PANEL_HITACHI_TX18D42VM=y
 CONFIG_DEFAULT_DEVICE_TREE="sun4i-a10-chuwi-v7-cw0825"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/Colombus_defconfig b/configs/Colombus_defconfig
index feaeb98..f5d299c 100644
--- a/configs/Colombus_defconfig
+++ b/configs/Colombus_defconfig
@@ -18,6 +18,7 @@ CONFIG_DEFAULT_DEVICE_TREE="sun6i-a31-colombus"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC,RGMII"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/Cubieboard2_defconfig b/configs/Cubieboard2_defconfig
index 2f5e75d..18748fc 100644
--- a/configs/Cubieboard2_defconfig
+++ b/configs/Cubieboard2_defconfig
@@ -7,6 +7,7 @@ CONFIG_DEFAULT_DEVICE_TREE="sun7i-a20-cubieboard2"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC,AHCI,SATAPWR=SUNXI_GPB(8)"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/Cubieboard_defconfig b/configs/Cubieboard_defconfig
index a45fbb0..2c7c712 100644
--- a/configs/Cubieboard_defconfig
+++ b/configs/Cubieboard_defconfig
@@ -7,6 +7,7 @@ CONFIG_DEFAULT_DEVICE_TREE="sun4i-a10-cubieboard"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="SUNXI_EMAC,AHCI,SATAPWR=SUNXI_GPB(8)"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/Cubietruck_defconfig b/configs/Cubietruck_defconfig
index 8cbaea6..4f376c0 100644
--- a/configs/Cubietruck_defconfig
+++ b/configs/Cubietruck_defconfig
@@ -12,6 +12,7 @@ CONFIG_DEFAULT_DEVICE_TREE="sun7i-a20-cubietruck"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC,RGMII,AHCI,SATAPWR=SUNXI_GPH(12)"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/Cyrus_P5020_defconfig b/configs/Cyrus_P5020_defconfig
index d0ba224..6f4a473 100644
--- a/configs/Cyrus_P5020_defconfig
+++ b/configs/Cyrus_P5020_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_CYRUS=y
 # CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="RAMBOOT_PBL,SYS_TEXT_BASE=0xFFF40000,PPC_P5020"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 CONFIG_NETDEVICES=y
diff --git a/configs/Cyrus_P5040_defconfig b/configs/Cyrus_P5040_defconfig
index 910436e..d6ac7f3 100644
--- a/configs/Cyrus_P5040_defconfig
+++ b/configs/Cyrus_P5040_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_CYRUS=y
 # CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="RAMBOOT_PBL,SYS_TEXT_BASE=0xFFF40000,PPC_P5040"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 CONFIG_NETDEVICES=y
diff --git a/configs/Empire_electronix_d709_defconfig b/configs/Empire_electronix_d709_defconfig
index 5973fbf..044649a 100644
--- a/configs/Empire_electronix_d709_defconfig
+++ b/configs/Empire_electronix_d709_defconfig
@@ -17,6 +17,7 @@ CONFIG_DEFAULT_DEVICE_TREE="sun5i-a13-empire-electronix-d709"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="CONS_INDEX=2"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/Hummingbird_A31_defconfig b/configs/Hummingbird_A31_defconfig
index 83f2004..7f1ccc5 100644
--- a/configs/Hummingbird_A31_defconfig
+++ b/configs/Hummingbird_A31_defconfig
@@ -10,6 +10,7 @@ CONFIG_DEFAULT_DEVICE_TREE="sun6i-a31-hummingbird"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC,RGMII,MACPWR=SUNXI_GPA(21)"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/Hyundai_A7HD_defconfig b/configs/Hyundai_A7HD_defconfig
index 45739cd..8ffdd92 100644
--- a/configs/Hyundai_A7HD_defconfig
+++ b/configs/Hyundai_A7HD_defconfig
@@ -15,6 +15,7 @@ CONFIG_VIDEO_LCD_PANEL_LVDS=y
 CONFIG_DEFAULT_DEVICE_TREE="sun4i-a10-hyundai-a7hd"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/Lamobo_R1_defconfig b/configs/Lamobo_R1_defconfig
index d460c32..c3a3003 100644
--- a/configs/Lamobo_R1_defconfig
+++ b/configs/Lamobo_R1_defconfig
@@ -8,6 +8,7 @@ CONFIG_DEFAULT_DEVICE_TREE="sun7i-a20-lamobo-r1"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC,RGMII,MACPWR=SUNXI_GPH(23),AHCI,SATAPWR=SUNXI_GPB(3)"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/Linksprite_pcDuino3_Nano_defconfig b/configs/Linksprite_pcDuino3_Nano_defconfig
index ca3b1dd..8e8a464 100644
--- a/configs/Linksprite_pcDuino3_Nano_defconfig
+++ b/configs/Linksprite_pcDuino3_Nano_defconfig
@@ -9,6 +9,7 @@ CONFIG_DEFAULT_DEVICE_TREE="sun7i-a20-pcduino3-nano"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC,RGMII,AHCI,SATAPWR=SUNXI_GPH(2)"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/Linksprite_pcDuino3_defconfig b/configs/Linksprite_pcDuino3_defconfig
index 1f245e7..0b7ee98 100644
--- a/configs/Linksprite_pcDuino3_defconfig
+++ b/configs/Linksprite_pcDuino3_defconfig
@@ -7,6 +7,7 @@ CONFIG_DEFAULT_DEVICE_TREE="sun7i-a20-pcduino3"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC,AHCI,SATAPWR=SUNXI_GPH(2)"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/Linksprite_pcDuino_defconfig b/configs/Linksprite_pcDuino_defconfig
index 7e2f942..c8a56cf 100644
--- a/configs/Linksprite_pcDuino_defconfig
+++ b/configs/Linksprite_pcDuino_defconfig
@@ -7,6 +7,7 @@ CONFIG_DEFAULT_DEVICE_TREE="sun4i-a10-pcduino"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="SUNXI_EMAC"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/MK808C_defconfig b/configs/MK808C_defconfig
index 32c65fb..aba8d01 100644
--- a/configs/MK808C_defconfig
+++ b/configs/MK808C_defconfig
@@ -5,6 +5,7 @@ CONFIG_DRAM_CLK=384
 CONFIG_DEFAULT_DEVICE_TREE="sun7i-a20-mk808c"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/MPC8308RDB_defconfig b/configs/MPC8308RDB_defconfig
index d9303eb..d0f05bb 100644
--- a/configs/MPC8308RDB_defconfig
+++ b/configs/MPC8308RDB_defconfig
@@ -1,6 +1,8 @@
 CONFIG_PPC=y
 CONFIG_MPC83xx=y
 CONFIG_TARGET_MPC8308RDB=y
+CONFIG_FIT=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC8313ERDB_33_defconfig b/configs/MPC8313ERDB_33_defconfig
index e32ccbe..d893d93 100644
--- a/configs/MPC8313ERDB_33_defconfig
+++ b/configs/MPC8313ERDB_33_defconfig
@@ -2,6 +2,7 @@ CONFIG_PPC=y
 CONFIG_MPC83xx=y
 CONFIG_TARGET_MPC8313ERDB=y
 CONFIG_SYS_EXTRA_OPTIONS="SYS_33MHZ"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
diff --git a/configs/MPC8313ERDB_66_defconfig b/configs/MPC8313ERDB_66_defconfig
index 9e9308b..a43f70c 100644
--- a/configs/MPC8313ERDB_66_defconfig
+++ b/configs/MPC8313ERDB_66_defconfig
@@ -2,6 +2,7 @@ CONFIG_PPC=y
 CONFIG_MPC83xx=y
 CONFIG_TARGET_MPC8313ERDB=y
 CONFIG_SYS_EXTRA_OPTIONS="SYS_66MHZ"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
diff --git a/configs/MPC8313ERDB_NAND_33_defconfig b/configs/MPC8313ERDB_NAND_33_defconfig
index 3856f75..a2e7d29 100644
--- a/configs/MPC8313ERDB_NAND_33_defconfig
+++ b/configs/MPC8313ERDB_NAND_33_defconfig
@@ -3,6 +3,7 @@ CONFIG_MPC83xx=y
 CONFIG_TARGET_MPC8313ERDB=y
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="SYS_33MHZ,NAND"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
diff --git a/configs/MPC8313ERDB_NAND_66_defconfig b/configs/MPC8313ERDB_NAND_66_defconfig
index 8e0a704..6298bb3 100644
--- a/configs/MPC8313ERDB_NAND_66_defconfig
+++ b/configs/MPC8313ERDB_NAND_66_defconfig
@@ -3,6 +3,7 @@ CONFIG_MPC83xx=y
 CONFIG_TARGET_MPC8313ERDB=y
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="SYS_66MHZ,NAND"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
diff --git a/configs/MPC8315ERDB_defconfig b/configs/MPC8315ERDB_defconfig
index 8d4881b..636a929 100644
--- a/configs/MPC8315ERDB_defconfig
+++ b/configs/MPC8315ERDB_defconfig
@@ -1,6 +1,7 @@
 CONFIG_PPC=y
 CONFIG_MPC83xx=y
 CONFIG_TARGET_MPC8315ERDB=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC8323ERDB_defconfig b/configs/MPC8323ERDB_defconfig
index 003c592..c079dac 100644
--- a/configs/MPC8323ERDB_defconfig
+++ b/configs/MPC8323ERDB_defconfig
@@ -1,6 +1,7 @@
 CONFIG_PPC=y
 CONFIG_MPC83xx=y
 CONFIG_TARGET_MPC8323ERDB=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC832XEMDS_ATM_defconfig b/configs/MPC832XEMDS_ATM_defconfig
index 9408528..7622ba6 100644
--- a/configs/MPC832XEMDS_ATM_defconfig
+++ b/configs/MPC832XEMDS_ATM_defconfig
@@ -2,6 +2,7 @@ CONFIG_PPC=y
 CONFIG_MPC83xx=y
 CONFIG_TARGET_MPC832XEMDS=y
 CONFIG_SYS_EXTRA_OPTIONS="PQ_MDS_PIB=1,PQ_MDS_PIB_ATM=1"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC832XEMDS_HOST_33_defconfig b/configs/MPC832XEMDS_HOST_33_defconfig
index 680b6bc..7baa98d 100644
--- a/configs/MPC832XEMDS_HOST_33_defconfig
+++ b/configs/MPC832XEMDS_HOST_33_defconfig
@@ -2,6 +2,7 @@ CONFIG_PPC=y
 CONFIG_MPC83xx=y
 CONFIG_TARGET_MPC832XEMDS=y
 CONFIG_SYS_EXTRA_OPTIONS="PCI,PCI_33M,PQ_MDS_PIB=1"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC832XEMDS_HOST_66_defconfig b/configs/MPC832XEMDS_HOST_66_defconfig
index acbe1d1..34e7e19 100644
--- a/configs/MPC832XEMDS_HOST_66_defconfig
+++ b/configs/MPC832XEMDS_HOST_66_defconfig
@@ -2,6 +2,7 @@ CONFIG_PPC=y
 CONFIG_MPC83xx=y
 CONFIG_TARGET_MPC832XEMDS=y
 CONFIG_SYS_EXTRA_OPTIONS="PCI,PCI_66M,PQ_MDS_PIB=1"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC832XEMDS_SLAVE_defconfig b/configs/MPC832XEMDS_SLAVE_defconfig
index a5c01b6..8a939ca 100644
--- a/configs/MPC832XEMDS_SLAVE_defconfig
+++ b/configs/MPC832XEMDS_SLAVE_defconfig
@@ -2,6 +2,7 @@ CONFIG_PPC=y
 CONFIG_MPC83xx=y
 CONFIG_TARGET_MPC832XEMDS=y
 CONFIG_SYS_EXTRA_OPTIONS="PCI,PCISLAVE"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC832XEMDS_defconfig b/configs/MPC832XEMDS_defconfig
index ea2cc02..d590fea 100644
--- a/configs/MPC832XEMDS_defconfig
+++ b/configs/MPC832XEMDS_defconfig
@@ -1,6 +1,7 @@
 CONFIG_PPC=y
 CONFIG_MPC83xx=y
 CONFIG_TARGET_MPC832XEMDS=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC8349EMDS_defconfig b/configs/MPC8349EMDS_defconfig
index db62b52..71e2a63 100644
--- a/configs/MPC8349EMDS_defconfig
+++ b/configs/MPC8349EMDS_defconfig
@@ -1,6 +1,7 @@
 CONFIG_PPC=y
 CONFIG_MPC83xx=y
 CONFIG_TARGET_MPC8349EMDS=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC8349ITXGP_defconfig b/configs/MPC8349ITXGP_defconfig
index c1bc8ca..7f95a52 100644
--- a/configs/MPC8349ITXGP_defconfig
+++ b/configs/MPC8349ITXGP_defconfig
@@ -2,6 +2,7 @@ CONFIG_PPC=y
 CONFIG_MPC83xx=y
 CONFIG_TARGET_MPC8349ITX=y
 CONFIG_SYS_EXTRA_OPTIONS="MPC8349ITXGP,SYS_TEXT_BASE=0xFE000000"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SYS_PROMPT="MPC8349E-mITX-GP> "
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
diff --git a/configs/MPC8349ITX_LOWBOOT_defconfig b/configs/MPC8349ITX_LOWBOOT_defconfig
index 9b85433..14ee262 100644
--- a/configs/MPC8349ITX_LOWBOOT_defconfig
+++ b/configs/MPC8349ITX_LOWBOOT_defconfig
@@ -2,6 +2,7 @@ CONFIG_PPC=y
 CONFIG_MPC83xx=y
 CONFIG_TARGET_MPC8349ITX=y
 CONFIG_SYS_EXTRA_OPTIONS="MPC8349ITX,SYS_TEXT_BASE=0xFE000000"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SYS_PROMPT="MPC8349E-mITX> "
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
diff --git a/configs/MPC8349ITX_defconfig b/configs/MPC8349ITX_defconfig
index 1ea68f8..207c444 100644
--- a/configs/MPC8349ITX_defconfig
+++ b/configs/MPC8349ITX_defconfig
@@ -2,6 +2,7 @@ CONFIG_PPC=y
 CONFIG_MPC83xx=y
 CONFIG_TARGET_MPC8349ITX=y
 CONFIG_SYS_EXTRA_OPTIONS="MPC8349ITX"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SYS_PROMPT="MPC8349E-mITX> "
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
diff --git a/configs/MPC837XEMDS_HOST_defconfig b/configs/MPC837XEMDS_HOST_defconfig
index 9ce9914..50d9f06 100644
--- a/configs/MPC837XEMDS_HOST_defconfig
+++ b/configs/MPC837XEMDS_HOST_defconfig
@@ -2,6 +2,7 @@ CONFIG_PPC=y
 CONFIG_MPC83xx=y
 CONFIG_TARGET_MPC837XEMDS=y
 CONFIG_SYS_EXTRA_OPTIONS="PCI"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC837XEMDS_defconfig b/configs/MPC837XEMDS_defconfig
index bf5e1b3..fed1045 100644
--- a/configs/MPC837XEMDS_defconfig
+++ b/configs/MPC837XEMDS_defconfig
@@ -1,6 +1,7 @@
 CONFIG_PPC=y
 CONFIG_MPC83xx=y
 CONFIG_TARGET_MPC837XEMDS=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC837XERDB_defconfig b/configs/MPC837XERDB_defconfig
index ec76ba9..20608d6 100644
--- a/configs/MPC837XERDB_defconfig
+++ b/configs/MPC837XERDB_defconfig
@@ -1,6 +1,7 @@
 CONFIG_PPC=y
 CONFIG_MPC83xx=y
 CONFIG_TARGET_MPC837XERDB=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC8536DS_36BIT_defconfig b/configs/MPC8536DS_36BIT_defconfig
index cec9709..cc8ff82 100644
--- a/configs/MPC8536DS_36BIT_defconfig
+++ b/configs/MPC8536DS_36BIT_defconfig
@@ -2,6 +2,7 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_MPC8536DS=y
 CONFIG_SYS_EXTRA_OPTIONS="36BIT"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/MPC8536DS_SDCARD_defconfig b/configs/MPC8536DS_SDCARD_defconfig
index 1a3ea88..dca0cab 100644
--- a/configs/MPC8536DS_SDCARD_defconfig
+++ b/configs/MPC8536DS_SDCARD_defconfig
@@ -2,6 +2,7 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_MPC8536DS=y
 CONFIG_SYS_EXTRA_OPTIONS="SDCARD"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/MPC8536DS_SPIFLASH_defconfig b/configs/MPC8536DS_SPIFLASH_defconfig
index 17df692..ef02898 100644
--- a/configs/MPC8536DS_SPIFLASH_defconfig
+++ b/configs/MPC8536DS_SPIFLASH_defconfig
@@ -2,6 +2,7 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_MPC8536DS=y
 CONFIG_SYS_EXTRA_OPTIONS="SPIFLASH"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/MPC8536DS_defconfig b/configs/MPC8536DS_defconfig
index 78fef28..3862629 100644
--- a/configs/MPC8536DS_defconfig
+++ b/configs/MPC8536DS_defconfig
@@ -1,6 +1,7 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_MPC8536DS=y
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/MPC8540ADS_defconfig b/configs/MPC8540ADS_defconfig
index f6906f7..4ecd1d1 100644
--- a/configs/MPC8540ADS_defconfig
+++ b/configs/MPC8540ADS_defconfig
@@ -1,5 +1,6 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_MPC8540ADS=y
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC8541CDS_defconfig b/configs/MPC8541CDS_defconfig
index a487f19..a403a50 100644
--- a/configs/MPC8541CDS_defconfig
+++ b/configs/MPC8541CDS_defconfig
@@ -1,5 +1,6 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_MPC8541CDS=y
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC8541CDS_legacy_defconfig b/configs/MPC8541CDS_legacy_defconfig
index 73b7a72..43f9338 100644
--- a/configs/MPC8541CDS_legacy_defconfig
+++ b/configs/MPC8541CDS_legacy_defconfig
@@ -2,5 +2,6 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_MPC8541CDS=y
 CONFIG_SYS_EXTRA_OPTIONS="LEGACY"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC8544DS_defconfig b/configs/MPC8544DS_defconfig
index 48cac28..801d266 100644
--- a/configs/MPC8544DS_defconfig
+++ b/configs/MPC8544DS_defconfig
@@ -1,6 +1,7 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_MPC8544DS=y
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
diff --git a/configs/MPC8548CDS_36BIT_defconfig b/configs/MPC8548CDS_36BIT_defconfig
index a880825..964ed02 100644
--- a/configs/MPC8548CDS_36BIT_defconfig
+++ b/configs/MPC8548CDS_36BIT_defconfig
@@ -2,6 +2,7 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_MPC8548CDS=y
 CONFIG_SYS_EXTRA_OPTIONS="36BIT"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
diff --git a/configs/MPC8548CDS_defconfig b/configs/MPC8548CDS_defconfig
index fd7d87b..fb4de9e 100644
--- a/configs/MPC8548CDS_defconfig
+++ b/configs/MPC8548CDS_defconfig
@@ -1,6 +1,7 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_MPC8548CDS=y
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
diff --git a/configs/MPC8548CDS_legacy_defconfig b/configs/MPC8548CDS_legacy_defconfig
index 73231f4..c7f5e65 100644
--- a/configs/MPC8548CDS_legacy_defconfig
+++ b/configs/MPC8548CDS_legacy_defconfig
@@ -2,6 +2,7 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_MPC8548CDS=y
 CONFIG_SYS_EXTRA_OPTIONS="LEGACY"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
diff --git a/configs/MPC8555CDS_defconfig b/configs/MPC8555CDS_defconfig
index fc88ec9..760845f 100644
--- a/configs/MPC8555CDS_defconfig
+++ b/configs/MPC8555CDS_defconfig
@@ -1,5 +1,6 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_MPC8555CDS=y
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC8555CDS_legacy_defconfig b/configs/MPC8555CDS_legacy_defconfig
index bc069e1..f684089 100644
--- a/configs/MPC8555CDS_legacy_defconfig
+++ b/configs/MPC8555CDS_legacy_defconfig
@@ -2,5 +2,6 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_MPC8555CDS=y
 CONFIG_SYS_EXTRA_OPTIONS="LEGACY"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC8560ADS_defconfig b/configs/MPC8560ADS_defconfig
index 671f805..4ade1fa 100644
--- a/configs/MPC8560ADS_defconfig
+++ b/configs/MPC8560ADS_defconfig
@@ -1,4 +1,5 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_MPC8560ADS=y
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC8568MDS_defconfig b/configs/MPC8568MDS_defconfig
index be7de94..967dfcf 100644
--- a/configs/MPC8568MDS_defconfig
+++ b/configs/MPC8568MDS_defconfig
@@ -1,5 +1,6 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_MPC8568MDS=y
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC8569MDS_ATM_defconfig b/configs/MPC8569MDS_ATM_defconfig
index d7dda0c..d64a9ec 100644
--- a/configs/MPC8569MDS_ATM_defconfig
+++ b/configs/MPC8569MDS_ATM_defconfig
@@ -2,6 +2,7 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_MPC8569MDS=y
 CONFIG_SYS_EXTRA_OPTIONS="ATM"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
diff --git a/configs/MPC8569MDS_defconfig b/configs/MPC8569MDS_defconfig
index 7f728d8..36c38e7 100644
--- a/configs/MPC8569MDS_defconfig
+++ b/configs/MPC8569MDS_defconfig
@@ -1,6 +1,7 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_MPC8569MDS=y
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
diff --git a/configs/MPC8572DS_36BIT_defconfig b/configs/MPC8572DS_36BIT_defconfig
index 3682156..a453526 100644
--- a/configs/MPC8572DS_36BIT_defconfig
+++ b/configs/MPC8572DS_36BIT_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_MPC8572DS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="36BIT"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
diff --git a/configs/MPC8572DS_defconfig b/configs/MPC8572DS_defconfig
index c498e76..16dd084 100644
--- a/configs/MPC8572DS_defconfig
+++ b/configs/MPC8572DS_defconfig
@@ -1,6 +1,8 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_MPC8572DS=y
+CONFIG_FIT=y
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
diff --git a/configs/MPC8610HPCD_defconfig b/configs/MPC8610HPCD_defconfig
index 41e9553..852ba85 100644
--- a/configs/MPC8610HPCD_defconfig
+++ b/configs/MPC8610HPCD_defconfig
@@ -1,6 +1,7 @@
 CONFIG_PPC=y
 CONFIG_MPC86xx=y
 CONFIG_TARGET_MPC8610HPCD=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC8641HPCN_36BIT_defconfig b/configs/MPC8641HPCN_36BIT_defconfig
index 14e8312..7993ab4 100644
--- a/configs/MPC8641HPCN_36BIT_defconfig
+++ b/configs/MPC8641HPCN_36BIT_defconfig
@@ -2,6 +2,7 @@ CONFIG_PPC=y
 CONFIG_MPC86xx=y
 CONFIG_TARGET_MPC8641HPCN=y
 CONFIG_SYS_EXTRA_OPTIONS="PHYS_64BIT"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC8641HPCN_defconfig b/configs/MPC8641HPCN_defconfig
index 902a76b..9b5a6f7 100644
--- a/configs/MPC8641HPCN_defconfig
+++ b/configs/MPC8641HPCN_defconfig
@@ -1,6 +1,7 @@
 CONFIG_PPC=y
 CONFIG_MPC86xx=y
 CONFIG_TARGET_MPC8641HPCN=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/MSI_Primo73_defconfig b/configs/MSI_Primo73_defconfig
index 73fd4e8..7903510 100644
--- a/configs/MSI_Primo73_defconfig
+++ b/configs/MSI_Primo73_defconfig
@@ -10,6 +10,7 @@ CONFIG_VIDEO_LCD_BL_PWM="PB2"
 CONFIG_DEFAULT_DEVICE_TREE="sun7i-a20-primo73"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/MSI_Primo81_defconfig b/configs/MSI_Primo81_defconfig
index 11f3203..b77f9e0 100644
--- a/configs/MSI_Primo81_defconfig
+++ b/configs/MSI_Primo81_defconfig
@@ -13,6 +13,7 @@ CONFIG_VIDEO_LCD_PANEL_MIPI_4_LANE_513_MBPS_VIA_SSD2828=y
 CONFIG_DEFAULT_DEVICE_TREE="sun6i-a31s-primo81"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/Marsboard_A10_defconfig b/configs/Marsboard_A10_defconfig
index 806fb64..7386384 100644
--- a/configs/Marsboard_A10_defconfig
+++ b/configs/Marsboard_A10_defconfig
@@ -5,6 +5,7 @@ CONFIG_DEFAULT_DEVICE_TREE="sun4i-a10-marsboard"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="SUNXI_EMAC,AHCI"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/Mele_A1000G_quad_defconfig b/configs/Mele_A1000G_quad_defconfig
index 6127098..e500d20 100644
--- a/configs/Mele_A1000G_quad_defconfig
+++ b/configs/Mele_A1000G_quad_defconfig
@@ -8,6 +8,7 @@ CONFIG_DEFAULT_DEVICE_TREE="sun6i-a31-mele-a1000g-quad"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/Mele_A1000_defconfig b/configs/Mele_A1000_defconfig
index 93707e4..e6b4596 100644
--- a/configs/Mele_A1000_defconfig
+++ b/configs/Mele_A1000_defconfig
@@ -7,6 +7,7 @@ CONFIG_DEFAULT_DEVICE_TREE="sun4i-a10-a1000"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="SUNXI_EMAC,MACPWR=SUNXI_GPH(15),AHCI"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/Mele_I7_defconfig b/configs/Mele_I7_defconfig
index bfe2a29..cd0edc9 100644
--- a/configs/Mele_I7_defconfig
+++ b/configs/Mele_I7_defconfig
@@ -8,6 +8,7 @@ CONFIG_DEFAULT_DEVICE_TREE="sun6i-a31-i7"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/Mele_M3_defconfig b/configs/Mele_M3_defconfig
index 0ed5da1..4d7cd4f 100644
--- a/configs/Mele_M3_defconfig
+++ b/configs/Mele_M3_defconfig
@@ -10,6 +10,7 @@ CONFIG_DEFAULT_DEVICE_TREE="sun7i-a20-m3"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/Mele_M5_defconfig b/configs/Mele_M5_defconfig
index fdb5ba4..0607874 100644
--- a/configs/Mele_M5_defconfig
+++ b/configs/Mele_M5_defconfig
@@ -9,6 +9,7 @@ CONFIG_DEFAULT_DEVICE_TREE="sun7i-a20-m5"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC,AHCI,STATUSLED=234"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/Mele_M9_defconfig b/configs/Mele_M9_defconfig
index da76226..3c4f8cc 100644
--- a/configs/Mele_M9_defconfig
+++ b/configs/Mele_M9_defconfig
@@ -8,6 +8,7 @@ CONFIG_DEFAULT_DEVICE_TREE="sun6i-a31-m9"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/Mini-X_defconfig b/configs/Mini-X_defconfig
index 8013359..8425d1f 100644
--- a/configs/Mini-X_defconfig
+++ b/configs/Mini-X_defconfig
@@ -6,6 +6,7 @@ CONFIG_VIDEO_COMPOSITE=y
 CONFIG_DEFAULT_DEVICE_TREE="sun4i-a10-mini-xplus"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/MiniFAP_defconfig b/configs/MiniFAP_defconfig
index 87ab5bc..adbf450 100644
--- a/configs/MiniFAP_defconfig
+++ b/configs/MiniFAP_defconfig
@@ -2,5 +2,6 @@ CONFIG_PPC=y
 CONFIG_MPC5xxx=y
 CONFIG_TARGET_TQM5200=y
 CONFIG_SYS_EXTRA_OPTIONS="MINIFAP"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_OF_LIBFDT=y
diff --git a/configs/O2D300_defconfig b/configs/O2D300_defconfig
index 8a54b82..5bb5a44 100644
--- a/configs/O2D300_defconfig
+++ b/configs/O2D300_defconfig
@@ -1,5 +1,6 @@
 CONFIG_PPC=y
 CONFIG_MPC5xxx=y
 CONFIG_TARGET_O2D300=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_OF_LIBFDT=y
diff --git a/configs/O2DNT2_RAMBOOT_defconfig b/configs/O2DNT2_RAMBOOT_defconfig
index cfd224c..9b97f2e 100644
--- a/configs/O2DNT2_RAMBOOT_defconfig
+++ b/configs/O2DNT2_RAMBOOT_defconfig
@@ -2,6 +2,7 @@ CONFIG_PPC=y
 CONFIG_MPC5xxx=y
 CONFIG_TARGET_O2DNT2=y
 CONFIG_SYS_EXTRA_OPTIONS="SYS_TEXT_BASE=0x00100000"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_AUTOBOOT_KEYED=y
 CONFIG_AUTOBOOT_PROMPT="Autobooting in %d seconds, press password to stop\n"
 CONFIG_AUTOBOOT_STOP_STR="++++++++++"
diff --git a/configs/O2DNT2_defconfig b/configs/O2DNT2_defconfig
index 90c79ec..9364366 100644
--- a/configs/O2DNT2_defconfig
+++ b/configs/O2DNT2_defconfig
@@ -1,6 +1,7 @@
 CONFIG_PPC=y
 CONFIG_MPC5xxx=y
 CONFIG_TARGET_O2DNT2=y
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_AUTOBOOT_KEYED=y
 CONFIG_AUTOBOOT_PROMPT="Autobooting in %d seconds, press password to stop\n"
 CONFIG_AUTOBOOT_STOP_STR="++++++++++"
diff --git a/configs/O2D_defconfig b/configs/O2D_defconfig
index 96dbd0b..d57021f 100644
--- a/configs/O2D_defconfig
+++ b/configs/O2D_defconfig
@@ -1,5 +1,6 @@
 CONFIG_PPC=y
 CONFIG_MPC5xxx=y
 CONFIG_TARGET_O2D=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_OF_LIBFDT=y
diff --git a/configs/O2I_defconfig b/configs/O2I_defconfig
index 61fb0c3..7c3ff8c 100644
--- a/configs/O2I_defconfig
+++ b/configs/O2I_defconfig
@@ -1,5 +1,6 @@
 CONFIG_PPC=y
 CONFIG_MPC5xxx=y
 CONFIG_TARGET_O2I=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_OF_LIBFDT=y
diff --git a/configs/O2MNT_O2M110_defconfig b/configs/O2MNT_O2M110_defconfig
index ebb9d3c..d145417 100644
--- a/configs/O2MNT_O2M110_defconfig
+++ b/configs/O2MNT_O2M110_defconfig
@@ -2,5 +2,6 @@ CONFIG_PPC=y
 CONFIG_MPC5xxx=y
 CONFIG_TARGET_O2MNT=y
 CONFIG_SYS_EXTRA_OPTIONS="IFM_SENSOR_TYPE=\"O2M110\""
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_OF_LIBFDT=y
diff --git a/configs/O2MNT_O2M112_defconfig b/configs/O2MNT_O2M112_defconfig
index 3bf3cff..70ea0b5 100644
--- a/configs/O2MNT_O2M112_defconfig
+++ b/configs/O2MNT_O2M112_defconfig
@@ -2,5 +2,6 @@ CONFIG_PPC=y
 CONFIG_MPC5xxx=y
 CONFIG_TARGET_O2MNT=y
 CONFIG_SYS_EXTRA_OPTIONS="IFM_SENSOR_TYPE=\"O2M112\""
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_OF_LIBFDT=y
diff --git a/configs/O2MNT_O2M113_defconfig b/configs/O2MNT_O2M113_defconfig
index 05f6f08..f59995f 100644
--- a/configs/O2MNT_O2M113_defconfig
+++ b/configs/O2MNT_O2M113_defconfig
@@ -2,5 +2,6 @@ CONFIG_PPC=y
 CONFIG_MPC5xxx=y
 CONFIG_TARGET_O2MNT=y
 CONFIG_SYS_EXTRA_OPTIONS="IFM_SENSOR_TYPE=\"O2M113\""
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_OF_LIBFDT=y
diff --git a/configs/O2MNT_defconfig b/configs/O2MNT_defconfig
index 45236f7..60666bd 100644
--- a/configs/O2MNT_defconfig
+++ b/configs/O2MNT_defconfig
@@ -1,5 +1,6 @@
 CONFIG_PPC=y
 CONFIG_MPC5xxx=y
 CONFIG_TARGET_O2MNT=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_OF_LIBFDT=y
diff --git a/configs/O3DNT_defconfig b/configs/O3DNT_defconfig
index 5f2f0c1..053e048 100644
--- a/configs/O3DNT_defconfig
+++ b/configs/O3DNT_defconfig
@@ -1,5 +1,6 @@
 CONFIG_PPC=y
 CONFIG_MPC5xxx=y
 CONFIG_TARGET_O3DNT=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_OF_LIBFDT=y
diff --git a/configs/Orangepi_defconfig b/configs/Orangepi_defconfig
index 330ee47..053a646 100644
--- a/configs/Orangepi_defconfig
+++ b/configs/Orangepi_defconfig
@@ -11,6 +11,7 @@ CONFIG_DEFAULT_DEVICE_TREE="sun7i-a20-orangepi"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC,RGMII,MACPWR=SUNXI_GPH(23),AHCI"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/Orangepi_mini_defconfig b/configs/Orangepi_mini_defconfig
index 4156c35..7ad2e07 100644
--- a/configs/Orangepi_mini_defconfig
+++ b/configs/Orangepi_mini_defconfig
@@ -13,6 +13,7 @@ CONFIG_DEFAULT_DEVICE_TREE="sun7i-a20-orangepi-mini"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC,RGMII,MACPWR=SUNXI_GPH(23),AHCI"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/P1010RDB-PA_36BIT_NAND_SECBOOT_defconfig b/configs/P1010RDB-PA_36BIT_NAND_SECBOOT_defconfig
index 34f1388..baa8c5a 100644
--- a/configs/P1010RDB-PA_36BIT_NAND_SECBOOT_defconfig
+++ b/configs/P1010RDB-PA_36BIT_NAND_SECBOOT_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1010RDB=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PA,36BIT,NAND_SECBOOT,SECURE_BOOT"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1010RDB-PA_36BIT_NAND_defconfig b/configs/P1010RDB-PA_36BIT_NAND_defconfig
index 2a747d9..c521695 100644
--- a/configs/P1010RDB-PA_36BIT_NAND_defconfig
+++ b/configs/P1010RDB-PA_36BIT_NAND_defconfig
@@ -3,7 +3,9 @@ CONFIG_MPC85xx=y
 CONFIG_TARGET_P1010RDB=y
 CONFIG_SPL=y
 CONFIG_TPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PA,36BIT,NAND"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1010RDB-PA_36BIT_NOR_SECBOOT_defconfig b/configs/P1010RDB-PA_36BIT_NOR_SECBOOT_defconfig
index 15c0144..5de3c9a 100644
--- a/configs/P1010RDB-PA_36BIT_NOR_SECBOOT_defconfig
+++ b/configs/P1010RDB-PA_36BIT_NOR_SECBOOT_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1010RDB=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PA,36BIT,SECURE_BOOT"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1010RDB-PA_36BIT_NOR_defconfig b/configs/P1010RDB-PA_36BIT_NOR_defconfig
index 499c8a5..4523ec3 100644
--- a/configs/P1010RDB-PA_36BIT_NOR_defconfig
+++ b/configs/P1010RDB-PA_36BIT_NOR_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1010RDB=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PA,36BIT"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1010RDB-PA_36BIT_SDCARD_defconfig b/configs/P1010RDB-PA_36BIT_SDCARD_defconfig
index f50a963..45f1684 100644
--- a/configs/P1010RDB-PA_36BIT_SDCARD_defconfig
+++ b/configs/P1010RDB-PA_36BIT_SDCARD_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1010RDB=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PA,36BIT,SDCARD"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1010RDB-PA_36BIT_SPIFLASH_SECBOOT_defconfig b/configs/P1010RDB-PA_36BIT_SPIFLASH_SECBOOT_defconfig
index aeac38e..beeb263 100644
--- a/configs/P1010RDB-PA_36BIT_SPIFLASH_SECBOOT_defconfig
+++ b/configs/P1010RDB-PA_36BIT_SPIFLASH_SECBOOT_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1010RDB=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PA,36BIT,SPIFLASH,SECURE_BOOT"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1010RDB-PA_36BIT_SPIFLASH_defconfig b/configs/P1010RDB-PA_36BIT_SPIFLASH_defconfig
index 24ec072..9e5e3ad 100644
--- a/configs/P1010RDB-PA_36BIT_SPIFLASH_defconfig
+++ b/configs/P1010RDB-PA_36BIT_SPIFLASH_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1010RDB=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PA,36BIT,SPIFLASH"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1010RDB-PA_NAND_SECBOOT_defconfig b/configs/P1010RDB-PA_NAND_SECBOOT_defconfig
index 914912f..3571251 100644
--- a/configs/P1010RDB-PA_NAND_SECBOOT_defconfig
+++ b/configs/P1010RDB-PA_NAND_SECBOOT_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1010RDB=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PA,NAND_SECBOOT,SECURE_BOOT"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1010RDB-PA_NAND_defconfig b/configs/P1010RDB-PA_NAND_defconfig
index 5ecd715..e9a040d 100644
--- a/configs/P1010RDB-PA_NAND_defconfig
+++ b/configs/P1010RDB-PA_NAND_defconfig
@@ -3,7 +3,9 @@ CONFIG_MPC85xx=y
 CONFIG_TARGET_P1010RDB=y
 CONFIG_SPL=y
 CONFIG_TPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PA,NAND"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1010RDB-PA_NOR_SECBOOT_defconfig b/configs/P1010RDB-PA_NOR_SECBOOT_defconfig
index fdfb8e2..a6d1e1a 100644
--- a/configs/P1010RDB-PA_NOR_SECBOOT_defconfig
+++ b/configs/P1010RDB-PA_NOR_SECBOOT_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1010RDB=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PA,SECURE_BOOT"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1010RDB-PA_NOR_defconfig b/configs/P1010RDB-PA_NOR_defconfig
index 06a6f36..b1af0f7 100644
--- a/configs/P1010RDB-PA_NOR_defconfig
+++ b/configs/P1010RDB-PA_NOR_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1010RDB=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PA"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1010RDB-PA_SDCARD_defconfig b/configs/P1010RDB-PA_SDCARD_defconfig
index 5971937..5facd1a 100644
--- a/configs/P1010RDB-PA_SDCARD_defconfig
+++ b/configs/P1010RDB-PA_SDCARD_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1010RDB=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PA,SDCARD"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1010RDB-PA_SPIFLASH_SECBOOT_defconfig b/configs/P1010RDB-PA_SPIFLASH_SECBOOT_defconfig
index 567e9b0..223589f 100644
--- a/configs/P1010RDB-PA_SPIFLASH_SECBOOT_defconfig
+++ b/configs/P1010RDB-PA_SPIFLASH_SECBOOT_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1010RDB=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PA,SPIFLASH,SECURE_BOOT"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1010RDB-PA_SPIFLASH_defconfig b/configs/P1010RDB-PA_SPIFLASH_defconfig
index 7aa5428..729fd42 100644
--- a/configs/P1010RDB-PA_SPIFLASH_defconfig
+++ b/configs/P1010RDB-PA_SPIFLASH_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1010RDB=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PA,SPIFLASH"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1010RDB-PB_36BIT_NAND_SECBOOT_defconfig b/configs/P1010RDB-PB_36BIT_NAND_SECBOOT_defconfig
index 253b19a9..4eafb1e 100644
--- a/configs/P1010RDB-PB_36BIT_NAND_SECBOOT_defconfig
+++ b/configs/P1010RDB-PB_36BIT_NAND_SECBOOT_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1010RDB=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PB,36BIT,NAND_SECBOOT,SECURE_BOOT"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1010RDB-PB_36BIT_NAND_defconfig b/configs/P1010RDB-PB_36BIT_NAND_defconfig
index f46739e..a046cd0 100644
--- a/configs/P1010RDB-PB_36BIT_NAND_defconfig
+++ b/configs/P1010RDB-PB_36BIT_NAND_defconfig
@@ -3,7 +3,9 @@ CONFIG_MPC85xx=y
 CONFIG_TARGET_P1010RDB=y
 CONFIG_SPL=y
 CONFIG_TPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PB,36BIT,NAND"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1010RDB-PB_36BIT_NOR_SECBOOT_defconfig b/configs/P1010RDB-PB_36BIT_NOR_SECBOOT_defconfig
index e05f7c0..8ec152f 100644
--- a/configs/P1010RDB-PB_36BIT_NOR_SECBOOT_defconfig
+++ b/configs/P1010RDB-PB_36BIT_NOR_SECBOOT_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1010RDB=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PB,36BIT,SECURE_BOOT"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1010RDB-PB_36BIT_NOR_defconfig b/configs/P1010RDB-PB_36BIT_NOR_defconfig
index a58b239..12cf141 100644
--- a/configs/P1010RDB-PB_36BIT_NOR_defconfig
+++ b/configs/P1010RDB-PB_36BIT_NOR_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1010RDB=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PB,36BIT"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1010RDB-PB_36BIT_SDCARD_defconfig b/configs/P1010RDB-PB_36BIT_SDCARD_defconfig
index 02ce36a..9f979e2 100644
--- a/configs/P1010RDB-PB_36BIT_SDCARD_defconfig
+++ b/configs/P1010RDB-PB_36BIT_SDCARD_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1010RDB=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PB,36BIT,SDCARD"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1010RDB-PB_36BIT_SPIFLASH_SECBOOT_defconfig b/configs/P1010RDB-PB_36BIT_SPIFLASH_SECBOOT_defconfig
index 20bfb91..c60d589 100644
--- a/configs/P1010RDB-PB_36BIT_SPIFLASH_SECBOOT_defconfig
+++ b/configs/P1010RDB-PB_36BIT_SPIFLASH_SECBOOT_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1010RDB=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PB,36BIT,SPIFLASH,SECURE_BOOT"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1010RDB-PB_36BIT_SPIFLASH_defconfig b/configs/P1010RDB-PB_36BIT_SPIFLASH_defconfig
index aed80c6..99e3b59 100644
--- a/configs/P1010RDB-PB_36BIT_SPIFLASH_defconfig
+++ b/configs/P1010RDB-PB_36BIT_SPIFLASH_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1010RDB=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PB,36BIT,SPIFLASH"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1010RDB-PB_NAND_SECBOOT_defconfig b/configs/P1010RDB-PB_NAND_SECBOOT_defconfig
index 05b3a81..4f68468 100644
--- a/configs/P1010RDB-PB_NAND_SECBOOT_defconfig
+++ b/configs/P1010RDB-PB_NAND_SECBOOT_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1010RDB=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PB,NAND_SECBOOT,SECURE_BOOT"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1010RDB-PB_NAND_defconfig b/configs/P1010RDB-PB_NAND_defconfig
index 78d6086..56f2c15 100644
--- a/configs/P1010RDB-PB_NAND_defconfig
+++ b/configs/P1010RDB-PB_NAND_defconfig
@@ -3,7 +3,9 @@ CONFIG_MPC85xx=y
 CONFIG_TARGET_P1010RDB=y
 CONFIG_SPL=y
 CONFIG_TPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PB,NAND"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1010RDB-PB_NOR_SECBOOT_defconfig b/configs/P1010RDB-PB_NOR_SECBOOT_defconfig
index 0a84505..56eeb61 100644
--- a/configs/P1010RDB-PB_NOR_SECBOOT_defconfig
+++ b/configs/P1010RDB-PB_NOR_SECBOOT_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1010RDB=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PB,SECURE_BOOT"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1010RDB-PB_NOR_defconfig b/configs/P1010RDB-PB_NOR_defconfig
index c9292c5..3c24037 100644
--- a/configs/P1010RDB-PB_NOR_defconfig
+++ b/configs/P1010RDB-PB_NOR_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1010RDB=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PB"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1010RDB-PB_SDCARD_defconfig b/configs/P1010RDB-PB_SDCARD_defconfig
index 6445a4c..80fb35d 100644
--- a/configs/P1010RDB-PB_SDCARD_defconfig
+++ b/configs/P1010RDB-PB_SDCARD_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1010RDB=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PB,SDCARD"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1010RDB-PB_SPIFLASH_SECBOOT_defconfig b/configs/P1010RDB-PB_SPIFLASH_SECBOOT_defconfig
index 975e718..aaebf9c 100644
--- a/configs/P1010RDB-PB_SPIFLASH_SECBOOT_defconfig
+++ b/configs/P1010RDB-PB_SPIFLASH_SECBOOT_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1010RDB=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PB,SPIFLASH,SECURE_BOOT"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1010RDB-PB_SPIFLASH_defconfig b/configs/P1010RDB-PB_SPIFLASH_defconfig
index 5a0e5cc..8247010 100644
--- a/configs/P1010RDB-PB_SPIFLASH_defconfig
+++ b/configs/P1010RDB-PB_SPIFLASH_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1010RDB=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PB,SPIFLASH"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1020MBG-PC_36BIT_SDCARD_defconfig b/configs/P1020MBG-PC_36BIT_SDCARD_defconfig
index 43029c6..d34cbc7 100644
--- a/configs/P1020MBG-PC_36BIT_SDCARD_defconfig
+++ b/configs/P1020MBG-PC_36BIT_SDCARD_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1_P2_RDB_PC=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1020MBG,SDCARD,36BIT"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
diff --git a/configs/P1020MBG-PC_36BIT_defconfig b/configs/P1020MBG-PC_36BIT_defconfig
index 01ac4f5..2565d0f 100644
--- a/configs/P1020MBG-PC_36BIT_defconfig
+++ b/configs/P1020MBG-PC_36BIT_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1_P2_RDB_PC=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1020MBG,36BIT"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
diff --git a/configs/P1020MBG-PC_SDCARD_defconfig b/configs/P1020MBG-PC_SDCARD_defconfig
index 7f5158c..b49d669 100644
--- a/configs/P1020MBG-PC_SDCARD_defconfig
+++ b/configs/P1020MBG-PC_SDCARD_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1_P2_RDB_PC=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1020MBG,SDCARD"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
diff --git a/configs/P1020MBG-PC_defconfig b/configs/P1020MBG-PC_defconfig
index d7e8053..e50b60d 100644
--- a/configs/P1020MBG-PC_defconfig
+++ b/configs/P1020MBG-PC_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1_P2_RDB_PC=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1020MBG"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
diff --git a/configs/P1020RDB-PC_36BIT_NAND_defconfig b/configs/P1020RDB-PC_36BIT_NAND_defconfig
index 878fd8d..3a77c0a 100644
--- a/configs/P1020RDB-PC_36BIT_NAND_defconfig
+++ b/configs/P1020RDB-PC_36BIT_NAND_defconfig
@@ -3,7 +3,9 @@ CONFIG_MPC85xx=y
 CONFIG_TARGET_P1_P2_RDB_PC=y
 CONFIG_SPL=y
 CONFIG_TPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1020RDB_PC,36BIT,NAND"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1020RDB-PC_36BIT_SDCARD_defconfig b/configs/P1020RDB-PC_36BIT_SDCARD_defconfig
index 8ae0c35..8eaffab 100644
--- a/configs/P1020RDB-PC_36BIT_SDCARD_defconfig
+++ b/configs/P1020RDB-PC_36BIT_SDCARD_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1_P2_RDB_PC=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1020RDB_PC,36BIT,SDCARD"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1020RDB-PC_36BIT_SPIFLASH_defconfig b/configs/P1020RDB-PC_36BIT_SPIFLASH_defconfig
index 9874432..d07e5c2 100644
--- a/configs/P1020RDB-PC_36BIT_SPIFLASH_defconfig
+++ b/configs/P1020RDB-PC_36BIT_SPIFLASH_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1_P2_RDB_PC=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1020RDB_PC,36BIT,SPIFLASH"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1020RDB-PC_36BIT_defconfig b/configs/P1020RDB-PC_36BIT_defconfig
index e5f8fd0..c888300 100644
--- a/configs/P1020RDB-PC_36BIT_defconfig
+++ b/configs/P1020RDB-PC_36BIT_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1_P2_RDB_PC=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1020RDB_PC,36BIT"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1020RDB-PC_NAND_defconfig b/configs/P1020RDB-PC_NAND_defconfig
index ce393ba..a02ac99 100644
--- a/configs/P1020RDB-PC_NAND_defconfig
+++ b/configs/P1020RDB-PC_NAND_defconfig
@@ -3,7 +3,9 @@ CONFIG_MPC85xx=y
 CONFIG_TARGET_P1_P2_RDB_PC=y
 CONFIG_SPL=y
 CONFIG_TPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1020RDB_PC,NAND"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1020RDB-PC_SDCARD_defconfig b/configs/P1020RDB-PC_SDCARD_defconfig
index cd90ceb..33b803c 100644
--- a/configs/P1020RDB-PC_SDCARD_defconfig
+++ b/configs/P1020RDB-PC_SDCARD_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1_P2_RDB_PC=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1020RDB_PC,SDCARD"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1020RDB-PC_SPIFLASH_defconfig b/configs/P1020RDB-PC_SPIFLASH_defconfig
index 7a3f056..9ab7ab6 100644
--- a/configs/P1020RDB-PC_SPIFLASH_defconfig
+++ b/configs/P1020RDB-PC_SPIFLASH_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1_P2_RDB_PC=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1020RDB_PC,SPIFLASH"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1020RDB-PC_defconfig b/configs/P1020RDB-PC_defconfig
index aa5c83d..4bce962 100644
--- a/configs/P1020RDB-PC_defconfig
+++ b/configs/P1020RDB-PC_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1_P2_RDB_PC=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1020RDB_PC"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1020RDB-PD_NAND_defconfig b/configs/P1020RDB-PD_NAND_defconfig
index 1bde069..e7d3fc2 100644
--- a/configs/P1020RDB-PD_NAND_defconfig
+++ b/configs/P1020RDB-PD_NAND_defconfig
@@ -3,7 +3,9 @@ CONFIG_MPC85xx=y
 CONFIG_TARGET_P1_P2_RDB_PC=y
 CONFIG_SPL=y
 CONFIG_TPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1020RDB_PD,NAND"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1020RDB-PD_SDCARD_defconfig b/configs/P1020RDB-PD_SDCARD_defconfig
index ca8657e..9c6da69 100644
--- a/configs/P1020RDB-PD_SDCARD_defconfig
+++ b/configs/P1020RDB-PD_SDCARD_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1_P2_RDB_PC=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1020RDB_PD,SDCARD"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1020RDB-PD_SPIFLASH_defconfig b/configs/P1020RDB-PD_SPIFLASH_defconfig
index 694ad81..ee382f6 100644
--- a/configs/P1020RDB-PD_SPIFLASH_defconfig
+++ b/configs/P1020RDB-PD_SPIFLASH_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1_P2_RDB_PC=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1020RDB_PD,SPIFLASH"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1020RDB-PD_defconfig b/configs/P1020RDB-PD_defconfig
index 77c4c1d..6ebe541 100644
--- a/configs/P1020RDB-PD_defconfig
+++ b/configs/P1020RDB-PD_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1_P2_RDB_PC=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1020RDB_PD"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1020UTM-PC_36BIT_SDCARD_defconfig b/configs/P1020UTM-PC_36BIT_SDCARD_defconfig
index e2021b6..249984e 100644
--- a/configs/P1020UTM-PC_36BIT_SDCARD_defconfig
+++ b/configs/P1020UTM-PC_36BIT_SDCARD_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1_P2_RDB_PC=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1020UTM,36BIT,SDCARD"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
diff --git a/configs/P1020UTM-PC_36BIT_defconfig b/configs/P1020UTM-PC_36BIT_defconfig
index 1bd8f7b..383d79e 100644
--- a/configs/P1020UTM-PC_36BIT_defconfig
+++ b/configs/P1020UTM-PC_36BIT_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1_P2_RDB_PC=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1020UTM,36BIT"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
diff --git a/configs/P1020UTM-PC_SDCARD_defconfig b/configs/P1020UTM-PC_SDCARD_defconfig
index 424b846..43c6e18 100644
--- a/configs/P1020UTM-PC_SDCARD_defconfig
+++ b/configs/P1020UTM-PC_SDCARD_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1_P2_RDB_PC=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1020UTM,SDCARD"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
diff --git a/configs/P1020UTM-PC_defconfig b/configs/P1020UTM-PC_defconfig
index 047b654..5b85f90 100644
--- a/configs/P1020UTM-PC_defconfig
+++ b/configs/P1020UTM-PC_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1_P2_RDB_PC=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1020UTM"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
diff --git a/configs/P1021RDB-PC_36BIT_NAND_defconfig b/configs/P1021RDB-PC_36BIT_NAND_defconfig
index 7040753..c64bbb1 100644
--- a/configs/P1021RDB-PC_36BIT_NAND_defconfig
+++ b/configs/P1021RDB-PC_36BIT_NAND_defconfig
@@ -3,7 +3,9 @@ CONFIG_MPC85xx=y
 CONFIG_TARGET_P1_P2_RDB_PC=y
 CONFIG_SPL=y
 CONFIG_TPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1021RDB,36BIT,NAND"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1021RDB-PC_36BIT_SDCARD_defconfig b/configs/P1021RDB-PC_36BIT_SDCARD_defconfig
index eed6774..598680e 100644
--- a/configs/P1021RDB-PC_36BIT_SDCARD_defconfig
+++ b/configs/P1021RDB-PC_36BIT_SDCARD_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1_P2_RDB_PC=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1021RDB,36BIT,SDCARD"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1021RDB-PC_36BIT_SPIFLASH_defconfig b/configs/P1021RDB-PC_36BIT_SPIFLASH_defconfig
index 28a94bc..eeedfae 100644
--- a/configs/P1021RDB-PC_36BIT_SPIFLASH_defconfig
+++ b/configs/P1021RDB-PC_36BIT_SPIFLASH_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1_P2_RDB_PC=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1021RDB,36BIT,SPIFLASH"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1021RDB-PC_36BIT_defconfig b/configs/P1021RDB-PC_36BIT_defconfig
index 6e42ede..e691fc1 100644
--- a/configs/P1021RDB-PC_36BIT_defconfig
+++ b/configs/P1021RDB-PC_36BIT_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1_P2_RDB_PC=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1021RDB,36BIT"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1021RDB-PC_NAND_defconfig b/configs/P1021RDB-PC_NAND_defconfig
index 040fa1e..7b83de4 100644
--- a/configs/P1021RDB-PC_NAND_defconfig
+++ b/configs/P1021RDB-PC_NAND_defconfig
@@ -3,7 +3,9 @@ CONFIG_MPC85xx=y
 CONFIG_TARGET_P1_P2_RDB_PC=y
 CONFIG_SPL=y
 CONFIG_TPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1021RDB,NAND"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1021RDB-PC_SDCARD_defconfig b/configs/P1021RDB-PC_SDCARD_defconfig
index d1cc73e..1036565 100644
--- a/configs/P1021RDB-PC_SDCARD_defconfig
+++ b/configs/P1021RDB-PC_SDCARD_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1_P2_RDB_PC=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1021RDB,SDCARD"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1021RDB-PC_SPIFLASH_defconfig b/configs/P1021RDB-PC_SPIFLASH_defconfig
index 43aca3e..6260072 100644
--- a/configs/P1021RDB-PC_SPIFLASH_defconfig
+++ b/configs/P1021RDB-PC_SPIFLASH_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1_P2_RDB_PC=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1021RDB,SPIFLASH"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1021RDB-PC_defconfig b/configs/P1021RDB-PC_defconfig
index 3114e01..9e08fca 100644
--- a/configs/P1021RDB-PC_defconfig
+++ b/configs/P1021RDB-PC_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1_P2_RDB_PC=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1021RDB"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1022DS_36BIT_NAND_defconfig b/configs/P1022DS_36BIT_NAND_defconfig
index d8272d4..78dbb5c 100644
--- a/configs/P1022DS_36BIT_NAND_defconfig
+++ b/configs/P1022DS_36BIT_NAND_defconfig
@@ -3,7 +3,9 @@ CONFIG_MPC85xx=y
 CONFIG_TARGET_P1022DS=y
 CONFIG_SPL=y
 CONFIG_TPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="36BIT,NAND"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1022DS_36BIT_SDCARD_defconfig b/configs/P1022DS_36BIT_SDCARD_defconfig
index 635c8e0..0094b9e 100644
--- a/configs/P1022DS_36BIT_SDCARD_defconfig
+++ b/configs/P1022DS_36BIT_SDCARD_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1022DS=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="36BIT,SDCARD"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1022DS_36BIT_SPIFLASH_defconfig b/configs/P1022DS_36BIT_SPIFLASH_defconfig
index 76fc6d6..98236bb 100644
--- a/configs/P1022DS_36BIT_SPIFLASH_defconfig
+++ b/configs/P1022DS_36BIT_SPIFLASH_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1022DS=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="36BIT,SPIFLASH"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1022DS_36BIT_defconfig b/configs/P1022DS_36BIT_defconfig
index 4c93f39..253310c 100644
--- a/configs/P1022DS_36BIT_defconfig
+++ b/configs/P1022DS_36BIT_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1022DS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="36BIT"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1022DS_NAND_defconfig b/configs/P1022DS_NAND_defconfig
index 1a8cb73..8a64251 100644
--- a/configs/P1022DS_NAND_defconfig
+++ b/configs/P1022DS_NAND_defconfig
@@ -3,7 +3,9 @@ CONFIG_MPC85xx=y
 CONFIG_TARGET_P1022DS=y
 CONFIG_SPL=y
 CONFIG_TPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="NAND"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1022DS_SDCARD_defconfig b/configs/P1022DS_SDCARD_defconfig
index 5822f3e..b4955b2 100644
--- a/configs/P1022DS_SDCARD_defconfig
+++ b/configs/P1022DS_SDCARD_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1022DS=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="SDCARD"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1022DS_SPIFLASH_defconfig b/configs/P1022DS_SPIFLASH_defconfig
index 0d9d6dd..0cb4946 100644
--- a/configs/P1022DS_SPIFLASH_defconfig
+++ b/configs/P1022DS_SPIFLASH_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1022DS=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="SPIFLASH"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1022DS_defconfig b/configs/P1022DS_defconfig
index ecade54..cd4a194 100644
--- a/configs/P1022DS_defconfig
+++ b/configs/P1022DS_defconfig
@@ -1,6 +1,8 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1022DS=y
+CONFIG_FIT=y
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1023RDB_defconfig b/configs/P1023RDB_defconfig
index 301f955..6afa4d3 100644
--- a/configs/P1023RDB_defconfig
+++ b/configs/P1023RDB_defconfig
@@ -1,6 +1,8 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1023RDB=y
+CONFIG_FIT=y
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
diff --git a/configs/P1024RDB_36BIT_defconfig b/configs/P1024RDB_36BIT_defconfig
index e55304d..f948a7f 100644
--- a/configs/P1024RDB_36BIT_defconfig
+++ b/configs/P1024RDB_36BIT_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1_P2_RDB_PC=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1024RDB,36BIT"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1024RDB_NAND_defconfig b/configs/P1024RDB_NAND_defconfig
index 717a9d4..8eb88a9 100644
--- a/configs/P1024RDB_NAND_defconfig
+++ b/configs/P1024RDB_NAND_defconfig
@@ -3,7 +3,9 @@ CONFIG_MPC85xx=y
 CONFIG_TARGET_P1_P2_RDB_PC=y
 CONFIG_SPL=y
 CONFIG_TPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1024RDB,NAND"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1024RDB_SDCARD_defconfig b/configs/P1024RDB_SDCARD_defconfig
index dd868c0..1f6355f 100644
--- a/configs/P1024RDB_SDCARD_defconfig
+++ b/configs/P1024RDB_SDCARD_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1_P2_RDB_PC=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1024RDB,SDCARD"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1024RDB_SPIFLASH_defconfig b/configs/P1024RDB_SPIFLASH_defconfig
index 2d5d313..046d736 100644
--- a/configs/P1024RDB_SPIFLASH_defconfig
+++ b/configs/P1024RDB_SPIFLASH_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1_P2_RDB_PC=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1024RDB,SPIFLASH"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1024RDB_defconfig b/configs/P1024RDB_defconfig
index 527af8a..48df0ac 100644
--- a/configs/P1024RDB_defconfig
+++ b/configs/P1024RDB_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1_P2_RDB_PC=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1024RDB"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1025RDB_36BIT_defconfig b/configs/P1025RDB_36BIT_defconfig
index 943b79f..64be9f1 100644
--- a/configs/P1025RDB_36BIT_defconfig
+++ b/configs/P1025RDB_36BIT_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1_P2_RDB_PC=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1025RDB,36BIT"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1025RDB_NAND_defconfig b/configs/P1025RDB_NAND_defconfig
index dcbb704..8e02ef9 100644
--- a/configs/P1025RDB_NAND_defconfig
+++ b/configs/P1025RDB_NAND_defconfig
@@ -3,7 +3,9 @@ CONFIG_MPC85xx=y
 CONFIG_TARGET_P1_P2_RDB_PC=y
 CONFIG_SPL=y
 CONFIG_TPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1025RDB,NAND"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1025RDB_SDCARD_defconfig b/configs/P1025RDB_SDCARD_defconfig
index a110842..983f7c4 100644
--- a/configs/P1025RDB_SDCARD_defconfig
+++ b/configs/P1025RDB_SDCARD_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1_P2_RDB_PC=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1025RDB,SDCARD"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1025RDB_SPIFLASH_defconfig b/configs/P1025RDB_SPIFLASH_defconfig
index 27f1a56..608c615 100644
--- a/configs/P1025RDB_SPIFLASH_defconfig
+++ b/configs/P1025RDB_SPIFLASH_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1_P2_RDB_PC=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1025RDB,SPIFLASH"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1025RDB_defconfig b/configs/P1025RDB_defconfig
index 466f080..a435358 100644
--- a/configs/P1025RDB_defconfig
+++ b/configs/P1025RDB_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1_P2_RDB_PC=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P1025RDB"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P2020RDB-PC_36BIT_NAND_defconfig b/configs/P2020RDB-PC_36BIT_NAND_defconfig
index 26224dd..12e65ea 100644
--- a/configs/P2020RDB-PC_36BIT_NAND_defconfig
+++ b/configs/P2020RDB-PC_36BIT_NAND_defconfig
@@ -3,7 +3,9 @@ CONFIG_MPC85xx=y
 CONFIG_TARGET_P1_P2_RDB_PC=y
 CONFIG_SPL=y
 CONFIG_TPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P2020RDB,36BIT,NAND"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P2020RDB-PC_36BIT_SDCARD_defconfig b/configs/P2020RDB-PC_36BIT_SDCARD_defconfig
index f9824b6..a2924a9 100644
--- a/configs/P2020RDB-PC_36BIT_SDCARD_defconfig
+++ b/configs/P2020RDB-PC_36BIT_SDCARD_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1_P2_RDB_PC=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P2020RDB,36BIT,SDCARD"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P2020RDB-PC_36BIT_SPIFLASH_defconfig b/configs/P2020RDB-PC_36BIT_SPIFLASH_defconfig
index ff9cc65..f9cebac 100644
--- a/configs/P2020RDB-PC_36BIT_SPIFLASH_defconfig
+++ b/configs/P2020RDB-PC_36BIT_SPIFLASH_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1_P2_RDB_PC=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P2020RDB,36BIT,SPIFLASH"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P2020RDB-PC_36BIT_defconfig b/configs/P2020RDB-PC_36BIT_defconfig
index 9263d70..3a97561 100644
--- a/configs/P2020RDB-PC_36BIT_defconfig
+++ b/configs/P2020RDB-PC_36BIT_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1_P2_RDB_PC=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P2020RDB,36BIT"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P2020RDB-PC_NAND_defconfig b/configs/P2020RDB-PC_NAND_defconfig
index b0c2a9e..5dc12a0 100644
--- a/configs/P2020RDB-PC_NAND_defconfig
+++ b/configs/P2020RDB-PC_NAND_defconfig
@@ -3,7 +3,9 @@ CONFIG_MPC85xx=y
 CONFIG_TARGET_P1_P2_RDB_PC=y
 CONFIG_SPL=y
 CONFIG_TPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P2020RDB,NAND"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P2020RDB-PC_SDCARD_defconfig b/configs/P2020RDB-PC_SDCARD_defconfig
index e9c27db..959d645 100644
--- a/configs/P2020RDB-PC_SDCARD_defconfig
+++ b/configs/P2020RDB-PC_SDCARD_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1_P2_RDB_PC=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P2020RDB,SDCARD"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P2020RDB-PC_SPIFLASH_defconfig b/configs/P2020RDB-PC_SPIFLASH_defconfig
index 65ccac3..d1c77a3 100644
--- a/configs/P2020RDB-PC_SPIFLASH_defconfig
+++ b/configs/P2020RDB-PC_SPIFLASH_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1_P2_RDB_PC=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P2020RDB,SPIFLASH"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P2020RDB-PC_defconfig b/configs/P2020RDB-PC_defconfig
index a551d61..b4ac20a 100644
--- a/configs/P2020RDB-PC_defconfig
+++ b/configs/P2020RDB-PC_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1_P2_RDB_PC=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="P2020RDB"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P2041RDB_NAND_defconfig b/configs/P2041RDB_NAND_defconfig
index 65a6fd9..3057e87 100644
--- a/configs/P2041RDB_NAND_defconfig
+++ b/configs/P2041RDB_NAND_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P2041RDB=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="RAMBOOT_PBL,NAND,SYS_TEXT_BASE=0xFFF40000"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P2041RDB_SDCARD_defconfig b/configs/P2041RDB_SDCARD_defconfig
index 5d4af31..2bcea4c 100644
--- a/configs/P2041RDB_SDCARD_defconfig
+++ b/configs/P2041RDB_SDCARD_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P2041RDB=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="RAMBOOT_PBL,SDCARD,SYS_TEXT_BASE=0xFFF40000"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P2041RDB_SECURE_BOOT_defconfig b/configs/P2041RDB_SECURE_BOOT_defconfig
index 459941c..f8b663e 100644
--- a/configs/P2041RDB_SECURE_BOOT_defconfig
+++ b/configs/P2041RDB_SECURE_BOOT_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P2041RDB=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="SECURE_BOOT"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P2041RDB_SPIFLASH_defconfig b/configs/P2041RDB_SPIFLASH_defconfig
index 844cee0..38e074d 100644
--- a/configs/P2041RDB_SPIFLASH_defconfig
+++ b/configs/P2041RDB_SPIFLASH_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P2041RDB=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="RAMBOOT_PBL,SPIFLASH,SYS_TEXT_BASE=0xFFF40000"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P2041RDB_SRIO_PCIE_BOOT_defconfig b/configs/P2041RDB_SRIO_PCIE_BOOT_defconfig
index b2e35af..58635ff 100644
--- a/configs/P2041RDB_SRIO_PCIE_BOOT_defconfig
+++ b/configs/P2041RDB_SRIO_PCIE_BOOT_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P2041RDB=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="SRIO_PCIE_BOOT_SLAVE,SYS_TEXT_BASE=0xFFF40000"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 CONFIG_SPI_FLASH=y
diff --git a/configs/P2041RDB_defconfig b/configs/P2041RDB_defconfig
index bfc440f..55d515c 100644
--- a/configs/P2041RDB_defconfig
+++ b/configs/P2041RDB_defconfig
@@ -1,6 +1,8 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P2041RDB=y
+CONFIG_FIT=y
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P3041DS_NAND_SECURE_BOOT_defconfig b/configs/P3041DS_NAND_SECURE_BOOT_defconfig
index ee29d2f..cb6f27a 100644
--- a/configs/P3041DS_NAND_SECURE_BOOT_defconfig
+++ b/configs/P3041DS_NAND_SECURE_BOOT_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P3041DS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="RAMBOOT_PBL,NAND,SECURE_BOOT,SYS_TEXT_BASE=0xFFF40000"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P3041DS_NAND_defconfig b/configs/P3041DS_NAND_defconfig
index 66194c1..2d487d2 100644
--- a/configs/P3041DS_NAND_defconfig
+++ b/configs/P3041DS_NAND_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P3041DS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="RAMBOOT_PBL,NAND,SYS_TEXT_BASE=0xFFF40000"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P3041DS_SDCARD_defconfig b/configs/P3041DS_SDCARD_defconfig
index 669a956..d6e2cad 100644
--- a/configs/P3041DS_SDCARD_defconfig
+++ b/configs/P3041DS_SDCARD_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P3041DS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="RAMBOOT_PBL,SDCARD,SYS_TEXT_BASE=0xFFF40000"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P3041DS_SECURE_BOOT_defconfig b/configs/P3041DS_SECURE_BOOT_defconfig
index b4736e2..9b10d21 100644
--- a/configs/P3041DS_SECURE_BOOT_defconfig
+++ b/configs/P3041DS_SECURE_BOOT_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P3041DS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="SECURE_BOOT"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P3041DS_SPIFLASH_defconfig b/configs/P3041DS_SPIFLASH_defconfig
index 1bffa87..3f2f398 100644
--- a/configs/P3041DS_SPIFLASH_defconfig
+++ b/configs/P3041DS_SPIFLASH_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P3041DS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="RAMBOOT_PBL,SPIFLASH,SYS_TEXT_BASE=0xFFF40000"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P3041DS_SRIO_PCIE_BOOT_defconfig b/configs/P3041DS_SRIO_PCIE_BOOT_defconfig
index 0d98ef9..7e2f9ce 100644
--- a/configs/P3041DS_SRIO_PCIE_BOOT_defconfig
+++ b/configs/P3041DS_SRIO_PCIE_BOOT_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P3041DS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="SRIO_PCIE_BOOT_SLAVE,SYS_TEXT_BASE=0xFFF40000"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 CONFIG_SPI_FLASH=y
diff --git a/configs/P3041DS_defconfig b/configs/P3041DS_defconfig
index fd155f8..19b422a 100644
--- a/configs/P3041DS_defconfig
+++ b/configs/P3041DS_defconfig
@@ -1,6 +1,8 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P3041DS=y
+CONFIG_FIT=y
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P4080DS_SDCARD_defconfig b/configs/P4080DS_SDCARD_defconfig
index 285df12..65f05b0 100644
--- a/configs/P4080DS_SDCARD_defconfig
+++ b/configs/P4080DS_SDCARD_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P4080DS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="RAMBOOT_PBL,SDCARD,SYS_TEXT_BASE=0xFFF40000"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P4080DS_SECURE_BOOT_defconfig b/configs/P4080DS_SECURE_BOOT_defconfig
index 094dcfd..364e6a0 100644
--- a/configs/P4080DS_SECURE_BOOT_defconfig
+++ b/configs/P4080DS_SECURE_BOOT_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P4080DS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="SECURE_BOOT"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P4080DS_SPIFLASH_defconfig b/configs/P4080DS_SPIFLASH_defconfig
index b37a6d8..86d7a24 100644
--- a/configs/P4080DS_SPIFLASH_defconfig
+++ b/configs/P4080DS_SPIFLASH_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P4080DS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="RAMBOOT_PBL,SPIFLASH,SYS_TEXT_BASE=0xFFF40000"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P4080DS_SRIO_PCIE_BOOT_defconfig b/configs/P4080DS_SRIO_PCIE_BOOT_defconfig
index e4680db..2f490b6 100644
--- a/configs/P4080DS_SRIO_PCIE_BOOT_defconfig
+++ b/configs/P4080DS_SRIO_PCIE_BOOT_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P4080DS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="SRIO_PCIE_BOOT_SLAVE,SYS_TEXT_BASE=0xFFF40000"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 CONFIG_SPI_FLASH=y
diff --git a/configs/P4080DS_defconfig b/configs/P4080DS_defconfig
index 1604199..f7c0f60 100644
--- a/configs/P4080DS_defconfig
+++ b/configs/P4080DS_defconfig
@@ -1,6 +1,8 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P4080DS=y
+CONFIG_FIT=y
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P5020DS_NAND_SECURE_BOOT_defconfig b/configs/P5020DS_NAND_SECURE_BOOT_defconfig
index fe1838b..7068b5f 100644
--- a/configs/P5020DS_NAND_SECURE_BOOT_defconfig
+++ b/configs/P5020DS_NAND_SECURE_BOOT_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P5020DS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="RAMBOOT_PBL,NAND,SECURE_BOOT,SYS_TEXT_BASE=0xFFF40000"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P5020DS_NAND_defconfig b/configs/P5020DS_NAND_defconfig
index eff8b8d..d57d398 100644
--- a/configs/P5020DS_NAND_defconfig
+++ b/configs/P5020DS_NAND_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P5020DS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="RAMBOOT_PBL,NAND,SYS_TEXT_BASE=0xFFF40000"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P5020DS_SDCARD_defconfig b/configs/P5020DS_SDCARD_defconfig
index 9f2d323..b0fc953 100644
--- a/configs/P5020DS_SDCARD_defconfig
+++ b/configs/P5020DS_SDCARD_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P5020DS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="RAMBOOT_PBL,SDCARD,SYS_TEXT_BASE=0xFFF40000"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P5020DS_SECURE_BOOT_defconfig b/configs/P5020DS_SECURE_BOOT_defconfig
index bec3c9a..6b83727 100644
--- a/configs/P5020DS_SECURE_BOOT_defconfig
+++ b/configs/P5020DS_SECURE_BOOT_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P5020DS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="SECURE_BOOT"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P5020DS_SPIFLASH_defconfig b/configs/P5020DS_SPIFLASH_defconfig
index 0d4ccbe..f806667 100644
--- a/configs/P5020DS_SPIFLASH_defconfig
+++ b/configs/P5020DS_SPIFLASH_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P5020DS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="RAMBOOT_PBL,SPIFLASH,SYS_TEXT_BASE=0xFFF40000"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P5020DS_SRIO_PCIE_BOOT_defconfig b/configs/P5020DS_SRIO_PCIE_BOOT_defconfig
index 70e7a87..f417010 100644
--- a/configs/P5020DS_SRIO_PCIE_BOOT_defconfig
+++ b/configs/P5020DS_SRIO_PCIE_BOOT_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P5020DS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="SRIO_PCIE_BOOT_SLAVE,SYS_TEXT_BASE=0xFFF40000"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 CONFIG_SPI_FLASH=y
diff --git a/configs/P5020DS_defconfig b/configs/P5020DS_defconfig
index a81d1b1..d6df5c6 100644
--- a/configs/P5020DS_defconfig
+++ b/configs/P5020DS_defconfig
@@ -1,6 +1,8 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P5020DS=y
+CONFIG_FIT=y
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P5040DS_NAND_SECURE_BOOT_defconfig b/configs/P5040DS_NAND_SECURE_BOOT_defconfig
index 2976fb8..17a8a5e 100644
--- a/configs/P5040DS_NAND_SECURE_BOOT_defconfig
+++ b/configs/P5040DS_NAND_SECURE_BOOT_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P5040DS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="RAMBOOT_PBL,NAND,SECURE_BOOT,SYS_TEXT_BASE=0xFFF40000"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P5040DS_NAND_defconfig b/configs/P5040DS_NAND_defconfig
index cc8eae9..1b10271 100644
--- a/configs/P5040DS_NAND_defconfig
+++ b/configs/P5040DS_NAND_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P5040DS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="RAMBOOT_PBL,NAND,SYS_TEXT_BASE=0xFFF40000"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P5040DS_SDCARD_defconfig b/configs/P5040DS_SDCARD_defconfig
index e4b2824..72635d0 100644
--- a/configs/P5040DS_SDCARD_defconfig
+++ b/configs/P5040DS_SDCARD_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P5040DS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="RAMBOOT_PBL,SDCARD,SYS_TEXT_BASE=0xFFF40000"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P5040DS_SECURE_BOOT_defconfig b/configs/P5040DS_SECURE_BOOT_defconfig
index a2c4a60..6d1f32e 100644
--- a/configs/P5040DS_SECURE_BOOT_defconfig
+++ b/configs/P5040DS_SECURE_BOOT_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P5040DS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="SECURE_BOOT"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P5040DS_SPIFLASH_defconfig b/configs/P5040DS_SPIFLASH_defconfig
index 3db7980..f8de9f4 100644
--- a/configs/P5040DS_SPIFLASH_defconfig
+++ b/configs/P5040DS_SPIFLASH_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P5040DS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="RAMBOOT_PBL,SPIFLASH,SYS_TEXT_BASE=0xFFF40000"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P5040DS_defconfig b/configs/P5040DS_defconfig
index 12b61b9..424f22a 100644
--- a/configs/P5040DS_defconfig
+++ b/configs/P5040DS_defconfig
@@ -1,6 +1,8 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P5040DS=y
+CONFIG_FIT=y
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/PLU405_defconfig b/configs/PLU405_defconfig
index f7a204c..52850dd 100644
--- a/configs/PLU405_defconfig
+++ b/configs/PLU405_defconfig
@@ -1,6 +1,7 @@
 CONFIG_PPC=y
 CONFIG_4xx=y
 CONFIG_TARGET_PLU405=y
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_AUTOBOOT_KEYED=y
 CONFIG_AUTOBOOT_PROMPT="Press SPACE to abort autoboot in %d seconds\n"
 CONFIG_AUTOBOOT_STOP_STR=" "
diff --git a/configs/PMC405DE_defconfig b/configs/PMC405DE_defconfig
index fc78a64..1155bd1 100644
--- a/configs/PMC405DE_defconfig
+++ b/configs/PMC405DE_defconfig
@@ -1,6 +1,7 @@
 CONFIG_PPC=y
 CONFIG_4xx=y
 CONFIG_TARGET_PMC405DE=y
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_AUTOBOOT_KEYED=y
 CONFIG_AUTOBOOT_PROMPT="Press SPACE to abort autoboot in %d seconds\n"
 CONFIG_AUTOBOOT_STOP_STR=" "
diff --git a/configs/PMC440_defconfig b/configs/PMC440_defconfig
index 3b8b4fd..156d813 100644
--- a/configs/PMC440_defconfig
+++ b/configs/PMC440_defconfig
@@ -1,6 +1,7 @@
 CONFIG_PPC=y
 CONFIG_4xx=y
 CONFIG_TARGET_PMC440=y
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_AUTOBOOT_KEYED=y
 CONFIG_AUTOBOOT_PROMPT="Press SPACE to abort autoboot in %d seconds\n"
 CONFIG_AUTOBOOT_STOP_STR=" "
diff --git a/configs/Sinlinx_SinA33_defconfig b/configs/Sinlinx_SinA33_defconfig
index 20d3f93..2dd8d7e 100644
--- a/configs/Sinlinx_SinA33_defconfig
+++ b/configs/Sinlinx_SinA33_defconfig
@@ -6,6 +6,7 @@ CONFIG_DRAM_ZQ=15291
 CONFIG_DEFAULT_DEVICE_TREE="sun8i-a33-sinlinx-sina33"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/Sinovoip_BPI_M2_defconfig b/configs/Sinovoip_BPI_M2_defconfig
index a5f8e6a..2ae24d5 100644
--- a/configs/Sinovoip_BPI_M2_defconfig
+++ b/configs/Sinovoip_BPI_M2_defconfig
@@ -8,6 +8,7 @@ CONFIG_DEFAULT_DEVICE_TREE="sun6i-a31s-sinovoip-bpi-m2"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC,RGMII"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/T1023RDB_NAND_defconfig b/configs/T1023RDB_NAND_defconfig
index 356f872..21488ad 100644
--- a/configs/T1023RDB_NAND_defconfig
+++ b/configs/T1023RDB_NAND_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T102XRDB=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T1023,T1023RDB,RAMBOOT_PBL,SPL_FSL_PBL,NAND"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 CONFIG_SPI_FLASH=y
diff --git a/configs/T1023RDB_SDCARD_defconfig b/configs/T1023RDB_SDCARD_defconfig
index 730482e..8a67c63 100644
--- a/configs/T1023RDB_SDCARD_defconfig
+++ b/configs/T1023RDB_SDCARD_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T102XRDB=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T1023,T1023RDB,RAMBOOT_PBL,SPL_FSL_PBL,SDCARD"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 CONFIG_SPI_FLASH=y
diff --git a/configs/T1023RDB_SECURE_BOOT_defconfig b/configs/T1023RDB_SECURE_BOOT_defconfig
index 4144cf8..6689461 100644
--- a/configs/T1023RDB_SECURE_BOOT_defconfig
+++ b/configs/T1023RDB_SECURE_BOOT_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T102XRDB=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T1023,T1023RDB,SECURE_BOOT"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/T1023RDB_SPIFLASH_defconfig b/configs/T1023RDB_SPIFLASH_defconfig
index 6725127..2c53907 100644
--- a/configs/T1023RDB_SPIFLASH_defconfig
+++ b/configs/T1023RDB_SPIFLASH_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T102XRDB=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T1023,T1023RDB,RAMBOOT_PBL,SPL_FSL_PBL,SPIFLASH"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 CONFIG_SPI_FLASH=y
diff --git a/configs/T1023RDB_defconfig b/configs/T1023RDB_defconfig
index 52c4974..5aab0c6 100644
--- a/configs/T1023RDB_defconfig
+++ b/configs/T1023RDB_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T102XRDB=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T1023,T1023RDB"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
diff --git a/configs/T1024QDS_DDR4_SECURE_BOOT_defconfig b/configs/T1024QDS_DDR4_SECURE_BOOT_defconfig
index db12e4e..94a8792 100644
--- a/configs/T1024QDS_DDR4_SECURE_BOOT_defconfig
+++ b/configs/T1024QDS_DDR4_SECURE_BOOT_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T102XQDS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T1024,SYS_FSL_DDR4,SECURE_BOOT"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_EON=y
 CONFIG_SPI_FLASH_STMICRO=y
diff --git a/configs/T1024QDS_DDR4_defconfig b/configs/T1024QDS_DDR4_defconfig
index 31b9d36..6b93752 100644
--- a/configs/T1024QDS_DDR4_defconfig
+++ b/configs/T1024QDS_DDR4_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T102XQDS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T1024,SYS_FSL_DDR4"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_EON=y
 CONFIG_SPI_FLASH_STMICRO=y
diff --git a/configs/T1024QDS_NAND_defconfig b/configs/T1024QDS_NAND_defconfig
index 351f219..a49e23f 100644
--- a/configs/T1024QDS_NAND_defconfig
+++ b/configs/T1024QDS_NAND_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T102XQDS=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T1024,RAMBOOT_PBL,SPL_FSL_PBL,NAND"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_EON=y
 CONFIG_SPI_FLASH_STMICRO=y
diff --git a/configs/T1024QDS_SDCARD_defconfig b/configs/T1024QDS_SDCARD_defconfig
index 84cefd2..8b31568 100644
--- a/configs/T1024QDS_SDCARD_defconfig
+++ b/configs/T1024QDS_SDCARD_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T102XQDS=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T1024,RAMBOOT_PBL,SPL_FSL_PBL,SDCARD"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_EON=y
 CONFIG_SPI_FLASH_STMICRO=y
diff --git a/configs/T1024QDS_SECURE_BOOT_defconfig b/configs/T1024QDS_SECURE_BOOT_defconfig
index 12a0f4e..44df54b 100644
--- a/configs/T1024QDS_SECURE_BOOT_defconfig
+++ b/configs/T1024QDS_SECURE_BOOT_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T102XQDS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T1024,SECURE_BOOT"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_EON=y
 CONFIG_SPI_FLASH_STMICRO=y
diff --git a/configs/T1024QDS_SPIFLASH_defconfig b/configs/T1024QDS_SPIFLASH_defconfig
index 5539c23..e75718b 100644
--- a/configs/T1024QDS_SPIFLASH_defconfig
+++ b/configs/T1024QDS_SPIFLASH_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T102XQDS=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T1024,RAMBOOT_PBL,SPL_FSL_PBL,SPIFLASH"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_EON=y
 CONFIG_SPI_FLASH_STMICRO=y
diff --git a/configs/T1024QDS_defconfig b/configs/T1024QDS_defconfig
index a55078a..6a41f6c 100644
--- a/configs/T1024QDS_defconfig
+++ b/configs/T1024QDS_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T102XQDS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T1024"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_EON=y
 CONFIG_SPI_FLASH_STMICRO=y
diff --git a/configs/T1024RDB_NAND_defconfig b/configs/T1024RDB_NAND_defconfig
index c3e1255..56a5cdc 100644
--- a/configs/T1024RDB_NAND_defconfig
+++ b/configs/T1024RDB_NAND_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T102XRDB=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T1024,T1024RDB,RAMBOOT_PBL,SPL_FSL_PBL,NAND"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_NETDEVICES=y
diff --git a/configs/T1024RDB_SDCARD_defconfig b/configs/T1024RDB_SDCARD_defconfig
index 1f3006c..56d405f 100644
--- a/configs/T1024RDB_SDCARD_defconfig
+++ b/configs/T1024RDB_SDCARD_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T102XRDB=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T1024,T1024RDB,RAMBOOT_PBL,SPL_FSL_PBL,SDCARD"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_NETDEVICES=y
diff --git a/configs/T1024RDB_SECURE_BOOT_defconfig b/configs/T1024RDB_SECURE_BOOT_defconfig
index 04d0195..7033914 100644
--- a/configs/T1024RDB_SECURE_BOOT_defconfig
+++ b/configs/T1024RDB_SECURE_BOOT_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T102XRDB=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T1024,T1024RDB,SECURE_BOOT"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_NETDEVICES=y
diff --git a/configs/T1024RDB_SPIFLASH_defconfig b/configs/T1024RDB_SPIFLASH_defconfig
index 05e5cbb..2939db3 100644
--- a/configs/T1024RDB_SPIFLASH_defconfig
+++ b/configs/T1024RDB_SPIFLASH_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T102XRDB=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T1024,T1024RDB,RAMBOOT_PBL,SPL_FSL_PBL,SPIFLASH"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_NETDEVICES=y
diff --git a/configs/T1024RDB_defconfig b/configs/T1024RDB_defconfig
index f617fab..840b01f 100644
--- a/configs/T1024RDB_defconfig
+++ b/configs/T1024RDB_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T102XRDB=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T1024,T1024RDB"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_NETDEVICES=y
diff --git a/configs/T1040D4RDB_NAND_defconfig b/configs/T1040D4RDB_NAND_defconfig
index cce44bc..5119a3c 100644
--- a/configs/T1040D4RDB_NAND_defconfig
+++ b/configs/T1040D4RDB_NAND_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T104XRDB=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T1040,T1040D4RDB,RAMBOOT_PBL,SPL_FSL_PBL,NAND,T104XD4RDB,SYS_FSL_DDR4"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_NETDEVICES=y
diff --git a/configs/T1040D4RDB_SDCARD_defconfig b/configs/T1040D4RDB_SDCARD_defconfig
index 1d3a437..f497f71 100644
--- a/configs/T1040D4RDB_SDCARD_defconfig
+++ b/configs/T1040D4RDB_SDCARD_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T104XRDB=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T1040,T1040D4RDB,RAMBOOT_PBL,SPL_FSL_PBL,SDCARD,T104XD4RDB,SYS_FSL_DDR4"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_NETDEVICES=y
diff --git a/configs/T1040D4RDB_SECURE_BOOT_defconfig b/configs/T1040D4RDB_SECURE_BOOT_defconfig
index acff602..d651aaf 100644
--- a/configs/T1040D4RDB_SECURE_BOOT_defconfig
+++ b/configs/T1040D4RDB_SECURE_BOOT_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T104XRDB=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T1040,T1040D4RDB,T104XD4RDB,SYS_FSL_DDR4,SECURE_BOOT"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_NETDEVICES=y
diff --git a/configs/T1040D4RDB_SPIFLASH_defconfig b/configs/T1040D4RDB_SPIFLASH_defconfig
index 7d6d40b..421d555 100644
--- a/configs/T1040D4RDB_SPIFLASH_defconfig
+++ b/configs/T1040D4RDB_SPIFLASH_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T104XRDB=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T1040,T1040D4RDB,RAMBOOT_PBL,SPL_FSL_PBL,SPIFLASH,T104XD4RDB,SYS_FSL_DDR4"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_NETDEVICES=y
diff --git a/configs/T1040D4RDB_defconfig b/configs/T1040D4RDB_defconfig
index 7521073..172193a 100644
--- a/configs/T1040D4RDB_defconfig
+++ b/configs/T1040D4RDB_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T104XRDB=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T1040,T1040D4RDB,T104XD4RDB,SYS_FSL_DDR4"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_NETDEVICES=y
diff --git a/configs/T1040QDS_DDR4_defconfig b/configs/T1040QDS_DDR4_defconfig
index 73faa99..4546c91 100644
--- a/configs/T1040QDS_DDR4_defconfig
+++ b/configs/T1040QDS_DDR4_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T1040QDS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T1040,SYS_FSL_DDR4"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_EON=y
 CONFIG_SPI_FLASH_STMICRO=y
diff --git a/configs/T1040QDS_SECURE_BOOT_defconfig b/configs/T1040QDS_SECURE_BOOT_defconfig
index b763f59..f314fe2 100644
--- a/configs/T1040QDS_SECURE_BOOT_defconfig
+++ b/configs/T1040QDS_SECURE_BOOT_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T1040QDS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T1040,SECURE_BOOT"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_EON=y
 CONFIG_SPI_FLASH_STMICRO=y
diff --git a/configs/T1040QDS_defconfig b/configs/T1040QDS_defconfig
index 7594b2e..a9ad605 100644
--- a/configs/T1040QDS_defconfig
+++ b/configs/T1040QDS_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T1040QDS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T1040"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_EON=y
 CONFIG_SPI_FLASH_STMICRO=y
diff --git a/configs/T1040RDB_NAND_defconfig b/configs/T1040RDB_NAND_defconfig
index 37d6e84..a1092d1 100644
--- a/configs/T1040RDB_NAND_defconfig
+++ b/configs/T1040RDB_NAND_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T104XRDB=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T1040,T1040RDB,RAMBOOT_PBL,SPL_FSL_PBL,NAND"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_NETDEVICES=y
diff --git a/configs/T1040RDB_SDCARD_defconfig b/configs/T1040RDB_SDCARD_defconfig
index 3bc7f82..fe6ccde 100644
--- a/configs/T1040RDB_SDCARD_defconfig
+++ b/configs/T1040RDB_SDCARD_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T104XRDB=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T1040,T1040RDB,RAMBOOT_PBL,SPL_FSL_PBL,SDCARD"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_NETDEVICES=y
diff --git a/configs/T1040RDB_SECURE_BOOT_defconfig b/configs/T1040RDB_SECURE_BOOT_defconfig
index 4a54064..b382cbb 100644
--- a/configs/T1040RDB_SECURE_BOOT_defconfig
+++ b/configs/T1040RDB_SECURE_BOOT_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T104XRDB=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T1040,SECURE_BOOT,T1040RDB"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_NETDEVICES=y
diff --git a/configs/T1040RDB_SPIFLASH_defconfig b/configs/T1040RDB_SPIFLASH_defconfig
index 7013e2e..2ff1428 100644
--- a/configs/T1040RDB_SPIFLASH_defconfig
+++ b/configs/T1040RDB_SPIFLASH_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T104XRDB=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T1040,T1040RDB,RAMBOOT_PBL,SPL_FSL_PBL,SPIFLASH"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_NETDEVICES=y
diff --git a/configs/T1040RDB_defconfig b/configs/T1040RDB_defconfig
index 06f5262..016f85c 100644
--- a/configs/T1040RDB_defconfig
+++ b/configs/T1040RDB_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T104XRDB=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T1040,T1040RDB"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_NETDEVICES=y
diff --git a/configs/T1042D4RDB_NAND_defconfig b/configs/T1042D4RDB_NAND_defconfig
index c95319b..a9b03a8 100644
--- a/configs/T1042D4RDB_NAND_defconfig
+++ b/configs/T1042D4RDB_NAND_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T104XRDB=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T1042,T1042D4RDB,RAMBOOT_PBL,SPL_FSL_PBL,NAND,T104XD4RDB,SYS_FSL_DDR4"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_NETDEVICES=y
diff --git a/configs/T1042D4RDB_SDCARD_defconfig b/configs/T1042D4RDB_SDCARD_defconfig
index 20c30aa..fdd5e3c 100644
--- a/configs/T1042D4RDB_SDCARD_defconfig
+++ b/configs/T1042D4RDB_SDCARD_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T104XRDB=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T1042,T1042D4RDB,RAMBOOT_PBL,SPL_FSL_PBL,SDCARD,T104XD4RDB,SYS_FSL_DDR4"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_NETDEVICES=y
diff --git a/configs/T1042D4RDB_SECURE_BOOT_defconfig b/configs/T1042D4RDB_SECURE_BOOT_defconfig
index 173ed25..8f36281 100644
--- a/configs/T1042D4RDB_SECURE_BOOT_defconfig
+++ b/configs/T1042D4RDB_SECURE_BOOT_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T104XRDB=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T1042,T1042D4RDB,T104XD4RDB,SYS_FSL_DDR4,SECURE_BOOT"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_NETDEVICES=y
diff --git a/configs/T1042D4RDB_SPIFLASH_defconfig b/configs/T1042D4RDB_SPIFLASH_defconfig
index 6aa43c5..9641fb8 100644
--- a/configs/T1042D4RDB_SPIFLASH_defconfig
+++ b/configs/T1042D4RDB_SPIFLASH_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T104XRDB=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T1042,T1042D4RDB,RAMBOOT_PBL,SPL_FSL_PBL,SPIFLASH,T104XD4RDB,SYS_FSL_DDR4"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_NETDEVICES=y
diff --git a/configs/T1042D4RDB_defconfig b/configs/T1042D4RDB_defconfig
index 054e09c..9428c74 100644
--- a/configs/T1042D4RDB_defconfig
+++ b/configs/T1042D4RDB_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T104XRDB=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T1042,T1042D4RDB,T104XD4RDB,SYS_FSL_DDR4"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_NETDEVICES=y
diff --git a/configs/T1042RDB_PI_NAND_defconfig b/configs/T1042RDB_PI_NAND_defconfig
index 0dcc625..e806d31 100644
--- a/configs/T1042RDB_PI_NAND_defconfig
+++ b/configs/T1042RDB_PI_NAND_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T104XRDB=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T1042,T1042RDB_PI,RAMBOOT_PBL,SPL_FSL_PBL,NAND"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_NETDEVICES=y
diff --git a/configs/T1042RDB_PI_SDCARD_defconfig b/configs/T1042RDB_PI_SDCARD_defconfig
index d9a1e58..83a2f78 100644
--- a/configs/T1042RDB_PI_SDCARD_defconfig
+++ b/configs/T1042RDB_PI_SDCARD_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T104XRDB=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T1042,T1042RDB_PI,RAMBOOT_PBL,SPL_FSL_PBL,SDCARD"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_NETDEVICES=y
diff --git a/configs/T1042RDB_PI_SPIFLASH_defconfig b/configs/T1042RDB_PI_SPIFLASH_defconfig
index 5d621d8..b056696 100644
--- a/configs/T1042RDB_PI_SPIFLASH_defconfig
+++ b/configs/T1042RDB_PI_SPIFLASH_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T104XRDB=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T1042,T1042RDB_PI,RAMBOOT_PBL,SPL_FSL_PBL,SPIFLASH"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_NETDEVICES=y
diff --git a/configs/T1042RDB_PI_defconfig b/configs/T1042RDB_PI_defconfig
index 08d7d4c..2256edc 100644
--- a/configs/T1042RDB_PI_defconfig
+++ b/configs/T1042RDB_PI_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T104XRDB=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T1042,T1042RDB_PI"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_NETDEVICES=y
diff --git a/configs/T1042RDB_SECURE_BOOT_defconfig b/configs/T1042RDB_SECURE_BOOT_defconfig
index 3a18869..392e190 100644
--- a/configs/T1042RDB_SECURE_BOOT_defconfig
+++ b/configs/T1042RDB_SECURE_BOOT_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T104XRDB=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T1042,SECURE_BOOT,T1042RDB"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_NETDEVICES=y
diff --git a/configs/T1042RDB_defconfig b/configs/T1042RDB_defconfig
index 45b053e..51d4925 100644
--- a/configs/T1042RDB_defconfig
+++ b/configs/T1042RDB_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T104XRDB=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T1042,T1042RDB"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_NETDEVICES=y
diff --git a/configs/T2080QDS_NAND_defconfig b/configs/T2080QDS_NAND_defconfig
index 35da154..d064ff5 100644
--- a/configs/T2080QDS_NAND_defconfig
+++ b/configs/T2080QDS_NAND_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T208XQDS=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T2080,RAMBOOT_PBL,SPL_FSL_PBL,NAND"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_EON=y
 CONFIG_SPI_FLASH_STMICRO=y
diff --git a/configs/T2080QDS_SDCARD_defconfig b/configs/T2080QDS_SDCARD_defconfig
index c53888b..119e84f 100644
--- a/configs/T2080QDS_SDCARD_defconfig
+++ b/configs/T2080QDS_SDCARD_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T208XQDS=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T2080,RAMBOOT_PBL,SPL_FSL_PBL,SDCARD"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_EON=y
 CONFIG_SPI_FLASH_STMICRO=y
diff --git a/configs/T2080QDS_SECURE_BOOT_defconfig b/configs/T2080QDS_SECURE_BOOT_defconfig
index 7e3c1fa..2233f4b 100644
--- a/configs/T2080QDS_SECURE_BOOT_defconfig
+++ b/configs/T2080QDS_SECURE_BOOT_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T208XQDS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T2080,SECURE_BOOT"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_EON=y
 CONFIG_SPI_FLASH_STMICRO=y
diff --git a/configs/T2080QDS_SPIFLASH_defconfig b/configs/T2080QDS_SPIFLASH_defconfig
index b9ee047..1da13f1 100644
--- a/configs/T2080QDS_SPIFLASH_defconfig
+++ b/configs/T2080QDS_SPIFLASH_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T208XQDS=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T2080,RAMBOOT_PBL,SPL_FSL_PBL,SPIFLASH"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_EON=y
 CONFIG_SPI_FLASH_STMICRO=y
diff --git a/configs/T2080QDS_SRIO_PCIE_BOOT_defconfig b/configs/T2080QDS_SRIO_PCIE_BOOT_defconfig
index 40a304d..04abc4d 100644
--- a/configs/T2080QDS_SRIO_PCIE_BOOT_defconfig
+++ b/configs/T2080QDS_SRIO_PCIE_BOOT_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T208XQDS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T2080,SRIO_PCIE_BOOT_SLAVE,SYS_TEXT_BASE=0xFFF40000"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 CONFIG_SPI_FLASH=y
diff --git a/configs/T2080QDS_defconfig b/configs/T2080QDS_defconfig
index a5aa23b..3980d75 100644
--- a/configs/T2080QDS_defconfig
+++ b/configs/T2080QDS_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T208XQDS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T2080"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_EON=y
 CONFIG_SPI_FLASH_STMICRO=y
diff --git a/configs/T2080RDB_NAND_defconfig b/configs/T2080RDB_NAND_defconfig
index c51e55a..ebb25c9 100644
--- a/configs/T2080RDB_NAND_defconfig
+++ b/configs/T2080RDB_NAND_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T208XRDB=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T2080,RAMBOOT_PBL,SPL_FSL_PBL,NAND"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_NETDEVICES=y
diff --git a/configs/T2080RDB_SDCARD_defconfig b/configs/T2080RDB_SDCARD_defconfig
index 027da86..6ca4095 100644
--- a/configs/T2080RDB_SDCARD_defconfig
+++ b/configs/T2080RDB_SDCARD_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T208XRDB=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T2080,RAMBOOT_PBL,SPL_FSL_PBL,SDCARD"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_NETDEVICES=y
diff --git a/configs/T2080RDB_SECURE_BOOT_defconfig b/configs/T2080RDB_SECURE_BOOT_defconfig
index ed6b3e4..d2dd2f4 100644
--- a/configs/T2080RDB_SECURE_BOOT_defconfig
+++ b/configs/T2080RDB_SECURE_BOOT_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T208XRDB=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T2080,SECURE_BOOT"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_NETDEVICES=y
diff --git a/configs/T2080RDB_SPIFLASH_defconfig b/configs/T2080RDB_SPIFLASH_defconfig
index b916425..f7bacb3 100644
--- a/configs/T2080RDB_SPIFLASH_defconfig
+++ b/configs/T2080RDB_SPIFLASH_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T208XRDB=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T2080,RAMBOOT_PBL,SPL_FSL_PBL,SPIFLASH"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_NETDEVICES=y
diff --git a/configs/T2080RDB_SRIO_PCIE_BOOT_defconfig b/configs/T2080RDB_SRIO_PCIE_BOOT_defconfig
index fe7a259..5428d76 100644
--- a/configs/T2080RDB_SRIO_PCIE_BOOT_defconfig
+++ b/configs/T2080RDB_SRIO_PCIE_BOOT_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T208XRDB=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T2080,SRIO_PCIE_BOOT_SLAVE,SYS_TEXT_BASE=0xFFF40000"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 CONFIG_SPI_FLASH=y
diff --git a/configs/T2080RDB_defconfig b/configs/T2080RDB_defconfig
index 155999f..225e166 100644
--- a/configs/T2080RDB_defconfig
+++ b/configs/T2080RDB_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T208XRDB=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T2080"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_NETDEVICES=y
diff --git a/configs/T2081QDS_NAND_defconfig b/configs/T2081QDS_NAND_defconfig
index 0621a19..1c3c3e4 100644
--- a/configs/T2081QDS_NAND_defconfig
+++ b/configs/T2081QDS_NAND_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T208XQDS=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T2081,RAMBOOT_PBL,SPL_FSL_PBL,NAND"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_EON=y
 CONFIG_SPI_FLASH_STMICRO=y
diff --git a/configs/T2081QDS_SDCARD_defconfig b/configs/T2081QDS_SDCARD_defconfig
index f864b49..3cd2535 100644
--- a/configs/T2081QDS_SDCARD_defconfig
+++ b/configs/T2081QDS_SDCARD_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T208XQDS=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T2081,RAMBOOT_PBL,SPL_FSL_PBL,SDCARD"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_EON=y
 CONFIG_SPI_FLASH_STMICRO=y
diff --git a/configs/T2081QDS_SPIFLASH_defconfig b/configs/T2081QDS_SPIFLASH_defconfig
index b44fd5f..73d650e 100644
--- a/configs/T2081QDS_SPIFLASH_defconfig
+++ b/configs/T2081QDS_SPIFLASH_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T208XQDS=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T2081,RAMBOOT_PBL,SPL_FSL_PBL,SPIFLASH"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_EON=y
 CONFIG_SPI_FLASH_STMICRO=y
diff --git a/configs/T2081QDS_SRIO_PCIE_BOOT_defconfig b/configs/T2081QDS_SRIO_PCIE_BOOT_defconfig
index 83ab6f0..44adef7 100644
--- a/configs/T2081QDS_SRIO_PCIE_BOOT_defconfig
+++ b/configs/T2081QDS_SRIO_PCIE_BOOT_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T208XQDS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T2081,SRIO_PCIE_BOOT_SLAVE,SYS_TEXT_BASE=0xFFF40000"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 CONFIG_SPI_FLASH=y
diff --git a/configs/T2081QDS_defconfig b/configs/T2081QDS_defconfig
index d795639..1c889f1 100644
--- a/configs/T2081QDS_defconfig
+++ b/configs/T2081QDS_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T208XQDS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T2081"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_EON=y
 CONFIG_SPI_FLASH_STMICRO=y
diff --git a/configs/T4160QDS_NAND_defconfig b/configs/T4160QDS_NAND_defconfig
index 43236e7..3823527 100644
--- a/configs/T4160QDS_NAND_defconfig
+++ b/configs/T4160QDS_NAND_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T4240QDS=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T4160,RAMBOOT_PBL,SPL_FSL_PBL,NAND"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SST=y
 CONFIG_NETDEVICES=y
diff --git a/configs/T4160QDS_SDCARD_defconfig b/configs/T4160QDS_SDCARD_defconfig
index 6144b3b..b3b00bb 100644
--- a/configs/T4160QDS_SDCARD_defconfig
+++ b/configs/T4160QDS_SDCARD_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T4240QDS=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T4160,RAMBOOT_PBL,SPL_FSL_PBL,SDCARD"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SST=y
 CONFIG_NETDEVICES=y
diff --git a/configs/T4160QDS_SECURE_BOOT_defconfig b/configs/T4160QDS_SECURE_BOOT_defconfig
index 68a89cb..89184da 100644
--- a/configs/T4160QDS_SECURE_BOOT_defconfig
+++ b/configs/T4160QDS_SECURE_BOOT_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T4240QDS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T4160,SECURE_BOOT"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SST=y
 CONFIG_NETDEVICES=y
diff --git a/configs/T4160QDS_defconfig b/configs/T4160QDS_defconfig
index 1180aad..0d2a137 100644
--- a/configs/T4160QDS_defconfig
+++ b/configs/T4160QDS_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T4240QDS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T4160"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SST=y
 CONFIG_NETDEVICES=y
diff --git a/configs/T4160RDB_defconfig b/configs/T4160RDB_defconfig
index d69c4be..b976b49 100644
--- a/configs/T4160RDB_defconfig
+++ b/configs/T4160RDB_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T4240RDB=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T4160"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SST=y
 CONFIG_NETDEVICES=y
diff --git a/configs/T4240QDS_NAND_defconfig b/configs/T4240QDS_NAND_defconfig
index 63a3c6c..bfc8a85 100644
--- a/configs/T4240QDS_NAND_defconfig
+++ b/configs/T4240QDS_NAND_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T4240QDS=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T4240,RAMBOOT_PBL,SPL_FSL_PBL,NAND"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SST=y
 CONFIG_NETDEVICES=y
diff --git a/configs/T4240QDS_SDCARD_defconfig b/configs/T4240QDS_SDCARD_defconfig
index e085802..8f679cc 100644
--- a/configs/T4240QDS_SDCARD_defconfig
+++ b/configs/T4240QDS_SDCARD_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T4240QDS=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T4240,RAMBOOT_PBL,SPL_FSL_PBL,SDCARD"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SST=y
 CONFIG_NETDEVICES=y
diff --git a/configs/T4240QDS_SECURE_BOOT_defconfig b/configs/T4240QDS_SECURE_BOOT_defconfig
index a0eb595..6d8793f 100644
--- a/configs/T4240QDS_SECURE_BOOT_defconfig
+++ b/configs/T4240QDS_SECURE_BOOT_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T4240QDS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T4240,SECURE_BOOT"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SST=y
 CONFIG_NETDEVICES=y
diff --git a/configs/T4240QDS_SRIO_PCIE_BOOT_defconfig b/configs/T4240QDS_SRIO_PCIE_BOOT_defconfig
index f5e246d..e24ac6a 100644
--- a/configs/T4240QDS_SRIO_PCIE_BOOT_defconfig
+++ b/configs/T4240QDS_SRIO_PCIE_BOOT_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T4240QDS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T4240,SRIO_PCIE_BOOT_SLAVE,SYS_TEXT_BASE=0xFFF40000"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 CONFIG_SPI_FLASH=y
diff --git a/configs/T4240QDS_defconfig b/configs/T4240QDS_defconfig
index c00e5a3..c10b2e4 100644
--- a/configs/T4240QDS_defconfig
+++ b/configs/T4240QDS_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T4240QDS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T4240"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SST=y
 CONFIG_NETDEVICES=y
diff --git a/configs/T4240RDB_SDCARD_defconfig b/configs/T4240RDB_SDCARD_defconfig
index 0249f8a..452f02a 100644
--- a/configs/T4240RDB_SDCARD_defconfig
+++ b/configs/T4240RDB_SDCARD_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T4240RDB=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T4240,RAMBOOT_PBL,SPL_FSL_PBL,SDCARD"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SST=y
 CONFIG_NETDEVICES=y
diff --git a/configs/T4240RDB_defconfig b/configs/T4240RDB_defconfig
index fb8f08a..6559eed 100644
--- a/configs/T4240RDB_defconfig
+++ b/configs/T4240RDB_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T4240RDB=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="PPC_T4240"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SST=y
 CONFIG_NETDEVICES=y
diff --git a/configs/TQM5200S_HIGHBOOT_defconfig b/configs/TQM5200S_HIGHBOOT_defconfig
index 544c2ff..fa15922 100644
--- a/configs/TQM5200S_HIGHBOOT_defconfig
+++ b/configs/TQM5200S_HIGHBOOT_defconfig
@@ -2,5 +2,6 @@ CONFIG_PPC=y
 CONFIG_MPC5xxx=y
 CONFIG_TARGET_TQM5200=y
 CONFIG_SYS_EXTRA_OPTIONS="TQM5200_B,TQM5200S,SYS_TEXT_BASE=0xFFF00000"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_OF_LIBFDT=y
diff --git a/configs/TQM5200S_defconfig b/configs/TQM5200S_defconfig
index 617b94e..207253e 100644
--- a/configs/TQM5200S_defconfig
+++ b/configs/TQM5200S_defconfig
@@ -2,5 +2,6 @@ CONFIG_PPC=y
 CONFIG_MPC5xxx=y
 CONFIG_TARGET_TQM5200=y
 CONFIG_SYS_EXTRA_OPTIONS="TQM5200_B,TQM5200S"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_OF_LIBFDT=y
diff --git a/configs/TQM5200_B_HIGHBOOT_defconfig b/configs/TQM5200_B_HIGHBOOT_defconfig
index 2f31085..b7ecbb1 100644
--- a/configs/TQM5200_B_HIGHBOOT_defconfig
+++ b/configs/TQM5200_B_HIGHBOOT_defconfig
@@ -2,5 +2,6 @@ CONFIG_PPC=y
 CONFIG_MPC5xxx=y
 CONFIG_TARGET_TQM5200=y
 CONFIG_SYS_EXTRA_OPTIONS="TQM5200_B,SYS_TEXT_BASE=0xFFF00000"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_OF_LIBFDT=y
diff --git a/configs/TQM5200_B_defconfig b/configs/TQM5200_B_defconfig
index 15eeaaf..a306274 100644
--- a/configs/TQM5200_B_defconfig
+++ b/configs/TQM5200_B_defconfig
@@ -2,5 +2,6 @@ CONFIG_PPC=y
 CONFIG_MPC5xxx=y
 CONFIG_TARGET_TQM5200=y
 CONFIG_SYS_EXTRA_OPTIONS="TQM5200_B"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_OF_LIBFDT=y
diff --git a/configs/TQM5200_STK100_defconfig b/configs/TQM5200_STK100_defconfig
index 91e87d5..6c75458 100644
--- a/configs/TQM5200_STK100_defconfig
+++ b/configs/TQM5200_STK100_defconfig
@@ -2,5 +2,6 @@ CONFIG_PPC=y
 CONFIG_MPC5xxx=y
 CONFIG_TARGET_TQM5200=y
 CONFIG_SYS_EXTRA_OPTIONS="STK52XX_REV100"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_OF_LIBFDT=y
diff --git a/configs/TQM5200_defconfig b/configs/TQM5200_defconfig
index 922f725..7803ea1 100644
--- a/configs/TQM5200_defconfig
+++ b/configs/TQM5200_defconfig
@@ -1,5 +1,6 @@
 CONFIG_PPC=y
 CONFIG_MPC5xxx=y
 CONFIG_TARGET_TQM5200=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_OF_LIBFDT=y
diff --git a/configs/TQM823L_LCD_defconfig b/configs/TQM823L_LCD_defconfig
index 9a697c0..287e641 100644
--- a/configs/TQM823L_LCD_defconfig
+++ b/configs/TQM823L_LCD_defconfig
@@ -2,5 +2,6 @@ CONFIG_PPC=y
 CONFIG_8xx=y
 CONFIG_TARGET_TQM823L=y
 CONFIG_SYS_EXTRA_OPTIONS="LCD,NEC_NL6448BC20"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_OF_LIBFDT=y
diff --git a/configs/TQM823L_defconfig b/configs/TQM823L_defconfig
index 1219118..08d1af6 100644
--- a/configs/TQM823L_defconfig
+++ b/configs/TQM823L_defconfig
@@ -1,5 +1,6 @@
 CONFIG_PPC=y
 CONFIG_8xx=y
 CONFIG_TARGET_TQM823L=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_OF_LIBFDT=y
diff --git a/configs/TQM823M_defconfig b/configs/TQM823M_defconfig
index 10ef9f0..666a339 100644
--- a/configs/TQM823M_defconfig
+++ b/configs/TQM823M_defconfig
@@ -1,5 +1,6 @@
 CONFIG_PPC=y
 CONFIG_8xx=y
 CONFIG_TARGET_TQM823M=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_OF_LIBFDT=y
diff --git a/configs/TQM834x_defconfig b/configs/TQM834x_defconfig
index d77baed..a5ae527 100644
--- a/configs/TQM834x_defconfig
+++ b/configs/TQM834x_defconfig
@@ -1,6 +1,7 @@
 CONFIG_PPC=y
 CONFIG_MPC83xx=y
 CONFIG_TARGET_TQM834X=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/TQM850L_defconfig b/configs/TQM850L_defconfig
index 0134391..2d78e79 100644
--- a/configs/TQM850L_defconfig
+++ b/configs/TQM850L_defconfig
@@ -1,5 +1,6 @@
 CONFIG_PPC=y
 CONFIG_8xx=y
 CONFIG_TARGET_TQM850L=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_OF_LIBFDT=y
diff --git a/configs/TQM850M_defconfig b/configs/TQM850M_defconfig
index f0a62c3..4c66cc1 100644
--- a/configs/TQM850M_defconfig
+++ b/configs/TQM850M_defconfig
@@ -1,5 +1,6 @@
 CONFIG_PPC=y
 CONFIG_8xx=y
 CONFIG_TARGET_TQM850M=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_OF_LIBFDT=y
diff --git a/configs/TQM855L_defconfig b/configs/TQM855L_defconfig
index a7aacaf..6bebf60 100644
--- a/configs/TQM855L_defconfig
+++ b/configs/TQM855L_defconfig
@@ -1,5 +1,6 @@
 CONFIG_PPC=y
 CONFIG_8xx=y
 CONFIG_TARGET_TQM855L=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_OF_LIBFDT=y
diff --git a/configs/TQM855M_defconfig b/configs/TQM855M_defconfig
index 59feaba..e600cd0 100644
--- a/configs/TQM855M_defconfig
+++ b/configs/TQM855M_defconfig
@@ -1,5 +1,6 @@
 CONFIG_PPC=y
 CONFIG_8xx=y
 CONFIG_TARGET_TQM855M=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_OF_LIBFDT=y
diff --git a/configs/TQM860L_defconfig b/configs/TQM860L_defconfig
index afb0b134..2295e42 100644
--- a/configs/TQM860L_defconfig
+++ b/configs/TQM860L_defconfig
@@ -1,5 +1,6 @@
 CONFIG_PPC=y
 CONFIG_8xx=y
 CONFIG_TARGET_TQM860L=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_OF_LIBFDT=y
diff --git a/configs/TQM860M_defconfig b/configs/TQM860M_defconfig
index e20e3c0..81e5fbf 100644
--- a/configs/TQM860M_defconfig
+++ b/configs/TQM860M_defconfig
@@ -1,5 +1,6 @@
 CONFIG_PPC=y
 CONFIG_8xx=y
 CONFIG_TARGET_TQM860M=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_OF_LIBFDT=y
diff --git a/configs/TQM862L_defconfig b/configs/TQM862L_defconfig
index 9274ebb..41dd2fd 100644
--- a/configs/TQM862L_defconfig
+++ b/configs/TQM862L_defconfig
@@ -1,5 +1,6 @@
 CONFIG_PPC=y
 CONFIG_8xx=y
 CONFIG_TARGET_TQM862L=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_OF_LIBFDT=y
diff --git a/configs/TQM862M_defconfig b/configs/TQM862M_defconfig
index 37af0d9..9915cc9 100644
--- a/configs/TQM862M_defconfig
+++ b/configs/TQM862M_defconfig
@@ -1,5 +1,6 @@
 CONFIG_PPC=y
 CONFIG_8xx=y
 CONFIG_TARGET_TQM862M=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_OF_LIBFDT=y
diff --git a/configs/TQM866M_defconfig b/configs/TQM866M_defconfig
index 58b5737..ef1f78c 100644
--- a/configs/TQM866M_defconfig
+++ b/configs/TQM866M_defconfig
@@ -1,5 +1,6 @@
 CONFIG_PPC=y
 CONFIG_8xx=y
 CONFIG_TARGET_TQM866M=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_OF_LIBFDT=y
diff --git a/configs/TQM885D_defconfig b/configs/TQM885D_defconfig
index 046e2fe..7fbdd86 100644
--- a/configs/TQM885D_defconfig
+++ b/configs/TQM885D_defconfig
@@ -1,5 +1,6 @@
 CONFIG_PPC=y
 CONFIG_8xx=y
 CONFIG_TARGET_TQM885D=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_OF_LIBFDT=y
diff --git a/configs/TTTech_defconfig b/configs/TTTech_defconfig
index b41a919..c0ac758 100644
--- a/configs/TTTech_defconfig
+++ b/configs/TTTech_defconfig
@@ -2,5 +2,6 @@ CONFIG_PPC=y
 CONFIG_8xx=y
 CONFIG_TARGET_TQM823L=y
 CONFIG_SYS_EXTRA_OPTIONS="LCD,SHARP_LQ104V7DS01"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_OF_LIBFDT=y
diff --git a/configs/TWR-P1025_defconfig b/configs/TWR-P1025_defconfig
index ededa1b..a2ffbd0 100644
--- a/configs/TWR-P1025_defconfig
+++ b/configs/TWR-P1025_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1_TWR=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="TWR_P1025"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
diff --git a/configs/UCP1020_SPIFLASH_defconfig b/configs/UCP1020_SPIFLASH_defconfig
index 02976be..1013779 100644
--- a/configs/UCP1020_SPIFLASH_defconfig
+++ b/configs/UCP1020_SPIFLASH_defconfig
@@ -2,6 +2,8 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_UCP1020=y
 CONFIG_TARGET_UCP1020_SPIFLASH=y
+CONFIG_FIT=y
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_AUTOBOOT_KEYED=y
 CONFIG_AUTOBOOT_PROMPT="Autobooting in %d seconds, press \"<Esc>\" to stop\n"
 CONFIG_AUTOBOOT_STOP_STR="\x1b"
diff --git a/configs/UCP1020_defconfig b/configs/UCP1020_defconfig
index 4baea4f..3a7d8c0 100644
--- a/configs/UCP1020_defconfig
+++ b/configs/UCP1020_defconfig
@@ -1,6 +1,8 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_UCP1020=y
+CONFIG_FIT=y
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SYS_PROMPT="B$ "
 CONFIG_AUTOBOOT_KEYED=y
 CONFIG_AUTOBOOT_PROMPT="Autobooting in %d seconds, press \"<Esc>\" to stop\n"
diff --git a/configs/UTOO_P66_defconfig b/configs/UTOO_P66_defconfig
index dc71dde..46e697a 100644
--- a/configs/UTOO_P66_defconfig
+++ b/configs/UTOO_P66_defconfig
@@ -20,6 +20,7 @@ CONFIG_VIDEO_LCD_TL059WV5C0=y
 CONFIG_DEFAULT_DEVICE_TREE="sun5i-a13-utoo-p66"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/VOM405_defconfig b/configs/VOM405_defconfig
index b368e76..045fb78 100644
--- a/configs/VOM405_defconfig
+++ b/configs/VOM405_defconfig
@@ -1,6 +1,7 @@
 CONFIG_PPC=y
 CONFIG_4xx=y
 CONFIG_TARGET_VOM405=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/Wexler_TAB7200_defconfig b/configs/Wexler_TAB7200_defconfig
index a01b4c1..ce1e1fd 100644
--- a/configs/Wexler_TAB7200_defconfig
+++ b/configs/Wexler_TAB7200_defconfig
@@ -13,6 +13,7 @@ CONFIG_VIDEO_LCD_BL_PWM="PB2"
 CONFIG_DEFAULT_DEVICE_TREE="sun7i-a20-wexler-tab7200"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/Wits_Pro_A20_DKT_defconfig b/configs/Wits_Pro_A20_DKT_defconfig
index c3ceedb..eb1ba57 100644
--- a/configs/Wits_Pro_A20_DKT_defconfig
+++ b/configs/Wits_Pro_A20_DKT_defconfig
@@ -12,6 +12,7 @@ CONFIG_DEFAULT_DEVICE_TREE="sun7i-a20-wits-pro-a20-dkt"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC,RGMII,AHCI"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/Wobo_i5_defconfig b/configs/Wobo_i5_defconfig
index eb1b531..7cc9051 100644
--- a/configs/Wobo_i5_defconfig
+++ b/configs/Wobo_i5_defconfig
@@ -7,6 +7,7 @@ CONFIG_USB1_VBUS_PIN="PG12"
 CONFIG_DEFAULT_DEVICE_TREE="sun5i-a10s-wobo-i5"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/Yones_Toptech_BD1078_defconfig b/configs/Yones_Toptech_BD1078_defconfig
index cdde2bc..2e11f7c 100644
--- a/configs/Yones_Toptech_BD1078_defconfig
+++ b/configs/Yones_Toptech_BD1078_defconfig
@@ -19,6 +19,7 @@ CONFIG_VIDEO_LCD_PANEL_LVDS=y
 CONFIG_DEFAULT_DEVICE_TREE="sun7i-a20-yones-toptech-bd1078"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/a3m071_defconfig b/configs/a3m071_defconfig
index 6707e61..0662d40 100644
--- a/configs/a3m071_defconfig
+++ b/configs/a3m071_defconfig
@@ -2,6 +2,8 @@ CONFIG_PPC=y
 CONFIG_MPC5xxx=y
 CONFIG_TARGET_A3M071=y
 CONFIG_SPL=y
+CONFIG_FIT=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_LIB_RAND=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/a4m072_defconfig b/configs/a4m072_defconfig
index 379b0db..bbc140d 100644
--- a/configs/a4m072_defconfig
+++ b/configs/a4m072_defconfig
@@ -1,6 +1,7 @@
 CONFIG_PPC=y
 CONFIG_MPC5xxx=y
 CONFIG_TARGET_A4M072=y
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_AUTOBOOT_KEYED=y
 CONFIG_AUTOBOOT_PROMPT="autoboot in %d seconds\n"
 CONFIG_AUTOBOOT_DELAY_STR="asdfg"
diff --git a/configs/a4m2k_defconfig b/configs/a4m2k_defconfig
index 5d52092..62ef24c 100644
--- a/configs/a4m2k_defconfig
+++ b/configs/a4m2k_defconfig
@@ -2,7 +2,9 @@ CONFIG_PPC=y
 CONFIG_MPC5xxx=y
 CONFIG_TARGET_A3M071=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="A4M2K"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_LIB_RAND=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/ac14xx_defconfig b/configs/ac14xx_defconfig
index 21cb0b8..3d74576 100644
--- a/configs/ac14xx_defconfig
+++ b/configs/ac14xx_defconfig
@@ -1,6 +1,8 @@
 CONFIG_PPC=y
 CONFIG_MPC512X=y
 CONFIG_TARGET_AC14XX=y
+CONFIG_FIT=y
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SYS_PROMPT="ac14xx> "
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_OF_LIBFDT=y
diff --git a/configs/acadia_defconfig b/configs/acadia_defconfig
index 07c8668..6434f4b 100644
--- a/configs/acadia_defconfig
+++ b/configs/acadia_defconfig
@@ -1,5 +1,6 @@
 CONFIG_PPC=y
 CONFIG_4xx=y
 CONFIG_TARGET_ACADIA=y
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/am335x_baltos_defconfig b/configs/am335x_baltos_defconfig
index 200e375..21ac1dd 100644
--- a/configs/am335x_baltos_defconfig
+++ b/configs/am335x_baltos_defconfig
@@ -6,6 +6,7 @@ CONFIG_SPL_STACK_R=y
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
 CONFIG_SYS_EXTRA_OPTIONS="NAND"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 CONFIG_CMD_GPIO=y
diff --git a/configs/am335x_boneblack_defconfig b/configs/am335x_boneblack_defconfig
index 40da085..4ba2579 100644
--- a/configs/am335x_boneblack_defconfig
+++ b/configs/am335x_boneblack_defconfig
@@ -3,6 +3,7 @@ CONFIG_TARGET_AM335X_EVM=y
 CONFIG_SPL_STACK_R_ADDR=0x82000000
 CONFIG_SPL=y
 CONFIG_SPL_STACK_R=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="EMMC_BOOT"
 CONFIG_AUTOBOOT_KEYED=y
 CONFIG_AUTOBOOT_PROMPT="Press SPACE to abort autoboot in %d seconds\n"
diff --git a/configs/am335x_evm_defconfig b/configs/am335x_evm_defconfig
index bc1e8d9..836950c 100644
--- a/configs/am335x_evm_defconfig
+++ b/configs/am335x_evm_defconfig
@@ -3,6 +3,7 @@ CONFIG_TARGET_AM335X_EVM=y
 CONFIG_SPL_STACK_R_ADDR=0x82000000
 CONFIG_SPL=y
 CONFIG_SPL_STACK_R=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="NAND"
 CONFIG_AUTOBOOT_KEYED=y
 CONFIG_AUTOBOOT_PROMPT="Press SPACE to abort autoboot in %d seconds\n"
diff --git a/configs/am335x_evm_nor_defconfig b/configs/am335x_evm_nor_defconfig
index cdf13ed..f336dfd 100644
--- a/configs/am335x_evm_nor_defconfig
+++ b/configs/am335x_evm_nor_defconfig
@@ -4,6 +4,7 @@ CONFIG_SPL_STACK_R_ADDR=0x82000000
 CONFIG_NOR=y
 CONFIG_SPL=y
 CONFIG_SPL_STACK_R=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="NAND"
 # CONFIG_CMD_IMLS is not set
 CONFIG_CMD_GPIO=y
diff --git a/configs/am335x_evm_norboot_defconfig b/configs/am335x_evm_norboot_defconfig
index b1ab2f3..707014b 100644
--- a/configs/am335x_evm_norboot_defconfig
+++ b/configs/am335x_evm_norboot_defconfig
@@ -2,6 +2,7 @@ CONFIG_ARM=y
 CONFIG_TARGET_AM335X_EVM=y
 CONFIG_NOR=y
 CONFIG_NOR_BOOT=y
+CONFIG_FIT=y
 # CONFIG_CMD_IMLS is not set
 CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
diff --git a/configs/am335x_evm_spiboot_defconfig b/configs/am335x_evm_spiboot_defconfig
index e360643..665dad3 100644
--- a/configs/am335x_evm_spiboot_defconfig
+++ b/configs/am335x_evm_spiboot_defconfig
@@ -3,6 +3,7 @@ CONFIG_TARGET_AM335X_EVM=y
 CONFIG_SPL_STACK_R_ADDR=0x82000000
 CONFIG_SPL=y
 CONFIG_SPL_STACK_R=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="SPI_BOOT"
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
diff --git a/configs/am335x_evm_usbspl_defconfig b/configs/am335x_evm_usbspl_defconfig
index 806e3dc..17370bb 100644
--- a/configs/am335x_evm_usbspl_defconfig
+++ b/configs/am335x_evm_usbspl_defconfig
@@ -3,6 +3,7 @@ CONFIG_TARGET_AM335X_EVM=y
 CONFIG_SPL_STACK_R_ADDR=0x82000000
 CONFIG_SPL=y
 CONFIG_SPL_STACK_R=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="NAND,SPL_USBETH_SUPPORT"
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
diff --git a/configs/am335x_gp_evm_defconfig b/configs/am335x_gp_evm_defconfig
index 2ebc3cb..7f12972 100644
--- a/configs/am335x_gp_evm_defconfig
+++ b/configs/am335x_gp_evm_defconfig
@@ -4,6 +4,7 @@ CONFIG_SPL_STACK_R_ADDR=0x82000000
 CONFIG_DEFAULT_DEVICE_TREE="am335x-evm"
 CONFIG_SPL=y
 CONFIG_SPL_STACK_R=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="NAND"
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
diff --git a/configs/am335x_sl50_defconfig b/configs/am335x_sl50_defconfig
index 220dd23..0b6c11f 100644
--- a/configs/am335x_sl50_defconfig
+++ b/configs/am335x_sl50_defconfig
@@ -3,6 +3,7 @@ CONFIG_TARGET_AM335X_SL50=y
 CONFIG_SPL_STACK_R_ADDR=0x82000000
 CONFIG_SPL=y
 CONFIG_SPL_STACK_R=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="EMMC_BOOT"
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
diff --git a/configs/apalis_t30_defconfig b/configs/apalis_t30_defconfig
index 4c363c7..b370d6c 100644
--- a/configs/apalis_t30_defconfig
+++ b/configs/apalis_t30_defconfig
@@ -4,6 +4,7 @@ CONFIG_SPL_DM=y
 CONFIG_TEGRA30=y
 CONFIG_TARGET_APALIS_T30=y
 CONFIG_DEFAULT_DEVICE_TREE="tegra30-apalis"
+CONFIG_OF_SYSTEM_SETUP=y
 CONFIG_SYS_PROMPT="Apalis T30 # "
 # CONFIG_CMD_IMI is not set
 # CONFIG_CMD_IMLS is not set
diff --git a/configs/arches_defconfig b/configs/arches_defconfig
index 245e6fa..9a2cf6d 100644
--- a/configs/arches_defconfig
+++ b/configs/arches_defconfig
@@ -3,5 +3,6 @@ CONFIG_4xx=y
 CONFIG_TARGET_CANYONLANDS=y
 CONFIG_ARCHES=y
 CONFIG_DEFAULT_DEVICE_TREE="arches"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_OF_CONTROL=y
 CONFIG_SYS_NS16550=y
diff --git a/configs/aria_defconfig b/configs/aria_defconfig
index 24541f4..5848709 100644
--- a/configs/aria_defconfig
+++ b/configs/aria_defconfig
@@ -1,5 +1,6 @@
 CONFIG_PPC=y
 CONFIG_MPC512X=y
 CONFIG_TARGET_ARIA=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_OF_LIBFDT=y
diff --git a/configs/aristainetos2_defconfig b/configs/aristainetos2_defconfig
index de55ea8..7e2c026 100644
--- a/configs/aristainetos2_defconfig
+++ b/configs/aristainetos2_defconfig
@@ -1,6 +1,7 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
 CONFIG_TARGET_ARISTAINETOS2=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/aristainetos/aristainetos2.cfg,MX6DL"
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
diff --git a/configs/aristainetos2b_defconfig b/configs/aristainetos2b_defconfig
index f790403..88670df 100644
--- a/configs/aristainetos2b_defconfig
+++ b/configs/aristainetos2b_defconfig
@@ -1,6 +1,7 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
 CONFIG_TARGET_ARISTAINETOS2B=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/aristainetos/aristainetos2.cfg,MX6DL"
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
diff --git a/configs/aristainetos_defconfig b/configs/aristainetos_defconfig
index 0bd93d4..e808c21 100644
--- a/configs/aristainetos_defconfig
+++ b/configs/aristainetos_defconfig
@@ -1,6 +1,7 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
 CONFIG_TARGET_ARISTAINETOS=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/aristainetos/aristainetos.cfg,MX6DL"
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
diff --git a/configs/arndale_defconfig b/configs/arndale_defconfig
index ee47a3d..88cb81d 100644
--- a/configs/arndale_defconfig
+++ b/configs/arndale_defconfig
@@ -4,6 +4,7 @@ CONFIG_TARGET_ARNDALE=y
 CONFIG_DM_I2C=y
 CONFIG_DEFAULT_DEVICE_TREE="exynos5250-arndale"
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_PROMPT="ARNDALE # "
 # CONFIG_CMD_IMLS is not set
 CONFIG_CMD_GPIO=y
diff --git a/configs/ba10_tv_box_defconfig b/configs/ba10_tv_box_defconfig
index ce4a584..dca9e46 100644
--- a/configs/ba10_tv_box_defconfig
+++ b/configs/ba10_tv_box_defconfig
@@ -10,6 +10,7 @@ CONFIG_DEFAULT_DEVICE_TREE="sun4i-a10-ba10-tvbox"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="SUNXI_EMAC"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/bamboo_defconfig b/configs/bamboo_defconfig
index 6b510e1..a5491cf 100644
--- a/configs/bamboo_defconfig
+++ b/configs/bamboo_defconfig
@@ -1,5 +1,6 @@
 CONFIG_PPC=y
 CONFIG_4xx=y
 CONFIG_TARGET_BAMBOO=y
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/bayleybay_defconfig b/configs/bayleybay_defconfig
index 4f0c41f..16c8670 100644
--- a/configs/bayleybay_defconfig
+++ b/configs/bayleybay_defconfig
@@ -9,6 +9,7 @@ CONFIG_HAVE_VGA_BIOS=y
 CONFIG_VGA_BIOS_ADDR=0xfffa0000
 CONFIG_GENERATE_PIRQ_TABLE=y
 CONFIG_GENERATE_MP_TABLE=y
+CONFIG_FIT=y
 CONFIG_BOOTSTAGE=y
 CONFIG_BOOTSTAGE_REPORT=y
 CONFIG_CMD_CPU=y
diff --git a/configs/beaver_defconfig b/configs/beaver_defconfig
index 8add08d..fcfbf65 100644
--- a/configs/beaver_defconfig
+++ b/configs/beaver_defconfig
@@ -4,6 +4,7 @@ CONFIG_SPL_DM=y
 CONFIG_TEGRA30=y
 CONFIG_TARGET_BEAVER=y
 CONFIG_DEFAULT_DEVICE_TREE="tegra30-beaver"
+CONFIG_OF_SYSTEM_SETUP=y
 CONFIG_SYS_PROMPT="Tegra30 (Beaver) # "
 # CONFIG_CMD_IMI is not set
 # CONFIG_CMD_IMLS is not set
diff --git a/configs/birdland_bav335a_defconfig b/configs/birdland_bav335a_defconfig
index 7ffa870..6d7c20d 100644
--- a/configs/birdland_bav335a_defconfig
+++ b/configs/birdland_bav335a_defconfig
@@ -2,6 +2,7 @@ CONFIG_ARM=y
 CONFIG_TARGET_BAV335X=y
 CONFIG_BAV_VERSION=1
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="SERIAL1,CONS_INDEX=1"
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
diff --git a/configs/birdland_bav335b_defconfig b/configs/birdland_bav335b_defconfig
index 03b91a3..910ddc7 100644
--- a/configs/birdland_bav335b_defconfig
+++ b/configs/birdland_bav335b_defconfig
@@ -2,6 +2,7 @@ CONFIG_ARM=y
 CONFIG_TARGET_BAV335X=y
 CONFIG_BAV_VERSION=2
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="SERIAL1,CONS_INDEX=1"
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
diff --git a/configs/bubinga_defconfig b/configs/bubinga_defconfig
index ac94dca..5316aa2 100644
--- a/configs/bubinga_defconfig
+++ b/configs/bubinga_defconfig
@@ -1,5 +1,6 @@
 CONFIG_PPC=y
 CONFIG_4xx=y
 CONFIG_TARGET_BUBINGA=y
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/caddy2_defconfig b/configs/caddy2_defconfig
index 2d2b70b..ef43138 100644
--- a/configs/caddy2_defconfig
+++ b/configs/caddy2_defconfig
@@ -2,6 +2,7 @@ CONFIG_PPC=y
 CONFIG_MPC83xx=y
 CONFIG_TARGET_VME8349=y
 CONFIG_SYS_EXTRA_OPTIONS="CADDY2"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
diff --git a/configs/cam5200_defconfig b/configs/cam5200_defconfig
index 77fbeb2..7fbed47 100644
--- a/configs/cam5200_defconfig
+++ b/configs/cam5200_defconfig
@@ -2,5 +2,6 @@ CONFIG_PPC=y
 CONFIG_MPC5xxx=y
 CONFIG_TARGET_TQM5200=y
 CONFIG_SYS_EXTRA_OPTIONS="CAM5200,TQM5200S,TQM5200_B"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_OF_LIBFDT=y
diff --git a/configs/cam5200_niosflash_defconfig b/configs/cam5200_niosflash_defconfig
index f962195..8642849 100644
--- a/configs/cam5200_niosflash_defconfig
+++ b/configs/cam5200_niosflash_defconfig
@@ -2,5 +2,6 @@ CONFIG_PPC=y
 CONFIG_MPC5xxx=y
 CONFIG_TARGET_TQM5200=y
 CONFIG_SYS_EXTRA_OPTIONS="CAM5200,TQM5200S,TQM5200_B,CAM5200_NIOSFLASH"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_OF_LIBFDT=y
diff --git a/configs/canyonlands_defconfig b/configs/canyonlands_defconfig
index ad7e927..360ee6e 100644
--- a/configs/canyonlands_defconfig
+++ b/configs/canyonlands_defconfig
@@ -3,6 +3,7 @@ CONFIG_4xx=y
 CONFIG_TARGET_CANYONLANDS=y
 CONFIG_CANYONLANDS=y
 CONFIG_DEFAULT_DEVICE_TREE="canyonlands"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_OF_CONTROL=y
 CONFIG_OF_EMBED=y
 CONFIG_SYS_NS16550=y
diff --git a/configs/cardhu_defconfig b/configs/cardhu_defconfig
index c9f565a..808e0e2 100644
--- a/configs/cardhu_defconfig
+++ b/configs/cardhu_defconfig
@@ -4,6 +4,7 @@ CONFIG_SPL_DM=y
 CONFIG_TEGRA30=y
 CONFIG_TARGET_CARDHU=y
 CONFIG_DEFAULT_DEVICE_TREE="tegra30-cardhu"
+CONFIG_OF_SYSTEM_SETUP=y
 CONFIG_SYS_PROMPT="Tegra30 (Cardhu) # "
 # CONFIG_CMD_IMI is not set
 # CONFIG_CMD_IMLS is not set
diff --git a/configs/charon_defconfig b/configs/charon_defconfig
index f2d521f..7732c29 100644
--- a/configs/charon_defconfig
+++ b/configs/charon_defconfig
@@ -1,5 +1,6 @@
 CONFIG_PPC=y
 CONFIG_MPC5xxx=y
 CONFIG_TARGET_CHARON=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_OF_LIBFDT=y
diff --git a/configs/chromebook_link_defconfig b/configs/chromebook_link_defconfig
index 2539c48..8a39740 100644
--- a/configs/chromebook_link_defconfig
+++ b/configs/chromebook_link_defconfig
@@ -8,6 +8,7 @@ CONFIG_HAVE_MRC=y
 CONFIG_ENABLE_MRC_CACHE=y
 CONFIG_SMP=y
 CONFIG_HAVE_VGA_BIOS=y
+CONFIG_FIT=y
 CONFIG_BOOTSTAGE=y
 CONFIG_BOOTSTAGE_REPORT=y
 CONFIG_CMD_CPU=y
diff --git a/configs/chromebox_panther_defconfig b/configs/chromebox_panther_defconfig
index fb8224c..d58d37b 100644
--- a/configs/chromebox_panther_defconfig
+++ b/configs/chromebox_panther_defconfig
@@ -5,6 +5,7 @@ CONFIG_TARGET_CHROMEBOX_PANTHER=y
 CONFIG_HAVE_MRC=y
 CONFIG_ENABLE_MRC_CACHE=y
 CONFIG_HAVE_VGA_BIOS=y
+CONFIG_FIT=y
 CONFIG_BOOTSTAGE=y
 CONFIG_BOOTSTAGE_REPORT=y
 # CONFIG_CMD_IMLS is not set
diff --git a/configs/cm5200_defconfig b/configs/cm5200_defconfig
index 91d9267..171ed47 100644
--- a/configs/cm5200_defconfig
+++ b/configs/cm5200_defconfig
@@ -1,5 +1,6 @@
 CONFIG_PPC=y
 CONFIG_MPC5xxx=y
 CONFIG_TARGET_CM5200=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_OF_LIBFDT=y
diff --git a/configs/cm_fx6_defconfig b/configs/cm_fx6_defconfig
index 1a5b263..8de185a 100644
--- a/configs/cm_fx6_defconfig
+++ b/configs/cm_fx6_defconfig
@@ -3,6 +3,7 @@ CONFIG_ARCH_MX6=y
 CONFIG_TARGET_CM_FX6=y
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/imx-common/spl_sd.cfg,MX6QDL,SPL"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SYS_PROMPT="CM-FX6 # "
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_XIMG is not set
diff --git a/configs/cm_t54_defconfig b/configs/cm_t54_defconfig
index 9d4932f..439302c 100644
--- a/configs/cm_t54_defconfig
+++ b/configs/cm_t54_defconfig
@@ -2,6 +2,7 @@ CONFIG_ARM=y
 CONFIG_OMAP54XX=y
 CONFIG_TARGET_CM_T54=y
 CONFIG_SPL=y
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SYS_PROMPT="CM-T54 # "
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
diff --git a/configs/colibri_t20_defconfig b/configs/colibri_t20_defconfig
index 982cee4..83edb34 100644
--- a/configs/colibri_t20_defconfig
+++ b/configs/colibri_t20_defconfig
@@ -4,6 +4,7 @@ CONFIG_SPL_DM=y
 CONFIG_TEGRA20=y
 CONFIG_TARGET_COLIBRI_T20=y
 CONFIG_DEFAULT_DEVICE_TREE="tegra20-colibri"
+CONFIG_OF_SYSTEM_SETUP=y
 CONFIG_SYS_PROMPT="Colibri T20 # "
 # CONFIG_CMD_IMI is not set
 # CONFIG_CMD_IMLS is not set
diff --git a/configs/colibri_t30_defconfig b/configs/colibri_t30_defconfig
index 6dda271..35b29f9 100644
--- a/configs/colibri_t30_defconfig
+++ b/configs/colibri_t30_defconfig
@@ -4,6 +4,7 @@ CONFIG_SPL_DM=y
 CONFIG_TEGRA30=y
 CONFIG_TARGET_COLIBRI_T30=y
 CONFIG_DEFAULT_DEVICE_TREE="tegra30-colibri"
+CONFIG_OF_SYSTEM_SETUP=y
 CONFIG_SYS_PROMPT="Colibri T30 # "
 # CONFIG_CMD_IMI is not set
 # CONFIG_CMD_IMLS is not set
diff --git a/configs/controlcenterd_36BIT_SDCARD_DEVELOP_defconfig b/configs/controlcenterd_36BIT_SDCARD_DEVELOP_defconfig
index 0462c50..34e81df 100644
--- a/configs/controlcenterd_36BIT_SDCARD_DEVELOP_defconfig
+++ b/configs/controlcenterd_36BIT_SDCARD_DEVELOP_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_CONTROLCENTERD=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="36BIT,SDCARD,DEVELOP"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 CONFIG_CMD_TPM=y
diff --git a/configs/controlcenterd_36BIT_SDCARD_defconfig b/configs/controlcenterd_36BIT_SDCARD_defconfig
index 7f52711..57f7d3a 100644
--- a/configs/controlcenterd_36BIT_SDCARD_defconfig
+++ b/configs/controlcenterd_36BIT_SDCARD_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_CONTROLCENTERD=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="36BIT,SDCARD"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 CONFIG_CMD_TPM=y
diff --git a/configs/coreboot-x86_defconfig b/configs/coreboot-x86_defconfig
index b070a05..a1c7df7 100644
--- a/configs/coreboot-x86_defconfig
+++ b/configs/coreboot-x86_defconfig
@@ -1,6 +1,7 @@
 CONFIG_X86=y
 CONFIG_VENDOR_COREBOOT=y
 CONFIG_TARGET_COREBOOT=y
+CONFIG_FIT=y
 CONFIG_BOOTSTAGE=y
 CONFIG_BOOTSTAGE_REPORT=y
 # CONFIG_CMD_IMLS is not set
diff --git a/configs/crownbay_defconfig b/configs/crownbay_defconfig
index 6de86a5..0b8e3dd 100644
--- a/configs/crownbay_defconfig
+++ b/configs/crownbay_defconfig
@@ -7,6 +7,7 @@ CONFIG_MAX_CPUS=2
 CONFIG_HAVE_VGA_BIOS=y
 CONFIG_GENERATE_PIRQ_TABLE=y
 CONFIG_GENERATE_MP_TABLE=y
+CONFIG_FIT=y
 CONFIG_BOOTSTAGE=y
 CONFIG_BOOTSTAGE_REPORT=y
 CONFIG_CMD_CPU=y
diff --git a/configs/dalmore_defconfig b/configs/dalmore_defconfig
index dc5077d..15bd9f1 100644
--- a/configs/dalmore_defconfig
+++ b/configs/dalmore_defconfig
@@ -4,6 +4,7 @@ CONFIG_SPL_DM=y
 CONFIG_TEGRA114=y
 CONFIG_TARGET_DALMORE=y
 CONFIG_DEFAULT_DEVICE_TREE="tegra114-dalmore"
+CONFIG_OF_SYSTEM_SETUP=y
 CONFIG_SYS_PROMPT="Tegra114 (Dalmore) # "
 # CONFIG_CMD_IMI is not set
 # CONFIG_CMD_IMLS is not set
diff --git a/configs/devconcenter_defconfig b/configs/devconcenter_defconfig
index 0322e31..817f730 100644
--- a/configs/devconcenter_defconfig
+++ b/configs/devconcenter_defconfig
@@ -1,6 +1,8 @@
 CONFIG_PPC=y
 CONFIG_4xx=y
 CONFIG_TARGET_INTIP=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="DEVCONCENTER"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/digsy_mtc_RAMBOOT_defconfig b/configs/digsy_mtc_RAMBOOT_defconfig
index 9055029..035272d 100644
--- a/configs/digsy_mtc_RAMBOOT_defconfig
+++ b/configs/digsy_mtc_RAMBOOT_defconfig
@@ -2,6 +2,7 @@ CONFIG_PPC=y
 CONFIG_MPC5xxx=y
 CONFIG_TARGET_DIGSY_MTC=y
 CONFIG_SYS_EXTRA_OPTIONS="SYS_TEXT_BASE=0x00100000"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_AUTOBOOT_KEYED=y
 CONFIG_AUTOBOOT_PROMPT="Press SPACE to abort autoboot in %d seconds\n"
 CONFIG_AUTOBOOT_DELAY_STR="d"
diff --git a/configs/digsy_mtc_defconfig b/configs/digsy_mtc_defconfig
index 8a134fd..ce9cbf0 100644
--- a/configs/digsy_mtc_defconfig
+++ b/configs/digsy_mtc_defconfig
@@ -1,6 +1,7 @@
 CONFIG_PPC=y
 CONFIG_MPC5xxx=y
 CONFIG_TARGET_DIGSY_MTC=y
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_AUTOBOOT_KEYED=y
 CONFIG_AUTOBOOT_PROMPT="autoboot in %d seconds\n"
 CONFIG_AUTOBOOT_DELAY_STR=" "
diff --git a/configs/digsy_mtc_rev5_RAMBOOT_defconfig b/configs/digsy_mtc_rev5_RAMBOOT_defconfig
index 6623b3d..297fe06 100644
--- a/configs/digsy_mtc_rev5_RAMBOOT_defconfig
+++ b/configs/digsy_mtc_rev5_RAMBOOT_defconfig
@@ -2,6 +2,7 @@ CONFIG_PPC=y
 CONFIG_MPC5xxx=y
 CONFIG_TARGET_DIGSY_MTC=y
 CONFIG_SYS_EXTRA_OPTIONS="SYS_TEXT_BASE=0x00100000,DIGSY_REV5"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_AUTOBOOT_KEYED=y
 CONFIG_AUTOBOOT_PROMPT="Press SPACE to abort autoboot in %d seconds\n"
 CONFIG_AUTOBOOT_DELAY_STR="d"
diff --git a/configs/digsy_mtc_rev5_defconfig b/configs/digsy_mtc_rev5_defconfig
index c91a5b3..c505727 100644
--- a/configs/digsy_mtc_rev5_defconfig
+++ b/configs/digsy_mtc_rev5_defconfig
@@ -2,6 +2,7 @@ CONFIG_PPC=y
 CONFIG_MPC5xxx=y
 CONFIG_TARGET_DIGSY_MTC=y
 CONFIG_SYS_EXTRA_OPTIONS="DIGSY_REV5"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_AUTOBOOT_KEYED=y
 CONFIG_AUTOBOOT_PROMPT="Press SPACE to abort autoboot in %d seconds\n"
 CONFIG_AUTOBOOT_DELAY_STR="d"
diff --git a/configs/dlvision-10g_defconfig b/configs/dlvision-10g_defconfig
index 9dbcbb4..a339da8 100644
--- a/configs/dlvision-10g_defconfig
+++ b/configs/dlvision-10g_defconfig
@@ -1,6 +1,8 @@
 CONFIG_PPC=y
 CONFIG_4xx=y
 CONFIG_TARGET_DLVISION_10G=y
+CONFIG_FIT=y
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_AUTOBOOT_KEYED=y
 CONFIG_AUTOBOOT_STOP_STR=" "
 # CONFIG_CMD_ELF is not set
diff --git a/configs/dlvision_defconfig b/configs/dlvision_defconfig
index 7a30948..c4ba3d7 100644
--- a/configs/dlvision_defconfig
+++ b/configs/dlvision_defconfig
@@ -1,6 +1,8 @@
 CONFIG_PPC=y
 CONFIG_4xx=y
 CONFIG_TARGET_DLVISION=y
+CONFIG_FIT=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_ELF is not set
 # CONFIG_CMD_NFS is not set
 CONFIG_SYS_NS16550=y
diff --git a/configs/e2220-1170_defconfig b/configs/e2220-1170_defconfig
index db2d159..1a7b07d 100644
--- a/configs/e2220-1170_defconfig
+++ b/configs/e2220-1170_defconfig
@@ -2,6 +2,7 @@ CONFIG_ARM=y
 CONFIG_TEGRA=y
 CONFIG_TEGRA210=y
 CONFIG_DEFAULT_DEVICE_TREE="tegra210-e2220-1170"
+CONFIG_OF_SYSTEM_SETUP=y
 CONFIG_SYS_PROMPT="Tegra210 (E2220-1170) # "
 # CONFIG_CMD_IMI is not set
 # CONFIG_CMD_IMLS is not set
diff --git a/configs/eco5pk_defconfig b/configs/eco5pk_defconfig
index 579f80e..27535df 100644
--- a/configs/eco5pk_defconfig
+++ b/configs/eco5pk_defconfig
@@ -2,6 +2,7 @@ CONFIG_ARM=y
 CONFIG_OMAP34XX=y
 CONFIG_TARGET_ECO5PK=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_PROMPT="ECO5-PK # "
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
diff --git a/configs/efi-x86_defconfig b/configs/efi-x86_defconfig
index d7952da..f5b2e8f 100644
--- a/configs/efi-x86_defconfig
+++ b/configs/efi-x86_defconfig
@@ -2,6 +2,7 @@ CONFIG_X86=y
 CONFIG_VENDOR_EFI=y
 CONFIG_DEFAULT_DEVICE_TREE="efi"
 CONFIG_TARGET_EFI=y
+CONFIG_FIT=y
 # CONFIG_CMD_BOOTM is not set
 CONFIG_CMD_GPIO=y
 # CONFIG_CMD_NET is not set
diff --git a/configs/flea3_defconfig b/configs/flea3_defconfig
index 05bb8b4..5e35601 100644
--- a/configs/flea3_defconfig
+++ b/configs/flea3_defconfig
@@ -1,4 +1,5 @@
 CONFIG_ARM=y
 CONFIG_TARGET_FLEA3=y
+CONFIG_FIT=y
 CONFIG_SYS_PROMPT="flea3 U-Boot > "
 # CONFIG_CMD_SETEXPR is not set
diff --git a/configs/fo300_defconfig b/configs/fo300_defconfig
index 9a857b6..300439c 100644
--- a/configs/fo300_defconfig
+++ b/configs/fo300_defconfig
@@ -2,5 +2,6 @@ CONFIG_PPC=y
 CONFIG_MPC5xxx=y
 CONFIG_TARGET_TQM5200=y
 CONFIG_SYS_EXTRA_OPTIONS="FO300"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_OF_LIBFDT=y
diff --git a/configs/ga10h_v1_1_defconfig b/configs/ga10h_v1_1_defconfig
index 09ad330..4694432 100644
--- a/configs/ga10h_v1_1_defconfig
+++ b/configs/ga10h_v1_1_defconfig
@@ -18,6 +18,7 @@ CONFIG_DEFAULT_DEVICE_TREE="sun8i-a33-ga10h-v1.1"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="CONS_INDEX=5"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/galileo_defconfig b/configs/galileo_defconfig
index 217d500..1a9edb5 100644
--- a/configs/galileo_defconfig
+++ b/configs/galileo_defconfig
@@ -4,6 +4,7 @@ CONFIG_DEFAULT_DEVICE_TREE="galileo"
 CONFIG_TARGET_GALILEO=y
 CONFIG_ENABLE_MRC_CACHE=y
 CONFIG_GENERATE_PIRQ_TABLE=y
+CONFIG_FIT=y
 CONFIG_BOOTSTAGE=y
 CONFIG_BOOTSTAGE_REPORT=y
 # CONFIG_CMD_IMLS is not set
diff --git a/configs/gdppc440etx_defconfig b/configs/gdppc440etx_defconfig
index 0c04678..695d860 100644
--- a/configs/gdppc440etx_defconfig
+++ b/configs/gdppc440etx_defconfig
@@ -1,6 +1,7 @@
 CONFIG_PPC=y
 CONFIG_4xx=y
 CONFIG_TARGET_GDPPC440ETX=y
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_AUTOBOOT_KEYED=y
 CONFIG_AUTOBOOT_STOP_STR=" "
 CONFIG_SYS_NS16550=y
diff --git a/configs/glacier_defconfig b/configs/glacier_defconfig
index 61444ff..1943882 100644
--- a/configs/glacier_defconfig
+++ b/configs/glacier_defconfig
@@ -3,6 +3,7 @@ CONFIG_4xx=y
 CONFIG_TARGET_CANYONLANDS=y
 CONFIG_GLACIER=y
 CONFIG_DEFAULT_DEVICE_TREE="glacier"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_OF_CONTROL=y
 CONFIG_OF_EMBED=y
 CONFIG_SYS_NS16550=y
diff --git a/configs/glacier_ramboot_defconfig b/configs/glacier_ramboot_defconfig
index 11d7da2..15ce33f 100644
--- a/configs/glacier_ramboot_defconfig
+++ b/configs/glacier_ramboot_defconfig
@@ -4,6 +4,7 @@ CONFIG_TARGET_CANYONLANDS=y
 CONFIG_GLACIER=y
 CONFIG_DEFAULT_DEVICE_TREE="glacier"
 CONFIG_SYS_EXTRA_OPTIONS="SYS_RAMBOOT,SYS_TEXT_BASE=0x01000000,SYS_LDSCRIPT=board/amcc/canyonlands/u-boot-ram.lds"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_OF_CONTROL=y
 CONFIG_OF_EMBED=y
 CONFIG_SYS_NS16550=y
diff --git a/configs/gt90h_v4_defconfig b/configs/gt90h_v4_defconfig
index a8d339c..51c536a 100644
--- a/configs/gt90h_v4_defconfig
+++ b/configs/gt90h_v4_defconfig
@@ -17,6 +17,7 @@ CONFIG_DEFAULT_DEVICE_TREE="sun8i-a23-gt90h-v4"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="CONS_INDEX=5"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/gwventana_defconfig b/configs/gwventana_defconfig
index 5347876..22d2bda 100644
--- a/configs/gwventana_defconfig
+++ b/configs/gwventana_defconfig
@@ -5,7 +5,9 @@ CONFIG_DM_SERIAL=y
 CONFIG_SPL_STACK_R_ADDR=0x18000000
 CONFIG_SPL=y
 CONFIG_SPL_STACK_R=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/imx-common/spl_sd.cfg,MX6QDL"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SYS_PROMPT="Ventana > "
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
diff --git a/configs/h2200_defconfig b/configs/h2200_defconfig
index d112cf1..0fadc90 100644
--- a/configs/h2200_defconfig
+++ b/configs/h2200_defconfig
@@ -1,5 +1,6 @@
 CONFIG_ARM=y
 CONFIG_TARGET_H2200=y
+CONFIG_FIT=y
 CONFIG_SYS_PROMPT="> "
 # CONFIG_CMD_BDI is not set
 # CONFIG_CMD_CONSOLE is not set
diff --git a/configs/haleakala_defconfig b/configs/haleakala_defconfig
index 7b98566..7275da5 100644
--- a/configs/haleakala_defconfig
+++ b/configs/haleakala_defconfig
@@ -2,5 +2,6 @@ CONFIG_PPC=y
 CONFIG_4xx=y
 CONFIG_TARGET_KILAUEA=y
 CONFIG_SYS_EXTRA_OPTIONS="HALEAKALA"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/harmony_defconfig b/configs/harmony_defconfig
index a3f73cc..f9857df 100644
--- a/configs/harmony_defconfig
+++ b/configs/harmony_defconfig
@@ -4,6 +4,7 @@ CONFIG_SPL_DM=y
 CONFIG_TEGRA20=y
 CONFIG_TARGET_HARMONY=y
 CONFIG_DEFAULT_DEVICE_TREE="tegra20-harmony"
+CONFIG_OF_SYSTEM_SETUP=y
 CONFIG_SYS_PROMPT="Tegra20 (Harmony) # "
 # CONFIG_CMD_IMI is not set
 # CONFIG_CMD_IMLS is not set
diff --git a/configs/highbank_defconfig b/configs/highbank_defconfig
index 5af707d..b44763e 100644
--- a/configs/highbank_defconfig
+++ b/configs/highbank_defconfig
@@ -1,5 +1,7 @@
 CONFIG_ARM=y
 CONFIG_ARCH_HIGHBANK=y
+CONFIG_FIT=y
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_AUTOBOOT_KEYED=y
 CONFIG_AUTOBOOT_PROMPT="Autobooting in %d seconds...\nPress <s> to stop or <d> to delay\n"
 CONFIG_AUTOBOOT_KEYED_CTRLC=y
diff --git a/configs/hrcon_defconfig b/configs/hrcon_defconfig
index a4b733b..8a665dd 100644
--- a/configs/hrcon_defconfig
+++ b/configs/hrcon_defconfig
@@ -1,6 +1,8 @@
 CONFIG_PPC=y
 CONFIG_MPC83xx=y
 CONFIG_TARGET_HRCON=y
+CONFIG_FIT=y
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_AUTOBOOT_KEYED=y
 CONFIG_AUTOBOOT_STOP_STR=" "
 # CONFIG_CMD_SETEXPR is not set
diff --git a/configs/hrcon_dh_defconfig b/configs/hrcon_dh_defconfig
index f8fa4ef..ded32c8 100644
--- a/configs/hrcon_dh_defconfig
+++ b/configs/hrcon_dh_defconfig
@@ -1,6 +1,8 @@
 CONFIG_PPC=y
 CONFIG_MPC83xx=y
 CONFIG_TARGET_HRCON=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="HRCON_DH"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/i12-tvbox_defconfig b/configs/i12-tvbox_defconfig
index a15a15a..1fa7cd4 100644
--- a/configs/i12-tvbox_defconfig
+++ b/configs/i12-tvbox_defconfig
@@ -7,6 +7,7 @@ CONFIG_DEFAULT_DEVICE_TREE="sun7i-a20-i12-tvbox"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC,MACPWR=SUNXI_GPH(21)"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/iNet_3F_defconfig b/configs/iNet_3F_defconfig
index 3f1624c..1fbf66a 100644
--- a/configs/iNet_3F_defconfig
+++ b/configs/iNet_3F_defconfig
@@ -14,6 +14,7 @@ CONFIG_VIDEO_LCD_PANEL_LVDS=y
 CONFIG_DEFAULT_DEVICE_TREE="sun4i-a10-inet-3f"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/iNet_3W_defconfig b/configs/iNet_3W_defconfig
index 6c4cd56..7d91aec 100644
--- a/configs/iNet_3W_defconfig
+++ b/configs/iNet_3W_defconfig
@@ -14,6 +14,7 @@ CONFIG_VIDEO_LCD_BL_PWM="PB2"
 CONFIG_DEFAULT_DEVICE_TREE="sun4i-a10-inet-3w"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/iNet_86VS_defconfig b/configs/iNet_86VS_defconfig
index 00e1458..ba04b60 100644
--- a/configs/iNet_86VS_defconfig
+++ b/configs/iNet_86VS_defconfig
@@ -13,6 +13,7 @@ CONFIG_VIDEO_LCD_BL_PWM="PB2"
 CONFIG_DEFAULT_DEVICE_TREE="sun5i-a13-inet-86vs"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/icon_defconfig b/configs/icon_defconfig
index ede63a7..39b5185 100644
--- a/configs/icon_defconfig
+++ b/configs/icon_defconfig
@@ -1,5 +1,6 @@
 CONFIG_PPC=y
 CONFIG_4xx=y
 CONFIG_TARGET_ICON=y
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/ids8313_defconfig b/configs/ids8313_defconfig
index 7ae2f73..f3192d1 100644
--- a/configs/ids8313_defconfig
+++ b/configs/ids8313_defconfig
@@ -4,6 +4,7 @@ CONFIG_TARGET_IDS8313=y
 CONFIG_FIT=y
 CONFIG_FIT_SIGNATURE=y
 CONFIG_SYS_EXTRA_OPTIONS="SYS_TEXT_BASE=0xFFF00000"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_AUTOBOOT_KEYED=y
 CONFIG_AUTOBOOT_PROMPT="Enter password - autoboot in %d seconds...\n"
 CONFIG_AUTOBOOT_DELAY_STR="ids"
diff --git a/configs/inet1_defconfig b/configs/inet1_defconfig
index 1c68293..0b9c604 100644
--- a/configs/inet1_defconfig
+++ b/configs/inet1_defconfig
@@ -14,6 +14,7 @@ CONFIG_VIDEO_LCD_PANEL_LVDS=y
 CONFIG_DEFAULT_DEVICE_TREE="sun4i-a10-inet1"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/inet97fv2_defconfig b/configs/inet97fv2_defconfig
index a7b3a9f..744051a 100644
--- a/configs/inet97fv2_defconfig
+++ b/configs/inet97fv2_defconfig
@@ -13,6 +13,7 @@ CONFIG_VIDEO_LCD_BL_PWM="PB2"
 CONFIG_DEFAULT_DEVICE_TREE="sun4i-a10-inet97fv2"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/inet98v_rev2_defconfig b/configs/inet98v_rev2_defconfig
index c0c6cb2..a41764f 100644
--- a/configs/inet98v_rev2_defconfig
+++ b/configs/inet98v_rev2_defconfig
@@ -16,6 +16,7 @@ CONFIG_DEFAULT_DEVICE_TREE="sun5i-a13-inet-98v-rev2"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="CONS_INDEX=2"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/inet9f_rev03_defconfig b/configs/inet9f_rev03_defconfig
index 0a17cf7..662f2e2 100644
--- a/configs/inet9f_rev03_defconfig
+++ b/configs/inet9f_rev03_defconfig
@@ -13,6 +13,7 @@ CONFIG_VIDEO_LCD_BL_PWM="PB2"
 CONFIG_DEFAULT_DEVICE_TREE="sun4i-a10-inet9f-rev03"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/intip_defconfig b/configs/intip_defconfig
index 51a21fe..4d16ff1 100644
--- a/configs/intip_defconfig
+++ b/configs/intip_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_4xx=y
 CONFIG_TARGET_INTIP=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="INTIB"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_AUTOBOOT_KEYED=y
 CONFIG_AUTOBOOT_STOP_STR=" "
 CONFIG_SYS_NS16550=y
diff --git a/configs/io64_defconfig b/configs/io64_defconfig
index 30f7fee..04fd9a3 100644
--- a/configs/io64_defconfig
+++ b/configs/io64_defconfig
@@ -1,6 +1,8 @@
 CONFIG_PPC=y
 CONFIG_4xx=y
 CONFIG_TARGET_IO64=y
+CONFIG_FIT=y
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_AUTOBOOT_KEYED=y
 CONFIG_AUTOBOOT_STOP_STR=" "
 CONFIG_SYS_NS16550=y
diff --git a/configs/io_defconfig b/configs/io_defconfig
index e83112c..8e9a246 100644
--- a/configs/io_defconfig
+++ b/configs/io_defconfig
@@ -1,6 +1,8 @@
 CONFIG_PPC=y
 CONFIG_4xx=y
 CONFIG_TARGET_IO=y
+CONFIG_FIT=y
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_AUTOBOOT_KEYED=y
 CONFIG_AUTOBOOT_STOP_STR=" "
 # CONFIG_CMD_ELF is not set
diff --git a/configs/iocon_defconfig b/configs/iocon_defconfig
index dac950e..069db16 100644
--- a/configs/iocon_defconfig
+++ b/configs/iocon_defconfig
@@ -2,6 +2,7 @@ CONFIG_PPC=y
 CONFIG_4xx=y
 CONFIG_TARGET_IOCON=y
 CONFIG_FIT=y
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_AUTOBOOT_KEYED=y
 CONFIG_AUTOBOOT_STOP_STR=" "
 # CONFIG_CMD_ELF is not set
diff --git a/configs/ipek01_defconfig b/configs/ipek01_defconfig
index 3f856e9..a8e5174 100644
--- a/configs/ipek01_defconfig
+++ b/configs/ipek01_defconfig
@@ -1,5 +1,6 @@
 CONFIG_PPC=y
 CONFIG_MPC5xxx=y
 CONFIG_TARGET_IPEK01=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_OF_LIBFDT=y
diff --git a/configs/jesurun_q5_defconfig b/configs/jesurun_q5_defconfig
index 443a1c7..3ec8792 100644
--- a/configs/jesurun_q5_defconfig
+++ b/configs/jesurun_q5_defconfig
@@ -8,6 +8,7 @@ CONFIG_DEFAULT_DEVICE_TREE="sun4i-a10-jesurun-q5"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="SUNXI_EMAC,MACPWR=SUNXI_GPH(19)"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/jetson-tk1_defconfig b/configs/jetson-tk1_defconfig
index efc4aee..c07b278 100644
--- a/configs/jetson-tk1_defconfig
+++ b/configs/jetson-tk1_defconfig
@@ -4,6 +4,7 @@ CONFIG_SPL_DM=y
 CONFIG_TEGRA124=y
 CONFIG_TARGET_JETSON_TK1=y
 CONFIG_DEFAULT_DEVICE_TREE="tegra124-jetson-tk1"
+CONFIG_OF_SYSTEM_SETUP=y
 CONFIG_SYS_PROMPT="Tegra124 (Jetson TK1) # "
 # CONFIG_CMD_IMI is not set
 # CONFIG_CMD_IMLS is not set
diff --git a/configs/k2e_evm_defconfig b/configs/k2e_evm_defconfig
index 9fb9dac..ca18dbd 100644
--- a/configs/k2e_evm_defconfig
+++ b/configs/k2e_evm_defconfig
@@ -4,6 +4,7 @@ CONFIG_TARGET_K2E_EVM=y
 CONFIG_DM_SERIAL=y
 CONFIG_DEFAULT_DEVICE_TREE="k2e-evm"
 CONFIG_SPL=y
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SYS_PROMPT="K2E EVM # "
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
diff --git a/configs/k2g_evm_defconfig b/configs/k2g_evm_defconfig
index 7bdf7a4..d78ec4b 100644
--- a/configs/k2g_evm_defconfig
+++ b/configs/k2g_evm_defconfig
@@ -4,6 +4,7 @@ CONFIG_TARGET_K2G_EVM=y
 CONFIG_DM_SERIAL=y
 CONFIG_DEFAULT_DEVICE_TREE="k2g-evm"
 CONFIG_SPL=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_SETEXPR is not set
diff --git a/configs/k2hk_evm_defconfig b/configs/k2hk_evm_defconfig
index 940d483..5a14305 100644
--- a/configs/k2hk_evm_defconfig
+++ b/configs/k2hk_evm_defconfig
@@ -4,6 +4,7 @@ CONFIG_TARGET_K2HK_EVM=y
 CONFIG_DM_SERIAL=y
 CONFIG_DEFAULT_DEVICE_TREE="k2hk-evm"
 CONFIG_SPL=y
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SYS_PROMPT="K2HK EVM # "
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
diff --git a/configs/k2l_evm_defconfig b/configs/k2l_evm_defconfig
index 1b21ed0..0b0f058 100644
--- a/configs/k2l_evm_defconfig
+++ b/configs/k2l_evm_defconfig
@@ -4,6 +4,7 @@ CONFIG_TARGET_K2L_EVM=y
 CONFIG_DM_SERIAL=y
 CONFIG_DEFAULT_DEVICE_TREE="k2l-evm"
 CONFIG_SPL=y
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SYS_PROMPT="K2L EVM # "
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
diff --git a/configs/katmai_defconfig b/configs/katmai_defconfig
index 2438c29..b242d81 100644
--- a/configs/katmai_defconfig
+++ b/configs/katmai_defconfig
@@ -1,5 +1,6 @@
 CONFIG_PPC=y
 CONFIG_4xx=y
 CONFIG_TARGET_KATMAI=y
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/kilauea_defconfig b/configs/kilauea_defconfig
index 7452105..945da5b 100644
--- a/configs/kilauea_defconfig
+++ b/configs/kilauea_defconfig
@@ -2,5 +2,6 @@ CONFIG_PPC=y
 CONFIG_4xx=y
 CONFIG_TARGET_KILAUEA=y
 CONFIG_SYS_EXTRA_OPTIONS="KILAUEA"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/kmcoge4_defconfig b/configs/kmcoge4_defconfig
index 0165877..e82456c 100644
--- a/configs/kmcoge4_defconfig
+++ b/configs/kmcoge4_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_KMP204X=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="KMCOGE4"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 CONFIG_SPI_FLASH=y
diff --git a/configs/kmcoge5ne_defconfig b/configs/kmcoge5ne_defconfig
index ca13a26..f2841b7 100644
--- a/configs/kmcoge5ne_defconfig
+++ b/configs/kmcoge5ne_defconfig
@@ -2,5 +2,6 @@ CONFIG_PPC=y
 CONFIG_MPC83xx=y
 CONFIG_TARGET_KM8360=y
 CONFIG_SYS_EXTRA_OPTIONS="KMCOGE5NE"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/kmeter1_defconfig b/configs/kmeter1_defconfig
index 7466f07..a9c8245 100644
--- a/configs/kmeter1_defconfig
+++ b/configs/kmeter1_defconfig
@@ -2,5 +2,6 @@ CONFIG_PPC=y
 CONFIG_MPC83xx=y
 CONFIG_TARGET_KM8360=y
 CONFIG_SYS_EXTRA_OPTIONS="KMETER1"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/kmlion1_defconfig b/configs/kmlion1_defconfig
index 812eab7..8b7f542 100644
--- a/configs/kmlion1_defconfig
+++ b/configs/kmlion1_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_KMP204X=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="KMLION1"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 CONFIG_SPI_FLASH=y
diff --git a/configs/kmopti2_defconfig b/configs/kmopti2_defconfig
index 798f748..e6ad3db 100644
--- a/configs/kmopti2_defconfig
+++ b/configs/kmopti2_defconfig
@@ -2,5 +2,6 @@ CONFIG_PPC=y
 CONFIG_MPC83xx=y
 CONFIG_TARGET_TUXX1=y
 CONFIG_SYS_EXTRA_OPTIONS="KMOPTI2"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/kmsupx5_defconfig b/configs/kmsupx5_defconfig
index 6050b3b..f2d5c62 100644
--- a/configs/kmsupx5_defconfig
+++ b/configs/kmsupx5_defconfig
@@ -2,5 +2,6 @@ CONFIG_PPC=y
 CONFIG_MPC83xx=y
 CONFIG_TARGET_TUXX1=y
 CONFIG_SYS_EXTRA_OPTIONS="KMSUPX5"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/kmtegr1_defconfig b/configs/kmtegr1_defconfig
index f407ce1..a87bb5a 100644
--- a/configs/kmtegr1_defconfig
+++ b/configs/kmtegr1_defconfig
@@ -2,5 +2,6 @@ CONFIG_PPC=y
 CONFIG_MPC83xx=y
 CONFIG_TARGET_SUVD3=y
 CONFIG_SYS_EXTRA_OPTIONS="KMTEGR1"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/kmtepr2_defconfig b/configs/kmtepr2_defconfig
index e55f4db..4fa42b4 100644
--- a/configs/kmtepr2_defconfig
+++ b/configs/kmtepr2_defconfig
@@ -2,5 +2,6 @@ CONFIG_PPC=y
 CONFIG_MPC83xx=y
 CONFIG_TARGET_TUXX1=y
 CONFIG_SYS_EXTRA_OPTIONS="KMTEPR2"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/kmvect1_defconfig b/configs/kmvect1_defconfig
index 1e75011..3f474a3 100644
--- a/configs/kmvect1_defconfig
+++ b/configs/kmvect1_defconfig
@@ -2,5 +2,6 @@ CONFIG_PPC=y
 CONFIG_MPC83xx=y
 CONFIG_TARGET_SUVD3=y
 CONFIG_SYS_EXTRA_OPTIONS="KMVECT1"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/ls1021aqds_ddr4_nor_defconfig b/configs/ls1021aqds_ddr4_nor_defconfig
index 4e790c7..55a668c 100644
--- a/configs/ls1021aqds_ddr4_nor_defconfig
+++ b/configs/ls1021aqds_ddr4_nor_defconfig
@@ -1,6 +1,7 @@
 CONFIG_ARM=y
 CONFIG_TARGET_LS1021AQDS=y
 CONFIG_SYS_EXTRA_OPTIONS="SYS_FSL_DDR4"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
diff --git a/configs/ls1021aqds_ddr4_nor_lpuart_defconfig b/configs/ls1021aqds_ddr4_nor_lpuart_defconfig
index c76efdb..b2ccc02 100644
--- a/configs/ls1021aqds_ddr4_nor_lpuart_defconfig
+++ b/configs/ls1021aqds_ddr4_nor_lpuart_defconfig
@@ -1,6 +1,7 @@
 CONFIG_ARM=y
 CONFIG_TARGET_LS1021AQDS=y
 CONFIG_SYS_EXTRA_OPTIONS="SYS_FSL_DDR4,LPUART"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
diff --git a/configs/ls1021aqds_nand_defconfig b/configs/ls1021aqds_nand_defconfig
index 0c0856c..3eea208 100644
--- a/configs/ls1021aqds_nand_defconfig
+++ b/configs/ls1021aqds_nand_defconfig
@@ -2,6 +2,7 @@ CONFIG_ARM=y
 CONFIG_TARGET_LS1021AQDS=y
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="RAMBOOT_PBL,SPL_FSL_PBL,NAND_BOOT"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
diff --git a/configs/ls1021aqds_nor_SECURE_BOOT_defconfig b/configs/ls1021aqds_nor_SECURE_BOOT_defconfig
index 5ff3d75..a44aed9 100644
--- a/configs/ls1021aqds_nor_SECURE_BOOT_defconfig
+++ b/configs/ls1021aqds_nor_SECURE_BOOT_defconfig
@@ -1,6 +1,7 @@
 CONFIG_ARM=y
 CONFIG_TARGET_LS1021AQDS=y
 CONFIG_SYS_EXTRA_OPTIONS="SECURE_BOOT"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
diff --git a/configs/ls1021aqds_nor_defconfig b/configs/ls1021aqds_nor_defconfig
index 7aadf81..67a9399 100644
--- a/configs/ls1021aqds_nor_defconfig
+++ b/configs/ls1021aqds_nor_defconfig
@@ -1,5 +1,6 @@
 CONFIG_ARM=y
 CONFIG_TARGET_LS1021AQDS=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
diff --git a/configs/ls1021aqds_nor_lpuart_defconfig b/configs/ls1021aqds_nor_lpuart_defconfig
index f9a59a4..371ef59 100644
--- a/configs/ls1021aqds_nor_lpuart_defconfig
+++ b/configs/ls1021aqds_nor_lpuart_defconfig
@@ -1,6 +1,7 @@
 CONFIG_ARM=y
 CONFIG_TARGET_LS1021AQDS=y
 CONFIG_SYS_EXTRA_OPTIONS="LPUART"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
diff --git a/configs/ls1021aqds_qspi_defconfig b/configs/ls1021aqds_qspi_defconfig
index 0f740fd..94da3f4 100644
--- a/configs/ls1021aqds_qspi_defconfig
+++ b/configs/ls1021aqds_qspi_defconfig
@@ -3,6 +3,7 @@ CONFIG_TARGET_LS1021AQDS=y
 CONFIG_DM_SPI=y
 CONFIG_DEFAULT_DEVICE_TREE="ls1021a-qds"
 CONFIG_SYS_EXTRA_OPTIONS="QSPI_BOOT"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_OF_CONTROL=y
diff --git a/configs/ls1021aqds_sdcard_defconfig b/configs/ls1021aqds_sdcard_defconfig
index 6f3dbfb..4ada3c3 100644
--- a/configs/ls1021aqds_sdcard_defconfig
+++ b/configs/ls1021aqds_sdcard_defconfig
@@ -2,6 +2,7 @@ CONFIG_ARM=y
 CONFIG_TARGET_LS1021AQDS=y
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="RAMBOOT_PBL,SPL_FSL_PBL,SD_BOOT"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
diff --git a/configs/ls1021atwr_nor_SECURE_BOOT_defconfig b/configs/ls1021atwr_nor_SECURE_BOOT_defconfig
index db2bf19..5bbd36c 100644
--- a/configs/ls1021atwr_nor_SECURE_BOOT_defconfig
+++ b/configs/ls1021atwr_nor_SECURE_BOOT_defconfig
@@ -1,6 +1,7 @@
 CONFIG_ARM=y
 CONFIG_TARGET_LS1021ATWR=y
 CONFIG_SYS_EXTRA_OPTIONS="SECURE_BOOT"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
diff --git a/configs/ls1021atwr_nor_defconfig b/configs/ls1021atwr_nor_defconfig
index b7b3a8d..1139ce3 100644
--- a/configs/ls1021atwr_nor_defconfig
+++ b/configs/ls1021atwr_nor_defconfig
@@ -2,6 +2,7 @@ CONFIG_ARM=y
 CONFIG_TARGET_LS1021ATWR=y
 CONFIG_DM_SERIAL=y
 CONFIG_DEFAULT_DEVICE_TREE="ls1021a-twr-duart"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_OF_CONTROL=y
 CONFIG_DM=y
diff --git a/configs/ls1021atwr_nor_lpuart_defconfig b/configs/ls1021atwr_nor_lpuart_defconfig
index 599342f..689c558 100644
--- a/configs/ls1021atwr_nor_lpuart_defconfig
+++ b/configs/ls1021atwr_nor_lpuart_defconfig
@@ -3,6 +3,7 @@ CONFIG_TARGET_LS1021ATWR=y
 CONFIG_DM_SERIAL=y
 CONFIG_DEFAULT_DEVICE_TREE="ls1021a-twr-lpuart"
 CONFIG_SYS_EXTRA_OPTIONS="LPUART"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_OF_CONTROL=y
 CONFIG_DM=y
diff --git a/configs/ls1021atwr_qspi_defconfig b/configs/ls1021atwr_qspi_defconfig
index d7c7e4c..8207705 100644
--- a/configs/ls1021atwr_qspi_defconfig
+++ b/configs/ls1021atwr_qspi_defconfig
@@ -3,6 +3,7 @@ CONFIG_TARGET_LS1021ATWR=y
 CONFIG_DM_SPI=y
 CONFIG_DEFAULT_DEVICE_TREE="ls1021a-twr-duart"
 CONFIG_SYS_EXTRA_OPTIONS="QSPI_BOOT"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_OF_CONTROL=y
diff --git a/configs/ls1021atwr_sdcard_ifc_defconfig b/configs/ls1021atwr_sdcard_ifc_defconfig
index c658360..1f9c97a 100644
--- a/configs/ls1021atwr_sdcard_ifc_defconfig
+++ b/configs/ls1021atwr_sdcard_ifc_defconfig
@@ -2,6 +2,7 @@ CONFIG_ARM=y
 CONFIG_TARGET_LS1021ATWR=y
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="RAMBOOT_PBL,SPL_FSL_PBL,SD_BOOT"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
diff --git a/configs/ls1021atwr_sdcard_qspi_defconfig b/configs/ls1021atwr_sdcard_qspi_defconfig
index 453a3bb..abf12a6 100644
--- a/configs/ls1021atwr_sdcard_qspi_defconfig
+++ b/configs/ls1021atwr_sdcard_qspi_defconfig
@@ -4,6 +4,7 @@ CONFIG_DM_SPI=y
 CONFIG_DEFAULT_DEVICE_TREE="ls1021a-twr-duart"
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="RAMBOOT_PBL,SPL_FSL_PBL,SD_BOOT,SD_BOOT_QSPI"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_OF_CONTROL=y
 CONFIG_DM=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/ls1043aqds_defconfig b/configs/ls1043aqds_defconfig
index d7df7d8..2718279 100644
--- a/configs/ls1043aqds_defconfig
+++ b/configs/ls1043aqds_defconfig
@@ -1,6 +1,8 @@
 CONFIG_ARM=y
 CONFIG_TARGET_LS1043AQDS=y
 CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1043a-qds"
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="SYS_FSL_DDR4"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_OF_CONTROL=y
 CONFIG_SYS_NS16550=y
diff --git a/configs/ls1043aqds_nand_defconfig b/configs/ls1043aqds_nand_defconfig
index e7f8860..653e629 100644
--- a/configs/ls1043aqds_nand_defconfig
+++ b/configs/ls1043aqds_nand_defconfig
@@ -1,6 +1,8 @@
 CONFIG_ARM=y
 CONFIG_TARGET_LS1043AQDS=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="SYS_FSL_DDR4,RAMBOOT_PBL,SPL_FSL_PBL,NAND_BOOT"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/ls1043aqds_nor_ddr3_defconfig b/configs/ls1043aqds_nor_ddr3_defconfig
index b8945ad..95b1c1a 100644
--- a/configs/ls1043aqds_nor_ddr3_defconfig
+++ b/configs/ls1043aqds_nor_ddr3_defconfig
@@ -1,4 +1,6 @@
 CONFIG_ARM=y
 CONFIG_TARGET_LS1043AQDS=y
+CONFIG_FIT=y
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/ls1043aqds_sdcard_ifc_defconfig b/configs/ls1043aqds_sdcard_ifc_defconfig
index de77bde..a3986d5 100644
--- a/configs/ls1043aqds_sdcard_ifc_defconfig
+++ b/configs/ls1043aqds_sdcard_ifc_defconfig
@@ -1,6 +1,8 @@
 CONFIG_ARM=y
 CONFIG_TARGET_LS1043AQDS=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="SYS_FSL_DDR4,RAMBOOT_PBL,SPL_FSL_PBL,SD_BOOT"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/ls1043ardb_SECURE_BOOT_defconfig b/configs/ls1043ardb_SECURE_BOOT_defconfig
index 720e56b..aeec8a8 100644
--- a/configs/ls1043ardb_SECURE_BOOT_defconfig
+++ b/configs/ls1043ardb_SECURE_BOOT_defconfig
@@ -2,7 +2,9 @@ CONFIG_ARM=y
 CONFIG_TARGET_LS1043ARDB=y
 CONFIG_DM_SPI=y
 CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1043a-rdb"
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="SYS_FSL_DDR4, SECURE_BOOT"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_OF_CONTROL=y
 CONFIG_DM=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/ls1043ardb_defconfig b/configs/ls1043ardb_defconfig
index 23e2b87..ccfb587 100644
--- a/configs/ls1043ardb_defconfig
+++ b/configs/ls1043ardb_defconfig
@@ -2,7 +2,9 @@ CONFIG_ARM=y
 CONFIG_TARGET_LS1043ARDB=y
 CONFIG_DM_SPI=y
 CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1043a-rdb"
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="SYS_FSL_DDR4"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_OF_CONTROL=y
 CONFIG_DM=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/ls1043ardb_nand_defconfig b/configs/ls1043ardb_nand_defconfig
index c079dbd..26f9e44 100644
--- a/configs/ls1043ardb_nand_defconfig
+++ b/configs/ls1043ardb_nand_defconfig
@@ -3,7 +3,9 @@ CONFIG_TARGET_LS1043ARDB=y
 CONFIG_DM_SPI=y
 CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1043a-rdb"
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="RAMBOOT_PBL,SPL_FSL_PBL,NAND_BOOT,SYS_FSL_DDR4"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_OF_CONTROL=y
 CONFIG_DM=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/ls1043ardb_sdcard_defconfig b/configs/ls1043ardb_sdcard_defconfig
index a621442..f9b4e3f 100644
--- a/configs/ls1043ardb_sdcard_defconfig
+++ b/configs/ls1043ardb_sdcard_defconfig
@@ -3,7 +3,9 @@ CONFIG_TARGET_LS1043ARDB=y
 CONFIG_DM_SPI=y
 CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1043a-rdb"
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="RAMBOOT_PBL,SPL_FSL_PBL,SD_BOOT,SYS_FSL_DDR4"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_OF_CONTROL=y
 CONFIG_DM=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/ls2080a_emu_defconfig b/configs/ls2080a_emu_defconfig
index 64787c1..9e8515d 100644
--- a/configs/ls2080a_emu_defconfig
+++ b/configs/ls2080a_emu_defconfig
@@ -1,6 +1,8 @@
 CONFIG_ARM=y
 CONFIG_TARGET_LS2080A_EMU=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="EMU,SYS_FSL_DDR4, LS2080A"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_CONSOLE is not set
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_XIMG is not set
diff --git a/configs/ls2080a_simu_defconfig b/configs/ls2080a_simu_defconfig
index fe8281b..e0cd399 100644
--- a/configs/ls2080a_simu_defconfig
+++ b/configs/ls2080a_simu_defconfig
@@ -1,6 +1,8 @@
 CONFIG_ARM=y
 CONFIG_TARGET_LS2080A_SIMU=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="SIMU, LS2080A"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_CONSOLE is not set
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_XIMG is not set
diff --git a/configs/ls2080aqds_defconfig b/configs/ls2080aqds_defconfig
index 6ac09ce..5b98b48 100644
--- a/configs/ls2080aqds_defconfig
+++ b/configs/ls2080aqds_defconfig
@@ -4,7 +4,9 @@ CONFIG_TARGET_LS2080AQDS=y
 CONFIG_DM_SPI=y
 CONFIG_DM_SPI_FLASH=y
 CONFIG_DEFAULT_DEVICE_TREE="fsl-ls2080a-qds"
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="SYS_FSL_DDR4, LS2080A"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_OF_CONTROL=y
 CONFIG_NET_RANDOM_ETHADDR=y
diff --git a/configs/ls2080aqds_nand_defconfig b/configs/ls2080aqds_nand_defconfig
index 799efdf..95faed5 100644
--- a/configs/ls2080aqds_nand_defconfig
+++ b/configs/ls2080aqds_nand_defconfig
@@ -1,7 +1,9 @@
 CONFIG_ARM=y
 CONFIG_TARGET_LS2080AQDS=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="SYS_FSL_DDR4, NAND, LS2080A"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_NETDEVICES=y
diff --git a/configs/ls2080ardb_defconfig b/configs/ls2080ardb_defconfig
index 1b30114..3ca1a0e 100644
--- a/configs/ls2080ardb_defconfig
+++ b/configs/ls2080ardb_defconfig
@@ -4,7 +4,9 @@ CONFIG_TARGET_LS2080ARDB=y
 CONFIG_DM_SPI=y
 CONFIG_DM_SPI_FLASH=y
 CONFIG_DEFAULT_DEVICE_TREE="fsl-ls2080a-rdb"
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="SYS_FSL_DDR4, LS2080A"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_OF_CONTROL=y
 CONFIG_NET_RANDOM_ETHADDR=y
diff --git a/configs/ls2080ardb_nand_defconfig b/configs/ls2080ardb_nand_defconfig
index be53cf8..6c3e419 100644
--- a/configs/ls2080ardb_nand_defconfig
+++ b/configs/ls2080ardb_nand_defconfig
@@ -1,7 +1,9 @@
 CONFIG_ARM=y
 CONFIG_TARGET_LS2080ARDB=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="SYS_FSL_DDR4, NAND, LS2080A"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_NETDEVICES=y
diff --git a/configs/ls2085a_emu_defconfig b/configs/ls2085a_emu_defconfig
index a7ab1a4..9af6765 100644
--- a/configs/ls2085a_emu_defconfig
+++ b/configs/ls2085a_emu_defconfig
@@ -1,6 +1,8 @@
 CONFIG_ARM=y
 CONFIG_TARGET_LS2080A_EMU=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="EMU,SYS_FSL_DDR4, LS2085A"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_CONSOLE is not set
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_XIMG is not set
diff --git a/configs/ls2085a_simu_defconfig b/configs/ls2085a_simu_defconfig
index 577fca0..721c61a 100644
--- a/configs/ls2085a_simu_defconfig
+++ b/configs/ls2085a_simu_defconfig
@@ -1,6 +1,8 @@
 CONFIG_ARM=y
 CONFIG_TARGET_LS2080A_SIMU=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="SIMU, LS2085A"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_CONSOLE is not set
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_XIMG is not set
diff --git a/configs/ls2085aqds_defconfig b/configs/ls2085aqds_defconfig
index b4a1d8c..359b7ff 100644
--- a/configs/ls2085aqds_defconfig
+++ b/configs/ls2085aqds_defconfig
@@ -4,7 +4,9 @@ CONFIG_TARGET_LS2080AQDS=y
 CONFIG_DM_SPI=y
 CONFIG_DM_SPI_FLASH=y
 CONFIG_DEFAULT_DEVICE_TREE="fsl-ls2080a-qds"
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="SYS_FSL_DDR4, LS2085A"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_OF_CONTROL=y
 CONFIG_NET_RANDOM_ETHADDR=y
diff --git a/configs/ls2085aqds_nand_defconfig b/configs/ls2085aqds_nand_defconfig
index 9cdf118..c653e6f 100644
--- a/configs/ls2085aqds_nand_defconfig
+++ b/configs/ls2085aqds_nand_defconfig
@@ -1,7 +1,9 @@
 CONFIG_ARM=y
 CONFIG_TARGET_LS2080AQDS=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="SYS_FSL_DDR4,NAND,LS2085A"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_NETDEVICES=y
diff --git a/configs/ls2085ardb_defconfig b/configs/ls2085ardb_defconfig
index 0f514ca..6273647 100644
--- a/configs/ls2085ardb_defconfig
+++ b/configs/ls2085ardb_defconfig
@@ -4,7 +4,9 @@ CONFIG_TARGET_LS2080ARDB=y
 CONFIG_DM_SPI=y
 CONFIG_DM_SPI_FLASH=y
 CONFIG_DEFAULT_DEVICE_TREE="fsl-ls2080a-rdb"
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="SYS_FSL_DDR4, LS2085A"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_OF_CONTROL=y
 CONFIG_NET_RANDOM_ETHADDR=y
diff --git a/configs/ls2085ardb_nand_defconfig b/configs/ls2085ardb_nand_defconfig
index 93b810b..e2e4e02 100644
--- a/configs/ls2085ardb_nand_defconfig
+++ b/configs/ls2085ardb_nand_defconfig
@@ -1,7 +1,9 @@
 CONFIG_ARM=y
 CONFIG_TARGET_LS2080ARDB=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="SYS_FSL_DDR4,NAND,LS2085A"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_NETDEVICES=y
diff --git a/configs/luan_defconfig b/configs/luan_defconfig
index d03bbb9..6995819 100644
--- a/configs/luan_defconfig
+++ b/configs/luan_defconfig
@@ -1,5 +1,6 @@
 CONFIG_PPC=y
 CONFIG_4xx=y
 CONFIG_TARGET_LUAN=y
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/lwmon5_defconfig b/configs/lwmon5_defconfig
index 7a2795e..b317937 100644
--- a/configs/lwmon5_defconfig
+++ b/configs/lwmon5_defconfig
@@ -1,6 +1,8 @@
 CONFIG_PPC=y
 CONFIG_4xx=y
 CONFIG_TARGET_LWMON5=y
+CONFIG_FIT=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/m28evk_defconfig b/configs/m28evk_defconfig
index e555970..b587617 100644
--- a/configs/m28evk_defconfig
+++ b/configs/m28evk_defconfig
@@ -1,6 +1,7 @@
 CONFIG_ARM=y
 CONFIG_TARGET_M28EVK=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 CONFIG_CMD_GPIO=y
diff --git a/configs/m53evk_defconfig b/configs/m53evk_defconfig
index a830691..4e0368b 100644
--- a/configs/m53evk_defconfig
+++ b/configs/m53evk_defconfig
@@ -1,6 +1,7 @@
 CONFIG_ARM=y
 CONFIG_TARGET_M53EVK=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/denx/m53evk/imximage.cfg"
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
diff --git a/configs/makalu_defconfig b/configs/makalu_defconfig
index 607c730..79c13cf 100644
--- a/configs/makalu_defconfig
+++ b/configs/makalu_defconfig
@@ -1,5 +1,6 @@
 CONFIG_PPC=y
 CONFIG_4xx=y
 CONFIG_TARGET_MAKALU=y
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/mcx_defconfig b/configs/mcx_defconfig
index 602c7d0..a25ffcf 100644
--- a/configs/mcx_defconfig
+++ b/configs/mcx_defconfig
@@ -2,6 +2,7 @@ CONFIG_ARM=y
 CONFIG_OMAP34XX=y
 CONFIG_TARGET_MCX=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_PROMPT="mcx # "
 # CONFIG_CMD_IMI is not set
 # CONFIG_CMD_IMLS is not set
diff --git a/configs/mecp5123_defconfig b/configs/mecp5123_defconfig
index 30d6e26..86d7c3f 100644
--- a/configs/mecp5123_defconfig
+++ b/configs/mecp5123_defconfig
@@ -1,5 +1,6 @@
 CONFIG_PPC=y
 CONFIG_MPC512X=y
 CONFIG_TARGET_MECP5123=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_OF_LIBFDT=y
diff --git a/configs/medcom-wide_defconfig b/configs/medcom-wide_defconfig
index 6c9e41a..36fb033 100644
--- a/configs/medcom-wide_defconfig
+++ b/configs/medcom-wide_defconfig
@@ -4,6 +4,8 @@ CONFIG_SPL_DM=y
 CONFIG_TEGRA20=y
 CONFIG_TARGET_MEDCOM_WIDE=y
 CONFIG_DEFAULT_DEVICE_TREE="tegra20-medcom-wide"
+CONFIG_FIT=y
+CONFIG_OF_SYSTEM_SETUP=y
 CONFIG_SYS_PROMPT="Tegra20 (Medcom-Wide) # "
 # CONFIG_CMD_IMI is not set
 # CONFIG_CMD_IMLS is not set
diff --git a/configs/meesc_dataflash_defconfig b/configs/meesc_dataflash_defconfig
index 812cc04..f207428 100644
--- a/configs/meesc_dataflash_defconfig
+++ b/configs/meesc_dataflash_defconfig
@@ -1,6 +1,7 @@
 CONFIG_ARM=y
 CONFIG_ARCH_AT91=y
 CONFIG_TARGET_MEESC=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9263,SYS_USE_DATAFLASH"
 # CONFIG_CMD_BDI is not set
 # CONFIG_CMD_IMLS is not set
diff --git a/configs/meesc_defconfig b/configs/meesc_defconfig
index b63712d..8931357 100644
--- a/configs/meesc_defconfig
+++ b/configs/meesc_defconfig
@@ -1,6 +1,7 @@
 CONFIG_ARM=y
 CONFIG_ARCH_AT91=y
 CONFIG_TARGET_MEESC=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9263,SYS_USE_NANDFLASH"
 # CONFIG_CMD_BDI is not set
 # CONFIG_CMD_IMLS is not set
diff --git a/configs/mgcoge3ne_defconfig b/configs/mgcoge3ne_defconfig
index 4ec6910..5cc142a 100644
--- a/configs/mgcoge3ne_defconfig
+++ b/configs/mgcoge3ne_defconfig
@@ -1,5 +1,7 @@
 CONFIG_PPC=y
 CONFIG_MPC8260=y
 CONFIG_TARGET_KM82XX=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="MGCOGE3NE"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/mgcoge_defconfig b/configs/mgcoge_defconfig
index 8c57b6c..1c44995 100644
--- a/configs/mgcoge_defconfig
+++ b/configs/mgcoge_defconfig
@@ -1,5 +1,7 @@
 CONFIG_PPC=y
 CONFIG_MPC8260=y
 CONFIG_TARGET_KM82XX=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="MGCOGE"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/microblaze-generic_defconfig b/configs/microblaze-generic_defconfig
index ed336e6..8a08791 100644
--- a/configs/microblaze-generic_defconfig
+++ b/configs/microblaze-generic_defconfig
@@ -4,6 +4,7 @@ CONFIG_TARGET_MICROBLAZE_GENERIC=y
 CONFIG_SYS_TEXT_BASE=0x29000000
 CONFIG_DEFAULT_DEVICE_TREE="microblaze-generic"
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_PROMPT="U-Boot-mONStR> "
 CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
diff --git a/configs/minnowmax_defconfig b/configs/minnowmax_defconfig
index 5d5579a..cb2f3c2 100644
--- a/configs/minnowmax_defconfig
+++ b/configs/minnowmax_defconfig
@@ -8,6 +8,7 @@ CONFIG_SMP=y
 CONFIG_HAVE_VGA_BIOS=y
 CONFIG_GENERATE_PIRQ_TABLE=y
 CONFIG_GENERATE_MP_TABLE=y
+CONFIG_FIT=y
 CONFIG_BOOTSTAGE=y
 CONFIG_BOOTSTAGE_REPORT=y
 CONFIG_CMD_CPU=y
diff --git a/configs/mixtile_loftq_defconfig b/configs/mixtile_loftq_defconfig
index 07865d8..ac0530b 100644
--- a/configs/mixtile_loftq_defconfig
+++ b/configs/mixtile_loftq_defconfig
@@ -9,6 +9,7 @@ CONFIG_DEFAULT_DEVICE_TREE="sun6i-a31-mixtile-loftq"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC,RGMII,MACPWR=SUNXI_GPA(21)"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/mk802_a10s_defconfig b/configs/mk802_a10s_defconfig
index 03e58cd..316b7e8 100644
--- a/configs/mk802_a10s_defconfig
+++ b/configs/mk802_a10s_defconfig
@@ -7,6 +7,7 @@ CONFIG_USB1_VBUS_PIN="PB10"
 CONFIG_DEFAULT_DEVICE_TREE="sun5i-a10s-mk802"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/mk802_defconfig b/configs/mk802_defconfig
index 922f8c3..fbb2c73 100644
--- a/configs/mk802_defconfig
+++ b/configs/mk802_defconfig
@@ -6,6 +6,7 @@ CONFIG_DEFAULT_DEVICE_TREE="sun4i-a10-mk802"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="USB_EHCI"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/mk802ii_defconfig b/configs/mk802ii_defconfig
index 2a359be..6636e7f 100644
--- a/configs/mk802ii_defconfig
+++ b/configs/mk802ii_defconfig
@@ -4,6 +4,7 @@ CONFIG_MACH_SUN4I=y
 CONFIG_DEFAULT_DEVICE_TREE="sun4i-a10-mk802ii"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/motionpro_defconfig b/configs/motionpro_defconfig
index 7df993c..ea2b28a 100644
--- a/configs/motionpro_defconfig
+++ b/configs/motionpro_defconfig
@@ -1,6 +1,7 @@
 CONFIG_PPC=y
 CONFIG_MPC5xxx=y
 CONFIG_TARGET_MOTIONPRO=y
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_AUTOBOOT_KEYED=y
 CONFIG_AUTOBOOT_PROMPT="Autobooting in %d seconds, press \"<Esc><Esc>\" to stop\n"
 CONFIG_AUTOBOOT_STOP_STR="\x1b\x1b"
diff --git a/configs/mpc5121ads_defconfig b/configs/mpc5121ads_defconfig
index 8f4c1e8..865b97b 100644
--- a/configs/mpc5121ads_defconfig
+++ b/configs/mpc5121ads_defconfig
@@ -1,5 +1,6 @@
 CONFIG_PPC=y
 CONFIG_MPC512X=y
 CONFIG_TARGET_MPC5121ADS=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_OF_LIBFDT=y
diff --git a/configs/mpc5121ads_rev2_defconfig b/configs/mpc5121ads_rev2_defconfig
index b26f6dd..803f304 100644
--- a/configs/mpc5121ads_rev2_defconfig
+++ b/configs/mpc5121ads_rev2_defconfig
@@ -2,5 +2,6 @@ CONFIG_PPC=y
 CONFIG_MPC512X=y
 CONFIG_TARGET_MPC5121ADS=y
 CONFIG_SYS_EXTRA_OPTIONS="MPC5121ADS_REV2"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_OF_LIBFDT=y
diff --git a/configs/mpc8308_p1m_defconfig b/configs/mpc8308_p1m_defconfig
index ee06044..02b1920 100644
--- a/configs/mpc8308_p1m_defconfig
+++ b/configs/mpc8308_p1m_defconfig
@@ -1,6 +1,7 @@
 CONFIG_PPC=y
 CONFIG_MPC83xx=y
 CONFIG_TARGET_MPC8308_P1M=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/mt_ventoux_defconfig b/configs/mt_ventoux_defconfig
index 338df22..c537440 100644
--- a/configs/mt_ventoux_defconfig
+++ b/configs/mt_ventoux_defconfig
@@ -2,6 +2,7 @@ CONFIG_ARM=y
 CONFIG_OMAP34XX=y
 CONFIG_TARGET_MT_VENTOUX=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_PROMPT="mt_ventoux => "
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
diff --git a/configs/munices_defconfig b/configs/munices_defconfig
index 0496b81..f490eab 100644
--- a/configs/munices_defconfig
+++ b/configs/munices_defconfig
@@ -1,5 +1,6 @@
 CONFIG_PPC=y
 CONFIG_MPC5xxx=y
 CONFIG_TARGET_MUNICES=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_OF_LIBFDT=y
diff --git a/configs/neo_defconfig b/configs/neo_defconfig
index 434fe8f..069db3a 100644
--- a/configs/neo_defconfig
+++ b/configs/neo_defconfig
@@ -1,6 +1,8 @@
 CONFIG_PPC=y
 CONFIG_4xx=y
 CONFIG_TARGET_NEO=y
+CONFIG_FIT=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_ELF is not set
 # CONFIG_CMD_NFS is not set
 CONFIG_SYS_NS16550=y
diff --git a/configs/novena_defconfig b/configs/novena_defconfig
index 148d693..9217823 100644
--- a/configs/novena_defconfig
+++ b/configs/novena_defconfig
@@ -2,6 +2,7 @@ CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
 CONFIG_TARGET_KOSAGI_NOVENA=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/imx-common/spl_sd.cfg,MX6Q"
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
diff --git a/configs/nyan-big_defconfig b/configs/nyan-big_defconfig
index ca0f9e0..168c716 100644
--- a/configs/nyan-big_defconfig
+++ b/configs/nyan-big_defconfig
@@ -4,6 +4,8 @@ CONFIG_SPL_DM=y
 CONFIG_TEGRA124=y
 CONFIG_TARGET_NYAN_BIG=y
 CONFIG_DEFAULT_DEVICE_TREE="tegra124-nyan-big"
+CONFIG_FIT=y
+CONFIG_OF_SYSTEM_SETUP=y
 CONFIG_SYS_PROMPT="Tegra124 (Nyan-big) # "
 # CONFIG_CMD_IMI is not set
 # CONFIG_CMD_IMLS is not set
diff --git a/configs/odroid-xu3_defconfig b/configs/odroid-xu3_defconfig
index e563843..7827f91 100644
--- a/configs/odroid-xu3_defconfig
+++ b/configs/odroid-xu3_defconfig
@@ -4,6 +4,7 @@ CONFIG_TARGET_ODROID_XU3=y
 CONFIG_DM_I2C=y
 CONFIG_DEFAULT_DEVICE_TREE="exynos5422-odroidxu3"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_FIT=y
 CONFIG_SYS_PROMPT="ODROID-XU3 # "
 # CONFIG_CMD_IMLS is not set
 CONFIG_CMD_GPIO=y
diff --git a/configs/odroid_defconfig b/configs/odroid_defconfig
index 2c4959b..7738fe8 100644
--- a/configs/odroid_defconfig
+++ b/configs/odroid_defconfig
@@ -4,6 +4,7 @@ CONFIG_TARGET_ODROID=y
 CONFIG_DM_I2C=y
 CONFIG_DEFAULT_DEVICE_TREE="exynos4412-odroid"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_FIT=y
 CONFIG_SYS_PROMPT="Odroid # "
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_XIMG is not set
diff --git a/configs/p2371-0000_defconfig b/configs/p2371-0000_defconfig
index a7315ce..6282acf 100644
--- a/configs/p2371-0000_defconfig
+++ b/configs/p2371-0000_defconfig
@@ -3,6 +3,7 @@ CONFIG_TEGRA=y
 CONFIG_TEGRA210=y
 CONFIG_TARGET_P2371_0000=y
 CONFIG_DEFAULT_DEVICE_TREE="tegra210-p2371-0000"
+CONFIG_OF_SYSTEM_SETUP=y
 CONFIG_SYS_PROMPT="Tegra210 (P2371-0000) # "
 # CONFIG_CMD_IMI is not set
 # CONFIG_CMD_IMLS is not set
diff --git a/configs/p2371-2180_defconfig b/configs/p2371-2180_defconfig
index 5e5139b..392c539 100644
--- a/configs/p2371-2180_defconfig
+++ b/configs/p2371-2180_defconfig
@@ -3,6 +3,7 @@ CONFIG_TEGRA=y
 CONFIG_TEGRA210=y
 CONFIG_TARGET_P2371_2180=y
 CONFIG_DEFAULT_DEVICE_TREE="tegra210-p2371-2180"
+CONFIG_OF_SYSTEM_SETUP=y
 CONFIG_SYS_PROMPT="Tegra210 (P2371-2180) # "
 # CONFIG_CMD_IMI is not set
 # CONFIG_CMD_IMLS is not set
diff --git a/configs/p2571_defconfig b/configs/p2571_defconfig
index e6de2da..04df7e9 100644
--- a/configs/p2571_defconfig
+++ b/configs/p2571_defconfig
@@ -3,6 +3,7 @@ CONFIG_TEGRA=y
 CONFIG_TEGRA210=y
 CONFIG_TARGET_P2571=y
 CONFIG_DEFAULT_DEVICE_TREE="tegra210-p2571"
+CONFIG_OF_SYSTEM_SETUP=y
 CONFIG_SYS_PROMPT="Tegra210 (P2571) # "
 # CONFIG_CMD_IMI is not set
 # CONFIG_CMD_IMLS is not set
diff --git a/configs/paz00_defconfig b/configs/paz00_defconfig
index 9d7350a..7e0683e 100644
--- a/configs/paz00_defconfig
+++ b/configs/paz00_defconfig
@@ -4,6 +4,7 @@ CONFIG_SPL_DM=y
 CONFIG_TEGRA20=y
 CONFIG_TARGET_PAZ00=y
 CONFIG_DEFAULT_DEVICE_TREE="tegra20-paz00"
+CONFIG_OF_SYSTEM_SETUP=y
 CONFIG_SYS_PROMPT="Tegra20 (Paz00) MOD # "
 # CONFIG_CMD_IMI is not set
 # CONFIG_CMD_IMLS is not set
diff --git a/configs/pcm030_LOWBOOT_defconfig b/configs/pcm030_LOWBOOT_defconfig
index 4397d42..ef19516 100644
--- a/configs/pcm030_LOWBOOT_defconfig
+++ b/configs/pcm030_LOWBOOT_defconfig
@@ -2,5 +2,6 @@ CONFIG_PPC=y
 CONFIG_MPC5xxx=y
 CONFIG_TARGET_PCM030=y
 CONFIG_SYS_EXTRA_OPTIONS="SYS_TEXT_BASE=0xFF000000"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_OF_LIBFDT=y
diff --git a/configs/pcm030_defconfig b/configs/pcm030_defconfig
index e72a9c6..7ee7658 100644
--- a/configs/pcm030_defconfig
+++ b/configs/pcm030_defconfig
@@ -1,6 +1,7 @@
 CONFIG_PPC=y
 CONFIG_MPC5xxx=y
 CONFIG_TARGET_PCM030=y
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SYS_PROMPT="uboot> "
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_OF_LIBFDT=y
diff --git a/configs/pdm360ng_defconfig b/configs/pdm360ng_defconfig
index 560e9e4..46342b8 100644
--- a/configs/pdm360ng_defconfig
+++ b/configs/pdm360ng_defconfig
@@ -1,5 +1,7 @@
 CONFIG_PPC=y
 CONFIG_MPC512X=y
 CONFIG_TARGET_PDM360NG=y
+CONFIG_FIT=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_OF_LIBFDT=y
diff --git a/configs/peach-pi_defconfig b/configs/peach-pi_defconfig
index 65c6044..bb9e1fc 100644
--- a/configs/peach-pi_defconfig
+++ b/configs/peach-pi_defconfig
@@ -4,6 +4,7 @@ CONFIG_TARGET_PEACH_PI=y
 CONFIG_DM_I2C=y
 CONFIG_DEFAULT_DEVICE_TREE="exynos5800-peach-pi"
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_PROMPT="Peach-Pi # "
 # CONFIG_CMD_IMLS is not set
 CONFIG_CMD_GPIO=y
diff --git a/configs/peach-pit_defconfig b/configs/peach-pit_defconfig
index 272988f..95b7c21 100644
--- a/configs/peach-pit_defconfig
+++ b/configs/peach-pit_defconfig
@@ -4,6 +4,7 @@ CONFIG_TARGET_PEACH_PIT=y
 CONFIG_DM_I2C=y
 CONFIG_DEFAULT_DEVICE_TREE="exynos5420-peach-pit"
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_PROMPT="Peach-Pit # "
 # CONFIG_CMD_IMLS is not set
 CONFIG_CMD_GPIO=y
diff --git a/configs/plutux_defconfig b/configs/plutux_defconfig
index c2c4638..85fe61d 100644
--- a/configs/plutux_defconfig
+++ b/configs/plutux_defconfig
@@ -4,6 +4,8 @@ CONFIG_SPL_DM=y
 CONFIG_TEGRA20=y
 CONFIG_TARGET_PLUTUX=y
 CONFIG_DEFAULT_DEVICE_TREE="tegra20-plutux"
+CONFIG_FIT=y
+CONFIG_OF_SYSTEM_SETUP=y
 CONFIG_SYS_PROMPT="Tegra20 (Plutux) # "
 # CONFIG_CMD_IMI is not set
 # CONFIG_CMD_IMLS is not set
diff --git a/configs/pov_protab2_ips9_defconfig b/configs/pov_protab2_ips9_defconfig
index d9b3b45..99884ed 100644
--- a/configs/pov_protab2_ips9_defconfig
+++ b/configs/pov_protab2_ips9_defconfig
@@ -14,6 +14,7 @@ CONFIG_VIDEO_LCD_PANEL_LVDS=y
 CONFIG_DEFAULT_DEVICE_TREE="sun4i-a10-pov-protab2-ips9"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/pxm2_defconfig b/configs/pxm2_defconfig
index 8e86e1d..5b32bb1 100644
--- a/configs/pxm2_defconfig
+++ b/configs/pxm2_defconfig
@@ -1,6 +1,7 @@
 CONFIG_ARM=y
 CONFIG_TARGET_PXM2=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_PROMPT="U-Boot# "
 CONFIG_AUTOBOOT_KEYED=y
 CONFIG_AUTOBOOT_PROMPT="Autobooting in %d seconds, press \"<Esc><Esc>\" to stop\n"
diff --git a/configs/q8_a13_tablet_defconfig b/configs/q8_a13_tablet_defconfig
index 205359e..b8aa994 100644
--- a/configs/q8_a13_tablet_defconfig
+++ b/configs/q8_a13_tablet_defconfig
@@ -16,6 +16,7 @@ CONFIG_DEFAULT_DEVICE_TREE="sun5i-a13-q8-tablet"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="CONS_INDEX=2"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/q8_a23_tablet_800x480_defconfig b/configs/q8_a23_tablet_800x480_defconfig
index 927ab2a..b69ee57 100644
--- a/configs/q8_a23_tablet_800x480_defconfig
+++ b/configs/q8_a23_tablet_800x480_defconfig
@@ -17,6 +17,7 @@ CONFIG_DEFAULT_DEVICE_TREE="sun8i-a23-q8-tablet"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="CONS_INDEX=5"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/q8_a33_tablet_1024x600_defconfig b/configs/q8_a33_tablet_1024x600_defconfig
index 755f4ee..a43157a 100644
--- a/configs/q8_a33_tablet_1024x600_defconfig
+++ b/configs/q8_a33_tablet_1024x600_defconfig
@@ -17,6 +17,7 @@ CONFIG_DEFAULT_DEVICE_TREE="sun8i-a33-q8-tablet"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="CONS_INDEX=5"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/q8_a33_tablet_800x480_defconfig b/configs/q8_a33_tablet_800x480_defconfig
index a8dfa0d..ec8deb6 100644
--- a/configs/q8_a33_tablet_800x480_defconfig
+++ b/configs/q8_a33_tablet_800x480_defconfig
@@ -17,6 +17,7 @@ CONFIG_DEFAULT_DEVICE_TREE="sun8i-a33-q8-tablet"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="CONS_INDEX=5"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/qemu-ppce500_defconfig b/configs/qemu-ppce500_defconfig
index 6b5619c..7bbe34b 100644
--- a/configs/qemu-ppce500_defconfig
+++ b/configs/qemu-ppce500_defconfig
@@ -1,6 +1,8 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_QEMU_PPCE500=y
+CONFIG_FIT=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 CONFIG_NETDEVICES=y
diff --git a/configs/qemu-x86_defconfig b/configs/qemu-x86_defconfig
index e653e64..29150ef 100644
--- a/configs/qemu-x86_defconfig
+++ b/configs/qemu-x86_defconfig
@@ -4,6 +4,7 @@ CONFIG_SMP=y
 CONFIG_MAX_CPUS=2
 CONFIG_GENERATE_PIRQ_TABLE=y
 CONFIG_GENERATE_MP_TABLE=y
+CONFIG_FIT=y
 CONFIG_BOOTSTAGE=y
 CONFIG_BOOTSTAGE_REPORT=y
 CONFIG_CMD_CPU=y
diff --git a/configs/r7-tv-dongle_defconfig b/configs/r7-tv-dongle_defconfig
index d6387fc..edbf2ea 100644
--- a/configs/r7-tv-dongle_defconfig
+++ b/configs/r7-tv-dongle_defconfig
@@ -6,6 +6,7 @@ CONFIG_USB1_VBUS_PIN="PG13"
 CONFIG_DEFAULT_DEVICE_TREE="sun5i-a10s-r7-tv-dongle"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/rainier_defconfig b/configs/rainier_defconfig
index 6817023..afa7404 100644
--- a/configs/rainier_defconfig
+++ b/configs/rainier_defconfig
@@ -2,5 +2,6 @@ CONFIG_PPC=y
 CONFIG_4xx=y
 CONFIG_TARGET_SEQUOIA=y
 CONFIG_SYS_EXTRA_OPTIONS="RAINIER"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/rainier_ramboot_defconfig b/configs/rainier_ramboot_defconfig
index dcd68fd..3e07ec2 100644
--- a/configs/rainier_ramboot_defconfig
+++ b/configs/rainier_ramboot_defconfig
@@ -2,5 +2,6 @@ CONFIG_PPC=y
 CONFIG_4xx=y
 CONFIG_TARGET_SEQUOIA=y
 CONFIG_SYS_EXTRA_OPTIONS="RAINIER,SYS_RAMBOOT,SYS_TEXT_BASE=0x01000000,SYS_LDSCRIPT=board/amcc/sequoia/u-boot-ram.lds"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/redwood_defconfig b/configs/redwood_defconfig
index dbd652b..ef83153 100644
--- a/configs/redwood_defconfig
+++ b/configs/redwood_defconfig
@@ -1,5 +1,6 @@
 CONFIG_PPC=y
 CONFIG_4xx=y
 CONFIG_TARGET_REDWOOD=y
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/rpi_2_defconfig b/configs/rpi_2_defconfig
index b80ac16..ff515fd 100644
--- a/configs/rpi_2_defconfig
+++ b/configs/rpi_2_defconfig
@@ -1,6 +1,7 @@
 CONFIG_ARM=y
 CONFIG_ARCH_BCM283X=y
 CONFIG_TARGET_RPI_2=y
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SYS_PROMPT="U-Boot> "
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
diff --git a/configs/rpi_defconfig b/configs/rpi_defconfig
index 7fc8bbc..e343c66 100644
--- a/configs/rpi_defconfig
+++ b/configs/rpi_defconfig
@@ -1,6 +1,7 @@
 CONFIG_ARM=y
 CONFIG_ARCH_BCM283X=y
 CONFIG_TARGET_RPI=y
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SYS_PROMPT="U-Boot> "
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
diff --git a/configs/rut_defconfig b/configs/rut_defconfig
index 647088e..7a4011e 100644
--- a/configs/rut_defconfig
+++ b/configs/rut_defconfig
@@ -1,6 +1,7 @@
 CONFIG_ARM=y
 CONFIG_TARGET_RUT=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_PROMPT="U-Boot# "
 CONFIG_AUTOBOOT_KEYED=y
 CONFIG_AUTOBOOT_PROMPT="Autobooting in %d seconds, press \"<Esc><Esc>\" to stop\n"
diff --git a/configs/sbc8349_PCI_33_defconfig b/configs/sbc8349_PCI_33_defconfig
index f78d205..55abbfe 100644
--- a/configs/sbc8349_PCI_33_defconfig
+++ b/configs/sbc8349_PCI_33_defconfig
@@ -2,6 +2,7 @@ CONFIG_PPC=y
 CONFIG_MPC83xx=y
 CONFIG_TARGET_SBC8349=y
 CONFIG_SYS_EXTRA_OPTIONS="PCI,PCI_33M"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/sbc8349_PCI_66_defconfig b/configs/sbc8349_PCI_66_defconfig
index 4d3cd50..2be66c6 100644
--- a/configs/sbc8349_PCI_66_defconfig
+++ b/configs/sbc8349_PCI_66_defconfig
@@ -2,6 +2,7 @@ CONFIG_PPC=y
 CONFIG_MPC83xx=y
 CONFIG_TARGET_SBC8349=y
 CONFIG_SYS_EXTRA_OPTIONS="PCI,PCI_66M"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/sbc8349_defconfig b/configs/sbc8349_defconfig
index 9bb1f6a..5441215 100644
--- a/configs/sbc8349_defconfig
+++ b/configs/sbc8349_defconfig
@@ -1,6 +1,7 @@
 CONFIG_PPC=y
 CONFIG_MPC83xx=y
 CONFIG_TARGET_SBC8349=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/sbc8548_PCI_33_PCIE_defconfig b/configs/sbc8548_PCI_33_PCIE_defconfig
index da8e71b..71092d0 100644
--- a/configs/sbc8548_PCI_33_PCIE_defconfig
+++ b/configs/sbc8548_PCI_33_PCIE_defconfig
@@ -2,6 +2,7 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_SBC8548=y
 CONFIG_SYS_EXTRA_OPTIONS="PCI,33,PCIE"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/sbc8548_PCI_33_defconfig b/configs/sbc8548_PCI_33_defconfig
index 4790f72..5af4d23 100644
--- a/configs/sbc8548_PCI_33_defconfig
+++ b/configs/sbc8548_PCI_33_defconfig
@@ -2,6 +2,7 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_SBC8548=y
 CONFIG_SYS_EXTRA_OPTIONS="PCI,33"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/sbc8548_PCI_66_PCIE_defconfig b/configs/sbc8548_PCI_66_PCIE_defconfig
index 09d3112..6f89975 100644
--- a/configs/sbc8548_PCI_66_PCIE_defconfig
+++ b/configs/sbc8548_PCI_66_PCIE_defconfig
@@ -2,6 +2,7 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_SBC8548=y
 CONFIG_SYS_EXTRA_OPTIONS="PCI,66,PCIE"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/sbc8548_PCI_66_defconfig b/configs/sbc8548_PCI_66_defconfig
index 7b5a110..3a3411f 100644
--- a/configs/sbc8548_PCI_66_defconfig
+++ b/configs/sbc8548_PCI_66_defconfig
@@ -2,6 +2,7 @@ CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_SBC8548=y
 CONFIG_SYS_EXTRA_OPTIONS="PCI,66"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/sbc8548_defconfig b/configs/sbc8548_defconfig
index 7220a0c..b55d1cf 100644
--- a/configs/sbc8548_defconfig
+++ b/configs/sbc8548_defconfig
@@ -1,6 +1,7 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_SBC8548=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/sbc8641d_defconfig b/configs/sbc8641d_defconfig
index 6b19fc7..f0138ea 100644
--- a/configs/sbc8641d_defconfig
+++ b/configs/sbc8641d_defconfig
@@ -1,6 +1,7 @@
 CONFIG_PPC=y
 CONFIG_MPC86xx=y
 CONFIG_TARGET_SBC8641D=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/seaboard_defconfig b/configs/seaboard_defconfig
index ad16a10..3fb1085 100644
--- a/configs/seaboard_defconfig
+++ b/configs/seaboard_defconfig
@@ -4,6 +4,7 @@ CONFIG_SPL_DM=y
 CONFIG_TEGRA20=y
 CONFIG_TARGET_SEABOARD=y
 CONFIG_DEFAULT_DEVICE_TREE="tegra20-seaboard"
+CONFIG_OF_SYSTEM_SETUP=y
 CONFIG_SYS_PROMPT="Tegra20 (SeaBoard) # "
 # CONFIG_CMD_IMI is not set
 # CONFIG_CMD_IMLS is not set
diff --git a/configs/sequoia_defconfig b/configs/sequoia_defconfig
index 9085405..1d5498b 100644
--- a/configs/sequoia_defconfig
+++ b/configs/sequoia_defconfig
@@ -2,5 +2,6 @@ CONFIG_PPC=y
 CONFIG_4xx=y
 CONFIG_TARGET_SEQUOIA=y
 CONFIG_SYS_EXTRA_OPTIONS="SEQUOIA"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/sequoia_ramboot_defconfig b/configs/sequoia_ramboot_defconfig
index c9fc855..d0d3e94 100644
--- a/configs/sequoia_ramboot_defconfig
+++ b/configs/sequoia_ramboot_defconfig
@@ -2,5 +2,6 @@ CONFIG_PPC=y
 CONFIG_4xx=y
 CONFIG_TARGET_SEQUOIA=y
 CONFIG_SYS_EXTRA_OPTIONS="SEQUOIA,SYS_RAMBOOT,SYS_TEXT_BASE=0x01000000,SYS_LDSCRIPT=board/amcc/sequoia/u-boot-ram.lds"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/smartweb_defconfig b/configs/smartweb_defconfig
index d1127b0..7dd2192 100644
--- a/configs/smartweb_defconfig
+++ b/configs/smartweb_defconfig
@@ -2,6 +2,7 @@ CONFIG_ARM=y
 CONFIG_ARCH_AT91=y
 CONFIG_TARGET_SMARTWEB=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9260"
 CONFIG_SYS_PROMPT="U-Boot> "
 CONFIG_OF_LIBFDT=y
diff --git a/configs/smdk5250_defconfig b/configs/smdk5250_defconfig
index b0dec29..e711a72 100644
--- a/configs/smdk5250_defconfig
+++ b/configs/smdk5250_defconfig
@@ -4,6 +4,7 @@ CONFIG_TARGET_SMDK5250=y
 CONFIG_DM_I2C=y
 CONFIG_DEFAULT_DEVICE_TREE="exynos5250-smdk5250"
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_PROMPT="SMDK5250 # "
 # CONFIG_CMD_IMLS is not set
 CONFIG_CMD_GPIO=y
diff --git a/configs/smdk5420_defconfig b/configs/smdk5420_defconfig
index 50148fc..1e849ad 100644
--- a/configs/smdk5420_defconfig
+++ b/configs/smdk5420_defconfig
@@ -4,6 +4,7 @@ CONFIG_TARGET_SMDK5420=y
 CONFIG_DM_I2C=y
 CONFIG_DEFAULT_DEVICE_TREE="exynos5420-smdk5420"
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_PROMPT="SMDK5420 # "
 # CONFIG_CMD_IMLS is not set
 CONFIG_CMD_GPIO=y
diff --git a/configs/snapper9260_defconfig b/configs/snapper9260_defconfig
index 83b52cf..9315b03 100644
--- a/configs/snapper9260_defconfig
+++ b/configs/snapper9260_defconfig
@@ -1,6 +1,7 @@
 CONFIG_ARM=y
 CONFIG_ARCH_AT91=y
 CONFIG_TARGET_SNAPPER9260=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9260"
 CONFIG_SYS_PROMPT="Snapper> "
 # CONFIG_CMD_BDI is not set
diff --git a/configs/snapper9g20_defconfig b/configs/snapper9g20_defconfig
index 37a3e64..9c24d79 100644
--- a/configs/snapper9g20_defconfig
+++ b/configs/snapper9g20_defconfig
@@ -1,6 +1,7 @@
 CONFIG_ARM=y
 CONFIG_ARCH_AT91=y
 CONFIG_TARGET_SNAPPER9260=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9G20"
 # CONFIG_CMD_BDI is not set
 # CONFIG_CMD_IMI is not set
diff --git a/configs/snow_defconfig b/configs/snow_defconfig
index 3d8081b..12ae8c9 100644
--- a/configs/snow_defconfig
+++ b/configs/snow_defconfig
@@ -4,6 +4,7 @@ CONFIG_TARGET_SNOW=y
 CONFIG_DM_I2C=y
 CONFIG_DEFAULT_DEVICE_TREE="exynos5250-snow"
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_PROMPT="snow # "
 # CONFIG_CMD_IMLS is not set
 CONFIG_CMD_GPIO=y
diff --git a/configs/socfpga_arria5_defconfig b/configs/socfpga_arria5_defconfig
index c969af4..7b60d95 100644
--- a/configs/socfpga_arria5_defconfig
+++ b/configs/socfpga_arria5_defconfig
@@ -8,6 +8,7 @@ CONFIG_SPL_STACK_R_ADDR=0x00800000
 CONFIG_DEFAULT_DEVICE_TREE="socfpga_arria5_socdk"
 CONFIG_SPL=y
 CONFIG_SPL_STACK_R=y
+CONFIG_FIT=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 CONFIG_CMD_GPIO=y
diff --git a/configs/socfpga_cyclone5_defconfig b/configs/socfpga_cyclone5_defconfig
index e77dc8f..6a487f4 100644
--- a/configs/socfpga_cyclone5_defconfig
+++ b/configs/socfpga_cyclone5_defconfig
@@ -8,6 +8,7 @@ CONFIG_SPL_STACK_R_ADDR=0x00800000
 CONFIG_DEFAULT_DEVICE_TREE="socfpga_cyclone5_socdk"
 CONFIG_SPL=y
 CONFIG_SPL_STACK_R=y
+CONFIG_FIT=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 CONFIG_CMD_GPIO=y
diff --git a/configs/socfpga_de0_nano_soc_defconfig b/configs/socfpga_de0_nano_soc_defconfig
index 9e85388..cfcae5d 100644
--- a/configs/socfpga_de0_nano_soc_defconfig
+++ b/configs/socfpga_de0_nano_soc_defconfig
@@ -8,6 +8,7 @@ CONFIG_SPL_STACK_R_ADDR=0x00800000
 CONFIG_DEFAULT_DEVICE_TREE="socfpga_cyclone5_de0_nano_soc"
 CONFIG_SPL=y
 CONFIG_SPL_STACK_R=y
+CONFIG_FIT=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 CONFIG_CMD_GPIO=y
diff --git a/configs/socfpga_mcvevk_defconfig b/configs/socfpga_mcvevk_defconfig
index 3ee2bab..b6f6a65 100644
--- a/configs/socfpga_mcvevk_defconfig
+++ b/configs/socfpga_mcvevk_defconfig
@@ -8,6 +8,7 @@ CONFIG_SPL_STACK_R_ADDR=0x00800000
 CONFIG_DEFAULT_DEVICE_TREE="socfpga_cyclone5_mcvevk"
 CONFIG_SPL=y
 CONFIG_SPL_STACK_R=y
+CONFIG_FIT=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 CONFIG_CMD_GPIO=y
diff --git a/configs/socfpga_sockit_defconfig b/configs/socfpga_sockit_defconfig
index 8cad409..f45c3ed 100644
--- a/configs/socfpga_sockit_defconfig
+++ b/configs/socfpga_sockit_defconfig
@@ -8,6 +8,7 @@ CONFIG_SPL_STACK_R_ADDR=0x00800000
 CONFIG_DEFAULT_DEVICE_TREE="socfpga_cyclone5_sockit"
 CONFIG_SPL=y
 CONFIG_SPL_STACK_R=y
+CONFIG_FIT=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 CONFIG_CMD_GPIO=y
diff --git a/configs/socfpga_socrates_defconfig b/configs/socfpga_socrates_defconfig
index 5b84cee..e25d09b 100644
--- a/configs/socfpga_socrates_defconfig
+++ b/configs/socfpga_socrates_defconfig
@@ -8,6 +8,7 @@ CONFIG_SPL_STACK_R_ADDR=0x00800000
 CONFIG_DEFAULT_DEVICE_TREE="socfpga_cyclone5_socrates"
 CONFIG_SPL=y
 CONFIG_SPL_STACK_R=y
+CONFIG_FIT=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 CONFIG_CMD_GPIO=y
diff --git a/configs/socfpga_sr1500_defconfig b/configs/socfpga_sr1500_defconfig
index 5181604..59a6be4 100644
--- a/configs/socfpga_sr1500_defconfig
+++ b/configs/socfpga_sr1500_defconfig
@@ -8,6 +8,7 @@ CONFIG_SPL_STACK_R_ADDR=0x00800000
 CONFIG_DEFAULT_DEVICE_TREE="socfpga_cyclone5_sr1500"
 CONFIG_SPL=y
 CONFIG_SPL_STACK_R=y
+CONFIG_FIT=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 CONFIG_SPL_DM_SEQ_ALIAS=y
diff --git a/configs/socrates_defconfig b/configs/socrates_defconfig
index 39e7ffb..9f2a83c 100644
--- a/configs/socrates_defconfig
+++ b/configs/socrates_defconfig
@@ -1,6 +1,8 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_SOCRATES=y
+CONFIG_FIT=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 # CONFIG_CMD_NFS is not set
 CONFIG_SYS_NS16550=y
diff --git a/configs/spring_defconfig b/configs/spring_defconfig
index 11cb6e3..4c485a7 100644
--- a/configs/spring_defconfig
+++ b/configs/spring_defconfig
@@ -4,6 +4,7 @@ CONFIG_TARGET_SPRING=y
 CONFIG_DM_I2C=y
 CONFIG_DEFAULT_DEVICE_TREE="exynos5250-spring"
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_PROMPT="spring # "
 # CONFIG_CMD_IMLS is not set
 CONFIG_CMD_GPIO=y
diff --git a/configs/strider_con_defconfig b/configs/strider_con_defconfig
index 6369d97..402457f 100644
--- a/configs/strider_con_defconfig
+++ b/configs/strider_con_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC83xx=y
 CONFIG_TARGET_STRIDER=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="STRIDER_CON"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_AUTOBOOT_KEYED=y
 CONFIG_AUTOBOOT_STOP_STR=" "
 # CONFIG_CMD_SETEXPR is not set
diff --git a/configs/strider_cpu_defconfig b/configs/strider_cpu_defconfig
index 3ca0f30..570b5b8 100644
--- a/configs/strider_cpu_defconfig
+++ b/configs/strider_cpu_defconfig
@@ -1,7 +1,9 @@
 CONFIG_PPC=y
 CONFIG_MPC83xx=y
 CONFIG_TARGET_STRIDER=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="STRIDER_CPU"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_AUTOBOOT_KEYED=y
 CONFIG_AUTOBOOT_STOP_STR=" "
 # CONFIG_CMD_SETEXPR is not set
diff --git a/configs/sunxi_Gemei_G9_defconfig b/configs/sunxi_Gemei_G9_defconfig
index d3de194..7f737f2 100644
--- a/configs/sunxi_Gemei_G9_defconfig
+++ b/configs/sunxi_Gemei_G9_defconfig
@@ -11,6 +11,7 @@ CONFIG_VIDEO_LCD_PANEL_LVDS=y
 CONFIG_DEFAULT_DEVICE_TREE="sun4i-a10-gemei-g9"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
diff --git a/configs/suvd3_defconfig b/configs/suvd3_defconfig
index 737d0ee..9b0d2b1 100644
--- a/configs/suvd3_defconfig
+++ b/configs/suvd3_defconfig
@@ -2,5 +2,6 @@ CONFIG_PPC=y
 CONFIG_MPC83xx=y
 CONFIG_TARGET_SUVD3=y
 CONFIG_SYS_EXTRA_OPTIONS="SUVD3"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/sycamore_defconfig b/configs/sycamore_defconfig
index 2fb075d..fa495ba 100644
--- a/configs/sycamore_defconfig
+++ b/configs/sycamore_defconfig
@@ -1,5 +1,6 @@
 CONFIG_PPC=y
 CONFIG_4xx=y
 CONFIG_TARGET_WALNUT=y
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/t3corp_defconfig b/configs/t3corp_defconfig
index fe3e400..e9fe84d 100644
--- a/configs/t3corp_defconfig
+++ b/configs/t3corp_defconfig
@@ -1,5 +1,7 @@
 CONFIG_PPC=y
 CONFIG_4xx=y
 CONFIG_TARGET_T3CORP=y
+CONFIG_FIT=y
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/tbs2910_defconfig b/configs/tbs2910_defconfig
index 9693556..3cfa09a 100644
--- a/configs/tbs2910_defconfig
+++ b/configs/tbs2910_defconfig
@@ -1,6 +1,7 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
 CONFIG_TARGET_TBS2910=y
+CONFIG_FIT=y
 CONFIG_SYS_PROMPT="Matrix U-Boot> "
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
diff --git a/configs/tec-ng_defconfig b/configs/tec-ng_defconfig
index 3d10fd0..389603c 100644
--- a/configs/tec-ng_defconfig
+++ b/configs/tec-ng_defconfig
@@ -4,6 +4,8 @@ CONFIG_SPL_DM=y
 CONFIG_TEGRA30=y
 CONFIG_TARGET_TEC_NG=y
 CONFIG_DEFAULT_DEVICE_TREE="tegra30-tec-ng"
+CONFIG_FIT=y
+CONFIG_OF_SYSTEM_SETUP=y
 CONFIG_SYS_PROMPT="Tegra30 (TEC-NG) # "
 # CONFIG_CMD_IMI is not set
 # CONFIG_CMD_IMLS is not set
diff --git a/configs/tec_defconfig b/configs/tec_defconfig
index ea3c369..13994ad 100644
--- a/configs/tec_defconfig
+++ b/configs/tec_defconfig
@@ -4,6 +4,8 @@ CONFIG_SPL_DM=y
 CONFIG_TEGRA20=y
 CONFIG_TARGET_TEC=y
 CONFIG_DEFAULT_DEVICE_TREE="tegra20-tec"
+CONFIG_FIT=y
+CONFIG_OF_SYSTEM_SETUP=y
 CONFIG_SYS_PROMPT="Tegra20 (TEC) # "
 # CONFIG_CMD_IMI is not set
 # CONFIG_CMD_IMLS is not set
diff --git a/configs/tqma6q_mba6_mmc_defconfig b/configs/tqma6q_mba6_mmc_defconfig
index 500c96e..f202810 100644
--- a/configs/tqma6q_mba6_mmc_defconfig
+++ b/configs/tqma6q_mba6_mmc_defconfig
@@ -1,6 +1,8 @@
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
 CONFIG_TARGET_TQMA6=y
+CONFIG_FIT=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 CONFIG_CMD_GPIO=y
diff --git a/configs/tqma6q_mba6_spi_defconfig b/configs/tqma6q_mba6_spi_defconfig
index e9e01f5..c5a4f2b 100644
--- a/configs/tqma6q_mba6_spi_defconfig
+++ b/configs/tqma6q_mba6_spi_defconfig
@@ -2,6 +2,8 @@ CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
 CONFIG_TARGET_TQMA6=y
 CONFIG_TQMA6X_SPI_BOOT=y
+CONFIG_FIT=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 CONFIG_CMD_GPIO=y
diff --git a/configs/tqma6s_mba6_mmc_defconfig b/configs/tqma6s_mba6_mmc_defconfig
index 148c5e9..f10a901 100644
--- a/configs/tqma6s_mba6_mmc_defconfig
+++ b/configs/tqma6s_mba6_mmc_defconfig
@@ -2,6 +2,8 @@ CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
 CONFIG_TARGET_TQMA6=y
 CONFIG_TQMA6S=y
+CONFIG_FIT=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 CONFIG_CMD_GPIO=y
diff --git a/configs/tqma6s_mba6_spi_defconfig b/configs/tqma6s_mba6_spi_defconfig
index 4850c19..f8ac454 100644
--- a/configs/tqma6s_mba6_spi_defconfig
+++ b/configs/tqma6s_mba6_spi_defconfig
@@ -3,6 +3,8 @@ CONFIG_ARCH_MX6=y
 CONFIG_TARGET_TQMA6=y
 CONFIG_TQMA6S=y
 CONFIG_TQMA6X_SPI_BOOT=y
+CONFIG_FIT=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 CONFIG_CMD_GPIO=y
diff --git a/configs/tqma6s_wru4_mmc_defconfig b/configs/tqma6s_wru4_mmc_defconfig
index 1402c8d..93e5631 100644
--- a/configs/tqma6s_wru4_mmc_defconfig
+++ b/configs/tqma6s_wru4_mmc_defconfig
@@ -3,6 +3,8 @@ CONFIG_ARCH_MX6=y
 CONFIG_TARGET_TQMA6=y
 CONFIG_TQMA6S=y
 CONFIG_WRU4=y
+CONFIG_FIT=y
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_AUTOBOOT_KEYED=y
 CONFIG_AUTOBOOT_PROMPT="Enter password in %d seconds to stop autoboot\n"
 CONFIG_AUTOBOOT_ENCRYPTION=y
diff --git a/configs/trats2_defconfig b/configs/trats2_defconfig
index e6b9381..0e69289 100644
--- a/configs/trats2_defconfig
+++ b/configs/trats2_defconfig
@@ -3,6 +3,7 @@ CONFIG_ARCH_EXYNOS=y
 CONFIG_TARGET_TRATS2=y
 CONFIG_DEFAULT_DEVICE_TREE="exynos4412-trats2"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+CONFIG_FIT=y
 CONFIG_SYS_PROMPT="Trats2 # "
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_XIMG is not set
diff --git a/configs/trats_defconfig b/configs/trats_defconfig
index 8234046..52f0fc7 100644
--- a/configs/trats_defconfig
+++ b/configs/trats_defconfig
@@ -2,6 +2,7 @@ CONFIG_ARM=y
 CONFIG_ARCH_EXYNOS=y
 CONFIG_TARGET_TRATS=y
 CONFIG_DEFAULT_DEVICE_TREE="exynos4210-trats"
+CONFIG_FIT=y
 CONFIG_SYS_PROMPT="Trats # "
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_XIMG is not set
diff --git a/configs/trimslice_defconfig b/configs/trimslice_defconfig
index e34faa3..a0b3a3e 100644
--- a/configs/trimslice_defconfig
+++ b/configs/trimslice_defconfig
@@ -4,6 +4,7 @@ CONFIG_SPL_DM=y
 CONFIG_TEGRA20=y
 CONFIG_TARGET_TRIMSLICE=y
 CONFIG_DEFAULT_DEVICE_TREE="tegra20-trimslice"
+CONFIG_OF_SYSTEM_SETUP=y
 CONFIG_SYS_PROMPT="Tegra20 (TrimSlice) # "
 # CONFIG_CMD_IMI is not set
 # CONFIG_CMD_IMLS is not set
diff --git a/configs/tseries_mmc_defconfig b/configs/tseries_mmc_defconfig
index 54f4c44..29a812e 100644
--- a/configs/tseries_mmc_defconfig
+++ b/configs/tseries_mmc_defconfig
@@ -2,6 +2,7 @@ CONFIG_ARM=y
 CONFIG_TARGET_TSERIES=y
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="SERIAL1,CONS_INDEX=1,EMMC_BOOT"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SYS_PROMPT="U-Boot (BuR V2.0)# "
 # CONFIG_CMD_IMI is not set
 # CONFIG_CMD_IMLS is not set
diff --git a/configs/tseries_nand_defconfig b/configs/tseries_nand_defconfig
index 573c362..88ad5b3 100644
--- a/configs/tseries_nand_defconfig
+++ b/configs/tseries_nand_defconfig
@@ -2,6 +2,7 @@ CONFIG_ARM=y
 CONFIG_TARGET_TSERIES=y
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="SERIAL1,CONS_INDEX=1,NAND"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SYS_PROMPT="U-Boot (BuR V2.0)# "
 # CONFIG_CMD_IMI is not set
 # CONFIG_CMD_IMLS is not set
diff --git a/configs/tseries_spi_defconfig b/configs/tseries_spi_defconfig
index 1504049..47e1b12 100644
--- a/configs/tseries_spi_defconfig
+++ b/configs/tseries_spi_defconfig
@@ -2,6 +2,7 @@ CONFIG_ARM=y
 CONFIG_TARGET_TSERIES=y
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="SERIAL1,CONS_INDEX=1,SPI_BOOT,EMMC_BOOT"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SYS_PROMPT="U-Boot (BuR V2.0)# "
 # CONFIG_CMD_IMI is not set
 # CONFIG_CMD_IMLS is not set
diff --git a/configs/tuge1_defconfig b/configs/tuge1_defconfig
index f24a9d8..ad0c011 100644
--- a/configs/tuge1_defconfig
+++ b/configs/tuge1_defconfig
@@ -2,5 +2,6 @@ CONFIG_PPC=y
 CONFIG_MPC83xx=y
 CONFIG_TARGET_TUXX1=y
 CONFIG_SYS_EXTRA_OPTIONS="TUGE1"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/tuxx1_defconfig b/configs/tuxx1_defconfig
index da69df4..66e7a81 100644
--- a/configs/tuxx1_defconfig
+++ b/configs/tuxx1_defconfig
@@ -2,5 +2,6 @@ CONFIG_PPC=y
 CONFIG_MPC83xx=y
 CONFIG_TARGET_TUXX1=y
 CONFIG_SYS_EXTRA_OPTIONS="TUXX1"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/twister_defconfig b/configs/twister_defconfig
index adb51be..06c98eb 100644
--- a/configs/twister_defconfig
+++ b/configs/twister_defconfig
@@ -2,6 +2,7 @@ CONFIG_ARM=y
 CONFIG_OMAP34XX=y
 CONFIG_TARGET_TWISTER=y
 CONFIG_SPL=y
+CONFIG_FIT=y
 CONFIG_SYS_PROMPT="twister => "
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
diff --git a/configs/ve8313_defconfig b/configs/ve8313_defconfig
index 076a6de..0ed7f87 100644
--- a/configs/ve8313_defconfig
+++ b/configs/ve8313_defconfig
@@ -1,6 +1,7 @@
 CONFIG_PPC=y
 CONFIG_MPC83xx=y
 CONFIG_TARGET_VE8313=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/venice2_defconfig b/configs/venice2_defconfig
index 05f6bc4..954c1de 100644
--- a/configs/venice2_defconfig
+++ b/configs/venice2_defconfig
@@ -4,6 +4,7 @@ CONFIG_SPL_DM=y
 CONFIG_TEGRA124=y
 CONFIG_TARGET_VENICE2=y
 CONFIG_DEFAULT_DEVICE_TREE="tegra124-venice2"
+CONFIG_OF_SYSTEM_SETUP=y
 CONFIG_SYS_PROMPT="Tegra124 (Venice2) # "
 # CONFIG_CMD_IMI is not set
 # CONFIG_CMD_IMLS is not set
diff --git a/configs/ventana_defconfig b/configs/ventana_defconfig
index 3423f24..d89d701 100644
--- a/configs/ventana_defconfig
+++ b/configs/ventana_defconfig
@@ -4,6 +4,7 @@ CONFIG_SPL_DM=y
 CONFIG_TEGRA20=y
 CONFIG_TARGET_VENTANA=y
 CONFIG_DEFAULT_DEVICE_TREE="tegra20-ventana"
+CONFIG_OF_SYSTEM_SETUP=y
 CONFIG_SYS_PROMPT="Tegra20 (Ventana) # "
 # CONFIG_CMD_IMI is not set
 # CONFIG_CMD_IMLS is not set
diff --git a/configs/vme8349_defconfig b/configs/vme8349_defconfig
index a3f9e9c..2100200 100644
--- a/configs/vme8349_defconfig
+++ b/configs/vme8349_defconfig
@@ -1,6 +1,7 @@
 CONFIG_PPC=y
 CONFIG_MPC83xx=y
 CONFIG_TARGET_VME8349=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/walnut_defconfig b/configs/walnut_defconfig
index 2fb075d..fa495ba 100644
--- a/configs/walnut_defconfig
+++ b/configs/walnut_defconfig
@@ -1,5 +1,6 @@
 CONFIG_PPC=y
 CONFIG_4xx=y
 CONFIG_TARGET_WALNUT=y
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/whistler_defconfig b/configs/whistler_defconfig
index 9fa9664..a818a0f 100644
--- a/configs/whistler_defconfig
+++ b/configs/whistler_defconfig
@@ -4,6 +4,7 @@ CONFIG_SPL_DM=y
 CONFIG_TEGRA20=y
 CONFIG_TARGET_WHISTLER=y
 CONFIG_DEFAULT_DEVICE_TREE="tegra20-whistler"
+CONFIG_OF_SYSTEM_SETUP=y
 CONFIG_SYS_PROMPT="Tegra20 (Whistler) # "
 # CONFIG_CMD_IMI is not set
 # CONFIG_CMD_IMLS is not set
diff --git a/configs/wtk_defconfig b/configs/wtk_defconfig
index 5069487..465c22a 100644
--- a/configs/wtk_defconfig
+++ b/configs/wtk_defconfig
@@ -2,5 +2,6 @@ CONFIG_PPC=y
 CONFIG_8xx=y
 CONFIG_TARGET_TQM823L=y
 CONFIG_SYS_EXTRA_OPTIONS="LCD,SHARP_LQ065T9DR51U"
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_OF_LIBFDT=y
diff --git a/configs/xpedite1000_defconfig b/configs/xpedite1000_defconfig
index 3bccacb..02dd3b1 100644
--- a/configs/xpedite1000_defconfig
+++ b/configs/xpedite1000_defconfig
@@ -1,5 +1,6 @@
 CONFIG_PPC=y
 CONFIG_4xx=y
 CONFIG_TARGET_XPEDITE1000=y
+CONFIG_FIT=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
diff --git a/configs/xpedite517x_defconfig b/configs/xpedite517x_defconfig
index ab3a5fd..7442be1 100644
--- a/configs/xpedite517x_defconfig
+++ b/configs/xpedite517x_defconfig
@@ -1,6 +1,8 @@
 CONFIG_PPC=y
 CONFIG_MPC86xx=y
 CONFIG_TARGET_XPEDITE517X=y
+CONFIG_FIT=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/xpedite520x_defconfig b/configs/xpedite520x_defconfig
index 5b93e43..b210b0c 100644
--- a/configs/xpedite520x_defconfig
+++ b/configs/xpedite520x_defconfig
@@ -1,6 +1,8 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_XPEDITE520X=y
+CONFIG_FIT=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/xpedite537x_defconfig b/configs/xpedite537x_defconfig
index 5f8a6e2..d59100f 100644
--- a/configs/xpedite537x_defconfig
+++ b/configs/xpedite537x_defconfig
@@ -1,6 +1,8 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_XPEDITE537X=y
+CONFIG_FIT=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/xpedite550x_defconfig b/configs/xpedite550x_defconfig
index 0c4fc6c..69ebfeb 100644
--- a/configs/xpedite550x_defconfig
+++ b/configs/xpedite550x_defconfig
@@ -1,6 +1,8 @@
 CONFIG_PPC=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_XPEDITE550X=y
+CONFIG_FIT=y
+CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/yellowstone_defconfig b/configs/yellowstone_defconfig
index ef62cc6..5992c2b 100644
--- a/configs/yellowstone_defconfig
+++ b/configs/yellowstone_defconfig
@@ -2,5 +2,6 @@ CONFIG_PPC=y
 CONFIG_4xx=y
 CONFIG_TARGET_YOSEMITE=y
 CONFIG_SYS_EXTRA_OPTIONS="YELLOWSTONE"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/yosemite_defconfig b/configs/yosemite_defconfig
index 9237996..7652b07 100644
--- a/configs/yosemite_defconfig
+++ b/configs/yosemite_defconfig
@@ -2,5 +2,6 @@ CONFIG_PPC=y
 CONFIG_4xx=y
 CONFIG_TARGET_YOSEMITE=y
 CONFIG_SYS_EXTRA_OPTIONS="YOSEMITE"
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/yucca_defconfig b/configs/yucca_defconfig
index fe77adc..5dbbaba 100644
--- a/configs/yucca_defconfig
+++ b/configs/yucca_defconfig
@@ -1,5 +1,6 @@
 CONFIG_PPC=y
 CONFIG_4xx=y
 CONFIG_TARGET_YUCCA=y
+CONFIG_OF_BOARD_SETUP=y
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/include/configs/10m50_devboard.h b/include/configs/10m50_devboard.h
index 765151c..2076ef0 100644
--- a/include/configs/10m50_devboard.h
+++ b/include/configs/10m50_devboard.h
@@ -49,7 +49,6 @@
 /*
  * FDT options
  */
-#define CONFIG_OF_BOARD_SETUP
 #define CONFIG_LMB
 
 /*
diff --git a/include/configs/3c120_devboard.h b/include/configs/3c120_devboard.h
index 7bb2d61..802ac75 100644
--- a/include/configs/3c120_devboard.h
+++ b/include/configs/3c120_devboard.h
@@ -52,7 +52,6 @@
 /*
  * FDT options
  */
-#define CONFIG_OF_BOARD_SETUP
 #define CONFIG_LMB
 
 /*
diff --git a/include/configs/B4860QDS.h b/include/configs/B4860QDS.h
index b3f32c8..66b08a6 100644
--- a/include/configs/B4860QDS.h
+++ b/include/configs/B4860QDS.h
@@ -504,11 +504,9 @@ unsigned long get_board_ddr_clk(void);
 #define CONFIG_SYS_PROMPT_HUSH_PS2 "> "
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP
 #define CONFIG_OF_STDOUT_VIA_ALIAS
 
 /* new uImage format support */
-#define CONFIG_FIT
 #define CONFIG_FIT_VERBOSE	/* enable fit_format_{error,warning}() */
 
 /* I2C */
diff --git a/include/configs/BSC9131RDB.h b/include/configs/BSC9131RDB.h
index 9ef1208..1e90473 100644
--- a/include/configs/BSC9131RDB.h
+++ b/include/configs/BSC9131RDB.h
@@ -250,11 +250,9 @@ extern unsigned long get_sdram_size(void);
 /*
  * Pass open firmware flat tree
  */
-#define CONFIG_OF_BOARD_SETUP
 #define CONFIG_OF_STDOUT_VIA_ALIAS
 
 /* new uImage format support */
-#define CONFIG_FIT
 #define CONFIG_FIT_VERBOSE	/* enable fit_format_{error,warning}() */
 
 #define CONFIG_SYS_I2C
diff --git a/include/configs/BSC9132QDS.h b/include/configs/BSC9132QDS.h
index dd02b27..f2eb0d6 100644
--- a/include/configs/BSC9132QDS.h
+++ b/include/configs/BSC9132QDS.h
@@ -434,11 +434,9 @@ combinations. this should be removed later
 /*
  * Pass open firmware flat tree
  */
-#define CONFIG_OF_BOARD_SETUP
 #define CONFIG_OF_STDOUT_VIA_ALIAS
 
 /* new uImage format support */
-#define CONFIG_FIT
 #define CONFIG_FIT_VERBOSE	/* enable fit_format_{error,warning}() */
 
 #define CONFIG_SYS_I2C
diff --git a/include/configs/C29XPCIE.h b/include/configs/C29XPCIE.h
index 6310e63..a771fb3 100644
--- a/include/configs/C29XPCIE.h
+++ b/include/configs/C29XPCIE.h
@@ -399,11 +399,9 @@
 /*
  * Pass open firmware flat tree
  */
-#define CONFIG_OF_BOARD_SETUP
 #define CONFIG_OF_STDOUT_VIA_ALIAS
 
 /* new uImage format support */
-#define CONFIG_FIT
 #define CONFIG_FIT_VERBOSE	/* enable fit_format_{error,warning}() */
 
 #define CONFIG_SYS_I2C
diff --git a/include/configs/CPCI4052.h b/include/configs/CPCI4052.h
index e5a50df..89cc778 100644
--- a/include/configs/CPCI4052.h
+++ b/include/configs/CPCI4052.h
@@ -209,7 +209,6 @@
  */
 #define CONFIG_SYS_BOOTMAPSZ		(8 << 20)	/* Initial Memory map for Linux */
 
-#define CONFIG_OF_BOARD_SETUP
 
 /*-----------------------------------------------------------------------
  * FLASH organization
diff --git a/include/configs/MPC8308RDB.h b/include/configs/MPC8308RDB.h
index c1f914a..8981352 100644
--- a/include/configs/MPC8308RDB.h
+++ b/include/configs/MPC8308RDB.h
@@ -24,7 +24,6 @@
 #define CONFIG_MISC_INIT_R
 
 /* new uImage format support */
-#define CONFIG_FIT			1
 #define CONFIG_FIT_VERBOSE		1
 
 #define CONFIG_MMC     1
@@ -329,7 +328,6 @@
 #define CONFIG_SYS_HUSH_PARSER
 
 /* Pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP	1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
 /* I2C */
diff --git a/include/configs/MPC8313ERDB.h b/include/configs/MPC8313ERDB.h
index 936a914..2ab0087 100644
--- a/include/configs/MPC8313ERDB.h
+++ b/include/configs/MPC8313ERDB.h
@@ -360,7 +360,6 @@
 #endif
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP	1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
 #define CONFIG_MPC83XX_GPIO 1
diff --git a/include/configs/MPC8315ERDB.h b/include/configs/MPC8315ERDB.h
index d204564..a04bbe5 100644
--- a/include/configs/MPC8315ERDB.h
+++ b/include/configs/MPC8315ERDB.h
@@ -306,7 +306,6 @@
 #define CONFIG_SYS_HUSH_PARSER
 
 /* Pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP	1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
 /* I2C */
diff --git a/include/configs/MPC8323ERDB.h b/include/configs/MPC8323ERDB.h
index fb15d3b..f55dda9 100644
--- a/include/configs/MPC8323ERDB.h
+++ b/include/configs/MPC8323ERDB.h
@@ -228,7 +228,6 @@
 #define CONFIG_SYS_HUSH_PARSER
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP	1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
 /* I2C */
diff --git a/include/configs/MPC832XEMDS.h b/include/configs/MPC832XEMDS.h
index eac2bcf..068a0c7 100644
--- a/include/configs/MPC832XEMDS.h
+++ b/include/configs/MPC832XEMDS.h
@@ -308,7 +308,6 @@
 #define CONFIG_SYS_HUSH_PARSER
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP	1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
 /* I2C */
diff --git a/include/configs/MPC8349EMDS.h b/include/configs/MPC8349EMDS.h
index cad8478..89ede19 100644
--- a/include/configs/MPC8349EMDS.h
+++ b/include/configs/MPC8349EMDS.h
@@ -334,7 +334,6 @@
 #define CONFIG_SYS_HUSH_PARSER
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP	1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
 /* I2C */
diff --git a/include/configs/MPC8349ITX.h b/include/configs/MPC8349ITX.h
index f058918..e23263e 100644
--- a/include/configs/MPC8349ITX.h
+++ b/include/configs/MPC8349ITX.h
@@ -367,7 +367,6 @@ boards, we say we have two, but don't display a message if we find only one. */
 #define CONFIG_SYS_NS16550_COM2	(CONFIG_SYS_IMMR + 0x4600)
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP	1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
 /*
diff --git a/include/configs/MPC837XEMDS.h b/include/configs/MPC837XEMDS.h
index 88867ea..21269ff 100644
--- a/include/configs/MPC837XEMDS.h
+++ b/include/configs/MPC837XEMDS.h
@@ -322,7 +322,6 @@
 #define CONFIG_SYS_HUSH_PARSER
 
 /* Pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP	1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
 /* I2C */
diff --git a/include/configs/MPC837XERDB.h b/include/configs/MPC837XERDB.h
index abd818e..2286c8a 100644
--- a/include/configs/MPC837XERDB.h
+++ b/include/configs/MPC837XERDB.h
@@ -348,7 +348,6 @@
 #define CONFIG_SYS_HUSH_PARSER
 
 /* Pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP	1
 #define CONFIG_OF_STDOUT_VIA_ALIAS 1
 
 /* I2C */
diff --git a/include/configs/MPC8536DS.h b/include/configs/MPC8536DS.h
index 746883a..38ad09c 100644
--- a/include/configs/MPC8536DS.h
+++ b/include/configs/MPC8536DS.h
@@ -387,7 +387,6 @@
 /*
  * Pass open firmware flat tree
  */
-#define CONFIG_OF_BOARD_SETUP		1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
 /*
diff --git a/include/configs/MPC8540ADS.h b/include/configs/MPC8540ADS.h
index d616c0f..bc1e113 100644
--- a/include/configs/MPC8540ADS.h
+++ b/include/configs/MPC8540ADS.h
@@ -237,7 +237,6 @@
 #endif
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP		1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
 /*
diff --git a/include/configs/MPC8541CDS.h b/include/configs/MPC8541CDS.h
index 830bd84..1d079d5 100644
--- a/include/configs/MPC8541CDS.h
+++ b/include/configs/MPC8541CDS.h
@@ -260,7 +260,6 @@ extern unsigned long get_clock_freq(void);
 #endif
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP		1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
 /*
diff --git a/include/configs/MPC8544DS.h b/include/configs/MPC8544DS.h
index c1cd986..ebbec76 100644
--- a/include/configs/MPC8544DS.h
+++ b/include/configs/MPC8544DS.h
@@ -210,7 +210,6 @@ extern unsigned long get_board_sys_clk(unsigned long dummy);
 #define CONFIG_SYS_HUSH_PARSER
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP		1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
 /* I2C */
diff --git a/include/configs/MPC8548CDS.h b/include/configs/MPC8548CDS.h
index 1115af9..24f3acb 100644
--- a/include/configs/MPC8548CDS.h
+++ b/include/configs/MPC8548CDS.h
@@ -335,7 +335,6 @@ extern unsigned long get_clock_freq(void);
 #define CONFIG_SYS_HUSH_PARSER
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP		1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
 /*
diff --git a/include/configs/MPC8555CDS.h b/include/configs/MPC8555CDS.h
index 7b82b9e..6e9f127 100644
--- a/include/configs/MPC8555CDS.h
+++ b/include/configs/MPC8555CDS.h
@@ -258,7 +258,6 @@ extern unsigned long get_clock_freq(void);
 #endif
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP		1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
 /*
diff --git a/include/configs/MPC8560ADS.h b/include/configs/MPC8560ADS.h
index 8d6e442..33c0bfb 100644
--- a/include/configs/MPC8560ADS.h
+++ b/include/configs/MPC8560ADS.h
@@ -232,7 +232,6 @@
 #endif
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP		1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
 /*
diff --git a/include/configs/MPC8568MDS.h b/include/configs/MPC8568MDS.h
index c807303..b1f462a 100644
--- a/include/configs/MPC8568MDS.h
+++ b/include/configs/MPC8568MDS.h
@@ -243,7 +243,6 @@ extern unsigned long get_clock_freq(void);
 #endif
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP		1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
 /*
diff --git a/include/configs/MPC8569MDS.h b/include/configs/MPC8569MDS.h
index 00c1e22..c396549 100644
--- a/include/configs/MPC8569MDS.h
+++ b/include/configs/MPC8569MDS.h
@@ -254,7 +254,6 @@ extern unsigned long get_clock_freq(void);
 #endif
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP		1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
 /*
diff --git a/include/configs/MPC8572DS.h b/include/configs/MPC8572DS.h
index 43ac8f3..47ef7ab 100644
--- a/include/configs/MPC8572DS.h
+++ b/include/configs/MPC8572DS.h
@@ -383,11 +383,9 @@
 /*
  * Pass open firmware flat tree
  */
-#define CONFIG_OF_BOARD_SETUP		1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
 /* new uImage format support */
-#define CONFIG_FIT		1
 #define CONFIG_FIT_VERBOSE	1 /* enable fit_format_{error,warning}() */
 
 /* I2C */
diff --git a/include/configs/MPC8610HPCD.h b/include/configs/MPC8610HPCD.h
index 13aa282..e6439e1 100644
--- a/include/configs/MPC8610HPCD.h
+++ b/include/configs/MPC8610HPCD.h
@@ -239,7 +239,6 @@
 /*
  * Pass open firmware flat tree to kernel
  */
-#define CONFIG_OF_BOARD_SETUP		1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
 
diff --git a/include/configs/MPC8641HPCN.h b/include/configs/MPC8641HPCN.h
index 78471d7..5d8f086 100644
--- a/include/configs/MPC8641HPCN.h
+++ b/include/configs/MPC8641HPCN.h
@@ -275,7 +275,6 @@ extern unsigned long get_board_sys_clk(unsigned long dummy);
 /*
  * Pass open firmware flat tree to kernel
  */
-#define CONFIG_OF_BOARD_SETUP		1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
 /*
diff --git a/include/configs/P1010RDB.h b/include/configs/P1010RDB.h
index 0f32968..b0cac09 100644
--- a/include/configs/P1010RDB.h
+++ b/include/configs/P1010RDB.h
@@ -625,11 +625,9 @@ extern unsigned long get_sdram_size(void);
 /*
  * Pass open firmware flat tree
  */
-#define CONFIG_OF_BOARD_SETUP
 #define CONFIG_OF_STDOUT_VIA_ALIAS
 
 /* new uImage format support */
-#define CONFIG_FIT
 #define CONFIG_FIT_VERBOSE	/* enable fit_format_{error,warning}() */
 
 /* I2C */
diff --git a/include/configs/P1022DS.h b/include/configs/P1022DS.h
index 3aa10d1..33c80ae 100644
--- a/include/configs/P1022DS.h
+++ b/include/configs/P1022DS.h
@@ -446,11 +446,9 @@
 /*
  * Pass open firmware flat tree
  */
-#define CONFIG_OF_BOARD_SETUP
 #define CONFIG_OF_STDOUT_VIA_ALIAS
 
 /* new uImage format support */
-#define CONFIG_FIT
 #define CONFIG_FIT_VERBOSE
 
 /* I2C */
diff --git a/include/configs/P1023RDB.h b/include/configs/P1023RDB.h
index 3943707..3b16bb3 100644
--- a/include/configs/P1023RDB.h
+++ b/include/configs/P1023RDB.h
@@ -178,11 +178,9 @@ extern unsigned long get_clock_freq(void);
 /*
  * Pass open firmware flat tree
  */
-#define CONFIG_OF_BOARD_SETUP
 #define CONFIG_OF_STDOUT_VIA_ALIAS
 
 /* new uImage format support */
-#define CONFIG_FIT
 #define CONFIG_FIT_VERBOSE	/* enable fit_format_{error,warning}() */
 
 /* I2C */
diff --git a/include/configs/P2041RDB.h b/include/configs/P2041RDB.h
index 12f78a4..5f01cae 100644
--- a/include/configs/P2041RDB.h
+++ b/include/configs/P2041RDB.h
@@ -340,11 +340,9 @@ unsigned long get_board_sys_clk(unsigned long dummy);
 #define CONFIG_SYS_HUSH_PARSER
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP
 #define CONFIG_OF_STDOUT_VIA_ALIAS
 
 /* new uImage format support */
-#define CONFIG_FIT
 #define CONFIG_FIT_VERBOSE	/* enable fit_format_{error,warning}() */
 
 /* I2C */
diff --git a/include/configs/PLU405.h b/include/configs/PLU405.h
index 71f0699..296a595 100644
--- a/include/configs/PLU405.h
+++ b/include/configs/PLU405.h
@@ -73,7 +73,6 @@
 #define CONFIG_CMD_EEPROM
 #define CONFIG_CMD_USB
 
-#define CONFIG_OF_BOARD_SETUP
 
 #define CONFIG_MAC_PARTITION
 #define CONFIG_DOS_PARTITION
diff --git a/include/configs/PMC405DE.h b/include/configs/PMC405DE.h
index 927162f..0d88adb 100644
--- a/include/configs/PMC405DE.h
+++ b/include/configs/PMC405DE.h
@@ -64,7 +64,6 @@
 #define CONFIG_CMD_PCI
 #define CONFIG_CMD_PING
 
-#define CONFIG_OF_BOARD_SETUP
 
 #undef  CONFIG_WATCHDOG			/* watchdog disabled */
 #define CONFIG_SDRAM_BANK0	1	/* init onboard SDRAM bank 0 */
diff --git a/include/configs/PMC440.h b/include/configs/PMC440.h
index ad20117..a7d8778 100644
--- a/include/configs/PMC440.h
+++ b/include/configs/PMC440.h
@@ -408,7 +408,6 @@
 #endif
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP	1
 
 #define CONFIG_API		1
 
diff --git a/include/configs/T102xQDS.h b/include/configs/T102xQDS.h
index d373194..2e65974 100644
--- a/include/configs/T102xQDS.h
+++ b/include/configs/T102xQDS.h
@@ -535,11 +535,9 @@ unsigned long get_board_ddr_clk(void);
 #endif
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP
 #define CONFIG_OF_STDOUT_VIA_ALIAS
 
 /* new uImage format support */
-#define CONFIG_FIT
 #define CONFIG_FIT_VERBOSE	/* enable fit_format_{error,warning}() */
 
 /* I2C */
diff --git a/include/configs/T102xRDB.h b/include/configs/T102xRDB.h
index 394ff14..6cfe7c6 100644
--- a/include/configs/T102xRDB.h
+++ b/include/configs/T102xRDB.h
@@ -533,11 +533,9 @@ unsigned long get_board_ddr_clk(void);
 #endif
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP
 #define CONFIG_OF_STDOUT_VIA_ALIAS
 
 /* new uImage format support */
-#define CONFIG_FIT
 #define CONFIG_FIT_VERBOSE	/* enable fit_format_{error,warning}() */
 
 /* I2C */
diff --git a/include/configs/T1040QDS.h b/include/configs/T1040QDS.h
index 3d43459..c5b2823 100644
--- a/include/configs/T1040QDS.h
+++ b/include/configs/T1040QDS.h
@@ -436,11 +436,9 @@ unsigned long get_board_ddr_clk(void);
 #endif
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP
 #define CONFIG_OF_STDOUT_VIA_ALIAS
 
 /* new uImage format support */
-#define CONFIG_FIT
 #define CONFIG_FIT_VERBOSE	/* enable fit_format_{error,warning}() */
 
 /* I2C */
diff --git a/include/configs/T104xRDB.h b/include/configs/T104xRDB.h
index a1578cd..4907a5f 100644
--- a/include/configs/T104xRDB.h
+++ b/include/configs/T104xRDB.h
@@ -488,11 +488,9 @@ $(SRCTREE)/board/freescale/t104xrdb/t1042d4_rcw.cfg
 #endif
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP
 #define CONFIG_OF_STDOUT_VIA_ALIAS
 
 /* new uImage format support */
-#define CONFIG_FIT
 #define CONFIG_FIT_VERBOSE	/* enable fit_format_{error,warning}() */
 
 /* I2C */
diff --git a/include/configs/T208xQDS.h b/include/configs/T208xQDS.h
index 954ce81..021e1dc 100644
--- a/include/configs/T208xQDS.h
+++ b/include/configs/T208xQDS.h
@@ -460,11 +460,9 @@ unsigned long get_board_ddr_clk(void);
 #define CONFIG_SYS_PROMPT_HUSH_PS2 "> "
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP
 #define CONFIG_OF_STDOUT_VIA_ALIAS
 
 /* new uImage format support */
-#define CONFIG_FIT
 #define CONFIG_FIT_VERBOSE	/* enable fit_format_{error,warning}() */
 
 /*
diff --git a/include/configs/T208xRDB.h b/include/configs/T208xRDB.h
index 2c5ade2..efcc827 100644
--- a/include/configs/T208xRDB.h
+++ b/include/configs/T208xRDB.h
@@ -420,11 +420,9 @@ unsigned long get_board_ddr_clk(void);
 #define CONFIG_SYS_PROMPT_HUSH_PS2 "> "
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP
 #define CONFIG_OF_STDOUT_VIA_ALIAS
 
 /* new uImage format support */
-#define CONFIG_FIT
 #define CONFIG_FIT_VERBOSE	/* enable fit_format_{error,warning}() */
 
 /*
diff --git a/include/configs/T4240RDB.h b/include/configs/T4240RDB.h
index 0c49aad..6e50d98 100644
--- a/include/configs/T4240RDB.h
+++ b/include/configs/T4240RDB.h
@@ -214,11 +214,9 @@
 #define CONFIG_SYS_PROMPT_HUSH_PS2 "> "
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP
 #define CONFIG_OF_STDOUT_VIA_ALIAS
 
 /* new uImage format support */
-#define CONFIG_FIT
 #define CONFIG_FIT_VERBOSE	/* enable fit_format_{error,warning}() */
 
 /* I2C */
diff --git a/include/configs/TQM5200.h b/include/configs/TQM5200.h
index 88aca17..2caa631 100644
--- a/include/configs/TQM5200.h
+++ b/include/configs/TQM5200.h
@@ -730,7 +730,6 @@
  * Open firmware flat tree support
  *-----------------------------------------------------------------------
  */
-#define CONFIG_OF_BOARD_SETUP	1
 
 #define OF_CPU			"PowerPC,5200 at 0"
 #define OF_SOC			"soc5200 at f0000000"
diff --git a/include/configs/TQM823L.h b/include/configs/TQM823L.h
index 03e1951..a91010e 100644
--- a/include/configs/TQM823L.h
+++ b/include/configs/TQM823L.h
@@ -458,7 +458,6 @@
 			 MAMR_RLFA_1X	 | MAMR_WLFA_1X	   | MAMR_TLFA_4X)
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP	1
 #define CONFIG_HWCONFIG		1
 
 #endif	/* __CONFIG_H */
diff --git a/include/configs/TQM823M.h b/include/configs/TQM823M.h
index 3982761..88eb716 100644
--- a/include/configs/TQM823M.h
+++ b/include/configs/TQM823M.h
@@ -454,7 +454,6 @@
 			 MAMR_RLFA_1X	 | MAMR_WLFA_1X	   | MAMR_TLFA_4X)
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP	1
 #define CONFIG_HWCONFIG		1
 
 #endif	/* __CONFIG_H */
diff --git a/include/configs/TQM834x.h b/include/configs/TQM834x.h
index 148590a..2880c45 100644
--- a/include/configs/TQM834x.h
+++ b/include/configs/TQM834x.h
@@ -328,7 +328,6 @@
 #undef CONFIG_WATCHDOG		/* watchdog disabled */
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP	1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
 /*
diff --git a/include/configs/TQM850L.h b/include/configs/TQM850L.h
index 57c5fbb..9bb69b6 100644
--- a/include/configs/TQM850L.h
+++ b/include/configs/TQM850L.h
@@ -442,7 +442,6 @@
 			 MAMR_RLFA_1X	 | MAMR_WLFA_1X	   | MAMR_TLFA_4X)
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP	1
 #define CONFIG_HWCONFIG		1
 
 #endif	/* __CONFIG_H */
diff --git a/include/configs/TQM850M.h b/include/configs/TQM850M.h
index ec786a4..9186600 100644
--- a/include/configs/TQM850M.h
+++ b/include/configs/TQM850M.h
@@ -444,7 +444,6 @@
 			 MAMR_RLFA_1X	 | MAMR_WLFA_1X	   | MAMR_TLFA_4X)
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP	1
 #define CONFIG_HWCONFIG		1
 
 #endif	/* __CONFIG_H */
diff --git a/include/configs/TQM855L.h b/include/configs/TQM855L.h
index 879b4bf..af78c6b 100644
--- a/include/configs/TQM855L.h
+++ b/include/configs/TQM855L.h
@@ -450,7 +450,6 @@
 #define CONFIG_ETHPRIME		"SCC"
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP	1
 #define CONFIG_HWCONFIG		1
 
 #endif	/* __CONFIG_H */
diff --git a/include/configs/TQM855M.h b/include/configs/TQM855M.h
index d65347f..9b2e564 100644
--- a/include/configs/TQM855M.h
+++ b/include/configs/TQM855M.h
@@ -481,7 +481,6 @@
 #define CONFIG_ETHPRIME		"SCC"
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP	1
 #define CONFIG_HWCONFIG		1
 
 #endif	/* __CONFIG_H */
diff --git a/include/configs/TQM860L.h b/include/configs/TQM860L.h
index e433ff0..44188f7 100644
--- a/include/configs/TQM860L.h
+++ b/include/configs/TQM860L.h
@@ -449,7 +449,6 @@
 #define CONFIG_ETHPRIME		"SCC"
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP  1
 #define CONFIG_HWCONFIG		1
 
 #endif	/* __CONFIG_H */
diff --git a/include/configs/TQM860M.h b/include/configs/TQM860M.h
index bd68913..d813fe5 100644
--- a/include/configs/TQM860M.h
+++ b/include/configs/TQM860M.h
@@ -454,7 +454,6 @@
 #define CONFIG_ETHPRIME		"SCC"
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP	1
 #define CONFIG_HWCONFIG		1
 
 #endif	/* __CONFIG_H */
diff --git a/include/configs/TQM862L.h b/include/configs/TQM862L.h
index 31c9059..3ac466c 100644
--- a/include/configs/TQM862L.h
+++ b/include/configs/TQM862L.h
@@ -454,7 +454,6 @@
 #define CONFIG_ETHPRIME		"SCC"
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP	1
 #define CONFIG_HWCONFIG		1
 
 #endif	/* __CONFIG_H */
diff --git a/include/configs/TQM862M.h b/include/configs/TQM862M.h
index a68edd1..e17159b 100644
--- a/include/configs/TQM862M.h
+++ b/include/configs/TQM862M.h
@@ -455,7 +455,6 @@
 #define CONFIG_ETHPRIME		"SCC"
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP	1
 #define CONFIG_HWCONFIG		1
 
 #endif	/* __CONFIG_H */
diff --git a/include/configs/TQM866M.h b/include/configs/TQM866M.h
index b8bdde1..5600202 100644
--- a/include/configs/TQM866M.h
+++ b/include/configs/TQM866M.h
@@ -473,7 +473,6 @@
 #define CONFIG_ETHPRIME		"SCC"
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP	1
 #define CONFIG_HWCONFIG		1
 
 #endif	/* __CONFIG_H */
diff --git a/include/configs/TQM885D.h b/include/configs/TQM885D.h
index 2725e39..3dba2a0 100644
--- a/include/configs/TQM885D.h
+++ b/include/configs/TQM885D.h
@@ -473,7 +473,6 @@
 #define CONFIG_ETHPRIME		"SCC"
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP	1
 #define CONFIG_HWCONFIG		1
 
 #endif	/* __CONFIG_H */
diff --git a/include/configs/UCP1020.h b/include/configs/UCP1020.h
index 3be2893..3fc33b4 100644
--- a/include/configs/UCP1020.h
+++ b/include/configs/UCP1020.h
@@ -348,11 +348,9 @@
 /*
  * Pass open firmware flat tree
  */
-#define CONFIG_OF_BOARD_SETUP
 #define CONFIG_OF_STDOUT_VIA_ALIAS
 
 /* new uImage format support */
-#define CONFIG_FIT
 #define CONFIG_FIT_VERBOSE	/* enable fit_format_{error,warning}() */
 
 /* I2C */
diff --git a/include/configs/VOM405.h b/include/configs/VOM405.h
index 3421cca..cdf3d1c 100644
--- a/include/configs/VOM405.h
+++ b/include/configs/VOM405.h
@@ -66,7 +66,6 @@
 #define CONFIG_CMD_PING
 #define CONFIG_CMD_EEPROM
 
-#define CONFIG_OF_BOARD_SETUP
 
 #undef	CONFIG_WATCHDOG			/* watchdog disabled		*/
 
diff --git a/include/configs/a3m071.h b/include/configs/a3m071.h
index aeb2eff..d62fb63 100644
--- a/include/configs/a3m071.h
+++ b/include/configs/a3m071.h
@@ -82,7 +82,6 @@
 #define CONFIG_CMD_MTDPARTS
 #define CONFIG_CMD_UBI
 #define CONFIG_CMD_UBIFS
-#define CONFIG_FIT
 
 /*
  * IPB Bus clocking configuration.
@@ -96,7 +95,6 @@
 #endif
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP
 
 /* maximum size of the flat tree (8K) */
 #define OF_FLAT_TREE_MAX_SIZE	8192
diff --git a/include/configs/a4m072.h b/include/configs/a4m072.h
index cea8a72..1167bde 100644
--- a/include/configs/a4m072.h
+++ b/include/configs/a4m072.h
@@ -354,7 +354,6 @@
  * Open firmware flat tree support
  *-----------------------------------------------------------------------
  */
-#define CONFIG_OF_BOARD_SETUP	1
 
 #define OF_CPU			"PowerPC,5200 at 0"
 #define OF_SOC			"soc5200 at f0000000"
diff --git a/include/configs/ac14xx.h b/include/configs/ac14xx.h
index 6f34379..750d8ff 100644
--- a/include/configs/ac14xx.h
+++ b/include/configs/ac14xx.h
@@ -557,8 +557,6 @@
 
 #define CONFIG_ARP_TIMEOUT	200UL
 
-#define CONFIG_FIT		1
-#define CONFIG_OF_BOARD_SETUP	1
 #define CONFIG_OF_SUPPORT_OLD_DEVICE_TREES	1
 
 #define OF_CPU			"PowerPC,5121 at 0"
diff --git a/include/configs/am335x_evm.h b/include/configs/am335x_evm.h
index 6ebe0b3..d09e1a2 100644
--- a/include/configs/am335x_evm.h
+++ b/include/configs/am335x_evm.h
@@ -20,7 +20,6 @@
 
 #ifndef CONFIG_SPL_BUILD
 #ifndef CONFIG_FIT
-# define CONFIG_FIT
 #endif
 # define CONFIG_TIMESTAMP
 # define CONFIG_LZO
diff --git a/include/configs/am335x_sl50.h b/include/configs/am335x_sl50.h
index 1bdb96e..13558fd 100644
--- a/include/configs/am335x_sl50.h
+++ b/include/configs/am335x_sl50.h
@@ -14,7 +14,6 @@
 
 #ifndef CONFIG_SPL_BUILD
 #ifndef CONFIG_FIT
-# define CONFIG_FIT
 #endif
 # define CONFIG_TIMESTAMP
 # define CONFIG_LZO
diff --git a/include/configs/amcc-common.h b/include/configs/amcc-common.h
index 594e314..6c98599 100644
--- a/include/configs/amcc-common.h
+++ b/include/configs/amcc-common.h
@@ -125,7 +125,6 @@
 /*
  * Pass open firmware flat tree
  */
-#define CONFIG_OF_BOARD_SETUP
 /* Update size in "reg" property of NOR FLASH device tree nodes */
 #define CONFIG_FDT_FIXUP_NOR_FLASH_SIZE
 
diff --git a/include/configs/aria.h b/include/configs/aria.h
index 94f5717..c56a2e3 100644
--- a/include/configs/aria.h
+++ b/include/configs/aria.h
@@ -572,7 +572,6 @@
 
 #define CONFIG_BOOTCOMMAND	"run flash_self"
 
-#define CONFIG_OF_BOARD_SETUP	1
 #define CONFIG_OF_SUPPORT_OLD_DEVICE_TREES	1
 
 #define OF_CPU			"PowerPC,5121 at 0"
diff --git a/include/configs/aristainetos-common.h b/include/configs/aristainetos-common.h
index 0b97ccc..937144d 100644
--- a/include/configs/aristainetos-common.h
+++ b/include/configs/aristainetos-common.h
@@ -240,7 +240,6 @@
 #define CONFIG_HW_WATCHDOG
 #define CONFIG_IMX_WATCHDOG
 
-#define CONFIG_FIT
 
 /* Framebuffer */
 #define CONFIG_VIDEO
diff --git a/include/configs/baltos.h b/include/configs/baltos.h
index e9b4fe1..b8c915c 100644
--- a/include/configs/baltos.h
+++ b/include/configs/baltos.h
@@ -41,7 +41,6 @@
 
 /* FIT support */
 #define CONFIG_SYS_BOOTM_LEN         SZ_64M
-#define CONFIG_OF_BOARD_SETUP
 
 /* UBI Support */
 #define CONFIG_CMD_MTDPARTS
diff --git a/include/configs/bav335x.h b/include/configs/bav335x.h
index e61a098..5979f4f 100644
--- a/include/configs/bav335x.h
+++ b/include/configs/bav335x.h
@@ -21,7 +21,6 @@
 #define CONFIG_ENV_IS_NOWHERE
 
 #ifndef CONFIG_SPL_BUILD
-# define CONFIG_FIT
 # define CONFIG_TIMESTAMP
 # define CONFIG_LZO
 # ifdef CONFIG_ENABLE_VBOOT
diff --git a/include/configs/cm5200.h b/include/configs/cm5200.h
index dd9a424..3744af2 100644
--- a/include/configs/cm5200.h
+++ b/include/configs/cm5200.h
@@ -315,7 +315,6 @@
 /*
  * Flat Device Tree support
  */
-#define CONFIG_OF_BOARD_SETUP	1
 #define OF_CPU			"PowerPC,5200 at 0"
 #define OF_SOC			"soc5200 at f0000000"
 #define OF_TBCLK		(bd->bi_busfreq / 4)
diff --git a/include/configs/cm_fx6.h b/include/configs/cm_fx6.h
index 180ea28..b36ba14 100644
--- a/include/configs/cm_fx6.h
+++ b/include/configs/cm_fx6.h
@@ -225,7 +225,6 @@
 #define CONFIG_STACKSIZE			(128 * 1024)
 #define CONFIG_SYS_MALLOC_LEN			(10 * 1024 * 1024)
 #define CONFIG_SYS_U_BOOT_MAX_SIZE_SECTORS	800 /* 400 KB */
-#define CONFIG_OF_BOARD_SETUP
 #define CONFIG_MISC_INIT_R
 
 /* SPL */
diff --git a/include/configs/cm_t54.h b/include/configs/cm_t54.h
index 42d54a4..35a0263 100644
--- a/include/configs/cm_t54.h
+++ b/include/configs/cm_t54.h
@@ -19,7 +19,6 @@
 #undef CONFIG_SPL_OS_BOOT
 
 /* Device Tree defines */
-#define CONFIG_OF_BOARD_SETUP
 
 /* EEPROM related defines */
 #define CONFIG_SYS_I2C_OMAP34XX
diff --git a/include/configs/controlcenterd.h b/include/configs/controlcenterd.h
index 2e9b910..933eab2 100644
--- a/include/configs/controlcenterd.h
+++ b/include/configs/controlcenterd.h
@@ -403,11 +403,9 @@
 /*
  * Pass open firmware flat tree
  */
-#define CONFIG_OF_BOARD_SETUP
 #define CONFIG_OF_STDOUT_VIA_ALIAS
 
 /* new uImage format support */
-#define CONFIG_FIT
 #define CONFIG_FIT_VERBOSE
 
 #else /* CONFIG_TRAILBLAZER */
diff --git a/include/configs/corenet_ds.h b/include/configs/corenet_ds.h
index f393f80..cb5ac45 100644
--- a/include/configs/corenet_ds.h
+++ b/include/configs/corenet_ds.h
@@ -345,11 +345,9 @@
 #define CONFIG_SYS_HUSH_PARSER
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP
 #define CONFIG_OF_STDOUT_VIA_ALIAS
 
 /* new uImage format support */
-#define CONFIG_FIT
 #define CONFIG_FIT_VERBOSE	/* enable fit_format_{error,warning}() */
 
 /* I2C */
diff --git a/include/configs/cyrus.h b/include/configs/cyrus.h
index 3e0f100..4a48ffd 100644
--- a/include/configs/cyrus.h
+++ b/include/configs/cyrus.h
@@ -232,10 +232,8 @@
 #define CONFIG_SYS_PROMPT_HUSH_PS2 "> "
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP
 
 /* new uImage format support */
-#define CONFIG_FIT
 #define CONFIG_FIT_VERBOSE	/* enable fit_format_{error,warning}() */
 
 /* I2C */
diff --git a/include/configs/digsy_mtc.h b/include/configs/digsy_mtc.h
index 09b1646..2506894 100644
--- a/include/configs/digsy_mtc.h
+++ b/include/configs/digsy_mtc.h
@@ -296,7 +296,6 @@
 #define CONFIG_SYS_FLASH_ERASE_TOUT	240000
 #define CONFIG_SYS_FLASH_WRITE_TOUT	500
 
-#define CONFIG_OF_BOARD_SETUP	1
 
 #define OF_CPU			"PowerPC,5200 at 0"
 #define OF_SOC			"soc5200 at f0000000"
diff --git a/include/configs/dlvision-10g.h b/include/configs/dlvision-10g.h
index b614f19..c01f364 100644
--- a/include/configs/dlvision-10g.h
+++ b/include/configs/dlvision-10g.h
@@ -36,7 +36,6 @@
 #define PLLMR1_DEFAULT PLLMR1_266_133_66
 
 /* new uImage format support */
-#define CONFIG_FIT
 #define CONFIG_FIT_VERBOSE	/* enable fit_format_{error,warning}() */
 #define CONFIG_FIT_DISABLE_SHA256
 
diff --git a/include/configs/dlvision.h b/include/configs/dlvision.h
index 90e839a..5cdf326 100644
--- a/include/configs/dlvision.h
+++ b/include/configs/dlvision.h
@@ -32,7 +32,6 @@
 #define PLLMR1_DEFAULT PLLMR1_266_133_66_33
 
 /* new uImage format support */
-#define CONFIG_FIT
 #define CONFIG_FIT_VERBOSE	/* enable fit_format_{error,warning}() */
 #define CONFIG_FIT_DISABLE_SHA256
 
diff --git a/include/configs/exynos5-common.h b/include/configs/exynos5-common.h
index 9c3ea88..63da31b 100644
--- a/include/configs/exynos5-common.h
+++ b/include/configs/exynos5-common.h
@@ -178,7 +178,6 @@
 #define EXYNOS_IRAM_SECONDARY_BASE	0x02020018
 
 /* Enable FIT support and comparison */
-#define CONFIG_FIT
 #define CONFIG_FIT_BEST_MATCH
 
 #define BOOT_TARGET_DEVICES(func) \
diff --git a/include/configs/flea3.h b/include/configs/flea3.h
index 99bf7d6..3e4aaf6 100644
--- a/include/configs/flea3.h
+++ b/include/configs/flea3.h
@@ -252,6 +252,5 @@
 
 /* Enable FIT images support */
 #define CONFIG_CMD_FDT
-#define CONFIG_FIT
 
 #endif				/* __CONFIG_H */
diff --git a/include/configs/gw_ventana.h b/include/configs/gw_ventana.h
index b7b9c78..56c49c9 100644
--- a/include/configs/gw_ventana.h
+++ b/include/configs/gw_ventana.h
@@ -98,7 +98,6 @@
 #endif /* CONFIG_SPI_FLASH */
 
 /* Flattened Image Tree Suport */
-#define CONFIG_FIT
 #define CONFIG_FIT_VERBOSE
 
 /* I2C Configs */
@@ -442,7 +441,6 @@
 	"done"
 
 /* Device Tree Support */
-#define CONFIG_OF_BOARD_SETUP
 #define CONFIG_FDT_FIXUP_PARTITIONS
 
 #endif			       /* __CONFIG_H */
diff --git a/include/configs/h2200.h b/include/configs/h2200.h
index 6fbbe6e..fe0211a 100644
--- a/include/configs/h2200.h
+++ b/include/configs/h2200.h
@@ -115,7 +115,6 @@
 #define CONFIG_BAUDRATE			115200
 #define CONFIG_SYS_BAUDRATE_TABLE	{ 9600, 38400, 115200 }
 
-#define CONFIG_FIT
 #define CONFIG_FIT_DISABLE_SHA256
 #define CONFIG_SETUP_MEMORY_TAGS
 #define CONFIG_CMDLINE_TAG
diff --git a/include/configs/highbank.h b/include/configs/highbank.h
index f02575a..510741b 100644
--- a/include/configs/highbank.h
+++ b/include/configs/highbank.h
@@ -14,8 +14,6 @@
 
 #define CONFIG_SYS_NO_FLASH
 
-#define CONFIG_OF_BOARD_SETUP
-#define CONFIG_FIT
 #define CONFIG_SYS_BOOTMAPSZ		(16 << 20)
 
 #define CONFIG_SYS_TIMER_RATE		(150000000/256)
diff --git a/include/configs/hrcon.h b/include/configs/hrcon.h
index d1e3ff7..4f74483 100644
--- a/include/configs/hrcon.h
+++ b/include/configs/hrcon.h
@@ -32,7 +32,6 @@
 #define CONFIG_LAST_STAGE_INIT
 
 /* new uImage format support */
-#define CONFIG_FIT			1
 #define CONFIG_FIT_VERBOSE		1
 
 #define CONFIG_MMC
@@ -318,7 +317,6 @@
 #define CONFIG_SYS_HUSH_PARSER
 
 /* Pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP		1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
 /* I2C */
diff --git a/include/configs/ids8313.h b/include/configs/ids8313.h
index 59d1f2f..42851bb 100644
--- a/include/configs/ids8313.h
+++ b/include/configs/ids8313.h
@@ -430,7 +430,6 @@
 #define CONFIG_BOOTP_BOOTPATH
 #define CONFIG_BOOTP_BOOTFILESIZE
 /* pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP
 #define CONFIG_OF_STDOUT_VIA_ALIAS
 
 /*
diff --git a/include/configs/intip.h b/include/configs/intip.h
index 60c9e2c..913fdab 100644
--- a/include/configs/intip.h
+++ b/include/configs/intip.h
@@ -46,7 +46,6 @@
 #define CONFIG_BOARD_EARLY_INIT_R	1	/* Call board_early_init_r */
 #define CONFIG_MISC_INIT_R		1	/* Call misc_init_r */
 #define CONFIG_BOARD_TYPES		1	/* support board types */
-#define CONFIG_FIT
 #define CFG_ALT_MEMTEST
 
 #undef CONFIG_ZERO_BOOTDELAY_CHECK     /* ignore keypress on bootdelay==0 */
diff --git a/include/configs/io.h b/include/configs/io.h
index 2c457d4..d762d7ce 100644
--- a/include/configs/io.h
+++ b/include/configs/io.h
@@ -36,7 +36,6 @@
 #undef CONFIG_ZERO_BOOTDELAY_CHECK	/* ignore keypress on bootdelay==0 */
 
 /* new uImage format support */
-#define CONFIG_FIT
 #define CONFIG_FIT_VERBOSE	/* enable fit_format_{error,warning}() */
 #define CONFIG_FIT_DISABLE_SHA256
 
diff --git a/include/configs/io64.h b/include/configs/io64.h
index 25bd014..a68d964 100644
--- a/include/configs/io64.h
+++ b/include/configs/io64.h
@@ -47,7 +47,6 @@
 #undef CONFIG_ZERO_BOOTDELAY_CHECK	/* ignore keypress on bootdelay==0 */
 
 /* new uImage format support */
-#define CONFIG_FIT
 #define CONFIG_FIT_VERBOSE
 
 /*-----------------------------------------------------------------------
diff --git a/include/configs/ipek01.h b/include/configs/ipek01.h
index 3c32d12..e5523da 100644
--- a/include/configs/ipek01.h
+++ b/include/configs/ipek01.h
@@ -170,7 +170,6 @@
 /*
  * Open firmware flat tree support
  */
-#define CONFIG_OF_BOARD_SETUP	1
 
 #define OF_CPU			"PowerPC,5200 at 0"
 #define OF_SOC			"soc5200 at f0000000"
diff --git a/include/configs/jupiter.h b/include/configs/jupiter.h
index 86470a0..4c78544 100644
--- a/include/configs/jupiter.h
+++ b/include/configs/jupiter.h
@@ -134,7 +134,6 @@
 
 #if 0
 /* pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP	1
 
 #define OF_CPU			"PowerPC,5200 at 0"
 #define OF_SOC			"soc5200@f0000000"
diff --git a/include/configs/km/km-powerpc.h b/include/configs/km/km-powerpc.h
index d2cc078..564214c 100644
--- a/include/configs/km/km-powerpc.h
+++ b/include/configs/km/km-powerpc.h
@@ -18,7 +18,6 @@
 #define CONFIG_JFFS2_CMDLINE
 
 /* Pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP
 
 /* standard km ethernet_present for piggy */
 #define CONFIG_KM_COMMON_ETH_INIT
diff --git a/include/configs/km/kmp204x-common.h b/include/configs/km/kmp204x-common.h
index ebfb54e..dc4f397 100644
--- a/include/configs/km/kmp204x-common.h
+++ b/include/configs/km/kmp204x-common.h
@@ -259,11 +259,9 @@ unsigned long get_board_sys_clk(unsigned long dummy);
 #define CONFIG_SYS_HUSH_PARSER
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP
 #define CONFIG_OF_STDOUT_VIA_ALIAS
 
 /* new uImage format support */
-#define CONFIG_FIT
 #define CONFIG_FIT_VERBOSE	/* enable fit_format_{error,warning}() */
 
 /* I2C */
diff --git a/include/configs/km82xx.h b/include/configs/km82xx.h
index 4cfc1dc..ffd93cd 100644
--- a/include/configs/km82xx.h
+++ b/include/configs/km82xx.h
@@ -430,7 +430,6 @@ int get_scl(void);
 
 #define	CONFIG_SYS_RESET_ADDRESS 0xFDFFFFFC	/* "bad" address */
 
-#define CONFIG_FIT		1
 
 #define OF_TBCLK		(bd->bi_busfreq / 4)
 #define OF_STDOUT_PATH		"/soc/cpm/serial at 11a90"
diff --git a/include/configs/ls1021aqds.h b/include/configs/ls1021aqds.h
index 2b8a91e..28e0217 100644
--- a/include/configs/ls1021aqds.h
+++ b/include/configs/ls1021aqds.h
@@ -651,7 +651,6 @@ unsigned long get_board_ddr_clk(void);
 #define CONFIG_ENV_SECT_SIZE		0x20000 /* 128K (one sector) */
 #endif
 
-#define CONFIG_OF_BOARD_SETUP
 #define CONFIG_OF_STDOUT_VIA_ALIAS
 #define CONFIG_CMD_BOOTZ
 
diff --git a/include/configs/ls1021atwr.h b/include/configs/ls1021atwr.h
index 5c16ed5..3a6852f 100644
--- a/include/configs/ls1021atwr.h
+++ b/include/configs/ls1021atwr.h
@@ -509,7 +509,6 @@
 #define CONFIG_ENV_SECT_SIZE		0x20000 /* 128K (one sector) */
 #endif
 
-#define CONFIG_OF_BOARD_SETUP
 #define CONFIG_OF_STDOUT_VIA_ALIAS
 #define CONFIG_CMD_BOOTZ
 
diff --git a/include/configs/ls1043a_common.h b/include/configs/ls1043a_common.h
index 4253102..f6ba1ff 100644
--- a/include/configs/ls1043a_common.h
+++ b/include/configs/ls1043a_common.h
@@ -29,10 +29,8 @@
 #define CONFIG_BOARD_EARLY_INIT_F	1
 
 /* Flat Device Tree Definitions */
-#define CONFIG_OF_BOARD_SETUP
 
 /* new uImage format support */
-#define CONFIG_FIT
 #define CONFIG_FIT_VERBOSE	/* enable fit_format_{error,warning}() */
 
 #ifndef CONFIG_SYS_FSL_DDR4
diff --git a/include/configs/ls1043aqds.h b/include/configs/ls1043aqds.h
index 3b633fe..b7cd149 100644
--- a/include/configs/ls1043aqds.h
+++ b/include/configs/ls1043aqds.h
@@ -395,7 +395,6 @@ unsigned long get_board_ddr_clk(void);
 #define CONFIG_ENV_SIZE			0x20000
 #endif
 
-#define CONFIG_OF_BOARD_SETUP
 #define CONFIG_CMD_BOOTZ
 #define CONFIG_CMD_MII
 #define CONFIG_CMDLINE_TAG
diff --git a/include/configs/ls2080a_common.h b/include/configs/ls2080a_common.h
index de40209..fe608f4 100644
--- a/include/configs/ls2080a_common.h
+++ b/include/configs/ls2080a_common.h
@@ -48,11 +48,9 @@
 #define CONFIG_BOARD_EARLY_INIT_F	1
 
 /* Flat Device Tree Definitions */
-#define CONFIG_OF_BOARD_SETUP
 #define CONFIG_OF_STDOUT_VIA_ALIAS
 
 /* new uImage format support */
-#define CONFIG_FIT
 #define CONFIG_FIT_VERBOSE	/* enable fit_format_{error,warning}() */
 
 #ifndef CONFIG_SPL
diff --git a/include/configs/lwmon5.h b/include/configs/lwmon5.h
index 9252454..865323f 100644
--- a/include/configs/lwmon5.h
+++ b/include/configs/lwmon5.h
@@ -303,11 +303,9 @@
 /*
  * Pass open firmware flat tree
  */
-#define CONFIG_OF_BOARD_SETUP
 /* Update size in "reg" property of NOR FLASH device tree nodes */
 #define CONFIG_FDT_FIXUP_NOR_FLASH_SIZE
 
-#define CONFIG_FIT			/* enable FIT image support	*/
 
 #define	CONFIG_POST_KEY_MAGIC	"3C+3E"	/* press F3 + F5 keys to force POST */
 
diff --git a/include/configs/m28evk.h b/include/configs/m28evk.h
index 8063a1e..55f4495 100644
--- a/include/configs/m28evk.h
+++ b/include/configs/m28evk.h
@@ -12,7 +12,6 @@
 #define MACH_TYPE_M28EVK	3613
 #define CONFIG_MACH_TYPE	MACH_TYPE_M28EVK
 
-#define CONFIG_FIT
 
 #define CONFIG_TIMESTAMP		/* Print image info with timestamp */
 
diff --git a/include/configs/m53evk.h b/include/configs/m53evk.h
index 4bd1f4c..02e2e6a 100644
--- a/include/configs/m53evk.h
+++ b/include/configs/m53evk.h
@@ -19,7 +19,6 @@
 #define CONFIG_SYS_NO_FLASH
 #define CONFIG_SYS_FSL_CLK
 
-#define CONFIG_FIT
 
 #define CONFIG_TIMESTAMP		/* Print image info with timestamp */
 
diff --git a/include/configs/manroland/common.h b/include/configs/manroland/common.h
index d05d45c..a3ae1c7 100644
--- a/include/configs/manroland/common.h
+++ b/include/configs/manroland/common.h
@@ -116,6 +116,5 @@
 #define CONFIG_LOOPW
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP	1
 
 #endif /* __MANROLAND_COMMON_H */
diff --git a/include/configs/mcx.h b/include/configs/mcx.h
index 83202fc..ce2c790 100644
--- a/include/configs/mcx.h
+++ b/include/configs/mcx.h
@@ -33,7 +33,6 @@
 #include <asm/arch/cpu.h>		/* get chip and board defs */
 #include <asm/arch/omap.h>
 
-#define CONFIG_FIT
 
 /*
  * Leave it at 0x80008000 to allow booting new u-boot.bin with X-loader
diff --git a/include/configs/mecp5123.h b/include/configs/mecp5123.h
index 5f099d2..a408219 100644
--- a/include/configs/mecp5123.h
+++ b/include/configs/mecp5123.h
@@ -427,7 +427,6 @@
 
 #define CONFIG_BOOTCOMMAND	"run flash_self"
 
-#define CONFIG_OF_BOARD_SETUP
 
 #define OF_CPU			"PowerPC,5121 at 0"
 #define OF_SOC_COMPAT		"fsl,mpc5121-immr"
diff --git a/include/configs/medcom-wide.h b/include/configs/medcom-wide.h
index 6dfd5e2..3decb8a 100644
--- a/include/configs/medcom-wide.h
+++ b/include/configs/medcom-wide.h
@@ -55,7 +55,6 @@
 #define CONFIG_SYS_WHITE_ON_BLACK
 
 /* support the new (FDT-based) image format */
-#define CONFIG_FIT
 
 #include "tegra-common-post.h"
 
diff --git a/include/configs/meesc.h b/include/configs/meesc.h
index 6cade14..88fb3e8 100644
--- a/include/configs/meesc.h
+++ b/include/configs/meesc.h
@@ -152,7 +152,6 @@
 /* Ethernet */
 #define CONFIG_MACB
 #define CONFIG_RMII
-#define CONFIG_FIT
 #define CONFIG_NET_RETRY_COUNT			20
 #undef CONFIG_RESET_PHY_R
 
diff --git a/include/configs/microblaze-generic.h b/include/configs/microblaze-generic.h
index 3e86402..f4665be 100644
--- a/include/configs/microblaze-generic.h
+++ b/include/configs/microblaze-generic.h
@@ -350,7 +350,6 @@
 
 /* Enable flat device tree support */
 #define CONFIG_LMB		1
-#define CONFIG_FIT		1
 
 #if defined(CONFIG_XILINX_AXIEMAC)
 # define CONFIG_MII		1
diff --git a/include/configs/motionpro.h b/include/configs/motionpro.h
index 5414208..044e397 100644
--- a/include/configs/motionpro.h
+++ b/include/configs/motionpro.h
@@ -378,7 +378,6 @@ extern void __led_set(led_id_t id, int state);
 #define CONFIG_SYS_RESET_ADDRESS	0xfff00100
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP	1
 
 #define OF_CPU			"PowerPC,5200 at 0"
 #define OF_SOC			"soc5200 at f0000000"
diff --git a/include/configs/mpc5121ads.h b/include/configs/mpc5121ads.h
index a53b4b2..4ac291c 100644
--- a/include/configs/mpc5121ads.h
+++ b/include/configs/mpc5121ads.h
@@ -586,7 +586,6 @@
 
 #define CONFIG_BOOTCOMMAND	"run flash_self"
 
-#define CONFIG_OF_BOARD_SETUP	1
 #define CONFIG_OF_SUPPORT_OLD_DEVICE_TREES	1
 
 #define OF_CPU			"PowerPC,5121 at 0"
diff --git a/include/configs/mpc8308_p1m.h b/include/configs/mpc8308_p1m.h
index d8db25b..a3c8948 100644
--- a/include/configs/mpc8308_p1m.h
+++ b/include/configs/mpc8308_p1m.h
@@ -306,7 +306,6 @@
 #define CONFIG_SYS_HUSH_PARSER
 
 /* Pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP	1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
 /* I2C */
diff --git a/include/configs/munices.h b/include/configs/munices.h
index a1305b1..ea65787 100644
--- a/include/configs/munices.h
+++ b/include/configs/munices.h
@@ -185,7 +185,6 @@
 #define CONFIG_SYS_RESET_ADDRESS	0xff000000
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP	1
 
 #define OF_CPU			"PowerPC,5200 at 0"
 #define OF_TBCLK		(bd->bi_busfreq / 4)
diff --git a/include/configs/mx31ads.h b/include/configs/mx31ads.h
index 8e18cfa..dd241d8 100644
--- a/include/configs/mx31ads.h
+++ b/include/configs/mx31ads.h
@@ -27,7 +27,6 @@
  * in the final file size: 144260 vs. 109536 Bytes.
  */
 #if 0
-#define CONFIG_FIT			1
 #define CONFIG_FIT_VERBOSE		1
 #endif
 
diff --git a/include/configs/neo.h b/include/configs/neo.h
index bc01416..7e50352 100644
--- a/include/configs/neo.h
+++ b/include/configs/neo.h
@@ -35,7 +35,6 @@
 #define PLLMR1_DEFAULT PLLMR1_266_133_66_33
 
 /* new uImage format support */
-#define CONFIG_FIT
 #define CONFIG_FIT_VERBOSE	/* enable fit_format_{error,warning}() */
 #define CONFIG_FIT_DISABLE_SHA256
 
diff --git a/include/configs/novena.h b/include/configs/novena.h
index 5f0a230..d54d422 100644
--- a/include/configs/novena.h
+++ b/include/configs/novena.h
@@ -13,7 +13,6 @@
 #define CONFIG_BOARD_EARLY_INIT_F
 #define CONFIG_BOARD_LATE_INIT
 #define CONFIG_MISC_INIT_R
-#define CONFIG_FIT
 #define CONFIG_KEYBOARD
 
 #include <config_distro_defaults.h>
diff --git a/include/configs/nyan-big.h b/include/configs/nyan-big.h
index 6f73158..d7c5b03 100644
--- a/include/configs/nyan-big.h
+++ b/include/configs/nyan-big.h
@@ -69,7 +69,6 @@
 /* General networking support */
 #define CONFIG_CMD_DHCP
 
-#define CONFIG_FIT
 #define CONFIG_FIT_BEST_MATCH
 
 #define CONFIG_KEYBOARD
diff --git a/include/configs/o2dnt-common.h b/include/configs/o2dnt-common.h
index 7900880..b8b93a5 100644
--- a/include/configs/o2dnt-common.h
+++ b/include/configs/o2dnt-common.h
@@ -332,7 +332,6 @@
 /*
  * DT support
  */
-#define CONFIG_OF_BOARD_SETUP	1
 
 #define OF_CPU			"PowerPC,5200 at 0"
 #define OF_SOC			"soc5200 at f0000000"
diff --git a/include/configs/odroid.h b/include/configs/odroid.h
index 8e67159..5396f4d 100644
--- a/include/configs/odroid.h
+++ b/include/configs/odroid.h
@@ -47,7 +47,6 @@
 #define CONFIG_SYS_CONSOLE_IS_IN_ENV
 
 #define CONFIG_CMD_BOOTZ
-#define CONFIG_FIT
 #define CONFIG_FIT_VERBOSE
 #define CONFIG_BOOTARGS			"Please use defined boot"
 #define CONFIG_BOOTCOMMAND		"run autoboot"
diff --git a/include/configs/p1_p2_rdb_pc.h b/include/configs/p1_p2_rdb_pc.h
index 2f58bf6..2640d19 100644
--- a/include/configs/p1_p2_rdb_pc.h
+++ b/include/configs/p1_p2_rdb_pc.h
@@ -668,11 +668,9 @@
 /*
  * Pass open firmware flat tree
  */
-#define CONFIG_OF_BOARD_SETUP
 #define CONFIG_OF_STDOUT_VIA_ALIAS
 
 /* new uImage format support */
-#define CONFIG_FIT
 #define CONFIG_FIT_VERBOSE	/* enable fit_format_{error,warning}() */
 
 /* I2C */
diff --git a/include/configs/p1_twr.h b/include/configs/p1_twr.h
index a08b779..573c848 100644
--- a/include/configs/p1_twr.h
+++ b/include/configs/p1_twr.h
@@ -234,11 +234,9 @@ extern unsigned long get_board_sys_clk(unsigned long dummy);
 /*
  * Pass open firmware flat tree
  */
-#define CONFIG_OF_BOARD_SETUP
 #define CONFIG_OF_STDOUT_VIA_ALIAS
 
 /* new uImage format support */
-#define CONFIG_FIT
 #define CONFIG_FIT_VERBOSE	/* enable fit_format_{error,warning}() */
 
 /* I2C */
diff --git a/include/configs/pcm030.h b/include/configs/pcm030.h
index f7722ec..f8e1bf8 100644
--- a/include/configs/pcm030.h
+++ b/include/configs/pcm030.h
@@ -418,7 +418,6 @@ RTC configuration
 #define CONFIG_USB_STORAGE
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP		1
 
 #define OF_CPU				"PowerPC,5200 at 0"
 #define OF_TBCLK			CONFIG_SYS_MPC5XXX_CLKIN
diff --git a/include/configs/pdm360ng.h b/include/configs/pdm360ng.h
index ef4206b..a743824 100644
--- a/include/configs/pdm360ng.h
+++ b/include/configs/pdm360ng.h
@@ -461,9 +461,7 @@
 
 #define CONFIG_BOOTCOMMAND	"run env_cont"
 
-#define CONFIG_OF_BOARD_SETUP	1
 #define CONFIG_OF_SUPPORT_OLD_DEVICE_TREES	1
-#define CONFIG_FIT
 #define CONFIG_FIT_VERBOSE
 
 #define OF_CPU			"PowerPC,5121 at 0"
diff --git a/include/configs/plutux.h b/include/configs/plutux.h
index 1d6df32..2893540 100644
--- a/include/configs/plutux.h
+++ b/include/configs/plutux.h
@@ -48,7 +48,6 @@
 #define CONFIG_CMD_DHCP
 
 /* support the new (FDT-based) image format */
-#define CONFIG_FIT
 
 #include "tegra-common-post.h"
 
diff --git a/include/configs/pxm2.h b/include/configs/pxm2.h
index d896bca..00a4f2c 100644
--- a/include/configs/pxm2.h
+++ b/include/configs/pxm2.h
@@ -150,7 +150,6 @@
 #endif
 
 #ifndef CONFIG_SPL_BUILD
-#define CONFIG_FIT
 #endif
 
 #endif	/* ! __CONFIG_PXM2_H */
diff --git a/include/configs/qemu-ppce500.h b/include/configs/qemu-ppce500.h
index 3de4004..02aa99a 100644
--- a/include/configs/qemu-ppce500.h
+++ b/include/configs/qemu-ppce500.h
@@ -118,11 +118,9 @@ extern unsigned long long get_phys_ccsrbar_addr_early(void);
 #define CONFIG_SYS_PROMPT_HUSH_PS2 "> "
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP
 #define CONFIG_OF_STDOUT_VIA_ALIAS
 
 /* new uImage format support */
-#define CONFIG_FIT
 #define CONFIG_FIT_VERBOSE	/* enable fit_format_{error,warning}() */
 
 /*
diff --git a/include/configs/rpi-common.h b/include/configs/rpi-common.h
index 927bae7..12f08e1 100644
--- a/include/configs/rpi-common.h
+++ b/include/configs/rpi-common.h
@@ -126,7 +126,6 @@
 #define CONFIG_CMD_PART
 
 /* Device tree support */
-#define CONFIG_OF_BOARD_SETUP
 /* ATAGs support for bootm/bootz */
 #define CONFIG_SETUP_MEMORY_TAGS
 #define CONFIG_CMDLINE_TAG
diff --git a/include/configs/rut.h b/include/configs/rut.h
index 78264ba..ddce78c 100644
--- a/include/configs/rut.h
+++ b/include/configs/rut.h
@@ -149,7 +149,6 @@
 #endif
 
 #ifndef CONFIG_SPL_BUILD
-#define CONFIG_FIT
 #endif
 
 #endif	/* ! __CONFIG_RUT_H */
diff --git a/include/configs/sbc8349.h b/include/configs/sbc8349.h
index f20f964..5d307d7 100644
--- a/include/configs/sbc8349.h
+++ b/include/configs/sbc8349.h
@@ -283,7 +283,6 @@
 #define CONFIG_SYS_HUSH_PARSER
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP	1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
 /* I2C */
diff --git a/include/configs/sbc8548.h b/include/configs/sbc8548.h
index f9aefca..9276fa2 100644
--- a/include/configs/sbc8548.h
+++ b/include/configs/sbc8548.h
@@ -420,7 +420,6 @@
 #define CONFIG_SYS_HUSH_PARSER
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP		1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
 /*
diff --git a/include/configs/sbc8641d.h b/include/configs/sbc8641d.h
index 926824f..3cf1311 100644
--- a/include/configs/sbc8641d.h
+++ b/include/configs/sbc8641d.h
@@ -265,7 +265,6 @@
 /*
  * Pass open firmware flat tree to kernel
  */
-#define CONFIG_OF_BOARD_SETUP		1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
 /*
diff --git a/include/configs/smartweb.h b/include/configs/smartweb.h
index 537fc84..21e9a55 100644
--- a/include/configs/smartweb.h
+++ b/include/configs/smartweb.h
@@ -238,7 +238,6 @@
 #if !defined(CONFIG_SPL_BUILD)
 /* Enable Device-Tree (FDT) support */
 #define CONFIG_CMD_FDT
-#define CONFIG_FIT
 #endif
 
 #ifdef CONFIG_SPL_BUILD
diff --git a/include/configs/snapper9260.h b/include/configs/snapper9260.h
index e5cf7d2..a708c68 100644
--- a/include/configs/snapper9260.h
+++ b/include/configs/snapper9260.h
@@ -29,7 +29,6 @@
 #define CONFIG_INITRD_TAG
 #define CONFIG_SKIP_LOWLEVEL_INIT
 #define CONFIG_DISPLAY_CPUINFO
-#define CONFIG_FIT
 
 /* SDRAM */
 #define CONFIG_NR_DRAM_BANKS		1
diff --git a/include/configs/socfpga_common.h b/include/configs/socfpga_common.h
index 541504a..538b474 100644
--- a/include/configs/socfpga_common.h
+++ b/include/configs/socfpga_common.h
@@ -24,7 +24,6 @@
 
 #define CONFIG_CRC32_VERIFY
 
-#define CONFIG_FIT
 #define CONFIG_SYS_BOOTMAPSZ		(64 * 1024 * 1024)
 
 #define CONFIG_TIMESTAMP		/* Print image info with timestamp */
diff --git a/include/configs/socrates.h b/include/configs/socrates.h
index 5956e11..f876b6e 100644
--- a/include/configs/socrates.h
+++ b/include/configs/socrates.h
@@ -18,7 +18,6 @@
 #define __CONFIG_H
 
 /* new uImage format support */
-#define CONFIG_FIT		1
 #define CONFIG_FIT_VERBOSE	1 /* enable fit_format_{error,warning}() */
 
 /* High Level Configuration Options */
@@ -428,7 +427,6 @@
 #define CONFIG_BOOTCOMMAND	"run boot_nor"
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP	1
 
 /* USB support */
 #define CONFIG_USB_OHCI_NEW		1
diff --git a/include/configs/strider.h b/include/configs/strider.h
index 13926e0..276582c 100644
--- a/include/configs/strider.h
+++ b/include/configs/strider.h
@@ -31,7 +31,6 @@
 #define CONFIG_LAST_STAGE_INIT
 
 /* new uImage format support */
-#define CONFIG_FIT			1
 #define CONFIG_FIT_VERBOSE		1
 
 #define CONFIG_MMC
@@ -322,7 +321,6 @@
 #define CONFIG_SYS_HUSH_PARSER
 
 /* Pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP		1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
 /* I2C */
diff --git a/include/configs/sunxi-common.h b/include/configs/sunxi-common.h
index b4dfb3c..95035d8 100644
--- a/include/configs/sunxi-common.h
+++ b/include/configs/sunxi-common.h
@@ -296,7 +296,6 @@ extern int soft_i2c_gpio_scl;
 
 /* To be able to hook simplefb into dt */
 #ifdef CONFIG_VIDEO_DT_SIMPLEFB
-#define CONFIG_OF_BOARD_SETUP
 #endif
 
 #endif /* CONFIG_VIDEO */
diff --git a/include/configs/t3corp.h b/include/configs/t3corp.h
index 7942865..1ac54e2 100644
--- a/include/configs/t3corp.h
+++ b/include/configs/t3corp.h
@@ -34,7 +34,6 @@
 #define CONFIG_BOARD_EARLY_INIT_R	1	/* Call board_early_init_r */
 #define CONFIG_MISC_INIT_R		1	/* Call misc_init_r */
 #define CONFIG_BOARD_TYPES		1	/* support board types */
-#define CONFIG_FIT
 #define CFG_ALT_MEMTEST
 
 /*
diff --git a/include/configs/t4qds.h b/include/configs/t4qds.h
index f65c4cf..2122abf 100644
--- a/include/configs/t4qds.h
+++ b/include/configs/t4qds.h
@@ -158,11 +158,9 @@
 #define CONFIG_SYS_PROMPT_HUSH_PS2 "> "
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP
 #define CONFIG_OF_STDOUT_VIA_ALIAS
 
 /* new uImage format support */
-#define CONFIG_FIT
 #define CONFIG_FIT_VERBOSE	/* enable fit_format_{error,warning}() */
 
 /* I2C */
diff --git a/include/configs/tam3517-common.h b/include/configs/tam3517-common.h
index 38ed626..a532417 100644
--- a/include/configs/tam3517-common.h
+++ b/include/configs/tam3517-common.h
@@ -258,7 +258,6 @@
 #define CONFIG_SYS_NAND_U_BOOT_OFFS	0x80000
 #define CONFIG_SYS_NAND_U_BOOT_SIZE	0x80000
 
-#define CONFIG_FIT
 #define CONFIG_CMD_UBI
 #define CONFIG_CMD_UBIFS
 #define CONFIG_RBTREE
diff --git a/include/configs/tbs2910.h b/include/configs/tbs2910.h
index 17b0213..93cd3ac 100644
--- a/include/configs/tbs2910.h
+++ b/include/configs/tbs2910.h
@@ -61,7 +61,6 @@
 
 /* Filesystems / image support */
 #define CONFIG_EFI_PARTITION
-#define CONFIG_FIT
 
 /* MMC */
 #define CONFIG_SYS_FSL_USDHC_NUM	3
diff --git a/include/configs/tec-ng.h b/include/configs/tec-ng.h
index a9e3e66..78ab459 100644
--- a/include/configs/tec-ng.h
+++ b/include/configs/tec-ng.h
@@ -59,7 +59,6 @@
 #define CONFIG_SETUP_MEMORY_TAGS
 #define CONFIG_INITRD_TAG
 /* support the new (FDT-based) image format */
-#define CONFIG_FIT
 
 #include "tegra-common-post.h"
 
diff --git a/include/configs/tec.h b/include/configs/tec.h
index 4b8ca5e..3543837 100644
--- a/include/configs/tec.h
+++ b/include/configs/tec.h
@@ -55,7 +55,6 @@
 #define CONFIG_SYS_WHITE_ON_BLACK
 
 /* support the new (FDT-based) image format */
-#define CONFIG_FIT
 
 #include "tegra-common-post.h"
 
diff --git a/include/configs/tegra-common.h b/include/configs/tegra-common.h
index ba819c4..dac26e6 100644
--- a/include/configs/tegra-common.h
+++ b/include/configs/tegra-common.h
@@ -141,6 +141,5 @@
 #define CONFIG_FAT_WRITE
 #endif
 
-#define CONFIG_OF_SYSTEM_SETUP
 
 #endif /* _TEGRA_COMMON_H_ */
diff --git a/include/configs/ti_armv7_keystone2.h b/include/configs/ti_armv7_keystone2.h
index a7206f4..1b7624b 100644
--- a/include/configs/ti_armv7_keystone2.h
+++ b/include/configs/ti_armv7_keystone2.h
@@ -278,7 +278,6 @@
 #define CONFIG_BOOTARGS							\
 
 /* Linux interfacing */
-#define CONFIG_OF_BOARD_SETUP
 
 /* Now for the remaining common defines */
 #include <configs/ti_armv7_common.h>
diff --git a/include/configs/tqma6.h b/include/configs/tqma6.h
index e7aa42d..a90c153 100644
--- a/include/configs/tqma6.h
+++ b/include/configs/tqma6.h
@@ -378,8 +378,6 @@
 #define CONFIG_SYS_INIT_SP_ADDR \
 	(CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET)
 
-#define CONFIG_OF_BOARD_SETUP
-#define CONFIG_FIT
 #define CONFIG_FIT_VERBOSE
 
 /*
diff --git a/include/configs/trats.h b/include/configs/trats.h
index 5fb991b..023c720 100644
--- a/include/configs/trats.h
+++ b/include/configs/trats.h
@@ -49,7 +49,6 @@
 #define MACH_TYPE_TRATS			3928
 #define CONFIG_MACH_TYPE		MACH_TYPE_TRATS
 
-#define CONFIG_FIT
 #define CONFIG_FIT_VERBOSE
 #define CONFIG_BOOTARGS			"Please use defined boot"
 #define CONFIG_BOOTCOMMAND		"run autoboot"
diff --git a/include/configs/trats2.h b/include/configs/trats2.h
index f12a952..18ba3d4 100644
--- a/include/configs/trats2.h
+++ b/include/configs/trats2.h
@@ -41,7 +41,6 @@
 #define CONFIG_SYS_CONSOLE_INFO_QUIET
 #define CONFIG_SYS_CONSOLE_IS_IN_ENV
 
-#define CONFIG_FIT
 #define CONFIG_FIT_VERBOSE
 #define CONFIG_BOOTARGS			"Please use defined boot"
 #define CONFIG_BOOTCOMMAND		"run autoboot"
diff --git a/include/configs/tseries.h b/include/configs/tseries.h
index 914d193..b18e6ec 100644
--- a/include/configs/tseries.h
+++ b/include/configs/tseries.h
@@ -38,7 +38,6 @@
 
 /* Support both device trees and ATAGs. */
 #define CONFIG_USE_FDT			/* use fdt within board code */
-#define CONFIG_OF_BOARD_SETUP
 #define CONFIG_CMDLINE_TAG
 #define CONFIG_SETUP_MEMORY_TAGS
 #define CONFIG_INITRD_TAG
diff --git a/include/configs/ve8313.h b/include/configs/ve8313.h
index 8fbf33f..6c6c9a3 100644
--- a/include/configs/ve8313.h
+++ b/include/configs/ve8313.h
@@ -243,7 +243,6 @@
 				/* 0xfe0009f7 */
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP	1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
 /*
diff --git a/include/configs/vme8349.h b/include/configs/vme8349.h
index 6343d87..78a1d83 100644
--- a/include/configs/vme8349.h
+++ b/include/configs/vme8349.h
@@ -216,7 +216,6 @@
 #define CONFIG_SYS_HUSH_PARSER
 
 /* pass open firmware flat tree */
-#define CONFIG_OF_BOARD_SETUP
 #define CONFIG_OF_STDOUT_VIA_ALIAS
 
 /* I2C */
diff --git a/include/configs/x86-common.h b/include/configs/x86-common.h
index 6e681f9..3623c57 100644
--- a/include/configs/x86-common.h
+++ b/include/configs/x86-common.h
@@ -26,7 +26,6 @@
 #define CONFIG_LMB
 
 #define CONFIG_LZO
-#define CONFIG_FIT
 #undef CONFIG_ZLIB
 #undef CONFIG_GZIP
 #define CONFIG_SYS_BOOTM_LEN		(16 << 20)
diff --git a/include/configs/xpedite1000.h b/include/configs/xpedite1000.h
index 5bc926f..2b4fe95 100644
--- a/include/configs/xpedite1000.h
+++ b/include/configs/xpedite1000.h
@@ -210,7 +210,6 @@ extern void out32(unsigned int, unsigned long);
 #define CONFIG_BOOTDELAY	3		/* -1 disables auto-boot */
 #define CONFIG_PANIC_HANG			/* do not reset board on panic */
 #define CONFIG_PREBOOT				/* enable preboot variable */
-#define CONFIG_FIT		1
 #define CONFIG_FIT_VERBOSE	1
 #define CONFIG_INTEGRITY			/* support booting INTEGRITY OS */
 #define CONFIG_SYS_EXTBDINFO	1		/* To use extended board_into (bd_t) */
diff --git a/include/configs/xpedite517x.h b/include/configs/xpedite517x.h
index 47ef9ac..4dd852c 100644
--- a/include/configs/xpedite517x.h
+++ b/include/configs/xpedite517x.h
@@ -233,7 +233,6 @@ extern unsigned long get_board_sys_clk(unsigned long dummy);
 /*
  * Pass open firmware flat tree
  */
-#define CONFIG_OF_BOARD_SETUP		1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
 /*
@@ -556,7 +555,6 @@ extern unsigned long get_board_sys_clk(unsigned long dummy);
 #define CONFIG_BOOTDELAY	3		/* -1 disables auto-boot */
 #define CONFIG_PANIC_HANG			/* do not reset board on panic */
 #define CONFIG_PREBOOT				/* enable preboot variable */
-#define CONFIG_FIT		1
 #define CONFIG_FIT_VERBOSE	1
 #define CONFIG_INTEGRITY			/* support booting INTEGRITY OS */
 
diff --git a/include/configs/xpedite520x.h b/include/configs/xpedite520x.h
index 712475e..4f38b29 100644
--- a/include/configs/xpedite520x.h
+++ b/include/configs/xpedite520x.h
@@ -196,7 +196,6 @@
 /*
  * Pass open firmware flat tree
  */
-#define CONFIG_OF_BOARD_SETUP		1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
 /*
@@ -339,7 +338,6 @@
 #define CONFIG_BOOTDELAY	3		/* -1 disables auto-boot */
 #define CONFIG_PANIC_HANG			/* do not reset board on panic */
 #define CONFIG_PREBOOT				/* enable preboot variable */
-#define CONFIG_FIT		1
 #define CONFIG_FIT_VERBOSE	1
 #define CONFIG_INTEGRITY			/* support booting INTEGRITY OS */
 #define CONFIG_INTERRUPTS		/* enable pci, srio, ddr interrupts */
diff --git a/include/configs/xpedite537x.h b/include/configs/xpedite537x.h
index 1c3b14c..ffa08b6 100644
--- a/include/configs/xpedite537x.h
+++ b/include/configs/xpedite537x.h
@@ -232,7 +232,6 @@ extern unsigned long get_board_ddr_clk(unsigned long dummy);
 /*
  * Pass open firmware flat tree
  */
-#define CONFIG_OF_BOARD_SETUP		1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 
 /*
@@ -411,7 +410,6 @@ extern unsigned long get_board_ddr_clk(unsigned long dummy);
 #define CONFIG_BOOTDELAY	3		/* -1 disables auto-boot */
 #define CONFIG_PANIC_HANG			/* do not reset board on panic */
 #define CONFIG_PREBOOT				/* enable preboot variable */
-#define CONFIG_FIT		1
 #define CONFIG_FIT_VERBOSE	1
 #define CONFIG_INTEGRITY			/* support booting INTEGRITY OS */
 
diff --git a/include/configs/xpedite550x.h b/include/configs/xpedite550x.h
index 10c6695..2c92966 100644
--- a/include/configs/xpedite550x.h
+++ b/include/configs/xpedite550x.h
@@ -223,7 +223,6 @@ extern unsigned long get_board_ddr_clk(unsigned long dummy);
 /*
  * Pass open firmware flat tree
  */
-#define CONFIG_OF_BOARD_SETUP		1
 #define CONFIG_OF_STDOUT_VIA_ALIAS	1
 #define CONFIG_FDT_FIXUP_PCI_IRQ	1
 
@@ -396,7 +395,6 @@ extern unsigned long get_board_ddr_clk(unsigned long dummy);
 #define CONFIG_BOOTDELAY	3		/* -1 disables auto-boot */
 #define CONFIG_PANIC_HANG			/* do not reset board on panic */
 #define CONFIG_PREBOOT				/* enable preboot variable */
-#define CONFIG_FIT		1
 #define CONFIG_FIT_VERBOSE	1
 #define CONFIG_INTEGRITY			/* support booting INTEGRITY OS */
 
diff --git a/include/image.h b/include/image.h
index 9967bde..061d6ed 100644
--- a/include/image.h
+++ b/include/image.h
@@ -27,6 +27,7 @@ struct lmb;
 
 /* new uImage format support enabled on host */
 #define CONFIG_FIT		1
+#define IMAGE_USE_FIT		1
 #define CONFIG_FIT_VERBOSE	1 /* enable fit_format_{error,warning}() */
 
 #define IMAGE_ENABLE_IGNORE	0
@@ -42,9 +43,11 @@ struct lmb;
 #define IMAGE_ENABLE_IGNORE	1
 #define IMAGE_INDENT_STRING	"   "
 
+#define IMAGE_USE_FIT		CONFIG_IS_ENABLED(FIT)
+
 #endif /* USE_HOSTCC */
 
-#if defined(CONFIG_FIT)
+#if IMAGE_USE_FIT
 #include <hash.h>
 #include <libfdt.h>
 #include <fdt_support.h>
@@ -308,7 +311,7 @@ typedef struct bootm_headers {
 	image_header_t	legacy_hdr_os_copy;	/* header copy */
 	ulong		legacy_hdr_valid;
 
-#if defined(CONFIG_FIT)
+#if IMAGE_USE_FIT
 	const char	*fit_uname_cfg;	/* configuration node unit name */
 
 	void		*fit_hdr_os;	/* os FIT image header */
@@ -755,7 +758,7 @@ int bootz_setup(ulong image, ulong *start, ulong *end);
 /*******************************************************************/
 /* New uImage format specific code (prefixed with fit_) */
 /*******************************************************************/
-#if defined(CONFIG_FIT)
+#if IMAGE_USE_FIT
 
 #define FIT_IMAGES_PATH		"/images"
 #define FIT_CONFS_PATH		"/configurations"
-- 
2.7.0.rc3.207.g0ac5344

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

* [U-Boot] [PATCH 11/26] fdt: Adjust DEFAULT_DEVICE_TREE to device on OF_CONTROL
  2016-01-28 16:39 ` Simon Glass
                   ` (10 preceding siblings ...)
  (?)
@ 2016-01-28 16:39 ` Simon Glass
  -1 siblings, 0 replies; 54+ messages in thread
From: Simon Glass @ 2016-01-28 16:39 UTC (permalink / raw)
  To: u-boot

This option has no meaning without OF_CONTROL, so add a dependency.

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

 dts/Kconfig | 1 +
 1 file changed, 1 insertion(+)

diff --git a/dts/Kconfig b/dts/Kconfig
index fb2d79e..ba83d5f 100644
--- a/dts/Kconfig
+++ b/dts/Kconfig
@@ -53,6 +53,7 @@ endchoice
 
 config DEFAULT_DEVICE_TREE
 	string "Default Device Tree for DT control"
+	depends on OF_CONTROL
 	help
 	  This option specifies the default Device Tree used for DT control.
 	  It can be overridden from the command line:
-- 
2.7.0.rc3.207.g0ac5344

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

* [U-Boot] [PATCH 12/26] fdt: Allow libfdt to be used in SPL
  2016-01-28 16:39 ` Simon Glass
                   ` (11 preceding siblings ...)
  (?)
@ 2016-01-28 16:39 ` Simon Glass
  -1 siblings, 0 replies; 54+ messages in thread
From: Simon Glass @ 2016-01-28 16:39 UTC (permalink / raw)
  To: u-boot

Add an option to enable libfdt in SPL. This can be useful when decoding
FIT files in SPL.

We need to make sure this option is not enabled in SPL by this change.
Also this option needs to be enabled in host builds. Si add a new
IMAGE_USE_LIBFDT #define which can be used in files that are built on the
host but must also build for U-Boot and SPL.

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

 common/Makefile  |  4 ++--
 common/bootm.c   |  4 ++--
 common/image.c   |  4 ++--
 include/common.h |  4 ++--
 include/image.h  |  8 ++------
 lib/Kconfig      | 10 ++++++++++
 lib/Makefile     |  4 +---
 7 files changed, 21 insertions(+), 17 deletions(-)

diff --git a/common/Makefile b/common/Makefile
index 25083a4..2639e57 100644
--- a/common/Makefile
+++ b/common/Makefile
@@ -55,7 +55,7 @@ obj-$(CONFIG_ENV_IS_IN_UBI) += env_ubi.o
 obj-$(CONFIG_ENV_IS_NOWHERE) += env_nowhere.o
 
 obj-$(CONFIG_CMD_BEDBUG) += bedbug.o
-obj-$(CONFIG_OF_LIBFDT) += fdt_support.o
+obj-$(CONFIG_$(SPL_)OF_LIBFDT) += fdt_support.o
 
 obj-$(CONFIG_MII) += miiphyutil.o
 obj-$(CONFIG_CMD_MII) += miiphyutil.o
@@ -130,7 +130,7 @@ obj-y += malloc_simple.o
 endif
 obj-y += image.o
 obj-$(CONFIG_ANDROID_BOOT_IMAGE) += image-android.o
-obj-$(CONFIG_OF_LIBFDT) += image-fdt.o
+obj-$(CONFIG_$(SPL_)OF_LIBFDT) += image-fdt.o
 obj-$(CONFIG_$(SPL_)FIT) += image-fit.o
 obj-$(CONFIG_FIT_SIGNATURE) += image-sig.o
 obj-$(CONFIG_IO_TRACE) += iotrace.o
diff --git a/common/bootm.c b/common/bootm.c
index 686d28b..947d19e 100644
--- a/common/bootm.c
+++ b/common/bootm.c
@@ -234,7 +234,7 @@ int bootm_find_images(int flag, int argc, char * const argv[])
 		return 1;
 	}
 
-#if defined(CONFIG_OF_LIBFDT)
+#if IMAGE_ENABLE_OF_LIBFDT
 	/* find flattened device tree */
 	ret = boot_get_fdt(flag, argc, argv, IH_ARCH_DEFAULT, &images,
 			   &images.ft_addr, &images.ft_len);
@@ -644,7 +644,7 @@ int do_bootm_states(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[],
 		}
 	}
 #endif
-#if defined(CONFIG_OF_LIBFDT) && defined(CONFIG_LMB)
+#if IMAGE_ENABLE_OF_LIBFDT && defined(CONFIG_LMB)
 	if (!ret && (states & BOOTM_STATE_FDT)) {
 		boot_fdt_add_mem_rsv_regions(&images->lmb, images->ft_addr);
 		ret = boot_relocate_fdt(&images->lmb, &images->ft_addr,
diff --git a/common/image.c b/common/image.c
index ca43763..fad31b2 100644
--- a/common/image.c
+++ b/common/image.c
@@ -29,7 +29,7 @@
 #include <image.h>
 #include <mapmem.h>
 
-#if IMAGE_USE_FIT || defined(CONFIG_OF_LIBFDT)
+#if IMAGE_USE_FIT || IMAGE_ENABLE_OF_LIBFDT
 #include <libfdt.h>
 #include <fdt_support.h>
 #endif
@@ -757,7 +757,7 @@ int genimg_get_format(const void *img_addr)
 	if (image_check_magic(hdr))
 		return IMAGE_FORMAT_LEGACY;
 #endif
-#if IMAGE_USE_FIT || defined(CONFIG_OF_LIBFDT)
+#if IMAGE_USE_FIT || IMAGE_ENABLE_OF_LIBFDT
 	if (fdt_check_header(img_addr) == 0)
 		return IMAGE_FORMAT_FIT;
 #endif
diff --git a/include/common.h b/include/common.h
index 1563d64..5153680 100644
--- a/include/common.h
+++ b/include/common.h
@@ -596,7 +596,7 @@ void	upmconfig     (unsigned int, unsigned int *, unsigned int);
 ulong	get_tbclk     (void);
 void	reset_misc    (void);
 void	reset_cpu     (ulong addr);
-#if defined (CONFIG_OF_LIBFDT) && defined (CONFIG_OF_BOARD_SETUP)
+#if IMAGE_ENABLE_OF_LIBFDT && defined(CONFIG_OF_BOARD_SETUP)
 void ft_cpu_setup(void *blob, bd_t *bd);
 #ifdef CONFIG_PCI
 void ft_pci_setup(void *blob, bd_t *bd);
@@ -660,7 +660,7 @@ int get_serial_clock(void);
 #if defined(CONFIG_MPC85xx)
 typedef MPC85xx_SYS_INFO sys_info_t;
 void	get_sys_info  ( sys_info_t * );
-#  if defined(CONFIG_OF_LIBFDT)
+#  if IMAGE_ENABLE_OF_LIBFDT
 	void ft_fixup_cpu(void *, u64);
 	void ft_fixup_num_cores(void *);
 #  endif
diff --git a/include/image.h b/include/image.h
index 061d6ed..9eb3616 100644
--- a/include/image.h
+++ b/include/image.h
@@ -28,6 +28,7 @@ struct lmb;
 /* new uImage format support enabled on host */
 #define CONFIG_FIT		1
 #define IMAGE_USE_FIT		1
+#define IMAGE_ENABLE_OF_LIBFDT	1
 #define CONFIG_FIT_VERBOSE	1 /* enable fit_format_{error,warning}() */
 
 #define IMAGE_ENABLE_IGNORE	0
@@ -44,6 +45,7 @@ struct lmb;
 #define IMAGE_INDENT_STRING	"   "
 
 #define IMAGE_USE_FIT		CONFIG_IS_ENABLED(FIT)
+#define IMAGE_ENABLE_OF_LIBFDT	CONFIG_IS_ENABLED(OF_LIBFDT)
 
 #endif /* USE_HOSTCC */
 
@@ -104,12 +106,6 @@ struct lmb;
 # define IMAGE_ENABLE_RAMDISK_HIGH	0
 #endif
 
-#ifdef CONFIG_OF_LIBFDT
-# define IMAGE_ENABLE_OF_LIBFDT	1
-#else
-# define IMAGE_ENABLE_OF_LIBFDT	0
-#endif
-
 #ifdef CONFIG_SYS_BOOT_GET_CMDLINE
 # define IMAGE_BOOT_GET_CMDLINE		1
 #else
diff --git a/lib/Kconfig b/lib/Kconfig
index 90ed497..e382f97 100644
--- a/lib/Kconfig
+++ b/lib/Kconfig
@@ -138,6 +138,16 @@ config OF_LIBFDT
 	  particular compatible nodes. The library operates on a flattened
 	  version of the device tree.
 
+config SPL_OF_LIBFDT
+	bool "Enable the FDT library for SPL"
+	default y if SPL_OF_CONTROL
+	help
+	  This enables the FDT library (libfdt). It provides functions for
+	  accessing binary device tree images in memory, such as adding and
+	  removing notes and properties, scanning through the tree and finding
+	  particular compatible nodes. The library operates on a flattened
+	  version of the device tree.
+
 source lib/efi/Kconfig
 
 endmenu
diff --git a/lib/Makefile b/lib/Makefile
index dd36f25..9a02754 100644
--- a/lib/Makefile
+++ b/lib/Makefile
@@ -50,9 +50,7 @@ obj-$(CONFIG_BITREVERSE) += bitrev.o
 obj-y += list_sort.o
 endif
 
-ifndef CONFIG_SPL_BUILD
-obj-$(CONFIG_OF_LIBFDT) += libfdt/
-endif
+obj-$(CONFIG_$(SPL)OF_LIBFDT) += libfdt/
 ifdef CONFIG_SPL_OF_CONTROL
 obj-$(CONFIG_OF_LIBFDT) += libfdt/
 endif
-- 
2.7.0.rc3.207.g0ac5344

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

* [U-Boot] [PATCH 13/26] sunxi: Display the board model on start-up
  2016-01-28 16:39 ` Simon Glass
                   ` (12 preceding siblings ...)
  (?)
@ 2016-01-28 16:39 ` Simon Glass
  -1 siblings, 0 replies; 54+ messages in thread
From: Simon Glass @ 2016-01-28 16:39 UTC (permalink / raw)
  To: u-boot

It is useful to know which sunxi board you are booting. Display this on
start-up to avoid confusion.

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

 include/configs/sunxi-common.h | 1 +
 1 file changed, 1 insertion(+)

diff --git a/include/configs/sunxi-common.h b/include/configs/sunxi-common.h
index 95035d8..7707067 100644
--- a/include/configs/sunxi-common.h
+++ b/include/configs/sunxi-common.h
@@ -174,6 +174,7 @@
 
 #define CONFIG_SYS_MONITOR_LEN		(768 << 10)	/* 768 KiB */
 #define CONFIG_IDENT_STRING		" Allwinner Technology"
+#define CONFIG_DISPLAY_BOARDINFO
 
 #define CONFIG_ENV_OFFSET		(544 << 10) /* (8 + 24 + 512) KiB */
 #define CONFIG_ENV_SIZE			(128 << 10)	/* 128 KiB */
-- 
2.7.0.rc3.207.g0ac5344

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

* [U-Boot] [PATCH 14/26] tools: Include fdt_sw.o in libfdt for mkimage
  2016-01-28 16:39 ` Simon Glass
                   ` (13 preceding siblings ...)
  (?)
@ 2016-01-28 16:39 ` Simon Glass
  -1 siblings, 0 replies; 54+ messages in thread
From: Simon Glass @ 2016-01-28 16:39 UTC (permalink / raw)
  To: u-boot

At present this file is omitted. It is used to build up a binary device
tree. We plan to do this in mkimage, so include this file in the build.

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

 tools/Makefile | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tools/Makefile b/tools/Makefile
index 1382b05..e34df26 100644
--- a/tools/Makefile
+++ b/tools/Makefile
@@ -59,7 +59,7 @@ FIT_SIG_OBJS-$(CONFIG_FIT_SIGNATURE) := common/image-sig.o
 # Flattened device tree objects
 LIBFDT_OBJS := $(addprefix lib/libfdt/, \
 			fdt.o fdt_ro.o fdt_rw.o fdt_strerror.o fdt_wip.o \
-			fdt_region.o)
+			fdt_region.o fdt_sw.o)
 RSA_OBJS-$(CONFIG_FIT_SIGNATURE) := $(addprefix lib/rsa/, \
 					rsa-sign.o rsa-verify.o rsa-checksum.o \
 					rsa-mod-exp.o)
-- 
2.7.0.rc3.207.g0ac5344

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

* [U-Boot] [PATCH 15/26] mkimage: Allow a FIT to include an image of any type
  2016-01-28 16:39 ` Simon Glass
                   ` (14 preceding siblings ...)
  (?)
@ 2016-01-28 16:39 ` Simon Glass
  -1 siblings, 0 replies; 54+ messages in thread
From: Simon Glass @ 2016-01-28 16:39 UTC (permalink / raw)
  To: u-boot

At present FIT images are set up by providing a device tree source file
which is a file with a .its extension. We want to support automatically
creating this file based on the image supplied to mkimage. This means that
even though the final file type is always IH_TYPE_FLATDT, the image inside
may be something else.

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

 tools/imagetool.h |  1 +
 tools/mkimage.c   | 33 ++++++++++++++++++++++++++++-----
 2 files changed, 29 insertions(+), 5 deletions(-)

diff --git a/tools/imagetool.h b/tools/imagetool.h
index ad2deb5..e0397f7 100644
--- a/tools/imagetool.h
+++ b/tools/imagetool.h
@@ -61,6 +61,7 @@ struct image_tool_params {
 	int require_keys;	/* 1 to mark signing keys as 'required' */
 	int file_size;		/* Total size of output file */
 	int orig_file_size;	/* Original size for file before padding */
+	int fit_image_type;	/* Image type to put into the FIT */
 };
 
 /*
diff --git a/tools/mkimage.c b/tools/mkimage.c
index b8293f6..73367d1 100644
--- a/tools/mkimage.c
+++ b/tools/mkimage.c
@@ -112,10 +112,14 @@ static void usage(const char *msg)
 static void process_args(int argc, char **argv)
 {
 	char *ptr;
+	int type = IH_TYPE_INVALID;
+	char *datafile = NULL;
+	int expecting;
 	int opt;
 
+	expecting = IH_TYPE_COUNT;	/* Unknown */
 	while ((opt = getopt(argc, argv,
-			     "a:A:cC:d:D:e:f:Fk:K:ln:O:rR:sT:vVx")) != -1) {
+			     "-a:A:cC:d:D:e:f:Fk:K:ln:O:rR:sT:vVx")) != -1) {
 		switch (opt) {
 		case 'a':
 			params.addr = strtoul(optarg, &ptr, 16);
@@ -162,6 +166,7 @@ static void process_args(int argc, char **argv)
 			 * The flattened image tree (FIT) format
 			 * requires a flattened device tree image type
 			 */
+			params.fit_image_type = params.type;
 			params.type = IH_TYPE_FLATDT;
 			params.fflag = 1;
 			break;
@@ -196,11 +201,12 @@ static void process_args(int argc, char **argv)
 			params.skipcpy = 1;
 			break;
 		case 'T':
-			params.type = genimg_get_type_id(optarg);
-			if (params.type < 0) {
+			type = genimg_get_type_id(optarg);
+			if (type < 0) {
 				show_image_types();
 				usage("Invalid image type");
 			}
+			expecting = type;
 			break;
 		case 'v':
 			params.vflag++;
@@ -211,14 +217,31 @@ static void process_args(int argc, char **argv)
 		case 'x':
 			params.xflag++;
 			break;
+		case 1:
+			if (expecting == type || expecting == IH_TYPE_COUNT) {
+				params.imagefile = optarg;
+				expecting = IH_TYPE_INVALID;
+			}
+			break;
 		default:
 			usage("Invalid option");
 		}
 	}
 
-	if (optind >= argc)
+	/*
+	 * For auto-generated FIT images we need to know the image type to put
+	 * in the FIT, which is separate from the file's image type (which
+	 * will always be IH_TYPE_FLATDT in this case).
+	 */
+	if (params.type == IH_TYPE_FLATDT) {
+		params.fit_image_type = type;
+		params.datafile = datafile;
+	} else if (type != IH_TYPE_INVALID) {
+		params.type = type;
+	}
+
+	if (!params.imagefile)
 		usage("Missing output filename");
-	params.imagefile = argv[optind];
 }
 
 
-- 
2.7.0.rc3.207.g0ac5344

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

* [U-Boot] [PATCH 16/26] tools: Add a function to obtain the size of a file
  2016-01-28 16:39 ` Simon Glass
                   ` (15 preceding siblings ...)
  (?)
@ 2016-01-28 16:39 ` Simon Glass
  -1 siblings, 0 replies; 54+ messages in thread
From: Simon Glass @ 2016-01-28 16:39 UTC (permalink / raw)
  To: u-boot

This will be used in mkimage when working out the required size of the FIT
based on the files to be placed into it.

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

 doc/mkimage.1     |  4 ++--
 tools/imagetool.c | 22 ++++++++++++++++++++++
 tools/imagetool.h | 12 ++++++++++++
 3 files changed, 36 insertions(+), 2 deletions(-)

diff --git a/doc/mkimage.1 b/doc/mkimage.1
index b48f70b..1b9d18c 100644
--- a/doc/mkimage.1
+++ b/doc/mkimage.1
@@ -164,7 +164,7 @@ skipping those for which keys cannot be found. Also add a comment.
 .nf
 .B mkimage -f kernel.its -k /public/signing-keys -K u-boot.dtb \\\\
 .br
-.B -c "Kernel 3.8 image for production devices" kernel.itb
+.B -c """Kernel 3.8 image for production devices""" kernel.itb
 .fi
 
 .P
@@ -175,7 +175,7 @@ with unavailable keys are skipped.
 .nf
 .B mkimage -F -k /secret/signing-keys -K u-boot.dtb \\\\
 .br
-.B -c "Kernel 3.8 image for production devices" kernel.itb
+.B -c """Kernel 3.8 image for production devices""" kernel.itb
 .fi
 
 .SH HOMEPAGE
diff --git a/tools/imagetool.c b/tools/imagetool.c
index 4b0b73d..351211c 100644
--- a/tools/imagetool.c
+++ b/tools/imagetool.c
@@ -91,3 +91,25 @@ int imagetool_save_subimage(
 
 	return 0;
 }
+
+int imagetool_get_filesize(struct image_tool_params *params, const char *fname)
+{
+	struct stat sbuf;
+	int fd;
+
+	fd = open(fname, O_RDONLY | O_BINARY);
+	if (fd < 0) {
+		fprintf(stderr, "%s: Can't open %s: %s\n",
+			params->cmdname, fname, strerror(errno));
+		return -1;
+	}
+
+	if (fstat(fd, &sbuf) < 0) {
+		fprintf(stderr, "%s: Can't stat %s: %s\n",
+			params->cmdname, fname, strerror(errno));
+		return -1;
+	}
+	close(fd);
+
+	return sbuf.st_size;
+}
diff --git a/tools/imagetool.h b/tools/imagetool.h
index e0397f7..3cf42ac 100644
--- a/tools/imagetool.h
+++ b/tools/imagetool.h
@@ -181,6 +181,18 @@ int imagetool_save_subimage(
 	ulong file_data,
 	ulong file_len);
 
+/**
+ * imagetool_get_filesize() - Utility function to obtain the size of a file
+ *
+ * This function prints a message if an error occurs, showing the error that
+ * was obtained.
+ *
+ * @params:	mkimage parameters
+ * @fname:	filename to check
+ * @return size of file, or -ve value on error
+ */
+int imagetool_get_filesize(struct image_tool_params *params, const char *fname);
+
 /*
  * There is a c file associated with supported image type low level code
  * for ex. default_image.c, fit_image.c
-- 
2.7.0.rc3.207.g0ac5344

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

* [U-Boot] [PATCH 17/26] image: Add functions to obtain short names
  2016-01-28 16:39 ` Simon Glass
                   ` (16 preceding siblings ...)
  (?)
@ 2016-01-28 16:39 ` Simon Glass
  -1 siblings, 0 replies; 54+ messages in thread
From: Simon Glass @ 2016-01-28 16:39 UTC (permalink / raw)
  To: u-boot

Sometimes it is useful to obtain the short name for an Operating System,
architecture or compression mechanism. Provide functions for this.

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

 common/image.c  | 26 ++++++++++++++++++++++----
 include/image.h | 27 +++++++++++++++++++++++++++
 2 files changed, 49 insertions(+), 4 deletions(-)

diff --git a/common/image.c b/common/image.c
index fad31b2..e72a979 100644
--- a/common/image.c
+++ b/common/image.c
@@ -603,11 +603,9 @@ const char *genimg_get_type_name(uint8_t type)
 	return (get_table_entry_name(uimage_type, "Unknown Image", type));
 }
 
-const char *genimg_get_type_short_name(uint8_t type)
+static const char *genimg_get_short_name(const table_entry_t *table, int val)
 {
-	const table_entry_t *table;
-
-	table = get_table_entry(uimage_type, type);
+	table = get_table_entry(table, val);
 	if (!table)
 		return "unknown";
 #if defined(USE_HOSTCC) || !defined(CONFIG_NEEDS_MANUAL_RELOC)
@@ -617,12 +615,32 @@ const char *genimg_get_type_short_name(uint8_t type)
 #endif
 }
 
+const char *genimg_get_type_short_name(uint8_t type)
+{
+	return genimg_get_short_name(uimage_type, type);
+}
+
 const char *genimg_get_comp_name(uint8_t comp)
 {
 	return (get_table_entry_name(uimage_comp, "Unknown Compression",
 					comp));
 }
 
+const char *genimg_get_comp_short_name(uint8_t comp)
+{
+	return genimg_get_short_name(uimage_comp, comp);
+}
+
+const char *genimg_get_os_short_name(uint8_t os)
+{
+	return genimg_get_short_name(uimage_os, os);
+}
+
+const char *genimg_get_arch_short_name(uint8_t arch)
+{
+	return genimg_get_short_name(uimage_arch, arch);
+}
+
 /**
  * get_table_entry_id - translate short entry name to id
  * @table: pointer to a translation table for entries of a specific type
diff --git a/include/image.h b/include/image.h
index 9eb3616..fa201d7 100644
--- a/include/image.h
+++ b/include/image.h
@@ -414,7 +414,25 @@ int get_table_entry_id(const table_entry_t *table,
 char *get_table_entry_name(const table_entry_t *table, char *msg, int id);
 
 const char *genimg_get_os_name(uint8_t os);
+
+/**
+ * genimg_get_os_short_name() - get the short name for an OS
+ *
+ * @param os	OS (IH_OS_...)
+ * @return OS short name, or "unknown" if unknown
+ */
+const char *genimg_get_os_short_name(uint8_t comp);
+
 const char *genimg_get_arch_name(uint8_t arch);
+
+/**
+ * genimg_get_arch_short_name() - get the short name for an architecture
+ *
+ * @param arch	Architecture type (IH_ARCH_...)
+ * @return architecture short name, or "unknown" if unknown
+ */
+const char *genimg_get_arch_short_name(uint8_t arch);
+
 const char *genimg_get_type_name(uint8_t type);
 
 /**
@@ -426,6 +444,15 @@ const char *genimg_get_type_name(uint8_t type);
 const char *genimg_get_type_short_name(uint8_t type);
 
 const char *genimg_get_comp_name(uint8_t comp);
+
+/**
+ * genimg_get_comp_short_name() - get the short name for a compression method
+ *
+ * @param comp	compression method (IH_COMP_...)
+ * @return compression method short name, or "unknown" if unknown
+ */
+const char *genimg_get_comp_short_name(uint8_t comp);
+
 int genimg_get_os_id(const char *name);
 int genimg_get_arch_id(const char *name);
 int genimg_get_type_id(const char *name);
-- 
2.7.0.rc3.207.g0ac5344

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

* [U-Boot] [PATCH 18/26] mkimage: Support automatic creating of a FIT without a .its
  2016-01-28 16:39 ` Simon Glass
                   ` (17 preceding siblings ...)
  (?)
@ 2016-01-28 16:39 ` Simon Glass
  -1 siblings, 0 replies; 54+ messages in thread
From: Simon Glass @ 2016-01-28 16:39 UTC (permalink / raw)
  To: u-boot

At present, when generating a FIT, mkimage requires a .its file containing
the structure of the FIT and referring to the images to be included.

Creating the .its file is a separate step that makes it harder to use FIT.
This is not required for creating legacy images.

Often the FIT is pretty standard, consisting of an OS image, some device
tree files and a single configuration. We can handle this case automatically
and avoid needing a .its file at all.

To start with, support automatically generate the FIT using a new '-f auto'
option. Initially this only supports adding a single image (e.g. a linux
kernel) and a single configuration.

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

 doc/mkimage.1     |  16 +++-
 tools/fit_image.c | 216 +++++++++++++++++++++++++++++++++++++++++++++++++++++-
 tools/imagetool.h |   1 +
 tools/mkimage.c   |   8 +-
 4 files changed, 235 insertions(+), 6 deletions(-)

diff --git a/doc/mkimage.1 b/doc/mkimage.1
index 1b9d18c..146c114 100644
--- a/doc/mkimage.1
+++ b/doc/mkimage.1
@@ -108,10 +108,15 @@ Provide special options to the device tree compiler that is used to
 create the image.
 
 .TP
-.BI "\-f [" "image tree source file" "]"
+.BI "\-f [" "image tree source file" " | " "auto" "]"
 Image tree source file that describes the structure and contents of the
 FIT image.
 
+This can be automatically generated for some simple cases.
+Use "-f auto" for this. In that case the arguments -d, -A, -O, -T, -C, -a
+and -e are used to specify the image to include in the FIT and its attributes.
+No .its file is required.
+
 .TP
 .BI "\-F"
 Indicates that an existing FIT image should be modified. No dtc
@@ -178,6 +183,15 @@ with unavailable keys are skipped.
 .B -c """Kernel 3.8 image for production devices""" kernel.itb
 .fi
 
+.P
+Create a FIT image containing a kernel, using automatic mode. No .its file
+is required.
+.nf
+.B mkimage -f auto -A arm -O linux -T kernel -C none -a 43e00000 -e 0 \\\\
+.br
+.B -c """Kernel 4.4 image for production devices""" -d vmlinuz kernel.itb
+.fi
+
 .SH HOMEPAGE
 http://www.denx.de/wiki/U-Boot/WebHome
 .PP
diff --git a/tools/fit_image.c b/tools/fit_image.c
index eb2a25e..343de60 100644
--- a/tools/fit_image.c
+++ b/tools/fit_image.c
@@ -18,6 +18,8 @@
 #include "fit_common.h"
 #include "mkimage.h"
 #include <image.h>
+#include <stdarg.h>
+#include <version.h>
 #include <u-boot/crc.h>
 
 static image_header_t header;
@@ -71,6 +73,207 @@ err_keydest:
 }
 
 /**
+ * fit_calc_size() - Calculate the approximate size of the FIT we will generate
+ */
+static int fit_calc_size(struct image_tool_params *params)
+{
+	int size, total_size;
+
+	size = imagetool_get_filesize(params, params->datafile);
+	if (size < 0)
+		return -1;
+
+	total_size = size;
+
+	/* TODO(sjg@chromium.org): Add in the size of any other files */
+
+	/* Add plenty of space for headers, properties, nodes, etc. */
+	total_size += 4096;
+
+	return total_size;
+}
+
+static int fdt_property_file(struct image_tool_params *params,
+			     void *fdt, const char *name, const char *fname)
+{
+	struct stat sbuf;
+	void *ptr;
+	int ret;
+	int fd;
+
+	fd = open(fname, O_RDWR | O_BINARY);
+	if (fd < 0) {
+		fprintf(stderr, "%s: Can't open %s: %s\n",
+			params->cmdname, fname, strerror(errno));
+		return -1;
+	}
+
+	if (fstat(fd, &sbuf) < 0) {
+		fprintf(stderr, "%s: Can't stat %s: %s\n",
+			params->cmdname, fname, strerror(errno));
+		goto err;
+	}
+
+	ret = fdt_property_val(fdt, "data", sbuf.st_size, &ptr);
+	if (ret)
+		return ret;
+	ret = read(fd, ptr, sbuf.st_size);
+	if (ret != sbuf.st_size) {
+		fprintf(stderr, "%s: Can't read %s: %s\n",
+			params->cmdname, fname, strerror(errno));
+		goto err;
+	}
+
+	return 0;
+err:
+	close(fd);
+	return -1;
+}
+
+static int fdt_property_strf(void *fdt, const char *name, const char *fmt, ...)
+{
+	char str[100];
+	va_list ptr;
+
+	va_start(ptr, fmt);
+	vsnprintf(str, sizeof(str), fmt, ptr);
+	va_end(ptr);
+	return fdt_property_string(fdt, name, str);
+}
+
+/**
+ * fit_write_images() - Write out a list of images to the FIT
+ *
+ * Include the main image (params->datafile).
+ */
+static int fit_write_images(struct image_tool_params *params, char *fdt)
+{
+	const char *typename;
+	char str[100];
+	int ret;
+
+	fdt_begin_node(fdt, "images");
+
+	/* First the main image */
+	typename = genimg_get_type_short_name(params->fit_image_type);
+	snprintf(str, sizeof(str), "%s at 1", typename);
+	fdt_begin_node(fdt, str);
+	fdt_property_string(fdt, "description", params->imagename);
+	fdt_property_string(fdt, "type", typename);
+	fdt_property_string(fdt, "arch", genimg_get_arch_name(params->arch));
+	fdt_property_string(fdt, "os", genimg_get_os_short_name(params->os));
+	fdt_property_string(fdt, "compression",
+			    genimg_get_comp_short_name(params->comp));
+	fdt_property_u32(fdt, "load", params->addr);
+	fdt_property_u32(fdt, "entry", params->ep);
+
+	/*
+	 * Put data last since it is large. SPL may only load the first part
+	 * of the DT, so this way it can access all the above fields.
+	 */
+	ret = fdt_property_file(params, fdt, "data", params->datafile);
+	if (ret)
+		return ret;
+	fdt_end_node(fdt);
+
+	fdt_end_node(fdt);
+
+	return 0;
+}
+
+/**
+ * fit_write_configs() - Write out a list of configurations to the FIT
+ *
+ * Create a configuration with the main image in it.
+ */
+static void fit_write_configs(struct image_tool_params *params, char *fdt)
+{
+	const char *typename;
+	char str[100];
+
+	fdt_begin_node(fdt, "configurations");
+	fdt_property_string(fdt, "default", "conf at 1");
+
+	fdt_begin_node(fdt, "conf at 1");
+	typename = genimg_get_type_short_name(params->fit_image_type);
+	snprintf(str, sizeof(str), "%s at 1", typename);
+	fdt_property_string(fdt, typename, str);
+	fdt_end_node(fdt);
+
+	fdt_end_node(fdt);
+}
+
+static int fit_build_fdt(struct image_tool_params *params, char *fdt, int size)
+{
+	int ret;
+
+	ret = fdt_create(fdt, size);
+	if (ret)
+		return ret;
+	fdt_finish_reservemap(fdt);
+	fdt_begin_node(fdt, "");
+	fdt_property_strf(fdt, "description",
+			  "%s image with one or more FDT blobs",
+			  genimg_get_type_name(params->fit_image_type));
+	fdt_property_strf(fdt, "creator", "U-Boot mkimage %s", PLAIN_VERSION);
+	fdt_property_u32(fdt, "#address-cells", 1);
+	ret = fit_write_images(params, fdt);
+	if (ret)
+		return ret;
+	fit_write_configs(params, fdt);
+	fdt_end_node(fdt);
+	ret = fdt_finish(fdt);
+	if (ret)
+		return ret;
+
+	return fdt_totalsize(fdt);
+}
+
+static int fit_build(struct image_tool_params *params, const char *fname)
+{
+	char *buf;
+	int size;
+	int ret;
+	int fd;
+
+	size = fit_calc_size(params);
+	if (size < 0)
+		return -1;
+	buf = malloc(size);
+	if (!buf) {
+		fprintf(stderr, "%s: Out of memory (%d bytes)\n",
+			params->cmdname, size);
+		return -1;
+	}
+	ret = fit_build_fdt(params, buf, size);
+	if (ret < 0) {
+		fprintf(stderr, "%s: Failed to build FIT image\n",
+			params->cmdname);
+		goto err;
+	}
+	size = ret;
+	fd = open(fname, O_RDWR | O_CREAT | O_TRUNC | O_BINARY, 0666);
+	if (fd < 0) {
+		fprintf(stderr, "%s: Can't open %s: %s\n",
+			params->cmdname, fname, strerror(errno));
+		goto err;
+	}
+	ret = write(fd, buf, size);
+	if (ret != size) {
+		fprintf(stderr, "%s: Can't write %s: %s\n",
+			params->cmdname, fname, strerror(errno));
+		close(fd);
+		goto err;
+	}
+	close(fd);
+
+	return 0;
+err:
+	free(buf);
+	return -1;
+}
+
+/**
  * fit_handle_file - main FIT file processing function
  *
  * fit_handle_file() runs dtc to convert .its to .itb, includes
@@ -103,7 +306,14 @@ static int fit_handle_file(struct image_tool_params *params)
 	sprintf (tmpfile, "%s%s", params->imagefile, MKIMAGE_TMPFILE_SUFFIX);
 
 	/* We either compile the source file, or use the existing FIT image */
-	if (params->datafile) {
+	if (params->auto_its) {
+		if (fit_build(params, tmpfile)) {
+			fprintf(stderr, "%s: failed to build FIT\n",
+				params->cmdname);
+			return EXIT_FAILURE;
+		}
+		*cmd = '\0';
+	} else if (params->datafile) {
 		/* dtc -I dts -O dtb -p 500 datafile > tmpfile */
 		snprintf(cmd, sizeof(cmd), "%s %s %s > %s",
 			 MKIMAGE_DTC, params->dtc, params->datafile, tmpfile);
@@ -112,7 +322,7 @@ static int fit_handle_file(struct image_tool_params *params)
 		snprintf(cmd, sizeof(cmd), "cp %s %s",
 			 params->imagefile, tmpfile);
 	}
-	if (system (cmd) == -1) {
+	if (*cmd && system(cmd) == -1) {
 		fprintf (stderr, "%s: system(%s) failed: %s\n",
 				params->cmdname, cmd, strerror(errno));
 		goto err_system;
@@ -248,6 +458,8 @@ static int fit_extract_contents(void *ptr, struct image_tool_params *params)
 
 static int fit_check_params(struct image_tool_params *params)
 {
+	if (params->auto_its)
+		return 0;
 	return	((params->dflag && (params->fflag || params->lflag)) ||
 		(params->fflag && (params->dflag || params->lflag)) ||
 		(params->lflag && (params->dflag || params->fflag)));
diff --git a/tools/imagetool.h b/tools/imagetool.h
index 3cf42ac..4f426e4 100644
--- a/tools/imagetool.h
+++ b/tools/imagetool.h
@@ -61,6 +61,7 @@ struct image_tool_params {
 	int require_keys;	/* 1 to mark signing keys as 'required' */
 	int file_size;		/* Total size of output file */
 	int orig_file_size;	/* Original size for file before padding */
+	bool auto_its;		/* Automatically create the .its file */
 	int fit_image_type;	/* Image type to put into the FIT */
 };
 
diff --git a/tools/mkimage.c b/tools/mkimage.c
index 73367d1..5d4ed61 100644
--- a/tools/mkimage.c
+++ b/tools/mkimage.c
@@ -85,7 +85,7 @@ static void usage(const char *msg)
 		"          -x ==> set XIP (execute in place)\n",
 		params.cmdname);
 	fprintf(stderr,
-		"       %s [-D dtc_options] [-f fit-image.its|-F] fit-image\n",
+		"       %s [-D dtc_options] [-f fit-image.its|-f auto|-F] fit-image\n",
 		params.cmdname);
 	fprintf(stderr,
 		"          -D => set all options for device tree compiler\n"
@@ -159,7 +159,8 @@ static void process_args(int argc, char **argv)
 			params.eflag = 1;
 			break;
 		case 'f':
-			params.datafile = optarg;
+			datafile = optarg;
+			params.auto_its = !strcmp(datafile, "auto");
 			/* no break */
 		case 'F':
 			/*
@@ -235,7 +236,8 @@ static void process_args(int argc, char **argv)
 	 */
 	if (params.type == IH_TYPE_FLATDT) {
 		params.fit_image_type = type;
-		params.datafile = datafile;
+		if (!params.auto_its)
+			params.datafile = datafile;
 	} else if (type != IH_TYPE_INVALID) {
 		params.type = type;
 	}
-- 
2.7.0.rc3.207.g0ac5344

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

* [U-Boot] [PATCH 19/26] mkimage: Support adding device tree files to a FIT
  2016-01-28 16:39 ` Simon Glass
                   ` (18 preceding siblings ...)
  (?)
@ 2016-01-28 16:39 ` Simon Glass
  2016-02-11 16:36   ` Tom Rini
  -1 siblings, 1 reply; 54+ messages in thread
From: Simon Glass @ 2016-01-28 16:39 UTC (permalink / raw)
  To: u-boot

To make the auto-FIT feature useful we need to be able to provide a list of
device tree files on the command line for mkimage to add into the FIT. Add
support for this feature.

So far there is no support for hashing or verified boot using this method.
For those cases, a .its file must still be provided.

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

 doc/mkimage.1     | 17 ++++++++++
 tools/fit_image.c | 96 ++++++++++++++++++++++++++++++++++++++++++++++++++-----
 tools/imagetool.h |  9 ++++++
 tools/mkimage.c   | 38 +++++++++++++++++++++-
 4 files changed, 151 insertions(+), 9 deletions(-)

diff --git a/doc/mkimage.1 b/doc/mkimage.1
index 146c114..b1b45d7 100644
--- a/doc/mkimage.1
+++ b/doc/mkimage.1
@@ -97,6 +97,10 @@ Set XIP (execute in place) flag.
 .B Create FIT image:
 
 .TP
+.BI "\-b
+Specifies that the following arguments are device tree binary files (.dtb).
+
+.TP
 .BI "\-c [" "comment" "]"
 Specifies a comment to be added when signing. This is typically a useful
 message which describes how the image was signed or some other useful
@@ -125,6 +129,10 @@ This can be used to sign images with additional keys after initial image
 creation.
 
 .TP
+.BI "\-i
+Specifies that the following arguments are image files.
+
+.TP
 .BI "\-k [" "key_directory" "]"
 Specifies the directory containing keys to use for signing. This directory
 should contain a private key file <name>.key for use with signing and a
@@ -191,6 +199,15 @@ is required.
 .br
 .B -c """Kernel 4.4 image for production devices""" -d vmlinuz kernel.itb
 .fi
+.P
+Create a FIT image containing a kernel and some device tree files, using
+automatic mode. No .its file is required.
+.nf
+.B mkimage -f auto -A arm -O linux -T kernel -C none -a 43e00000 -e 0 \\\\
+.br
+.B -c """Kernel 4.4 image for production devices""" -d vmlinuz \\\\
+.B -b rk3288-firefly.dts rk3288-jerry.dts -i kernel.itb
+.fi
 
 .SH HOMEPAGE
 http://www.denx.de/wiki/U-Boot/WebHome
diff --git a/tools/fit_image.c b/tools/fit_image.c
index 343de60..0d8007b 100644
--- a/tools/fit_image.c
+++ b/tools/fit_image.c
@@ -77,6 +77,7 @@ err_keydest:
  */
 static int fit_calc_size(struct image_tool_params *params)
 {
+	struct content_info *cont;
 	int size, total_size;
 
 	size = imagetool_get_filesize(params, params->datafile);
@@ -84,8 +85,14 @@ static int fit_calc_size(struct image_tool_params *params)
 		return -1;
 
 	total_size = size;
+	for (cont = params->content_head; cont; cont = cont->next) {
+		size = imagetool_get_filesize(params, cont->fname);
+		if (size < 0)
+			return -1;
 
-	/* TODO(sjg@chromium.org): Add in the size of any other files */
+		/* Add space for properties */
+		total_size += size + 300;
+	}
 
 	/* Add plenty of space for headers, properties, nodes, etc. */
 	total_size += 4096;
@@ -141,15 +148,40 @@ static int fdt_property_strf(void *fdt, const char *name, const char *fmt, ...)
 	return fdt_property_string(fdt, name, str);
 }
 
+static void get_basename(char *str, int size, const char *fname)
+{
+	const char *p, *start, *end;
+	int len;
+
+	/*
+	 * Use the base name as the 'name' field. So for example:
+	 *
+	 * "arch/arm/dts/sun7i-a20-bananapro.dtb"
+	 * becomes "sun7i-a20-bananapro"
+	 */
+	p = strrchr(fname, '/');
+	start = p ? p + 1 : fname;
+	p = strrchr(fname, '.');
+	end = p ? p : fname + strlen(fname);
+	len = end - start;
+	if (len >= size)
+		len = size - 1;
+	memcpy(str, start, len);
+	str[len] = '\0';
+}
+
 /**
  * fit_write_images() - Write out a list of images to the FIT
  *
- * Include the main image (params->datafile).
+ * We always include the main image (params->datafile). If there are device
+ * tree files, we include an fdt@ node for each of those too.
  */
 static int fit_write_images(struct image_tool_params *params, char *fdt)
 {
+	struct content_info *cont;
 	const char *typename;
 	char str[100];
+	int upto;
 	int ret;
 
 	fdt_begin_node(fdt, "images");
@@ -176,6 +208,27 @@ static int fit_write_images(struct image_tool_params *params, char *fdt)
 		return ret;
 	fdt_end_node(fdt);
 
+	/* Now the device tree files if available */
+	upto = 0;
+	for (cont = params->content_head; cont; cont = cont->next) {
+		if (cont->type != IH_TYPE_FLATDT)
+			continue;
+		snprintf(str, sizeof(str), "%s@%d", FIT_FDT_PROP, ++upto);
+		fdt_begin_node(fdt, str);
+
+		get_basename(str, sizeof(str), cont->fname);
+		fdt_property_string(fdt, "description", str);
+		ret = fdt_property_file(params, fdt, "data", cont->fname);
+		if (ret)
+			return ret;
+		fdt_property_string(fdt, "type", typename);
+		fdt_property_string(fdt, "arch",
+				    genimg_get_arch_short_name(params->arch));
+		fdt_property_string(fdt, "compression",
+				    genimg_get_comp_short_name(IH_COMP_NONE));
+		fdt_end_node(fdt);
+	}
+
 	fdt_end_node(fdt);
 
 	return 0;
@@ -184,21 +237,48 @@ static int fit_write_images(struct image_tool_params *params, char *fdt)
 /**
  * fit_write_configs() - Write out a list of configurations to the FIT
  *
- * Create a configuration with the main image in it.
+ * If there are device tree files, we include a configuration for each, which
+ * selects the main image (params->datafile) and its corresponding device
+ * tree file.
+ *
+ * Otherwise we just create a configuration with the main image in it.
  */
 static void fit_write_configs(struct image_tool_params *params, char *fdt)
 {
+	struct content_info *cont;
 	const char *typename;
 	char str[100];
+	int upto;
 
 	fdt_begin_node(fdt, "configurations");
 	fdt_property_string(fdt, "default", "conf at 1");
 
-	fdt_begin_node(fdt, "conf at 1");
-	typename = genimg_get_type_short_name(params->fit_image_type);
-	snprintf(str, sizeof(str), "%s at 1", typename);
-	fdt_property_string(fdt, typename, str);
-	fdt_end_node(fdt);
+	upto = 0;
+	for (cont = params->content_head; cont; cont = cont->next) {
+		if (cont->type != IH_TYPE_FLATDT)
+			continue;
+		typename = genimg_get_type_short_name(cont->type);
+		snprintf(str, sizeof(str), "conf@%d", ++upto);
+		fdt_begin_node(fdt, str);
+
+		get_basename(str, sizeof(str), cont->fname);
+		fdt_property_string(fdt, "description", str);
+
+		typename = genimg_get_type_short_name(params->fit_image_type);
+		snprintf(str, sizeof(str), "%s at 1", typename);
+		fdt_property_string(fdt, typename, str);
+
+		snprintf(str, sizeof(str), FIT_FDT_PROP "@%d", upto);
+		fdt_property_string(fdt, FIT_FDT_PROP, str);
+		fdt_end_node(fdt);
+	}
+	if (!upto) {
+		fdt_begin_node(fdt, "conf at 1");
+		typename = genimg_get_type_short_name(params->fit_image_type);
+		snprintf(str, sizeof(str), "%s at 1", typename);
+		fdt_property_string(fdt, typename, str);
+		fdt_end_node(fdt);
+	}
 
 	fdt_end_node(fdt);
 }
diff --git a/tools/imagetool.h b/tools/imagetool.h
index 4f426e4..3d30fbe 100644
--- a/tools/imagetool.h
+++ b/tools/imagetool.h
@@ -27,6 +27,13 @@
 
 #define IH_ARCH_DEFAULT		IH_ARCH_INVALID
 
+/* Information about a file that needs to be placed into the FIT */
+struct content_info {
+	struct content_info *next;
+	int type;		/* File type (IH_TYPE_...) */
+	const char *fname;
+};
+
 /*
  * This structure defines all such variables those are initialized by
  * mkimage and dumpimage main core and need to be referred by image
@@ -63,6 +70,8 @@ struct image_tool_params {
 	int orig_file_size;	/* Original size for file before padding */
 	bool auto_its;		/* Automatically create the .its file */
 	int fit_image_type;	/* Image type to put into the FIT */
+	struct content_info *content_head;	/* List of files to include */
+	struct content_info *content_tail;
 };
 
 /*
diff --git a/tools/mkimage.c b/tools/mkimage.c
index 5d4ed61..5e2e7e1 100644
--- a/tools/mkimage.c
+++ b/tools/mkimage.c
@@ -109,6 +109,24 @@ static void usage(const char *msg)
 	exit(EXIT_FAILURE);
 }
 
+static int add_content(int type, const char *fname)
+{
+	struct content_info *cont;
+
+	cont = calloc(1, sizeof(*cont));
+	if (!cont)
+		return -1;
+	cont->type = type;
+	cont->fname = fname;
+	if (params.content_tail)
+		params.content_tail->next = cont;
+	else
+		params.content_head = cont;
+	params.content_tail = cont;
+
+	return 0;
+}
+
 static void process_args(int argc, char **argv)
 {
 	char *ptr;
@@ -119,7 +137,7 @@ static void process_args(int argc, char **argv)
 
 	expecting = IH_TYPE_COUNT;	/* Unknown */
 	while ((opt = getopt(argc, argv,
-			     "-a:A:cC:d:D:e:f:Fk:K:ln:O:rR:sT:vVx")) != -1) {
+			     "-a:A:bcC:d:D:e:f:Fik:K:ln:O:rR:sT:vVx")) != -1) {
 		switch (opt) {
 		case 'a':
 			params.addr = strtoul(optarg, &ptr, 16);
@@ -134,6 +152,9 @@ static void process_args(int argc, char **argv)
 			if (params.arch < 0)
 				usage("Invalid architecture");
 			break;
+		case 'b':
+			expecting = IH_TYPE_FLATDT;
+			break;
 		case 'c':
 			params.comment = optarg;
 			break;
@@ -171,6 +192,9 @@ static void process_args(int argc, char **argv)
 			params.type = IH_TYPE_FLATDT;
 			params.fflag = 1;
 			break;
+		case 'i':
+			expecting = type;
+			break;
 		case 'k':
 			params.keydir = optarg;
 			break;
@@ -222,6 +246,18 @@ static void process_args(int argc, char **argv)
 			if (expecting == type || expecting == IH_TYPE_COUNT) {
 				params.imagefile = optarg;
 				expecting = IH_TYPE_INVALID;
+			} else if (expecting == IH_TYPE_INVALID) {
+				fprintf(stderr,
+					"%s: Unknown content type: use -b before device tree files",
+					params.cmdname);
+				exit(EXIT_FAILURE);
+			} else {
+				if (add_content(expecting, optarg)) {
+					fprintf(stderr,
+						"%s: Out of memory adding content '%s'",
+						params.cmdname, optarg);
+					exit(EXIT_FAILURE);
+				}
 			}
 			break;
 		default:
-- 
2.7.0.rc3.207.g0ac5344

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

* [U-Boot] [PATCH 20/26] mkimage: Support placing data outside the FIT
  2016-01-28 16:39 ` Simon Glass
                   ` (19 preceding siblings ...)
  (?)
@ 2016-01-28 16:39 ` Simon Glass
  -1 siblings, 0 replies; 54+ messages in thread
From: Simon Glass @ 2016-01-28 16:39 UTC (permalink / raw)
  To: u-boot

One limitation of FIT is that all the data is 'inline' within it, using a
'data' property in each image node. This means that to find out what is in
the FIT it is necessary to scan the entire file. Once loaded it can be
scanned and then the images can be copied to the correct place in memory.

In SPL it can take a significant amount of time to copy images around in
memory. Also loading data that does not end up being used is wasteful. It
would be useful if the FIT were small, acting as a directory, with the
actual data stored elsewhere.

This allows SPL to load the entire FIT, without the images, then load the
images it wants later.

Add a -E option to mkimage to request that it output an 'external' FIT.

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

 doc/mkimage.1                         |   9 +++
 doc/uImage.FIT/source_file_format.txt |  20 ++++++-
 tools/fit_image.c                     | 109 ++++++++++++++++++++++++++++++++++
 tools/imagetool.h                     |   1 +
 tools/mkimage.c                       |   5 +-
 5 files changed, 142 insertions(+), 2 deletions(-)

diff --git a/doc/mkimage.1 b/doc/mkimage.1
index b1b45d7..d9ffc75 100644
--- a/doc/mkimage.1
+++ b/doc/mkimage.1
@@ -112,6 +112,15 @@ Provide special options to the device tree compiler that is used to
 create the image.
 
 .TP
+.BI "\-E
+After processing, move the image data outside the FIT and store a data offset
+in the FIT. Images will be placed one after the other immediately after the
+FIT, with each one aligned to a 4-byte boundary. The existing 'data' property
+in each image will be replaced with 'data-offset' and 'data-size' properties.
+A 'data-offset' of 0 indicates that it starts in the first (4-byte aligned)
+byte after the FIT.
+
+.TP
 .BI "\-f [" "image tree source file" " | " "auto" "]"
 Image tree source file that describes the structure and contents of the
 FIT image.
diff --git a/doc/uImage.FIT/source_file_format.txt b/doc/uImage.FIT/source_file_format.txt
index 029f481..e39b38c 100644
--- a/doc/uImage.FIT/source_file_format.txt
+++ b/doc/uImage.FIT/source_file_format.txt
@@ -2,6 +2,7 @@ U-boot new uImage source file format (bindings definition)
 ==========================================================
 
 Author: Marian Balakowicz <m8@semihalf.com>
+External data additions, 25/1/16 Simon Glass <sjg@chromium.org>
 
 1) Introduction
 ---------------
@@ -262,7 +263,24 @@ Older, 2.4 kernel and 2.6 non-FDT kernel do not use FDT blob, in such cases
 not* be specified in a configuration node.
 
 
-8) Examples
+8) External data
+----------------
+
+The above format shows a 'data' property which holds the data for each image.
+It is also possible for this data to reside outside the FIT itself. This
+allows the FIT to be quite small, so that it can be loaded and scanned
+without loading a large amount of data. Then when an image is needed it can
+be loaded from an external source.
+
+In this case the 'data' property is omitted. Instead you can use:
+
+  - data-offset : offset of the data in a separate image store. The image
+    store is placed immediately after the last byte of the device tree binary,
+    aligned to a 4-byte boundary.
+  - data-size : size of the data in bytes
+
+
+9) Examples
 -----------
 
 Please see doc/uImage.FIT/*.its for actual image source files.
diff --git a/tools/fit_image.c b/tools/fit_image.c
index 0d8007b..5d087e3 100644
--- a/tools/fit_image.c
+++ b/tools/fit_image.c
@@ -354,6 +354,108 @@ err:
 }
 
 /**
+ * fit_extract_data() - Move all data outside the FIT
+ *
+ * This takes a normal FIT file and removes all the 'data' properties from it.
+ * The data is placed in an area after the FIT so that it can be accessed
+ * using an offset into that area. The 'data' properties turn into
+ * 'data-offset' properties.
+ *
+ * This function cannot cope with FITs with 'data-offset' properties. All
+ * data must be in 'data' properties on entry.
+ */
+static int fit_extract_data(struct image_tool_params *params, const char *fname)
+{
+	void *buf;
+	int buf_ptr;
+	int fit_size, new_size;
+	int fd;
+	struct stat sbuf;
+	void *fdt;
+	int ret;
+	int images;
+	int node;
+
+	fd = mmap_fdt(params->cmdname, fname, 0, &fdt, &sbuf, false);
+	if (fd < 0)
+		return -EIO;
+	fit_size = fdt_totalsize(fdt);
+
+	/* Allocate space to hold the image data we will extract */
+	buf = malloc(fit_size);
+	if (!buf) {
+		ret = -ENOMEM;
+		goto err;
+	}
+	buf_ptr = 0;
+
+	images = fdt_path_offset(fdt, FIT_IMAGES_PATH);
+	if (images < 0) {
+		debug("%s: Cannot find /images node: %d\n", __func__, images);
+		ret = -EINVAL;
+		goto err;
+	}
+
+	for (node = fdt_first_subnode(fdt, images);
+	     node >= 0;
+	     node = fdt_next_subnode(fdt, node)) {
+		const char *data;
+		int len;
+
+		data = fdt_getprop(fdt, node, "data", &len);
+		if (!data)
+			continue;
+		memcpy(buf + buf_ptr, data, len);
+		debug("Extracting data size %x\n", len);
+
+		ret = fdt_delprop(fdt, node, "data");
+		if (ret) {
+			ret = -EPERM;
+			goto err;
+		}
+		fdt_setprop_u32(fdt, node, "data-offset", buf_ptr);
+		fdt_setprop_u32(fdt, node, "data-size", len);
+
+		buf_ptr += (len + 3) & ~3;
+	}
+
+	/* Pack the FDT and place the data after it */
+	fdt_pack(fdt);
+
+	debug("Size reduced from %x to %x\n", fit_size, fdt_totalsize(fdt));
+	debug("External data size %x\n", buf_ptr);
+	new_size = fdt_totalsize(fdt);
+	new_size = (new_size + 3) & ~3;
+	munmap(fdt, sbuf.st_size);
+
+	if (ftruncate(fd, new_size)) {
+		debug("%s: Failed to truncate file: %s\n", __func__,
+		      strerror(errno));
+		ret = -EIO;
+		goto err;
+	}
+	if (lseek(fd, new_size, SEEK_SET) < 0) {
+		debug("%s: Failed to seek to end of file: %s\n", __func__,
+		      strerror(errno));
+		ret = -EIO;
+		goto err;
+	}
+	if (write(fd, buf, buf_ptr) != buf_ptr) {
+		debug("%s: Failed to write external data to file %s\n",
+		      __func__, strerror(errno));
+		ret = -EIO;
+		goto err;
+	}
+	close(fd);
+
+	ret = 0;
+
+err:
+	close(fd);
+	return ret;
+}
+
+/**
  * fit_handle_file - main FIT file processing function
  *
  * fit_handle_file() runs dtc to convert .its to .itb, includes
@@ -430,6 +532,13 @@ static int fit_handle_file(struct image_tool_params *params)
 		goto err_system;
 	}
 
+	/* Move the data so it is external to the FIT, if requested */
+	if (params->external_data) {
+		ret = fit_extract_data(params, tmpfile);
+		if (ret)
+			goto err_system;
+	}
+
 	if (rename (tmpfile, params->imagefile) == -1) {
 		fprintf (stderr, "%s: Can't rename %s to %s: %s\n",
 				params->cmdname, tmpfile, params->imagefile,
diff --git a/tools/imagetool.h b/tools/imagetool.h
index 3d30fbe..24f8f4b 100644
--- a/tools/imagetool.h
+++ b/tools/imagetool.h
@@ -72,6 +72,7 @@ struct image_tool_params {
 	int fit_image_type;	/* Image type to put into the FIT */
 	struct content_info *content_head;	/* List of files to include */
 	struct content_info *content_tail;
+	bool external_data;	/* Store data outside the FIT */
 };
 
 /*
diff --git a/tools/mkimage.c b/tools/mkimage.c
index 5e2e7e1..74bb9b6 100644
--- a/tools/mkimage.c
+++ b/tools/mkimage.c
@@ -137,7 +137,7 @@ static void process_args(int argc, char **argv)
 
 	expecting = IH_TYPE_COUNT;	/* Unknown */
 	while ((opt = getopt(argc, argv,
-			     "-a:A:bcC:d:D:e:f:Fik:K:ln:O:rR:sT:vVx")) != -1) {
+			     "-a:A:bcC:d:D:e:Ef:Fik:K:ln:O:rR:sT:vVx")) != -1) {
 		switch (opt) {
 		case 'a':
 			params.addr = strtoul(optarg, &ptr, 16);
@@ -179,6 +179,9 @@ static void process_args(int argc, char **argv)
 			}
 			params.eflag = 1;
 			break;
+		case 'E':
+			params.external_data = true;
+			break;
 		case 'f':
 			datafile = optarg;
 			params.auto_its = !strcmp(datafile, "auto");
-- 
2.7.0.rc3.207.g0ac5344

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

* [U-Boot] [PATCH 21/26] mkimage: Bring data into the FIT before processing
  2016-01-28 16:39 ` Simon Glass
                   ` (20 preceding siblings ...)
  (?)
@ 2016-01-28 16:39 ` Simon Glass
  -1 siblings, 0 replies; 54+ messages in thread
From: Simon Glass @ 2016-01-28 16:39 UTC (permalink / raw)
  To: u-boot

Since we now support data outside the FIT image, bring it into the FIT image
first before we do any processing. This avoids adding new functionality to
the core FIT code for now.

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

 tools/fit_image.c | 97 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 97 insertions(+)

diff --git a/tools/fit_image.c b/tools/fit_image.c
index 5d087e3..5407b9d 100644
--- a/tools/fit_image.c
+++ b/tools/fit_image.c
@@ -455,6 +455,98 @@ err:
 	return ret;
 }
 
+static int fit_import_data(struct image_tool_params *params, const char *fname)
+{
+	void *fdt, *old_fdt;
+	int fit_size, new_size, size, data_base;
+	int fd;
+	struct stat sbuf;
+	int ret;
+	int images;
+	int node;
+
+	fd = mmap_fdt(params->cmdname, fname, 0, &old_fdt, &sbuf, false);
+	if (fd < 0)
+		return -EIO;
+	fit_size = fdt_totalsize(old_fdt);
+	data_base = (fit_size + 3) & ~3;
+
+	/* Allocate space to hold the new FIT */
+	size = sbuf.st_size + 16384;
+	fdt = malloc(size);
+	if (!fdt) {
+		fprintf(stderr, "%s: Failed to allocate memory (%d bytes)\n",
+			__func__, size);
+		ret = -ENOMEM;
+		goto err;
+	}
+	ret = fdt_open_into(old_fdt, fdt, size);
+	if (ret) {
+		debug("%s: Failed to expand FIT: %s\n", __func__,
+		      fdt_strerror(errno));
+		ret = -EINVAL;
+		goto err;
+	}
+
+	images = fdt_path_offset(fdt, FIT_IMAGES_PATH);
+	if (images < 0) {
+		debug("%s: Cannot find /images node: %d\n", __func__, images);
+		ret = -EINVAL;
+		goto err;
+	}
+
+	for (node = fdt_first_subnode(fdt, images);
+	     node >= 0;
+	     node = fdt_next_subnode(fdt, node)) {
+		int buf_ptr;
+		int len;
+
+		buf_ptr = fdtdec_get_int(fdt, node, "data-offset", -1);
+		len = fdtdec_get_int(fdt, node, "data-size", -1);
+		if (buf_ptr == -1 || len == -1)
+			continue;
+		debug("Importing data size %x\n", len);
+
+		ret = fdt_setprop(fdt, node, "data", fdt + data_base + buf_ptr,
+				  len);
+		if (ret) {
+			debug("%s: Failed to write property: %s\n", __func__,
+			      fdt_strerror(ret));
+			ret = -EINVAL;
+			goto err;
+		}
+	}
+
+	munmap(fdt, sbuf.st_size);
+	close(fd);
+
+	/* Pack the FDT and place the data after it */
+	fdt_pack(fdt);
+
+	new_size = fdt_totalsize(fdt);
+	debug("Size expanded from %x to %x\n", fit_size, new_size);
+
+	fd = open(fname, O_RDWR | O_CREAT | O_TRUNC | O_BINARY, 0666);
+	if (fd < 0) {
+		fprintf(stderr, "%s: Can't open %s: %s\n",
+			params->cmdname, fname, strerror(errno));
+		goto err;
+	}
+	if (write(fd, fdt, new_size) != new_size) {
+		debug("%s: Failed to write external data to file %s\n",
+		      __func__, strerror(errno));
+		ret = -EIO;
+		goto err;
+	}
+	close(fd);
+
+	ret = 0;
+
+err:
+	close(fd);
+	return ret;
+}
+
 /**
  * fit_handle_file - main FIT file processing function
  *
@@ -510,6 +602,11 @@ static int fit_handle_file(struct image_tool_params *params)
 		goto err_system;
 	}
 
+	/* Move the data so it is internal to the FIT, if needed */
+	ret = fit_import_data(params, tmpfile);
+	if (ret)
+		goto err_system;
+
 	/*
 	 * Set hashes for images in the blob. Unfortunately we may need more
 	 * space in either FDT, so keep trying until we succeed.
-- 
2.7.0.rc3.207.g0ac5344

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

* [U-Boot] [PATCH 22/26] spl: Add a way for boards to select which device tree to load
  2016-01-28 16:39 ` Simon Glass
                   ` (21 preceding siblings ...)
  (?)
@ 2016-01-28 16:39 ` Simon Glass
  -1 siblings, 0 replies; 54+ messages in thread
From: Simon Glass @ 2016-01-28 16:39 UTC (permalink / raw)
  To: u-boot

SPL calls this function with each device tree it can find in the FIT. The
board should implement this function, using whatever hardware detection it
can muster to determine the correct device tree.

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

 include/image.h | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/include/image.h b/include/image.h
index fa201d7..922104d 100644
--- a/include/image.h
+++ b/include/image.h
@@ -1155,4 +1155,17 @@ ulong android_image_get_kload(const struct andr_img_hdr *hdr);
 
 #endif /* CONFIG_ANDROID_BOOT_IMAGE */
 
+/**
+ * board_fit_config_name_match() - Check for a matching board name
+ *
+ * This is used when SPL loads a FIT containing multiple device tree files
+ * and wants to work out which one to use. The description of each one is
+ * passed to this function. The description comes from the 'description' field
+ * in each (FDT) image node.
+ *
+ * @name: Device tree description
+ * @return 0 if this device tree should be used, non-zero to try the next
+ */
+int board_fit_config_name_match(const char *name);
+
 #endif	/* __IMAGE_H__ */
-- 
2.7.0.rc3.207.g0ac5344

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

* [U-Boot] [PATCH 23/26] spl: Add an option to load a FIT containing U-Boot
  2016-01-28 16:39 ` Simon Glass
                   ` (22 preceding siblings ...)
  (?)
@ 2016-01-28 16:39 ` Simon Glass
  2016-02-04 15:00   ` Stefano Babic
  -1 siblings, 1 reply; 54+ messages in thread
From: Simon Glass @ 2016-01-28 16:39 UTC (permalink / raw)
  To: u-boot

This provides a way to load a FIT containing U-Boot and a selection of device
tree files. The board can select the correct device tree by probing the
hardware. Then U-Boot is started with the selected device tree.

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

 Kconfig              |  11 +++
 common/spl/Makefile  |   1 +
 common/spl/spl_fit.c | 192 +++++++++++++++++++++++++++++++++++++++++++++++++++
 include/spl.h        |  18 +++++
 4 files changed, 222 insertions(+)
 create mode 100644 common/spl/spl_fit.c

diff --git a/Kconfig b/Kconfig
index 3ce5ba1..f32c6c7 100644
--- a/Kconfig
+++ b/Kconfig
@@ -215,6 +215,17 @@ config SYS_TEXT_BASE
 	help
 	  TODO: Move CONFIG_SYS_TEXT_BASE for all the architecture
 
+config SPL_LOAD_FIT
+	bool "Enable SPL loading U-Boot as a FIT"
+	depends on FIT
+	help
+	  Normally with the SPL framework a legacy image is generated as part
+	  of the build. This contains U-Boot along with information as to
+	  where it should be loaded. This option instead enables generation
+	  of a FIT (Flat Image Tree) which provides more flexibility. In
+	  particular it can handle selecting from multiple device tree
+	  and passing the correct one to U-Boot.
+
 config SYS_CLK_FREQ
 	depends on ARC || ARCH_SUNXI
 	int "CPU clock frequency"
diff --git a/common/spl/Makefile b/common/spl/Makefile
index 10a4589..2e0f695 100644
--- a/common/spl/Makefile
+++ b/common/spl/Makefile
@@ -10,6 +10,7 @@
 
 ifdef CONFIG_SPL_BUILD
 obj-$(CONFIG_SPL_FRAMEWORK) += spl.o
+obj-$(CONFIG_SPL_LOAD_FIT) += spl_fit.o
 obj-$(CONFIG_SPL_NOR_SUPPORT) += spl_nor.o
 obj-$(CONFIG_SPL_YMODEM_SUPPORT) += spl_ymodem.o
 obj-$(CONFIG_SPL_NAND_SUPPORT) += spl_nand.o
diff --git a/common/spl/spl_fit.c b/common/spl/spl_fit.c
new file mode 100644
index 0000000..f225f64
--- /dev/null
+++ b/common/spl/spl_fit.c
@@ -0,0 +1,192 @@
+/*
+ * Copyright (C) 2016 Google, Inc
+ * Written by Simon Glass <sjg@chromium.org>
+ *
+ * SPDX-License-Identifier:     GPL-2.0+
+ */
+
+#include <common.h>
+#include <errno.h>
+#include <spl.h>
+
+static ulong fdt_getprop_u32(const void *fdt, int node, const char *prop)
+{
+	const u32 *cell;
+	int len;
+
+	cell = fdt_getprop(fdt, node, prop, &len);
+	if (len != sizeof(*cell))
+		return -1U;
+	return fdt32_to_cpu(*cell);
+}
+
+static int spl_fit_select_fdt(const void *fdt, int images, int *fdt_offsetp)
+{
+	const char *name, *fdt_name;
+	int conf, node, fdt_node;
+	int len;
+
+	*fdt_offsetp = 0;
+	conf = fdt_path_offset(fdt, FIT_CONFS_PATH);
+	if (conf < 0) {
+		debug("%s: Cannot find /configurations node: %d\n", __func__,
+		      conf);
+		return -EINVAL;
+	}
+	for (node = fdt_first_subnode(fdt, conf);
+	     node >= 0;
+	     node = fdt_next_subnode(fdt, node)) {
+		name = fdt_getprop(fdt, node, "description", &len);
+		if (!name)
+			return -EINVAL;
+		if (board_fit_config_name_match(name))
+			continue;
+
+		debug("Selecting config '%s'", name);
+		fdt_name = fdt_getprop(fdt, node, FIT_FDT_PROP, &len);
+		if (!fdt_name) {
+			debug("%s: Cannot find fdt name property: %d\n",
+			      __func__, len);
+			return -EINVAL;
+		}
+
+		debug(", fdt '%s'\n", fdt_name);
+		fdt_node = fdt_subnode_offset(fdt, images, fdt_name);
+		if (fdt_node < 0) {
+			debug("%s: Cannot find fdt node '%s': %d\n",
+			      __func__, fdt_name, fdt_node);
+			return -EINVAL;
+		}
+
+		*fdt_offsetp = fdt_getprop_u32(fdt, fdt_node, "data-offset");
+		len = fdt_getprop_u32(fdt, fdt_node, "data-size");
+#ifdef CONFIG_SPL_LIBCOMMON_SUPPORT
+		printf("FIT: Selected '%s'\n", name);
+#endif
+
+		return len;
+	}
+
+#ifdef CONFIG_SPL_LIBCOMMON_SUPPORT
+	printf("No matching DT out of these options:\n");
+	for (node = fdt_first_subnode(fdt, conf);
+	     node >= 0;
+	     node = fdt_next_subnode(fdt, node)) {
+		name = fdt_getprop(fdt, node, "name", &len);
+		printf("   %s\n", name);
+	}
+#endif
+
+	return -ENOENT;
+}
+
+int spl_load_simple_fit(struct spl_load_info *info, ulong sector, void *fit)
+{
+	int sectors;
+	ulong size, load;
+	unsigned long count;
+	int node, images;
+	void *load_ptr;
+	int fdt_offset, fdt_len;
+	int data_offset, data_size;
+	int base_offset;
+	int src_sector;
+	void *dst;
+
+	/*
+	 * Figure out where the external images start. This is the base for the
+	 * data-offset properties in each image.
+	 */
+	size = fdt_totalsize(fit);
+	size = (size + 3) & ~3;
+	base_offset = (size + 3) & ~3;
+
+	/*
+	 * So far we only have one block of data from the FIT. Read the entire
+	 * thing, including that first block, placing it so it finishes before
+	 * where we will load the image.
+	 *
+	 * Note that we will load the image such that its first byte will be
+	 * at the load address. Since that byte may be part-way through a
+	 * block, we may load the image up to one block before the load
+	 * address. So take account of that here by subtracting an addition
+	 * block length from the FIT start position.
+	 *
+	 * In fact the FIT has its own load address, but we assume it cannot
+	 * be before CONFIG_SYS_TEXT_BASE.
+	 */
+	fit = (void *)(CONFIG_SYS_TEXT_BASE - size - info->bl_len);
+	sectors = (size + info->bl_len - 1) / info->bl_len;
+	count = info->read(info, sector, sectors, fit);
+	debug("fit read sector %lx, sectors=%d, dst=%p, count=%lu\n",
+	      sector, sectors, fit, count);
+	if (count == 0)
+		return -EIO;
+
+	/* find the firmware image to load */
+	images = fdt_path_offset(fit, FIT_IMAGES_PATH);
+	if (images < 0) {
+		debug("%s: Cannot find /images node: %d\n", __func__, images);
+		return -1;
+	}
+	node = fdt_first_subnode(fit, images);
+	if (node < 0) {
+		debug("%s: Cannot find first image node: %d\n", __func__, node);
+		return -1;
+	}
+
+	/* Get its information and set up the spl_image structure */
+	data_offset = fdt_getprop_u32(fit, node, "data-offset");
+	data_size = fdt_getprop_u32(fit, node, "data-size");
+	load = fdt_getprop_u32(fit, node, "load");
+	debug("data_offset=%x, data_size=%x\n", data_offset, data_size);
+	spl_image.load_addr = load;
+	spl_image.entry_point = load;
+	spl_image.os = IH_OS_U_BOOT;
+
+	/*
+	 * Work out where to place the image. We read it so that the first
+	 * byte will be@'load'. This may mean we need to load it starting
+	 * before then, since we can only read whole blocks.
+	 */
+	sectors = (data_size + info->bl_len - 1) / info->bl_len;
+	data_offset += base_offset;
+	load_ptr = (void *)load;
+	debug("U-Boot size %x, data %p\n", data_size, load_ptr);
+	dst = load_ptr - (data_offset % info->bl_len);
+
+	/* Read the image */
+	src_sector = sector + data_offset / info->bl_len;
+	debug("image: data_offset=%x, dst=%p, src_sector=%x, sectors=%x\n",
+	      data_offset, dst, src_sector, sectors);
+	count = info->read(info, src_sector, sectors, dst);
+	if (count != sectors)
+		return -EIO;
+
+	/* Figure out which device tree the board wants to use */
+	fdt_len = spl_fit_select_fdt(fit, images, &fdt_offset);
+	if (fdt_len < 0)
+		return fdt_len;
+
+	/*
+	 * Read the device tree and place it after the image. There may be
+	 * some extra data before it since we can only read entire blocks.
+	 */
+	dst = load_ptr + data_size;
+	fdt_offset += base_offset;
+	count = info->read(info, sector + fdt_offset / info->bl_len, sectors,
+			   dst);
+	debug("fit read %x sectors to %x, dst %p, data_offset %x\n",
+	      sectors, spl_image.load_addr, dst, fdt_offset);
+	if (count != sectors)
+		return -EIO;
+
+	/*
+	 * Copy the device tree so that it starts immediately after the image.
+	 * After this we will have the U-Boot image and its device tree ready
+	 * for us to start.
+	 */
+	memcpy(dst, dst + fdt_offset % info->bl_len, fdt_len);
+
+	return 0;
+}
diff --git a/include/spl.h b/include/spl.h
index 92cdc04..16f2f6a 100644
--- a/include/spl.h
+++ b/include/spl.h
@@ -29,6 +29,24 @@ struct spl_image_info {
 	u32 flags;
 };
 
+/*
+ * Information required to load data from a device
+ *
+ * @dev: Pointer to the device, e.g. struct mmc *
+ * @priv: Private data for the device
+ * @bl_len: Block length for reading in bytes
+ * @read: Function to call to read from the device
+ */
+struct spl_load_info {
+	void *dev;
+	void *priv;
+	int bl_len;
+	ulong (*read)(struct spl_load_info *load, ulong sector, ulong count,
+		      void *buf);
+};
+
+int spl_load_simple_fit(struct spl_load_info *info, ulong sector, void *fdt);
+
 #define SPL_COPY_PAYLOAD_ONLY	1
 
 extern struct spl_image_info spl_image;
-- 
2.7.0.rc3.207.g0ac5344

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

* [U-Boot] [PATCH 24/26] spl: Add a way to specify a list of device trees to include
  2016-01-28 16:39 ` Simon Glass
                   ` (23 preceding siblings ...)
  (?)
@ 2016-01-28 16:39 ` Simon Glass
  -1 siblings, 0 replies; 54+ messages in thread
From: Simon Glass @ 2016-01-28 16:39 UTC (permalink / raw)
  To: u-boot

When building a FIT, more than one device tree can be included. The board
can select (at run-time) the one that it wants.

Add a Kconfig option to allow the list of devices trees (supported by the
board) to be specified.

When using SPL_LOAD_FIT, build u-boot.img in FIT format instead of the
legacy image format. Include all the listed device tree files in this FIT.

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

 Makefile    | 10 +++++++++-
 dts/Kconfig | 10 ++++++++++
 2 files changed, 19 insertions(+), 1 deletion(-)

diff --git a/Makefile b/Makefile
index 8b9f622..d01cd3e 100644
--- a/Makefile
+++ b/Makefile
@@ -903,9 +903,16 @@ quiet_cmd_cpp_cfg = CFG     $@
 cmd_cpp_cfg = $(CPP) -Wp,-MD,$(depfile) $(cpp_flags) $(LDPPFLAGS) -ansi \
 	-DDO_DEPS_ONLY -D__ASSEMBLY__ -x assembler-with-cpp -P -dM -E -o $@ $<
 
+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) \
+	-n "U-Boot $(UBOOTRELEASE) for $(BOARD) board" -E \
+	-b $(patsubst %,arch/$(ARCH)/dts/%.dtb,$(subst ",,$(CONFIG_OF_LIST))) -i
+else
 MKIMAGEFLAGS_u-boot.img = -A $(ARCH) -T firmware -C none -O u-boot \
 	-a $(CONFIG_SYS_TEXT_BASE) -e $(CONFIG_SYS_UBOOT_START) \
 	-n "U-Boot $(UBOOTRELEASE) for $(BOARD) board"
+endif
 
 MKIMAGEFLAGS_u-boot-dtb.img = $(MKIMAGEFLAGS_u-boot.img)
 
@@ -918,7 +925,8 @@ MKIMAGEFLAGS_u-boot-spl.kwb = -n $(srctree)/$(CONFIG_SYS_KWD_CONFIG:"%"=%) \
 MKIMAGEFLAGS_u-boot.pbl = -n $(srctree)/$(CONFIG_SYS_FSL_PBL_RCW:"%"=%) \
 		-R $(srctree)/$(CONFIG_SYS_FSL_PBL_PBI:"%"=%) -T pblimage
 
-u-boot-dtb.img u-boot.img u-boot.kwb u-boot.pbl: u-boot.bin FORCE
+u-boot-dtb.img u-boot.img u-boot.kwb u-boot.pbl: \
+		$(if $(CONFIG_SPL_LOAD_FIT),u-boot-nodtb.bin dts/dt.dtb,u-boot.bin) FORCE
 	$(call if_changed,mkimage)
 
 u-boot-spl.kwb: u-boot.img spl/u-boot-spl.bin FORCE
diff --git a/dts/Kconfig b/dts/Kconfig
index ba83d5f..9ef2660 100644
--- a/dts/Kconfig
+++ b/dts/Kconfig
@@ -59,6 +59,16 @@ config DEFAULT_DEVICE_TREE
 	  It can be overridden from the command line:
 	  $ make DEVICE_TREE=<device-tree-name>
 
+config OF_LIST
+	string "List of device tree files to include for DT control"
+	depends on SPL_LOAD_FIT
+	help
+	  This option specifies a list of device tree files to use for DT
+	  control. These will be packaged into a FIT. At run-time, SPL will
+	  select the correct DT to use by examining the hardware (e.g.
+	  reading a board ID value). This is a list of device tree files
+	  (without the directory or .dtb suffix) separated by <space>.
+
 config OF_SPL_REMOVE_PROPS
 	string "List of device tree properties to drop for SPL"
 	depends on SPL_OF_CONTROL
-- 
2.7.0.rc3.207.g0ac5344

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

* [U-Boot] [PATCH 25/26] spl: Support loading a FIT from MMC
  2016-01-28 16:39 ` Simon Glass
                   ` (24 preceding siblings ...)
  (?)
@ 2016-01-28 16:39 ` Simon Glass
  -1 siblings, 0 replies; 54+ messages in thread
From: Simon Glass @ 2016-01-28 16:39 UTC (permalink / raw)
  To: u-boot

Detect a FIT when loading from MMC and handle it using the new FIT SPL
support.

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

 common/spl/spl_mmc.c | 75 +++++++++++++++++++++++++++++++++++++++-------------
 1 file changed, 57 insertions(+), 18 deletions(-)

diff --git a/common/spl/spl_mmc.c b/common/spl/spl_mmc.c
index c3931c6..a71a98b 100644
--- a/common/spl/spl_mmc.c
+++ b/common/spl/spl_mmc.c
@@ -18,41 +18,80 @@
 
 DECLARE_GLOBAL_DATA_PTR;
 
+static int mmc_load_legacy(struct mmc *mmc, ulong sector,
+			   struct image_header *header)
+{
+	u32 image_size_sectors;
+	unsigned long count;
+
+	spl_parse_image_header(header);
+	/* convert size to sectors - round up */
+	image_size_sectors = (spl_image.size + mmc->read_bl_len - 1) /
+			     mmc->read_bl_len;
+
+	/* Read the header too to avoid extra memcpy */
+	count = mmc->block_dev.block_read(&mmc->block_dev, sector,
+					  image_size_sectors,
+					  (void *)(ulong)spl_image.load_addr);
+	debug("read %x sectors to %x\n", image_size_sectors,
+	      spl_image.load_addr);
+	if (count != image_size_sectors)
+		return -EIO;
+
+	return 0;
+}
+
+#ifdef CONFIG_SPL_LOAD_FIT
+static ulong h_spl_load_read(struct spl_load_info *load, ulong sector,
+			     ulong count, void *buf)
+{
+	struct mmc *mmc = load->dev;
+
+	return mmc->block_dev.block_read(&mmc->block_dev, sector, count, buf);
+}
+#endif
+
 static int mmc_load_image_raw_sector(struct mmc *mmc, unsigned long sector)
 {
 	unsigned long count;
-	u32 image_size_sectors;
 	struct image_header *header;
+	int ret = 0;
 
 	header = (struct image_header *)(CONFIG_SYS_TEXT_BASE -
 					 sizeof(struct image_header));
 
 	/* read image header to find the image size & load address */
 	count = mmc->block_dev.block_read(&mmc->block_dev, sector, 1, header);
-	debug("read sector %lx, count=%lu\n", sector, count);
-	if (count == 0)
+	debug("hdr read sector %lx, count=%lu\n", sector, count);
+	if (count == 0) {
+		ret = -EIO;
 		goto end;
+	}
 
-	if (image_get_magic(header) != IH_MAGIC) {
+	switch (image_get_magic(header)) {
+	case IH_MAGIC:
+		ret = mmc_load_legacy(mmc, sector, header);
+		break;
+#ifdef CONFIG_SPL_LOAD_FIT
+	case FDT_MAGIC: {
+		struct spl_load_info load;
+
+		debug("Found FIT\n");
+		load.dev = mmc;
+		load.priv = NULL;
+		load.bl_len = mmc->read_bl_len;
+		load.read = h_spl_load_read;
+		ret = spl_load_simple_fit(&load, sector, header);
+		break;
+	}
+#endif
+	default:
 		puts("bad magic\n");
 		return -1;
 	}
 
-	spl_parse_image_header(header);
-
-	/* convert size to sectors - round up */
-	image_size_sectors = (spl_image.size + mmc->read_bl_len - 1) /
-			     mmc->read_bl_len;
-
-	/* Read the header too to avoid extra memcpy */
-	count = mmc->block_dev.block_read(&mmc->block_dev, sector,
-					  image_size_sectors,
-					  (void *)(ulong)spl_image.load_addr);
-	debug("read %x sectors to %x\n", image_size_sectors,
-	      spl_image.load_addr);
-
 end:
-	if (count == 0) {
+	if (ret) {
 #ifdef CONFIG_SPL_LIBCOMMON_SUPPORT
 		puts("spl: mmc block read error\n");
 #endif
-- 
2.7.0.rc3.207.g0ac5344

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

* [U-Boot] [PATCH 26/26] RFC: sunxi: Enable SPL FIT support
  2016-01-28 16:39 ` Simon Glass
                   ` (25 preceding siblings ...)
  (?)
@ 2016-01-28 16:39 ` Simon Glass
  -1 siblings, 0 replies; 54+ messages in thread
From: Simon Glass @ 2016-01-28 16:39 UTC (permalink / raw)
  To: u-boot

Enable SPL FIT support for the Linksprite pcDuino3 as an example of how this
feature is used.

This is only for demonstration purposes and is not to be applied.
Signed-off-by: Simon Glass <sjg@chromium.org>
---

 arch/arm/cpu/armv7/sunxi/board.c      | 5 +++++
 configs/Linksprite_pcDuino3_defconfig | 3 +++
 2 files changed, 8 insertions(+)

diff --git a/arch/arm/cpu/armv7/sunxi/board.c b/arch/arm/cpu/armv7/sunxi/board.c
index eb5f4b6..407adb5 100644
--- a/arch/arm/cpu/armv7/sunxi/board.c
+++ b/arch/arm/cpu/armv7/sunxi/board.c
@@ -103,6 +103,11 @@ static int gpio_init(void)
 	return 0;
 }
 
+int board_fit_config_name_match(const char *name)
+{
+	return strcmp(name, "sun7i-a20-pcduino3");
+}
+
 int spl_board_load_image(void)
 {
 	debug("Returning to FEL sp=%x, lr=%x\n", fel_stash.sp, fel_stash.lr);
diff --git a/configs/Linksprite_pcDuino3_defconfig b/configs/Linksprite_pcDuino3_defconfig
index 0b7ee98..74d11a0 100644
--- a/configs/Linksprite_pcDuino3_defconfig
+++ b/configs/Linksprite_pcDuino3_defconfig
@@ -14,3 +14,6 @@ CONFIG_OF_BOARD_SETUP=y
 CONFIG_CMD_GPIO=y
 CONFIG_ETH_DESIGNWARE=y
 CONFIG_USB_EHCI_HCD=y
+CONFIG_FIT=y
+CONFIG_SPL_LOAD_FIT=y
+CONFIG_OF_LIST="sun7i-a20-pcduino3 sun7i-a20-bananapro"
-- 
2.7.0.rc3.207.g0ac5344

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

* [U-Boot] [PATCH 07/26] libfdt: Add a function to write a property placeholder
@ 2016-01-29  5:29     ` David Gibson
  0 siblings, 0 replies; 54+ messages in thread
From: David Gibson @ 2016-01-29  5:29 UTC (permalink / raw)
  To: u-boot

On Thu, Jan 28, 2016 at 09:39:27AM -0700, Simon Glass wrote:
> The existing function to add a new property to a tree being built requires
> that the entire contents of the new property be passed in. For some
> applications it is more convenient to be able to add the property contents
> later, perhaps by reading from a file. This avoids double-buffering of the
> contents.
> 
> Add a new function to support this and adust the existing fdt_property() to
> use it.
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>

So, obviously such a patch should really go towards upstream libfdt.

I'm happy enough with the concept, but I don't like the name.

I'd prefer fdt_property_reserve() - the idea being that it reserves
space for the property but doesn't fill it in.

> ---
> 
>  include/libfdt.h    | 16 ++++++++++++++++
>  lib/libfdt/fdt_sw.c | 16 ++++++++++++++--
>  2 files changed, 30 insertions(+), 2 deletions(-)
> 
> diff --git a/include/libfdt.h b/include/libfdt.h
> index e48c21a..c3f37ee 100644
> --- a/include/libfdt.h
> +++ b/include/libfdt.h
> @@ -1181,6 +1181,22 @@ static inline int fdt_property_cell(void *fdt, const char *name, uint32_t val)
>  {
>  	return fdt_property_u32(fdt, name, val);
>  }
> +
> +/**
> + * fdt_property_val - add a new property and return a pointer to its value
> + *
> + * @fdt: pointer to the device tree blob
> + * @name: name of property to add
> + * @len: length of property value in bytes
> + * @valp: returns a pointer to where where the value should be placed
> + *
> + * returns:
> + *	0, on success
> + *	-FDT_ERR_BADMAGIC,
> + *	-FDT_ERR_NOSPACE, standard meanings
> + */
> +int fdt_property_val(void *fdt, const char *name, int len, void **valp);
> +
>  #define fdt_property_string(fdt, name, str) \
>  	fdt_property(fdt, name, str, strlen(str)+1)
>  int fdt_end_node(void *fdt);
> diff --git a/lib/libfdt/fdt_sw.c b/lib/libfdt/fdt_sw.c
> index 320a914..9c1df3d 100644
> --- a/lib/libfdt/fdt_sw.c
> +++ b/lib/libfdt/fdt_sw.c
> @@ -175,7 +175,7 @@ static int _fdt_find_add_string(void *fdt, const char *s)
>  	return offset;
>  }
>  
> -int fdt_property(void *fdt, const char *name, const void *val, int len)
> +int fdt_property_val(void *fdt, const char *name, int len, void **valp)
>  {
>  	struct fdt_property *prop;
>  	int nameoff;
> @@ -193,7 +193,19 @@ int fdt_property(void *fdt, const char *name, const void *val, int len)
>  	prop->tag = cpu_to_fdt32(FDT_PROP);
>  	prop->nameoff = cpu_to_fdt32(nameoff);
>  	prop->len = cpu_to_fdt32(len);
> -	memcpy(prop->data, val, len);
> +	*valp = prop->data;
> +	return 0;
> +}
> +
> +int fdt_property(void *fdt, const char *name, const void *val, int len)
> +{
> +	void *ptr;
> +	int ret;
> +
> +	ret = fdt_property_val(fdt, name, len, &ptr);
> +	if (ret)
> +		return ret;
> +	memcpy(ptr, val, len);
>  	return 0;
>  }
>  

-- 
David Gibson			| I'll have my music baroque, and my code
david AT gibson.dropbear.id.au	| minimalist, thank you.  NOT _the_ _other_
				| _way_ _around_!
http://www.ozlabs.org/~dgibson
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: not available
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20160129/1310db8b/attachment.sig>

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

* Re: [PATCH 07/26] libfdt: Add a function to write a property placeholder
@ 2016-01-29  5:29     ` David Gibson
  0 siblings, 0 replies; 54+ messages in thread
From: David Gibson @ 2016-01-29  5:29 UTC (permalink / raw)
  To: Simon Glass
  Cc: U-Boot Mailing List, Hans de Goede, Tom Rini, Devicetree Compiler

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

On Thu, Jan 28, 2016 at 09:39:27AM -0700, Simon Glass wrote:
> The existing function to add a new property to a tree being built requires
> that the entire contents of the new property be passed in. For some
> applications it is more convenient to be able to add the property contents
> later, perhaps by reading from a file. This avoids double-buffering of the
> contents.
> 
> Add a new function to support this and adust the existing fdt_property() to
> use it.
> 
> Signed-off-by: Simon Glass <sjg-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org>

So, obviously such a patch should really go towards upstream libfdt.

I'm happy enough with the concept, but I don't like the name.

I'd prefer fdt_property_reserve() - the idea being that it reserves
space for the property but doesn't fill it in.

> ---
> 
>  include/libfdt.h    | 16 ++++++++++++++++
>  lib/libfdt/fdt_sw.c | 16 ++++++++++++++--
>  2 files changed, 30 insertions(+), 2 deletions(-)
> 
> diff --git a/include/libfdt.h b/include/libfdt.h
> index e48c21a..c3f37ee 100644
> --- a/include/libfdt.h
> +++ b/include/libfdt.h
> @@ -1181,6 +1181,22 @@ static inline int fdt_property_cell(void *fdt, const char *name, uint32_t val)
>  {
>  	return fdt_property_u32(fdt, name, val);
>  }
> +
> +/**
> + * fdt_property_val - add a new property and return a pointer to its value
> + *
> + * @fdt: pointer to the device tree blob
> + * @name: name of property to add
> + * @len: length of property value in bytes
> + * @valp: returns a pointer to where where the value should be placed
> + *
> + * returns:
> + *	0, on success
> + *	-FDT_ERR_BADMAGIC,
> + *	-FDT_ERR_NOSPACE, standard meanings
> + */
> +int fdt_property_val(void *fdt, const char *name, int len, void **valp);
> +
>  #define fdt_property_string(fdt, name, str) \
>  	fdt_property(fdt, name, str, strlen(str)+1)
>  int fdt_end_node(void *fdt);
> diff --git a/lib/libfdt/fdt_sw.c b/lib/libfdt/fdt_sw.c
> index 320a914..9c1df3d 100644
> --- a/lib/libfdt/fdt_sw.c
> +++ b/lib/libfdt/fdt_sw.c
> @@ -175,7 +175,7 @@ static int _fdt_find_add_string(void *fdt, const char *s)
>  	return offset;
>  }
>  
> -int fdt_property(void *fdt, const char *name, const void *val, int len)
> +int fdt_property_val(void *fdt, const char *name, int len, void **valp)
>  {
>  	struct fdt_property *prop;
>  	int nameoff;
> @@ -193,7 +193,19 @@ int fdt_property(void *fdt, const char *name, const void *val, int len)
>  	prop->tag = cpu_to_fdt32(FDT_PROP);
>  	prop->nameoff = cpu_to_fdt32(nameoff);
>  	prop->len = cpu_to_fdt32(len);
> -	memcpy(prop->data, val, len);
> +	*valp = prop->data;
> +	return 0;
> +}
> +
> +int fdt_property(void *fdt, const char *name, const void *val, int len)
> +{
> +	void *ptr;
> +	int ret;
> +
> +	ret = fdt_property_val(fdt, name, len, &ptr);
> +	if (ret)
> +		return ret;
> +	memcpy(ptr, val, len);
>  	return 0;
>  }
>  

-- 
David Gibson			| I'll have my music baroque, and my code
david AT gibson.dropbear.id.au	| minimalist, thank you.  NOT _the_ _other_
				| _way_ _around_!
http://www.ozlabs.org/~dgibson

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

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

* [U-Boot] [PATCH 10/26] Kconfig: Move CONFIG_FIT and CONFIG_OF_*_SETUP to Kconfig
  2016-01-28 16:39 ` [U-Boot] [PATCH 10/26] Kconfig: Move CONFIG_FIT and CONFIG_OF_*_SETUP " Simon Glass
@ 2016-01-29  5:52   ` Heiko Schocher
  0 siblings, 0 replies; 54+ messages in thread
From: Heiko Schocher @ 2016-01-29  5:52 UTC (permalink / raw)
  To: u-boot

Hello Simon,

Am 28.01.2016 um 17:39 schrieb Simon Glass:
> Move these options to Kconfig and tidy up board configuration:
>
>     CONFIG_FIT
>     CONFIG_OF_BOARD_SETUP
>     CONFIG_OF_SYSTEM_SETUP
>
> Unfortunately the first one is a little complicated. We need to make sure
> this option is not enabled in SPL by this change. Also this option is
> enabled automatically in the host builds by defining CONFIG_GIT in the

CONFIG_FIT ?

> image.h file. To solve this, add a new IMAGE_USE_FIT #define which can
> be used in files that are built on the host but must also build for U-Boot
> and SPL.
>
> Note: Masahiro's moveconfig.py script is amazing.
>
> Signed-off-by: Simon Glass <sjg@chromium.org>
> ---

bye,
Heiko
-- 
DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany

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

* [U-Boot] [PATCH 07/26] libfdt: Add a function to write a property placeholder
@ 2016-01-29 18:23       ` Simon Glass
  0 siblings, 0 replies; 54+ messages in thread
From: Simon Glass @ 2016-01-29 18:23 UTC (permalink / raw)
  To: u-boot

Hi David,

On 28 January 2016 at 22:29, David Gibson <david@gibson.dropbear.id.au> wrote:
> On Thu, Jan 28, 2016 at 09:39:27AM -0700, Simon Glass wrote:
>> The existing function to add a new property to a tree being built requires
>> that the entire contents of the new property be passed in. For some
>> applications it is more convenient to be able to add the property contents
>> later, perhaps by reading from a file. This avoids double-buffering of the
>> contents.
>>
>> Add a new function to support this and adust the existing fdt_property() to
>> use it.
>>
>> Signed-off-by: Simon Glass <sjg@chromium.org>
>
> So, obviously such a patch should really go towards upstream libfdt.
>
> I'm happy enough with the concept, but I don't like the name.
>
> I'd prefer fdt_property_reserve() - the idea being that it reserves
> space for the property but doesn't fill it in.

Sounds good. I'll work up a patch. I tend to sync with upstream one a
quarter or so.

>
>> ---
>>
>>  include/libfdt.h    | 16 ++++++++++++++++
>>  lib/libfdt/fdt_sw.c | 16 ++++++++++++++--
>>  2 files changed, 30 insertions(+), 2 deletions(-)
>>
>> diff --git a/include/libfdt.h b/include/libfdt.h
>> index e48c21a..c3f37ee 100644
>> --- a/include/libfdt.h
>> +++ b/include/libfdt.h
>> @@ -1181,6 +1181,22 @@ static inline int fdt_property_cell(void *fdt, const char *name, uint32_t val)
>>  {
>>       return fdt_property_u32(fdt, name, val);
>>  }
>> +
>> +/**
>> + * fdt_property_val - add a new property and return a pointer to its value
>> + *
>> + * @fdt: pointer to the device tree blob
>> + * @name: name of property to add
>> + * @len: length of property value in bytes
>> + * @valp: returns a pointer to where where the value should be placed
>> + *
>> + * returns:
>> + *   0, on success
>> + *   -FDT_ERR_BADMAGIC,
>> + *   -FDT_ERR_NOSPACE, standard meanings
>> + */
>> +int fdt_property_val(void *fdt, const char *name, int len, void **valp);
>> +
>>  #define fdt_property_string(fdt, name, str) \
>>       fdt_property(fdt, name, str, strlen(str)+1)
>>  int fdt_end_node(void *fdt);
>> diff --git a/lib/libfdt/fdt_sw.c b/lib/libfdt/fdt_sw.c
>> index 320a914..9c1df3d 100644
>> --- a/lib/libfdt/fdt_sw.c
>> +++ b/lib/libfdt/fdt_sw.c
>> @@ -175,7 +175,7 @@ static int _fdt_find_add_string(void *fdt, const char *s)
>>       return offset;
>>  }
>>
>> -int fdt_property(void *fdt, const char *name, const void *val, int len)
>> +int fdt_property_val(void *fdt, const char *name, int len, void **valp)
>>  {
>>       struct fdt_property *prop;
>>       int nameoff;
>> @@ -193,7 +193,19 @@ int fdt_property(void *fdt, const char *name, const void *val, int len)
>>       prop->tag = cpu_to_fdt32(FDT_PROP);
>>       prop->nameoff = cpu_to_fdt32(nameoff);
>>       prop->len = cpu_to_fdt32(len);
>> -     memcpy(prop->data, val, len);
>> +     *valp = prop->data;
>> +     return 0;
>> +}
>> +
>> +int fdt_property(void *fdt, const char *name, const void *val, int len)
>> +{
>> +     void *ptr;
>> +     int ret;
>> +
>> +     ret = fdt_property_val(fdt, name, len, &ptr);
>> +     if (ret)
>> +             return ret;
>> +     memcpy(ptr, val, len);
>>       return 0;
>>  }
>>

Regards,
Simon

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

* Re: [PATCH 07/26] libfdt: Add a function to write a property placeholder
@ 2016-01-29 18:23       ` Simon Glass
  0 siblings, 0 replies; 54+ messages in thread
From: Simon Glass @ 2016-01-29 18:23 UTC (permalink / raw)
  To: David Gibson
  Cc: U-Boot Mailing List, Hans de Goede, Tom Rini, Devicetree Compiler

Hi David,

On 28 January 2016 at 22:29, David Gibson <david-xT8FGy+AXnRB3Ne2BGzF6laj5H9X9Tb+@public.gmane.org> wrote:
> On Thu, Jan 28, 2016 at 09:39:27AM -0700, Simon Glass wrote:
>> The existing function to add a new property to a tree being built requires
>> that the entire contents of the new property be passed in. For some
>> applications it is more convenient to be able to add the property contents
>> later, perhaps by reading from a file. This avoids double-buffering of the
>> contents.
>>
>> Add a new function to support this and adust the existing fdt_property() to
>> use it.
>>
>> Signed-off-by: Simon Glass <sjg-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org>
>
> So, obviously such a patch should really go towards upstream libfdt.
>
> I'm happy enough with the concept, but I don't like the name.
>
> I'd prefer fdt_property_reserve() - the idea being that it reserves
> space for the property but doesn't fill it in.

Sounds good. I'll work up a patch. I tend to sync with upstream one a
quarter or so.

>
>> ---
>>
>>  include/libfdt.h    | 16 ++++++++++++++++
>>  lib/libfdt/fdt_sw.c | 16 ++++++++++++++--
>>  2 files changed, 30 insertions(+), 2 deletions(-)
>>
>> diff --git a/include/libfdt.h b/include/libfdt.h
>> index e48c21a..c3f37ee 100644
>> --- a/include/libfdt.h
>> +++ b/include/libfdt.h
>> @@ -1181,6 +1181,22 @@ static inline int fdt_property_cell(void *fdt, const char *name, uint32_t val)
>>  {
>>       return fdt_property_u32(fdt, name, val);
>>  }
>> +
>> +/**
>> + * fdt_property_val - add a new property and return a pointer to its value
>> + *
>> + * @fdt: pointer to the device tree blob
>> + * @name: name of property to add
>> + * @len: length of property value in bytes
>> + * @valp: returns a pointer to where where the value should be placed
>> + *
>> + * returns:
>> + *   0, on success
>> + *   -FDT_ERR_BADMAGIC,
>> + *   -FDT_ERR_NOSPACE, standard meanings
>> + */
>> +int fdt_property_val(void *fdt, const char *name, int len, void **valp);
>> +
>>  #define fdt_property_string(fdt, name, str) \
>>       fdt_property(fdt, name, str, strlen(str)+1)
>>  int fdt_end_node(void *fdt);
>> diff --git a/lib/libfdt/fdt_sw.c b/lib/libfdt/fdt_sw.c
>> index 320a914..9c1df3d 100644
>> --- a/lib/libfdt/fdt_sw.c
>> +++ b/lib/libfdt/fdt_sw.c
>> @@ -175,7 +175,7 @@ static int _fdt_find_add_string(void *fdt, const char *s)
>>       return offset;
>>  }
>>
>> -int fdt_property(void *fdt, const char *name, const void *val, int len)
>> +int fdt_property_val(void *fdt, const char *name, int len, void **valp)
>>  {
>>       struct fdt_property *prop;
>>       int nameoff;
>> @@ -193,7 +193,19 @@ int fdt_property(void *fdt, const char *name, const void *val, int len)
>>       prop->tag = cpu_to_fdt32(FDT_PROP);
>>       prop->nameoff = cpu_to_fdt32(nameoff);
>>       prop->len = cpu_to_fdt32(len);
>> -     memcpy(prop->data, val, len);
>> +     *valp = prop->data;
>> +     return 0;
>> +}
>> +
>> +int fdt_property(void *fdt, const char *name, const void *val, int len)
>> +{
>> +     void *ptr;
>> +     int ret;
>> +
>> +     ret = fdt_property_val(fdt, name, len, &ptr);
>> +     if (ret)
>> +             return ret;
>> +     memcpy(ptr, val, len);
>>       return 0;
>>  }
>>

Regards,
Simon

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

* [U-Boot] [PATCH 07/26] libfdt: Add a function to write a property placeholder
@ 2016-01-31  9:55         ` David Gibson
  0 siblings, 0 replies; 54+ messages in thread
From: David Gibson @ 2016-01-31  9:55 UTC (permalink / raw)
  To: u-boot

On Fri, Jan 29, 2016 at 11:23:31AM -0700, Simon Glass wrote:
> Hi David,
> 
> On 28 January 2016 at 22:29, David Gibson <david@gibson.dropbear.id.au> wrote:
> > On Thu, Jan 28, 2016 at 09:39:27AM -0700, Simon Glass wrote:
> >> The existing function to add a new property to a tree being built requires
> >> that the entire contents of the new property be passed in. For some
> >> applications it is more convenient to be able to add the property contents
> >> later, perhaps by reading from a file. This avoids double-buffering of the
> >> contents.
> >>
> >> Add a new function to support this and adust the existing fdt_property() to
> >> use it.
> >>
> >> Signed-off-by: Simon Glass <sjg@chromium.org>
> >
> > So, obviously such a patch should really go towards upstream libfdt.
> >
> > I'm happy enough with the concept, but I don't like the name.
> >
> > I'd prefer fdt_property_reserve() - the idea being that it reserves
> > space for the property but doesn't fill it in.
> 
> Sounds good. I'll work up a patch. I tend to sync with upstream one a
> quarter or so.

Ok.

Actually, on further consideration, fdt_property_placeholder() is a
better name again.

> 
> >
> >> ---
> >>
> >>  include/libfdt.h    | 16 ++++++++++++++++
> >>  lib/libfdt/fdt_sw.c | 16 ++++++++++++++--
> >>  2 files changed, 30 insertions(+), 2 deletions(-)
> >>
> >> diff --git a/include/libfdt.h b/include/libfdt.h
> >> index e48c21a..c3f37ee 100644
> >> --- a/include/libfdt.h
> >> +++ b/include/libfdt.h
> >> @@ -1181,6 +1181,22 @@ static inline int fdt_property_cell(void *fdt, const char *name, uint32_t val)
> >>  {
> >>       return fdt_property_u32(fdt, name, val);
> >>  }
> >> +
> >> +/**
> >> + * fdt_property_val - add a new property and return a pointer to its value
> >> + *
> >> + * @fdt: pointer to the device tree blob
> >> + * @name: name of property to add
> >> + * @len: length of property value in bytes
> >> + * @valp: returns a pointer to where where the value should be placed
> >> + *
> >> + * returns:
> >> + *   0, on success
> >> + *   -FDT_ERR_BADMAGIC,
> >> + *   -FDT_ERR_NOSPACE, standard meanings
> >> + */
> >> +int fdt_property_val(void *fdt, const char *name, int len, void **valp);
> >> +
> >>  #define fdt_property_string(fdt, name, str) \
> >>       fdt_property(fdt, name, str, strlen(str)+1)
> >>  int fdt_end_node(void *fdt);
> >> diff --git a/lib/libfdt/fdt_sw.c b/lib/libfdt/fdt_sw.c
> >> index 320a914..9c1df3d 100644
> >> --- a/lib/libfdt/fdt_sw.c
> >> +++ b/lib/libfdt/fdt_sw.c
> >> @@ -175,7 +175,7 @@ static int _fdt_find_add_string(void *fdt, const char *s)
> >>       return offset;
> >>  }
> >>
> >> -int fdt_property(void *fdt, const char *name, const void *val, int len)
> >> +int fdt_property_val(void *fdt, const char *name, int len, void **valp)
> >>  {
> >>       struct fdt_property *prop;
> >>       int nameoff;
> >> @@ -193,7 +193,19 @@ int fdt_property(void *fdt, const char *name, const void *val, int len)
> >>       prop->tag = cpu_to_fdt32(FDT_PROP);
> >>       prop->nameoff = cpu_to_fdt32(nameoff);
> >>       prop->len = cpu_to_fdt32(len);
> >> -     memcpy(prop->data, val, len);
> >> +     *valp = prop->data;
> >> +     return 0;
> >> +}
> >> +
> >> +int fdt_property(void *fdt, const char *name, const void *val, int len)
> >> +{
> >> +     void *ptr;
> >> +     int ret;
> >> +
> >> +     ret = fdt_property_val(fdt, name, len, &ptr);
> >> +     if (ret)
> >> +             return ret;
> >> +     memcpy(ptr, val, len);
> >>       return 0;
> >>  }
> >>
> 
> Regards,
> Simon

-- 
David Gibson			| I'll have my music baroque, and my code
david AT gibson.dropbear.id.au	| minimalist, thank you.  NOT _the_ _other_
				| _way_ _around_!
http://www.ozlabs.org/~dgibson
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: not available
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20160131/3b94af2c/attachment.sig>

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

* Re: [PATCH 07/26] libfdt: Add a function to write a property placeholder
@ 2016-01-31  9:55         ` David Gibson
  0 siblings, 0 replies; 54+ messages in thread
From: David Gibson @ 2016-01-31  9:55 UTC (permalink / raw)
  To: Simon Glass
  Cc: U-Boot Mailing List, Hans de Goede, Tom Rini, Devicetree Compiler

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

On Fri, Jan 29, 2016 at 11:23:31AM -0700, Simon Glass wrote:
> Hi David,
> 
> On 28 January 2016 at 22:29, David Gibson <david-xT8FGy+AXnRB3Ne2BGzF6laj5H9X9Tb+@public.gmane.org> wrote:
> > On Thu, Jan 28, 2016 at 09:39:27AM -0700, Simon Glass wrote:
> >> The existing function to add a new property to a tree being built requires
> >> that the entire contents of the new property be passed in. For some
> >> applications it is more convenient to be able to add the property contents
> >> later, perhaps by reading from a file. This avoids double-buffering of the
> >> contents.
> >>
> >> Add a new function to support this and adust the existing fdt_property() to
> >> use it.
> >>
> >> Signed-off-by: Simon Glass <sjg-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org>
> >
> > So, obviously such a patch should really go towards upstream libfdt.
> >
> > I'm happy enough with the concept, but I don't like the name.
> >
> > I'd prefer fdt_property_reserve() - the idea being that it reserves
> > space for the property but doesn't fill it in.
> 
> Sounds good. I'll work up a patch. I tend to sync with upstream one a
> quarter or so.

Ok.

Actually, on further consideration, fdt_property_placeholder() is a
better name again.

> 
> >
> >> ---
> >>
> >>  include/libfdt.h    | 16 ++++++++++++++++
> >>  lib/libfdt/fdt_sw.c | 16 ++++++++++++++--
> >>  2 files changed, 30 insertions(+), 2 deletions(-)
> >>
> >> diff --git a/include/libfdt.h b/include/libfdt.h
> >> index e48c21a..c3f37ee 100644
> >> --- a/include/libfdt.h
> >> +++ b/include/libfdt.h
> >> @@ -1181,6 +1181,22 @@ static inline int fdt_property_cell(void *fdt, const char *name, uint32_t val)
> >>  {
> >>       return fdt_property_u32(fdt, name, val);
> >>  }
> >> +
> >> +/**
> >> + * fdt_property_val - add a new property and return a pointer to its value
> >> + *
> >> + * @fdt: pointer to the device tree blob
> >> + * @name: name of property to add
> >> + * @len: length of property value in bytes
> >> + * @valp: returns a pointer to where where the value should be placed
> >> + *
> >> + * returns:
> >> + *   0, on success
> >> + *   -FDT_ERR_BADMAGIC,
> >> + *   -FDT_ERR_NOSPACE, standard meanings
> >> + */
> >> +int fdt_property_val(void *fdt, const char *name, int len, void **valp);
> >> +
> >>  #define fdt_property_string(fdt, name, str) \
> >>       fdt_property(fdt, name, str, strlen(str)+1)
> >>  int fdt_end_node(void *fdt);
> >> diff --git a/lib/libfdt/fdt_sw.c b/lib/libfdt/fdt_sw.c
> >> index 320a914..9c1df3d 100644
> >> --- a/lib/libfdt/fdt_sw.c
> >> +++ b/lib/libfdt/fdt_sw.c
> >> @@ -175,7 +175,7 @@ static int _fdt_find_add_string(void *fdt, const char *s)
> >>       return offset;
> >>  }
> >>
> >> -int fdt_property(void *fdt, const char *name, const void *val, int len)
> >> +int fdt_property_val(void *fdt, const char *name, int len, void **valp)
> >>  {
> >>       struct fdt_property *prop;
> >>       int nameoff;
> >> @@ -193,7 +193,19 @@ int fdt_property(void *fdt, const char *name, const void *val, int len)
> >>       prop->tag = cpu_to_fdt32(FDT_PROP);
> >>       prop->nameoff = cpu_to_fdt32(nameoff);
> >>       prop->len = cpu_to_fdt32(len);
> >> -     memcpy(prop->data, val, len);
> >> +     *valp = prop->data;
> >> +     return 0;
> >> +}
> >> +
> >> +int fdt_property(void *fdt, const char *name, const void *val, int len)
> >> +{
> >> +     void *ptr;
> >> +     int ret;
> >> +
> >> +     ret = fdt_property_val(fdt, name, len, &ptr);
> >> +     if (ret)
> >> +             return ret;
> >> +     memcpy(ptr, val, len);
> >>       return 0;
> >>  }
> >>
> 
> Regards,
> Simon

-- 
David Gibson			| I'll have my music baroque, and my code
david AT gibson.dropbear.id.au	| minimalist, thank you.  NOT _the_ _other_
				| _way_ _around_!
http://www.ozlabs.org/~dgibson

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

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

* [U-Boot] [PATCH 23/26] spl: Add an option to load a FIT containing U-Boot
  2016-01-28 16:39 ` [U-Boot] [PATCH 23/26] spl: Add an option to load a FIT containing U-Boot Simon Glass
@ 2016-02-04 15:00   ` Stefano Babic
  2016-02-22  4:46     ` Simon Glass
  0 siblings, 1 reply; 54+ messages in thread
From: Stefano Babic @ 2016-02-04 15:00 UTC (permalink / raw)
  To: u-boot

Hi Simon,

On 28/01/2016 17:39, Simon Glass wrote:
> This provides a way to load a FIT containing U-Boot and a selection of device
> tree files. The board can select the correct device tree by probing the
> hardware. Then U-Boot is started with the selected device tree.
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>
> ---
> 
>  Kconfig              |  11 +++
>  common/spl/Makefile  |   1 +
>  common/spl/spl_fit.c | 192 +++++++++++++++++++++++++++++++++++++++++++++++++++
>  include/spl.h        |  18 +++++
>  4 files changed, 222 insertions(+)
>  create mode 100644 common/spl/spl_fit.c
> 
> diff --git a/Kconfig b/Kconfig
> index 3ce5ba1..f32c6c7 100644
> --- a/Kconfig
> +++ b/Kconfig
> @@ -215,6 +215,17 @@ config SYS_TEXT_BASE
>  	help
>  	  TODO: Move CONFIG_SYS_TEXT_BASE for all the architecture
>  
> +config SPL_LOAD_FIT
> +	bool "Enable SPL loading U-Boot as a FIT"
> +	depends on FIT
> +	help
> +	  Normally with the SPL framework a legacy image is generated as part
> +	  of the build. This contains U-Boot along with information as to
> +	  where it should be loaded. This option instead enables generation
> +	  of a FIT (Flat Image Tree) which provides more flexibility. In
> +	  particular it can handle selecting from multiple device tree
> +	  and passing the correct one to U-Boot.
> +
>  config SYS_CLK_FREQ
>  	depends on ARC || ARCH_SUNXI
>  	int "CPU clock frequency"
> diff --git a/common/spl/Makefile b/common/spl/Makefile
> index 10a4589..2e0f695 100644
> --- a/common/spl/Makefile
> +++ b/common/spl/Makefile
> @@ -10,6 +10,7 @@
>  
>  ifdef CONFIG_SPL_BUILD
>  obj-$(CONFIG_SPL_FRAMEWORK) += spl.o
> +obj-$(CONFIG_SPL_LOAD_FIT) += spl_fit.o
>  obj-$(CONFIG_SPL_NOR_SUPPORT) += spl_nor.o
>  obj-$(CONFIG_SPL_YMODEM_SUPPORT) += spl_ymodem.o
>  obj-$(CONFIG_SPL_NAND_SUPPORT) += spl_nand.o
> diff --git a/common/spl/spl_fit.c b/common/spl/spl_fit.c
> new file mode 100644
> index 0000000..f225f64
> --- /dev/null
> +++ b/common/spl/spl_fit.c
> @@ -0,0 +1,192 @@
> +/*
> + * Copyright (C) 2016 Google, Inc
> + * Written by Simon Glass <sjg@chromium.org>
> + *
> + * SPDX-License-Identifier:     GPL-2.0+
> + */
> +
> +#include <common.h>
> +#include <errno.h>
> +#include <spl.h>
> +

I would like to test your patchset, I am trying with a i.MX6 (I want to
build wandboard). It looks like that image.h is missing here.

common/spl/spl_fit.c: In function 'fdt_getprop_u32':
common/spl/spl_fit.c:20:2: warning: implicit declaration of function
'fdt_getprop' [-Wimplicit-function-declaration]

However, in image.h it looks like that IMAGE_USE_FIT is not correctly
set. I am looking why, I have just added these to wandboard_defconfig:

+CONFIG_FIT=y
+CONFIG_SPL_OF_LIBFDT=y
+CONFIG_SPL_LOAD_FIT=y
+CONFIG_OF_LIST="wandboard"


Best regards,
Stefano


> +static ulong fdt_getprop_u32(const void *fdt, int node, const char *prop)
> +{
> +	const u32 *cell;
> +	int len;
> +
> +	cell = fdt_getprop(fdt, node, prop, &len);
> +	if (len != sizeof(*cell))
> +		return -1U;
> +	return fdt32_to_cpu(*cell);
> +}
> +
> +static int spl_fit_select_fdt(const void *fdt, int images, int *fdt_offsetp)
> +{
> +	const char *name, *fdt_name;
> +	int conf, node, fdt_node;
> +	int len;
> +
> +	*fdt_offsetp = 0;
> +	conf = fdt_path_offset(fdt, FIT_CONFS_PATH);
> +	if (conf < 0) {
> +		debug("%s: Cannot find /configurations node: %d\n", __func__,
> +		      conf);
> +		return -EINVAL;
> +	}
> +	for (node = fdt_first_subnode(fdt, conf);
> +	     node >= 0;
> +	     node = fdt_next_subnode(fdt, node)) {
> +		name = fdt_getprop(fdt, node, "description", &len);
> +		if (!name)
> +			return -EINVAL;
> +		if (board_fit_config_name_match(name))
> +			continue;
> +
> +		debug("Selecting config '%s'", name);
> +		fdt_name = fdt_getprop(fdt, node, FIT_FDT_PROP, &len);
> +		if (!fdt_name) {
> +			debug("%s: Cannot find fdt name property: %d\n",
> +			      __func__, len);
> +			return -EINVAL;
> +		}
> +
> +		debug(", fdt '%s'\n", fdt_name);
> +		fdt_node = fdt_subnode_offset(fdt, images, fdt_name);
> +		if (fdt_node < 0) {
> +			debug("%s: Cannot find fdt node '%s': %d\n",
> +			      __func__, fdt_name, fdt_node);
> +			return -EINVAL;
> +		}
> +
> +		*fdt_offsetp = fdt_getprop_u32(fdt, fdt_node, "data-offset");
> +		len = fdt_getprop_u32(fdt, fdt_node, "data-size");
> +#ifdef CONFIG_SPL_LIBCOMMON_SUPPORT
> +		printf("FIT: Selected '%s'\n", name);
> +#endif
> +
> +		return len;
> +	}
> +
> +#ifdef CONFIG_SPL_LIBCOMMON_SUPPORT
> +	printf("No matching DT out of these options:\n");
> +	for (node = fdt_first_subnode(fdt, conf);
> +	     node >= 0;
> +	     node = fdt_next_subnode(fdt, node)) {
> +		name = fdt_getprop(fdt, node, "name", &len);
> +		printf("   %s\n", name);
> +	}
> +#endif
> +
> +	return -ENOENT;
> +}
> +
> +int spl_load_simple_fit(struct spl_load_info *info, ulong sector, void *fit)
> +{
> +	int sectors;
> +	ulong size, load;
> +	unsigned long count;
> +	int node, images;
> +	void *load_ptr;
> +	int fdt_offset, fdt_len;
> +	int data_offset, data_size;
> +	int base_offset;
> +	int src_sector;
> +	void *dst;
> +
> +	/*
> +	 * Figure out where the external images start. This is the base for the
> +	 * data-offset properties in each image.
> +	 */
> +	size = fdt_totalsize(fit);
> +	size = (size + 3) & ~3;
> +	base_offset = (size + 3) & ~3;
> +
> +	/*
> +	 * So far we only have one block of data from the FIT. Read the entire
> +	 * thing, including that first block, placing it so it finishes before
> +	 * where we will load the image.
> +	 *
> +	 * Note that we will load the image such that its first byte will be
> +	 * at the load address. Since that byte may be part-way through a
> +	 * block, we may load the image up to one block before the load
> +	 * address. So take account of that here by subtracting an addition
> +	 * block length from the FIT start position.
> +	 *
> +	 * In fact the FIT has its own load address, but we assume it cannot
> +	 * be before CONFIG_SYS_TEXT_BASE.
> +	 */
> +	fit = (void *)(CONFIG_SYS_TEXT_BASE - size - info->bl_len);
> +	sectors = (size + info->bl_len - 1) / info->bl_len;
> +	count = info->read(info, sector, sectors, fit);
> +	debug("fit read sector %lx, sectors=%d, dst=%p, count=%lu\n",
> +	      sector, sectors, fit, count);
> +	if (count == 0)
> +		return -EIO;
> +
> +	/* find the firmware image to load */
> +	images = fdt_path_offset(fit, FIT_IMAGES_PATH);
> +	if (images < 0) {
> +		debug("%s: Cannot find /images node: %d\n", __func__, images);
> +		return -1;
> +	}
> +	node = fdt_first_subnode(fit, images);
> +	if (node < 0) {
> +		debug("%s: Cannot find first image node: %d\n", __func__, node);
> +		return -1;
> +	}
> +
> +	/* Get its information and set up the spl_image structure */
> +	data_offset = fdt_getprop_u32(fit, node, "data-offset");
> +	data_size = fdt_getprop_u32(fit, node, "data-size");
> +	load = fdt_getprop_u32(fit, node, "load");
> +	debug("data_offset=%x, data_size=%x\n", data_offset, data_size);
> +	spl_image.load_addr = load;
> +	spl_image.entry_point = load;
> +	spl_image.os = IH_OS_U_BOOT;
> +
> +	/*
> +	 * Work out where to place the image. We read it so that the first
> +	 * byte will be at 'load'. This may mean we need to load it starting
> +	 * before then, since we can only read whole blocks.
> +	 */
> +	sectors = (data_size + info->bl_len - 1) / info->bl_len;
> +	data_offset += base_offset;
> +	load_ptr = (void *)load;
> +	debug("U-Boot size %x, data %p\n", data_size, load_ptr);
> +	dst = load_ptr - (data_offset % info->bl_len);
> +
> +	/* Read the image */
> +	src_sector = sector + data_offset / info->bl_len;
> +	debug("image: data_offset=%x, dst=%p, src_sector=%x, sectors=%x\n",
> +	      data_offset, dst, src_sector, sectors);
> +	count = info->read(info, src_sector, sectors, dst);
> +	if (count != sectors)
> +		return -EIO;
> +
> +	/* Figure out which device tree the board wants to use */
> +	fdt_len = spl_fit_select_fdt(fit, images, &fdt_offset);
> +	if (fdt_len < 0)
> +		return fdt_len;
> +
> +	/*
> +	 * Read the device tree and place it after the image. There may be
> +	 * some extra data before it since we can only read entire blocks.
> +	 */
> +	dst = load_ptr + data_size;
> +	fdt_offset += base_offset;
> +	count = info->read(info, sector + fdt_offset / info->bl_len, sectors,
> +			   dst);
> +	debug("fit read %x sectors to %x, dst %p, data_offset %x\n",
> +	      sectors, spl_image.load_addr, dst, fdt_offset);
> +	if (count != sectors)
> +		return -EIO;
> +
> +	/*
> +	 * Copy the device tree so that it starts immediately after the image.
> +	 * After this we will have the U-Boot image and its device tree ready
> +	 * for us to start.
> +	 */
> +	memcpy(dst, dst + fdt_offset % info->bl_len, fdt_len);
> +
> +	return 0;
> +}
> diff --git a/include/spl.h b/include/spl.h
> index 92cdc04..16f2f6a 100644
> --- a/include/spl.h
> +++ b/include/spl.h
> @@ -29,6 +29,24 @@ struct spl_image_info {
>  	u32 flags;
>  };
>  
> +/*
> + * Information required to load data from a device
> + *
> + * @dev: Pointer to the device, e.g. struct mmc *
> + * @priv: Private data for the device
> + * @bl_len: Block length for reading in bytes
> + * @read: Function to call to read from the device
> + */
> +struct spl_load_info {
> +	void *dev;
> +	void *priv;
> +	int bl_len;
> +	ulong (*read)(struct spl_load_info *load, ulong sector, ulong count,
> +		      void *buf);
> +};
> +
> +int spl_load_simple_fit(struct spl_load_info *info, ulong sector, void *fdt);
> +
>  #define SPL_COPY_PAYLOAD_ONLY	1
>  
>  extern struct spl_image_info spl_image;
> 


-- 
=====================================================================
DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic at denx.de
=====================================================================

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

* [U-Boot] [PATCH 19/26] mkimage: Support adding device tree files to a FIT
  2016-01-28 16:39 ` [U-Boot] [PATCH 19/26] mkimage: Support adding device tree files to a FIT Simon Glass
@ 2016-02-11 16:36   ` Tom Rini
  2016-02-12 15:54     ` Simon Glass
  0 siblings, 1 reply; 54+ messages in thread
From: Tom Rini @ 2016-02-11 16:36 UTC (permalink / raw)
  To: u-boot

On Thu, Jan 28, 2016 at 09:39:39AM -0700, Simon Glass wrote:

> To make the auto-FIT feature useful we need to be able to provide a list of
> device tree files on the command line for mkimage to add into the FIT. Add
> support for this feature.
[snip]
> +.BI "\-b
> +Specifies that the following arguments are device tree binary files (.dtb).
> +
> +.TP
>  .BI "\-c [" "comment" "]"
>  Specifies a comment to be added when signing. This is typically a useful
>  message which describes how the image was signed or some other useful
> @@ -125,6 +129,10 @@ This can be used to sign images with additional keys after initial image
>  creation.
>  
>  .TP
> +.BI "\-i
> +Specifies that the following arguments are image files.
> +
> +.TP
>  .BI "\-k [" "key_directory" "]"
>  Specifies the directory containing keys to use for signing. This directory
>  should contain a private key file <name>.key for use with signing and a
> @@ -191,6 +199,15 @@ is required.
>  .br
>  .B -c """Kernel 4.4 image for production devices""" -d vmlinuz kernel.itb
>  .fi
> +.P
> +Create a FIT image containing a kernel and some device tree files, using
> +automatic mode. No .its file is required.
> +.nf
> +.B mkimage -f auto -A arm -O linux -T kernel -C none -a 43e00000 -e 0 \\\\
> +.br
> +.B -c """Kernel 4.4 image for production devices""" -d vmlinuz \\\\
> +.B -b rk3288-firefly.dts rk3288-jerry.dts -i kernel.itb
> +.fi

OK, I'm confused in a few ways here.  First, we don't need quotes around
the space separated list of dts files?  Second, we need dts not dtb?
Third, I think this would be a better example if (as I suspect we need
really) it was a full path to the output rather than assuming that we've
copied the files to $PWD.  Fourth, -i is inputs or outputs?  The help
reads like inputs and is where I assume we would say vmlinuz here and
not use -d and then end with our output of kernel.itb.  Thanks!

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20160211/11bb4742/attachment.sig>

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

* [U-Boot] [PATCH 19/26] mkimage: Support adding device tree files to a FIT
  2016-02-11 16:36   ` Tom Rini
@ 2016-02-12 15:54     ` Simon Glass
  2016-02-12 16:03       ` Tom Rini
  0 siblings, 1 reply; 54+ messages in thread
From: Simon Glass @ 2016-02-12 15:54 UTC (permalink / raw)
  To: u-boot

Hi Tom,

On 11 February 2016 at 09:36, Tom Rini <trini@konsulko.com> wrote:
> On Thu, Jan 28, 2016 at 09:39:39AM -0700, Simon Glass wrote:
>
>> To make the auto-FIT feature useful we need to be able to provide a list of
>> device tree files on the command line for mkimage to add into the FIT. Add
>> support for this feature.
> [snip]
>> +.BI "\-b
>> +Specifies that the following arguments are device tree binary files (.dtb).
>> +
>> +.TP
>>  .BI "\-c [" "comment" "]"
>>  Specifies a comment to be added when signing. This is typically a useful
>>  message which describes how the image was signed or some other useful
>> @@ -125,6 +129,10 @@ This can be used to sign images with additional keys after initial image
>>  creation.
>>
>>  .TP
>> +.BI "\-i
>> +Specifies that the following arguments are image files.
>> +
>> +.TP
>>  .BI "\-k [" "key_directory" "]"
>>  Specifies the directory containing keys to use for signing. This directory
>>  should contain a private key file <name>.key for use with signing and a
>> @@ -191,6 +199,15 @@ is required.
>>  .br
>>  .B -c """Kernel 4.4 image for production devices""" -d vmlinuz kernel.itb
>>  .fi
>> +.P
>> +Create a FIT image containing a kernel and some device tree files, using
>> +automatic mode. No .its file is required.
>> +.nf
>> +.B mkimage -f auto -A arm -O linux -T kernel -C none -a 43e00000 -e 0 \\\\
>> +.br
>> +.B -c """Kernel 4.4 image for production devices""" -d vmlinuz \\\\
>> +.B -b rk3288-firefly.dts rk3288-jerry.dts -i kernel.itb
>> +.fi
>
> OK, I'm confused in a few ways here.  First, we don't need quotes around
> the space separated list of dts files?

No, the -b option introduces the list, which can be as long as needed.
I want to make it possible to specify a list easily.

> Second, we need dts not dtb?

Eek, no, it should be dtb.

> Third, I think this would be a better example if (as I suspect we need
> really) it was a full path to the output rather than assuming that we've
> copied the files to $PWD.

OK

> Fourth, -i is inputs or outputs?  The help
> reads like inputs and is where I assume we would say vmlinuz here and
> not use -d and then end with our output of kernel.itb.  Thanks!

-i introduces the image file, whic his an output. The -d provides the
datafile, which is the file that is is put inside the FIT.

Maybe we can change things to make this a bit clearer. We could
perhaps have an option to end the list of dtb files, instead of the
option to signal the output file is next? Or maybe we can avoid -i
altogether since the last arg should be the output file.

Regards,
Simon

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

* [U-Boot] [PATCH 19/26] mkimage: Support adding device tree files to a FIT
  2016-02-12 15:54     ` Simon Glass
@ 2016-02-12 16:03       ` Tom Rini
  0 siblings, 0 replies; 54+ messages in thread
From: Tom Rini @ 2016-02-12 16:03 UTC (permalink / raw)
  To: u-boot

On Fri, Feb 12, 2016 at 08:54:09AM -0700, Simon Glass wrote:
> Hi Tom,
> 
> On 11 February 2016 at 09:36, Tom Rini <trini@konsulko.com> wrote:
> > On Thu, Jan 28, 2016 at 09:39:39AM -0700, Simon Glass wrote:
> >
> >> To make the auto-FIT feature useful we need to be able to provide a list of
> >> device tree files on the command line for mkimage to add into the FIT. Add
> >> support for this feature.
> > [snip]
> >> +.BI "\-b
> >> +Specifies that the following arguments are device tree binary files (.dtb).
> >> +
> >> +.TP
> >>  .BI "\-c [" "comment" "]"
> >>  Specifies a comment to be added when signing. This is typically a useful
> >>  message which describes how the image was signed or some other useful
> >> @@ -125,6 +129,10 @@ This can be used to sign images with additional keys after initial image
> >>  creation.
> >>
> >>  .TP
> >> +.BI "\-i
> >> +Specifies that the following arguments are image files.
> >> +
> >> +.TP
> >>  .BI "\-k [" "key_directory" "]"
> >>  Specifies the directory containing keys to use for signing. This directory
> >>  should contain a private key file <name>.key for use with signing and a
> >> @@ -191,6 +199,15 @@ is required.
> >>  .br
> >>  .B -c """Kernel 4.4 image for production devices""" -d vmlinuz kernel.itb
> >>  .fi
> >> +.P
> >> +Create a FIT image containing a kernel and some device tree files, using
> >> +automatic mode. No .its file is required.
> >> +.nf
> >> +.B mkimage -f auto -A arm -O linux -T kernel -C none -a 43e00000 -e 0 \\\\
> >> +.br
> >> +.B -c """Kernel 4.4 image for production devices""" -d vmlinuz \\\\
> >> +.B -b rk3288-firefly.dts rk3288-jerry.dts -i kernel.itb
> >> +.fi
> >
> > OK, I'm confused in a few ways here.  First, we don't need quotes around
> > the space separated list of dts files?
> 
> No, the -b option introduces the list, which can be as long as needed.
> I want to make it possible to specify a list easily.

OK.  I don't see how that works in the code, but if that's the intent
and it works, OK :)

> > Second, we need dts not dtb?
> 
> Eek, no, it should be dtb.
> 
> > Third, I think this would be a better example if (as I suspect we need
> > really) it was a full path to the output rather than assuming that we've
> > copied the files to $PWD.
> 
> OK
> 
> > Fourth, -i is inputs or outputs?  The help
> > reads like inputs and is where I assume we would say vmlinuz here and
> > not use -d and then end with our output of kernel.itb.  Thanks!
> 
> -i introduces the image file, whic his an output. The -d provides the
> datafile, which is the file that is is put inside the FIT.
> 
> Maybe we can change things to make this a bit clearer. We could
> perhaps have an option to end the list of dtb files, instead of the
> option to signal the output file is next? Or maybe we can avoid -i
> altogether since the last arg should be the output file.

Yes, I don't think we need -i at all.  The last argument is the output,
always, and -f auto instead of -f some-file.its is all we need to know
it's a FIT output.  And, ah, so I guess this is how -b is implemented
then.  Yes, this seems rather awkward.  Maybe we instead implement a
sometimes optional (ie previous use cases) -o flag to say output file is
... and also make sure it's clear in the man page at least that -b
consumes following arguments as the DT list until another flag is
passed?

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20160212/b1740b3a/attachment.sig>

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

* [U-Boot] [PATCH 00/26] spl: Support loading a FIT image containing U-Boot
  2016-01-28 16:39 ` Simon Glass
@ 2016-02-16 11:34   ` Masahiro Yamada
  -1 siblings, 0 replies; 54+ messages in thread
From: Masahiro Yamada @ 2016-02-16 11:34 UTC (permalink / raw)
  To: u-boot

Hi Simon,


2016-01-29 1:39 GMT+09:00 Simon Glass <sjg@chromium.org>:
> We need a way to support more than one board per binary in U-Boot with
> device tree. Various methods have been discussed. The one that seems to make
> the most sense is to adjust SPL so that it can load a FIT which contains
> U-Boot and several device tree binaries. This is how things with with Linux:
> load a FIT and select the correct device tree to pass to Linux.

I've just skimmed over the git-logs, but I am confused.


Please makes it clearer why this is useful.
In your way, how SPL is handled?

SPL is much more board-specific than U-Boot proper.
So, I assume SPL would remain as a per-board image
even after achieving one U-Boot proper for multi-boards.

Let's say we want to support Board-A, Board-B, Board-C with one U-Boot proper.

The U-Boot proper + FIT (including DTB-A, DTB-B, DTB-C) would be
generated by one-shot
and by one defconfig.


But, we would still have to do

make board_a_defconfig && make
make board_b_defconfig && make
make board_c_defconfig && make

to generate SPL for each of the three.
Is this correct?


Supposing my guess is correct, this series would not contribute
to decreasing the number of defconfig files.



Please explain which problem you are solving with this series.


-- 
Best Regards
Masahiro Yamada

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

* Re: [PATCH 00/26] spl: Support loading a FIT image containing U-Boot
@ 2016-02-16 11:34   ` Masahiro Yamada
  0 siblings, 0 replies; 54+ messages in thread
From: Masahiro Yamada @ 2016-02-16 11:34 UTC (permalink / raw)
  To: Simon Glass
  Cc: Tom Rini, U-Boot Mailing List, Joe Hershberger, Jerry Van Baren,
	Ian Campbell, Devicetree Compiler

Hi Simon,


2016-01-29 1:39 GMT+09:00 Simon Glass <sjg@chromium.org>:
> We need a way to support more than one board per binary in U-Boot with
> device tree. Various methods have been discussed. The one that seems to make
> the most sense is to adjust SPL so that it can load a FIT which contains
> U-Boot and several device tree binaries. This is how things with with Linux:
> load a FIT and select the correct device tree to pass to Linux.

I've just skimmed over the git-logs, but I am confused.


Please makes it clearer why this is useful.
In your way, how SPL is handled?

SPL is much more board-specific than U-Boot proper.
So, I assume SPL would remain as a per-board image
even after achieving one U-Boot proper for multi-boards.

Let's say we want to support Board-A, Board-B, Board-C with one U-Boot proper.

The U-Boot proper + FIT (including DTB-A, DTB-B, DTB-C) would be
generated by one-shot
and by one defconfig.


But, we would still have to do

make board_a_defconfig && make
make board_b_defconfig && make
make board_c_defconfig && make

to generate SPL for each of the three.
Is this correct?


Supposing my guess is correct, this series would not contribute
to decreasing the number of defconfig files.



Please explain which problem you are solving with this series.


-- 
Best Regards
Masahiro Yamada

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

* [U-Boot] [PATCH 00/26] spl: Support loading a FIT image containing U-Boot
@ 2016-02-16 12:17     ` Tom Rini
  0 siblings, 0 replies; 54+ messages in thread
From: Tom Rini @ 2016-02-16 12:17 UTC (permalink / raw)
  To: u-boot

On Tue, Feb 16, 2016 at 08:34:59PM +0900, Masahiro Yamada wrote:
> Hi Simon,
> 
> 
> 2016-01-29 1:39 GMT+09:00 Simon Glass <sjg@chromium.org>:
> > We need a way to support more than one board per binary in U-Boot with
> > device tree. Various methods have been discussed. The one that seems to make
> > the most sense is to adjust SPL so that it can load a FIT which contains
> > U-Boot and several device tree binaries. This is how things with with Linux:
> > load a FIT and select the correct device tree to pass to Linux.
> 
> I've just skimmed over the git-logs, but I am confused.
> 
> 
> Please makes it clearer why this is useful.
> In your way, how SPL is handled?
> 
> SPL is much more board-specific than U-Boot proper.
> So, I assume SPL would remain as a per-board image
> even after achieving one U-Boot proper for multi-boards.
> 
> Let's say we want to support Board-A, Board-B, Board-C with one U-Boot proper.
> 
> The U-Boot proper + FIT (including DTB-A, DTB-B, DTB-C) would be
> generated by one-shot
> and by one defconfig.
> 
> 
> But, we would still have to do
> 
> make board_a_defconfig && make
> make board_b_defconfig && make
> make board_c_defconfig && make
> 
> to generate SPL for each of the three.
> Is this correct?
> 
> 
> Supposing my guess is correct, this series would not contribute
> to decreasing the number of defconfig files.
> 
> 
> 
> Please explain which problem you are solving with this series.

It won't be just one board.  We need this so that we can replicate
existing (and very useful) functionality.  Today, am335x_evm_config
supports Beaglebone White, Beaglebone Black (could be faked enough for
U-Boot), AM335x GP EVM, AM335x EVM SK and if you tweak the default UART
AM335x IDK EVM.  Each of these is different enough that they have their
own DT that we will need to pass up to U-Boot, and their own config
file.  With Simon's series we'll be able to move am335x_evm_config up to
DM in SPL and possibly even remove some of the am335x_evm subconfigs we
have today, once those specific options also move to Kconfig.

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20160216/64699b41/attachment.sig>

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

* Re: [U-Boot] [PATCH 00/26] spl: Support loading a FIT image containing U-Boot
@ 2016-02-16 12:17     ` Tom Rini
  0 siblings, 0 replies; 54+ messages in thread
From: Tom Rini @ 2016-02-16 12:17 UTC (permalink / raw)
  To: Masahiro Yamada
  Cc: Simon Glass, U-Boot Mailing List, Joe Hershberger,
	Jerry Van Baren, Ian Campbell, Devicetree Compiler

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

On Tue, Feb 16, 2016 at 08:34:59PM +0900, Masahiro Yamada wrote:
> Hi Simon,
> 
> 
> 2016-01-29 1:39 GMT+09:00 Simon Glass <sjg-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org>:
> > We need a way to support more than one board per binary in U-Boot with
> > device tree. Various methods have been discussed. The one that seems to make
> > the most sense is to adjust SPL so that it can load a FIT which contains
> > U-Boot and several device tree binaries. This is how things with with Linux:
> > load a FIT and select the correct device tree to pass to Linux.
> 
> I've just skimmed over the git-logs, but I am confused.
> 
> 
> Please makes it clearer why this is useful.
> In your way, how SPL is handled?
> 
> SPL is much more board-specific than U-Boot proper.
> So, I assume SPL would remain as a per-board image
> even after achieving one U-Boot proper for multi-boards.
> 
> Let's say we want to support Board-A, Board-B, Board-C with one U-Boot proper.
> 
> The U-Boot proper + FIT (including DTB-A, DTB-B, DTB-C) would be
> generated by one-shot
> and by one defconfig.
> 
> 
> But, we would still have to do
> 
> make board_a_defconfig && make
> make board_b_defconfig && make
> make board_c_defconfig && make
> 
> to generate SPL for each of the three.
> Is this correct?
> 
> 
> Supposing my guess is correct, this series would not contribute
> to decreasing the number of defconfig files.
> 
> 
> 
> Please explain which problem you are solving with this series.

It won't be just one board.  We need this so that we can replicate
existing (and very useful) functionality.  Today, am335x_evm_config
supports Beaglebone White, Beaglebone Black (could be faked enough for
U-Boot), AM335x GP EVM, AM335x EVM SK and if you tweak the default UART
AM335x IDK EVM.  Each of these is different enough that they have their
own DT that we will need to pass up to U-Boot, and their own config
file.  With Simon's series we'll be able to move am335x_evm_config up to
DM in SPL and possibly even remove some of the am335x_evm subconfigs we
have today, once those specific options also move to Kconfig.

-- 
Tom

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 836 bytes --]

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

* [U-Boot] [PATCH 00/26] spl: Support loading a FIT image containing U-Boot
  2016-02-16 12:17     ` Tom Rini
@ 2016-02-16 12:30       ` Masahiro Yamada
  -1 siblings, 0 replies; 54+ messages in thread
From: Masahiro Yamada @ 2016-02-16 12:30 UTC (permalink / raw)
  To: u-boot

2016-02-16 21:17 GMT+09:00 Tom Rini <trini@konsulko.com>:
> On Tue, Feb 16, 2016 at 08:34:59PM +0900, Masahiro Yamada wrote:
>> Hi Simon,
>>
>>
>> 2016-01-29 1:39 GMT+09:00 Simon Glass <sjg@chromium.org>:
>> > We need a way to support more than one board per binary in U-Boot with
>> > device tree. Various methods have been discussed. The one that seems to make
>> > the most sense is to adjust SPL so that it can load a FIT which contains
>> > U-Boot and several device tree binaries. This is how things with with Linux:
>> > load a FIT and select the correct device tree to pass to Linux.
>>
>> I've just skimmed over the git-logs, but I am confused.
>>
>>
>> Please makes it clearer why this is useful.
>> In your way, how SPL is handled?
>>
>> SPL is much more board-specific than U-Boot proper.
>> So, I assume SPL would remain as a per-board image
>> even after achieving one U-Boot proper for multi-boards.
>>
>> Let's say we want to support Board-A, Board-B, Board-C with one U-Boot proper.
>>
>> The U-Boot proper + FIT (including DTB-A, DTB-B, DTB-C) would be
>> generated by one-shot
>> and by one defconfig.
>>
>>
>> But, we would still have to do
>>
>> make board_a_defconfig && make
>> make board_b_defconfig && make
>> make board_c_defconfig && make
>>
>> to generate SPL for each of the three.
>> Is this correct?
>>
>>
>> Supposing my guess is correct, this series would not contribute
>> to decreasing the number of defconfig files.
>>
>>
>>
>> Please explain which problem you are solving with this series.
>
> It won't be just one board.  We need this so that we can replicate
> existing (and very useful) functionality.  Today, am335x_evm_config
> supports Beaglebone White, Beaglebone Black (could be faked enough for
> U-Boot), AM335x GP EVM, AM335x EVM SK and if you tweak the default UART
> AM335x IDK EVM.  Each of these is different enough that they have their
> own DT that we will need to pass up to U-Boot, and their own config
> file.  With Simon's series we'll be able to move am335x_evm_config up to
> DM in SPL and possibly even remove some of the am335x_evm subconfigs we
> have today, once those specific options also move to Kconfig.

So, this series is useful to merge some boards
that are different enough to have their own DT,
but that are similar enough to share one SPL binary, correct?



-- 
Best Regards
Masahiro Yamada

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

* Re: [U-Boot] [PATCH 00/26] spl: Support loading a FIT image containing U-Boot
@ 2016-02-16 12:30       ` Masahiro Yamada
  0 siblings, 0 replies; 54+ messages in thread
From: Masahiro Yamada @ 2016-02-16 12:30 UTC (permalink / raw)
  To: Tom Rini
  Cc: Joe Hershberger, U-Boot Mailing List, Jerry Van Baren,
	Ian Campbell, Devicetree Compiler

2016-02-16 21:17 GMT+09:00 Tom Rini <trini-OWPKS81ov/FWk0Htik3J/w@public.gmane.org>:
> On Tue, Feb 16, 2016 at 08:34:59PM +0900, Masahiro Yamada wrote:
>> Hi Simon,
>>
>>
>> 2016-01-29 1:39 GMT+09:00 Simon Glass <sjg-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org>:
>> > We need a way to support more than one board per binary in U-Boot with
>> > device tree. Various methods have been discussed. The one that seems to make
>> > the most sense is to adjust SPL so that it can load a FIT which contains
>> > U-Boot and several device tree binaries. This is how things with with Linux:
>> > load a FIT and select the correct device tree to pass to Linux.
>>
>> I've just skimmed over the git-logs, but I am confused.
>>
>>
>> Please makes it clearer why this is useful.
>> In your way, how SPL is handled?
>>
>> SPL is much more board-specific than U-Boot proper.
>> So, I assume SPL would remain as a per-board image
>> even after achieving one U-Boot proper for multi-boards.
>>
>> Let's say we want to support Board-A, Board-B, Board-C with one U-Boot proper.
>>
>> The U-Boot proper + FIT (including DTB-A, DTB-B, DTB-C) would be
>> generated by one-shot
>> and by one defconfig.
>>
>>
>> But, we would still have to do
>>
>> make board_a_defconfig && make
>> make board_b_defconfig && make
>> make board_c_defconfig && make
>>
>> to generate SPL for each of the three.
>> Is this correct?
>>
>>
>> Supposing my guess is correct, this series would not contribute
>> to decreasing the number of defconfig files.
>>
>>
>>
>> Please explain which problem you are solving with this series.
>
> It won't be just one board.  We need this so that we can replicate
> existing (and very useful) functionality.  Today, am335x_evm_config
> supports Beaglebone White, Beaglebone Black (could be faked enough for
> U-Boot), AM335x GP EVM, AM335x EVM SK and if you tweak the default UART
> AM335x IDK EVM.  Each of these is different enough that they have their
> own DT that we will need to pass up to U-Boot, and their own config
> file.  With Simon's series we'll be able to move am335x_evm_config up to
> DM in SPL and possibly even remove some of the am335x_evm subconfigs we
> have today, once those specific options also move to Kconfig.

So, this series is useful to merge some boards
that are different enough to have their own DT,
but that are similar enough to share one SPL binary, correct?



-- 
Best Regards
Masahiro Yamada

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

* [U-Boot] [PATCH 00/26] spl: Support loading a FIT image containing U-Boot
@ 2016-02-16 13:33         ` Tom Rini
  0 siblings, 0 replies; 54+ messages in thread
From: Tom Rini @ 2016-02-16 13:33 UTC (permalink / raw)
  To: u-boot

On Tue, Feb 16, 2016 at 09:30:44PM +0900, Masahiro Yamada wrote:
> 2016-02-16 21:17 GMT+09:00 Tom Rini <trini@konsulko.com>:
> > On Tue, Feb 16, 2016 at 08:34:59PM +0900, Masahiro Yamada wrote:
> >> Hi Simon,
> >>
> >>
> >> 2016-01-29 1:39 GMT+09:00 Simon Glass <sjg@chromium.org>:
> >> > We need a way to support more than one board per binary in U-Boot with
> >> > device tree. Various methods have been discussed. The one that seems to make
> >> > the most sense is to adjust SPL so that it can load a FIT which contains
> >> > U-Boot and several device tree binaries. This is how things with with Linux:
> >> > load a FIT and select the correct device tree to pass to Linux.
> >>
> >> I've just skimmed over the git-logs, but I am confused.
> >>
> >>
> >> Please makes it clearer why this is useful.
> >> In your way, how SPL is handled?
> >>
> >> SPL is much more board-specific than U-Boot proper.
> >> So, I assume SPL would remain as a per-board image
> >> even after achieving one U-Boot proper for multi-boards.
> >>
> >> Let's say we want to support Board-A, Board-B, Board-C with one U-Boot proper.
> >>
> >> The U-Boot proper + FIT (including DTB-A, DTB-B, DTB-C) would be
> >> generated by one-shot
> >> and by one defconfig.
> >>
> >>
> >> But, we would still have to do
> >>
> >> make board_a_defconfig && make
> >> make board_b_defconfig && make
> >> make board_c_defconfig && make
> >>
> >> to generate SPL for each of the three.
> >> Is this correct?
> >>
> >>
> >> Supposing my guess is correct, this series would not contribute
> >> to decreasing the number of defconfig files.
> >>
> >>
> >>
> >> Please explain which problem you are solving with this series.
> >
> > It won't be just one board.  We need this so that we can replicate
> > existing (and very useful) functionality.  Today, am335x_evm_config
> > supports Beaglebone White, Beaglebone Black (could be faked enough for
> > U-Boot), AM335x GP EVM, AM335x EVM SK and if you tweak the default UART
> > AM335x IDK EVM.  Each of these is different enough that they have their
> > own DT that we will need to pass up to U-Boot, and their own config
> > file.  With Simon's series we'll be able to move am335x_evm_config up to
> > DM in SPL and possibly even remove some of the am335x_evm subconfigs we
> > have today, once those specific options also move to Kconfig.
> 
> So, this series is useful to merge some boards
> that are different enough to have their own DT,
> but that are similar enough to share one SPL binary, correct?

Yes.  It _may_ even be useful later on to support a more broad set of
boards than we do today (ie it's not impossible that one binary could
support the TI AM43xx EVMs as well, or all TI EVMs that have the EEPROM
that identifies the model, for some narrow scope of boot devices).

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20160216/acaeb5e8/attachment.sig>

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

* Re: [U-Boot] [PATCH 00/26] spl: Support loading a FIT image containing U-Boot
@ 2016-02-16 13:33         ` Tom Rini
  0 siblings, 0 replies; 54+ messages in thread
From: Tom Rini @ 2016-02-16 13:33 UTC (permalink / raw)
  To: Masahiro Yamada
  Cc: Joe Hershberger, U-Boot Mailing List, Jerry Van Baren,
	Ian Campbell, Devicetree Compiler

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

On Tue, Feb 16, 2016 at 09:30:44PM +0900, Masahiro Yamada wrote:
> 2016-02-16 21:17 GMT+09:00 Tom Rini <trini-OWPKS81ov/FWk0Htik3J/w@public.gmane.org>:
> > On Tue, Feb 16, 2016 at 08:34:59PM +0900, Masahiro Yamada wrote:
> >> Hi Simon,
> >>
> >>
> >> 2016-01-29 1:39 GMT+09:00 Simon Glass <sjg-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org>:
> >> > We need a way to support more than one board per binary in U-Boot with
> >> > device tree. Various methods have been discussed. The one that seems to make
> >> > the most sense is to adjust SPL so that it can load a FIT which contains
> >> > U-Boot and several device tree binaries. This is how things with with Linux:
> >> > load a FIT and select the correct device tree to pass to Linux.
> >>
> >> I've just skimmed over the git-logs, but I am confused.
> >>
> >>
> >> Please makes it clearer why this is useful.
> >> In your way, how SPL is handled?
> >>
> >> SPL is much more board-specific than U-Boot proper.
> >> So, I assume SPL would remain as a per-board image
> >> even after achieving one U-Boot proper for multi-boards.
> >>
> >> Let's say we want to support Board-A, Board-B, Board-C with one U-Boot proper.
> >>
> >> The U-Boot proper + FIT (including DTB-A, DTB-B, DTB-C) would be
> >> generated by one-shot
> >> and by one defconfig.
> >>
> >>
> >> But, we would still have to do
> >>
> >> make board_a_defconfig && make
> >> make board_b_defconfig && make
> >> make board_c_defconfig && make
> >>
> >> to generate SPL for each of the three.
> >> Is this correct?
> >>
> >>
> >> Supposing my guess is correct, this series would not contribute
> >> to decreasing the number of defconfig files.
> >>
> >>
> >>
> >> Please explain which problem you are solving with this series.
> >
> > It won't be just one board.  We need this so that we can replicate
> > existing (and very useful) functionality.  Today, am335x_evm_config
> > supports Beaglebone White, Beaglebone Black (could be faked enough for
> > U-Boot), AM335x GP EVM, AM335x EVM SK and if you tweak the default UART
> > AM335x IDK EVM.  Each of these is different enough that they have their
> > own DT that we will need to pass up to U-Boot, and their own config
> > file.  With Simon's series we'll be able to move am335x_evm_config up to
> > DM in SPL and possibly even remove some of the am335x_evm subconfigs we
> > have today, once those specific options also move to Kconfig.
> 
> So, this series is useful to merge some boards
> that are different enough to have their own DT,
> but that are similar enough to share one SPL binary, correct?

Yes.  It _may_ even be useful later on to support a more broad set of
boards than we do today (ie it's not impossible that one binary could
support the TI AM43xx EVMs as well, or all TI EVMs that have the EEPROM
that identifies the model, for some narrow scope of boot devices).

-- 
Tom

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 836 bytes --]

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

* [U-Boot] [PATCH 00/26] spl: Support loading a FIT image containing U-Boot
@ 2016-02-17 11:00   ` Belisko Marek
  0 siblings, 0 replies; 54+ messages in thread
From: Belisko Marek @ 2016-02-17 11:00 UTC (permalink / raw)
  To: u-boot

Hi Simon,


On Thu, Jan 28, 2016 at 5:39 PM, Simon Glass <sjg@chromium.org> wrote:
> We need a way to support more than one board per binary in U-Boot with
> device tree. Various methods have been discussed. The one that seems to make
> the most sense is to adjust SPL so that it can load a FIT which contains
> U-Boot and several device tree binaries. This is how things with with Linux:
> load a FIT and select the correct device tree to pass to Linux.
Some time ago I rise question [0] to load FIT kernel directly in SPL
using falcon mode.
I did look at your patches and I have a feeling that with small
adaptions it should be possible?
Am I right or it's impossible? (Trying to use it on am33xx boards). Many thanks.
>
> This series:
>
> - Adjusts the build system to optionally build a u-boot.img in FIT format
> that includes the U-Boot binary and >1 device tree files
> - Adjusts SPL to support loading this
> - Adds a way for SPL to determine which device tree to select (by calling a
> board-specific function)
> - Adjusts SPL to pass this selected device tree to U-Boot when it starts
>
> It would be painful to require an .its file for each board just to support
> this feature. In any case various people have commented that it would be
> nice not to have to write this file in general. Therefore, this series
> enhances mkimage to automatically generate a FIT without a .its file. So far
> it understands how to add a main image and a number of device tree files. It
> does not support hashing or verified boot as yet.
>
> One problem with the FIT format as it stands is that all the data is inline.
> This means that the entire file must be read in order to figure out what
> device-tree files are available. It is then possible to copy the images into
> place.
>
> This is not really suitable for SPL since copying can be slow, and reading
> unnecessary data would make the FIT format less efficient than the legacy
> format.
>
> Therefore this series adds a new feature to FIT which allows the images to
> be stored immediately after the FIT itself ends. This makes the FIT very
> small. It can be read quickly and in its entirety. Then the images can be
> loaded one by one as needed. This allows SPL to support FITs containing lots
> of images very efficiently.
>
> To achieve this, mkimage is enhanced to convert between the 'normal' and
> 'external' version of a FIT file. The latter is only used for the SPL loader.
> The main difference is that viewing an 'external' FIT will not show the
> contents of each image.
>
> This series also includes a few other tidy-ups, such as moving mkimage's
> tricky argument-processing code to use getopt().
>
> NOTE: There are a few problems remaining with the Kconfig conversion. I'm
> still fiddling with this but thought it best to send this series out for
> comment in the meantime.
>
> This series is available at u-boot-fdt/spl-working.
>

[0] - http://lists.denx.de/pipermail/u-boot/2015-February/203938.html
>
>
> _______________________________________________
> U-Boot mailing list
> U-Boot at lists.denx.de
> http://lists.denx.de/mailman/listinfo/u-boot


BR,

marek

-- 
as simple and primitive as possible
-------------------------------------------------
Marek Belisko - OPEN-NANDRA
Freelance Developer

Ruska Nova Ves 219 | Presov, 08005 Slovak Republic
Tel: +421 915 052 184
skype: marekwhite
twitter: #opennandra
web: http://open-nandra.com

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

* Re: [U-Boot] [PATCH 00/26] spl: Support loading a FIT image containing U-Boot
@ 2016-02-17 11:00   ` Belisko Marek
  0 siblings, 0 replies; 54+ messages in thread
From: Belisko Marek @ 2016-02-17 11:00 UTC (permalink / raw)
  To: Simon Glass
  Cc: U-Boot Mailing List, Tom Rini, Joe Hershberger, Jerry Van Baren,
	Ian Campbell, Devicetree Compiler

Hi Simon,


On Thu, Jan 28, 2016 at 5:39 PM, Simon Glass <sjg-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org> wrote:
> We need a way to support more than one board per binary in U-Boot with
> device tree. Various methods have been discussed. The one that seems to make
> the most sense is to adjust SPL so that it can load a FIT which contains
> U-Boot and several device tree binaries. This is how things with with Linux:
> load a FIT and select the correct device tree to pass to Linux.
Some time ago I rise question [0] to load FIT kernel directly in SPL
using falcon mode.
I did look at your patches and I have a feeling that with small
adaptions it should be possible?
Am I right or it's impossible? (Trying to use it on am33xx boards). Many thanks.
>
> This series:
>
> - Adjusts the build system to optionally build a u-boot.img in FIT format
> that includes the U-Boot binary and >1 device tree files
> - Adjusts SPL to support loading this
> - Adds a way for SPL to determine which device tree to select (by calling a
> board-specific function)
> - Adjusts SPL to pass this selected device tree to U-Boot when it starts
>
> It would be painful to require an .its file for each board just to support
> this feature. In any case various people have commented that it would be
> nice not to have to write this file in general. Therefore, this series
> enhances mkimage to automatically generate a FIT without a .its file. So far
> it understands how to add a main image and a number of device tree files. It
> does not support hashing or verified boot as yet.
>
> One problem with the FIT format as it stands is that all the data is inline.
> This means that the entire file must be read in order to figure out what
> device-tree files are available. It is then possible to copy the images into
> place.
>
> This is not really suitable for SPL since copying can be slow, and reading
> unnecessary data would make the FIT format less efficient than the legacy
> format.
>
> Therefore this series adds a new feature to FIT which allows the images to
> be stored immediately after the FIT itself ends. This makes the FIT very
> small. It can be read quickly and in its entirety. Then the images can be
> loaded one by one as needed. This allows SPL to support FITs containing lots
> of images very efficiently.
>
> To achieve this, mkimage is enhanced to convert between the 'normal' and
> 'external' version of a FIT file. The latter is only used for the SPL loader.
> The main difference is that viewing an 'external' FIT will not show the
> contents of each image.
>
> This series also includes a few other tidy-ups, such as moving mkimage's
> tricky argument-processing code to use getopt().
>
> NOTE: There are a few problems remaining with the Kconfig conversion. I'm
> still fiddling with this but thought it best to send this series out for
> comment in the meantime.
>
> This series is available at u-boot-fdt/spl-working.
>

[0] - http://lists.denx.de/pipermail/u-boot/2015-February/203938.html
>
>
> _______________________________________________
> U-Boot mailing list
> U-Boot-0aAXYlwwYIKGBzrmiIFOJg@public.gmane.org
> http://lists.denx.de/mailman/listinfo/u-boot


BR,

marek

-- 
as simple and primitive as possible
-------------------------------------------------
Marek Belisko - OPEN-NANDRA
Freelance Developer

Ruska Nova Ves 219 | Presov, 08005 Slovak Republic
Tel: +421 915 052 184
skype: marekwhite
twitter: #opennandra
web: http://open-nandra.com

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

* [U-Boot] [PATCH 00/26] spl: Support loading a FIT image containing U-Boot
@ 2016-02-19 20:55     ` Simon Glass
  0 siblings, 0 replies; 54+ messages in thread
From: Simon Glass @ 2016-02-19 20:55 UTC (permalink / raw)
  To: u-boot

Hi,

On 17 February 2016 at 04:00, Belisko Marek <marek.belisko@gmail.com> wrote:
> Hi Simon,
>
>
> On Thu, Jan 28, 2016 at 5:39 PM, Simon Glass <sjg@chromium.org> wrote:
>> We need a way to support more than one board per binary in U-Boot with
>> device tree. Various methods have been discussed. The one that seems to make
>> the most sense is to adjust SPL so that it can load a FIT which contains
>> U-Boot and several device tree binaries. This is how things with with Linux:
>> load a FIT and select the correct device tree to pass to Linux.
> Some time ago I rise question [0] to load FIT kernel directly in SPL
> using falcon mode.
> I did look at your patches and I have a feeling that with small
> adaptions it should be possible?
> Am I right or it's impossible? (Trying to use it on am33xx boards). Many thanks.

Yes it should be possible. You will probably need to modify the device
tree before booting Linux.

In this case however I am not really using the full existing FIT code.
It would be easier to use it and it is possible to build full FIT
support in SPL. I did it for a project a few years ago but did not
upstream it. It does add a bit to the size though.

Regards,
Simon

>>
>> This series:
>>
>> - Adjusts the build system to optionally build a u-boot.img in FIT format
>> that includes the U-Boot binary and >1 device tree files
>> - Adjusts SPL to support loading this
>> - Adds a way for SPL to determine which device tree to select (by calling a
>> board-specific function)
>> - Adjusts SPL to pass this selected device tree to U-Boot when it starts
>>
>> It would be painful to require an .its file for each board just to support
>> this feature. In any case various people have commented that it would be
>> nice not to have to write this file in general. Therefore, this series
>> enhances mkimage to automatically generate a FIT without a .its file. So far
>> it understands how to add a main image and a number of device tree files. It
>> does not support hashing or verified boot as yet.
>>
>> One problem with the FIT format as it stands is that all the data is inline.
>> This means that the entire file must be read in order to figure out what
>> device-tree files are available. It is then possible to copy the images into
>> place.
>>
>> This is not really suitable for SPL since copying can be slow, and reading
>> unnecessary data would make the FIT format less efficient than the legacy
>> format.
>>
>> Therefore this series adds a new feature to FIT which allows the images to
>> be stored immediately after the FIT itself ends. This makes the FIT very
>> small. It can be read quickly and in its entirety. Then the images can be
>> loaded one by one as needed. This allows SPL to support FITs containing lots
>> of images very efficiently.
>>
>> To achieve this, mkimage is enhanced to convert between the 'normal' and
>> 'external' version of a FIT file. The latter is only used for the SPL loader.
>> The main difference is that viewing an 'external' FIT will not show the
>> contents of each image.
>>
>> This series also includes a few other tidy-ups, such as moving mkimage's
>> tricky argument-processing code to use getopt().
>>
>> NOTE: There are a few problems remaining with the Kconfig conversion. I'm
>> still fiddling with this but thought it best to send this series out for
>> comment in the meantime.
>>
>> This series is available at u-boot-fdt/spl-working.
>>
>
> [0] - http://lists.denx.de/pipermail/u-boot/2015-February/203938.html
>>
>>
>> _______________________________________________
>> U-Boot mailing list
>> U-Boot at lists.denx.de
>> http://lists.denx.de/mailman/listinfo/u-boot
>
>
> BR,
>
> marek
>
> --
> as simple and primitive as possible
> -------------------------------------------------
> Marek Belisko - OPEN-NANDRA
> Freelance Developer
>
> Ruska Nova Ves 219 | Presov, 08005 Slovak Republic
> Tel: +421 915 052 184
> skype: marekwhite
> twitter: #opennandra
> web: http://open-nandra.com

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

* Re: [U-Boot] [PATCH 00/26] spl: Support loading a FIT image containing U-Boot
@ 2016-02-19 20:55     ` Simon Glass
  0 siblings, 0 replies; 54+ messages in thread
From: Simon Glass @ 2016-02-19 20:55 UTC (permalink / raw)
  To: Belisko Marek
  Cc: U-Boot Mailing List, Tom Rini, Joe Hershberger, Jerry Van Baren,
	Ian Campbell, Devicetree Compiler

Hi,

On 17 February 2016 at 04:00, Belisko Marek <marek.belisko-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:
> Hi Simon,
>
>
> On Thu, Jan 28, 2016 at 5:39 PM, Simon Glass <sjg-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org> wrote:
>> We need a way to support more than one board per binary in U-Boot with
>> device tree. Various methods have been discussed. The one that seems to make
>> the most sense is to adjust SPL so that it can load a FIT which contains
>> U-Boot and several device tree binaries. This is how things with with Linux:
>> load a FIT and select the correct device tree to pass to Linux.
> Some time ago I rise question [0] to load FIT kernel directly in SPL
> using falcon mode.
> I did look at your patches and I have a feeling that with small
> adaptions it should be possible?
> Am I right or it's impossible? (Trying to use it on am33xx boards). Many thanks.

Yes it should be possible. You will probably need to modify the device
tree before booting Linux.

In this case however I am not really using the full existing FIT code.
It would be easier to use it and it is possible to build full FIT
support in SPL. I did it for a project a few years ago but did not
upstream it. It does add a bit to the size though.

Regards,
Simon

>>
>> This series:
>>
>> - Adjusts the build system to optionally build a u-boot.img in FIT format
>> that includes the U-Boot binary and >1 device tree files
>> - Adjusts SPL to support loading this
>> - Adds a way for SPL to determine which device tree to select (by calling a
>> board-specific function)
>> - Adjusts SPL to pass this selected device tree to U-Boot when it starts
>>
>> It would be painful to require an .its file for each board just to support
>> this feature. In any case various people have commented that it would be
>> nice not to have to write this file in general. Therefore, this series
>> enhances mkimage to automatically generate a FIT without a .its file. So far
>> it understands how to add a main image and a number of device tree files. It
>> does not support hashing or verified boot as yet.
>>
>> One problem with the FIT format as it stands is that all the data is inline.
>> This means that the entire file must be read in order to figure out what
>> device-tree files are available. It is then possible to copy the images into
>> place.
>>
>> This is not really suitable for SPL since copying can be slow, and reading
>> unnecessary data would make the FIT format less efficient than the legacy
>> format.
>>
>> Therefore this series adds a new feature to FIT which allows the images to
>> be stored immediately after the FIT itself ends. This makes the FIT very
>> small. It can be read quickly and in its entirety. Then the images can be
>> loaded one by one as needed. This allows SPL to support FITs containing lots
>> of images very efficiently.
>>
>> To achieve this, mkimage is enhanced to convert between the 'normal' and
>> 'external' version of a FIT file. The latter is only used for the SPL loader.
>> The main difference is that viewing an 'external' FIT will not show the
>> contents of each image.
>>
>> This series also includes a few other tidy-ups, such as moving mkimage's
>> tricky argument-processing code to use getopt().
>>
>> NOTE: There are a few problems remaining with the Kconfig conversion. I'm
>> still fiddling with this but thought it best to send this series out for
>> comment in the meantime.
>>
>> This series is available at u-boot-fdt/spl-working.
>>
>
> [0] - http://lists.denx.de/pipermail/u-boot/2015-February/203938.html
>>
>>
>> _______________________________________________
>> U-Boot mailing list
>> U-Boot-0aAXYlwwYIKGBzrmiIFOJg@public.gmane.org
>> http://lists.denx.de/mailman/listinfo/u-boot
>
>
> BR,
>
> marek
>
> --
> as simple and primitive as possible
> -------------------------------------------------
> Marek Belisko - OPEN-NANDRA
> Freelance Developer
>
> Ruska Nova Ves 219 | Presov, 08005 Slovak Republic
> Tel: +421 915 052 184
> skype: marekwhite
> twitter: #opennandra
> web: http://open-nandra.com

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

* [U-Boot] [PATCH 23/26] spl: Add an option to load a FIT containing U-Boot
  2016-02-04 15:00   ` Stefano Babic
@ 2016-02-22  4:46     ` Simon Glass
  2016-02-22  6:45       ` Stefano Babic
  0 siblings, 1 reply; 54+ messages in thread
From: Simon Glass @ 2016-02-22  4:46 UTC (permalink / raw)
  To: u-boot

Hi Stefano,

On 4 February 2016 at 08:00, Stefano Babic <sbabic@denx.de> wrote:
> Hi Simon,
>
> On 28/01/2016 17:39, Simon Glass wrote:
>> This provides a way to load a FIT containing U-Boot and a selection of device
>> tree files. The board can select the correct device tree by probing the
>> hardware. Then U-Boot is started with the selected device tree.
>>
>> Signed-off-by: Simon Glass <sjg@chromium.org>
>> ---
>>
>>  Kconfig              |  11 +++
>>  common/spl/Makefile  |   1 +
>>  common/spl/spl_fit.c | 192 +++++++++++++++++++++++++++++++++++++++++++++++++++
>>  include/spl.h        |  18 +++++
>>  4 files changed, 222 insertions(+)
>>  create mode 100644 common/spl/spl_fit.c
>>
>> diff --git a/Kconfig b/Kconfig
>> index 3ce5ba1..f32c6c7 100644
>> --- a/Kconfig
>> +++ b/Kconfig
>> @@ -215,6 +215,17 @@ config SYS_TEXT_BASE
>>       help
>>         TODO: Move CONFIG_SYS_TEXT_BASE for all the architecture
>>
>> +config SPL_LOAD_FIT
>> +     bool "Enable SPL loading U-Boot as a FIT"
>> +     depends on FIT
>> +     help
>> +       Normally with the SPL framework a legacy image is generated as part
>> +       of the build. This contains U-Boot along with information as to
>> +       where it should be loaded. This option instead enables generation
>> +       of a FIT (Flat Image Tree) which provides more flexibility. In
>> +       particular it can handle selecting from multiple device tree
>> +       and passing the correct one to U-Boot.
>> +
>>  config SYS_CLK_FREQ
>>       depends on ARC || ARCH_SUNXI
>>       int "CPU clock frequency"
>> diff --git a/common/spl/Makefile b/common/spl/Makefile
>> index 10a4589..2e0f695 100644
>> --- a/common/spl/Makefile
>> +++ b/common/spl/Makefile
>> @@ -10,6 +10,7 @@
>>
>>  ifdef CONFIG_SPL_BUILD
>>  obj-$(CONFIG_SPL_FRAMEWORK) += spl.o
>> +obj-$(CONFIG_SPL_LOAD_FIT) += spl_fit.o
>>  obj-$(CONFIG_SPL_NOR_SUPPORT) += spl_nor.o
>>  obj-$(CONFIG_SPL_YMODEM_SUPPORT) += spl_ymodem.o
>>  obj-$(CONFIG_SPL_NAND_SUPPORT) += spl_nand.o
>> diff --git a/common/spl/spl_fit.c b/common/spl/spl_fit.c
>> new file mode 100644
>> index 0000000..f225f64
>> --- /dev/null
>> +++ b/common/spl/spl_fit.c
>> @@ -0,0 +1,192 @@
>> +/*
>> + * Copyright (C) 2016 Google, Inc
>> + * Written by Simon Glass <sjg@chromium.org>
>> + *
>> + * SPDX-License-Identifier:     GPL-2.0+
>> + */
>> +
>> +#include <common.h>
>> +#include <errno.h>
>> +#include <spl.h>
>> +
>
> I would like to test your patchset, I am trying with a i.MX6 (I want to
> build wandboard). It looks like that image.h is missing here.
>
> common/spl/spl_fit.c: In function 'fdt_getprop_u32':
> common/spl/spl_fit.c:20:2: warning: implicit declaration of function
> 'fdt_getprop' [-Wimplicit-function-declaration]
>
> However, in image.h it looks like that IMAGE_USE_FIT is not correctly
> set. I am looking why, I have just added these to wandboard_defconfig:
>
> +CONFIG_FIT=y
> +CONFIG_SPL_OF_LIBFDT=y
> +CONFIG_SPL_LOAD_FIT=y
> +CONFIG_OF_LIST="wandboard"

Sorry I missed this email at the time.

Did you figure it out? I don't see a build error with that board, but
I have only tested with the settings as in the tree.

I added those options but I don't see that error...

>
>
> Best regards,
> Stefano
[snip]

Regards,
Simon

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

* [U-Boot] [PATCH 23/26] spl: Add an option to load a FIT containing U-Boot
  2016-02-22  4:46     ` Simon Glass
@ 2016-02-22  6:45       ` Stefano Babic
  0 siblings, 0 replies; 54+ messages in thread
From: Stefano Babic @ 2016-02-22  6:45 UTC (permalink / raw)
  To: u-boot



On 22/02/2016 05:46, Simon Glass wrote:
> Hi Stefano,
> 
> On 4 February 2016 at 08:00, Stefano Babic <sbabic@denx.de> wrote:
>> Hi Simon,
>>
>> On 28/01/2016 17:39, Simon Glass wrote:
>>> This provides a way to load a FIT containing U-Boot and a selection of device
>>> tree files. The board can select the correct device tree by probing the
>>> hardware. Then U-Boot is started with the selected device tree.
>>>
>>> Signed-off-by: Simon Glass <sjg@chromium.org>
>>> ---
>>>
>>>  Kconfig              |  11 +++
>>>  common/spl/Makefile  |   1 +
>>>  common/spl/spl_fit.c | 192 +++++++++++++++++++++++++++++++++++++++++++++++++++
>>>  include/spl.h        |  18 +++++
>>>  4 files changed, 222 insertions(+)
>>>  create mode 100644 common/spl/spl_fit.c
>>>
>>> diff --git a/Kconfig b/Kconfig
>>> index 3ce5ba1..f32c6c7 100644
>>> --- a/Kconfig
>>> +++ b/Kconfig
>>> @@ -215,6 +215,17 @@ config SYS_TEXT_BASE
>>>       help
>>>         TODO: Move CONFIG_SYS_TEXT_BASE for all the architecture
>>>
>>> +config SPL_LOAD_FIT
>>> +     bool "Enable SPL loading U-Boot as a FIT"
>>> +     depends on FIT
>>> +     help
>>> +       Normally with the SPL framework a legacy image is generated as part
>>> +       of the build. This contains U-Boot along with information as to
>>> +       where it should be loaded. This option instead enables generation
>>> +       of a FIT (Flat Image Tree) which provides more flexibility. In
>>> +       particular it can handle selecting from multiple device tree
>>> +       and passing the correct one to U-Boot.
>>> +
>>>  config SYS_CLK_FREQ
>>>       depends on ARC || ARCH_SUNXI
>>>       int "CPU clock frequency"
>>> diff --git a/common/spl/Makefile b/common/spl/Makefile
>>> index 10a4589..2e0f695 100644
>>> --- a/common/spl/Makefile
>>> +++ b/common/spl/Makefile
>>> @@ -10,6 +10,7 @@
>>>
>>>  ifdef CONFIG_SPL_BUILD
>>>  obj-$(CONFIG_SPL_FRAMEWORK) += spl.o
>>> +obj-$(CONFIG_SPL_LOAD_FIT) += spl_fit.o
>>>  obj-$(CONFIG_SPL_NOR_SUPPORT) += spl_nor.o
>>>  obj-$(CONFIG_SPL_YMODEM_SUPPORT) += spl_ymodem.o
>>>  obj-$(CONFIG_SPL_NAND_SUPPORT) += spl_nand.o
>>> diff --git a/common/spl/spl_fit.c b/common/spl/spl_fit.c
>>> new file mode 100644
>>> index 0000000..f225f64
>>> --- /dev/null
>>> +++ b/common/spl/spl_fit.c
>>> @@ -0,0 +1,192 @@
>>> +/*
>>> + * Copyright (C) 2016 Google, Inc
>>> + * Written by Simon Glass <sjg@chromium.org>
>>> + *
>>> + * SPDX-License-Identifier:     GPL-2.0+
>>> + */
>>> +
>>> +#include <common.h>
>>> +#include <errno.h>
>>> +#include <spl.h>
>>> +
>>
>> I would like to test your patchset, I am trying with a i.MX6 (I want to
>> build wandboard). It looks like that image.h is missing here.
>>
>> common/spl/spl_fit.c: In function 'fdt_getprop_u32':
>> common/spl/spl_fit.c:20:2: warning: implicit declaration of function
>> 'fdt_getprop' [-Wimplicit-function-declaration]
>>
>> However, in image.h it looks like that IMAGE_USE_FIT is not correctly
>> set. I am looking why, I have just added these to wandboard_defconfig:
>>
>> +CONFIG_FIT=y
>> +CONFIG_SPL_OF_LIBFDT=y
>> +CONFIG_SPL_LOAD_FIT=y
>> +CONFIG_OF_LIST="wandboard"
> 
> Sorry I missed this email at the time.
> 
> Did you figure it out? I don't see a build error with that board, but
> I have only tested with the settings as in the tree.
> 
> I added those options but I don't see that error...

It was my mistake, I could build it - sorry for noise.

Regards,
Stefano

-- 
=====================================================================
DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic at denx.de
=====================================================================

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

end of thread, other threads:[~2016-02-22  6:45 UTC | newest]

Thread overview: 54+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-01-28 16:39 [U-Boot] [PATCH 00/26] spl: Support loading a FIT image containing U-Boot Simon Glass
2016-01-28 16:39 ` Simon Glass
2016-01-28 16:39 ` [U-Boot] [PATCH 01/26] mkimage: Move argument processing into its own function Simon Glass
2016-01-28 16:39 ` [U-Boot] [PATCH 02/26] mkimage: Convert to use getopt() Simon Glass
2016-01-28 16:39 ` [U-Boot] [PATCH 03/26] mkimage: Sort the option processing code by option Simon Glass
2016-01-28 16:39 ` [U-Boot] [PATCH 04/26] mkimage: Move usage() up to the top Simon Glass
2016-01-28 16:39 ` [U-Boot] [PATCH 05/26] mkimage: Show an error message when usage() is called Simon Glass
2016-01-28 16:39 ` [U-Boot] [PATCH 06/26] mkimage: Make 'params' static Simon Glass
2016-01-28 16:39 ` [U-Boot] [PATCH 07/26] libfdt: Add a function to write a property placeholder Simon Glass
2016-01-28 16:39   ` Simon Glass
2016-01-29  5:29   ` [U-Boot] " David Gibson
2016-01-29  5:29     ` David Gibson
2016-01-29 18:23     ` [U-Boot] " Simon Glass
2016-01-29 18:23       ` Simon Glass
2016-01-31  9:55       ` [U-Boot] " David Gibson
2016-01-31  9:55         ` David Gibson
2016-01-28 16:39 ` [U-Boot] [PATCH 08/26] Correct defconfig ordering Simon Glass
2016-01-28 16:39 ` [U-Boot] [PATCH 09/26] Move CONFIG_OF_LIBFDT to Kconfig Simon Glass
2016-01-28 16:39 ` [U-Boot] [PATCH 10/26] Kconfig: Move CONFIG_FIT and CONFIG_OF_*_SETUP " Simon Glass
2016-01-29  5:52   ` Heiko Schocher
2016-01-28 16:39 ` [U-Boot] [PATCH 11/26] fdt: Adjust DEFAULT_DEVICE_TREE to device on OF_CONTROL Simon Glass
2016-01-28 16:39 ` [U-Boot] [PATCH 12/26] fdt: Allow libfdt to be used in SPL Simon Glass
2016-01-28 16:39 ` [U-Boot] [PATCH 13/26] sunxi: Display the board model on start-up Simon Glass
2016-01-28 16:39 ` [U-Boot] [PATCH 14/26] tools: Include fdt_sw.o in libfdt for mkimage Simon Glass
2016-01-28 16:39 ` [U-Boot] [PATCH 15/26] mkimage: Allow a FIT to include an image of any type Simon Glass
2016-01-28 16:39 ` [U-Boot] [PATCH 16/26] tools: Add a function to obtain the size of a file Simon Glass
2016-01-28 16:39 ` [U-Boot] [PATCH 17/26] image: Add functions to obtain short names Simon Glass
2016-01-28 16:39 ` [U-Boot] [PATCH 18/26] mkimage: Support automatic creating of a FIT without a .its Simon Glass
2016-01-28 16:39 ` [U-Boot] [PATCH 19/26] mkimage: Support adding device tree files to a FIT Simon Glass
2016-02-11 16:36   ` Tom Rini
2016-02-12 15:54     ` Simon Glass
2016-02-12 16:03       ` Tom Rini
2016-01-28 16:39 ` [U-Boot] [PATCH 20/26] mkimage: Support placing data outside the FIT Simon Glass
2016-01-28 16:39 ` [U-Boot] [PATCH 21/26] mkimage: Bring data into the FIT before processing Simon Glass
2016-01-28 16:39 ` [U-Boot] [PATCH 22/26] spl: Add a way for boards to select which device tree to load Simon Glass
2016-01-28 16:39 ` [U-Boot] [PATCH 23/26] spl: Add an option to load a FIT containing U-Boot Simon Glass
2016-02-04 15:00   ` Stefano Babic
2016-02-22  4:46     ` Simon Glass
2016-02-22  6:45       ` Stefano Babic
2016-01-28 16:39 ` [U-Boot] [PATCH 24/26] spl: Add a way to specify a list of device trees to include Simon Glass
2016-01-28 16:39 ` [U-Boot] [PATCH 25/26] spl: Support loading a FIT from MMC Simon Glass
2016-01-28 16:39 ` [U-Boot] [PATCH 26/26] RFC: sunxi: Enable SPL FIT support Simon Glass
2016-02-16 11:34 ` [U-Boot] [PATCH 00/26] spl: Support loading a FIT image containing U-Boot Masahiro Yamada
2016-02-16 11:34   ` Masahiro Yamada
2016-02-16 12:17   ` [U-Boot] " Tom Rini
2016-02-16 12:17     ` Tom Rini
2016-02-16 12:30     ` Masahiro Yamada
2016-02-16 12:30       ` Masahiro Yamada
2016-02-16 13:33       ` Tom Rini
2016-02-16 13:33         ` Tom Rini
2016-02-17 11:00 ` Belisko Marek
2016-02-17 11:00   ` Belisko Marek
2016-02-19 20:55   ` Simon Glass
2016-02-19 20:55     ` Simon Glass

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