diff mbox

[U-Boot,1/2] configs: Resync with savedefconfig

Message ID 1473383945-6585-1-git-send-email-trini@konsulko.com
State Accepted
Commit aca5cd27db72aa6e664dd4b517b5ed885e711b82
Delegated to: Tom Rini
Headers show

Commit Message

Tom Rini Sept. 9, 2016, 1:19 a.m. UTC
Signed-off-by: Tom Rini <trini@konsulko.com>
---
This shows that today CONFIG_SPL_NET_VCI_STRING was not migrated.  I will
take care of this in another patch as otherwise testing that there was no
functional change in the series becomes challenging.

 configs/A20-OLinuXino_MICRO_defconfig              |  2 +-
 configs/A20-Olimex-SOM-EVB_defconfig               |  2 +-
 configs/A33-OLinuXino_defconfig                    | 32 ++++------------------
 configs/B4860QDS_SECURE_BOOT_defconfig             |  2 +-
 configs/BSC9132QDS_NAND_DDRCLK100_SECURE_defconfig |  2 +-
 configs/BSC9132QDS_NAND_DDRCLK133_SECURE_defconfig |  2 +-
 configs/BSC9132QDS_NOR_DDRCLK100_SECURE_defconfig  |  2 +-
 configs/BSC9132QDS_NOR_DDRCLK133_SECURE_defconfig  |  2 +-
 .../BSC9132QDS_SDCARD_DDRCLK100_SECURE_defconfig   |  2 +-
 .../BSC9132QDS_SDCARD_DDRCLK133_SECURE_defconfig   |  2 +-
 .../BSC9132QDS_SPIFLASH_DDRCLK100_SECURE_defconfig |  2 +-
 .../BSC9132QDS_SPIFLASH_DDRCLK133_SECURE_defconfig |  2 +-
 configs/C29XPCIE_NOR_SECBOOT_defconfig             |  2 +-
 configs/C29XPCIE_SPIFLASH_SECBOOT_defconfig        |  2 +-
 configs/CHIP_defconfig                             |  2 +-
 configs/Cubietruck_plus_defconfig                  |  1 -
 configs/Merrii_A80_Optimus_defconfig               |  1 -
 configs/P1010RDB-PA_NAND_SECBOOT_defconfig         |  2 +-
 configs/P1010RDB-PA_NOR_SECBOOT_defconfig          |  2 +-
 configs/P1010RDB-PA_SPIFLASH_SECBOOT_defconfig     |  2 +-
 configs/P1010RDB-PB_NAND_SECBOOT_defconfig         |  2 +-
 configs/P1010RDB-PB_NOR_SECBOOT_defconfig          |  2 +-
 configs/P1010RDB-PB_SPIFLASH_SECBOOT_defconfig     |  2 +-
 configs/P2041RDB_SECURE_BOOT_defconfig             |  2 +-
 configs/P3041DS_NAND_SECURE_BOOT_defconfig         |  2 +-
 configs/P3041DS_SECURE_BOOT_defconfig              |  2 +-
 configs/P4080DS_SECURE_BOOT_defconfig              |  2 +-
 configs/P5020DS_NAND_SECURE_BOOT_defconfig         |  2 +-
 configs/P5020DS_SECURE_BOOT_defconfig              |  2 +-
 configs/P5040DS_NAND_SECURE_BOOT_defconfig         |  2 +-
 configs/P5040DS_SECURE_BOOT_defconfig              |  2 +-
 configs/T1023RDB_SECURE_BOOT_defconfig             |  2 +-
 configs/T1024QDS_DDR4_SECURE_BOOT_defconfig        |  2 +-
 configs/T1024QDS_SECURE_BOOT_defconfig             |  2 +-
 configs/T1024RDB_SECURE_BOOT_defconfig             |  2 +-
 configs/T1040D4RDB_SECURE_BOOT_defconfig           |  2 +-
 configs/T1040QDS_SECURE_BOOT_defconfig             |  2 +-
 configs/T1040RDB_SECURE_BOOT_defconfig             |  2 +-
 configs/T1042D4RDB_SECURE_BOOT_defconfig           |  2 +-
 configs/T1042RDB_PI_NAND_SECURE_BOOT_defconfig     |  4 +--
 configs/T1042RDB_SECURE_BOOT_defconfig             |  2 +-
 configs/T2080QDS_SECURE_BOOT_defconfig             |  2 +-
 configs/T2080RDB_SECURE_BOOT_defconfig             |  2 +-
 configs/T4160QDS_SECURE_BOOT_defconfig             |  2 +-
 configs/T4240QDS_SECURE_BOOT_defconfig             |  2 +-
 configs/Wobo_i5_defconfig                          |  2 +-
 configs/alt_defconfig                              |  2 +-
 configs/am335x_boneblack_vboot_defconfig           |  2 +-
 configs/am335x_evm_defconfig                       | 10 +++----
 configs/am335x_evm_nor_defconfig                   |  1 -
 configs/am335x_evm_norboot_defconfig               |  3 +-
 configs/am335x_evm_usbspl_defconfig                |  1 -
 configs/am43xx_evm_defconfig                       | 10 +++----
 configs/am43xx_evm_ethboot_defconfig               |  1 -
 configs/am43xx_evm_usbhost_boot_defconfig          | 14 ++++------
 configs/am43xx_hs_evm_defconfig                    | 12 ++++----
 configs/am57xx_evm_defconfig                       | 24 ++++++++--------
 configs/am57xx_evm_nodt_defconfig                  | 10 +++----
 configs/am57xx_hs_evm_defconfig                    | 27 +++++++++---------
 configs/ap121_defconfig                            |  6 ++--
 configs/ap143_defconfig                            |  6 ++--
 configs/apalis_t30_defconfig                       |  3 +-
 configs/arndale_defconfig                          |  2 +-
 configs/axm_defconfig                              |  2 +-
 configs/axs101_defconfig                           |  2 +-
 configs/axs103_defconfig                           |  2 +-
 configs/beaver_defconfig                           |  3 +-
 configs/birdland_bav335a_defconfig                 |  1 -
 configs/birdland_bav335b_defconfig                 |  1 -
 configs/cardhu_defconfig                           |  3 +-
 configs/cei-tk1-som_defconfig                      |  3 +-
 configs/chromebook_jerry_defconfig                 |  4 +--
 configs/chromebook_link_defconfig                  |  2 +-
 configs/cm_t43_defconfig                           |  4 +--
 configs/colibri_t20_defconfig                      |  3 +-
 configs/colibri_t30_defconfig                      |  3 +-
 configs/colibri_vf_defconfig                       |  6 ++--
 ...conga-qeval20-qa3-e3845-internal-uart_defconfig |  2 +-
 configs/conga-qeval20-qa3-e3845_defconfig          |  2 +-
 configs/corvus_defconfig                           |  7 ++---
 configs/da850evm_defconfig                         |  2 +-
 configs/dalmore_defconfig                          |  3 +-
 configs/dbau1000_defconfig                         |  1 -
 configs/dbau1100_defconfig                         |  1 -
 configs/dbau1500_defconfig                         |  1 -
 configs/dbau1550_defconfig                         |  1 -
 configs/dbau1550_el_defconfig                      |  1 -
 configs/devkit3250_defconfig                       |  8 +++---
 configs/dfi-bt700-q7x-151_defconfig                |  2 +-
 configs/dra7xx_evm_defconfig                       | 28 +++++++++----------
 configs/dra7xx_hs_evm_defconfig                    | 32 +++++++++++-----------
 configs/draco_defconfig                            |  3 --
 configs/dragonboard410c_defconfig                  |  2 +-
 configs/etamin_defconfig                           |  3 --
 configs/evb-rk3036_defconfig                       |  4 +--
 configs/evb-rk3288_defconfig                       |  4 +--
 configs/evb-rk3399_defconfig                       |  9 ++----
 configs/fennec-rk3288_defconfig                    |  8 ++----
 configs/firefly-rk3288_defconfig                   |  8 ++----
 configs/gose_defconfig                             |  2 +-
 configs/gwventana_defconfig                        |  2 +-
 configs/h8_homlet_v2_defconfig                     |  1 -
 configs/harmony_defconfig                          |  3 +-
 configs/hikey_defconfig                            |  3 +-
 configs/iNet_D978_rev2_defconfig                   |  2 +-
 configs/igep0020_defconfig                         |  1 -
 configs/inet_q972_defconfig                        |  2 +-
 configs/jetson-tk1_defconfig                       |  3 +-
 configs/k2e_evm_defconfig                          |  7 ++---
 configs/k2g_evm_defconfig                          | 10 +++----
 configs/k2hk_evm_defconfig                         |  7 ++---
 configs/k2l_evm_defconfig                          |  7 ++---
 configs/koelsch_defconfig                          |  2 +-
 configs/kylin-rk3036_defconfig                     |  4 +--
 configs/lager_defconfig                            |  2 +-
 configs/ls1012afrdm_qspi_defconfig                 |  6 ++--
 configs/ls1012aqds_qspi_defconfig                  |  6 ++--
 configs/ls1012ardb_qspi_defconfig                  |  6 ++--
 configs/ls1021aqds_ddr4_nor_defconfig              |  4 +--
 configs/ls1021aqds_ddr4_nor_lpuart_defconfig       |  4 +--
 configs/ls1021aqds_nor_defconfig                   |  4 +--
 configs/ls1021aqds_nor_lpuart_defconfig            |  4 +--
 configs/ls1021aqds_qspi_defconfig                  |  2 +-
 configs/ls1021aqds_sdcard_qspi_defconfig           |  2 +-
 configs/ls1021atwr_nor_defconfig                   |  2 +-
 configs/ls1021atwr_nor_lpuart_defconfig            |  2 +-
 configs/ls1021atwr_qspi_defconfig                  |  2 +-
 .../ls1021atwr_sdcard_ifc_SECURE_BOOT_defconfig    |  8 +++---
 configs/ls1021atwr_sdcard_qspi_defconfig           |  2 +-
 configs/ls1043aqds_defconfig                       |  2 +-
 configs/ls1043aqds_lpuart_defconfig                |  4 +--
 configs/ls1043aqds_nand_defconfig                  |  2 +-
 configs/ls1043aqds_nor_ddr3_defconfig              |  2 +-
 configs/ls1043aqds_qspi_defconfig                  |  2 +-
 configs/ls1043aqds_sdcard_ifc_defconfig            |  2 +-
 configs/ls1043aqds_sdcard_qspi_defconfig           |  2 +-
 configs/ls1043ardb_SECURE_BOOT_defconfig           |  2 +-
 configs/ls1043ardb_defconfig                       |  2 +-
 configs/ls1043ardb_nand_defconfig                  |  2 +-
 configs/ls1043ardb_sdcard_defconfig                |  2 +-
 configs/ls2080aqds_SECURE_BOOT_defconfig           |  6 ++--
 configs/ls2080aqds_defconfig                       |  6 ++--
 configs/ls2080aqds_nand_defconfig                  |  4 +--
 configs/ls2080aqds_qspi_defconfig                  |  4 +--
 configs/ls2080ardb_SECURE_BOOT_defconfig           |  6 ++--
 configs/ls2080ardb_defconfig                       |  6 ++--
 configs/medcom-wide_defconfig                      |  3 +-
 configs/miniarm-rk3288_defconfig                   |  6 ++--
 configs/mx7dsabresd_secure_defconfig               |  2 +-
 configs/nsim_700_defconfig                         |  2 +-
 configs/nsim_700be_defconfig                       |  2 +-
 configs/nsim_hs38_defconfig                        |  2 +-
 configs/nsim_hs38be_defconfig                      |  2 +-
 configs/nyan-big_defconfig                         |  3 +-
 configs/odroid-xu3_defconfig                       |  3 +-
 configs/odroid_defconfig                           |  2 +-
 configs/omap3_logic_defconfig                      |  1 -
 configs/openrisc-generic_defconfig                 |  2 +-
 configs/orangepi_2_defconfig                       |  4 +--
 configs/orangepi_lite_defconfig                    |  2 --
 configs/orangepi_one_defconfig                     |  4 +--
 configs/orangepi_pc_defconfig                      |  4 +--
 configs/orangepi_pc_plus_defconfig                 |  4 +--
 configs/orangepi_plus2e_defconfig                  |  4 +--
 configs/orangepi_plus_defconfig                    |  4 +--
 configs/p2771-0000-000_defconfig                   |  9 +++---
 configs/p2771-0000-500_defconfig                   |  9 +++---
 configs/parrot_r16_defconfig                       | 30 ++++++--------------
 configs/paz00_defconfig                            |  3 +-
 configs/pb1000_defconfig                           |  1 -
 configs/pcm051_rev1_defconfig                      |  1 -
 configs/pcm051_rev3_defconfig                      |  1 -
 configs/pcm052_defconfig                           |  4 +--
 configs/pcm058_defconfig                           | 12 +++-----
 configs/peach-pi_defconfig                         |  2 +-
 configs/peach-pit_defconfig                        |  2 +-
 configs/pic32mzdask_defconfig                      |  4 +--
 configs/pine64_plus_defconfig                      |  3 +-
 configs/plutux_defconfig                           |  3 +-
 configs/popmetal-rk3288_defconfig                  |  6 ++--
 configs/porter_defconfig                           |  3 +-
 configs/pxm2_defconfig                             |  3 --
 configs/rastaban_defconfig                         |  3 --
 configs/rock2_defconfig                            |  4 +--
 configs/rpi_3_32b_defconfig                        |  4 +--
 configs/rpi_3_defconfig                            |  4 +--
 configs/rut_defconfig                              |  3 --
 configs/sandbox_defconfig                          |  8 +++---
 configs/sandbox_noblk_defconfig                    |  5 ++--
 configs/sandbox_spl_defconfig                      |  4 +--
 configs/seaboard_defconfig                         |  3 +-
 configs/silk_defconfig                             |  2 +-
 configs/smdk5250_defconfig                         |  2 +-
 configs/smdk5420_defconfig                         |  2 +-
 configs/smdkv310_defconfig                         |  1 -
 configs/snow_defconfig                             |  2 +-
 configs/socfpga_arria5_defconfig                   |  6 ++--
 configs/socfpga_cyclone5_defconfig                 |  6 ++--
 configs/socfpga_de0_nano_soc_defconfig             |  6 ++--
 configs/socfpga_is1_defconfig                      |  4 +--
 configs/socfpga_mcvevk_defconfig                   |  6 ++--
 configs/socfpga_sockit_defconfig                   |  6 ++--
 configs/socfpga_socrates_defconfig                 |  6 ++--
 configs/socfpga_sr1500_defconfig                   |  6 ++--
 configs/socfpga_vining_fpga_defconfig              |  6 ++--
 configs/som-db5800-som-6867_defconfig              |  3 +-
 configs/spring_defconfig                           |  2 +-
 configs/stout_defconfig                            |  2 +-
 configs/taurus_defconfig                           |  2 +-
 configs/tb100_defconfig                            |  2 +-
 configs/tec-ng_defconfig                           |  3 +-
 configs/tec_defconfig                              |  3 +-
 configs/theadorable-x86-dfi-bt700_defconfig        |  2 +-
 configs/theadorable_debug_defconfig                |  2 +-
 configs/theadorable_defconfig                      |  2 +-
 configs/thuban_defconfig                           |  3 --
 configs/thunderx_88xx_defconfig                    |  2 +-
 configs/tplink_wdr4300_defconfig                   |  6 ++--
 configs/trimslice_defconfig                        |  3 +-
 configs/venice2_defconfig                          |  3 +-
 configs/ventana_defconfig                          |  3 +-
 configs/vexpress_aemv8a_dram_defconfig             |  2 +-
 configs/vexpress_aemv8a_juno_defconfig             |  2 +-
 configs/vexpress_aemv8a_semi_defconfig             |  2 +-
 configs/vexpress_ca15_tc2_defconfig                |  1 -
 configs/vexpress_ca5x2_defconfig                   |  1 -
 configs/vexpress_ca9x4_defconfig                   |  1 -
 configs/vf610twr_defconfig                         |  4 +--
 configs/vf610twr_nand_defconfig                    |  4 +--
 configs/warp7_defconfig                            |  4 +--
 configs/whistler_defconfig                         |  3 +-
 configs/work_92105_defconfig                       |  8 +++---
 configs/xilinx_zynqmp_ep_defconfig                 |  2 +-
 configs/xilinx_zynqmp_zc1751_xm015_dc1_defconfig   |  2 +-
 configs/xilinx_zynqmp_zc1751_xm016_dc2_defconfig   |  2 +-
 configs/xilinx_zynqmp_zc1751_xm018_dc4_defconfig   |  2 +-
 configs/xilinx_zynqmp_zc1751_xm019_dc5_defconfig   |  2 +-
 configs/xilinx_zynqmp_zcu102_defconfig             |  2 +-
 configs/xilinx_zynqmp_zcu102_revB_defconfig        |  2 +-
 configs/xtfpga_defconfig                           |  2 +-
 configs/zc5202_defconfig                           |  2 +-
 configs/zc5601_defconfig                           |  2 +-
 242 files changed, 392 insertions(+), 549 deletions(-)

Comments

Stephen Warren Sept. 9, 2016, 4:21 p.m. UTC | #1
On 09/08/2016 07:19 PM, Tom Rini wrote:
> Signed-off-by: Tom Rini <trini@konsulko.com>

> diff --git a/configs/harmony_defconfig b/configs/harmony_defconfig

> -CONFIG_USE_PRIVATE_LIBGCC=y

I assume that's because =y is the default for that now?

> diff --git a/configs/p2771-0000-000_defconfig b/configs/p2771-0000-000_defconfig

> -CONFIG_TARGET_P2771_0000=y

> diff --git a/configs/p2771-0000-500_defconfig b/configs/p2771-0000-500_defconfig

> -CONFIG_TARGET_P2771_0000=y

I think we need to keep those two. Those two defconfigs are slightly 
different configurations of U-Boot's p2771-0000 board/target.
Tom Rini Sept. 9, 2016, 7:02 p.m. UTC | #2
On Fri, Sep 09, 2016 at 10:21:45AM -0600, Stephen Warren wrote:
> On 09/08/2016 07:19 PM, Tom Rini wrote:
> >Signed-off-by: Tom Rini <trini@konsulko.com>
/bin/bash: ess: command not found
> >diff --git a/configs/harmony_defconfig b/configs/harmony_defconfig
> 
> >-CONFIG_USE_PRIVATE_LIBGCC=y
> 
> I assume that's because =y is the default for that now?

Yes.

> >diff --git a/configs/p2771-0000-000_defconfig b/configs/p2771-0000-000_defconfig
> 
> >-CONFIG_TARGET_P2771_0000=y
> 
> >diff --git a/configs/p2771-0000-500_defconfig b/configs/p2771-0000-500_defconfig
> 
> >-CONFIG_TARGET_P2771_0000=y
> 
> I think we need to keep those two. Those two defconfigs are slightly
> different configurations of U-Boot's p2771-0000 board/target.

OK, then you need to submit a patch to fix the underlying problem, if
there is one, really.  Keep in mind that what this is, is re-running
savedefconfig for each target.  So if something odd drops out that means
that it wasn't having any effect before.
Stephen Warren Sept. 9, 2016, 7:09 p.m. UTC | #3
On 09/09/2016 01:02 PM, Tom Rini wrote:
> On Fri, Sep 09, 2016 at 10:21:45AM -0600, Stephen Warren wrote:
>> On 09/08/2016 07:19 PM, Tom Rini wrote:
>>> Signed-off-by: Tom Rini <trini@konsulko.com>
> /bin/bash: ess: command not found
>>> diff --git a/configs/harmony_defconfig b/configs/harmony_defconfig
>>
>>> -CONFIG_USE_PRIVATE_LIBGCC=y
>>
>> I assume that's because =y is the default for that now?
>
> Yes.

>>> diff --git a/configs/p2771-0000-500_defconfig b/configs/p2771-0000-500_defconfig
>>
>>> -CONFIG_TARGET_P2771_0000=y
>>
>> I think we need to keep those two. Those two defconfigs are slightly
>> different configurations of U-Boot's p2771-0000 board/target.
>
> OK, then you need to submit a patch to fix the underlying problem, if
> there is one, really.  Keep in mind that what this is, is re-running
> savedefconfig for each target.  So if something odd drops out that means
> that it wasn't having any effect before.

I don't believe there is any underlying problem. The Kconfig option in 
question is defined in arch/arm/mach-tegra/tegra186/Kconfig, when 
building for p2771-0000-000 the option makes it into .config just fine, 
and the value is used by board/nvidia/p2771-0000/Kconfig. Isn't this a 
bug in savedefconfig? I'm CC'ing Masahiro to get some insight.
Tom Rini Sept. 9, 2016, 7:11 p.m. UTC | #4
On Fri, Sep 09, 2016 at 01:09:43PM -0600, Stephen Warren wrote:
> On 09/09/2016 01:02 PM, Tom Rini wrote:
> >On Fri, Sep 09, 2016 at 10:21:45AM -0600, Stephen Warren wrote:
> >>On 09/08/2016 07:19 PM, Tom Rini wrote:
> >>>Signed-off-by: Tom Rini <trini@konsulko.com>
> >/bin/bash: ess: command not found
> >>>diff --git a/configs/harmony_defconfig b/configs/harmony_defconfig
> >>
> >>>-CONFIG_USE_PRIVATE_LIBGCC=y
> >>
> >>I assume that's because =y is the default for that now?
> >
> >Yes.
> 
> >>>diff --git a/configs/p2771-0000-500_defconfig b/configs/p2771-0000-500_defconfig
> >>
> >>>-CONFIG_TARGET_P2771_0000=y
> >>
> >>I think we need to keep those two. Those two defconfigs are slightly
> >>different configurations of U-Boot's p2771-0000 board/target.
> >
> >OK, then you need to submit a patch to fix the underlying problem, if
> >there is one, really.  Keep in mind that what this is, is re-running
> >savedefconfig for each target.  So if something odd drops out that means
> >that it wasn't having any effect before.
> 
> I don't believe there is any underlying problem. The Kconfig option
> in question is defined in arch/arm/mach-tegra/tegra186/Kconfig, when
> building for p2771-0000-000 the option makes it into .config just
> fine, and the value is used by board/nvidia/p2771-0000/Kconfig.
> Isn't this a bug in savedefconfig? I'm CC'ing Masahiro to get some
> insight.

It is the default value then and isn't saved is I believe the answer.
Tom Rini Sept. 9, 2016, 7:53 p.m. UTC | #5
On Thu, Sep 08, 2016 at 09:19:04PM -0400, Tom Rini wrote:

> Signed-off-by: Tom Rini <trini@konsulko.com>

Applied to u-boot/master, thanks!
Stephen Warren Sept. 9, 2016, 9:06 p.m. UTC | #6
On 09/09/2016 01:11 PM, Tom Rini wrote:
> On Fri, Sep 09, 2016 at 01:09:43PM -0600, Stephen Warren wrote:
>> On 09/09/2016 01:02 PM, Tom Rini wrote:
>>> On Fri, Sep 09, 2016 at 10:21:45AM -0600, Stephen Warren wrote:
>>>> On 09/08/2016 07:19 PM, Tom Rini wrote:
>>>>> Signed-off-by: Tom Rini <trini@konsulko.com>
>>> /bin/bash: ess: command not found
>>>>> diff --git a/configs/harmony_defconfig b/configs/harmony_defconfig
>>>>
>>>>> -CONFIG_USE_PRIVATE_LIBGCC=y
>>>>
>>>> I assume that's because =y is the default for that now?
>>>
>>> Yes.
>>
>>>>> diff --git a/configs/p2771-0000-500_defconfig b/configs/p2771-0000-500_defconfig
>>>>
>>>>> -CONFIG_TARGET_P2771_0000=y
>>>>
>>>> I think we need to keep those two. Those two defconfigs are slightly
>>>> different configurations of U-Boot's p2771-0000 board/target.
>>>
>>> OK, then you need to submit a patch to fix the underlying problem, if
>>> there is one, really.  Keep in mind that what this is, is re-running
>>> savedefconfig for each target.  So if something odd drops out that means
>>> that it wasn't having any effect before.
>>
>> I don't believe there is any underlying problem. The Kconfig option
>> in question is defined in arch/arm/mach-tegra/tegra186/Kconfig, when
>> building for p2771-0000-000 the option makes it into .config just
>> fine, and the value is used by board/nvidia/p2771-0000/Kconfig.
>> Isn't this a bug in savedefconfig? I'm CC'ing Masahiro to get some
>> insight.
>
> It is the default value then and isn't saved is I believe the answer.

I don't think it's the default; nothing selects that option and it has 
no "default y".

Or maybe since the value is inside a choice, and is the only entry 
that's there, that does make it the default? If so, that seems a little 
fragile; what if someone comes along and adds a new board into the list, 
and puts it before the existing entry (e.g. to maintain alphabetical 
sorting). That would changing the meaning of the current defconfig file 
if the first entry is picked as default. If so, I'm surprised if nobody 
has had that issue yet.
Tom Rini Sept. 9, 2016, 9:14 p.m. UTC | #7
On Fri, Sep 09, 2016 at 03:06:01PM -0600, Stephen Warren wrote:
> On 09/09/2016 01:11 PM, Tom Rini wrote:
> >On Fri, Sep 09, 2016 at 01:09:43PM -0600, Stephen Warren wrote:
> >>On 09/09/2016 01:02 PM, Tom Rini wrote:
> >>>On Fri, Sep 09, 2016 at 10:21:45AM -0600, Stephen Warren wrote:
> >>>>On 09/08/2016 07:19 PM, Tom Rini wrote:
> >>>>>Signed-off-by: Tom Rini <trini@konsulko.com>
> >>>/bin/bash: ess: command not found
> >>>>>diff --git a/configs/harmony_defconfig b/configs/harmony_defconfig
> >>>>
> >>>>>-CONFIG_USE_PRIVATE_LIBGCC=y
> >>>>
> >>>>I assume that's because =y is the default for that now?
> >>>
> >>>Yes.
> >>
> >>>>>diff --git a/configs/p2771-0000-500_defconfig b/configs/p2771-0000-500_defconfig
> >>>>
> >>>>>-CONFIG_TARGET_P2771_0000=y
> >>>>
> >>>>I think we need to keep those two. Those two defconfigs are slightly
> >>>>different configurations of U-Boot's p2771-0000 board/target.
> >>>
> >>>OK, then you need to submit a patch to fix the underlying problem, if
> >>>there is one, really.  Keep in mind that what this is, is re-running
> >>>savedefconfig for each target.  So if something odd drops out that means
> >>>that it wasn't having any effect before.
> >>
> >>I don't believe there is any underlying problem. The Kconfig option
> >>in question is defined in arch/arm/mach-tegra/tegra186/Kconfig, when
> >>building for p2771-0000-000 the option makes it into .config just
> >>fine, and the value is used by board/nvidia/p2771-0000/Kconfig.
> >>Isn't this a bug in savedefconfig? I'm CC'ing Masahiro to get some
> >>insight.
> >
> >It is the default value then and isn't saved is I believe the answer.
> 
> I don't think it's the default; nothing selects that option and it
> has no "default y".
> 
> Or maybe since the value is inside a choice, and is the only entry
> that's there, that does make it the default? If so, that seems a
> little fragile; what if someone comes along and adds a new board
> into the list, and puts it before the existing entry (e.g. to
> maintain alphabetical sorting). That would changing the meaning of
> the current defconfig file if the first entry is picked as default.
> If so, I'm surprised if nobody has had that issue yet.

It's all correct and I think we have had this hit once or twice when
adding or changing the order.  It is a side effect of how Kconfig just
works.
Stephen Warren Sept. 9, 2016, 10:25 p.m. UTC | #8
On 09/09/2016 03:14 PM, Tom Rini wrote:
> On Fri, Sep 09, 2016 at 03:06:01PM -0600, Stephen Warren wrote:
>> On 09/09/2016 01:11 PM, Tom Rini wrote:
>>> On Fri, Sep 09, 2016 at 01:09:43PM -0600, Stephen Warren wrote:
>>>> On 09/09/2016 01:02 PM, Tom Rini wrote:
>>>>> On Fri, Sep 09, 2016 at 10:21:45AM -0600, Stephen Warren wrote:
>>>>>> On 09/08/2016 07:19 PM, Tom Rini wrote:
>>>>>>> Signed-off-by: Tom Rini <trini@konsulko.com>
>>>>> /bin/bash: ess: command not found
>>>>>>> diff --git a/configs/harmony_defconfig b/configs/harmony_defconfig
>>>>>>
>>>>>>> -CONFIG_USE_PRIVATE_LIBGCC=y
>>>>>>
>>>>>> I assume that's because =y is the default for that now?
>>>>>
>>>>> Yes.
>>>>
>>>>>>> diff --git a/configs/p2771-0000-500_defconfig b/configs/p2771-0000-500_defconfig
>>>>>>
>>>>>>> -CONFIG_TARGET_P2771_0000=y
>>>>>>
>>>>>> I think we need to keep those two. Those two defconfigs are slightly
>>>>>> different configurations of U-Boot's p2771-0000 board/target.
>>>>>
>>>>> OK, then you need to submit a patch to fix the underlying problem, if
>>>>> there is one, really.  Keep in mind that what this is, is re-running
>>>>> savedefconfig for each target.  So if something odd drops out that means
>>>>> that it wasn't having any effect before.
>>>>
>>>> I don't believe there is any underlying problem. The Kconfig option
>>>> in question is defined in arch/arm/mach-tegra/tegra186/Kconfig, when
>>>> building for p2771-0000-000 the option makes it into .config just
>>>> fine, and the value is used by board/nvidia/p2771-0000/Kconfig.
>>>> Isn't this a bug in savedefconfig? I'm CC'ing Masahiro to get some
>>>> insight.
>>>
>>> It is the default value then and isn't saved is I believe the answer.
>>
>> I don't think it's the default; nothing selects that option and it
>> has no "default y".
>>
>> Or maybe since the value is inside a choice, and is the only entry
>> that's there, that does make it the default? If so, that seems a
>> little fragile; what if someone comes along and adds a new board
>> into the list, and puts it before the existing entry (e.g. to
>> maintain alphabetical sorting). That would changing the meaning of
>> the current defconfig file if the first entry is picked as default.
>> If so, I'm surprised if nobody has had that issue yet.
>
> It's all correct and I think we have had this hit once or twice when
> adding or changing the order.  It is a side effect of how Kconfig just
> works.

I'm not convinced. If I apply your patch, and also the following:

> diff --git a/arch/arm/mach-tegra/tegra186/Kconfig b/arch/arm/mach-tegra/tegra186/Kconfig
> index 97cf23f31f80..05f691ed3ede 100644
> --- a/arch/arm/mach-tegra/tegra186/Kconfig
> +++ b/arch/arm/mach-tegra/tegra186/Kconfig
> @@ -7,6 +7,14 @@ if TEGRA186
>  choice
>  	prompt "Tegra186 board select"
>
> +config TARGET_E9999_1234
> +	bool "NVIDIA Tegra186 E9999-1234 board"
> +	help
> +	  P2771-0000 is a P3310 CPU board married to a P2597 I/O board. The
> +	  combination contains SoC, DRAM, eMMC, SD card slot, HDMI, USB
> +	  micro-B port, Ethernet, USB3 host port, SATA, PCIe, and two GPIO
> +	  expansion headers.
> +
>  config TARGET_P2771_0000
>  	bool "NVIDIA Tegra186 P2771-0000 board"
>  	help

... then I get a build failure for p2771-0000-000_defconfig since 
.config ends up containing CONFIG_TARGET_E9999_1234 rather than 
CONFIG_TARGET_P2771_0000. I think we want to avoid that don't we? If we 
don't, savedefconfig in the face of choice options seems rather too 
fragile, or we need to force people to update *_defconfig any time any 
Kconfig choice is edited.
Masahiro Yamada Sept. 12, 2016, 2:24 a.m. UTC | #9
2016-09-10 7:25 GMT+09:00 Stephen Warren <swarren@wwwdotorg.org>:
> On 09/09/2016 03:14 PM, Tom Rini wrote:
>>
>> On Fri, Sep 09, 2016 at 03:06:01PM -0600, Stephen Warren wrote:
>>>
>>> On 09/09/2016 01:11 PM, Tom Rini wrote:
>>>>
>>>> On Fri, Sep 09, 2016 at 01:09:43PM -0600, Stephen Warren wrote:
>>>>>
>>>>> On 09/09/2016 01:02 PM, Tom Rini wrote:
>>>>>>
>>>>>> On Fri, Sep 09, 2016 at 10:21:45AM -0600, Stephen Warren wrote:
>>>>>>>
>>>>>>> On 09/08/2016 07:19 PM, Tom Rini wrote:
>>>>>>>>
>>>>>>>> Signed-off-by: Tom Rini <trini@konsulko.com>
>>>>>>
>>>>>> /bin/bash: ess: command not found
>>>>>>>>
>>>>>>>> diff --git a/configs/harmony_defconfig b/configs/harmony_defconfig
>>>>>>>
>>>>>>>
>>>>>>>> -CONFIG_USE_PRIVATE_LIBGCC=y
>>>>>>>
>>>>>>>
>>>>>>> I assume that's because =y is the default for that now?
>>>>>>
>>>>>>
>>>>>> Yes.
>>>>>
>>>>>
>>>>>>>> diff --git a/configs/p2771-0000-500_defconfig
>>>>>>>> b/configs/p2771-0000-500_defconfig
>>>>>>>
>>>>>>>
>>>>>>>> -CONFIG_TARGET_P2771_0000=y
>>>>>>>
>>>>>>>
>>>>>>> I think we need to keep those two. Those two defconfigs are slightly
>>>>>>> different configurations of U-Boot's p2771-0000 board/target.
>>>>>>
>>>>>>
>>>>>> OK, then you need to submit a patch to fix the underlying problem, if
>>>>>> there is one, really.  Keep in mind that what this is, is re-running
>>>>>> savedefconfig for each target.  So if something odd drops out that
>>>>>> means
>>>>>> that it wasn't having any effect before.
>>>>>
>>>>>
>>>>> I don't believe there is any underlying problem. The Kconfig option
>>>>> in question is defined in arch/arm/mach-tegra/tegra186/Kconfig, when
>>>>> building for p2771-0000-000 the option makes it into .config just
>>>>> fine, and the value is used by board/nvidia/p2771-0000/Kconfig.
>>>>> Isn't this a bug in savedefconfig? I'm CC'ing Masahiro to get some
>>>>> insight.
>>>>
>>>>
>>>> It is the default value then and isn't saved is I believe the answer.
>>>
>>>
>>> I don't think it's the default; nothing selects that option and it
>>> has no "default y".
>>>
>>> Or maybe since the value is inside a choice, and is the only entry
>>> that's there, that does make it the default? If so, that seems a
>>> little fragile; what if someone comes along and adds a new board
>>> into the list, and puts it before the existing entry (e.g. to
>>> maintain alphabetical sorting). That would changing the meaning of
>>> the current defconfig file if the first entry is picked as default.
>>> If so, I'm surprised if nobody has had that issue yet.
>>
>>
>> It's all correct and I think we have had this hit once or twice when
>> adding or changing the order.  It is a side effect of how Kconfig just
>> works.
>
>
> I'm not convinced. If I apply your patch, and also the following:
>
>> diff --git a/arch/arm/mach-tegra/tegra186/Kconfig
>> b/arch/arm/mach-tegra/tegra186/Kconfig
>> index 97cf23f31f80..05f691ed3ede 100644
>> --- a/arch/arm/mach-tegra/tegra186/Kconfig
>> +++ b/arch/arm/mach-tegra/tegra186/Kconfig
>> @@ -7,6 +7,14 @@ if TEGRA186
>>  choice
>>         prompt "Tegra186 board select"
>>
>> +config TARGET_E9999_1234
>> +       bool "NVIDIA Tegra186 E9999-1234 board"
>> +       help
>> +         P2771-0000 is a P3310 CPU board married to a P2597 I/O board.
>> The
>> +         combination contains SoC, DRAM, eMMC, SD card slot, HDMI, USB
>> +         micro-B port, Ethernet, USB3 host port, SATA, PCIe, and two GPIO
>> +         expansion headers.
>> +
>>  config TARGET_P2771_0000
>>         bool "NVIDIA Tegra186 P2771-0000 board"
>>         help
>
>
> ... then I get a build failure for p2771-0000-000_defconfig since .config
> ends up containing CONFIG_TARGET_E9999_1234 rather than
> CONFIG_TARGET_P2771_0000. I think we want to avoid that don't we? If we
> don't, savedefconfig in the face of choice options seems rather too fragile,
> or we need to force people to update *_defconfig any time any Kconfig choice
> is edited.


We have discussed this problem several times before.

  - The first entry in a "choice" is the default, unless otherwise specified.
  - "make savedefconfig" drops all the defaults to create a minimum
set of configs.

So, we need to be careful when we insert a new entry at the first
or delete the first entry in a "choice".

We are supposed to not re-sync defconfigs in Linux Kernel, so we are not hit
by this issue much there, but we still be careful when we edit the
first entry of a choice.
This potential fragileness exists in any projects that use Kconfig.


In U-Boot, unfortunately, we need defconfig resync periodically.

As you noticed, "update *_defconfig any time any Kconfig choice is edited."
is one solution.


Or, you can specify a default explicitly, like I do in
arch/arm/mach-uniphier/Kconfig:


choice
        prompt "UniPhier SoC select"
        default ARCH_UNIPHIER_PRO4
Tom Rini Sept. 12, 2016, 2:23 p.m. UTC | #10
On Mon, Sep 12, 2016 at 11:24:35AM +0900, Masahiro Yamada wrote:
> 2016-09-10 7:25 GMT+09:00 Stephen Warren <swarren@wwwdotorg.org>:
> > On 09/09/2016 03:14 PM, Tom Rini wrote:
> >>
> >> On Fri, Sep 09, 2016 at 03:06:01PM -0600, Stephen Warren wrote:
> >>>
> >>> On 09/09/2016 01:11 PM, Tom Rini wrote:
> >>>>
> >>>> On Fri, Sep 09, 2016 at 01:09:43PM -0600, Stephen Warren wrote:
> >>>>>
> >>>>> On 09/09/2016 01:02 PM, Tom Rini wrote:
> >>>>>>
> >>>>>> On Fri, Sep 09, 2016 at 10:21:45AM -0600, Stephen Warren wrote:
> >>>>>>>
> >>>>>>> On 09/08/2016 07:19 PM, Tom Rini wrote:
> >>>>>>>>
> >>>>>>>> Signed-off-by: Tom Rini <trini@konsulko.com>
> >>>>>>
> >>>>>> /bin/bash: ess: command not found
> >>>>>>>>
> >>>>>>>> diff --git a/configs/harmony_defconfig b/configs/harmony_defconfig
> >>>>>>>
> >>>>>>>
> >>>>>>>> -CONFIG_USE_PRIVATE_LIBGCC=y
> >>>>>>>
> >>>>>>>
> >>>>>>> I assume that's because =y is the default for that now?
> >>>>>>
> >>>>>>
> >>>>>> Yes.
> >>>>>
> >>>>>
> >>>>>>>> diff --git a/configs/p2771-0000-500_defconfig
> >>>>>>>> b/configs/p2771-0000-500_defconfig
> >>>>>>>
> >>>>>>>
> >>>>>>>> -CONFIG_TARGET_P2771_0000=y
> >>>>>>>
> >>>>>>>
> >>>>>>> I think we need to keep those two. Those two defconfigs are slightly
> >>>>>>> different configurations of U-Boot's p2771-0000 board/target.
> >>>>>>
> >>>>>>
> >>>>>> OK, then you need to submit a patch to fix the underlying problem, if
> >>>>>> there is one, really.  Keep in mind that what this is, is re-running
> >>>>>> savedefconfig for each target.  So if something odd drops out that
> >>>>>> means
> >>>>>> that it wasn't having any effect before.
> >>>>>
> >>>>>
> >>>>> I don't believe there is any underlying problem. The Kconfig option
> >>>>> in question is defined in arch/arm/mach-tegra/tegra186/Kconfig, when
> >>>>> building for p2771-0000-000 the option makes it into .config just
> >>>>> fine, and the value is used by board/nvidia/p2771-0000/Kconfig.
> >>>>> Isn't this a bug in savedefconfig? I'm CC'ing Masahiro to get some
> >>>>> insight.
> >>>>
> >>>>
> >>>> It is the default value then and isn't saved is I believe the answer.
> >>>
> >>>
> >>> I don't think it's the default; nothing selects that option and it
> >>> has no "default y".
> >>>
> >>> Or maybe since the value is inside a choice, and is the only entry
> >>> that's there, that does make it the default? If so, that seems a
> >>> little fragile; what if someone comes along and adds a new board
> >>> into the list, and puts it before the existing entry (e.g. to
> >>> maintain alphabetical sorting). That would changing the meaning of
> >>> the current defconfig file if the first entry is picked as default.
> >>> If so, I'm surprised if nobody has had that issue yet.
> >>
> >>
> >> It's all correct and I think we have had this hit once or twice when
> >> adding or changing the order.  It is a side effect of how Kconfig just
> >> works.
> >
> >
> > I'm not convinced. If I apply your patch, and also the following:
> >
> >> diff --git a/arch/arm/mach-tegra/tegra186/Kconfig
> >> b/arch/arm/mach-tegra/tegra186/Kconfig
> >> index 97cf23f31f80..05f691ed3ede 100644
> >> --- a/arch/arm/mach-tegra/tegra186/Kconfig
> >> +++ b/arch/arm/mach-tegra/tegra186/Kconfig
> >> @@ -7,6 +7,14 @@ if TEGRA186
> >>  choice
> >>         prompt "Tegra186 board select"
> >>
> >> +config TARGET_E9999_1234
> >> +       bool "NVIDIA Tegra186 E9999-1234 board"
> >> +       help
> >> +         P2771-0000 is a P3310 CPU board married to a P2597 I/O board.
> >> The
> >> +         combination contains SoC, DRAM, eMMC, SD card slot, HDMI, USB
> >> +         micro-B port, Ethernet, USB3 host port, SATA, PCIe, and two GPIO
> >> +         expansion headers.
> >> +
> >>  config TARGET_P2771_0000
> >>         bool "NVIDIA Tegra186 P2771-0000 board"
> >>         help
> >
> >
> > ... then I get a build failure for p2771-0000-000_defconfig since .config
> > ends up containing CONFIG_TARGET_E9999_1234 rather than
> > CONFIG_TARGET_P2771_0000. I think we want to avoid that don't we? If we
> > don't, savedefconfig in the face of choice options seems rather too fragile,
> > or we need to force people to update *_defconfig any time any Kconfig choice
> > is edited.
> 
> 
> We have discussed this problem several times before.
> 
>   - The first entry in a "choice" is the default, unless otherwise specified.
>   - "make savedefconfig" drops all the defaults to create a minimum
> set of configs.
> 
> So, we need to be careful when we insert a new entry at the first
> or delete the first entry in a "choice".
> 
> We are supposed to not re-sync defconfigs in Linux Kernel, so we are not hit
> by this issue much there, but we still be careful when we edit the
> first entry of a choice.
> This potential fragileness exists in any projects that use Kconfig.
> 
> 
> In U-Boot, unfortunately, we need defconfig resync periodically.
> 
> As you noticed, "update *_defconfig any time any Kconfig choice is edited."
> is one solution.
> 
> 
> Or, you can specify a default explicitly, like I do in
> arch/arm/mach-uniphier/Kconfig:
> 
> 
> choice
>         prompt "UniPhier SoC select"
>         default ARCH_UNIPHIER_PRO4

I am of the opinion, at least currently, that we need to make wider use
of "default X" in choice statements and that configs/ should be treated
as generated files.  I am frankly surprised that the Kernel stopped
doing this because I would have sworn that wasn't true in the past (one
shouldn't push unrelated "cleanups" to defconfig files but you also
better put stuff where savedefconfig puts things as otherwise it would
be the old time conflict hell madness of pre-Kconfig days).
Stephen Warren Sept. 12, 2016, 6:27 p.m. UTC | #11
On 09/11/2016 08:24 PM, Masahiro Yamada wrote:
> 2016-09-10 7:25 GMT+09:00 Stephen Warren <swarren@wwwdotorg.org>:
>> On 09/09/2016 03:14 PM, Tom Rini wrote:
>>>
>>> On Fri, Sep 09, 2016 at 03:06:01PM -0600, Stephen Warren wrote:
>>>>
>>>> On 09/09/2016 01:11 PM, Tom Rini wrote:
>>>>>
>>>>> On Fri, Sep 09, 2016 at 01:09:43PM -0600, Stephen Warren wrote:
>>>>>>
>>>>>> On 09/09/2016 01:02 PM, Tom Rini wrote:
>>>>>>>
>>>>>>> On Fri, Sep 09, 2016 at 10:21:45AM -0600, Stephen Warren wrote:
>>>>>>>>
>>>>>>>> On 09/08/2016 07:19 PM, Tom Rini wrote:
>>>>>>>>>
>>>>>>>>> Signed-off-by: Tom Rini <trini@konsulko.com>
>>>>>>>
>>>>>>> /bin/bash: ess: command not found
>>>>>>>>>
>>>>>>>>> diff --git a/configs/harmony_defconfig b/configs/harmony_defconfig
>>>>>>>>
>>>>>>>>
>>>>>>>>> -CONFIG_USE_PRIVATE_LIBGCC=y
>>>>>>>>
>>>>>>>>
>>>>>>>> I assume that's because =y is the default for that now?
>>>>>>>
>>>>>>>
>>>>>>> Yes.
>>>>>>
>>>>>>
>>>>>>>>> diff --git a/configs/p2771-0000-500_defconfig
>>>>>>>>> b/configs/p2771-0000-500_defconfig
>>>>>>>>
>>>>>>>>
>>>>>>>>> -CONFIG_TARGET_P2771_0000=y
>>>>>>>>
>>>>>>>>
>>>>>>>> I think we need to keep those two. Those two defconfigs are slightly
>>>>>>>> different configurations of U-Boot's p2771-0000 board/target.
>>>>>>>
>>>>>>>
>>>>>>> OK, then you need to submit a patch to fix the underlying problem, if
>>>>>>> there is one, really.  Keep in mind that what this is, is re-running
>>>>>>> savedefconfig for each target.  So if something odd drops out that
>>>>>>> means
>>>>>>> that it wasn't having any effect before.
>>>>>>
>>>>>>
>>>>>> I don't believe there is any underlying problem. The Kconfig option
>>>>>> in question is defined in arch/arm/mach-tegra/tegra186/Kconfig, when
>>>>>> building for p2771-0000-000 the option makes it into .config just
>>>>>> fine, and the value is used by board/nvidia/p2771-0000/Kconfig.
>>>>>> Isn't this a bug in savedefconfig? I'm CC'ing Masahiro to get some
>>>>>> insight.
>>>>>
>>>>>
>>>>> It is the default value then and isn't saved is I believe the answer.
>>>>
>>>>
>>>> I don't think it's the default; nothing selects that option and it
>>>> has no "default y".
>>>>
>>>> Or maybe since the value is inside a choice, and is the only entry
>>>> that's there, that does make it the default? If so, that seems a
>>>> little fragile; what if someone comes along and adds a new board
>>>> into the list, and puts it before the existing entry (e.g. to
>>>> maintain alphabetical sorting). That would changing the meaning of
>>>> the current defconfig file if the first entry is picked as default.
>>>> If so, I'm surprised if nobody has had that issue yet.
>>>
>>>
>>> It's all correct and I think we have had this hit once or twice when
>>> adding or changing the order.  It is a side effect of how Kconfig just
>>> works.
>>
>>
>> I'm not convinced. If I apply your patch, and also the following:
>>
>>> diff --git a/arch/arm/mach-tegra/tegra186/Kconfig
>>> b/arch/arm/mach-tegra/tegra186/Kconfig
>>> index 97cf23f31f80..05f691ed3ede 100644
>>> --- a/arch/arm/mach-tegra/tegra186/Kconfig
>>> +++ b/arch/arm/mach-tegra/tegra186/Kconfig
>>> @@ -7,6 +7,14 @@ if TEGRA186
>>>  choice
>>>         prompt "Tegra186 board select"
>>>
>>> +config TARGET_E9999_1234
>>> +       bool "NVIDIA Tegra186 E9999-1234 board"
>>> +       help
>>> +         P2771-0000 is a P3310 CPU board married to a P2597 I/O board.
>>> The
>>> +         combination contains SoC, DRAM, eMMC, SD card slot, HDMI, USB
>>> +         micro-B port, Ethernet, USB3 host port, SATA, PCIe, and two GPIO
>>> +         expansion headers.
>>> +
>>>  config TARGET_P2771_0000
>>>         bool "NVIDIA Tegra186 P2771-0000 board"
>>>         help
>>
>> ... then I get a build failure for p2771-0000-000_defconfig since .config
>> ends up containing CONFIG_TARGET_E9999_1234 rather than
>> CONFIG_TARGET_P2771_0000. I think we want to avoid that don't we? If we
>> don't, savedefconfig in the face of choice options seems rather too fragile,
>> or we need to force people to update *_defconfig any time any Kconfig choice
>> is edited.
>
> We have discussed this problem several times before.
>
>   - The first entry in a "choice" is the default, unless otherwise specified.
>   - "make savedefconfig" drops all the defaults to create a minimum
> set of configs.
>
> So, we need to be careful when we insert a new entry at the first
> or delete the first entry in a "choice".
>
> We are supposed to not re-sync defconfigs in Linux Kernel, so we are not hit
> by this issue much there, but we still be careful when we edit the
> first entry of a choice.

Really? In practice, it happens all the time. It's rather critical 
whenever adding new options to the defconfig, to separate out the 
/actual/ changes you're making from the simple act of "savedefconfig" 
itself making changes even without edits to the defconfig file.
Stephen Warren Sept. 12, 2016, 6:28 p.m. UTC | #12
On 09/12/2016 08:23 AM, Tom Rini wrote:
> On Mon, Sep 12, 2016 at 11:24:35AM +0900, Masahiro Yamada wrote:
>> 2016-09-10 7:25 GMT+09:00 Stephen Warren <swarren@wwwdotorg.org>:
>>> On 09/09/2016 03:14 PM, Tom Rini wrote:
>>>>
>>>> On Fri, Sep 09, 2016 at 03:06:01PM -0600, Stephen Warren wrote:
>>>>>
>>>>> On 09/09/2016 01:11 PM, Tom Rini wrote:
>>>>>>
>>>>>> On Fri, Sep 09, 2016 at 01:09:43PM -0600, Stephen Warren wrote:
>>>>>>>
>>>>>>> On 09/09/2016 01:02 PM, Tom Rini wrote:
>>>>>>>>
>>>>>>>> On Fri, Sep 09, 2016 at 10:21:45AM -0600, Stephen Warren wrote:
>>>>>>>>>
>>>>>>>>> On 09/08/2016 07:19 PM, Tom Rini wrote:
>>>>>>>>>>
>>>>>>>>>> Signed-off-by: Tom Rini <trini@konsulko.com>
>>>>>>>>
>>>>>>>> /bin/bash: ess: command not found
>>>>>>>>>>
>>>>>>>>>> diff --git a/configs/harmony_defconfig b/configs/harmony_defconfig
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>> -CONFIG_USE_PRIVATE_LIBGCC=y
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> I assume that's because =y is the default for that now?
>>>>>>>>
>>>>>>>>
>>>>>>>> Yes.
>>>>>>>
>>>>>>>
>>>>>>>>>> diff --git a/configs/p2771-0000-500_defconfig
>>>>>>>>>> b/configs/p2771-0000-500_defconfig
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>> -CONFIG_TARGET_P2771_0000=y
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> I think we need to keep those two. Those two defconfigs are slightly
>>>>>>>>> different configurations of U-Boot's p2771-0000 board/target.
>>>>>>>>
>>>>>>>>
>>>>>>>> OK, then you need to submit a patch to fix the underlying problem, if
>>>>>>>> there is one, really.  Keep in mind that what this is, is re-running
>>>>>>>> savedefconfig for each target.  So if something odd drops out that
>>>>>>>> means
>>>>>>>> that it wasn't having any effect before.
>>>>>>>
>>>>>>>
>>>>>>> I don't believe there is any underlying problem. The Kconfig option
>>>>>>> in question is defined in arch/arm/mach-tegra/tegra186/Kconfig, when
>>>>>>> building for p2771-0000-000 the option makes it into .config just
>>>>>>> fine, and the value is used by board/nvidia/p2771-0000/Kconfig.
>>>>>>> Isn't this a bug in savedefconfig? I'm CC'ing Masahiro to get some
>>>>>>> insight.
>>>>>>
>>>>>>
>>>>>> It is the default value then and isn't saved is I believe the answer.
>>>>>
>>>>>
>>>>> I don't think it's the default; nothing selects that option and it
>>>>> has no "default y".
>>>>>
>>>>> Or maybe since the value is inside a choice, and is the only entry
>>>>> that's there, that does make it the default? If so, that seems a
>>>>> little fragile; what if someone comes along and adds a new board
>>>>> into the list, and puts it before the existing entry (e.g. to
>>>>> maintain alphabetical sorting). That would changing the meaning of
>>>>> the current defconfig file if the first entry is picked as default.
>>>>> If so, I'm surprised if nobody has had that issue yet.
>>>>
>>>>
>>>> It's all correct and I think we have had this hit once or twice when
>>>> adding or changing the order.  It is a side effect of how Kconfig just
>>>> works.
>>>
>>>
>>> I'm not convinced. If I apply your patch, and also the following:
>>>
>>>> diff --git a/arch/arm/mach-tegra/tegra186/Kconfig
>>>> b/arch/arm/mach-tegra/tegra186/Kconfig
>>>> index 97cf23f31f80..05f691ed3ede 100644
>>>> --- a/arch/arm/mach-tegra/tegra186/Kconfig
>>>> +++ b/arch/arm/mach-tegra/tegra186/Kconfig
>>>> @@ -7,6 +7,14 @@ if TEGRA186
>>>>  choice
>>>>         prompt "Tegra186 board select"
>>>>
>>>> +config TARGET_E9999_1234
>>>> +       bool "NVIDIA Tegra186 E9999-1234 board"
>>>> +       help
>>>> +         P2771-0000 is a P3310 CPU board married to a P2597 I/O board.
>>>> The
>>>> +         combination contains SoC, DRAM, eMMC, SD card slot, HDMI, USB
>>>> +         micro-B port, Ethernet, USB3 host port, SATA, PCIe, and two GPIO
>>>> +         expansion headers.
>>>> +
>>>>  config TARGET_P2771_0000
>>>>         bool "NVIDIA Tegra186 P2771-0000 board"
>>>>         help
>>>
>>>
>>> ... then I get a build failure for p2771-0000-000_defconfig since .config
>>> ends up containing CONFIG_TARGET_E9999_1234 rather than
>>> CONFIG_TARGET_P2771_0000. I think we want to avoid that don't we? If we
>>> don't, savedefconfig in the face of choice options seems rather too fragile,
>>> or we need to force people to update *_defconfig any time any Kconfig choice
>>> is edited.
>>
>>
>> We have discussed this problem several times before.
>>
>>   - The first entry in a "choice" is the default, unless otherwise specified.
>>   - "make savedefconfig" drops all the defaults to create a minimum
>> set of configs.
>>
>> So, we need to be careful when we insert a new entry at the first
>> or delete the first entry in a "choice".
>>
>> We are supposed to not re-sync defconfigs in Linux Kernel, so we are not hit
>> by this issue much there, but we still be careful when we edit the
>> first entry of a choice.
>> This potential fragileness exists in any projects that use Kconfig.
>>
>>
>> In U-Boot, unfortunately, we need defconfig resync periodically.
>>
>> As you noticed, "update *_defconfig any time any Kconfig choice is edited."
>> is one solution.
>>
>>
>> Or, you can specify a default explicitly, like I do in
>> arch/arm/mach-uniphier/Kconfig:
>>
>>
>> choice
>>         prompt "UniPhier SoC select"
>>         default ARCH_UNIPHIER_PRO4
>
> I am of the opinion, at least currently, that we need to make wider use
> of "default X" in choice statements and that configs/ should be treated
> as generated files.  I am frankly surprised that the Kernel stopped
> doing this because I would have sworn that wasn't true in the past (one
> shouldn't push unrelated "cleanups" to defconfig files but you also
> better put stuff where savedefconfig puts things as otherwise it would
> be the old time conflict hell madness of pre-Kconfig days).

Can we modify Kconfig in U-Boot (maybe upstream too) to require a 
default value for choices? Doing this by code review is likely to miss some.
Masahiro Yamada Sept. 14, 2016, 2:27 a.m. UTC | #13
2016-09-13 3:28 GMT+09:00 Stephen Warren <swarren@wwwdotorg.org>:
> On 09/12/2016 08:23 AM, Tom Rini wrote:
>>
>> On Mon, Sep 12, 2016 at 11:24:35AM +0900, Masahiro Yamada wrote:
>>>
>>> 2016-09-10 7:25 GMT+09:00 Stephen Warren <swarren@wwwdotorg.org>:
>>>>
>>>> On 09/09/2016 03:14 PM, Tom Rini wrote:
>>>>>
>>>>>
>>>>> On Fri, Sep 09, 2016 at 03:06:01PM -0600, Stephen Warren wrote:
>>>>>>
>>>>>>
>>>>>> On 09/09/2016 01:11 PM, Tom Rini wrote:
>>>>>>>
>>>>>>>
>>>>>>> On Fri, Sep 09, 2016 at 01:09:43PM -0600, Stephen Warren wrote:
>>>>>>>>
>>>>>>>>
>>>>>>>> On 09/09/2016 01:02 PM, Tom Rini wrote:
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On Fri, Sep 09, 2016 at 10:21:45AM -0600, Stephen Warren wrote:
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> On 09/08/2016 07:19 PM, Tom Rini wrote:
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Signed-off-by: Tom Rini <trini@konsulko.com>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> /bin/bash: ess: command not found
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> diff --git a/configs/harmony_defconfig
>>>>>>>>>>> b/configs/harmony_defconfig
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>> -CONFIG_USE_PRIVATE_LIBGCC=y
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> I assume that's because =y is the default for that now?
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Yes.
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>>> diff --git a/configs/p2771-0000-500_defconfig
>>>>>>>>>>> b/configs/p2771-0000-500_defconfig
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>> -CONFIG_TARGET_P2771_0000=y
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> I think we need to keep those two. Those two defconfigs are
>>>>>>>>>> slightly
>>>>>>>>>> different configurations of U-Boot's p2771-0000 board/target.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> OK, then you need to submit a patch to fix the underlying problem,
>>>>>>>>> if
>>>>>>>>> there is one, really.  Keep in mind that what this is, is
>>>>>>>>> re-running
>>>>>>>>> savedefconfig for each target.  So if something odd drops out that
>>>>>>>>> means
>>>>>>>>> that it wasn't having any effect before.
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> I don't believe there is any underlying problem. The Kconfig option
>>>>>>>> in question is defined in arch/arm/mach-tegra/tegra186/Kconfig, when
>>>>>>>> building for p2771-0000-000 the option makes it into .config just
>>>>>>>> fine, and the value is used by board/nvidia/p2771-0000/Kconfig.
>>>>>>>> Isn't this a bug in savedefconfig? I'm CC'ing Masahiro to get some
>>>>>>>> insight.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> It is the default value then and isn't saved is I believe the answer.
>>>>>>
>>>>>>
>>>>>>
>>>>>> I don't think it's the default; nothing selects that option and it
>>>>>> has no "default y".
>>>>>>
>>>>>> Or maybe since the value is inside a choice, and is the only entry
>>>>>> that's there, that does make it the default? If so, that seems a
>>>>>> little fragile; what if someone comes along and adds a new board
>>>>>> into the list, and puts it before the existing entry (e.g. to
>>>>>> maintain alphabetical sorting). That would changing the meaning of
>>>>>> the current defconfig file if the first entry is picked as default.
>>>>>> If so, I'm surprised if nobody has had that issue yet.
>>>>>
>>>>>
>>>>>
>>>>> It's all correct and I think we have had this hit once or twice when
>>>>> adding or changing the order.  It is a side effect of how Kconfig just
>>>>> works.
>>>>
>>>>
>>>>
>>>> I'm not convinced. If I apply your patch, and also the following:
>>>>
>>>>> diff --git a/arch/arm/mach-tegra/tegra186/Kconfig
>>>>> b/arch/arm/mach-tegra/tegra186/Kconfig
>>>>> index 97cf23f31f80..05f691ed3ede 100644
>>>>> --- a/arch/arm/mach-tegra/tegra186/Kconfig
>>>>> +++ b/arch/arm/mach-tegra/tegra186/Kconfig
>>>>> @@ -7,6 +7,14 @@ if TEGRA186
>>>>>  choice
>>>>>         prompt "Tegra186 board select"
>>>>>
>>>>> +config TARGET_E9999_1234
>>>>> +       bool "NVIDIA Tegra186 E9999-1234 board"
>>>>> +       help
>>>>> +         P2771-0000 is a P3310 CPU board married to a P2597 I/O board.
>>>>> The
>>>>> +         combination contains SoC, DRAM, eMMC, SD card slot, HDMI, USB
>>>>> +         micro-B port, Ethernet, USB3 host port, SATA, PCIe, and two
>>>>> GPIO
>>>>> +         expansion headers.
>>>>> +
>>>>>  config TARGET_P2771_0000
>>>>>         bool "NVIDIA Tegra186 P2771-0000 board"
>>>>>         help
>>>>
>>>>
>>>>
>>>> ... then I get a build failure for p2771-0000-000_defconfig since
>>>> .config
>>>> ends up containing CONFIG_TARGET_E9999_1234 rather than
>>>> CONFIG_TARGET_P2771_0000. I think we want to avoid that don't we? If we
>>>> don't, savedefconfig in the face of choice options seems rather too
>>>> fragile,
>>>> or we need to force people to update *_defconfig any time any Kconfig
>>>> choice
>>>> is edited.
>>>
>>>
>>>
>>> We have discussed this problem several times before.
>>>
>>>   - The first entry in a "choice" is the default, unless otherwise
>>> specified.
>>>   - "make savedefconfig" drops all the defaults to create a minimum
>>> set of configs.
>>>
>>> So, we need to be careful when we insert a new entry at the first
>>> or delete the first entry in a "choice".
>>>
>>> We are supposed to not re-sync defconfigs in Linux Kernel, so we are not
>>> hit
>>> by this issue much there, but we still be careful when we edit the
>>> first entry of a choice.
>>> This potential fragileness exists in any projects that use Kconfig.
>>>
>>>
>>> In U-Boot, unfortunately, we need defconfig resync periodically.
>>>
>>> As you noticed, "update *_defconfig any time any Kconfig choice is
>>> edited."
>>> is one solution.
>>>
>>>
>>> Or, you can specify a default explicitly, like I do in
>>> arch/arm/mach-uniphier/Kconfig:
>>>
>>>
>>> choice
>>>         prompt "UniPhier SoC select"
>>>         default ARCH_UNIPHIER_PRO4
>>
>>
>> I am of the opinion, at least currently, that we need to make wider use
>> of "default X" in choice statements and that configs/ should be treated
>> as generated files.  I am frankly surprised that the Kernel stopped
>> doing this because I would have sworn that wasn't true in the past (one
>> shouldn't push unrelated "cleanups" to defconfig files but you also
>> better put stuff where savedefconfig puts things as otherwise it would
>> be the old time conflict hell madness of pre-Kconfig days).
>
>
> Can we modify Kconfig in U-Boot (maybe upstream too) to require a default
> value for choices? Doing this by code review is likely to miss some.

I do not think we need that.

The savedefconfig re-sync problem happens anytime we change the default
in Kconfig entries.


Any CONFIG has its implied default.

For boolean/tristate CONFIGs, "default n" is implied
unless default is explicitly described.

Likewise, for choices, the first entry is the implied default.
I do not think this is so strange.

People should recognize adding/deleting the first entry of choices
means changing the default.

As I mentioned, we should be careful when we do so.
diff mbox

Patch

diff --git a/configs/A20-OLinuXino_MICRO_defconfig b/configs/A20-OLinuXino_MICRO_defconfig
index e4168fa..f121cab 100644
--- a/configs/A20-OLinuXino_MICRO_defconfig
+++ b/configs/A20-OLinuXino_MICRO_defconfig
@@ -14,6 +14,6 @@  CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC,AHCI,SATAPWR=SUNXI_GPB(8)"
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
 CONFIG_ETH_DESIGNWARE=y
-CONFIG_USB_EHCI_HCD=y
 CONFIG_AXP_ALDO3_VOLT=2800
 CONFIG_AXP_ALDO4_VOLT=2800
+CONFIG_USB_EHCI_HCD=y
diff --git a/configs/A20-Olimex-SOM-EVB_defconfig b/configs/A20-Olimex-SOM-EVB_defconfig
index 6430606..57609b3 100644
--- a/configs/A20-Olimex-SOM-EVB_defconfig
+++ b/configs/A20-Olimex-SOM-EVB_defconfig
@@ -17,6 +17,6 @@  CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC,RGMII,AHCI,SATAPWR=SUNXI_GPC(3)"
 # CONFIG_CMD_FPGA is not set
 CONFIG_RTL8211X_PHY_FORCE_MASTER=y
 CONFIG_ETH_DESIGNWARE=y
-CONFIG_USB_EHCI_HCD=y
 CONFIG_AXP_ALDO3_VOLT=2800
 CONFIG_AXP_ALDO4_VOLT=2800
+CONFIG_USB_EHCI_HCD=y
diff --git a/configs/A33-OLinuXino_defconfig b/configs/A33-OLinuXino_defconfig
index a175a40..2909987 100644
--- a/configs/A33-OLinuXino_defconfig
+++ b/configs/A33-OLinuXino_defconfig
@@ -1,43 +1,23 @@ 
 CONFIG_ARM=y
 CONFIG_ARCH_SUNXI=y
 CONFIG_MACH_SUN8I_A33=y
-
 CONFIG_DRAM_CLK=432
 CONFIG_DRAM_ZQ=15291
 CONFIG_DRAM_ODT_EN=y
-
 CONFIG_MMC0_CD_PIN="PB4"
 CONFIG_USB0_VBUS_PIN="AXP0-VBUS-ENABLE"
 CONFIG_USB0_VBUS_DET="AXP0-VBUS-DETECT"
-CONFIG_AXP_GPIO=y
 CONFIG_USB0_ID_DET="PB3"
-CONFIG_USB_MUSB_HOST=y
-CONFIG_USB_MUSB_SUNXI=y
+CONFIG_AXP_GPIO=y
+CONFIG_VIDEO_LCD_MODE="x:800,y:480,depth:18,pclk_khz:33000,le:16,ri:209,up:22,lo:22,hs:30,vs:1,sync:3,vmode:0"
+CONFIG_VIDEO_LCD_DCLK_PHASE=0
+CONFIG_VIDEO_LCD_BL_EN="PB2"
+CONFIG_VIDEO_LCD_BL_PWM="PH0"
 CONFIG_DEFAULT_DEVICE_TREE="sun8i-a33-olinuxino"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
-CONFIG_HUSH_PARSER=y
-CONFIG_CMD_BOOTZ=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
-CONFIG_CMD_MMC=y
 # CONFIG_CMD_FPGA is not set
-CONFIG_CMD_DHCP=y
-CONFIG_CMD_MII=y
-CONFIG_CMD_PING=y
-CONFIG_CMD_EXT2=y
-CONFIG_CMD_EXT4=y
-CONFIG_CMD_FAT=y
-CONFIG_CMD_FS_GENERIC=y
-
-CONFIG_VIDEO=y
-# CONFIG_VIDEO_VGA_VIA_LCD is not set
-CONFIG_VIDEO_LCD_MODE="x:800,y:480,depth:18,pclk_khz:33000,le:16,ri:209,up:22,lo:22,hs:30,vs:1,sync:3,vmode:0"
-CONFIG_VIDEO_LCD_DCLK_PHASE=0
-CONFIG_VIDEO_LCD_POWER=""
-CONFIG_VIDEO_LCD_RESET=""
-CONFIG_VIDEO_LCD_BL_EN="PB2"
-CONFIG_VIDEO_LCD_BL_PWM="PH0"
-CONFIG_VIDEO_LCD_BL_PWM_ACTIVE_LOW=y
-
 CONFIG_AXP_DCDC1_VOLT=3300
+CONFIG_USB_MUSB_HOST=y
diff --git a/configs/B4860QDS_SECURE_BOOT_defconfig b/configs/B4860QDS_SECURE_BOOT_defconfig
index 505e014..b978494 100644
--- a/configs/B4860QDS_SECURE_BOOT_defconfig
+++ b/configs/B4860QDS_SECURE_BOOT_defconfig
@@ -1,7 +1,7 @@ 
 CONFIG_PPC=y
-# CONFIG_SYS_MALLOC_F is not set
 CONFIG_MPC85xx=y
 CONFIG_TARGET_B4860QDS=y
+# CONFIG_SYS_MALLOC_F is not set
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
 CONFIG_OF_BOARD_SETUP=y
diff --git a/configs/BSC9132QDS_NAND_DDRCLK100_SECURE_defconfig b/configs/BSC9132QDS_NAND_DDRCLK100_SECURE_defconfig
index 523b7ad..b2e1642 100644
--- a/configs/BSC9132QDS_NAND_DDRCLK100_SECURE_defconfig
+++ b/configs/BSC9132QDS_NAND_DDRCLK100_SECURE_defconfig
@@ -1,7 +1,7 @@ 
 CONFIG_PPC=y
-# CONFIG_SYS_MALLOC_F is not set
 CONFIG_MPC85xx=y
 CONFIG_TARGET_BSC9132QDS=y
+# CONFIG_SYS_MALLOC_F is not set
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
 CONFIG_OF_BOARD_SETUP=y
diff --git a/configs/BSC9132QDS_NAND_DDRCLK133_SECURE_defconfig b/configs/BSC9132QDS_NAND_DDRCLK133_SECURE_defconfig
index 6d685b6..b17d992 100644
--- a/configs/BSC9132QDS_NAND_DDRCLK133_SECURE_defconfig
+++ b/configs/BSC9132QDS_NAND_DDRCLK133_SECURE_defconfig
@@ -1,7 +1,7 @@ 
 CONFIG_PPC=y
-# CONFIG_SYS_MALLOC_F is not set
 CONFIG_MPC85xx=y
 CONFIG_TARGET_BSC9132QDS=y
+# CONFIG_SYS_MALLOC_F is not set
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
 CONFIG_OF_BOARD_SETUP=y
diff --git a/configs/BSC9132QDS_NOR_DDRCLK100_SECURE_defconfig b/configs/BSC9132QDS_NOR_DDRCLK100_SECURE_defconfig
index 8fdc698..7caf47f 100644
--- a/configs/BSC9132QDS_NOR_DDRCLK100_SECURE_defconfig
+++ b/configs/BSC9132QDS_NOR_DDRCLK100_SECURE_defconfig
@@ -1,7 +1,7 @@ 
 CONFIG_PPC=y
-# CONFIG_SYS_MALLOC_F is not set
 CONFIG_MPC85xx=y
 CONFIG_TARGET_BSC9132QDS=y
+# CONFIG_SYS_MALLOC_F is not set
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
 CONFIG_OF_BOARD_SETUP=y
diff --git a/configs/BSC9132QDS_NOR_DDRCLK133_SECURE_defconfig b/configs/BSC9132QDS_NOR_DDRCLK133_SECURE_defconfig
index b5fc433..c3dc2a0 100644
--- a/configs/BSC9132QDS_NOR_DDRCLK133_SECURE_defconfig
+++ b/configs/BSC9132QDS_NOR_DDRCLK133_SECURE_defconfig
@@ -1,7 +1,7 @@ 
 CONFIG_PPC=y
-# CONFIG_SYS_MALLOC_F is not set
 CONFIG_MPC85xx=y
 CONFIG_TARGET_BSC9132QDS=y
+# CONFIG_SYS_MALLOC_F is not set
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
 CONFIG_OF_BOARD_SETUP=y
diff --git a/configs/BSC9132QDS_SDCARD_DDRCLK100_SECURE_defconfig b/configs/BSC9132QDS_SDCARD_DDRCLK100_SECURE_defconfig
index 456fb8d..919a9bc 100644
--- a/configs/BSC9132QDS_SDCARD_DDRCLK100_SECURE_defconfig
+++ b/configs/BSC9132QDS_SDCARD_DDRCLK100_SECURE_defconfig
@@ -1,7 +1,7 @@ 
 CONFIG_PPC=y
-# CONFIG_SYS_MALLOC_F is not set
 CONFIG_MPC85xx=y
 CONFIG_TARGET_BSC9132QDS=y
+# CONFIG_SYS_MALLOC_F is not set
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
 CONFIG_OF_BOARD_SETUP=y
diff --git a/configs/BSC9132QDS_SDCARD_DDRCLK133_SECURE_defconfig b/configs/BSC9132QDS_SDCARD_DDRCLK133_SECURE_defconfig
index effdd33..580065e 100644
--- a/configs/BSC9132QDS_SDCARD_DDRCLK133_SECURE_defconfig
+++ b/configs/BSC9132QDS_SDCARD_DDRCLK133_SECURE_defconfig
@@ -1,7 +1,7 @@ 
 CONFIG_PPC=y
-# CONFIG_SYS_MALLOC_F is not set
 CONFIG_MPC85xx=y
 CONFIG_TARGET_BSC9132QDS=y
+# CONFIG_SYS_MALLOC_F is not set
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
 CONFIG_OF_BOARD_SETUP=y
diff --git a/configs/BSC9132QDS_SPIFLASH_DDRCLK100_SECURE_defconfig b/configs/BSC9132QDS_SPIFLASH_DDRCLK100_SECURE_defconfig
index 0ac319c..829d5bd 100644
--- a/configs/BSC9132QDS_SPIFLASH_DDRCLK100_SECURE_defconfig
+++ b/configs/BSC9132QDS_SPIFLASH_DDRCLK100_SECURE_defconfig
@@ -1,7 +1,7 @@ 
 CONFIG_PPC=y
-# CONFIG_SYS_MALLOC_F is not set
 CONFIG_MPC85xx=y
 CONFIG_TARGET_BSC9132QDS=y
+# CONFIG_SYS_MALLOC_F is not set
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
 CONFIG_OF_BOARD_SETUP=y
diff --git a/configs/BSC9132QDS_SPIFLASH_DDRCLK133_SECURE_defconfig b/configs/BSC9132QDS_SPIFLASH_DDRCLK133_SECURE_defconfig
index 00fe70b..cab88fb 100644
--- a/configs/BSC9132QDS_SPIFLASH_DDRCLK133_SECURE_defconfig
+++ b/configs/BSC9132QDS_SPIFLASH_DDRCLK133_SECURE_defconfig
@@ -1,7 +1,7 @@ 
 CONFIG_PPC=y
-# CONFIG_SYS_MALLOC_F is not set
 CONFIG_MPC85xx=y
 CONFIG_TARGET_BSC9132QDS=y
+# CONFIG_SYS_MALLOC_F is not set
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
 CONFIG_OF_BOARD_SETUP=y
diff --git a/configs/C29XPCIE_NOR_SECBOOT_defconfig b/configs/C29XPCIE_NOR_SECBOOT_defconfig
index 8b81f9f..1dbb8ad 100644
--- a/configs/C29XPCIE_NOR_SECBOOT_defconfig
+++ b/configs/C29XPCIE_NOR_SECBOOT_defconfig
@@ -1,7 +1,7 @@ 
 CONFIG_PPC=y
-# CONFIG_SYS_MALLOC_F is not set
 CONFIG_MPC85xx=y
 CONFIG_TARGET_C29XPCIE=y
+# CONFIG_SYS_MALLOC_F is not set
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
 CONFIG_OF_BOARD_SETUP=y
diff --git a/configs/C29XPCIE_SPIFLASH_SECBOOT_defconfig b/configs/C29XPCIE_SPIFLASH_SECBOOT_defconfig
index bc3ba82..407093c 100644
--- a/configs/C29XPCIE_SPIFLASH_SECBOOT_defconfig
+++ b/configs/C29XPCIE_SPIFLASH_SECBOOT_defconfig
@@ -1,7 +1,7 @@ 
 CONFIG_PPC=y
-# CONFIG_SYS_MALLOC_F is not set
 CONFIG_MPC85xx=y
 CONFIG_TARGET_C29XPCIE=y
+# CONFIG_SYS_MALLOC_F is not set
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
 CONFIG_OF_BOARD_SETUP=y
diff --git a/configs/CHIP_defconfig b/configs/CHIP_defconfig
index 3e8c0a1..19ae280 100644
--- a/configs/CHIP_defconfig
+++ b/configs/CHIP_defconfig
@@ -13,10 +13,10 @@  CONFIG_CMD_DFU=y
 CONFIG_CMD_USB_MASS_STORAGE=y
 CONFIG_AXP_ALDO3_VOLT=3300
 CONFIG_AXP_ALDO4_VOLT=3300
+CONFIG_USB_EHCI_HCD=y
 CONFIG_USB_MUSB_GADGET=y
 CONFIG_USB_GADGET=y
 CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_G_DNL_MANUFACTURER="Allwinner Technology"
 CONFIG_G_DNL_VENDOR_NUM=0x1f3a
 CONFIG_G_DNL_PRODUCT_NUM=0x1010
-CONFIG_USB_EHCI_HCD=y
diff --git a/configs/Cubietruck_plus_defconfig b/configs/Cubietruck_plus_defconfig
index 725652d..f2c6fe7 100644
--- a/configs/Cubietruck_plus_defconfig
+++ b/configs/Cubietruck_plus_defconfig
@@ -4,7 +4,6 @@  CONFIG_MACH_SUN8I_A83T=y
 CONFIG_DRAM_CLK=672
 CONFIG_DRAM_ZQ=15355
 CONFIG_DRAM_ODT_EN=y
-CONFIG_MMC0_CD_PIN="PF6"
 CONFIG_USB0_VBUS_PIN="AXP0-VBUS-ENABLE"
 CONFIG_USB0_VBUS_DET="AXP0-VBUS-DETECT"
 CONFIG_USB0_ID_DET="PH11"
diff --git a/configs/Merrii_A80_Optimus_defconfig b/configs/Merrii_A80_Optimus_defconfig
index 53e023a..198fda9 100644
--- a/configs/Merrii_A80_Optimus_defconfig
+++ b/configs/Merrii_A80_Optimus_defconfig
@@ -5,7 +5,6 @@  CONFIG_DRAM_CLK=360
 CONFIG_DRAM_ZQ=123
 CONFIG_SYS_CLK_FREQ=1008000000
 CONFIG_MMC0_CD_PIN="PH18"
-# CONFIG_VIDEO is not set
 CONFIG_DEFAULT_DEVICE_TREE="sun9i-a80-optimus"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 # CONFIG_CMD_IMLS is not set
diff --git a/configs/P1010RDB-PA_NAND_SECBOOT_defconfig b/configs/P1010RDB-PA_NAND_SECBOOT_defconfig
index a745bb9..fe49b3b 100644
--- a/configs/P1010RDB-PA_NAND_SECBOOT_defconfig
+++ b/configs/P1010RDB-PA_NAND_SECBOOT_defconfig
@@ -1,7 +1,7 @@ 
 CONFIG_PPC=y
-# CONFIG_SYS_MALLOC_F is not set
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1010RDB=y
+# CONFIG_SYS_MALLOC_F is not set
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
 CONFIG_OF_BOARD_SETUP=y
diff --git a/configs/P1010RDB-PA_NOR_SECBOOT_defconfig b/configs/P1010RDB-PA_NOR_SECBOOT_defconfig
index 808851a..2340d48 100644
--- a/configs/P1010RDB-PA_NOR_SECBOOT_defconfig
+++ b/configs/P1010RDB-PA_NOR_SECBOOT_defconfig
@@ -1,7 +1,7 @@ 
 CONFIG_PPC=y
-# CONFIG_SYS_MALLOC_F is not set
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1010RDB=y
+# CONFIG_SYS_MALLOC_F is not set
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
 CONFIG_OF_BOARD_SETUP=y
diff --git a/configs/P1010RDB-PA_SPIFLASH_SECBOOT_defconfig b/configs/P1010RDB-PA_SPIFLASH_SECBOOT_defconfig
index 800e7b9..f9a3cb8 100644
--- a/configs/P1010RDB-PA_SPIFLASH_SECBOOT_defconfig
+++ b/configs/P1010RDB-PA_SPIFLASH_SECBOOT_defconfig
@@ -1,7 +1,7 @@ 
 CONFIG_PPC=y
-# CONFIG_SYS_MALLOC_F is not set
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1010RDB=y
+# CONFIG_SYS_MALLOC_F is not set
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
 CONFIG_OF_BOARD_SETUP=y
diff --git a/configs/P1010RDB-PB_NAND_SECBOOT_defconfig b/configs/P1010RDB-PB_NAND_SECBOOT_defconfig
index 880be23..2c8758a 100644
--- a/configs/P1010RDB-PB_NAND_SECBOOT_defconfig
+++ b/configs/P1010RDB-PB_NAND_SECBOOT_defconfig
@@ -1,7 +1,7 @@ 
 CONFIG_PPC=y
-# CONFIG_SYS_MALLOC_F is not set
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1010RDB=y
+# CONFIG_SYS_MALLOC_F is not set
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
 CONFIG_OF_BOARD_SETUP=y
diff --git a/configs/P1010RDB-PB_NOR_SECBOOT_defconfig b/configs/P1010RDB-PB_NOR_SECBOOT_defconfig
index a875553..f8a6566 100644
--- a/configs/P1010RDB-PB_NOR_SECBOOT_defconfig
+++ b/configs/P1010RDB-PB_NOR_SECBOOT_defconfig
@@ -1,7 +1,7 @@ 
 CONFIG_PPC=y
-# CONFIG_SYS_MALLOC_F is not set
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1010RDB=y
+# CONFIG_SYS_MALLOC_F is not set
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
 CONFIG_OF_BOARD_SETUP=y
diff --git a/configs/P1010RDB-PB_SPIFLASH_SECBOOT_defconfig b/configs/P1010RDB-PB_SPIFLASH_SECBOOT_defconfig
index be7f0e2..da38ee8 100644
--- a/configs/P1010RDB-PB_SPIFLASH_SECBOOT_defconfig
+++ b/configs/P1010RDB-PB_SPIFLASH_SECBOOT_defconfig
@@ -1,7 +1,7 @@ 
 CONFIG_PPC=y
-# CONFIG_SYS_MALLOC_F is not set
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P1010RDB=y
+# CONFIG_SYS_MALLOC_F is not set
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
 CONFIG_OF_BOARD_SETUP=y
diff --git a/configs/P2041RDB_SECURE_BOOT_defconfig b/configs/P2041RDB_SECURE_BOOT_defconfig
index b7f3a0d..d684dc4 100644
--- a/configs/P2041RDB_SECURE_BOOT_defconfig
+++ b/configs/P2041RDB_SECURE_BOOT_defconfig
@@ -1,7 +1,7 @@ 
 CONFIG_PPC=y
-# CONFIG_SYS_MALLOC_F is not set
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P2041RDB=y
+# CONFIG_SYS_MALLOC_F is not set
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
 CONFIG_OF_BOARD_SETUP=y
diff --git a/configs/P3041DS_NAND_SECURE_BOOT_defconfig b/configs/P3041DS_NAND_SECURE_BOOT_defconfig
index c2790b2..40abe56 100644
--- a/configs/P3041DS_NAND_SECURE_BOOT_defconfig
+++ b/configs/P3041DS_NAND_SECURE_BOOT_defconfig
@@ -1,7 +1,7 @@ 
 CONFIG_PPC=y
-# CONFIG_SYS_MALLOC_F is not set
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P3041DS=y
+# CONFIG_SYS_MALLOC_F is not set
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
 CONFIG_OF_BOARD_SETUP=y
diff --git a/configs/P3041DS_SECURE_BOOT_defconfig b/configs/P3041DS_SECURE_BOOT_defconfig
index d1b3f70..4187449 100644
--- a/configs/P3041DS_SECURE_BOOT_defconfig
+++ b/configs/P3041DS_SECURE_BOOT_defconfig
@@ -1,7 +1,7 @@ 
 CONFIG_PPC=y
-# CONFIG_SYS_MALLOC_F is not set
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P3041DS=y
+# CONFIG_SYS_MALLOC_F is not set
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
 CONFIG_OF_BOARD_SETUP=y
diff --git a/configs/P4080DS_SECURE_BOOT_defconfig b/configs/P4080DS_SECURE_BOOT_defconfig
index 68c910e..0156c8f 100644
--- a/configs/P4080DS_SECURE_BOOT_defconfig
+++ b/configs/P4080DS_SECURE_BOOT_defconfig
@@ -1,7 +1,7 @@ 
 CONFIG_PPC=y
-# CONFIG_SYS_MALLOC_F is not set
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P4080DS=y
+# CONFIG_SYS_MALLOC_F is not set
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
 CONFIG_OF_BOARD_SETUP=y
diff --git a/configs/P5020DS_NAND_SECURE_BOOT_defconfig b/configs/P5020DS_NAND_SECURE_BOOT_defconfig
index ae9843c..9ed017c 100644
--- a/configs/P5020DS_NAND_SECURE_BOOT_defconfig
+++ b/configs/P5020DS_NAND_SECURE_BOOT_defconfig
@@ -1,7 +1,7 @@ 
 CONFIG_PPC=y
-# CONFIG_SYS_MALLOC_F is not set
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P5020DS=y
+# CONFIG_SYS_MALLOC_F is not set
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
 CONFIG_OF_BOARD_SETUP=y
diff --git a/configs/P5020DS_SECURE_BOOT_defconfig b/configs/P5020DS_SECURE_BOOT_defconfig
index 9523a07..41a23c5 100644
--- a/configs/P5020DS_SECURE_BOOT_defconfig
+++ b/configs/P5020DS_SECURE_BOOT_defconfig
@@ -1,7 +1,7 @@ 
 CONFIG_PPC=y
-# CONFIG_SYS_MALLOC_F is not set
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P5020DS=y
+# CONFIG_SYS_MALLOC_F is not set
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
 CONFIG_OF_BOARD_SETUP=y
diff --git a/configs/P5040DS_NAND_SECURE_BOOT_defconfig b/configs/P5040DS_NAND_SECURE_BOOT_defconfig
index e45ed75..59d8002 100644
--- a/configs/P5040DS_NAND_SECURE_BOOT_defconfig
+++ b/configs/P5040DS_NAND_SECURE_BOOT_defconfig
@@ -1,7 +1,7 @@ 
 CONFIG_PPC=y
-# CONFIG_SYS_MALLOC_F is not set
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P5040DS=y
+# CONFIG_SYS_MALLOC_F is not set
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
 CONFIG_OF_BOARD_SETUP=y
diff --git a/configs/P5040DS_SECURE_BOOT_defconfig b/configs/P5040DS_SECURE_BOOT_defconfig
index 21a7ba5..305848e 100644
--- a/configs/P5040DS_SECURE_BOOT_defconfig
+++ b/configs/P5040DS_SECURE_BOOT_defconfig
@@ -1,7 +1,7 @@ 
 CONFIG_PPC=y
-# CONFIG_SYS_MALLOC_F is not set
 CONFIG_MPC85xx=y
 CONFIG_TARGET_P5040DS=y
+# CONFIG_SYS_MALLOC_F is not set
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
 CONFIG_OF_BOARD_SETUP=y
diff --git a/configs/T1023RDB_SECURE_BOOT_defconfig b/configs/T1023RDB_SECURE_BOOT_defconfig
index 984e60b..5860674 100644
--- a/configs/T1023RDB_SECURE_BOOT_defconfig
+++ b/configs/T1023RDB_SECURE_BOOT_defconfig
@@ -1,7 +1,7 @@ 
 CONFIG_PPC=y
-# CONFIG_SYS_MALLOC_F is not set
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T102XRDB=y
+# CONFIG_SYS_MALLOC_F is not set
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
 CONFIG_OF_BOARD_SETUP=y
diff --git a/configs/T1024QDS_DDR4_SECURE_BOOT_defconfig b/configs/T1024QDS_DDR4_SECURE_BOOT_defconfig
index 6253b05..b313766 100644
--- a/configs/T1024QDS_DDR4_SECURE_BOOT_defconfig
+++ b/configs/T1024QDS_DDR4_SECURE_BOOT_defconfig
@@ -1,7 +1,7 @@ 
 CONFIG_PPC=y
-# CONFIG_SYS_MALLOC_F is not set
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T102XQDS=y
+# CONFIG_SYS_MALLOC_F is not set
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
 CONFIG_OF_BOARD_SETUP=y
diff --git a/configs/T1024QDS_SECURE_BOOT_defconfig b/configs/T1024QDS_SECURE_BOOT_defconfig
index 21f7ed4..0e39902 100644
--- a/configs/T1024QDS_SECURE_BOOT_defconfig
+++ b/configs/T1024QDS_SECURE_BOOT_defconfig
@@ -1,7 +1,7 @@ 
 CONFIG_PPC=y
-# CONFIG_SYS_MALLOC_F is not set
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T102XQDS=y
+# CONFIG_SYS_MALLOC_F is not set
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
 CONFIG_OF_BOARD_SETUP=y
diff --git a/configs/T1024RDB_SECURE_BOOT_defconfig b/configs/T1024RDB_SECURE_BOOT_defconfig
index 5578976..70caff2 100644
--- a/configs/T1024RDB_SECURE_BOOT_defconfig
+++ b/configs/T1024RDB_SECURE_BOOT_defconfig
@@ -1,7 +1,7 @@ 
 CONFIG_PPC=y
-# CONFIG_SYS_MALLOC_F is not set
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T102XRDB=y
+# CONFIG_SYS_MALLOC_F is not set
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
 CONFIG_OF_BOARD_SETUP=y
diff --git a/configs/T1040D4RDB_SECURE_BOOT_defconfig b/configs/T1040D4RDB_SECURE_BOOT_defconfig
index fe7b9d1..d455cbb 100644
--- a/configs/T1040D4RDB_SECURE_BOOT_defconfig
+++ b/configs/T1040D4RDB_SECURE_BOOT_defconfig
@@ -1,7 +1,7 @@ 
 CONFIG_PPC=y
-# CONFIG_SYS_MALLOC_F is not set
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T104XRDB=y
+# CONFIG_SYS_MALLOC_F is not set
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
 CONFIG_OF_BOARD_SETUP=y
diff --git a/configs/T1040QDS_SECURE_BOOT_defconfig b/configs/T1040QDS_SECURE_BOOT_defconfig
index 33c6772..f38268e 100644
--- a/configs/T1040QDS_SECURE_BOOT_defconfig
+++ b/configs/T1040QDS_SECURE_BOOT_defconfig
@@ -1,7 +1,7 @@ 
 CONFIG_PPC=y
-# CONFIG_SYS_MALLOC_F is not set
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T1040QDS=y
+# CONFIG_SYS_MALLOC_F is not set
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
 CONFIG_OF_BOARD_SETUP=y
diff --git a/configs/T1040RDB_SECURE_BOOT_defconfig b/configs/T1040RDB_SECURE_BOOT_defconfig
index 4e5682c..2ec308d 100644
--- a/configs/T1040RDB_SECURE_BOOT_defconfig
+++ b/configs/T1040RDB_SECURE_BOOT_defconfig
@@ -1,7 +1,7 @@ 
 CONFIG_PPC=y
-# CONFIG_SYS_MALLOC_F is not set
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T104XRDB=y
+# CONFIG_SYS_MALLOC_F is not set
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
 CONFIG_OF_BOARD_SETUP=y
diff --git a/configs/T1042D4RDB_SECURE_BOOT_defconfig b/configs/T1042D4RDB_SECURE_BOOT_defconfig
index fa0e2a6..7d85875 100644
--- a/configs/T1042D4RDB_SECURE_BOOT_defconfig
+++ b/configs/T1042D4RDB_SECURE_BOOT_defconfig
@@ -1,7 +1,7 @@ 
 CONFIG_PPC=y
-# CONFIG_SYS_MALLOC_F is not set
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T104XRDB=y
+# CONFIG_SYS_MALLOC_F is not set
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
 CONFIG_OF_BOARD_SETUP=y
diff --git a/configs/T1042RDB_PI_NAND_SECURE_BOOT_defconfig b/configs/T1042RDB_PI_NAND_SECURE_BOOT_defconfig
index 2e16255..556e7e2 100644
--- a/configs/T1042RDB_PI_NAND_SECURE_BOOT_defconfig
+++ b/configs/T1042RDB_PI_NAND_SECURE_BOOT_defconfig
@@ -19,12 +19,12 @@  CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_DM=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_FSL_ESPI=y
-CONFIG_OF_LIBFDT=y
 CONFIG_RSA=y
-CONFIG_DM=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/T1042RDB_SECURE_BOOT_defconfig b/configs/T1042RDB_SECURE_BOOT_defconfig
index c777714..16f9855 100644
--- a/configs/T1042RDB_SECURE_BOOT_defconfig
+++ b/configs/T1042RDB_SECURE_BOOT_defconfig
@@ -1,7 +1,7 @@ 
 CONFIG_PPC=y
-# CONFIG_SYS_MALLOC_F is not set
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T104XRDB=y
+# CONFIG_SYS_MALLOC_F is not set
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
 CONFIG_OF_BOARD_SETUP=y
diff --git a/configs/T2080QDS_SECURE_BOOT_defconfig b/configs/T2080QDS_SECURE_BOOT_defconfig
index 5e56358..7500875 100644
--- a/configs/T2080QDS_SECURE_BOOT_defconfig
+++ b/configs/T2080QDS_SECURE_BOOT_defconfig
@@ -1,7 +1,7 @@ 
 CONFIG_PPC=y
-# CONFIG_SYS_MALLOC_F is not set
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T208XQDS=y
+# CONFIG_SYS_MALLOC_F is not set
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
 CONFIG_OF_BOARD_SETUP=y
diff --git a/configs/T2080RDB_SECURE_BOOT_defconfig b/configs/T2080RDB_SECURE_BOOT_defconfig
index af64f23..613677f 100644
--- a/configs/T2080RDB_SECURE_BOOT_defconfig
+++ b/configs/T2080RDB_SECURE_BOOT_defconfig
@@ -1,7 +1,7 @@ 
 CONFIG_PPC=y
-# CONFIG_SYS_MALLOC_F is not set
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T208XRDB=y
+# CONFIG_SYS_MALLOC_F is not set
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
 CONFIG_OF_BOARD_SETUP=y
diff --git a/configs/T4160QDS_SECURE_BOOT_defconfig b/configs/T4160QDS_SECURE_BOOT_defconfig
index 560fce8..0457212 100644
--- a/configs/T4160QDS_SECURE_BOOT_defconfig
+++ b/configs/T4160QDS_SECURE_BOOT_defconfig
@@ -1,7 +1,7 @@ 
 CONFIG_PPC=y
-# CONFIG_SYS_MALLOC_F is not set
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T4240QDS=y
+# CONFIG_SYS_MALLOC_F is not set
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
 CONFIG_OF_BOARD_SETUP=y
diff --git a/configs/T4240QDS_SECURE_BOOT_defconfig b/configs/T4240QDS_SECURE_BOOT_defconfig
index 2d6b47f..175a492 100644
--- a/configs/T4240QDS_SECURE_BOOT_defconfig
+++ b/configs/T4240QDS_SECURE_BOOT_defconfig
@@ -1,7 +1,7 @@ 
 CONFIG_PPC=y
-# CONFIG_SYS_MALLOC_F is not set
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T4240QDS=y
+# CONFIG_SYS_MALLOC_F is not set
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
 CONFIG_OF_BOARD_SETUP=y
diff --git a/configs/Wobo_i5_defconfig b/configs/Wobo_i5_defconfig
index 17ed968..20382ae 100644
--- a/configs/Wobo_i5_defconfig
+++ b/configs/Wobo_i5_defconfig
@@ -10,6 +10,6 @@  CONFIG_SPL=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
-CONFIG_USB_EHCI_HCD=y
 CONFIG_AXP_ALDO3_VOLT=3300
 CONFIG_AXP_ALDO4_VOLT=3300
+CONFIG_USB_EHCI_HCD=y
diff --git a/configs/alt_defconfig b/configs/alt_defconfig
index 15964c6..4ef7499 100644
--- a/configs/alt_defconfig
+++ b/configs/alt_defconfig
@@ -2,10 +2,10 @@  CONFIG_ARM=y
 CONFIG_ARCH_RMOBILE=y
 CONFIG_SYS_MALLOC_F_LEN=0x2000
 CONFIG_TARGET_ALT=y
-CONFIG_BOOTDELAY=3
 CONFIG_BOOTSTAGE_USER_COUNT=0x20
 CONFIG_BOOTSTAGE_STASH_ADDR=0x0
 CONFIG_BOOTSTAGE_STASH_SIZE=0x4096
+CONFIG_BOOTDELAY=3
 CONFIG_CMD_BOOTZ=y
 # CONFIG_CMD_IMI is not set
 # CONFIG_CMD_IMLS is not set
diff --git a/configs/am335x_boneblack_vboot_defconfig b/configs/am335x_boneblack_vboot_defconfig
index c2f09cb..0d528ec 100644
--- a/configs/am335x_boneblack_vboot_defconfig
+++ b/configs/am335x_boneblack_vboot_defconfig
@@ -34,6 +34,7 @@  CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_OF_CONTROL=y
+CONFIG_DM_I2C=y
 CONFIG_DM_MMC=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_WINBOND=y
@@ -49,4 +50,3 @@  CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_G_DNL_MANUFACTURER="Texas Instruments"
 CONFIG_G_DNL_VENDOR_NUM=0x0451
 CONFIG_G_DNL_PRODUCT_NUM=0xd022
-CONFIG_DM_I2C=y
diff --git a/configs/am335x_evm_defconfig b/configs/am335x_evm_defconfig
index 6885230..17a558d 100644
--- a/configs/am335x_evm_defconfig
+++ b/configs/am335x_evm_defconfig
@@ -4,7 +4,9 @@  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_SPL_LOAD_FIT=y
 CONFIG_HUSH_PARSER=y
 CONFIG_CMD_BOOTZ=y
 # CONFIG_CMD_IMLS is not set
@@ -27,6 +29,8 @@  CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_OF_CONTROL=y
+CONFIG_OF_LIST="am335x-evm am335x-bone am335x-boneblack am335x-evmsk am335x-bonegreen am335x-icev2"
+CONFIG_DM_I2C=y
 CONFIG_DM_MMC=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_WINBOND=y
@@ -42,11 +46,5 @@  CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_G_DNL_MANUFACTURER="Texas Instruments"
 CONFIG_G_DNL_VENDOR_NUM=0x0451
 CONFIG_G_DNL_PRODUCT_NUM=0xd022
-CONFIG_OF_LIBFDT=y
-CONFIG_SPL_NET_VCI_STRING="AM335x U-Boot SPL"
 CONFIG_RSA=y
-CONFIG_FIT=y
 CONFIG_SPL_OF_LIBFDT=y
-CONFIG_SPL_LOAD_FIT=y
-CONFIG_OF_LIST="am335x-evm am335x-bone am335x-boneblack am335x-evmsk am335x-bonegreen am335x-icev2"
-CONFIG_DM_I2C=y
diff --git a/configs/am335x_evm_nor_defconfig b/configs/am335x_evm_nor_defconfig
index 76a004e..f230671 100644
--- a/configs/am335x_evm_nor_defconfig
+++ b/configs/am335x_evm_nor_defconfig
@@ -38,4 +38,3 @@  CONFIG_G_DNL_MANUFACTURER="Texas Instruments"
 CONFIG_G_DNL_VENDOR_NUM=0x0451
 CONFIG_G_DNL_PRODUCT_NUM=0xd022
 CONFIG_OF_LIBFDT=y
-CONFIG_SPL_NET_VCI_STRING="AM335x U-Boot SPL"
diff --git a/configs/am335x_evm_norboot_defconfig b/configs/am335x_evm_norboot_defconfig
index 99fc555..b95f437 100644
--- a/configs/am335x_evm_norboot_defconfig
+++ b/configs/am335x_evm_norboot_defconfig
@@ -1,8 +1,8 @@ 
 CONFIG_ARM=y
 CONFIG_TARGET_AM335X_EVM=y
 CONFIG_NOR=y
-CONFIG_NOR_BOOT=y
 CONFIG_FIT=y
+CONFIG_NOR_BOOT=y
 CONFIG_HUSH_PARSER=y
 CONFIG_CMD_BOOTZ=y
 # CONFIG_CMD_IMLS is not set
@@ -35,4 +35,3 @@  CONFIG_G_DNL_MANUFACTURER="Texas Instruments"
 CONFIG_G_DNL_VENDOR_NUM=0x0451
 CONFIG_G_DNL_PRODUCT_NUM=0xd022
 CONFIG_OF_LIBFDT=y
-CONFIG_SPL_NET_VCI_STRING="AM335x U-Boot SPL"
diff --git a/configs/am335x_evm_usbspl_defconfig b/configs/am335x_evm_usbspl_defconfig
index cba5e84..eee5e9b 100644
--- a/configs/am335x_evm_usbspl_defconfig
+++ b/configs/am335x_evm_usbspl_defconfig
@@ -38,4 +38,3 @@  CONFIG_G_DNL_MANUFACTURER="Texas Instruments"
 CONFIG_G_DNL_VENDOR_NUM=0x0451
 CONFIG_G_DNL_PRODUCT_NUM=0xd022
 CONFIG_OF_LIBFDT=y
-CONFIG_SPL_NET_VCI_STRING="AM335x U-Boot SPL"
diff --git a/configs/am43xx_evm_defconfig b/configs/am43xx_evm_defconfig
index 56782f1..546e49b 100644
--- a/configs/am43xx_evm_defconfig
+++ b/configs/am43xx_evm_defconfig
@@ -1,8 +1,6 @@ 
 CONFIG_ARM=y
 CONFIG_AM43XX=y
 CONFIG_TARGET_AM43XX_EVM=y
-CONFIG_DM_SERIAL=y
-CONFIG_DM_GPIO=y
 CONFIG_SPL_STACK_R_ADDR=0x82000000
 CONFIG_DEFAULT_DEVICE_TREE="am437x-gp-evm"
 CONFIG_SPL=y
@@ -34,10 +32,14 @@  CONFIG_CMD_FS_GENERIC=y
 CONFIG_OF_CONTROL=y
 CONFIG_OF_LIST="am437x-gp-evm am437x-sk-evm am43x-epos-evm am437x-idk-evm"
 CONFIG_DM=y
+CONFIG_DM_GPIO=y
+CONFIG_DM_I2C=y
 CONFIG_DM_MMC=y
 CONFIG_SPI_FLASH=y
-CONFIG_SPI_FLASH_MACRONIX=y
 CONFIG_SPI_FLASH_BAR=y
+CONFIG_SPI_FLASH_MACRONIX=y
+CONFIG_DM_ETH=y
+CONFIG_DM_SERIAL=y
 CONFIG_SYS_NS16550=y
 CONFIG_TI_QSPI=y
 CONFIG_TIMER=y
@@ -55,5 +57,3 @@  CONFIG_G_DNL_MANUFACTURER="Texas Instruments"
 CONFIG_G_DNL_VENDOR_NUM=0x0403
 CONFIG_G_DNL_PRODUCT_NUM=0xbd00
 CONFIG_SPL_OF_LIBFDT=y
-CONFIG_DM_I2C=y
-CONFIG_DM_ETH=y
diff --git a/configs/am43xx_evm_ethboot_defconfig b/configs/am43xx_evm_ethboot_defconfig
index 3b958d7..9cdae19 100644
--- a/configs/am43xx_evm_ethboot_defconfig
+++ b/configs/am43xx_evm_ethboot_defconfig
@@ -41,4 +41,3 @@  CONFIG_G_DNL_MANUFACTURER="Texas Instruments"
 CONFIG_G_DNL_VENDOR_NUM=0x0403
 CONFIG_G_DNL_PRODUCT_NUM=0xbd00
 CONFIG_OF_LIBFDT=y
-CONFIG_SPL_NET_VCI_STRING="AM43xx U-Boot SPL"
diff --git a/configs/am43xx_evm_usbhost_boot_defconfig b/configs/am43xx_evm_usbhost_boot_defconfig
index 34c875e..587c9a3 100644
--- a/configs/am43xx_evm_usbhost_boot_defconfig
+++ b/configs/am43xx_evm_usbhost_boot_defconfig
@@ -1,14 +1,14 @@ 
 CONFIG_ARM=y
 CONFIG_AM43XX=y
 CONFIG_TARGET_AM43XX_EVM=y
-CONFIG_DM_SERIAL=y
-CONFIG_DM_GPIO=y
+CONFIG_ISW_ENTRY_ADDR=0x40300350
 CONFIG_SPL_STACK_R_ADDR=0x82000000
 CONFIG_DEFAULT_DEVICE_TREE="am437x-gp-evm"
 CONFIG_SPL=y
-CONFIG_ISW_ENTRY_ADDR=0x40300350
 CONFIG_SPL_STACK_R=y
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="SERIAL1,CONS_INDEX=1,NAND,SPL_USB_HOST_SUPPORT"
+CONFIG_SPL_LOAD_FIT=y
 CONFIG_HUSH_PARSER=y
 CONFIG_CMD_BOOTZ=y
 # CONFIG_CMD_IMLS is not set
@@ -31,10 +31,13 @@  CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_OF_CONTROL=y
+CONFIG_OF_LIST="am437x-gp-evm am437x-sk-evm am43x-epos-evm am437x-idk-evm"
 CONFIG_DM=y
+CONFIG_DM_GPIO=y
 CONFIG_DM_MMC=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_MACRONIX=y
+CONFIG_DM_SERIAL=y
 CONFIG_SYS_NS16550=y
 CONFIG_TI_QSPI=y
 CONFIG_TIMER=y
@@ -51,9 +54,4 @@  CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_G_DNL_MANUFACTURER="Texas Instruments"
 CONFIG_G_DNL_VENDOR_NUM=0x0403
 CONFIG_G_DNL_PRODUCT_NUM=0xbd00
-CONFIG_OF_LIBFDT=y
-CONFIG_SPL_NET_VCI_STRING="AM43xx U-Boot SPL"
-CONFIG_FIT=y
 CONFIG_SPL_OF_LIBFDT=y
-CONFIG_SPL_LOAD_FIT=y
-CONFIG_OF_LIST="am437x-gp-evm am437x-sk-evm am43x-epos-evm am437x-idk-evm"
diff --git a/configs/am43xx_hs_evm_defconfig b/configs/am43xx_hs_evm_defconfig
index 7861035..e5e546c 100644
--- a/configs/am43xx_hs_evm_defconfig
+++ b/configs/am43xx_hs_evm_defconfig
@@ -2,13 +2,10 @@  CONFIG_ARM=y
 CONFIG_AM43XX=y
 CONFIG_TI_SECURE_DEVICE=y
 CONFIG_TARGET_AM43XX_EVM=y
-CONFIG_DM_SERIAL=y
-CONFIG_DM_GPIO=y
+CONFIG_ISW_ENTRY_ADDR=0x403018e0
 CONFIG_SPL_STACK_R_ADDR=0x82000000
-# Device tree file can be same on HS evm
 CONFIG_DEFAULT_DEVICE_TREE="am437x-gp-evm"
 CONFIG_SPL=y
-CONFIG_ISW_ENTRY_ADDR=0x403018e0
 CONFIG_SPL_STACK_R=y
 CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="CONS_INDEX=1, NAND"
@@ -37,11 +34,14 @@  CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_OF_CONTROL=y
-CONFIG_OF_LIST="am437x-gp-evm"
 CONFIG_DM=y
+CONFIG_DM_GPIO=y
+CONFIG_DM_I2C=y
 CONFIG_DM_MMC=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_MACRONIX=y
+CONFIG_DM_ETH=y
+CONFIG_DM_SERIAL=y
 CONFIG_SYS_NS16550=y
 CONFIG_TI_QSPI=y
 CONFIG_TIMER=y
@@ -59,5 +59,3 @@  CONFIG_G_DNL_MANUFACTURER="Texas Instruments"
 CONFIG_G_DNL_VENDOR_NUM=0x0403
 CONFIG_G_DNL_PRODUCT_NUM=0xbd00
 CONFIG_SPL_OF_LIBFDT=y
-CONFIG_DM_I2C=y
-CONFIG_DM_ETH=y
diff --git a/configs/am57xx_evm_defconfig b/configs/am57xx_evm_defconfig
index c95f45a..7e8c200 100644
--- a/configs/am57xx_evm_defconfig
+++ b/configs/am57xx_evm_defconfig
@@ -1,19 +1,20 @@ 
 CONFIG_ARM=y
 CONFIG_OMAP54XX=y
 CONFIG_TARGET_AM57XX_EVM=y
-CONFIG_DM_SERIAL=y
-CONFIG_DM_GPIO=y
 CONFIG_SPL_STACK_R_ADDR=0x82000000
 CONFIG_DEFAULT_DEVICE_TREE="am57xx-beagle-x15"
 CONFIG_SPL=y
 CONFIG_SPL_STACK_R=y
+CONFIG_FIT=y
+CONFIG_OF_BOARD_SETUP=y
+CONFIG_SPL_LOAD_FIT=y
 CONFIG_HUSH_PARSER=y
 CONFIG_CMD_BOOTZ=y
-CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 CONFIG_CMD_ASKENV=y
 # CONFIG_CMD_FLASH is not set
 CONFIG_CMD_MMC=y
+CONFIG_CMD_SF=y
 CONFIG_CMD_SPI=y
 CONFIG_CMD_I2C=y
 CONFIG_CMD_USB=y
@@ -28,21 +29,20 @@  CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_OF_CONTROL=y
+CONFIG_OF_LIST="am57xx-beagle-x15 am572x-idk"
 CONFIG_DM=y
+CONFIG_DM_GPIO=y
+CONFIG_DM_I2C=y
 CONFIG_DM_MMC=y
+CONFIG_DM_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_BAR=y
+CONFIG_SPI_FLASH_SPANSION=y
+CONFIG_DM_SERIAL=y
 CONFIG_SYS_NS16550=y
+CONFIG_DM_SPI=y
+CONFIG_TI_QSPI=y
 CONFIG_USB=y
 CONFIG_USB_XHCI_HCD=y
 CONFIG_USB_XHCI_DWC3=y
-CONFIG_FIT=y
 CONFIG_SPL_OF_LIBFDT=y
-CONFIG_SPL_LOAD_FIT=y
-CONFIG_OF_LIST="am57xx-beagle-x15 am572x-idk"
-CONFIG_DM_I2C=y
-CONFIG_DM_SPI=y
-CONFIG_DM_SPI_FLASH=y
-CONFIG_SPI_FLASH_SPANSION=y
-CONFIG_TI_QSPI=y
-CONFIG_CMD_SF=y
diff --git a/configs/am57xx_evm_nodt_defconfig b/configs/am57xx_evm_nodt_defconfig
index f518e6f..94c326b 100644
--- a/configs/am57xx_evm_nodt_defconfig
+++ b/configs/am57xx_evm_nodt_defconfig
@@ -8,6 +8,7 @@  CONFIG_CMD_BOOTZ=y
 CONFIG_CMD_ASKENV=y
 # CONFIG_CMD_FLASH is not set
 CONFIG_CMD_MMC=y
+CONFIG_CMD_SF=y
 CONFIG_CMD_SPI=y
 CONFIG_CMD_I2C=y
 CONFIG_CMD_USB=y
@@ -21,13 +22,12 @@  CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_SPI_FLASH=y
+CONFIG_SPI_FLASH_BAR=y
+CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_SYS_NS16550=y
+CONFIG_TI_QSPI=y
 CONFIG_USB=y
 CONFIG_USB_XHCI_HCD=y
 CONFIG_USB_XHCI_DWC3=y
 CONFIG_OF_LIBFDT=y
-CONFIG_SPI_FLASH=y
-CONFIG_SPI_FLASH_BAR=y
-CONFIG_SPI_FLASH_SPANSION=y
-CONFIG_TI_QSPI=y
-CONFIG_CMD_SF=y
diff --git a/configs/am57xx_hs_evm_defconfig b/configs/am57xx_hs_evm_defconfig
index afd37d4..4538169 100644
--- a/configs/am57xx_hs_evm_defconfig
+++ b/configs/am57xx_hs_evm_defconfig
@@ -2,19 +2,22 @@  CONFIG_ARM=y
 CONFIG_OMAP54XX=y
 CONFIG_TI_SECURE_DEVICE=y
 CONFIG_TARGET_AM57XX_EVM=y
-CONFIG_DM_SERIAL=y
-CONFIG_DM_GPIO=y
 CONFIG_SPL_STACK_R_ADDR=0x82000000
 CONFIG_DEFAULT_DEVICE_TREE="am57xx-beagle-x15"
 CONFIG_SPL=y
 CONFIG_SPL_STACK_R=y
+CONFIG_FIT=y
+CONFIG_OF_BOARD_SETUP=y
+CONFIG_SPL_LOAD_FIT=y
+CONFIG_SPL_FIT_IMAGE_POST_PROCESS=y
+CONFIG_FIT_IMAGE_POST_PROCESS=y
 CONFIG_HUSH_PARSER=y
 CONFIG_CMD_BOOTZ=y
-CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 CONFIG_CMD_ASKENV=y
 # CONFIG_CMD_FLASH is not set
 CONFIG_CMD_MMC=y
+CONFIG_CMD_SF=y
 CONFIG_CMD_SPI=y
 CONFIG_CMD_I2C=y
 CONFIG_CMD_USB=y
@@ -30,22 +33,18 @@  CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_OF_CONTROL=y
 CONFIG_DM=y
+CONFIG_DM_GPIO=y
+CONFIG_DM_I2C=y
 CONFIG_DM_MMC=y
+CONFIG_DM_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_BAR=y
+CONFIG_SPI_FLASH_SPANSION=y
+CONFIG_DM_SERIAL=y
 CONFIG_SYS_NS16550=y
+CONFIG_DM_SPI=y
+CONFIG_TI_QSPI=y
 CONFIG_USB=y
 CONFIG_USB_XHCI_HCD=y
 CONFIG_USB_XHCI_DWC3=y
-CONFIG_FIT=y
 CONFIG_SPL_OF_LIBFDT=y
-CONFIG_SPL_LOAD_FIT=y
-CONFIG_SPL_FIT_IMAGE_POST_PROCESS=y
-CONFIG_FIT_IMAGE_POST_PROCESS=y
-CONFIG_OF_LIST="am57xx-beagle-x15"
-CONFIG_DM_I2C=y
-CONFIG_DM_SPI=y
-CONFIG_DM_SPI_FLASH=y
-CONFIG_SPI_FLASH_SPANSION=y
-CONFIG_TI_QSPI=y
-CONFIG_CMD_SF=y
diff --git a/configs/ap121_defconfig b/configs/ap121_defconfig
index fbd63e9..cb42e1c 100644
--- a/configs/ap121_defconfig
+++ b/configs/ap121_defconfig
@@ -1,8 +1,5 @@ 
 CONFIG_MIPS=y
 CONFIG_SYS_MALLOC_F_LEN=0x2000
-CONFIG_DM_SERIAL=y
-CONFIG_DM_SPI=y
-CONFIG_DM_SPI_FLASH=y
 CONFIG_ARCH_ATH79=y
 CONFIG_DEFAULT_DEVICE_TREE="ap121"
 CONFIG_BOOTDELAY=3
@@ -23,6 +20,7 @@  CONFIG_CMD_SPI=y
 CONFIG_CMD_DHCP=y
 CONFIG_CMD_PING=y
 CONFIG_NET_RANDOM_ETHADDR=y
+CONFIG_DM_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_BAR=y
 CONFIG_SPI_FLASH_ATMEL=y
@@ -40,10 +38,12 @@  CONFIG_AG7XXX=y
 CONFIG_PINCTRL=y
 CONFIG_PINCONF=y
 CONFIG_AR933X_PINCTRL=y
+CONFIG_DM_SERIAL=y
 CONFIG_DEBUG_UART=y
 CONFIG_DEBUG_UART_AR933X=y
 CONFIG_DEBUG_UART_BASE=0xb8020000
 CONFIG_DEBUG_UART_CLOCK=25000000
 CONFIG_DEBUG_UART_BOARD_INIT=y
 CONFIG_AR933X_UART=y
+CONFIG_DM_SPI=y
 CONFIG_ATH79_SPI=y
diff --git a/configs/ap143_defconfig b/configs/ap143_defconfig
index 15fe36f..27b5c17 100644
--- a/configs/ap143_defconfig
+++ b/configs/ap143_defconfig
@@ -1,8 +1,5 @@ 
 CONFIG_MIPS=y
 CONFIG_SYS_MALLOC_F_LEN=0x800
-CONFIG_DM_SERIAL=y
-CONFIG_DM_SPI=y
-CONFIG_DM_SPI_FLASH=y
 CONFIG_ARCH_ATH79=y
 CONFIG_TARGET_AP143=y
 CONFIG_DEFAULT_DEVICE_TREE="ap143"
@@ -23,6 +20,7 @@  CONFIG_CMD_SPI=y
 # CONFIG_CMD_FPGA is not set
 # CONFIG_CMD_NET is not set
 # CONFIG_CMD_NFS is not set
+CONFIG_DM_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_BAR=y
 CONFIG_SPI_FLASH_ATMEL=y
@@ -37,10 +35,12 @@  CONFIG_SPI_FLASH_DATAFLASH=y
 CONFIG_SPI_FLASH_MTD=y
 CONFIG_PINCTRL=y
 CONFIG_QCA953X_PINCTRL=y
+CONFIG_DM_SERIAL=y
 CONFIG_DEBUG_UART=y
 CONFIG_DEBUG_UART_BASE=0xb8020000
 CONFIG_DEBUG_UART_CLOCK=25000000
 CONFIG_DEBUG_UART_SHIFT=2
 CONFIG_DEBUG_UART_BOARD_INIT=y
 CONFIG_SYS_NS16550=y
+CONFIG_DM_SPI=y
 CONFIG_ATH79_SPI=y
diff --git a/configs/apalis_t30_defconfig b/configs/apalis_t30_defconfig
index 40a65d2..697e508 100644
--- a/configs/apalis_t30_defconfig
+++ b/configs/apalis_t30_defconfig
@@ -1,6 +1,5 @@ 
 CONFIG_ARM=y
 CONFIG_TEGRA=y
-CONFIG_SPL_DM=y
 CONFIG_TEGRA30=y
 CONFIG_TARGET_APALIS_T30=y
 CONFIG_DEFAULT_DEVICE_TREE="tegra30-apalis"
@@ -27,6 +26,7 @@  CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_SPL_DM=y
 CONFIG_E1000=y
 CONFIG_PCI_TEGRA=y
 CONFIG_SYS_NS16550=y
@@ -38,4 +38,3 @@  CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_G_DNL_MANUFACTURER="NVIDIA"
 CONFIG_G_DNL_VENDOR_NUM=0x0955
 CONFIG_G_DNL_PRODUCT_NUM=0x701a
-CONFIG_USE_PRIVATE_LIBGCC=y
diff --git a/configs/arndale_defconfig b/configs/arndale_defconfig
index a026fd6..1b73e05 100644
--- a/configs/arndale_defconfig
+++ b/configs/arndale_defconfig
@@ -2,7 +2,6 @@  CONFIG_ARM=y
 CONFIG_ARCH_EXYNOS=y
 CONFIG_ARCH_EXYNOS5=y
 CONFIG_TARGET_ARNDALE=y
-CONFIG_DM_I2C=y
 CONFIG_DEFAULT_DEVICE_TREE="exynos5250-arndale"
 CONFIG_SPL=y
 CONFIG_FIT=y
@@ -27,6 +26,7 @@  CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_DM_I2C=y
 CONFIG_DM_I2C_COMPAT=y
 CONFIG_SOUND=y
 CONFIG_I2S=y
diff --git a/configs/axm_defconfig b/configs/axm_defconfig
index d1f0c75..220a49b 100644
--- a/configs/axm_defconfig
+++ b/configs/axm_defconfig
@@ -4,8 +4,8 @@  CONFIG_TARGET_TAURUS=y
 CONFIG_DEFAULT_DEVICE_TREE="at91sam9g20-taurus"
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9G20,MACH_TYPE=2068,BOARD_AXM"
-CONFIG_HUSH_PARSER=y
 CONFIG_BOOTDELAY=3
+CONFIG_HUSH_PARSER=y
 # CONFIG_CMD_BDI is not set
 CONFIG_CMD_BOOTZ=y
 # CONFIG_CMD_IMI is not set
diff --git a/configs/axs101_defconfig b/configs/axs101_defconfig
index dd82581..b8d8baf 100644
--- a/configs/axs101_defconfig
+++ b/configs/axs101_defconfig
@@ -1,7 +1,6 @@ 
 CONFIG_ARC=y
 CONFIG_SYS_DCACHE_OFF=y
 CONFIG_SYS_CLK_FREQ=750000000
-CONFIG_DM_SERIAL=y
 CONFIG_SYS_TEXT_BASE=0x81000000
 CONFIG_DEFAULT_DEVICE_TREE="axs10x"
 CONFIG_BOOTDELAY=3
@@ -22,6 +21,7 @@  CONFIG_CLK=y
 CONFIG_SYS_I2C_DW=y
 CONFIG_DM_ETH=y
 CONFIG_ETH_DESIGNWARE=y
+CONFIG_DM_SERIAL=y
 CONFIG_SYS_NS16550=y
 CONFIG_USB=y
 CONFIG_DM_USB=y
diff --git a/configs/axs103_defconfig b/configs/axs103_defconfig
index 4fb26af..5e44633 100644
--- a/configs/axs103_defconfig
+++ b/configs/axs103_defconfig
@@ -1,7 +1,6 @@ 
 CONFIG_ARC=y
 CONFIG_ISA_ARCV2=y
 CONFIG_SYS_CLK_FREQ=100000000
-CONFIG_DM_SERIAL=y
 CONFIG_SYS_TEXT_BASE=0x81000000
 CONFIG_DEFAULT_DEVICE_TREE="axs10x"
 CONFIG_BOOTDELAY=3
@@ -22,6 +21,7 @@  CONFIG_CLK=y
 CONFIG_SYS_I2C_DW=y
 CONFIG_DM_ETH=y
 CONFIG_ETH_DESIGNWARE=y
+CONFIG_DM_SERIAL=y
 CONFIG_SYS_NS16550=y
 CONFIG_USB=y
 CONFIG_DM_USB=y
diff --git a/configs/beaver_defconfig b/configs/beaver_defconfig
index b9323c2..5e51c81 100644
--- a/configs/beaver_defconfig
+++ b/configs/beaver_defconfig
@@ -1,6 +1,5 @@ 
 CONFIG_ARM=y
 CONFIG_TEGRA=y
-CONFIG_SPL_DM=y
 CONFIG_TEGRA30=y
 CONFIG_TARGET_BEAVER=y
 CONFIG_DEFAULT_DEVICE_TREE="tegra30-beaver"
@@ -30,6 +29,7 @@  CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_SPL_DM=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_WINBOND=y
 CONFIG_RTL8169=y
@@ -44,4 +44,3 @@  CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_G_DNL_MANUFACTURER="NVIDIA"
 CONFIG_G_DNL_VENDOR_NUM=0x0955
 CONFIG_G_DNL_PRODUCT_NUM=0x701a
-CONFIG_USE_PRIVATE_LIBGCC=y
diff --git a/configs/birdland_bav335a_defconfig b/configs/birdland_bav335a_defconfig
index bb5db5c..44ed671 100644
--- a/configs/birdland_bav335a_defconfig
+++ b/configs/birdland_bav335a_defconfig
@@ -38,4 +38,3 @@  CONFIG_G_DNL_MANUFACTURER="Texas Instruments"
 CONFIG_G_DNL_VENDOR_NUM=0x0451
 CONFIG_G_DNL_PRODUCT_NUM=0xd022
 CONFIG_OF_LIBFDT=y
-CONFIG_SPL_NET_VCI_STRING="BAV335x U-Boot SPL"
diff --git a/configs/birdland_bav335b_defconfig b/configs/birdland_bav335b_defconfig
index 39cc222..861bdcf 100644
--- a/configs/birdland_bav335b_defconfig
+++ b/configs/birdland_bav335b_defconfig
@@ -38,4 +38,3 @@  CONFIG_G_DNL_MANUFACTURER="Texas Instruments"
 CONFIG_G_DNL_VENDOR_NUM=0x0451
 CONFIG_G_DNL_PRODUCT_NUM=0xd022
 CONFIG_OF_LIBFDT=y
-CONFIG_SPL_NET_VCI_STRING="BAV335x U-Boot SPL"
diff --git a/configs/cardhu_defconfig b/configs/cardhu_defconfig
index 979b693..4ef93fc 100644
--- a/configs/cardhu_defconfig
+++ b/configs/cardhu_defconfig
@@ -1,6 +1,5 @@ 
 CONFIG_ARM=y
 CONFIG_TEGRA=y
-CONFIG_SPL_DM=y
 CONFIG_TEGRA30=y
 CONFIG_TARGET_CARDHU=y
 CONFIG_DEFAULT_DEVICE_TREE="tegra30-cardhu"
@@ -28,6 +27,7 @@  CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_SPL_DM=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_WINBOND=y
 CONFIG_RTL8169=y
@@ -36,4 +36,3 @@  CONFIG_SYS_NS16550=y
 CONFIG_TEGRA20_SLINK=y
 CONFIG_USB=y
 CONFIG_DM_USB=y
-CONFIG_USE_PRIVATE_LIBGCC=y
diff --git a/configs/cei-tk1-som_defconfig b/configs/cei-tk1-som_defconfig
index 0704497..19b0138 100644
--- a/configs/cei-tk1-som_defconfig
+++ b/configs/cei-tk1-som_defconfig
@@ -1,6 +1,5 @@ 
 CONFIG_ARM=y
 CONFIG_TEGRA=y
-CONFIG_SPL_DM=y
 CONFIG_TEGRA124=y
 CONFIG_TARGET_CEI_TK1_SOM=y
 CONFIG_DEFAULT_DEVICE_TREE="tegra124-cei-tk1-som"
@@ -30,6 +29,7 @@  CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_SPL_DM=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_WINBOND=y
 CONFIG_RTL8169=y
@@ -44,4 +44,3 @@  CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_G_DNL_MANUFACTURER="NVIDIA"
 CONFIG_G_DNL_VENDOR_NUM=0x0955
 CONFIG_G_DNL_PRODUCT_NUM=0x701a
-CONFIG_USE_PRIVATE_LIBGCC=y
diff --git a/configs/chromebook_jerry_defconfig b/configs/chromebook_jerry_defconfig
index fd5314a..8688abb 100644
--- a/configs/chromebook_jerry_defconfig
+++ b/configs/chromebook_jerry_defconfig
@@ -47,8 +47,6 @@  CONFIG_CMD_CROS_EC=y
 CONFIG_CROS_EC=y
 CONFIG_CROS_EC_SPI=y
 CONFIG_PWRSEQ=y
-CONFIG_SYSRESET=y
-CONFIG_DM_MMC=y
 CONFIG_ROCKCHIP_DWMMC=y
 CONFIG_PINCTRL=y
 CONFIG_SPL_PINCTRL=y
@@ -70,10 +68,10 @@  CONFIG_DEBUG_UART_CLOCK=24000000
 CONFIG_DEBUG_UART_SHIFT=2
 CONFIG_SYS_NS16550=y
 CONFIG_ROCKCHIP_SPI=y
+CONFIG_SYSRESET=y
 CONFIG_DM_VIDEO=y
 CONFIG_DISPLAY=y
 CONFIG_VIDEO_ROCKCHIP=y
-CONFIG_USE_PRIVATE_LIBGCC=y
 CONFIG_USE_TINY_PRINTF=y
 CONFIG_CMD_DHRYSTONE=y
 CONFIG_ERRNO_STR=y
diff --git a/configs/chromebook_link_defconfig b/configs/chromebook_link_defconfig
index 91e902f..323da2a 100644
--- a/configs/chromebook_link_defconfig
+++ b/configs/chromebook_link_defconfig
@@ -1,6 +1,5 @@ 
 CONFIG_X86=y
 CONFIG_SYS_MALLOC_F_LEN=0x1800
-CONFIG_DM_I2C=y
 CONFIG_VENDOR_GOOGLE=y
 CONFIG_DEFAULT_DEVICE_TREE="chromebook_link"
 CONFIG_TARGET_CHROMEBOOK_LINK=y
@@ -36,6 +35,7 @@  CONFIG_OF_CONTROL=y
 CONFIG_REGMAP=y
 CONFIG_SYSCON=y
 CONFIG_CPU=y
+CONFIG_DM_I2C=y
 CONFIG_SYS_I2C_INTEL=y
 CONFIG_CMD_CROS_EC=y
 CONFIG_CROS_EC=y
diff --git a/configs/cm_t43_defconfig b/configs/cm_t43_defconfig
index b80ca0d..5125c78 100644
--- a/configs/cm_t43_defconfig
+++ b/configs/cm_t43_defconfig
@@ -1,7 +1,5 @@ 
 CONFIG_ARM=y
 CONFIG_TARGET_CM_T43=y
-CONFIG_DM_SERIAL=y
-CONFIG_DM_GPIO=y
 CONFIG_SPL=y
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_PROMPT="CM-T43 # "
@@ -26,6 +24,7 @@  CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_DM=y
+CONFIG_DM_GPIO=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_BAR=y
 CONFIG_SPI_FLASH_ATMEL=y
@@ -36,6 +35,7 @@  CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_SPI_FLASH_SST=y
 CONFIG_SPI_FLASH_WINBOND=y
+CONFIG_DM_SERIAL=y
 CONFIG_SYS_NS16550=y
 CONFIG_USB=y
 CONFIG_USB_XHCI_HCD=y
diff --git a/configs/colibri_t20_defconfig b/configs/colibri_t20_defconfig
index 5907a33..66db3ca 100644
--- a/configs/colibri_t20_defconfig
+++ b/configs/colibri_t20_defconfig
@@ -1,6 +1,5 @@ 
 CONFIG_ARM=y
 CONFIG_TEGRA=y
-CONFIG_SPL_DM=y
 CONFIG_TEGRA20=y
 CONFIG_TARGET_COLIBRI_T20=y
 CONFIG_DEFAULT_DEVICE_TREE="tegra20-colibri"
@@ -30,6 +29,7 @@  CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_SPL_DM=y
 CONFIG_DM_PMIC=y
 CONFIG_DM_REGULATOR=y
 CONFIG_DM_REGULATOR_FIXED=y
@@ -47,4 +47,3 @@  CONFIG_G_DNL_VENDOR_NUM=0x0955
 CONFIG_G_DNL_PRODUCT_NUM=0x701a
 CONFIG_DM_VIDEO=y
 CONFIG_VIDEO_TEGRA20=y
-CONFIG_USE_PRIVATE_LIBGCC=y
diff --git a/configs/colibri_t30_defconfig b/configs/colibri_t30_defconfig
index c920b39..c95f40d 100644
--- a/configs/colibri_t30_defconfig
+++ b/configs/colibri_t30_defconfig
@@ -1,6 +1,5 @@ 
 CONFIG_ARM=y
 CONFIG_TEGRA=y
-CONFIG_SPL_DM=y
 CONFIG_TEGRA30=y
 CONFIG_TARGET_COLIBRI_T30=y
 CONFIG_DEFAULT_DEVICE_TREE="tegra30-colibri"
@@ -27,6 +26,7 @@  CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_SPL_DM=y
 CONFIG_SYS_NS16550=y
 CONFIG_USB=y
 CONFIG_DM_USB=y
@@ -36,4 +36,3 @@  CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_G_DNL_MANUFACTURER="NVIDIA"
 CONFIG_G_DNL_VENDOR_NUM=0x0955
 CONFIG_G_DNL_PRODUCT_NUM=0x701a
-CONFIG_USE_PRIVATE_LIBGCC=y
diff --git a/configs/colibri_vf_defconfig b/configs/colibri_vf_defconfig
index 986cec4..d2b24b6 100644
--- a/configs/colibri_vf_defconfig
+++ b/configs/colibri_vf_defconfig
@@ -1,8 +1,5 @@ 
 CONFIG_ARM=y
 CONFIG_TARGET_COLIBRI_VF=y
-CONFIG_DM_SERIAL=y
-CONFIG_DM_SPI=y
-CONFIG_DM_GPIO=y
 CONFIG_DEFAULT_DEVICE_TREE="vf610-colibri"
 CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/toradex/colibri_vf/imximage.cfg,ENV_IS_IN_NAND,IMX_NAND"
 CONFIG_BOOTDELAY=1
@@ -27,10 +24,13 @@  CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_OF_CONTROL=y
 CONFIG_DM=y
+CONFIG_DM_GPIO=y
 CONFIG_VYBRID_GPIO=y
 CONFIG_NAND_VF610_NFC=y
 CONFIG_SYS_NAND_VF610_NFC_60_ECC_BYTES=y
+CONFIG_DM_SERIAL=y
 CONFIG_FSL_LPUART=y
+CONFIG_DM_SPI=y
 CONFIG_FSL_DSPI=y
 CONFIG_USB=y
 CONFIG_USB_GADGET=y
diff --git a/configs/conga-qeval20-qa3-e3845-internal-uart_defconfig b/configs/conga-qeval20-qa3-e3845-internal-uart_defconfig
index c0f5199..eff5084 100644
--- a/configs/conga-qeval20-qa3-e3845-internal-uart_defconfig
+++ b/configs/conga-qeval20-qa3-e3845-internal-uart_defconfig
@@ -1,5 +1,4 @@ 
 CONFIG_X86=y
-CONFIG_DM_I2C=y
 CONFIG_VENDOR_CONGATEC=y
 CONFIG_TARGET_CONGA_QEVAL20_QA3_E3845=y
 CONFIG_DEFAULT_DEVICE_TREE="conga-qeval20-qa3-e3845"
@@ -41,6 +40,7 @@  CONFIG_OF_CONTROL=y
 CONFIG_REGMAP=y
 CONFIG_SYSCON=y
 CONFIG_CPU=y
+CONFIG_DM_I2C=y
 CONFIG_SYS_I2C_INTEL=y
 CONFIG_WINBOND_W83627=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/conga-qeval20-qa3-e3845_defconfig b/configs/conga-qeval20-qa3-e3845_defconfig
index 4636322..bb26695 100644
--- a/configs/conga-qeval20-qa3-e3845_defconfig
+++ b/configs/conga-qeval20-qa3-e3845_defconfig
@@ -1,5 +1,4 @@ 
 CONFIG_X86=y
-CONFIG_DM_I2C=y
 CONFIG_VENDOR_CONGATEC=y
 CONFIG_TARGET_CONGA_QEVAL20_QA3_E3845=y
 CONFIG_DEFAULT_DEVICE_TREE="conga-qeval20-qa3-e3845"
@@ -40,6 +39,7 @@  CONFIG_OF_CONTROL=y
 CONFIG_REGMAP=y
 CONFIG_SYSCON=y
 CONFIG_CPU=y
+CONFIG_DM_I2C=y
 CONFIG_SYS_I2C_INTEL=y
 CONFIG_WINBOND_W83627=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/corvus_defconfig b/configs/corvus_defconfig
index 51d1516..0b3178f 100644
--- a/configs/corvus_defconfig
+++ b/configs/corvus_defconfig
@@ -20,6 +20,8 @@  CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_CMD_DHCP=y
 CONFIG_CMD_PING=y
+CONFIG_OF_CONTROL=y
+CONFIG_OF_EMBED=y
 CONFIG_USB=y
 CONFIG_USB_GADGET=y
 CONFIG_USB_GADGET_ATMEL_USBA=y
@@ -27,9 +29,4 @@  CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_G_DNL_MANUFACTURER="Siemens AG"
 CONFIG_G_DNL_VENDOR_NUM=0x0908
 CONFIG_G_DNL_PRODUCT_NUM=0x02d2
-CONFIG_OF_LIBFDT=y
-CONFIG_OF_CONTROL=y
-CONFIG_OF_EMBED=y
-CONFIG_USB=y
-CONFIG_USB_GADGET=y
 # CONFIG_EFI_LOADER is not set
diff --git a/configs/da850evm_defconfig b/configs/da850evm_defconfig
index 40ab975..f367b36 100644
--- a/configs/da850evm_defconfig
+++ b/configs/da850evm_defconfig
@@ -5,8 +5,8 @@  CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="MAC_ADDR_IN_SPIFLASH"
 CONFIG_BOOTDELAY=3
 CONFIG_HUSH_PARSER=y
-CONFIG_CMD_BOOTZ=y
 CONFIG_SYS_PROMPT="U-Boot > "
+CONFIG_CMD_BOOTZ=y
 # CONFIG_CMD_IMLS is not set
 CONFIG_CMD_ASKENV=y
 # CONFIG_CMD_FLASH is not set
diff --git a/configs/dalmore_defconfig b/configs/dalmore_defconfig
index 75eaad8..1d71366 100644
--- a/configs/dalmore_defconfig
+++ b/configs/dalmore_defconfig
@@ -1,6 +1,5 @@ 
 CONFIG_ARM=y
 CONFIG_TEGRA=y
-CONFIG_SPL_DM=y
 CONFIG_TEGRA114=y
 CONFIG_TARGET_DALMORE=y
 CONFIG_DEFAULT_DEVICE_TREE="tegra114-dalmore"
@@ -30,6 +29,7 @@  CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_SPL_DM=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_WINBOND=y
 CONFIG_SYS_NS16550=y
@@ -42,4 +42,3 @@  CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_G_DNL_MANUFACTURER="NVIDIA"
 CONFIG_G_DNL_VENDOR_NUM=0x0955
 CONFIG_G_DNL_PRODUCT_NUM=0x701a
-CONFIG_USE_PRIVATE_LIBGCC=y
diff --git a/configs/dbau1000_defconfig b/configs/dbau1000_defconfig
index c3fa26f..996e2f7 100644
--- a/configs/dbau1000_defconfig
+++ b/configs/dbau1000_defconfig
@@ -12,4 +12,3 @@  CONFIG_SYS_PROMPT="DbAu1xx0 # "
 # CONFIG_CMD_FPGA is not set
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_CMD_DHCP=y
-CONFIG_USE_PRIVATE_LIBGCC=y
diff --git a/configs/dbau1100_defconfig b/configs/dbau1100_defconfig
index 5e2c9bd..2b3ccd8 100644
--- a/configs/dbau1100_defconfig
+++ b/configs/dbau1100_defconfig
@@ -12,4 +12,3 @@  CONFIG_SYS_PROMPT="DbAu1xx0 # "
 # CONFIG_CMD_FPGA is not set
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_CMD_DHCP=y
-CONFIG_USE_PRIVATE_LIBGCC=y
diff --git a/configs/dbau1500_defconfig b/configs/dbau1500_defconfig
index 10fe8aa..7459c63 100644
--- a/configs/dbau1500_defconfig
+++ b/configs/dbau1500_defconfig
@@ -12,4 +12,3 @@  CONFIG_SYS_PROMPT="DbAu1xx0 # "
 # CONFIG_CMD_FPGA is not set
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_CMD_DHCP=y
-CONFIG_USE_PRIVATE_LIBGCC=y
diff --git a/configs/dbau1550_defconfig b/configs/dbau1550_defconfig
index 7f1bdf4..964d8a8 100644
--- a/configs/dbau1550_defconfig
+++ b/configs/dbau1550_defconfig
@@ -9,4 +9,3 @@  CONFIG_SYS_PROMPT="DbAu1xx0 # "
 # CONFIG_CMD_FPGA is not set
 # CONFIG_CMD_SETEXPR is not set
 # CONFIG_CMD_NFS is not set
-CONFIG_USE_PRIVATE_LIBGCC=y
diff --git a/configs/dbau1550_el_defconfig b/configs/dbau1550_el_defconfig
index 6cd0161..dfe0102 100644
--- a/configs/dbau1550_el_defconfig
+++ b/configs/dbau1550_el_defconfig
@@ -10,4 +10,3 @@  CONFIG_SYS_PROMPT="DbAu1xx0 # "
 # CONFIG_CMD_FPGA is not set
 # CONFIG_CMD_SETEXPR is not set
 # CONFIG_CMD_NFS is not set
-CONFIG_USE_PRIVATE_LIBGCC=y
diff --git a/configs/devkit3250_defconfig b/configs/devkit3250_defconfig
index 0795458..e6fafef 100644
--- a/configs/devkit3250_defconfig
+++ b/configs/devkit3250_defconfig
@@ -1,10 +1,7 @@ 
 CONFIG_ARM=y
 CONFIG_TARGET_DEVKIT3250=y
-CONFIG_SPL_SYS_MALLOC_SIMPLE=y
-CONFIG_SPL_DM=y
-CONFIG_DM_SERIAL=y
-CONFIG_DM_GPIO=y
 CONFIG_SPL=y
+CONFIG_SPL_SYS_MALLOC_SIMPLE=y
 CONFIG_BOOTDELAY=1
 CONFIG_CMD_SPI=y
 CONFIG_CMD_I2C=y
@@ -18,5 +15,8 @@  CONFIG_CMD_PING=y
 CONFIG_CMD_CACHE=y
 CONFIG_CMD_FAT=y
 CONFIG_DM=y
+CONFIG_SPL_DM=y
+CONFIG_DM_GPIO=y
+CONFIG_DM_SERIAL=y
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/dfi-bt700-q7x-151_defconfig b/configs/dfi-bt700-q7x-151_defconfig
index 6f00004..ad551db 100644
--- a/configs/dfi-bt700-q7x-151_defconfig
+++ b/configs/dfi-bt700-q7x-151_defconfig
@@ -1,5 +1,4 @@ 
 CONFIG_X86=y
-CONFIG_DM_I2C=y
 CONFIG_VENDOR_DFI=y
 CONFIG_DEFAULT_DEVICE_TREE="dfi-bt700-q7x-151"
 CONFIG_TARGET_DFI_BT700=y
@@ -39,6 +38,7 @@  CONFIG_OF_CONTROL=y
 CONFIG_REGMAP=y
 CONFIG_SYSCON=y
 CONFIG_CPU=y
+CONFIG_DM_I2C=y
 CONFIG_NUVOTON_NCT6102D=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_GIGADEVICE=y
diff --git a/configs/dra7xx_evm_defconfig b/configs/dra7xx_evm_defconfig
index 956b83e..be8c013 100644
--- a/configs/dra7xx_evm_defconfig
+++ b/configs/dra7xx_evm_defconfig
@@ -1,17 +1,15 @@ 
 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"
 CONFIG_SPL=y
 CONFIG_SPL_STACK_R=y
+CONFIG_FIT=y
+CONFIG_OF_BOARD_SETUP=y
+CONFIG_SPL_LOAD_FIT=y
 CONFIG_HUSH_PARSER=y
 CONFIG_CMD_BOOTZ=y
-CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 CONFIG_CMD_ASKENV=y
 # CONFIG_CMD_FLASH is not set
@@ -26,18 +24,29 @@  CONFIG_CMD_GPIO=y
 CONFIG_CMD_DHCP=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
+CONFIG_CMD_REGULATOR=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_OF_CONTROL=y
+CONFIG_OF_LIST="dra7-evm dra72-evm"
 CONFIG_DM=y
+CONFIG_DM_GPIO=y
+CONFIG_PCF8575_GPIO=y
+CONFIG_DM_I2C=y
 CONFIG_DM_MMC=y
+CONFIG_DM_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_BAR=y
 CONFIG_SPI_FLASH_SPANSION=y
+CONFIG_DM_ETH=y
+CONFIG_DM_REGULATOR=y
+CONFIG_DM_REGULATOR_FIXED=y
+CONFIG_DM_SERIAL=y
 CONFIG_SYS_NS16550=y
+CONFIG_DM_SPI=y
 CONFIG_TI_QSPI=y
 CONFIG_TIMER=y
 CONFIG_OMAP_TIMER=y
@@ -53,13 +62,4 @@  CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_G_DNL_MANUFACTURER="Texas Instruments"
 CONFIG_G_DNL_VENDOR_NUM=0x0451
 CONFIG_G_DNL_PRODUCT_NUM=0xd022
-CONFIG_FIT=y
 CONFIG_SPL_OF_LIBFDT=y
-CONFIG_SPL_LOAD_FIT=y
-CONFIG_OF_LIST="dra7-evm dra72-evm"
-CONFIG_DM_I2C=y
-CONFIG_PCF8575_GPIO=y
-CONFIG_DM_REGULATOR=y
-CONFIG_DM_REGULATOR_FIXED=y
-CONFIG_CMD_REGULATOR=y
-CONFIG_DM_ETH=y
diff --git a/configs/dra7xx_hs_evm_defconfig b/configs/dra7xx_hs_evm_defconfig
index d6e4e07..512f932 100644
--- a/configs/dra7xx_hs_evm_defconfig
+++ b/configs/dra7xx_hs_evm_defconfig
@@ -1,19 +1,19 @@ 
 CONFIG_ARM=y
 CONFIG_OMAP54XX=y
-CONFIG_TI_SECURE_DEVICE=y
 CONFIG_SYS_MALLOC_F_LEN=0x2000
+CONFIG_TI_SECURE_DEVICE=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"
 CONFIG_SPL=y
 CONFIG_SPL_STACK_R=y
+CONFIG_FIT=y
+CONFIG_OF_BOARD_SETUP=y
+CONFIG_SPL_LOAD_FIT=y
+CONFIG_SPL_FIT_IMAGE_POST_PROCESS=y
+CONFIG_FIT_IMAGE_POST_PROCESS=y
 CONFIG_HUSH_PARSER=y
 CONFIG_CMD_BOOTZ=y
-CONFIG_OF_BOARD_SETUP=y
 # CONFIG_CMD_IMLS is not set
 CONFIG_CMD_ASKENV=y
 # CONFIG_CMD_FLASH is not set
@@ -28,18 +28,28 @@  CONFIG_CMD_GPIO=y
 CONFIG_CMD_DHCP=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
+CONFIG_CMD_REGULATOR=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_OF_CONTROL=y
+CONFIG_OF_LIST="dra7-evm dra72-evm"
 CONFIG_DM=y
+CONFIG_DM_GPIO=y
+CONFIG_PCF8575_GPIO=y
+CONFIG_DM_I2C=y
 CONFIG_DM_MMC=y
+CONFIG_DM_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_BAR=y
 CONFIG_SPI_FLASH_SPANSION=y
+CONFIG_DM_REGULATOR=y
+CONFIG_DM_REGULATOR_FIXED=y
+CONFIG_DM_SERIAL=y
 CONFIG_SYS_NS16550=y
+CONFIG_DM_SPI=y
 CONFIG_TI_QSPI=y
 CONFIG_TIMER=y
 CONFIG_OMAP_TIMER=y
@@ -55,14 +65,4 @@  CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_G_DNL_MANUFACTURER="Texas Instruments"
 CONFIG_G_DNL_VENDOR_NUM=0x0451
 CONFIG_G_DNL_PRODUCT_NUM=0xd022
-CONFIG_FIT=y
 CONFIG_SPL_OF_LIBFDT=y
-CONFIG_SPL_LOAD_FIT=y
-CONFIG_SPL_FIT_IMAGE_POST_PROCESS=y
-CONFIG_OF_LIST="dra7-evm dra72-evm"
-CONFIG_DM_I2C=y
-CONFIG_PCF8575_GPIO=y
-CONFIG_DM_REGULATOR=y
-CONFIG_DM_REGULATOR_FIXED=y
-CONFIG_CMD_REGULATOR=y
-CONFIG_FIT_IMAGE_POST_PROCESS=y
diff --git a/configs/draco_defconfig b/configs/draco_defconfig
index 6347b4c..7bc37ac 100644
--- a/configs/draco_defconfig
+++ b/configs/draco_defconfig
@@ -1,7 +1,6 @@ 
 CONFIG_ARM=y
 CONFIG_TARGET_DRACO=y
 CONFIG_SYS_MALLOC_F_LEN=0x2000
-CONFIG_DM_SERIAL=y
 CONFIG_DEFAULT_DEVICE_TREE="am335x-draco"
 CONFIG_SPL=y
 CONFIG_BOOTDELAY=3
@@ -28,7 +27,6 @@  CONFIG_CMD_TIME=y
 CONFIG_CMD_EXT2=y
 CONFIG_OF_CONTROL=y
 CONFIG_OF_EMBED=y
-CONFIG_DM=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_WINBOND=y
 CONFIG_SYS_NS16550=y
@@ -40,4 +38,3 @@  CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_G_DNL_MANUFACTURER="Siemens AG"
 CONFIG_G_DNL_VENDOR_NUM=0x0908
 CONFIG_G_DNL_PRODUCT_NUM=0x02d2
-CONFIG_OF_LIBFDT=y
diff --git a/configs/dragonboard410c_defconfig b/configs/dragonboard410c_defconfig
index ad2e8b8..656cc81 100644
--- a/configs/dragonboard410c_defconfig
+++ b/configs/dragonboard410c_defconfig
@@ -24,7 +24,6 @@  CONFIG_MSM_GPIO=y
 CONFIG_PM8916_GPIO=y
 CONFIG_LED=y
 CONFIG_LED_GPIO=y
-CONFIG_SYSRESET=y
 CONFIG_DM_MMC=y
 CONFIG_DM_MMC_OPS=y
 CONFIG_MSM_SDHCI=y
@@ -32,6 +31,7 @@  CONFIG_DM_PMIC=y
 CONFIG_PMIC_PM8916=y
 CONFIG_MSM_SERIAL=y
 CONFIG_SPMI_MSM=y
+CONFIG_SYSRESET=y
 CONFIG_USB=y
 CONFIG_DM_USB=y
 CONFIG_USB_EHCI_HCD=y
diff --git a/configs/etamin_defconfig b/configs/etamin_defconfig
index 326df8f..3610bdf 100644
--- a/configs/etamin_defconfig
+++ b/configs/etamin_defconfig
@@ -1,7 +1,6 @@ 
 CONFIG_ARM=y
 CONFIG_TARGET_ETAMIN=y
 CONFIG_SYS_MALLOC_F_LEN=0x2000
-CONFIG_DM_SERIAL=y
 CONFIG_DEFAULT_DEVICE_TREE="am335x-draco"
 CONFIG_SPL=y
 CONFIG_BOOTDELAY=3
@@ -28,7 +27,6 @@  CONFIG_CMD_TIME=y
 CONFIG_CMD_EXT2=y
 CONFIG_OF_CONTROL=y
 CONFIG_OF_EMBED=y
-CONFIG_DM=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_WINBOND=y
 CONFIG_SYS_NS16550=y
@@ -40,4 +38,3 @@  CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_G_DNL_MANUFACTURER="Siemens AG"
 CONFIG_G_DNL_VENDOR_NUM=0x0908
 CONFIG_G_DNL_PRODUCT_NUM=0x02d2
-CONFIG_OF_LIBFDT=y
diff --git a/configs/evb-rk3036_defconfig b/configs/evb-rk3036_defconfig
index 2d5e5e0..b49c562 100644
--- a/configs/evb-rk3036_defconfig
+++ b/configs/evb-rk3036_defconfig
@@ -28,8 +28,6 @@  CONFIG_CLK=y
 CONFIG_ROCKCHIP_GPIO=y
 CONFIG_SYS_I2C_ROCKCHIP=y
 CONFIG_LED=y
-CONFIG_SYSRESET=y
-CONFIG_DM_MMC=y
 CONFIG_ROCKCHIP_DWMMC=y
 CONFIG_PINCTRL=y
 CONFIG_ROCKCHIP_RK3036_PINCTRL=y
@@ -39,6 +37,6 @@  CONFIG_DEBUG_UART=y
 CONFIG_DEBUG_UART_BASE=0x20068000
 CONFIG_DEBUG_UART_CLOCK=24000000
 CONFIG_DEBUG_UART_SHIFT=2
-CONFIG_USE_PRIVATE_LIBGCC=y
+CONFIG_SYSRESET=y
 CONFIG_CMD_DHRYSTONE=y
 CONFIG_ERRNO_STR=y
diff --git a/configs/evb-rk3288_defconfig b/configs/evb-rk3288_defconfig
index 93be4a5..c7396a5 100644
--- a/configs/evb-rk3288_defconfig
+++ b/configs/evb-rk3288_defconfig
@@ -39,8 +39,6 @@  CONFIG_ROCKCHIP_GPIO=y
 CONFIG_SYS_I2C_ROCKCHIP=y
 CONFIG_LED=y
 CONFIG_LED_GPIO=y
-CONFIG_SYSRESET=y
-CONFIG_DM_MMC=y
 CONFIG_ROCKCHIP_DWMMC=y
 CONFIG_PINCTRL=y
 # CONFIG_PINCTRL_FULL is not set
@@ -61,7 +59,7 @@  CONFIG_DEBUG_UART_BASE=0xff690000
 CONFIG_DEBUG_UART_CLOCK=24000000
 CONFIG_DEBUG_UART_SHIFT=2
 CONFIG_SYS_NS16550=y
-CONFIG_USE_PRIVATE_LIBGCC=y
+CONFIG_SYSRESET=y
 CONFIG_USE_TINY_PRINTF=y
 CONFIG_CMD_DHRYSTONE=y
 CONFIG_ERRNO_STR=y
diff --git a/configs/evb-rk3399_defconfig b/configs/evb-rk3399_defconfig
index cd06cae..fbc23ef 100644
--- a/configs/evb-rk3399_defconfig
+++ b/configs/evb-rk3399_defconfig
@@ -1,8 +1,8 @@ 
 CONFIG_ARM=y
 CONFIG_ARCH_ROCKCHIP=y
 CONFIG_ROCKCHIP_RK3399=y
-CONFIG_TARGET_EVB_RK3399=y
 CONFIG_DEFAULT_DEVICE_TREE="rk3399-evb"
+CONFIG_FIT=y
 CONFIG_HUSH_PARSER=y
 CONFIG_CMD_BOOTZ=y
 # CONFIG_CMD_IMLS is not set
@@ -10,7 +10,6 @@  CONFIG_CMD_MMC=y
 CONFIG_CMD_SF=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_CMD_TIME=y
-CONFIG_CMD_GPT=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_EXT4=y
 CONFIG_CMD_FAT=y
@@ -18,17 +17,15 @@  CONFIG_CMD_FS_GENERIC=y
 CONFIG_REGMAP=y
 CONFIG_SYSCON=y
 CONFIG_CLK=y
-CONFIG_FIT=y
-CONFIG_SYSRESET=y
-CONFIG_DM_MMC=y
 CONFIG_ROCKCHIP_DWMMC=y
 CONFIG_ROCKCHIP_SDHCI=y
 CONFIG_PINCTRL=y
 CONFIG_RAM=y
-CONFIG_SYS_NS16550=y
 CONFIG_DEBUG_UART=y
 CONFIG_DEBUG_UART_BASE=0xFF1A0000
 CONFIG_DEBUG_UART_CLOCK=24000000
 CONFIG_DEBUG_UART_SHIFT=2
+CONFIG_SYS_NS16550=y
+CONFIG_SYSRESET=y
 CONFIG_USE_TINY_PRINTF=y
 CONFIG_ERRNO_STR=y
diff --git a/configs/fennec-rk3288_defconfig b/configs/fennec-rk3288_defconfig
index bcd6ebf..a5c089b 100644
--- a/configs/fennec-rk3288_defconfig
+++ b/configs/fennec-rk3288_defconfig
@@ -33,12 +33,11 @@  CONFIG_REGMAP=y
 CONFIG_SPL_REGMAP=y
 CONFIG_SYSCON=y
 CONFIG_SPL_SYSCON=y
+# CONFIG_SPL_SIMPLE_BUS is not set
 CONFIG_CLK=y
 CONFIG_SPL_CLK=y
 CONFIG_ROCKCHIP_GPIO=y
 CONFIG_SYS_I2C_ROCKCHIP=y
-CONFIG_SYSRESET=y
-CONFIG_DM_MMC=y
 CONFIG_ROCKCHIP_DWMMC=y
 CONFIG_PINCTRL=y
 # CONFIG_PINCTRL_FULL is not set
@@ -48,8 +47,8 @@  CONFIG_ROCKCHIP_RK3288_PINCTRL=y
 CONFIG_DM_PMIC=y
 CONFIG_PMIC_RK808=y
 CONFIG_DM_REGULATOR=y
-CONFIG_REGULATOR_RK808=y
 CONFIG_DM_REGULATOR_FIXED=y
+CONFIG_REGULATOR_RK808=y
 CONFIG_DM_PWM=y
 CONFIG_PWM_ROCKCHIP=y
 CONFIG_RAM=y
@@ -59,8 +58,7 @@  CONFIG_DEBUG_UART_BASE=0xff690000
 CONFIG_DEBUG_UART_CLOCK=24000000
 CONFIG_DEBUG_UART_SHIFT=2
 CONFIG_SYS_NS16550=y
-CONFIG_USE_PRIVATE_LIBGCC=y
+CONFIG_SYSRESET=y
 CONFIG_USE_TINY_PRINTF=y
 CONFIG_CMD_DHRYSTONE=y
 CONFIG_ERRNO_STR=y
-# CONFIG_SPL_SIMPLE_BUS is not set
diff --git a/configs/firefly-rk3288_defconfig b/configs/firefly-rk3288_defconfig
index 4122000..ba461b9 100644
--- a/configs/firefly-rk3288_defconfig
+++ b/configs/firefly-rk3288_defconfig
@@ -29,6 +29,7 @@  CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_SPL_OF_CONTROL=y
 CONFIG_OF_SPL_REMOVE_PROPS="pinctrl-0 pinctrl-names clock-names interrupt-parent assigned-clocks assigned-clock-rates assigned-clock-parents"
+CONFIG_SPL_OF_PLATDATA=y
 CONFIG_REGMAP=y
 CONFIG_SPL_REGMAP=y
 CONFIG_SYSCON=y
@@ -40,8 +41,6 @@  CONFIG_ROCKCHIP_GPIO=y
 CONFIG_SYS_I2C_ROCKCHIP=y
 CONFIG_LED=y
 CONFIG_LED_GPIO=y
-CONFIG_SYSRESET=y
-CONFIG_DM_MMC=y
 CONFIG_ROCKCHIP_DWMMC=y
 CONFIG_PINCTRL=y
 CONFIG_SPL_PINCTRL=y
@@ -62,13 +61,12 @@  CONFIG_DEBUG_UART_BASE=0xff690000
 CONFIG_DEBUG_UART_CLOCK=24000000
 CONFIG_DEBUG_UART_SHIFT=2
 CONFIG_SYS_NS16550=y
+CONFIG_ROCKCHIP_SERIAL=y
+CONFIG_SYSRESET=y
 CONFIG_DM_VIDEO=y
 CONFIG_DISPLAY=y
 CONFIG_VIDEO_ROCKCHIP=y
-CONFIG_USE_PRIVATE_LIBGCC=y
 CONFIG_USE_TINY_PRINTF=y
 CONFIG_CMD_DHRYSTONE=y
 CONFIG_ERRNO_STR=y
-CONFIG_SPL_OF_PLATDATA=y
 # CONFIG_SPL_OF_LIBFDT is not set
-CONFIG_ROCKCHIP_SERIAL=y
diff --git a/configs/gose_defconfig b/configs/gose_defconfig
index 461f235..13af23d 100644
--- a/configs/gose_defconfig
+++ b/configs/gose_defconfig
@@ -2,10 +2,10 @@  CONFIG_ARM=y
 CONFIG_ARCH_RMOBILE=y
 CONFIG_SYS_MALLOC_F_LEN=0x2000
 CONFIG_TARGET_GOSE=y
-CONFIG_BOOTDELAY=3
 CONFIG_BOOTSTAGE_USER_COUNT=0x20
 CONFIG_BOOTSTAGE_STASH_ADDR=0x0
 CONFIG_BOOTSTAGE_STASH_SIZE=0x4096
+CONFIG_BOOTDELAY=3
 CONFIG_CMD_BOOTZ=y
 # CONFIG_CMD_IMI is not set
 # CONFIG_CMD_IMLS is not set
diff --git a/configs/gwventana_defconfig b/configs/gwventana_defconfig
index e9449fa..653bf85 100644
--- a/configs/gwventana_defconfig
+++ b/configs/gwventana_defconfig
@@ -1,7 +1,6 @@ 
 CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
 CONFIG_TARGET_GW_VENTANA=y
-CONFIG_DM_SERIAL=y
 CONFIG_SPL_STACK_R_ADDR=0x18000000
 CONFIG_SPL=y
 CONFIG_SPL_STACK_R=y
@@ -33,6 +32,7 @@  CONFIG_CMD_FS_GENERIC=y
 CONFIG_DM=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
+CONFIG_DM_SERIAL=y
 CONFIG_USB=y
 CONFIG_USB_GADGET=y
 CONFIG_CI_UDC=y
diff --git a/configs/h8_homlet_v2_defconfig b/configs/h8_homlet_v2_defconfig
index e04d96b..c4bd2c5 100644
--- a/configs/h8_homlet_v2_defconfig
+++ b/configs/h8_homlet_v2_defconfig
@@ -4,7 +4,6 @@  CONFIG_MACH_SUN8I_A83T=y
 CONFIG_DRAM_CLK=480
 CONFIG_DRAM_ZQ=15355
 CONFIG_DRAM_ODT_EN=y
-CONFIG_MMC0_CD_PIN="PF6"
 CONFIG_USB0_VBUS_PIN="PL5"
 CONFIG_USB1_VBUS_PIN="PL6"
 CONFIG_AXP_GPIO=y
diff --git a/configs/harmony_defconfig b/configs/harmony_defconfig
index e0b9559..ccfa3d1 100644
--- a/configs/harmony_defconfig
+++ b/configs/harmony_defconfig
@@ -1,6 +1,5 @@ 
 CONFIG_ARM=y
 CONFIG_TEGRA=y
-CONFIG_SPL_DM=y
 CONFIG_TEGRA20=y
 CONFIG_TARGET_HARMONY=y
 CONFIG_DEFAULT_DEVICE_TREE="tegra20-harmony"
@@ -27,6 +26,7 @@  CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_SPL_DM=y
 CONFIG_DM_PMIC=y
 CONFIG_DM_REGULATOR=y
 CONFIG_DM_REGULATOR_FIXED=y
@@ -38,4 +38,3 @@  CONFIG_USB_ULPI_VIEWPORT=y
 CONFIG_USB_ULPI=y
 CONFIG_DM_VIDEO=y
 CONFIG_VIDEO_TEGRA20=y
-CONFIG_USE_PRIVATE_LIBGCC=y
diff --git a/configs/hikey_defconfig b/configs/hikey_defconfig
index d150dd3..ba0a37e 100644
--- a/configs/hikey_defconfig
+++ b/configs/hikey_defconfig
@@ -1,5 +1,6 @@ 
 CONFIG_ARM=y
 CONFIG_SYS_MALLOC_F_LEN=0x2000
+CONFIG_DEFAULT_DEVICE_TREE="hi6220-hikey"
 CONFIG_HUSH_PARSER=y
 # CONFIG_CMD_IMLS is not set
 CONFIG_CMD_MMC=y
@@ -13,5 +14,3 @@  CONFIG_CMD_EXT2=y
 CONFIG_CMD_EXT4=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
-CONFIG_OF_LIBFDT=y
-CONFIG_DEFAULT_DEVICE_TREE="hi6220-hikey"
diff --git a/configs/iNet_D978_rev2_defconfig b/configs/iNet_D978_rev2_defconfig
index d87a61c..554f5d5 100644
--- a/configs/iNet_D978_rev2_defconfig
+++ b/configs/iNet_D978_rev2_defconfig
@@ -21,6 +21,6 @@  CONFIG_SYS_EXTRA_OPTIONS="CONS_INDEX=5"
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
-# CONFIG_REQUIRE_SERIAL_CONSOLE is not set
 CONFIG_AXP_DLDO1_VOLT=3300
+# CONFIG_REQUIRE_SERIAL_CONSOLE is not set
 CONFIG_USB_MUSB_HOST=y
diff --git a/configs/igep0020_defconfig b/configs/igep0020_defconfig
index 649dd47..13dbb0a 100644
--- a/configs/igep0020_defconfig
+++ b/configs/igep0020_defconfig
@@ -25,5 +25,4 @@  CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_SYS_NS16550=y
-CONFIG_USE_TINY_PRINTF=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/inet_q972_defconfig b/configs/inet_q972_defconfig
index fdbbd6a..dcaaae4 100644
--- a/configs/inet_q972_defconfig
+++ b/configs/inet_q972_defconfig
@@ -19,5 +19,5 @@  CONFIG_SPL=y
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
 CONFIG_AXP_DLDO1_VOLT=3300
-CONFIG_USB_MUSB_HOST=y
 CONFIG_USB_EHCI_HCD=y
+CONFIG_USB_MUSB_HOST=y
diff --git a/configs/jetson-tk1_defconfig b/configs/jetson-tk1_defconfig
index 7b04a0c..6132e20 100644
--- a/configs/jetson-tk1_defconfig
+++ b/configs/jetson-tk1_defconfig
@@ -1,6 +1,5 @@ 
 CONFIG_ARM=y
 CONFIG_TEGRA=y
-CONFIG_SPL_DM=y
 CONFIG_TEGRA124=y
 CONFIG_TARGET_JETSON_TK1=y
 CONFIG_DEFAULT_DEVICE_TREE="tegra124-jetson-tk1"
@@ -30,6 +29,7 @@  CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_SPL_DM=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_WINBOND=y
 CONFIG_RTL8169=y
@@ -44,4 +44,3 @@  CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_G_DNL_MANUFACTURER="NVIDIA"
 CONFIG_G_DNL_VENDOR_NUM=0x0955
 CONFIG_G_DNL_PRODUCT_NUM=0x701a
-CONFIG_USE_PRIVATE_LIBGCC=y
diff --git a/configs/k2e_evm_defconfig b/configs/k2e_evm_defconfig
index 04c52f0..b9096c2 100644
--- a/configs/k2e_evm_defconfig
+++ b/configs/k2e_evm_defconfig
@@ -1,7 +1,6 @@ 
 CONFIG_ARM=y
 CONFIG_ARCH_KEYSTONE=y
 CONFIG_TARGET_K2E_EVM=y
-CONFIG_DM_SERIAL=y
 CONFIG_DEFAULT_DEVICE_TREE="k2e-evm"
 CONFIG_SPL=y
 CONFIG_OF_BOARD_SETUP=y
@@ -26,16 +25,16 @@  CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_OF_CONTROL=y
+CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
 CONFIG_TI_AEMIF=y
-CONFIG_DM_SPI=y
 CONFIG_DM_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_DM_ETH=y
+CONFIG_DM_SERIAL=y
 CONFIG_SYS_NS16550=y
+CONFIG_DM_SPI=y
 CONFIG_USB=y
 CONFIG_USB_XHCI_HCD=y
 CONFIG_USB_XHCI_DWC3=y
-CONFIG_LIB_RAND=y
-CONFIG_NET_RANDOM_ETHADDR=y
diff --git a/configs/k2g_evm_defconfig b/configs/k2g_evm_defconfig
index 825de72..f15e026 100644
--- a/configs/k2g_evm_defconfig
+++ b/configs/k2g_evm_defconfig
@@ -1,7 +1,6 @@ 
 CONFIG_ARM=y
 CONFIG_ARCH_KEYSTONE=y
 CONFIG_TARGET_K2G_EVM=y
-CONFIG_DM_SERIAL=y
 CONFIG_DEFAULT_DEVICE_TREE="k2g-evm"
 CONFIG_SPL=y
 CONFIG_OF_BOARD_SETUP=y
@@ -27,16 +26,17 @@  CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_OF_CONTROL=y
 CONFIG_DM=y
-CONFIG_DM_SPI=y
+CONFIG_DM_MMC=y
 CONFIG_DM_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
+CONFIG_SPI_FLASH_BAR=y
+CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_DM_ETH=y
-CONFIG_DM_MMC=y
 CONFIG_REMOTEPROC_TI_POWER=y
+CONFIG_DM_SERIAL=y
 CONFIG_SYS_NS16550=y
+CONFIG_DM_SPI=y
 CONFIG_USB=y
 CONFIG_USB_XHCI_HCD=y
 CONFIG_USB_XHCI_DWC3=y
-CONFIG_SPI_FLASH_SPANSION=y
-CONFIG_SPI_FLASH_BAR=y
diff --git a/configs/k2hk_evm_defconfig b/configs/k2hk_evm_defconfig
index c050f07..5cf3fac 100644
--- a/configs/k2hk_evm_defconfig
+++ b/configs/k2hk_evm_defconfig
@@ -1,7 +1,6 @@ 
 CONFIG_ARM=y
 CONFIG_ARCH_KEYSTONE=y
 CONFIG_TARGET_K2HK_EVM=y
-CONFIG_DM_SERIAL=y
 CONFIG_DEFAULT_DEVICE_TREE="k2hk-evm"
 CONFIG_SPL=y
 CONFIG_OF_BOARD_SETUP=y
@@ -26,16 +25,16 @@  CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_OF_CONTROL=y
+CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
 CONFIG_TI_AEMIF=y
-CONFIG_DM_SPI=y
 CONFIG_DM_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_DM_ETH=y
+CONFIG_DM_SERIAL=y
 CONFIG_SYS_NS16550=y
+CONFIG_DM_SPI=y
 CONFIG_USB=y
 CONFIG_USB_XHCI_HCD=y
 CONFIG_USB_XHCI_DWC3=y
-CONFIG_LIB_RAND=y
-CONFIG_NET_RANDOM_ETHADDR=y
diff --git a/configs/k2l_evm_defconfig b/configs/k2l_evm_defconfig
index e1386f7..2e9a21a 100644
--- a/configs/k2l_evm_defconfig
+++ b/configs/k2l_evm_defconfig
@@ -1,7 +1,6 @@ 
 CONFIG_ARM=y
 CONFIG_ARCH_KEYSTONE=y
 CONFIG_TARGET_K2L_EVM=y
-CONFIG_DM_SERIAL=y
 CONFIG_DEFAULT_DEVICE_TREE="k2l-evm"
 CONFIG_SPL=y
 CONFIG_OF_BOARD_SETUP=y
@@ -26,16 +25,16 @@  CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_OF_CONTROL=y
+CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
 CONFIG_TI_AEMIF=y
-CONFIG_DM_SPI=y
 CONFIG_DM_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_DM_ETH=y
+CONFIG_DM_SERIAL=y
 CONFIG_SYS_NS16550=y
+CONFIG_DM_SPI=y
 CONFIG_USB=y
 CONFIG_USB_XHCI_HCD=y
 CONFIG_USB_XHCI_DWC3=y
-CONFIG_LIB_RAND=y
-CONFIG_NET_RANDOM_ETHADDR=y
diff --git a/configs/koelsch_defconfig b/configs/koelsch_defconfig
index 665a432..7a70a1b 100644
--- a/configs/koelsch_defconfig
+++ b/configs/koelsch_defconfig
@@ -2,10 +2,10 @@  CONFIG_ARM=y
 CONFIG_ARCH_RMOBILE=y
 CONFIG_SYS_MALLOC_F_LEN=0x2000
 CONFIG_TARGET_KOELSCH=y
-CONFIG_BOOTDELAY=3
 CONFIG_BOOTSTAGE_USER_COUNT=0x20
 CONFIG_BOOTSTAGE_STASH_ADDR=0x0
 CONFIG_BOOTSTAGE_STASH_SIZE=0x4096
+CONFIG_BOOTDELAY=3
 CONFIG_CMD_BOOTZ=y
 # CONFIG_CMD_IMI is not set
 # CONFIG_CMD_IMLS is not set
diff --git a/configs/kylin-rk3036_defconfig b/configs/kylin-rk3036_defconfig
index 51196aa..d8b1eed 100644
--- a/configs/kylin-rk3036_defconfig
+++ b/configs/kylin-rk3036_defconfig
@@ -28,12 +28,10 @@  CONFIG_CLK=y
 CONFIG_ROCKCHIP_GPIO=y
 CONFIG_SYS_I2C_ROCKCHIP=y
 CONFIG_LED=y
-CONFIG_SYSRESET=y
-CONFIG_DM_MMC=y
 CONFIG_ROCKCHIP_DWMMC=y
 CONFIG_PINCTRL=y
 CONFIG_ROCKCHIP_RK3036_PINCTRL=y
 CONFIG_RAM=y
-CONFIG_USE_PRIVATE_LIBGCC=y
+CONFIG_SYSRESET=y
 CONFIG_CMD_DHRYSTONE=y
 CONFIG_ERRNO_STR=y
diff --git a/configs/lager_defconfig b/configs/lager_defconfig
index 9bc893a..0dc1870 100644
--- a/configs/lager_defconfig
+++ b/configs/lager_defconfig
@@ -2,10 +2,10 @@  CONFIG_ARM=y
 CONFIG_ARCH_RMOBILE=y
 CONFIG_SYS_MALLOC_F_LEN=0x2000
 CONFIG_TARGET_LAGER=y
-CONFIG_BOOTDELAY=3
 CONFIG_BOOTSTAGE_USER_COUNT=0x20
 CONFIG_BOOTSTAGE_STASH_ADDR=0x0
 CONFIG_BOOTSTAGE_STASH_SIZE=0x4096
+CONFIG_BOOTDELAY=3
 CONFIG_CMD_BOOTZ=y
 # CONFIG_CMD_IMI is not set
 # CONFIG_CMD_IMLS is not set
diff --git a/configs/ls1012afrdm_qspi_defconfig b/configs/ls1012afrdm_qspi_defconfig
index 1d8e28b..b03a15b 100644
--- a/configs/ls1012afrdm_qspi_defconfig
+++ b/configs/ls1012afrdm_qspi_defconfig
@@ -1,9 +1,7 @@ 
 CONFIG_ARM=y
 CONFIG_TARGET_LS1012AFRDM=y
-# CONFIG_SYS_MALLOC_F is not set
-CONFIG_DM_SPI=y
-CONFIG_DM_SPI_FLASH=y
 CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1012a-frdm"
+# CONFIG_SYS_MALLOC_F is not set
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
 CONFIG_OF_BOARD_SETUP=y
@@ -26,9 +24,11 @@  CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
+CONFIG_DM_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_NETDEVICES=y
 CONFIG_SYS_NS16550=y
+CONFIG_DM_SPI=y
 CONFIG_USB=y
 CONFIG_USB_XHCI_HCD=y
 CONFIG_USB_XHCI_DWC3=y
diff --git a/configs/ls1012aqds_qspi_defconfig b/configs/ls1012aqds_qspi_defconfig
index bbfb118..6a1ff2e 100644
--- a/configs/ls1012aqds_qspi_defconfig
+++ b/configs/ls1012aqds_qspi_defconfig
@@ -1,9 +1,7 @@ 
 CONFIG_ARM=y
 CONFIG_TARGET_LS1012AQDS=y
-# CONFIG_SYS_MALLOC_F is not set
-CONFIG_DM_SPI=y
-CONFIG_DM_SPI_FLASH=y
 CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1012a-qds"
+# CONFIG_SYS_MALLOC_F is not set
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
 CONFIG_OF_BOARD_SETUP=y
@@ -27,10 +25,12 @@  CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
+CONFIG_DM_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
+CONFIG_DM_SPI=y
 CONFIG_FSL_DSPI=y
 CONFIG_USB=y
 CONFIG_USB_XHCI_HCD=y
diff --git a/configs/ls1012ardb_qspi_defconfig b/configs/ls1012ardb_qspi_defconfig
index b418d5c..76413e6 100644
--- a/configs/ls1012ardb_qspi_defconfig
+++ b/configs/ls1012ardb_qspi_defconfig
@@ -1,9 +1,7 @@ 
 CONFIG_ARM=y
 CONFIG_TARGET_LS1012ARDB=y
-# CONFIG_SYS_MALLOC_F is not set
-CONFIG_DM_SPI=y
-CONFIG_DM_SPI_FLASH=y
 CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1012a-rdb"
+# CONFIG_SYS_MALLOC_F is not set
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
 CONFIG_OF_BOARD_SETUP=y
@@ -27,10 +25,12 @@  CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
+CONFIG_DM_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
+CONFIG_DM_SPI=y
 CONFIG_FSL_DSPI=y
 CONFIG_USB=y
 CONFIG_USB_XHCI_HCD=y
diff --git a/configs/ls1021aqds_ddr4_nor_defconfig b/configs/ls1021aqds_ddr4_nor_defconfig
index ffaf6fd..5a797b2 100644
--- a/configs/ls1021aqds_ddr4_nor_defconfig
+++ b/configs/ls1021aqds_ddr4_nor_defconfig
@@ -1,6 +1,5 @@ 
 CONFIG_ARM=y
 CONFIG_TARGET_LS1021AQDS=y
-CONFIG_DM_SERIAL=y
 CONFIG_DEFAULT_DEVICE_TREE="ls1021a-qds-duart"
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
@@ -26,8 +25,9 @@  CONFIG_OF_CONTROL=y
 CONFIG_DM=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
+CONFIG_DM_SERIAL=y
 CONFIG_SYS_NS16550=y
 CONFIG_USB=y
+CONFIG_DM_USB=y
 CONFIG_USB_XHCI_HCD=y
 CONFIG_USB_XHCI_DWC3=y
-CONFIG_DM_USB=y
diff --git a/configs/ls1021aqds_ddr4_nor_lpuart_defconfig b/configs/ls1021aqds_ddr4_nor_lpuart_defconfig
index a7c3253..3c78eef 100644
--- a/configs/ls1021aqds_ddr4_nor_lpuart_defconfig
+++ b/configs/ls1021aqds_ddr4_nor_lpuart_defconfig
@@ -1,6 +1,5 @@ 
 CONFIG_ARM=y
 CONFIG_TARGET_LS1021AQDS=y
-CONFIG_DM_SERIAL=y
 CONFIG_DEFAULT_DEVICE_TREE="ls1021a-qds-lpuart"
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
@@ -26,8 +25,9 @@  CONFIG_OF_CONTROL=y
 CONFIG_DM=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
+CONFIG_DM_SERIAL=y
 CONFIG_FSL_LPUART=y
 CONFIG_USB=y
+CONFIG_DM_USB=y
 CONFIG_USB_XHCI_HCD=y
 CONFIG_USB_XHCI_DWC3=y
-CONFIG_DM_USB=y
diff --git a/configs/ls1021aqds_nor_defconfig b/configs/ls1021aqds_nor_defconfig
index 7a82c67..d72c8e8 100644
--- a/configs/ls1021aqds_nor_defconfig
+++ b/configs/ls1021aqds_nor_defconfig
@@ -1,6 +1,5 @@ 
 CONFIG_ARM=y
 CONFIG_TARGET_LS1021AQDS=y
-CONFIG_DM_SERIAL=y
 CONFIG_DEFAULT_DEVICE_TREE="ls1021a-qds-duart"
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
@@ -25,8 +24,9 @@  CONFIG_OF_CONTROL=y
 CONFIG_DM=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
+CONFIG_DM_SERIAL=y
 CONFIG_SYS_NS16550=y
 CONFIG_USB=y
+CONFIG_DM_USB=y
 CONFIG_USB_XHCI_HCD=y
 CONFIG_USB_XHCI_DWC3=y
-CONFIG_DM_USB=y
diff --git a/configs/ls1021aqds_nor_lpuart_defconfig b/configs/ls1021aqds_nor_lpuart_defconfig
index 30c65ca..8ad25a8 100644
--- a/configs/ls1021aqds_nor_lpuart_defconfig
+++ b/configs/ls1021aqds_nor_lpuart_defconfig
@@ -1,6 +1,5 @@ 
 CONFIG_ARM=y
 CONFIG_TARGET_LS1021AQDS=y
-CONFIG_DM_SERIAL=y
 CONFIG_DEFAULT_DEVICE_TREE="ls1021a-qds-lpuart"
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
@@ -26,8 +25,9 @@  CONFIG_OF_CONTROL=y
 CONFIG_DM=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
+CONFIG_DM_SERIAL=y
 CONFIG_FSL_LPUART=y
 CONFIG_USB=y
+CONFIG_DM_USB=y
 CONFIG_USB_XHCI_HCD=y
 CONFIG_USB_XHCI_DWC3=y
-CONFIG_DM_USB=y
diff --git a/configs/ls1021aqds_qspi_defconfig b/configs/ls1021aqds_qspi_defconfig
index 284cc07..b4ea858 100644
--- a/configs/ls1021aqds_qspi_defconfig
+++ b/configs/ls1021aqds_qspi_defconfig
@@ -1,6 +1,5 @@ 
 CONFIG_ARM=y
 CONFIG_TARGET_LS1021AQDS=y
-CONFIG_DM_SPI=y
 CONFIG_DEFAULT_DEVICE_TREE="ls1021a-qds-duart"
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
@@ -32,6 +31,7 @@  CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
+CONFIG_DM_SPI=y
 CONFIG_FSL_DSPI=y
 CONFIG_FSL_QSPI=y
 CONFIG_USB=y
diff --git a/configs/ls1021aqds_sdcard_qspi_defconfig b/configs/ls1021aqds_sdcard_qspi_defconfig
index e3abe36..3dbb069 100644
--- a/configs/ls1021aqds_sdcard_qspi_defconfig
+++ b/configs/ls1021aqds_sdcard_qspi_defconfig
@@ -1,6 +1,5 @@ 
 CONFIG_ARM=y
 CONFIG_TARGET_LS1021AQDS=y
-CONFIG_DM_SPI=y
 CONFIG_DEFAULT_DEVICE_TREE="ls1021a-qds-duart"
 CONFIG_SPL=y
 CONFIG_FIT=y
@@ -31,6 +30,7 @@  CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
+CONFIG_DM_SPI=y
 CONFIG_FSL_DSPI=y
 CONFIG_FSL_QSPI=y
 CONFIG_USB=y
diff --git a/configs/ls1021atwr_nor_defconfig b/configs/ls1021atwr_nor_defconfig
index a6be6c6..1c094df 100644
--- a/configs/ls1021atwr_nor_defconfig
+++ b/configs/ls1021atwr_nor_defconfig
@@ -1,6 +1,5 @@ 
 CONFIG_ARM=y
 CONFIG_TARGET_LS1021ATWR=y
-CONFIG_DM_SERIAL=y
 CONFIG_DEFAULT_DEVICE_TREE="ls1021a-twr-duart"
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
@@ -25,6 +24,7 @@  CONFIG_OF_CONTROL=y
 CONFIG_DM=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
+CONFIG_DM_SERIAL=y
 CONFIG_SYS_NS16550=y
 CONFIG_USB=y
 CONFIG_USB_XHCI_HCD=y
diff --git a/configs/ls1021atwr_nor_lpuart_defconfig b/configs/ls1021atwr_nor_lpuart_defconfig
index 3b6c5cf..4f59722 100644
--- a/configs/ls1021atwr_nor_lpuart_defconfig
+++ b/configs/ls1021atwr_nor_lpuart_defconfig
@@ -1,6 +1,5 @@ 
 CONFIG_ARM=y
 CONFIG_TARGET_LS1021ATWR=y
-CONFIG_DM_SERIAL=y
 CONFIG_DEFAULT_DEVICE_TREE="ls1021a-twr-lpuart"
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
@@ -26,6 +25,7 @@  CONFIG_OF_CONTROL=y
 CONFIG_DM=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
+CONFIG_DM_SERIAL=y
 CONFIG_FSL_LPUART=y
 CONFIG_USB=y
 CONFIG_USB_XHCI_HCD=y
diff --git a/configs/ls1021atwr_qspi_defconfig b/configs/ls1021atwr_qspi_defconfig
index 7e440b2..4a8c00d 100644
--- a/configs/ls1021atwr_qspi_defconfig
+++ b/configs/ls1021atwr_qspi_defconfig
@@ -1,6 +1,5 @@ 
 CONFIG_ARM=y
 CONFIG_TARGET_LS1021ATWR=y
-CONFIG_DM_SPI=y
 CONFIG_DEFAULT_DEVICE_TREE="ls1021a-twr-duart"
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
@@ -33,6 +32,7 @@  CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
+CONFIG_DM_SPI=y
 CONFIG_FSL_DSPI=y
 CONFIG_FSL_QSPI=y
 CONFIG_USB=y
diff --git a/configs/ls1021atwr_sdcard_ifc_SECURE_BOOT_defconfig b/configs/ls1021atwr_sdcard_ifc_SECURE_BOOT_defconfig
index c735d6d..b53c360 100644
--- a/configs/ls1021atwr_sdcard_ifc_SECURE_BOOT_defconfig
+++ b/configs/ls1021atwr_sdcard_ifc_SECURE_BOOT_defconfig
@@ -1,6 +1,8 @@ 
 CONFIG_ARM=y
 CONFIG_TARGET_LS1021ATWR=y
 CONFIG_SPL=y
+CONFIG_FIT=y
+CONFIG_FIT_VERBOSE=y
 CONFIG_OF_BOARD_SETUP=y
 CONFIG_OF_STDOUT_VIA_ALIAS=y
 CONFIG_SYS_EXTRA_OPTIONS="RAMBOOT_PBL,SPL_FSL_PBL,SD_BOOT,SECURE_BOOT"
@@ -18,14 +20,12 @@  CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_DM=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
 CONFIG_USB=y
 CONFIG_USB_XHCI_HCD=y
 CONFIG_USB_XHCI_DWC3=y
-CONFIG_OF_LIBFDT=y
-CONFIG_FIT=y
-CONFIG_FIT_VERBOSE=y
 CONFIG_RSA=y
-CONFIG_DM=y
+CONFIG_OF_LIBFDT=y
diff --git a/configs/ls1021atwr_sdcard_qspi_defconfig b/configs/ls1021atwr_sdcard_qspi_defconfig
index 6cf4dbc..852d820 100644
--- a/configs/ls1021atwr_sdcard_qspi_defconfig
+++ b/configs/ls1021atwr_sdcard_qspi_defconfig
@@ -1,6 +1,5 @@ 
 CONFIG_ARM=y
 CONFIG_TARGET_LS1021ATWR=y
-CONFIG_DM_SPI=y
 CONFIG_DEFAULT_DEVICE_TREE="ls1021a-twr-duart"
 CONFIG_SPL=y
 CONFIG_FIT=y
@@ -33,6 +32,7 @@  CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
+CONFIG_DM_SPI=y
 CONFIG_FSL_DSPI=y
 CONFIG_FSL_QSPI=y
 CONFIG_USB=y
diff --git a/configs/ls1043aqds_defconfig b/configs/ls1043aqds_defconfig
index 8dfad69..7d0a77a 100644
--- a/configs/ls1043aqds_defconfig
+++ b/configs/ls1043aqds_defconfig
@@ -1,6 +1,5 @@ 
 CONFIG_ARM=y
 CONFIG_TARGET_LS1043AQDS=y
-CONFIG_DM_SPI=y
 CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1043a-qds-duart"
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
@@ -26,6 +25,7 @@  CONFIG_OF_CONTROL=y
 CONFIG_DM=y
 CONFIG_SPI_FLASH=y
 CONFIG_SYS_NS16550=y
+CONFIG_DM_SPI=y
 CONFIG_USB=y
 CONFIG_USB_XHCI_HCD=y
 CONFIG_USB_XHCI_DWC3=y
diff --git a/configs/ls1043aqds_lpuart_defconfig b/configs/ls1043aqds_lpuart_defconfig
index 56f5efe..8313009 100644
--- a/configs/ls1043aqds_lpuart_defconfig
+++ b/configs/ls1043aqds_lpuart_defconfig
@@ -1,7 +1,5 @@ 
 CONFIG_ARM=y
 CONFIG_TARGET_LS1043AQDS=y
-CONFIG_DM_SERIAL=y
-CONFIG_DM_SPI=y
 CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1043a-qds-lpuart"
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
@@ -26,7 +24,9 @@  CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
 CONFIG_DM=y
 CONFIG_SPI_FLASH=y
+CONFIG_DM_SERIAL=y
 CONFIG_FSL_LPUART=y
+CONFIG_DM_SPI=y
 CONFIG_USB=y
 CONFIG_USB_XHCI_HCD=y
 CONFIG_USB_XHCI_DWC3=y
diff --git a/configs/ls1043aqds_nand_defconfig b/configs/ls1043aqds_nand_defconfig
index 3a95124..48c07ff 100644
--- a/configs/ls1043aqds_nand_defconfig
+++ b/configs/ls1043aqds_nand_defconfig
@@ -1,6 +1,5 @@ 
 CONFIG_ARM=y
 CONFIG_TARGET_LS1043AQDS=y
-CONFIG_DM_SPI=y
 CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1043a-qds-duart"
 CONFIG_SPL=y
 CONFIG_FIT=y
@@ -28,6 +27,7 @@  CONFIG_OF_CONTROL=y
 CONFIG_DM=y
 CONFIG_SPI_FLASH=y
 CONFIG_SYS_NS16550=y
+CONFIG_DM_SPI=y
 CONFIG_USB=y
 CONFIG_USB_XHCI_HCD=y
 CONFIG_USB_XHCI_DWC3=y
diff --git a/configs/ls1043aqds_nor_ddr3_defconfig b/configs/ls1043aqds_nor_ddr3_defconfig
index 7c78b6e..090b403 100644
--- a/configs/ls1043aqds_nor_ddr3_defconfig
+++ b/configs/ls1043aqds_nor_ddr3_defconfig
@@ -1,6 +1,5 @@ 
 CONFIG_ARM=y
 CONFIG_TARGET_LS1043AQDS=y
-CONFIG_DM_SPI=y
 CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1043a-qds-duart"
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
@@ -25,6 +24,7 @@  CONFIG_OF_CONTROL=y
 CONFIG_DM=y
 CONFIG_SPI_FLASH=y
 CONFIG_SYS_NS16550=y
+CONFIG_DM_SPI=y
 CONFIG_USB=y
 CONFIG_USB_XHCI_HCD=y
 CONFIG_USB_XHCI_DWC3=y
diff --git a/configs/ls1043aqds_qspi_defconfig b/configs/ls1043aqds_qspi_defconfig
index cfc7310..2ab3f43 100644
--- a/configs/ls1043aqds_qspi_defconfig
+++ b/configs/ls1043aqds_qspi_defconfig
@@ -1,6 +1,5 @@ 
 CONFIG_ARM=y
 CONFIG_TARGET_LS1043AQDS=y
-CONFIG_DM_SPI=y
 CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1043a-qds-duart"
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
@@ -28,6 +27,7 @@  CONFIG_OF_CONTROL=y
 CONFIG_DM=y
 CONFIG_SPI_FLASH=y
 CONFIG_SYS_NS16550=y
+CONFIG_DM_SPI=y
 CONFIG_USB=y
 CONFIG_USB_XHCI_HCD=y
 CONFIG_USB_XHCI_DWC3=y
diff --git a/configs/ls1043aqds_sdcard_ifc_defconfig b/configs/ls1043aqds_sdcard_ifc_defconfig
index f4f464e..2e92dd4 100644
--- a/configs/ls1043aqds_sdcard_ifc_defconfig
+++ b/configs/ls1043aqds_sdcard_ifc_defconfig
@@ -1,6 +1,5 @@ 
 CONFIG_ARM=y
 CONFIG_TARGET_LS1043AQDS=y
-CONFIG_DM_SPI=y
 CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1043a-qds-duart"
 CONFIG_SPL=y
 CONFIG_FIT=y
@@ -28,6 +27,7 @@  CONFIG_OF_CONTROL=y
 CONFIG_DM=y
 CONFIG_SPI_FLASH=y
 CONFIG_SYS_NS16550=y
+CONFIG_DM_SPI=y
 CONFIG_USB=y
 CONFIG_USB_XHCI_HCD=y
 CONFIG_USB_XHCI_DWC3=y
diff --git a/configs/ls1043aqds_sdcard_qspi_defconfig b/configs/ls1043aqds_sdcard_qspi_defconfig
index 0a077a3..c2d46f4 100644
--- a/configs/ls1043aqds_sdcard_qspi_defconfig
+++ b/configs/ls1043aqds_sdcard_qspi_defconfig
@@ -1,6 +1,5 @@ 
 CONFIG_ARM=y
 CONFIG_TARGET_LS1043AQDS=y
-CONFIG_DM_SPI=y
 CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1043a-qds-duart"
 CONFIG_SPL=y
 CONFIG_FIT=y
@@ -29,6 +28,7 @@  CONFIG_OF_CONTROL=y
 CONFIG_DM=y
 CONFIG_SPI_FLASH=y
 CONFIG_SYS_NS16550=y
+CONFIG_DM_SPI=y
 CONFIG_USB=y
 CONFIG_USB_XHCI_HCD=y
 CONFIG_USB_XHCI_DWC3=y
diff --git a/configs/ls1043ardb_SECURE_BOOT_defconfig b/configs/ls1043ardb_SECURE_BOOT_defconfig
index 218dd76..e54330c 100644
--- a/configs/ls1043ardb_SECURE_BOOT_defconfig
+++ b/configs/ls1043ardb_SECURE_BOOT_defconfig
@@ -1,6 +1,5 @@ 
 CONFIG_ARM=y
 CONFIG_TARGET_LS1043ARDB=y
-CONFIG_DM_SPI=y
 CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1043a-rdb"
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
@@ -22,6 +21,7 @@  CONFIG_OF_CONTROL=y
 CONFIG_DM=y
 CONFIG_SPI_FLASH=y
 CONFIG_SYS_NS16550=y
+CONFIG_DM_SPI=y
 CONFIG_USB=y
 CONFIG_USB_XHCI_HCD=y
 CONFIG_USB_XHCI_DWC3=y
diff --git a/configs/ls1043ardb_defconfig b/configs/ls1043ardb_defconfig
index 983e4c2..2b9ddd6 100644
--- a/configs/ls1043ardb_defconfig
+++ b/configs/ls1043ardb_defconfig
@@ -1,6 +1,5 @@ 
 CONFIG_ARM=y
 CONFIG_TARGET_LS1043ARDB=y
-CONFIG_DM_SPI=y
 CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1043a-rdb"
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
@@ -22,6 +21,7 @@  CONFIG_OF_CONTROL=y
 CONFIG_DM=y
 CONFIG_SPI_FLASH=y
 CONFIG_SYS_NS16550=y
+CONFIG_DM_SPI=y
 CONFIG_USB=y
 CONFIG_USB_XHCI_HCD=y
 CONFIG_USB_XHCI_DWC3=y
diff --git a/configs/ls1043ardb_nand_defconfig b/configs/ls1043ardb_nand_defconfig
index dcf5de2..21e408f 100644
--- a/configs/ls1043ardb_nand_defconfig
+++ b/configs/ls1043ardb_nand_defconfig
@@ -1,6 +1,5 @@ 
 CONFIG_ARM=y
 CONFIG_TARGET_LS1043ARDB=y
-CONFIG_DM_SPI=y
 CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1043a-rdb"
 CONFIG_SPL=y
 CONFIG_FIT=y
@@ -24,6 +23,7 @@  CONFIG_OF_CONTROL=y
 CONFIG_DM=y
 CONFIG_SPI_FLASH=y
 CONFIG_SYS_NS16550=y
+CONFIG_DM_SPI=y
 CONFIG_USB=y
 CONFIG_USB_XHCI_HCD=y
 CONFIG_USB_XHCI_DWC3=y
diff --git a/configs/ls1043ardb_sdcard_defconfig b/configs/ls1043ardb_sdcard_defconfig
index 9fd0679..289751b 100644
--- a/configs/ls1043ardb_sdcard_defconfig
+++ b/configs/ls1043ardb_sdcard_defconfig
@@ -1,6 +1,5 @@ 
 CONFIG_ARM=y
 CONFIG_TARGET_LS1043ARDB=y
-CONFIG_DM_SPI=y
 CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1043a-rdb"
 CONFIG_SPL=y
 CONFIG_FIT=y
@@ -24,6 +23,7 @@  CONFIG_OF_CONTROL=y
 CONFIG_DM=y
 CONFIG_SPI_FLASH=y
 CONFIG_SYS_NS16550=y
+CONFIG_DM_SPI=y
 CONFIG_USB=y
 CONFIG_USB_XHCI_HCD=y
 CONFIG_USB_XHCI_DWC3=y
diff --git a/configs/ls2080aqds_SECURE_BOOT_defconfig b/configs/ls2080aqds_SECURE_BOOT_defconfig
index 947ac3d..ad09192 100644
--- a/configs/ls2080aqds_SECURE_BOOT_defconfig
+++ b/configs/ls2080aqds_SECURE_BOOT_defconfig
@@ -1,9 +1,7 @@ 
 CONFIG_ARM=y
 CONFIG_TARGET_LS2080AQDS=y
-# CONFIG_SYS_MALLOC_F is not set
-CONFIG_DM_SPI=y
-CONFIG_DM_SPI_FLASH=y
 CONFIG_DEFAULT_DEVICE_TREE="fsl-ls2080a-qds"
+# CONFIG_SYS_MALLOC_F is not set
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
 CONFIG_OF_BOARD_SETUP=y
@@ -26,9 +24,11 @@  CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
+CONFIG_DM_SPI_FLASH=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
+CONFIG_DM_SPI=y
 CONFIG_FSL_DSPI=y
 CONFIG_USB=y
 CONFIG_USB_XHCI_HCD=y
diff --git a/configs/ls2080aqds_defconfig b/configs/ls2080aqds_defconfig
index cd8a7bd..1ec9a93 100644
--- a/configs/ls2080aqds_defconfig
+++ b/configs/ls2080aqds_defconfig
@@ -1,9 +1,7 @@ 
 CONFIG_ARM=y
 CONFIG_TARGET_LS2080AQDS=y
-# CONFIG_SYS_MALLOC_F is not set
-CONFIG_DM_SPI=y
-CONFIG_DM_SPI_FLASH=y
 CONFIG_DEFAULT_DEVICE_TREE="fsl-ls2080a-qds"
+# CONFIG_SYS_MALLOC_F is not set
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
 CONFIG_OF_BOARD_SETUP=y
@@ -26,9 +24,11 @@  CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
+CONFIG_DM_SPI_FLASH=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
+CONFIG_DM_SPI=y
 CONFIG_FSL_DSPI=y
 CONFIG_USB=y
 CONFIG_USB_XHCI_HCD=y
diff --git a/configs/ls2080aqds_nand_defconfig b/configs/ls2080aqds_nand_defconfig
index ea3fd1e..fe57fc6 100644
--- a/configs/ls2080aqds_nand_defconfig
+++ b/configs/ls2080aqds_nand_defconfig
@@ -1,7 +1,5 @@ 
 CONFIG_ARM=y
 CONFIG_TARGET_LS2080AQDS=y
-CONFIG_DM_SPI=y
-CONFIG_DM_SPI_FLASH=y
 CONFIG_DEFAULT_DEVICE_TREE="fsl-ls2080a-qds"
 CONFIG_SPL=y
 CONFIG_FIT=y
@@ -27,9 +25,11 @@  CONFIG_OF_CONTROL=y
 CONFIG_OF_EMBED=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
+CONFIG_DM_SPI_FLASH=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
+CONFIG_DM_SPI=y
 CONFIG_FSL_QSPI=y
 CONFIG_USB=y
 CONFIG_USB_XHCI_HCD=y
diff --git a/configs/ls2080aqds_qspi_defconfig b/configs/ls2080aqds_qspi_defconfig
index 7826bbc..7ee3b99 100644
--- a/configs/ls2080aqds_qspi_defconfig
+++ b/configs/ls2080aqds_qspi_defconfig
@@ -1,7 +1,5 @@ 
 CONFIG_ARM=y
 CONFIG_TARGET_LS2080AQDS=y
-CONFIG_DM_SPI=y
-CONFIG_DM_SPI_FLASH=y
 CONFIG_DEFAULT_DEVICE_TREE="fsl-ls2080a-qds"
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
@@ -27,9 +25,11 @@  CONFIG_OF_CONTROL=y
 CONFIG_OF_EMBED=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
+CONFIG_DM_SPI_FLASH=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
+CONFIG_DM_SPI=y
 CONFIG_FSL_QSPI=y
 CONFIG_USB=y
 CONFIG_USB_XHCI_HCD=y
diff --git a/configs/ls2080ardb_SECURE_BOOT_defconfig b/configs/ls2080ardb_SECURE_BOOT_defconfig
index 8f98720..c4bf342 100644
--- a/configs/ls2080ardb_SECURE_BOOT_defconfig
+++ b/configs/ls2080ardb_SECURE_BOOT_defconfig
@@ -1,9 +1,7 @@ 
 CONFIG_ARM=y
 CONFIG_TARGET_LS2080ARDB=y
-# CONFIG_SYS_MALLOC_F is not set
-CONFIG_DM_SPI=y
-CONFIG_DM_SPI_FLASH=y
 CONFIG_DEFAULT_DEVICE_TREE="fsl-ls2080a-rdb"
+# CONFIG_SYS_MALLOC_F is not set
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
 CONFIG_OF_BOARD_SETUP=y
@@ -26,9 +24,11 @@  CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
+CONFIG_DM_SPI_FLASH=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
+CONFIG_DM_SPI=y
 CONFIG_FSL_DSPI=y
 CONFIG_USB=y
 CONFIG_USB_XHCI_HCD=y
diff --git a/configs/ls2080ardb_defconfig b/configs/ls2080ardb_defconfig
index c0b8a98..a222913 100644
--- a/configs/ls2080ardb_defconfig
+++ b/configs/ls2080ardb_defconfig
@@ -1,9 +1,7 @@ 
 CONFIG_ARM=y
 CONFIG_TARGET_LS2080ARDB=y
-# CONFIG_SYS_MALLOC_F is not set
-CONFIG_DM_SPI=y
-CONFIG_DM_SPI_FLASH=y
 CONFIG_DEFAULT_DEVICE_TREE="fsl-ls2080a-rdb"
+# CONFIG_SYS_MALLOC_F is not set
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
 CONFIG_OF_BOARD_SETUP=y
@@ -26,9 +24,11 @@  CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
+CONFIG_DM_SPI_FLASH=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
+CONFIG_DM_SPI=y
 CONFIG_FSL_DSPI=y
 CONFIG_USB=y
 CONFIG_USB_XHCI_HCD=y
diff --git a/configs/medcom-wide_defconfig b/configs/medcom-wide_defconfig
index 14cb53a..c3af351 100644
--- a/configs/medcom-wide_defconfig
+++ b/configs/medcom-wide_defconfig
@@ -1,6 +1,5 @@ 
 CONFIG_ARM=y
 CONFIG_TEGRA=y
-CONFIG_SPL_DM=y
 CONFIG_TEGRA20=y
 CONFIG_TARGET_MEDCOM_WIDE=y
 CONFIG_DEFAULT_DEVICE_TREE="tegra20-medcom-wide"
@@ -28,6 +27,7 @@  CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_SPL_DM=y
 CONFIG_DM_PMIC=y
 CONFIG_DM_REGULATOR=y
 CONFIG_DM_REGULATOR_FIXED=y
@@ -37,4 +37,3 @@  CONFIG_USB=y
 CONFIG_DM_USB=y
 CONFIG_DM_VIDEO=y
 CONFIG_VIDEO_TEGRA20=y
-CONFIG_USE_PRIVATE_LIBGCC=y
diff --git a/configs/miniarm-rk3288_defconfig b/configs/miniarm-rk3288_defconfig
index 33a4a56..6354d1a 100644
--- a/configs/miniarm-rk3288_defconfig
+++ b/configs/miniarm-rk3288_defconfig
@@ -38,8 +38,6 @@  CONFIG_CLK=y
 CONFIG_SPL_CLK=y
 CONFIG_ROCKCHIP_GPIO=y
 CONFIG_SYS_I2C_ROCKCHIP=y
-CONFIG_SYSRESET=y
-CONFIG_DM_MMC=y
 CONFIG_ROCKCHIP_DWMMC=y
 CONFIG_PINCTRL=y
 CONFIG_SPL_PINCTRL=y
@@ -48,8 +46,8 @@  CONFIG_ROCKCHIP_RK3288_PINCTRL=y
 CONFIG_DM_PMIC=y
 CONFIG_PMIC_RK808=y
 CONFIG_DM_REGULATOR=y
-CONFIG_REGULATOR_RK808=y
 CONFIG_DM_REGULATOR_FIXED=y
+CONFIG_REGULATOR_RK808=y
 CONFIG_DM_PWM=y
 CONFIG_PWM_ROCKCHIP=y
 CONFIG_RAM=y
@@ -59,7 +57,7 @@  CONFIG_DEBUG_UART_BASE=0xff690000
 CONFIG_DEBUG_UART_CLOCK=24000000
 CONFIG_DEBUG_UART_SHIFT=2
 CONFIG_SYS_NS16550=y
-CONFIG_USE_PRIVATE_LIBGCC=y
+CONFIG_SYSRESET=y
 CONFIG_USE_TINY_PRINTF=y
 CONFIG_CMD_DHRYSTONE=y
 CONFIG_ERRNO_STR=y
diff --git a/configs/mx7dsabresd_secure_defconfig b/configs/mx7dsabresd_secure_defconfig
index aa92a38..07849e9 100644
--- a/configs/mx7dsabresd_secure_defconfig
+++ b/configs/mx7dsabresd_secure_defconfig
@@ -1,6 +1,7 @@ 
 CONFIG_ARM=y
 CONFIG_ARCH_MX7=y
 CONFIG_TARGET_MX7DSABRESD=y
+CONFIG_ARMV7_BOOT_SEC_DEFAULT=y
 CONFIG_IMX_RDC=y
 CONFIG_IMX_BOOTAUX=y
 CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/freescale/mx7dsabresd/imximage.cfg"
@@ -38,4 +39,3 @@  CONFIG_G_DNL_MANUFACTURER="FSL"
 CONFIG_G_DNL_VENDOR_NUM=0x0525
 CONFIG_G_DNL_PRODUCT_NUM=0xa4a5
 CONFIG_OF_LIBFDT=y
-CONFIG_ARMV7_BOOT_SEC_DEFAULT=y
diff --git a/configs/nsim_700_defconfig b/configs/nsim_700_defconfig
index 202f77c..dab9bdf 100644
--- a/configs/nsim_700_defconfig
+++ b/configs/nsim_700_defconfig
@@ -1,7 +1,6 @@ 
 CONFIG_ARC=y
 CONFIG_TARGET_NSIM=y
 CONFIG_SYS_CLK_FREQ=70000000
-CONFIG_DM_SERIAL=y
 CONFIG_SYS_TEXT_BASE=0x81000000
 CONFIG_DEFAULT_DEVICE_TREE="nsim"
 CONFIG_BOOTDELAY=3
@@ -12,4 +11,5 @@  CONFIG_SYS_PROMPT="nsim# "
 CONFIG_OF_CONTROL=y
 CONFIG_OF_EMBED=y
 CONFIG_DM=y
+CONFIG_DM_SERIAL=y
 CONFIG_USE_PRIVATE_LIBGCC=y
diff --git a/configs/nsim_700be_defconfig b/configs/nsim_700be_defconfig
index b7f7924..6f0e348 100644
--- a/configs/nsim_700be_defconfig
+++ b/configs/nsim_700be_defconfig
@@ -2,7 +2,6 @@  CONFIG_ARC=y
 CONFIG_CPU_BIG_ENDIAN=y
 CONFIG_TARGET_NSIM=y
 CONFIG_SYS_CLK_FREQ=70000000
-CONFIG_DM_SERIAL=y
 CONFIG_SYS_TEXT_BASE=0x81000000
 CONFIG_DEFAULT_DEVICE_TREE="nsim"
 CONFIG_BOOTDELAY=3
@@ -13,4 +12,5 @@  CONFIG_SYS_PROMPT="nsim# "
 CONFIG_OF_CONTROL=y
 CONFIG_OF_EMBED=y
 CONFIG_DM=y
+CONFIG_DM_SERIAL=y
 CONFIG_USE_PRIVATE_LIBGCC=y
diff --git a/configs/nsim_hs38_defconfig b/configs/nsim_hs38_defconfig
index 6b448ef..e35fe23 100644
--- a/configs/nsim_hs38_defconfig
+++ b/configs/nsim_hs38_defconfig
@@ -2,7 +2,6 @@  CONFIG_ARC=y
 CONFIG_ISA_ARCV2=y
 CONFIG_TARGET_NSIM=y
 CONFIG_SYS_CLK_FREQ=70000000
-CONFIG_DM_SERIAL=y
 CONFIG_SYS_TEXT_BASE=0x81000000
 CONFIG_DEFAULT_DEVICE_TREE="nsim"
 CONFIG_BOOTDELAY=3
@@ -13,4 +12,5 @@  CONFIG_SYS_PROMPT="nsim# "
 CONFIG_OF_CONTROL=y
 CONFIG_OF_EMBED=y
 CONFIG_DM=y
+CONFIG_DM_SERIAL=y
 CONFIG_USE_PRIVATE_LIBGCC=y
diff --git a/configs/nsim_hs38be_defconfig b/configs/nsim_hs38be_defconfig
index 3e1c599..e0001b6 100644
--- a/configs/nsim_hs38be_defconfig
+++ b/configs/nsim_hs38be_defconfig
@@ -3,7 +3,6 @@  CONFIG_ISA_ARCV2=y
 CONFIG_CPU_BIG_ENDIAN=y
 CONFIG_TARGET_NSIM=y
 CONFIG_SYS_CLK_FREQ=70000000
-CONFIG_DM_SERIAL=y
 CONFIG_SYS_TEXT_BASE=0x81000000
 CONFIG_DEFAULT_DEVICE_TREE="nsim"
 CONFIG_BOOTDELAY=3
@@ -14,4 +13,5 @@  CONFIG_SYS_PROMPT="nsim# "
 CONFIG_OF_CONTROL=y
 CONFIG_OF_EMBED=y
 CONFIG_DM=y
+CONFIG_DM_SERIAL=y
 CONFIG_USE_PRIVATE_LIBGCC=y
diff --git a/configs/nyan-big_defconfig b/configs/nyan-big_defconfig
index 262042d..ae02dd1 100644
--- a/configs/nyan-big_defconfig
+++ b/configs/nyan-big_defconfig
@@ -1,6 +1,5 @@ 
 CONFIG_ARM=y
 CONFIG_TEGRA=y
-CONFIG_SPL_DM=y
 CONFIG_TEGRA124=y
 CONFIG_TARGET_NYAN_BIG=y
 CONFIG_DEFAULT_DEVICE_TREE="tegra124-nyan-big"
@@ -36,6 +35,7 @@  CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_SPL_DM=y
 CONFIG_CROS_EC_KEYB=y
 CONFIG_CMD_CROS_EC=y
 CONFIG_CROS_EC=y
@@ -61,6 +61,5 @@  CONFIG_DM_VIDEO=y
 CONFIG_DISPLAY=y
 CONFIG_VIDEO_TEGRA124=y
 CONFIG_VIDEO_BRIDGE=y
-CONFIG_USE_PRIVATE_LIBGCC=y
 CONFIG_TPM=y
 CONFIG_ERRNO_STR=y
diff --git a/configs/odroid-xu3_defconfig b/configs/odroid-xu3_defconfig
index c1d0fc3..c10079b 100644
--- a/configs/odroid-xu3_defconfig
+++ b/configs/odroid-xu3_defconfig
@@ -1,8 +1,6 @@ 
 CONFIG_ARM=y
 CONFIG_ARCH_EXYNOS=y
 CONFIG_ARCH_EXYNOS5=y
-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
@@ -31,6 +29,7 @@  CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_ADC=y
 CONFIG_ADC_EXYNOS=y
+CONFIG_DM_I2C=y
 CONFIG_DM_I2C_COMPAT=y
 CONFIG_DM_PMIC=y
 CONFIG_PMIC_S2MPS11=y
diff --git a/configs/odroid_defconfig b/configs/odroid_defconfig
index 76ab144..649cf95 100644
--- a/configs/odroid_defconfig
+++ b/configs/odroid_defconfig
@@ -2,7 +2,6 @@  CONFIG_ARM=y
 CONFIG_ARCH_EXYNOS=y
 CONFIG_ARCH_EXYNOS4=y
 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
@@ -33,6 +32,7 @@  CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_OF_CONTROL=y
+CONFIG_DM_I2C=y
 CONFIG_DM_I2C_COMPAT=y
 CONFIG_DM_PMIC=y
 CONFIG_DM_PMIC_MAX77686=y
diff --git a/configs/omap3_logic_defconfig b/configs/omap3_logic_defconfig
index e7bf385..3226247 100644
--- a/configs/omap3_logic_defconfig
+++ b/configs/omap3_logic_defconfig
@@ -1,7 +1,6 @@ 
 CONFIG_ARM=y
 CONFIG_OMAP34XX=y
 CONFIG_TARGET_OMAP3_LOGIC=y
-CONFIG_USE_TINY_PRINTF=y
 CONFIG_SPL=y
 CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="NAND"
diff --git a/configs/openrisc-generic_defconfig b/configs/openrisc-generic_defconfig
index 5bc81cc..db80dfd 100644
--- a/configs/openrisc-generic_defconfig
+++ b/configs/openrisc-generic_defconfig
@@ -1,5 +1,6 @@ 
 CONFIG_OPENRISC=y
 CONFIG_TARGET_OPENRISC_GENERIC=y
+# CONFIG_AUTOBOOT is not set
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_SETEXPR is not set
@@ -9,4 +10,3 @@  CONFIG_CMD_PING=y
 CONFIG_NETDEVICES=y
 CONFIG_ETHOC=y
 CONFIG_SYS_NS16550=y
-# CONFIG_AUTOBOOT is not set
diff --git a/configs/orangepi_2_defconfig b/configs/orangepi_2_defconfig
index e2f6a83..95075c2 100644
--- a/configs/orangepi_2_defconfig
+++ b/configs/orangepi_2_defconfig
@@ -4,15 +4,13 @@  CONFIG_MACH_SUN8I_H3=y
 CONFIG_DRAM_CLK=672
 CONFIG_DRAM_ZQ=3881979
 CONFIG_DRAM_ODT_EN=y
-CONFIG_MMC0_CD_PIN="PF6"
 CONFIG_USB1_VBUS_PIN="PG13"
-# CONFIG_VIDEO is not set
 CONFIG_DEFAULT_DEVICE_TREE="sun8i-h3-orangepi-2"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
+CONFIG_SUN8I_EMAC=y
 CONFIG_SY8106A_POWER=y
 CONFIG_USB_EHCI_HCD=y
-CONFIG_SUN8I_EMAC=y
diff --git a/configs/orangepi_lite_defconfig b/configs/orangepi_lite_defconfig
index 417e4f6..a72d506 100644
--- a/configs/orangepi_lite_defconfig
+++ b/configs/orangepi_lite_defconfig
@@ -4,8 +4,6 @@  CONFIG_MACH_SUN8I_H3=y
 CONFIG_DRAM_CLK=672
 CONFIG_DRAM_ZQ=3881979
 CONFIG_DRAM_ODT_EN=y
-CONFIG_MMC0_CD_PIN="PF6"
-# CONFIG_VIDEO is not set
 CONFIG_DEFAULT_DEVICE_TREE="sun8i-h3-orangepi-lite"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
diff --git a/configs/orangepi_one_defconfig b/configs/orangepi_one_defconfig
index 81299e6..5a7aba1 100644
--- a/configs/orangepi_one_defconfig
+++ b/configs/orangepi_one_defconfig
@@ -4,13 +4,11 @@  CONFIG_MACH_SUN8I_H3=y
 CONFIG_DRAM_CLK=672
 CONFIG_DRAM_ZQ=3881979
 CONFIG_DRAM_ODT_EN=y
-CONFIG_MMC0_CD_PIN="PF6"
-# CONFIG_VIDEO is not set
 CONFIG_DEFAULT_DEVICE_TREE="sun8i-h3-orangepi-one"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
-CONFIG_USB_EHCI_HCD=y
 CONFIG_SUN8I_EMAC=y
+CONFIG_USB_EHCI_HCD=y
diff --git a/configs/orangepi_pc_defconfig b/configs/orangepi_pc_defconfig
index 2281aed..0c156bd 100644
--- a/configs/orangepi_pc_defconfig
+++ b/configs/orangepi_pc_defconfig
@@ -4,14 +4,12 @@  CONFIG_MACH_SUN8I_H3=y
 CONFIG_DRAM_CLK=624
 CONFIG_DRAM_ZQ=3881979
 CONFIG_DRAM_ODT_EN=y
-CONFIG_MMC0_CD_PIN="PF6"
-# CONFIG_VIDEO is not set
 CONFIG_DEFAULT_DEVICE_TREE="sun8i-h3-orangepi-pc"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
+CONFIG_SUN8I_EMAC=y
 CONFIG_SY8106A_POWER=y
 CONFIG_USB_EHCI_HCD=y
-CONFIG_SUN8I_EMAC=y
diff --git a/configs/orangepi_pc_plus_defconfig b/configs/orangepi_pc_plus_defconfig
index 3ec6dac..8caca59 100644
--- a/configs/orangepi_pc_plus_defconfig
+++ b/configs/orangepi_pc_plus_defconfig
@@ -4,15 +4,13 @@  CONFIG_MACH_SUN8I_H3=y
 CONFIG_DRAM_CLK=624
 CONFIG_DRAM_ZQ=3881979
 CONFIG_DRAM_ODT_EN=y
-CONFIG_MMC0_CD_PIN="PF6"
 CONFIG_MMC_SUNXI_SLOT_EXTRA=2
-# CONFIG_VIDEO is not set
 CONFIG_DEFAULT_DEVICE_TREE="sun8i-h3-orangepi-pc-plus"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
+CONFIG_SUN8I_EMAC=y
 CONFIG_SY8106A_POWER=y
 CONFIG_USB_EHCI_HCD=y
-CONFIG_SUN8I_EMAC=y
diff --git a/configs/orangepi_plus2e_defconfig b/configs/orangepi_plus2e_defconfig
index c900fe2..2374f1d 100644
--- a/configs/orangepi_plus2e_defconfig
+++ b/configs/orangepi_plus2e_defconfig
@@ -4,9 +4,7 @@  CONFIG_MACH_SUN8I_H3=y
 CONFIG_DRAM_CLK=672
 CONFIG_DRAM_ZQ=3881979
 CONFIG_DRAM_ODT_EN=y
-CONFIG_MMC0_CD_PIN="PF6"
 CONFIG_MMC_SUNXI_SLOT_EXTRA=2
-# CONFIG_VIDEO is not set
 CONFIG_DEFAULT_DEVICE_TREE="sun8i-h3-orangepi-plus2e"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
@@ -14,6 +12,6 @@  CONFIG_SYS_EXTRA_OPTIONS="MACPWR=SUNXI_GPD(6)"
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
+CONFIG_SUN8I_EMAC=y
 CONFIG_SY8106A_POWER=y
 CONFIG_USB_EHCI_HCD=y
-CONFIG_SUN8I_EMAC=y
diff --git a/configs/orangepi_plus_defconfig b/configs/orangepi_plus_defconfig
index 5bb3bba..f2ed941 100644
--- a/configs/orangepi_plus_defconfig
+++ b/configs/orangepi_plus_defconfig
@@ -4,10 +4,8 @@  CONFIG_MACH_SUN8I_H3=y
 CONFIG_DRAM_CLK=672
 CONFIG_DRAM_ZQ=3881979
 CONFIG_DRAM_ODT_EN=y
-CONFIG_MMC0_CD_PIN="PF6"
 CONFIG_MMC_SUNXI_SLOT_EXTRA=2
 CONFIG_USB1_VBUS_PIN="PG13"
-# CONFIG_VIDEO is not set
 CONFIG_DEFAULT_DEVICE_TREE="sun8i-h3-orangepi-plus"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
@@ -15,6 +13,6 @@  CONFIG_SYS_EXTRA_OPTIONS="SATAPWR=SUNXI_GPG(11),MACPWR=SUNXI_GPD(6)"
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
+CONFIG_SUN8I_EMAC=y
 CONFIG_SY8106A_POWER=y
 CONFIG_USB_EHCI_HCD=y
-CONFIG_SUN8I_EMAC=y
diff --git a/configs/p2771-0000-000_defconfig b/configs/p2771-0000-000_defconfig
index 25ff8ae..4c4606a 100644
--- a/configs/p2771-0000-000_defconfig
+++ b/configs/p2771-0000-000_defconfig
@@ -1,7 +1,6 @@ 
 CONFIG_ARM=y
 CONFIG_TEGRA=y
 CONFIG_TEGRA186=y
-CONFIG_TARGET_P2771_0000=y
 CONFIG_DEFAULT_DEVICE_TREE="tegra186-p2771-0000-000"
 CONFIG_OF_SYSTEM_SETUP=y
 CONFIG_HUSH_PARSER=y
@@ -26,12 +25,12 @@  CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
-CONFIG_RTL8169=y
+CONFIG_TEGRA186_BPMP_I2C=y
 CONFIG_E1000=y
+CONFIG_RTL8169=y
 CONFIG_PCI_TEGRA=y
-CONFIG_TEGRA186_BPMP_I2C=y
+CONFIG_POWER_DOMAIN=y
+CONFIG_TEGRA186_POWER_DOMAIN=y
 CONFIG_SYS_NS16550=y
 CONFIG_USB=y
 CONFIG_DM_USB=y
-CONFIG_POWER_DOMAIN=y
-CONFIG_TEGRA186_POWER_DOMAIN=y
diff --git a/configs/p2771-0000-500_defconfig b/configs/p2771-0000-500_defconfig
index 9432a13..b32df1c 100644
--- a/configs/p2771-0000-500_defconfig
+++ b/configs/p2771-0000-500_defconfig
@@ -1,7 +1,6 @@ 
 CONFIG_ARM=y
 CONFIG_TEGRA=y
 CONFIG_TEGRA186=y
-CONFIG_TARGET_P2771_0000=y
 CONFIG_DEFAULT_DEVICE_TREE="tegra186-p2771-0000-500"
 CONFIG_OF_SYSTEM_SETUP=y
 CONFIG_HUSH_PARSER=y
@@ -26,12 +25,12 @@  CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
-CONFIG_RTL8169=y
+CONFIG_TEGRA186_BPMP_I2C=y
 CONFIG_E1000=y
+CONFIG_RTL8169=y
 CONFIG_PCI_TEGRA=y
-CONFIG_TEGRA186_BPMP_I2C=y
+CONFIG_POWER_DOMAIN=y
+CONFIG_TEGRA186_POWER_DOMAIN=y
 CONFIG_SYS_NS16550=y
 CONFIG_USB=y
 CONFIG_DM_USB=y
-CONFIG_POWER_DOMAIN=y
-CONFIG_TEGRA186_POWER_DOMAIN=y
diff --git a/configs/parrot_r16_defconfig b/configs/parrot_r16_defconfig
index 211a41e..ffe15e5 100644
--- a/configs/parrot_r16_defconfig
+++ b/configs/parrot_r16_defconfig
@@ -1,35 +1,21 @@ 
 CONFIG_ARM=y
-CONFIG_MACH_SUN8I=y
 CONFIG_ARCH_SUNXI=y
 CONFIG_MACH_SUN8I_A33=y
+CONFIG_DRAM_CLK=600
+CONFIG_DRAM_ZQ=15291
+CONFIG_MMC0_CD_PIN="PD14"
+CONFIG_MMC2_PINS="PC"
+CONFIG_MMC_SUNXI_SLOT_EXTRA=2
+CONFIG_USB0_ID_DET="PD10"
+CONFIG_USB1_VBUS_PIN="PD12"
+CONFIG_AXP_GPIO=y
 CONFIG_DEFAULT_DEVICE_TREE="sun8i-r16-parrot"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
-CONFIG_CMD_BOOTZ=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
-CONFIG_CMD_DHCP=y
-CONFIG_CMD_PING=y
-CONFIG_CMD_EXT2=y
-CONFIG_CMD_EXT4=y
-CONFIG_CMD_FAT=y
-CONFIG_CMD_FS_GENERIC=y
-
-CONFIG_CMD_MMC=y
-CONFIG_MMC0_CD_PIN="PD14"
-CONFIG_MMC_SUNXI_SLOT_EXTRA=2
-CONFIG_MMC2_PINS="PC"
-
-CONFIG_DRAM_CLK=600
-CONFIG_DRAM_ZQ=15291
-CONFIG_ODT_EN=y
-
 CONFIG_USB_EHCI_HCD=y
-CONFIG_USB1_VBUS_PIN="PD12"
-
-CONFIG_AXP_GPIO=y
-CONFIG_USB0_ID_DET="PD10"
 CONFIG_USB_MUSB_GADGET=y
 CONFIG_USB_GADGET=y
 CONFIG_USB_GADGET_DOWNLOAD=y
diff --git a/configs/paz00_defconfig b/configs/paz00_defconfig
index 000bbfb..f6fb3bf 100644
--- a/configs/paz00_defconfig
+++ b/configs/paz00_defconfig
@@ -1,6 +1,5 @@ 
 CONFIG_ARM=y
 CONFIG_TEGRA=y
-CONFIG_SPL_DM=y
 CONFIG_TEGRA20=y
 CONFIG_TARGET_PAZ00=y
 CONFIG_DEFAULT_DEVICE_TREE="tegra20-paz00"
@@ -27,6 +26,7 @@  CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_SPL_DM=y
 CONFIG_DM_PMIC=y
 CONFIG_DM_REGULATOR=y
 CONFIG_DM_REGULATOR_FIXED=y
@@ -36,4 +36,3 @@  CONFIG_USB=y
 CONFIG_DM_USB=y
 CONFIG_DM_VIDEO=y
 CONFIG_VIDEO_TEGRA20=y
-CONFIG_USE_PRIVATE_LIBGCC=y
diff --git a/configs/pb1000_defconfig b/configs/pb1000_defconfig
index 6aa2c43..5a7fa80 100644
--- a/configs/pb1000_defconfig
+++ b/configs/pb1000_defconfig
@@ -14,4 +14,3 @@  CONFIG_SYS_PROMPT="Pb1x00 # "
 CONFIG_CMD_DHCP=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
-CONFIG_USE_PRIVATE_LIBGCC=y
diff --git a/configs/pcm051_rev1_defconfig b/configs/pcm051_rev1_defconfig
index 27f681f..7f29119 100644
--- a/configs/pcm051_rev1_defconfig
+++ b/configs/pcm051_rev1_defconfig
@@ -30,4 +30,3 @@  CONFIG_USB_MUSB_HOST=y
 CONFIG_USB_MUSB_GADGET=y
 CONFIG_USB_GADGET=y
 CONFIG_OF_LIBFDT=y
-CONFIG_SPL_NET_VCI_STRING="pcm051 U-Boot SPL"
diff --git a/configs/pcm051_rev3_defconfig b/configs/pcm051_rev3_defconfig
index b277b3a..eff099c 100644
--- a/configs/pcm051_rev3_defconfig
+++ b/configs/pcm051_rev3_defconfig
@@ -30,4 +30,3 @@  CONFIG_USB_MUSB_HOST=y
 CONFIG_USB_MUSB_GADGET=y
 CONFIG_USB_GADGET=y
 CONFIG_OF_LIBFDT=y
-CONFIG_SPL_NET_VCI_STRING="pcm051 U-Boot SPL"
diff --git a/configs/pcm052_defconfig b/configs/pcm052_defconfig
index 5d30f30..52cb1d5 100644
--- a/configs/pcm052_defconfig
+++ b/configs/pcm052_defconfig
@@ -1,7 +1,5 @@ 
 CONFIG_ARM=y
 CONFIG_TARGET_PCM052=y
-CONFIG_DM_SERIAL=y
-CONFIG_DM_GPIO=y
 CONFIG_DEFAULT_DEVICE_TREE="pcm052"
 CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/phytec/pcm052/imximage.cfg,ENV_IS_IN_NAND"
 CONFIG_BOOTDELAY=3
@@ -18,7 +16,9 @@  CONFIG_CMD_PING=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
 CONFIG_DM=y
+CONFIG_DM_GPIO=y
 CONFIG_VYBRID_GPIO=y
 CONFIG_NAND_VF610_NFC=y
 CONFIG_SYS_NAND_BUSWIDTH_16BIT=y
+CONFIG_DM_SERIAL=y
 CONFIG_FSL_LPUART=y
diff --git a/configs/pcm058_defconfig b/configs/pcm058_defconfig
index 1576745..5c08171 100644
--- a/configs/pcm058_defconfig
+++ b/configs/pcm058_defconfig
@@ -2,20 +2,16 @@  CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
 CONFIG_TARGET_PCM058=y
 CONFIG_SPL=y
-CONFIG_BOOTDELAY=3
+CONFIG_FIT=y
 CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/imx-common/spl_sd.cfg,MX6Q"
+CONFIG_BOOTDELAY=3
 CONFIG_HUSH_PARSER=y
-CONFIG_MTD=y
 CONFIG_CMD_BOOTZ=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
-CONFIG_CMD_MTDPARTS=y
 CONFIG_CMD_MMC=y
 CONFIG_CMD_SF=y
 CONFIG_CMD_I2C=y
-CONFIG_CMD_USB=n
-CONFIG_CMD_DFU=n
-CONFIG_CMD_USB_MASS_STORAGE=n
 CONFIG_CMD_GPIO=y
 CONFIG_CMD_DHCP=y
 CONFIG_CMD_MII=y
@@ -26,9 +22,9 @@  CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_DM=y
+CONFIG_MTD=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
-CONFIG_FIT=y
-CONFIG_DM=y
 CONFIG_DM_THERMAL=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/peach-pi_defconfig b/configs/peach-pi_defconfig
index 313fb03..7c441d4 100644
--- a/configs/peach-pi_defconfig
+++ b/configs/peach-pi_defconfig
@@ -2,7 +2,6 @@  CONFIG_ARM=y
 CONFIG_ARCH_EXYNOS=y
 CONFIG_ARCH_EXYNOS5=y
 CONFIG_TARGET_PEACH_PI=y
-CONFIG_DM_I2C=y
 CONFIG_DEFAULT_DEVICE_TREE="exynos5800-peach-pi"
 CONFIG_SPL=y
 CONFIG_FIT=y
@@ -32,6 +31,7 @@  CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_DM_I2C=y
 CONFIG_DM_I2C_COMPAT=y
 CONFIG_I2C_CROS_EC_TUNNEL=y
 CONFIG_I2C_MUX=y
diff --git a/configs/peach-pit_defconfig b/configs/peach-pit_defconfig
index eb5558a..1682c4f 100644
--- a/configs/peach-pit_defconfig
+++ b/configs/peach-pit_defconfig
@@ -2,7 +2,6 @@  CONFIG_ARM=y
 CONFIG_ARCH_EXYNOS=y
 CONFIG_ARCH_EXYNOS5=y
 CONFIG_TARGET_PEACH_PIT=y
-CONFIG_DM_I2C=y
 CONFIG_DEFAULT_DEVICE_TREE="exynos5420-peach-pit"
 CONFIG_SPL=y
 CONFIG_FIT=y
@@ -32,6 +31,7 @@  CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_DM_I2C=y
 CONFIG_DM_I2C_COMPAT=y
 CONFIG_I2C_CROS_EC_TUNNEL=y
 CONFIG_I2C_MUX=y
diff --git a/configs/pic32mzdask_defconfig b/configs/pic32mzdask_defconfig
index d5e9408..4e986bb 100644
--- a/configs/pic32mzdask_defconfig
+++ b/configs/pic32mzdask_defconfig
@@ -1,7 +1,5 @@ 
 CONFIG_MIPS=y
 CONFIG_SYS_MALLOC_F_LEN=0x600
-CONFIG_DM_SERIAL=y
-CONFIG_DM_GPIO=y
 CONFIG_MACH_PIC32=y
 # CONFIG_MIPS_BOOT_ENV_LEGACY is not set
 CONFIG_MIPS_BOOT_FDT=y
@@ -32,12 +30,14 @@  CONFIG_CMD_FS_GENERIC=y
 CONFIG_OF_EMBED=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_CLK=y
+CONFIG_DM_GPIO=y
 CONFIG_DM_MMC=y
 CONFIG_PIC32_SDHCI=y
 CONFIG_DM_ETH=y
 CONFIG_PIC32_ETH=y
 CONFIG_PINCTRL=y
 # CONFIG_PINCTRL_FULL is not set
+CONFIG_DM_SERIAL=y
 CONFIG_USB=y
 CONFIG_DM_USB=y
 CONFIG_USB_MUSB_HOST=y
diff --git a/configs/pine64_plus_defconfig b/configs/pine64_plus_defconfig
index 5c97de1..6f82190 100644
--- a/configs/pine64_plus_defconfig
+++ b/configs/pine64_plus_defconfig
@@ -1,13 +1,12 @@ 
 CONFIG_ARM=y
+CONFIG_ENABLE_ARM_SOC_BOOT0_HOOK=y
 CONFIG_ARCH_SUNXI=y
 CONFIG_MACH_SUN50I=y
 CONFIG_DRAM_CLK=672
 CONFIG_DRAM_ZQ=3881915
-# CONFIG_VIDEO is not set
 CONFIG_DEFAULT_DEVICE_TREE="sun50i-a64-pine64-plus"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
-CONFIG_ENABLE_ARM_SOC_BOOT0_HOOK=y
 CONFIG_SUN8I_EMAC=y
diff --git a/configs/plutux_defconfig b/configs/plutux_defconfig
index ed519a0..65bc5c9 100644
--- a/configs/plutux_defconfig
+++ b/configs/plutux_defconfig
@@ -1,6 +1,5 @@ 
 CONFIG_ARM=y
 CONFIG_TEGRA=y
-CONFIG_SPL_DM=y
 CONFIG_TEGRA20=y
 CONFIG_TARGET_PLUTUX=y
 CONFIG_DEFAULT_DEVICE_TREE="tegra20-plutux"
@@ -26,7 +25,7 @@  CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_SPL_DM=y
 CONFIG_SYS_NS16550=y
 CONFIG_USB=y
 CONFIG_DM_USB=y
-CONFIG_USE_PRIVATE_LIBGCC=y
diff --git a/configs/popmetal-rk3288_defconfig b/configs/popmetal-rk3288_defconfig
index 653bfed..112e6ae 100644
--- a/configs/popmetal-rk3288_defconfig
+++ b/configs/popmetal-rk3288_defconfig
@@ -38,8 +38,6 @@  CONFIG_CLK=y
 CONFIG_SPL_CLK=y
 CONFIG_ROCKCHIP_GPIO=y
 CONFIG_SYS_I2C_ROCKCHIP=y
-CONFIG_SYSRESET=y
-CONFIG_DM_MMC=y
 CONFIG_ROCKCHIP_DWMMC=y
 CONFIG_PINCTRL=y
 CONFIG_SPL_PINCTRL=y
@@ -48,8 +46,8 @@  CONFIG_ROCKCHIP_RK3288_PINCTRL=y
 CONFIG_DM_PMIC=y
 CONFIG_PMIC_RK808=y
 CONFIG_DM_REGULATOR=y
-CONFIG_REGULATOR_RK808=y
 CONFIG_DM_REGULATOR_FIXED=y
+CONFIG_REGULATOR_RK808=y
 CONFIG_DM_PWM=y
 CONFIG_PWM_ROCKCHIP=y
 CONFIG_RAM=y
@@ -59,7 +57,7 @@  CONFIG_DEBUG_UART_BASE=0xff690000
 CONFIG_DEBUG_UART_CLOCK=24000000
 CONFIG_DEBUG_UART_SHIFT=2
 CONFIG_SYS_NS16550=y
-CONFIG_USE_PRIVATE_LIBGCC=y
+CONFIG_SYSRESET=y
 CONFIG_USE_TINY_PRINTF=y
 CONFIG_CMD_DHRYSTONE=y
 CONFIG_ERRNO_STR=y
diff --git a/configs/porter_defconfig b/configs/porter_defconfig
index acb039d..d953d27 100644
--- a/configs/porter_defconfig
+++ b/configs/porter_defconfig
@@ -2,10 +2,10 @@  CONFIG_ARM=y
 CONFIG_ARCH_RMOBILE=y
 CONFIG_SYS_MALLOC_F_LEN=0x2000
 CONFIG_TARGET_PORTER=y
-CONFIG_BOOTDELAY=3
 CONFIG_BOOTSTAGE_USER_COUNT=0x20
 CONFIG_BOOTSTAGE_STASH_ADDR=0x0
 CONFIG_BOOTSTAGE_STASH_SIZE=0x4096
+CONFIG_BOOTDELAY=3
 CONFIG_CMD_BOOTZ=y
 # CONFIG_CMD_IMI is not set
 # CONFIG_CMD_IMLS is not set
@@ -25,4 +25,3 @@  CONFIG_CMD_FAT=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_BAR=y
 CONFIG_SPI_FLASH_SPANSION=y
-# CONFIG_EFI_LOADER is not set
diff --git a/configs/pxm2_defconfig b/configs/pxm2_defconfig
index f34af43..a9d5788 100644
--- a/configs/pxm2_defconfig
+++ b/configs/pxm2_defconfig
@@ -1,7 +1,6 @@ 
 CONFIG_ARM=y
 CONFIG_TARGET_PXM2=y
 CONFIG_SYS_MALLOC_F_LEN=0x2000
-CONFIG_DM_SERIAL=y
 CONFIG_DEFAULT_DEVICE_TREE="am335x-pxm50"
 CONFIG_SPL=y
 CONFIG_FIT=y
@@ -30,7 +29,6 @@  CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
 CONFIG_OF_EMBED=y
-CONFIG_DM=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_WINBOND=y
 CONFIG_SYS_NS16550=y
@@ -42,4 +40,3 @@  CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_G_DNL_MANUFACTURER="Siemens AG"
 CONFIG_G_DNL_VENDOR_NUM=0x0908
 CONFIG_G_DNL_PRODUCT_NUM=0x02d2
-CONFIG_OF_LIBFDT=y
diff --git a/configs/rastaban_defconfig b/configs/rastaban_defconfig
index 901547b..53c7657 100644
--- a/configs/rastaban_defconfig
+++ b/configs/rastaban_defconfig
@@ -1,7 +1,6 @@ 
 CONFIG_ARM=y
 CONFIG_TARGET_RASTABAN=y
 CONFIG_SYS_MALLOC_F_LEN=0x2000
-CONFIG_DM_SERIAL=y
 CONFIG_DEFAULT_DEVICE_TREE="am335x-draco"
 CONFIG_SPL=y
 CONFIG_BOOTDELAY=3
@@ -28,7 +27,6 @@  CONFIG_CMD_TIME=y
 CONFIG_CMD_EXT2=y
 CONFIG_OF_CONTROL=y
 CONFIG_OF_EMBED=y
-CONFIG_DM=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_WINBOND=y
 CONFIG_SYS_NS16550=y
@@ -40,4 +38,3 @@  CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_G_DNL_MANUFACTURER="Siemens AG"
 CONFIG_G_DNL_VENDOR_NUM=0x0908
 CONFIG_G_DNL_PRODUCT_NUM=0x02d2
-CONFIG_OF_LIBFDT=y
diff --git a/configs/rock2_defconfig b/configs/rock2_defconfig
index 3b6d7d9..fc9ff78 100644
--- a/configs/rock2_defconfig
+++ b/configs/rock2_defconfig
@@ -38,8 +38,6 @@  CONFIG_CLK=y
 CONFIG_SPL_CLK=y
 CONFIG_ROCKCHIP_GPIO=y
 CONFIG_SYS_I2C_ROCKCHIP=y
-CONFIG_SYSRESET=y
-CONFIG_DM_MMC=y
 CONFIG_ROCKCHIP_DWMMC=y
 CONFIG_PINCTRL=y
 CONFIG_SPL_PINCTRL=y
@@ -60,10 +58,10 @@  CONFIG_DEBUG_UART_BASE=0xff690000
 CONFIG_DEBUG_UART_CLOCK=24000000
 CONFIG_DEBUG_UART_SHIFT=2
 CONFIG_SYS_NS16550=y
+CONFIG_SYSRESET=y
 CONFIG_DM_VIDEO=y
 CONFIG_DISPLAY=y
 CONFIG_VIDEO_ROCKCHIP=y
-CONFIG_USE_PRIVATE_LIBGCC=y
 CONFIG_USE_TINY_PRINTF=y
 CONFIG_CMD_DHRYSTONE=y
 CONFIG_ERRNO_STR=y
diff --git a/configs/rpi_3_32b_defconfig b/configs/rpi_3_32b_defconfig
index c59474c..84252bc 100644
--- a/configs/rpi_3_32b_defconfig
+++ b/configs/rpi_3_32b_defconfig
@@ -1,6 +1,7 @@ 
 CONFIG_ARM=y
 CONFIG_ARCH_BCM283X=y
 CONFIG_TARGET_RPI_3_32B=y
+CONFIG_SYS_MALLOC_F_LEN=0x2000
 CONFIG_OF_BOARD_SETUP=y
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_PROMPT="U-Boot> "
@@ -18,7 +19,6 @@  CONFIG_CMD_EXT2=y
 CONFIG_CMD_EXT4=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+# CONFIG_REQUIRE_SERIAL_CONSOLE is not set
 CONFIG_PHYS_TO_BUS=y
 CONFIG_OF_LIBFDT=y
-# CONFIG_REQUIRE_SERIAL_CONSOLE is not set
-CONFIG_SYS_MALLOC_F_LEN=0x2000
diff --git a/configs/rpi_3_defconfig b/configs/rpi_3_defconfig
index 67c4a0c..db1426e 100644
--- a/configs/rpi_3_defconfig
+++ b/configs/rpi_3_defconfig
@@ -1,6 +1,7 @@ 
 CONFIG_ARM=y
 CONFIG_ARCH_BCM283X=y
 CONFIG_TARGET_RPI_3=y
+CONFIG_SYS_MALLOC_F_LEN=0x2000
 CONFIG_OF_BOARD_SETUP=y
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_PROMPT="U-Boot> "
@@ -17,7 +18,6 @@  CONFIG_CMD_EXT2=y
 CONFIG_CMD_EXT4=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+# CONFIG_REQUIRE_SERIAL_CONSOLE is not set
 CONFIG_PHYS_TO_BUS=y
 CONFIG_OF_LIBFDT=y
-# CONFIG_REQUIRE_SERIAL_CONSOLE is not set
-CONFIG_SYS_MALLOC_F_LEN=0x2000
diff --git a/configs/rut_defconfig b/configs/rut_defconfig
index 1d04f76..8677658 100644
--- a/configs/rut_defconfig
+++ b/configs/rut_defconfig
@@ -1,7 +1,6 @@ 
 CONFIG_ARM=y
 CONFIG_TARGET_RUT=y
 CONFIG_SYS_MALLOC_F_LEN=0x2000
-CONFIG_DM_SERIAL=y
 CONFIG_DEFAULT_DEVICE_TREE="am335x-rut"
 CONFIG_SPL=y
 CONFIG_FIT=y
@@ -30,7 +29,6 @@  CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
 CONFIG_OF_EMBED=y
-CONFIG_DM=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_WINBOND=y
 CONFIG_SYS_NS16550=y
@@ -42,4 +40,3 @@  CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_G_DNL_MANUFACTURER="Siemens AG"
 CONFIG_G_DNL_VENDOR_NUM=0x0908
 CONFIG_G_DNL_PRODUCT_NUM=0x02d2
-CONFIG_OF_LIBFDT=y
diff --git a/configs/sandbox_defconfig b/configs/sandbox_defconfig
index 887d83a..fc9b4ac 100644
--- a/configs/sandbox_defconfig
+++ b/configs/sandbox_defconfig
@@ -100,7 +100,6 @@  CONFIG_CROS_EC_SANDBOX=y
 CONFIG_CROS_EC_SPI=y
 CONFIG_PWRSEQ=y
 CONFIG_SPL_PWRSEQ=y
-CONFIG_SYSRESET=y
 CONFIG_I2C_EEPROM=y
 CONFIG_DM_MMC_OPS=y
 CONFIG_SANDBOX_MMC=y
@@ -120,9 +119,11 @@  CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCI_SANDBOX=y
 CONFIG_PINCTRL=y
 CONFIG_PINCONF=y
-CONFIG_ROCKCHIP_RK3288_PINCTRL=y
 CONFIG_ROCKCHIP_RK3036_PINCTRL=y
+CONFIG_ROCKCHIP_RK3288_PINCTRL=y
 CONFIG_PINCTRL_SANDBOX=y
+CONFIG_POWER_DOMAIN=y
+CONFIG_SANDBOX_POWER_DOMAIN=y
 CONFIG_DM_PMIC=y
 CONFIG_PMIC_ACT8846=y
 CONFIG_DM_PMIC_PFUZE100=y
@@ -153,6 +154,7 @@  CONFIG_SOUND_SANDBOX=y
 CONFIG_SANDBOX_SPI=y
 CONFIG_SPMI=y
 CONFIG_SPMI_SANDBOX=y
+CONFIG_SYSRESET=y
 CONFIG_TIMER=y
 CONFIG_TIMER_EARLY=y
 CONFIG_SANDBOX_TIMER=y
@@ -176,5 +178,3 @@  CONFIG_UNIT_TEST=y
 CONFIG_UT_TIME=y
 CONFIG_UT_DM=y
 CONFIG_UT_ENV=y
-CONFIG_POWER_DOMAIN=y
-CONFIG_SANDBOX_POWER_DOMAIN=y
diff --git a/configs/sandbox_noblk_defconfig b/configs/sandbox_noblk_defconfig
index 503845b..85610ed 100644
--- a/configs/sandbox_noblk_defconfig
+++ b/configs/sandbox_noblk_defconfig
@@ -94,8 +94,6 @@  CONFIG_CROS_EC_SANDBOX=y
 CONFIG_CROS_EC_SPI=y
 CONFIG_PWRSEQ=y
 CONFIG_SPL_PWRSEQ=y
-CONFIG_SYSRESET=y
-CONFIG_DM_MMC=y
 CONFIG_SPI_FLASH_SANDBOX=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_ATMEL=y
@@ -112,8 +110,8 @@  CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCI_SANDBOX=y
 CONFIG_PINCTRL=y
 CONFIG_PINCONF=y
-CONFIG_ROCKCHIP_RK3288_PINCTRL=y
 CONFIG_ROCKCHIP_RK3036_PINCTRL=y
+CONFIG_ROCKCHIP_RK3288_PINCTRL=y
 CONFIG_PINCTRL_SANDBOX=y
 CONFIG_DM_PMIC=y
 CONFIG_PMIC_ACT8846=y
@@ -143,6 +141,7 @@  CONFIG_SOUND_SANDBOX=y
 CONFIG_SANDBOX_SPI=y
 CONFIG_SPMI=y
 CONFIG_SPMI_SANDBOX=y
+CONFIG_SYSRESET=y
 CONFIG_TIMER=y
 CONFIG_TIMER_EARLY=y
 CONFIG_SANDBOX_TIMER=y
diff --git a/configs/sandbox_spl_defconfig b/configs/sandbox_spl_defconfig
index ccb31e3..808ac34 100644
--- a/configs/sandbox_spl_defconfig
+++ b/configs/sandbox_spl_defconfig
@@ -105,7 +105,6 @@  CONFIG_CROS_EC_SANDBOX=y
 CONFIG_CROS_EC_SPI=y
 CONFIG_PWRSEQ=y
 CONFIG_SPL_PWRSEQ=y
-CONFIG_SYSRESET=y
 CONFIG_DM_MMC_OPS=y
 CONFIG_SANDBOX_MMC=y
 CONFIG_SPI_FLASH_SANDBOX=y
@@ -124,8 +123,6 @@  CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCI_SANDBOX=y
 CONFIG_PINCTRL=y
 CONFIG_PINCONF=y
-CONFIG_ROCKCHIP_PINCTRL=y
-CONFIG_ROCKCHIP_3036_PINCTRL=y
 CONFIG_PINCTRL_SANDBOX=y
 CONFIG_DM_PMIC=y
 CONFIG_PMIC_ACT8846=y
@@ -157,6 +154,7 @@  CONFIG_SOUND_SANDBOX=y
 CONFIG_SANDBOX_SPI=y
 CONFIG_SPMI=y
 CONFIG_SPMI_SANDBOX=y
+CONFIG_SYSRESET=y
 CONFIG_TIMER=y
 CONFIG_TIMER_EARLY=y
 CONFIG_SANDBOX_TIMER=y
diff --git a/configs/seaboard_defconfig b/configs/seaboard_defconfig
index 3c5c413..fd2a49d 100644
--- a/configs/seaboard_defconfig
+++ b/configs/seaboard_defconfig
@@ -1,6 +1,5 @@ 
 CONFIG_ARM=y
 CONFIG_TEGRA=y
-CONFIG_SPL_DM=y
 CONFIG_TEGRA20=y
 CONFIG_TARGET_SEABOARD=y
 CONFIG_DEFAULT_DEVICE_TREE="tegra20-seaboard"
@@ -28,6 +27,7 @@  CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_SPL_DM=y
 CONFIG_DM_PMIC=y
 CONFIG_DM_REGULATOR=y
 CONFIG_DM_REGULATOR_FIXED=y
@@ -37,4 +37,3 @@  CONFIG_USB=y
 CONFIG_DM_USB=y
 CONFIG_DM_VIDEO=y
 CONFIG_VIDEO_TEGRA20=y
-CONFIG_USE_PRIVATE_LIBGCC=y
diff --git a/configs/silk_defconfig b/configs/silk_defconfig
index 65a74f8..604975d 100644
--- a/configs/silk_defconfig
+++ b/configs/silk_defconfig
@@ -2,10 +2,10 @@  CONFIG_ARM=y
 CONFIG_ARCH_RMOBILE=y
 CONFIG_SYS_MALLOC_F_LEN=0x2000
 CONFIG_TARGET_SILK=y
-CONFIG_BOOTDELAY=3
 CONFIG_BOOTSTAGE_USER_COUNT=0x20
 CONFIG_BOOTSTAGE_STASH_ADDR=0x0
 CONFIG_BOOTSTAGE_STASH_SIZE=0x4096
+CONFIG_BOOTDELAY=3
 CONFIG_CMD_BOOTZ=y
 # CONFIG_CMD_IMI is not set
 # CONFIG_CMD_IMLS is not set
diff --git a/configs/smdk5250_defconfig b/configs/smdk5250_defconfig
index 7fe410d..4330068 100644
--- a/configs/smdk5250_defconfig
+++ b/configs/smdk5250_defconfig
@@ -2,7 +2,6 @@  CONFIG_ARM=y
 CONFIG_ARCH_EXYNOS=y
 CONFIG_ARCH_EXYNOS5=y
 CONFIG_TARGET_SMDK5250=y
-CONFIG_DM_I2C=y
 CONFIG_DEFAULT_DEVICE_TREE="exynos5250-smdk5250"
 CONFIG_SPL=y
 CONFIG_FIT=y
@@ -31,6 +30,7 @@  CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_DM_I2C=y
 CONFIG_DM_I2C_COMPAT=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_GIGADEVICE=y
diff --git a/configs/smdk5420_defconfig b/configs/smdk5420_defconfig
index 43d3389..47c8ca1 100644
--- a/configs/smdk5420_defconfig
+++ b/configs/smdk5420_defconfig
@@ -2,7 +2,6 @@  CONFIG_ARM=y
 CONFIG_ARCH_EXYNOS=y
 CONFIG_ARCH_EXYNOS5=y
 CONFIG_TARGET_SMDK5420=y
-CONFIG_DM_I2C=y
 CONFIG_DEFAULT_DEVICE_TREE="exynos5420-smdk5420"
 CONFIG_SPL=y
 CONFIG_FIT=y
@@ -28,6 +27,7 @@  CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_DM_I2C=y
 CONFIG_DM_I2C_COMPAT=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_GIGADEVICE=y
diff --git a/configs/smdkv310_defconfig b/configs/smdkv310_defconfig
index 5ba6523..5e3844c 100644
--- a/configs/smdkv310_defconfig
+++ b/configs/smdkv310_defconfig
@@ -1,7 +1,6 @@ 
 CONFIG_ARM=y
 CONFIG_ARCH_EXYNOS=y
 CONFIG_ARCH_EXYNOS4=y
-CONFIG_TARGET_SMDKV310=y
 CONFIG_DEFAULT_DEVICE_TREE="exynos4210-smdkv310"
 CONFIG_SPL=y
 CONFIG_HUSH_PARSER=y
diff --git a/configs/snow_defconfig b/configs/snow_defconfig
index c16c90c..b023122 100644
--- a/configs/snow_defconfig
+++ b/configs/snow_defconfig
@@ -2,7 +2,6 @@  CONFIG_ARM=y
 CONFIG_ARCH_EXYNOS=y
 CONFIG_ARCH_EXYNOS5=y
 CONFIG_TARGET_SNOW=y
-CONFIG_DM_I2C=y
 CONFIG_DEFAULT_DEVICE_TREE="exynos5250-snow"
 CONFIG_SPL=y
 CONFIG_FIT=y
@@ -33,6 +32,7 @@  CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_DM_I2C=y
 CONFIG_DM_I2C_COMPAT=y
 CONFIG_I2C_CROS_EC_LDO=y
 CONFIG_I2C_MUX=y
diff --git a/configs/socfpga_arria5_defconfig b/configs/socfpga_arria5_defconfig
index a3797af..ab13faf 100644
--- a/configs/socfpga_arria5_defconfig
+++ b/configs/socfpga_arria5_defconfig
@@ -1,12 +1,10 @@ 
 CONFIG_ARM=y
 CONFIG_ARCH_SOCFPGA=y
-CONFIG_SPL_SYS_MALLOC_SIMPLE=y
-CONFIG_SPL_DM=y
-CONFIG_DM_GPIO=y
 CONFIG_TARGET_SOCFPGA_ARRIA5_SOCDK=y
 CONFIG_SPL_STACK_R_ADDR=0x00800000
 CONFIG_DEFAULT_DEVICE_TREE="socfpga_arria5_socdk"
 CONFIG_SPL=y
+CONFIG_SPL_SYS_MALLOC_SIMPLE=y
 CONFIG_SPL_STACK_R=y
 CONFIG_FIT=y
 CONFIG_HUSH_PARSER=y
@@ -31,7 +29,9 @@  CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_SPL_DM=y
 CONFIG_SPL_DM_SEQ_ALIAS=y
+CONFIG_DM_GPIO=y
 CONFIG_DWAPB_GPIO=y
 CONFIG_SYS_I2C_DW=y
 CONFIG_DM_MMC=y
diff --git a/configs/socfpga_cyclone5_defconfig b/configs/socfpga_cyclone5_defconfig
index 5798662..3627928 100644
--- a/configs/socfpga_cyclone5_defconfig
+++ b/configs/socfpga_cyclone5_defconfig
@@ -1,12 +1,10 @@ 
 CONFIG_ARM=y
 CONFIG_ARCH_SOCFPGA=y
-CONFIG_SPL_SYS_MALLOC_SIMPLE=y
-CONFIG_SPL_DM=y
-CONFIG_DM_GPIO=y
 CONFIG_TARGET_SOCFPGA_CYCLONE5_SOCDK=y
 CONFIG_SPL_STACK_R_ADDR=0x00800000
 CONFIG_DEFAULT_DEVICE_TREE="socfpga_cyclone5_socdk"
 CONFIG_SPL=y
+CONFIG_SPL_SYS_MALLOC_SIMPLE=y
 CONFIG_SPL_STACK_R=y
 CONFIG_FIT=y
 CONFIG_HUSH_PARSER=y
@@ -31,7 +29,9 @@  CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_SPL_DM=y
 CONFIG_SPL_DM_SEQ_ALIAS=y
+CONFIG_DM_GPIO=y
 CONFIG_DWAPB_GPIO=y
 CONFIG_SYS_I2C_DW=y
 CONFIG_DM_MMC=y
diff --git a/configs/socfpga_de0_nano_soc_defconfig b/configs/socfpga_de0_nano_soc_defconfig
index 9bba2de..64e0d6f 100644
--- a/configs/socfpga_de0_nano_soc_defconfig
+++ b/configs/socfpga_de0_nano_soc_defconfig
@@ -1,12 +1,10 @@ 
 CONFIG_ARM=y
 CONFIG_ARCH_SOCFPGA=y
-CONFIG_SPL_SYS_MALLOC_SIMPLE=y
-CONFIG_SPL_DM=y
-CONFIG_DM_GPIO=y
 CONFIG_TARGET_SOCFPGA_TERASIC_DE0_NANO=y
 CONFIG_SPL_STACK_R_ADDR=0x00800000
 CONFIG_DEFAULT_DEVICE_TREE="socfpga_cyclone5_de0_nano_soc"
 CONFIG_SPL=y
+CONFIG_SPL_SYS_MALLOC_SIMPLE=y
 CONFIG_SPL_STACK_R=y
 CONFIG_FIT=y
 CONFIG_HUSH_PARSER=y
@@ -31,6 +29,8 @@  CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_SPL_DM=y
+CONFIG_DM_GPIO=y
 CONFIG_DWAPB_GPIO=y
 CONFIG_SYS_I2C_DW=y
 CONFIG_DM_MMC=y
diff --git a/configs/socfpga_is1_defconfig b/configs/socfpga_is1_defconfig
index b1d7fff..30671c7 100644
--- a/configs/socfpga_is1_defconfig
+++ b/configs/socfpga_is1_defconfig
@@ -1,7 +1,5 @@ 
 CONFIG_ARM=y
 CONFIG_ARCH_SOCFPGA=y
-CONFIG_SPL_DM=y
-CONFIG_DM_GPIO=y
 CONFIG_TARGET_SOCFPGA_IS1=y
 CONFIG_SPL_STACK_R_ADDR=0x00800000
 CONFIG_DEFAULT_DEVICE_TREE="socfpga_cyclone5_is1"
@@ -27,7 +25,9 @@  CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_SPL_DM=y
 CONFIG_SPL_DM_SEQ_ALIAS=y
+CONFIG_DM_GPIO=y
 CONFIG_DWAPB_GPIO=y
 CONFIG_SYS_I2C_DW=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/socfpga_mcvevk_defconfig b/configs/socfpga_mcvevk_defconfig
index f60b4d8..3051d74 100644
--- a/configs/socfpga_mcvevk_defconfig
+++ b/configs/socfpga_mcvevk_defconfig
@@ -1,12 +1,10 @@ 
 CONFIG_ARM=y
 CONFIG_ARCH_SOCFPGA=y
-CONFIG_SPL_SYS_MALLOC_SIMPLE=y
-CONFIG_SPL_DM=y
-CONFIG_DM_GPIO=y
 CONFIG_TARGET_SOCFPGA_DENX_MCVEVK=y
 CONFIG_SPL_STACK_R_ADDR=0x00800000
 CONFIG_DEFAULT_DEVICE_TREE="socfpga_cyclone5_mcvevk"
 CONFIG_SPL=y
+CONFIG_SPL_SYS_MALLOC_SIMPLE=y
 CONFIG_SPL_STACK_R=y
 CONFIG_FIT=y
 CONFIG_HUSH_PARSER=y
@@ -31,6 +29,8 @@  CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_SPL_DM=y
+CONFIG_DM_GPIO=y
 CONFIG_DWAPB_GPIO=y
 CONFIG_SYS_I2C_DW=y
 CONFIG_DM_MMC=y
diff --git a/configs/socfpga_sockit_defconfig b/configs/socfpga_sockit_defconfig
index 3913984..1fc4c9b 100644
--- a/configs/socfpga_sockit_defconfig
+++ b/configs/socfpga_sockit_defconfig
@@ -1,12 +1,10 @@ 
 CONFIG_ARM=y
 CONFIG_ARCH_SOCFPGA=y
-CONFIG_SPL_SYS_MALLOC_SIMPLE=y
-CONFIG_SPL_DM=y
-CONFIG_DM_GPIO=y
 CONFIG_TARGET_SOCFPGA_TERASIC_SOCKIT=y
 CONFIG_SPL_STACK_R_ADDR=0x00800000
 CONFIG_DEFAULT_DEVICE_TREE="socfpga_cyclone5_sockit"
 CONFIG_SPL=y
+CONFIG_SPL_SYS_MALLOC_SIMPLE=y
 CONFIG_SPL_STACK_R=y
 CONFIG_FIT=y
 CONFIG_HUSH_PARSER=y
@@ -31,7 +29,9 @@  CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_SPL_DM=y
 CONFIG_SPL_DM_SEQ_ALIAS=y
+CONFIG_DM_GPIO=y
 CONFIG_DWAPB_GPIO=y
 CONFIG_SYS_I2C_DW=y
 CONFIG_DM_MMC=y
diff --git a/configs/socfpga_socrates_defconfig b/configs/socfpga_socrates_defconfig
index bc9e894..cc2e26b 100644
--- a/configs/socfpga_socrates_defconfig
+++ b/configs/socfpga_socrates_defconfig
@@ -1,12 +1,10 @@ 
 CONFIG_ARM=y
 CONFIG_ARCH_SOCFPGA=y
-CONFIG_SPL_SYS_MALLOC_SIMPLE=y
-CONFIG_SPL_DM=y
-CONFIG_DM_GPIO=y
 CONFIG_TARGET_SOCFPGA_EBV_SOCRATES=y
 CONFIG_SPL_STACK_R_ADDR=0x00800000
 CONFIG_DEFAULT_DEVICE_TREE="socfpga_cyclone5_socrates"
 CONFIG_SPL=y
+CONFIG_SPL_SYS_MALLOC_SIMPLE=y
 CONFIG_SPL_STACK_R=y
 CONFIG_FIT=y
 CONFIG_HUSH_PARSER=y
@@ -32,7 +30,9 @@  CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_SPL_DM=y
 CONFIG_SPL_DM_SEQ_ALIAS=y
+CONFIG_DM_GPIO=y
 CONFIG_DWAPB_GPIO=y
 CONFIG_SYS_I2C_DW=y
 CONFIG_DM_MMC=y
diff --git a/configs/socfpga_sr1500_defconfig b/configs/socfpga_sr1500_defconfig
index 8d4791d..7701ea1 100644
--- a/configs/socfpga_sr1500_defconfig
+++ b/configs/socfpga_sr1500_defconfig
@@ -1,12 +1,10 @@ 
 CONFIG_ARM=y
 CONFIG_ARCH_SOCFPGA=y
-CONFIG_SPL_SYS_MALLOC_SIMPLE=y
-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_SYS_MALLOC_SIMPLE=y
 CONFIG_SPL_STACK_R=y
 CONFIG_FIT=y
 CONFIG_HUSH_PARSER=y
@@ -30,7 +28,9 @@  CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_SPL_DM=y
 CONFIG_SPL_DM_SEQ_ALIAS=y
+CONFIG_DM_GPIO=y
 CONFIG_DWAPB_GPIO=y
 CONFIG_SYS_I2C_DW=y
 CONFIG_DM_MMC=y
diff --git a/configs/socfpga_vining_fpga_defconfig b/configs/socfpga_vining_fpga_defconfig
index 901721f..1d5ea03 100644
--- a/configs/socfpga_vining_fpga_defconfig
+++ b/configs/socfpga_vining_fpga_defconfig
@@ -1,12 +1,10 @@ 
 CONFIG_ARM=y
 CONFIG_ARCH_SOCFPGA=y
-CONFIG_SPL_SYS_MALLOC_SIMPLE=y
-CONFIG_SPL_DM=y
-CONFIG_DM_GPIO=y
 CONFIG_TARGET_SOCFPGA_SAMTEC_VINING_FPGA=y
 CONFIG_SPL_STACK_R_ADDR=0x00800000
 CONFIG_DEFAULT_DEVICE_TREE="socfpga_cyclone5_vining_fpga"
 CONFIG_SPL=y
+CONFIG_SPL_SYS_MALLOC_SIMPLE=y
 CONFIG_SPL_STACK_R=y
 CONFIG_FIT=y
 CONFIG_BOOTDELAY=5
@@ -34,7 +32,9 @@  CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_NET_RANDOM_ETHADDR=y
+CONFIG_SPL_DM=y
 CONFIG_SPL_DM_SEQ_ALIAS=y
+CONFIG_DM_GPIO=y
 CONFIG_DWAPB_GPIO=y
 CONFIG_DM_MMC=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/som-db5800-som-6867_defconfig b/configs/som-db5800-som-6867_defconfig
index 30e093b..147b067 100644
--- a/configs/som-db5800-som-6867_defconfig
+++ b/configs/som-db5800-som-6867_defconfig
@@ -1,7 +1,7 @@ 
 CONFIG_X86=y
 CONFIG_VENDOR_ADVANTECH=y
-CONFIG_DEFAULT_DEVICE_TREE="baytrail_som-db5800-som-6867"
 CONFIG_TARGET_SOM_DB5800_SOM_6867=y
+CONFIG_DEFAULT_DEVICE_TREE="baytrail_som-db5800-som-6867"
 CONFIG_HAVE_INTEL_ME=y
 CONFIG_ENABLE_MRC_CACHE=y
 CONFIG_SMP=y
@@ -18,7 +18,6 @@  CONFIG_HUSH_PARSER=y
 CONFIG_CMD_CPU=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
-# CONFIG_CMD_MMC is not set
 CONFIG_CMD_SF=y
 CONFIG_CMD_SPI=y
 CONFIG_CMD_USB=y
diff --git a/configs/spring_defconfig b/configs/spring_defconfig
index b68cab0..f9b1aaa 100644
--- a/configs/spring_defconfig
+++ b/configs/spring_defconfig
@@ -2,7 +2,6 @@  CONFIG_ARM=y
 CONFIG_ARCH_EXYNOS=y
 CONFIG_ARCH_EXYNOS5=y
 CONFIG_TARGET_SPRING=y
-CONFIG_DM_I2C=y
 CONFIG_DEFAULT_DEVICE_TREE="exynos5250-spring"
 CONFIG_SPL=y
 CONFIG_FIT=y
@@ -33,6 +32,7 @@  CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_DM_I2C=y
 CONFIG_DM_I2C_COMPAT=y
 CONFIG_I2C_CROS_EC_LDO=y
 CONFIG_I2C_MUX=y
diff --git a/configs/stout_defconfig b/configs/stout_defconfig
index 1a0f09b..ba51190 100644
--- a/configs/stout_defconfig
+++ b/configs/stout_defconfig
@@ -2,10 +2,10 @@  CONFIG_ARM=y
 CONFIG_ARCH_RMOBILE=y
 CONFIG_SYS_MALLOC_F_LEN=0x2000
 CONFIG_TARGET_STOUT=y
-CONFIG_BOOTDELAY=3
 CONFIG_BOOTSTAGE_USER_COUNT=0x20
 CONFIG_BOOTSTAGE_STASH_ADDR=0x0
 CONFIG_BOOTSTAGE_STASH_SIZE=0x4096
+CONFIG_BOOTDELAY=3
 CONFIG_CMD_BOOTZ=y
 # CONFIG_CMD_IMI is not set
 # CONFIG_CMD_IMLS is not set
diff --git a/configs/taurus_defconfig b/configs/taurus_defconfig
index f451515..7430e51 100644
--- a/configs/taurus_defconfig
+++ b/configs/taurus_defconfig
@@ -4,8 +4,8 @@  CONFIG_TARGET_TAURUS=y
 CONFIG_DEFAULT_DEVICE_TREE="at91sam9g20-taurus"
 CONFIG_SPL=y
 CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9G20,MACH_TYPE=2067,BOARD_TAURUS"
-CONFIG_HUSH_PARSER=y
 CONFIG_BOOTDELAY=3
+CONFIG_HUSH_PARSER=y
 CONFIG_SYS_PROMPT="U-Boot> "
 # CONFIG_CMD_BDI is not set
 CONFIG_CMD_BOOTZ=y
diff --git a/configs/tb100_defconfig b/configs/tb100_defconfig
index 2d157b2..6dc2242 100644
--- a/configs/tb100_defconfig
+++ b/configs/tb100_defconfig
@@ -1,6 +1,5 @@ 
 CONFIG_ARC=y
 CONFIG_TARGET_TB100=y
-CONFIG_DM_SERIAL=y
 CONFIG_SYS_CLK_FREQ=500000000
 CONFIG_SYS_TEXT_BASE=0x84000000
 CONFIG_DEFAULT_DEVICE_TREE="abilis_tb100"
@@ -16,5 +15,6 @@  CONFIG_OF_EMBED=y
 CONFIG_DM=y
 CONFIG_NETDEVICES=y
 CONFIG_ETH_DESIGNWARE=y
+CONFIG_DM_SERIAL=y
 CONFIG_SYS_NS16550=y
 CONFIG_USE_PRIVATE_LIBGCC=y
diff --git a/configs/tec-ng_defconfig b/configs/tec-ng_defconfig
index b710229..ac00d43 100644
--- a/configs/tec-ng_defconfig
+++ b/configs/tec-ng_defconfig
@@ -1,6 +1,5 @@ 
 CONFIG_ARM=y
 CONFIG_TEGRA=y
-CONFIG_SPL_DM=y
 CONFIG_TEGRA30=y
 CONFIG_TARGET_TEC_NG=y
 CONFIG_DEFAULT_DEVICE_TREE="tegra30-tec-ng"
@@ -29,10 +28,10 @@  CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_SPL_DM=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_WINBOND=y
 CONFIG_SYS_NS16550=y
 CONFIG_TEGRA20_SLINK=y
 CONFIG_USB=y
 CONFIG_DM_USB=y
-CONFIG_USE_PRIVATE_LIBGCC=y
diff --git a/configs/tec_defconfig b/configs/tec_defconfig
index dc7169b..20b7e70 100644
--- a/configs/tec_defconfig
+++ b/configs/tec_defconfig
@@ -1,6 +1,5 @@ 
 CONFIG_ARM=y
 CONFIG_TEGRA=y
-CONFIG_SPL_DM=y
 CONFIG_TEGRA20=y
 CONFIG_TARGET_TEC=y
 CONFIG_DEFAULT_DEVICE_TREE="tegra20-tec"
@@ -28,6 +27,7 @@  CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_SPL_DM=y
 CONFIG_DM_PMIC=y
 CONFIG_DM_REGULATOR=y
 CONFIG_DM_REGULATOR_FIXED=y
@@ -37,4 +37,3 @@  CONFIG_USB=y
 CONFIG_DM_USB=y
 CONFIG_DM_VIDEO=y
 CONFIG_VIDEO_TEGRA20=y
-CONFIG_USE_PRIVATE_LIBGCC=y
diff --git a/configs/theadorable-x86-dfi-bt700_defconfig b/configs/theadorable-x86-dfi-bt700_defconfig
index 3aba157..8ecfc99 100644
--- a/configs/theadorable-x86-dfi-bt700_defconfig
+++ b/configs/theadorable-x86-dfi-bt700_defconfig
@@ -1,5 +1,4 @@ 
 CONFIG_X86=y
-CONFIG_DM_I2C=y
 CONFIG_VENDOR_DFI=y
 CONFIG_DEFAULT_DEVICE_TREE="theadorable-x86-dfi-bt700"
 CONFIG_TARGET_DFI_BT700=y
@@ -39,6 +38,7 @@  CONFIG_OF_CONTROL=y
 CONFIG_REGMAP=y
 CONFIG_SYSCON=y
 CONFIG_CPU=y
+CONFIG_DM_I2C=y
 CONFIG_NUVOTON_NCT6102D=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_GIGADEVICE=y
diff --git a/configs/theadorable_debug_defconfig b/configs/theadorable_debug_defconfig
index 25ca2b0..a918d1f 100644
--- a/configs/theadorable_debug_defconfig
+++ b/configs/theadorable_debug_defconfig
@@ -1,7 +1,6 @@ 
 CONFIG_ARM=y
 CONFIG_ARCH_MVEBU=y
 CONFIG_TARGET_THEADORABLE=y
-CONFIG_DM_GPIO=y
 CONFIG_DEFAULT_DEVICE_TREE="armada-xp-theadorable"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
@@ -29,6 +28,7 @@  CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_SPL_OF_TRANSLATE=y
+CONFIG_DM_GPIO=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_MACRONIX=y
 CONFIG_SPI_FLASH_STMICRO=y
diff --git a/configs/theadorable_defconfig b/configs/theadorable_defconfig
index 89b00f2..8757c60 100644
--- a/configs/theadorable_defconfig
+++ b/configs/theadorable_defconfig
@@ -1,7 +1,6 @@ 
 CONFIG_ARM=y
 CONFIG_ARCH_MVEBU=y
 CONFIG_TARGET_THEADORABLE=y
-CONFIG_DM_GPIO=y
 CONFIG_DEFAULT_DEVICE_TREE="armada-xp-theadorable"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
@@ -23,6 +22,7 @@  CONFIG_CMD_EXT4=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_SPL_OF_TRANSLATE=y
+CONFIG_DM_GPIO=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_MACRONIX=y
 CONFIG_SPI_FLASH_STMICRO=y
diff --git a/configs/thuban_defconfig b/configs/thuban_defconfig
index 5fcffa2..e2f03b3 100644
--- a/configs/thuban_defconfig
+++ b/configs/thuban_defconfig
@@ -1,7 +1,6 @@ 
 CONFIG_ARM=y
 CONFIG_TARGET_THUBAN=y
 CONFIG_SYS_MALLOC_F_LEN=0x2000
-CONFIG_DM_SERIAL=y
 CONFIG_DEFAULT_DEVICE_TREE="am335x-draco"
 CONFIG_SPL=y
 CONFIG_BOOTDELAY=3
@@ -28,7 +27,6 @@  CONFIG_CMD_TIME=y
 CONFIG_CMD_EXT2=y
 CONFIG_OF_CONTROL=y
 CONFIG_OF_EMBED=y
-CONFIG_DM=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_WINBOND=y
 CONFIG_SYS_NS16550=y
@@ -40,4 +38,3 @@  CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_G_DNL_MANUFACTURER="Siemens AG"
 CONFIG_G_DNL_VENDOR_NUM=0x0908
 CONFIG_G_DNL_PRODUCT_NUM=0x02d2
-CONFIG_OF_LIBFDT=y
diff --git a/configs/thunderx_88xx_defconfig b/configs/thunderx_88xx_defconfig
index 28797f9..8242103 100644
--- a/configs/thunderx_88xx_defconfig
+++ b/configs/thunderx_88xx_defconfig
@@ -1,6 +1,5 @@ 
 CONFIG_ARM=y
 CONFIG_TARGET_THUNDERX_88XX=y
-CONFIG_DM_SERIAL=y
 CONFIG_DEFAULT_DEVICE_TREE="thunderx-88xx"
 CONFIG_BOOTDELAY=5
 CONFIG_HUSH_PARSER=y
@@ -16,6 +15,7 @@  CONFIG_SYS_PROMPT="ThunderX_88XX> "
 # CONFIG_CMD_NET is not set
 # CONFIG_CMD_NFS is not set
 CONFIG_DM=y
+CONFIG_DM_SERIAL=y
 CONFIG_DEBUG_UART=y
 CONFIG_DEBUG_UART_PL011=y
 CONFIG_DEBUG_UART_BASE=0x87e024000000
diff --git a/configs/tplink_wdr4300_defconfig b/configs/tplink_wdr4300_defconfig
index ed6239b..b1b069d 100644
--- a/configs/tplink_wdr4300_defconfig
+++ b/configs/tplink_wdr4300_defconfig
@@ -1,8 +1,5 @@ 
 CONFIG_MIPS=y
 CONFIG_SYS_MALLOC_F_LEN=0x2000
-CONFIG_DM_SERIAL=y
-CONFIG_DM_SPI=y
-CONFIG_DM_SPI_FLASH=y
 CONFIG_ARCH_ATH79=y
 CONFIG_BOARD_TPLINK_WDR4300=y
 CONFIG_DEFAULT_DEVICE_TREE="tplink_wdr4300"
@@ -20,6 +17,7 @@  CONFIG_CMD_DHCP=y
 CONFIG_CMD_PING=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_CLK=y
+CONFIG_DM_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_ATMEL=y
 CONFIG_SPI_FLASH_EON=y
@@ -34,7 +32,9 @@  CONFIG_SPI_FLASH_MTD=y
 CONFIG_DM_ETH=y
 CONFIG_AG7XXX=y
 CONFIG_PINCTRL=y
+CONFIG_DM_SERIAL=y
 CONFIG_SYS_NS16550=y
+CONFIG_DM_SPI=y
 CONFIG_ATH79_SPI=y
 CONFIG_USB=y
 CONFIG_DM_USB=y
diff --git a/configs/trimslice_defconfig b/configs/trimslice_defconfig
index 67857a5..5530b23 100644
--- a/configs/trimslice_defconfig
+++ b/configs/trimslice_defconfig
@@ -1,6 +1,5 @@ 
 CONFIG_ARM=y
 CONFIG_TEGRA=y
-CONFIG_SPL_DM=y
 CONFIG_TEGRA20=y
 CONFIG_TARGET_TRIMSLICE=y
 CONFIG_DEFAULT_DEVICE_TREE="tegra20-trimslice"
@@ -28,6 +27,7 @@  CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_SPL_DM=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_WINBOND=y
 CONFIG_RTL8169=y
@@ -36,4 +36,3 @@  CONFIG_SYS_NS16550=y
 CONFIG_TEGRA20_SFLASH=y
 CONFIG_USB=y
 CONFIG_DM_USB=y
-CONFIG_USE_PRIVATE_LIBGCC=y
diff --git a/configs/venice2_defconfig b/configs/venice2_defconfig
index 17a6000..2fd17fe 100644
--- a/configs/venice2_defconfig
+++ b/configs/venice2_defconfig
@@ -1,6 +1,5 @@ 
 CONFIG_ARM=y
 CONFIG_TEGRA=y
-CONFIG_SPL_DM=y
 CONFIG_TEGRA124=y
 CONFIG_TARGET_VENICE2=y
 CONFIG_DEFAULT_DEVICE_TREE="tegra124-venice2"
@@ -30,6 +29,7 @@  CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_SPL_DM=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_WINBOND=y
 CONFIG_SYS_NS16550=y
@@ -42,4 +42,3 @@  CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_G_DNL_MANUFACTURER="NVIDIA"
 CONFIG_G_DNL_VENDOR_NUM=0x0955
 CONFIG_G_DNL_PRODUCT_NUM=0x701a
-CONFIG_USE_PRIVATE_LIBGCC=y
diff --git a/configs/ventana_defconfig b/configs/ventana_defconfig
index 07a4afe..26ad8ea 100644
--- a/configs/ventana_defconfig
+++ b/configs/ventana_defconfig
@@ -1,6 +1,5 @@ 
 CONFIG_ARM=y
 CONFIG_TEGRA=y
-CONFIG_SPL_DM=y
 CONFIG_TEGRA20=y
 CONFIG_TARGET_VENTANA=y
 CONFIG_DEFAULT_DEVICE_TREE="tegra20-ventana"
@@ -27,6 +26,7 @@  CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_SPL_DM=y
 CONFIG_DM_PMIC=y
 CONFIG_DM_REGULATOR=y
 CONFIG_DM_REGULATOR_FIXED=y
@@ -36,4 +36,3 @@  CONFIG_USB=y
 CONFIG_DM_USB=y
 CONFIG_DM_VIDEO=y
 CONFIG_VIDEO_TEGRA20=y
-CONFIG_USE_PRIVATE_LIBGCC=y
diff --git a/configs/vexpress_aemv8a_dram_defconfig b/configs/vexpress_aemv8a_dram_defconfig
index 5dd6e75..15a7f6f 100644
--- a/configs/vexpress_aemv8a_dram_defconfig
+++ b/configs/vexpress_aemv8a_dram_defconfig
@@ -1,7 +1,6 @@ 
 CONFIG_ARM=y
 CONFIG_TARGET_VEXPRESS64_BASE_FVP_DRAM=y
 CONFIG_SYS_MALLOC_F_LEN=0x2000
-CONFIG_DM_SERIAL=y
 CONFIG_BOOTDELAY=1
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_PROMPT="VExpress64# "
@@ -24,4 +23,5 @@  CONFIG_CMD_CACHE=y
 # CONFIG_CMD_MISC is not set
 CONFIG_CMD_FAT=y
 CONFIG_DM=y
+CONFIG_DM_SERIAL=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/vexpress_aemv8a_juno_defconfig b/configs/vexpress_aemv8a_juno_defconfig
index 26cbc85..6930c1c 100644
--- a/configs/vexpress_aemv8a_juno_defconfig
+++ b/configs/vexpress_aemv8a_juno_defconfig
@@ -1,7 +1,6 @@ 
 CONFIG_ARM=y
 CONFIG_TARGET_VEXPRESS64_JUNO=y
 CONFIG_SYS_MALLOC_F_LEN=0x2000
-CONFIG_DM_SERIAL=y
 CONFIG_BOOTDELAY=1
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_PROMPT="VExpress64# "
@@ -24,4 +23,5 @@  CONFIG_CMD_CACHE=y
 # CONFIG_CMD_MISC is not set
 CONFIG_CMD_FAT=y
 CONFIG_DM=y
+CONFIG_DM_SERIAL=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/vexpress_aemv8a_semi_defconfig b/configs/vexpress_aemv8a_semi_defconfig
index 27c04ba..cb04d19 100644
--- a/configs/vexpress_aemv8a_semi_defconfig
+++ b/configs/vexpress_aemv8a_semi_defconfig
@@ -1,7 +1,6 @@ 
 CONFIG_ARM=y
 CONFIG_TARGET_VEXPRESS64_BASE_FVP=y
 CONFIG_SYS_MALLOC_F_LEN=0x2000
-CONFIG_DM_SERIAL=y
 CONFIG_BOOTDELAY=1
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_PROMPT="VExpress64# "
@@ -24,4 +23,5 @@  CONFIG_CMD_CACHE=y
 # CONFIG_CMD_MISC is not set
 CONFIG_CMD_FAT=y
 CONFIG_DM=y
+CONFIG_DM_SERIAL=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/vexpress_ca15_tc2_defconfig b/configs/vexpress_ca15_tc2_defconfig
index c39faaa..2f141dd 100644
--- a/configs/vexpress_ca15_tc2_defconfig
+++ b/configs/vexpress_ca15_tc2_defconfig
@@ -24,4 +24,3 @@  CONFIG_CMD_EXT4=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_OF_LIBFDT=y
-CONFIG_BOOTP_VCI_STRING="U-Boot.armv7.vexpress_ca15x2_tc2"
diff --git a/configs/vexpress_ca5x2_defconfig b/configs/vexpress_ca5x2_defconfig
index e71d45e..c495ee5 100644
--- a/configs/vexpress_ca5x2_defconfig
+++ b/configs/vexpress_ca5x2_defconfig
@@ -24,4 +24,3 @@  CONFIG_CMD_EXT4=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_OF_LIBFDT=y
-CONFIG_BOOTP_VCI_STRING="U-Boot.armv7.vexpress_ca5x2"
diff --git a/configs/vexpress_ca9x4_defconfig b/configs/vexpress_ca9x4_defconfig
index 20100a3..fcd6e26 100644
--- a/configs/vexpress_ca9x4_defconfig
+++ b/configs/vexpress_ca9x4_defconfig
@@ -24,4 +24,3 @@  CONFIG_CMD_EXT4=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_OF_LIBFDT=y
-CONFIG_BOOTP_VCI_STRING="U-Boot.armv7.vexpress_ca9x4"
diff --git a/configs/vf610twr_defconfig b/configs/vf610twr_defconfig
index 63a6ab9..d196738 100644
--- a/configs/vf610twr_defconfig
+++ b/configs/vf610twr_defconfig
@@ -1,7 +1,5 @@ 
 CONFIG_ARM=y
 CONFIG_TARGET_VF610TWR=y
-CONFIG_DM_SERIAL=y
-CONFIG_DM_GPIO=y
 CONFIG_DEFAULT_DEVICE_TREE="vf610-twr"
 CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/freescale/vf610twr/imximage.cfg,ENV_IS_IN_MMC"
 CONFIG_BOOTDELAY=3
@@ -19,8 +17,10 @@  CONFIG_CMD_PING=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
 CONFIG_DM=y
+CONFIG_DM_GPIO=y
 CONFIG_VYBRID_GPIO=y
 CONFIG_NAND_VF610_NFC=y
 CONFIG_SYS_NAND_BUSWIDTH_16BIT=y
 CONFIG_SPI_FLASH=y
+CONFIG_DM_SERIAL=y
 CONFIG_FSL_LPUART=y
diff --git a/configs/vf610twr_nand_defconfig b/configs/vf610twr_nand_defconfig
index f66ff4a..faed3e0 100644
--- a/configs/vf610twr_nand_defconfig
+++ b/configs/vf610twr_nand_defconfig
@@ -1,7 +1,5 @@ 
 CONFIG_ARM=y
 CONFIG_TARGET_VF610TWR=y
-CONFIG_DM_SERIAL=y
-CONFIG_DM_GPIO=y
 CONFIG_DEFAULT_DEVICE_TREE="vf610-twr"
 CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/freescale/vf610twr/imximage.cfg,ENV_IS_IN_NAND"
 CONFIG_BOOTDELAY=3
@@ -19,8 +17,10 @@  CONFIG_CMD_PING=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
 CONFIG_DM=y
+CONFIG_DM_GPIO=y
 CONFIG_VYBRID_GPIO=y
 CONFIG_NAND_VF610_NFC=y
 CONFIG_SYS_NAND_BUSWIDTH_16BIT=y
 CONFIG_SPI_FLASH=y
+CONFIG_DM_SERIAL=y
 CONFIG_FSL_LPUART=y
diff --git a/configs/warp7_defconfig b/configs/warp7_defconfig
index 617e0a0..495e35d 100644
--- a/configs/warp7_defconfig
+++ b/configs/warp7_defconfig
@@ -24,12 +24,12 @@  CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_USB=y
+CONFIG_USB_EHCI_HCD=y
+CONFIG_MXC_USB_OTG_HACTIVE=y
 CONFIG_USB_GADGET=y
 CONFIG_CI_UDC=y
 CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_G_DNL_MANUFACTURER="FSL"
 CONFIG_G_DNL_VENDOR_NUM=0x0525
 CONFIG_G_DNL_PRODUCT_NUM=0xa4a5
-CONFIG_USB_EHCI_HCD=y
-CONFIG_MXC_USB_OTG_HACTIVE=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/whistler_defconfig b/configs/whistler_defconfig
index ca753a4..3f43f99 100644
--- a/configs/whistler_defconfig
+++ b/configs/whistler_defconfig
@@ -1,6 +1,5 @@ 
 CONFIG_ARM=y
 CONFIG_TEGRA=y
-CONFIG_SPL_DM=y
 CONFIG_TEGRA20=y
 CONFIG_TARGET_WHISTLER=y
 CONFIG_DEFAULT_DEVICE_TREE="tegra20-whistler"
@@ -26,7 +25,7 @@  CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_SPL_DM=y
 CONFIG_SYS_NS16550=y
 CONFIG_USB=y
 CONFIG_DM_USB=y
-CONFIG_USE_PRIVATE_LIBGCC=y
diff --git a/configs/work_92105_defconfig b/configs/work_92105_defconfig
index e9fa773..58771f4 100644
--- a/configs/work_92105_defconfig
+++ b/configs/work_92105_defconfig
@@ -1,10 +1,7 @@ 
 CONFIG_ARM=y
 CONFIG_TARGET_WORK_92105=y
-CONFIG_SPL_SYS_MALLOC_SIMPLE=y
-CONFIG_SPL_DM=y
-CONFIG_DM_SERIAL=y
-CONFIG_DM_GPIO=y
 CONFIG_SPL=y
+CONFIG_SPL_SYS_MALLOC_SIMPLE=y
 CONFIG_BOOTDELAY=3
 CONFIG_HUSH_PARSER=y
 # CONFIG_CMD_IMLS is not set
@@ -17,4 +14,7 @@  CONFIG_CMD_DHCP=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_DM=y
+CONFIG_SPL_DM=y
+CONFIG_DM_GPIO=y
+CONFIG_DM_SERIAL=y
 CONFIG_SYS_NS16550=y
diff --git a/configs/xilinx_zynqmp_ep_defconfig b/configs/xilinx_zynqmp_ep_defconfig
index c975c14..5f285d8 100644
--- a/configs/xilinx_zynqmp_ep_defconfig
+++ b/configs/xilinx_zynqmp_ep_defconfig
@@ -3,7 +3,6 @@  CONFIG_SYS_CONFIG_NAME="xilinx_zynqmp_ep"
 CONFIG_ARCH_ZYNQMP=y
 CONFIG_SYS_MALLOC_F_LEN=0x8000
 CONFIG_ZYNQMP_USB=y
-CONFIG_DM_GPIO=y
 CONFIG_SYS_TEXT_BASE=0x8000000
 CONFIG_DEFAULT_DEVICE_TREE="zynqmp-ep108"
 CONFIG_SPL=y
@@ -47,6 +46,7 @@  CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_SPL_DM=y
 CONFIG_SPL_DM_SEQ_ALIAS=y
 CONFIG_BLK=y
+CONFIG_DM_GPIO=y
 CONFIG_DM_I2C=y
 CONFIG_SYS_I2C_CADENCE=y
 CONFIG_DM_MMC=y
diff --git a/configs/xilinx_zynqmp_zc1751_xm015_dc1_defconfig b/configs/xilinx_zynqmp_zc1751_xm015_dc1_defconfig
index 52eb8c9..059db84 100644
--- a/configs/xilinx_zynqmp_zc1751_xm015_dc1_defconfig
+++ b/configs/xilinx_zynqmp_zc1751_xm015_dc1_defconfig
@@ -3,7 +3,6 @@  CONFIG_SYS_CONFIG_NAME="xilinx_zynqmp_zc1751_xm015_dc1"
 CONFIG_ARCH_ZYNQMP=y
 CONFIG_SYS_MALLOC_F_LEN=0x8000
 CONFIG_ZYNQMP_USB=y
-CONFIG_DM_GPIO=y
 CONFIG_SYS_TEXT_BASE=0x8000000
 CONFIG_DEFAULT_DEVICE_TREE="zynqmp-zc1751-xm015-dc1"
 CONFIG_SPL=y
@@ -38,6 +37,7 @@  CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_SPL_DM=y
 CONFIG_SPL_DM_SEQ_ALIAS=y
 CONFIG_BLK=y
+CONFIG_DM_GPIO=y
 CONFIG_DM_I2C=y
 CONFIG_SYS_I2C_CADENCE=y
 CONFIG_DM_MMC=y
diff --git a/configs/xilinx_zynqmp_zc1751_xm016_dc2_defconfig b/configs/xilinx_zynqmp_zc1751_xm016_dc2_defconfig
index 928806b..0620646 100644
--- a/configs/xilinx_zynqmp_zc1751_xm016_dc2_defconfig
+++ b/configs/xilinx_zynqmp_zc1751_xm016_dc2_defconfig
@@ -3,7 +3,6 @@  CONFIG_SYS_CONFIG_NAME="xilinx_zynqmp_zc1751_xm016_dc2"
 CONFIG_ARCH_ZYNQMP=y
 CONFIG_SYS_MALLOC_F_LEN=0x8000
 CONFIG_ZYNQMP_USB=y
-CONFIG_DM_GPIO=y
 CONFIG_SYS_TEXT_BASE=0x8000000
 CONFIG_DEFAULT_DEVICE_TREE="zynqmp-zc1751-xm016-dc2"
 CONFIG_SPL=y
@@ -38,6 +37,7 @@  CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_SPL_DM=y
 CONFIG_SPL_DM_SEQ_ALIAS=y
 CONFIG_BLK=y
+CONFIG_DM_GPIO=y
 CONFIG_DM_I2C=y
 CONFIG_SYS_I2C_CADENCE=y
 CONFIG_DM_MMC=y
diff --git a/configs/xilinx_zynqmp_zc1751_xm018_dc4_defconfig b/configs/xilinx_zynqmp_zc1751_xm018_dc4_defconfig
index 6a648da..3ac22cb 100644
--- a/configs/xilinx_zynqmp_zc1751_xm018_dc4_defconfig
+++ b/configs/xilinx_zynqmp_zc1751_xm018_dc4_defconfig
@@ -2,7 +2,6 @@  CONFIG_ARM=y
 CONFIG_SYS_CONFIG_NAME="xilinx_zynqmp_zc1751_xm018_dc4"
 CONFIG_ARCH_ZYNQMP=y
 CONFIG_SYS_MALLOC_F_LEN=0x8000
-CONFIG_DM_GPIO=y
 CONFIG_SYS_TEXT_BASE=0x8000000
 CONFIG_DEFAULT_DEVICE_TREE="zynqmp-zc1751-xm018-dc4"
 CONFIG_SPL=y
@@ -34,6 +33,7 @@  CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_SPL_DM=y
 CONFIG_SPL_DM_SEQ_ALIAS=y
 CONFIG_BLK=y
+CONFIG_DM_GPIO=y
 CONFIG_DM_I2C=y
 CONFIG_SYS_I2C_CADENCE=y
 CONFIG_DM_MMC=y
diff --git a/configs/xilinx_zynqmp_zc1751_xm019_dc5_defconfig b/configs/xilinx_zynqmp_zc1751_xm019_dc5_defconfig
index c6521e8..0e82bf2 100644
--- a/configs/xilinx_zynqmp_zc1751_xm019_dc5_defconfig
+++ b/configs/xilinx_zynqmp_zc1751_xm019_dc5_defconfig
@@ -2,7 +2,6 @@  CONFIG_ARM=y
 CONFIG_SYS_CONFIG_NAME="xilinx_zynqmp_zc1751_xm019_dc5"
 CONFIG_ARCH_ZYNQMP=y
 CONFIG_SYS_MALLOC_F_LEN=0x8000
-CONFIG_DM_GPIO=y
 CONFIG_SYS_TEXT_BASE=0x8000000
 CONFIG_DEFAULT_DEVICE_TREE="zynqmp-zc1751-xm019-dc5"
 CONFIG_SPL=y
@@ -33,6 +32,7 @@  CONFIG_OF_EMBED=y
 CONFIG_SPL_DM=y
 CONFIG_SPL_DM_SEQ_ALIAS=y
 CONFIG_BLK=y
+CONFIG_DM_GPIO=y
 CONFIG_DM_I2C=y
 CONFIG_SYS_I2C_CADENCE=y
 CONFIG_DM_MMC=y
diff --git a/configs/xilinx_zynqmp_zcu102_defconfig b/configs/xilinx_zynqmp_zcu102_defconfig
index f0378fe..07e29fb 100644
--- a/configs/xilinx_zynqmp_zcu102_defconfig
+++ b/configs/xilinx_zynqmp_zcu102_defconfig
@@ -3,7 +3,6 @@  CONFIG_SYS_CONFIG_NAME="xilinx_zynqmp_zcu102"
 CONFIG_ARCH_ZYNQMP=y
 CONFIG_SYS_MALLOC_F_LEN=0x8000
 CONFIG_ZYNQMP_USB=y
-CONFIG_DM_GPIO=y
 CONFIG_SYS_TEXT_BASE=0x8000000
 CONFIG_DEFAULT_DEVICE_TREE="zynqmp-zcu102"
 CONFIG_SPL=y
@@ -38,6 +37,7 @@  CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_SPL_DM=y
 CONFIG_SPL_DM_SEQ_ALIAS=y
 CONFIG_BLK=y
+CONFIG_DM_GPIO=y
 CONFIG_DM_MMC=y
 CONFIG_DM_MMC_OPS=y
 CONFIG_ZYNQ_SDHCI=y
diff --git a/configs/xilinx_zynqmp_zcu102_revB_defconfig b/configs/xilinx_zynqmp_zcu102_revB_defconfig
index cb810cf..72679db 100644
--- a/configs/xilinx_zynqmp_zcu102_revB_defconfig
+++ b/configs/xilinx_zynqmp_zcu102_revB_defconfig
@@ -3,7 +3,6 @@  CONFIG_SYS_CONFIG_NAME="xilinx_zynqmp_zcu102"
 CONFIG_ARCH_ZYNQMP=y
 CONFIG_SYS_MALLOC_F_LEN=0x8000
 CONFIG_ZYNQMP_USB=y
-CONFIG_DM_GPIO=y
 CONFIG_SYS_TEXT_BASE=0x8000000
 CONFIG_DEFAULT_DEVICE_TREE="zynqmp-zcu102-revB"
 CONFIG_SPL=y
@@ -38,6 +37,7 @@  CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_SPL_DM=y
 CONFIG_SPL_DM_SEQ_ALIAS=y
 CONFIG_BLK=y
+CONFIG_DM_GPIO=y
 CONFIG_DM_MMC=y
 CONFIG_DM_MMC_OPS=y
 CONFIG_ZYNQ_SDHCI=y
diff --git a/configs/xtfpga_defconfig b/configs/xtfpga_defconfig
index 535850c..9a78bd5 100644
--- a/configs/xtfpga_defconfig
+++ b/configs/xtfpga_defconfig
@@ -14,9 +14,9 @@  CONFIG_DM=y
 # CONFIG_DM_DEVICE_REMOVE is not set
 # CONFIG_DM_STDIO is not set
 # CONFIG_DM_SEQ_ALIAS is not set
-CONFIG_SYSRESET=y
 CONFIG_DM_ETH=y
 CONFIG_PHYLIB=y
 CONFIG_ETHOC=y
 CONFIG_SYS_NS16550=y
+CONFIG_SYSRESET=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/zc5202_defconfig b/configs/zc5202_defconfig
index 2ebeec0..cd5cd73 100644
--- a/configs/zc5202_defconfig
+++ b/configs/zc5202_defconfig
@@ -2,8 +2,8 @@  CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
 CONFIG_TARGET_ZC5202=y
 CONFIG_SPL=y
-CONFIG_BOOTDELAY=3
 CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/imx-common/spl_sd.cfg,MX6Q"
+CONFIG_BOOTDELAY=3
 CONFIG_CMD_MMC=y
 CONFIG_CMD_SF=y
 CONFIG_CMD_I2C=y
diff --git a/configs/zc5601_defconfig b/configs/zc5601_defconfig
index a52ae6f..4ef7ca1 100644
--- a/configs/zc5601_defconfig
+++ b/configs/zc5601_defconfig
@@ -2,8 +2,8 @@  CONFIG_ARM=y
 CONFIG_ARCH_MX6=y
 CONFIG_TARGET_ZC5601=y
 CONFIG_SPL=y
-CONFIG_BOOTDELAY=3
 CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/imx-common/spl_sd.cfg,MX6Q"
+CONFIG_BOOTDELAY=3
 CONFIG_CMD_MMC=y
 CONFIG_CMD_SF=y
 CONFIG_CMD_I2C=y