Re: [U-Boot] [PATCH v3 00/45] Kconfig: Move CONFIG_SPL_..._SUPPORT to Kconfig

2016-09-18 Thread Simon Glass
Hi Tom,

On 18 September 2016 at 09:58, Tom Rini  wrote:
> On Mon, Sep 12, 2016 at 11:18:18PM -0600, Simon Glass wrote:
>
>> This series moves all the CONFIG_SPL_..._SUPPORT options to Kconfig and
>> fixes up existing boards to continue to build.
>>
>> It also adds a few small but useful features to moveconfig.
>>
>> There is existing work going on in this area, so some of these patches may
>> be superseded. It has taken me a while to get this building cleanly. But I
>> have run out of time so want to get this out.
>>
>> As mentioned on a recent thread [1] there is some confusion about whether an
>> option means enabling driver support or media support. Andrew's recent
>> series seems like a good vehicle to tidy that up. But I hope this series
>> will make it easier.
>>
>> NOTE: in the v2 series I have tried to use common things in Kconfig to
>> reduce the diffs in the defconfig files. This has helped a fair bit. But it
>> is very error-prone and time consuming. Also I have had to add some
>> exceptions (disabling an option in specific board configs). Overall it was
>> not a pleasant experience :-(
>>
>> There are a few strange features of this conversion. The main difficulty is
>> that some PowerPC boards do things like this in their board config file:
>>
>> This means that TPL reuses the SPL options. We can't support this in Kconfig
>> so I have added a small number of CONFIG_TPL_xxx_SUPPORT options to cope
>> with this. This made the conversion more painful than it should have been.
>>
>> A related issue is boards using a common header file and setting options only
>> for SPL:
>>
>> This is not noticed by moveconfig so we have to clean it up manually. Also
>> there are a few incorrect things where Kconfig options are set with #define:
>>
>> Finally, many defconfig files are not ordered correctly, resulting in larger
>> patches than we might like. It would be great to have a solution for this,
>> perhaps with buildman providing a warning. But it might slow down
>> development.
>>
>> The series is fully build-tested (for bisectability) and causes no failures
>> for the boards that already pass. The following boards fail for me at
>> present on mainline (which I have not yet looked at):
>>
>> 01: buildman
>>   blackfin:  +   cm-bf527 bf609-ezkit bf537-stamp
>>  sparc:  +   grsim grsim_leon2 gr_cpci_ax2000 gr_xc3s_1500 gr_ep2s60
>>  nios2:  +   10m50 3c120
>> microblaze:  +   microblaze-generic
>>   openrisc:  +   openrisc-generic
>>
>> [1] https://patchwork.ozlabs.org/patch/661511/
>
> This is not totally size neutral.  I've looked over the changes and in
> some cases, strings just get resized slightly, and, it happens.  In
> other cases, it comes down to the "fun" games I did on am335x to support
> network booting in SPL and the size constrains that can be run into
> there, along with just including extra stuff.  It all still links, so
> I'll clean up that config afterwards.

The latter is a funny case. I assumed something interesting was going
on but didn't dig into what.

It would be helpful if SoC maintainers would take a look at the
resulting defconfig files with their boards and see if some of the
variation could be removed. E.g. I suspect that some boards disable a
particular option for no particular reason. More uniformity (by
setting defaults in Kconfig however distasteful) will reduce the
defconfig size.

> --
> Tom
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH v3 00/45] Kconfig: Move CONFIG_SPL_..._SUPPORT to Kconfig

2016-09-18 Thread Tom Rini
On Mon, Sep 12, 2016 at 11:18:18PM -0600, Simon Glass wrote:

> This series moves all the CONFIG_SPL_..._SUPPORT options to Kconfig and
> fixes up existing boards to continue to build.
> 
> It also adds a few small but useful features to moveconfig.
> 
> There is existing work going on in this area, so some of these patches may
> be superseded. It has taken me a while to get this building cleanly. But I
> have run out of time so want to get this out.
> 
> As mentioned on a recent thread [1] there is some confusion about whether an
> option means enabling driver support or media support. Andrew's recent
> series seems like a good vehicle to tidy that up. But I hope this series
> will make it easier.
> 
> NOTE: in the v2 series I have tried to use common things in Kconfig to
> reduce the diffs in the defconfig files. This has helped a fair bit. But it
> is very error-prone and time consuming. Also I have had to add some
> exceptions (disabling an option in specific board configs). Overall it was
> not a pleasant experience :-(
> 
> There are a few strange features of this conversion. The main difficulty is
> that some PowerPC boards do things like this in their board config file:
> 
> This means that TPL reuses the SPL options. We can't support this in Kconfig
> so I have added a small number of CONFIG_TPL_xxx_SUPPORT options to cope
> with this. This made the conversion more painful than it should have been.
> 
> A related issue is boards using a common header file and setting options only
> for SPL:
> 
> This is not noticed by moveconfig so we have to clean it up manually. Also
> there are a few incorrect things where Kconfig options are set with #define:
> 
> Finally, many defconfig files are not ordered correctly, resulting in larger
> patches than we might like. It would be great to have a solution for this,
> perhaps with buildman providing a warning. But it might slow down
> development.
> 
> The series is fully build-tested (for bisectability) and causes no failures
> for the boards that already pass. The following boards fail for me at
> present on mainline (which I have not yet looked at):
> 
> 01: buildman
>   blackfin:  +   cm-bf527 bf609-ezkit bf537-stamp
>  sparc:  +   grsim grsim_leon2 gr_cpci_ax2000 gr_xc3s_1500 gr_ep2s60
>  nios2:  +   10m50 3c120
> microblaze:  +   microblaze-generic
>   openrisc:  +   openrisc-generic
> 
> [1] https://patchwork.ozlabs.org/patch/661511/

This is not totally size neutral.  I've looked over the changes and in
some cases, strings just get resized slightly, and, it happens.  In
other cases, it comes down to the "fun" games I did on am335x to support
network booting in SPL and the size constrains that can be run into
there, along with just including extra stuff.  It all still links, so
I'll clean up that config afterwards.

-- 
Tom


signature.asc
Description: Digital signature
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH v3 00/45] Kconfig: Move CONFIG_SPL_..._SUPPORT to Kconfig

2016-09-13 Thread Heiko Schocher

Hello Simon,

Am 13.09.2016 um 15:08 schrieb Simon Glass:

Hi Heiko,

On 13 September 2016 at 00:02, Heiko Schocher  wrote:

Hello Simon,


Am 13.09.2016 um 07:18 schrieb Simon Glass:


This series moves all the CONFIG_SPL_..._SUPPORT options to Kconfig and
fixes up existing boards to continue to build.

It also adds a few small but useful features to moveconfig.

There is existing work going on in this area, so some of these patches may
be superseded. It has taken me a while to get this building cleanly. But I
have run out of time so want to get this out.

As mentioned on a recent thread [1] there is some confusion about whether
an
option means enabling driver support or media support. Andrew's recent
series seems like a good vehicle to tidy that up. But I hope this series
will make it easier.

NOTE: in the v2 series I have tried to use common things in Kconfig to
reduce the diffs in the defconfig files. This has helped a fair bit. But
it
is very error-prone and time consuming. Also I have had to add some
exceptions (disabling an option in specific board configs). Overall it was
not a pleasant experience :-(

There are a few strange features of this conversion. The main difficulty
is
that some PowerPC boards do things like this in their board config file:

This means that TPL reuses the SPL options. We can't support this in
Kconfig
so I have added a small number of CONFIG_TPL_xxx_SUPPORT options to cope
with this. This made the conversion more painful than it should have been.

A related issue is boards using a common header file and setting options
only
for SPL:

This is not noticed by moveconfig so we have to clean it up manually. Also
there are a few incorrect things where Kconfig options are set with
#define:

Finally, many defconfig files are not ordered correctly, resulting in
larger
patches than we might like. It would be great to have a solution for this,
perhaps with buildman providing a warning. But it might slow down
development.

The series is fully build-tested (for bisectability) and causes no
failures
for the boards that already pass. The following boards fail for me at
present on mainline (which I have not yet looked at):

01: buildman
blackfin:  +   cm-bf527 bf609-ezkit bf537-stamp
   sparc:  +   grsim grsim_leon2 gr_cpci_ax2000 gr_xc3s_1500 gr_ep2s60
   nios2:  +   10m50 3c120
microblaze:  +   microblaze-generic
openrisc:  +   openrisc-generic

[1] https://patchwork.ozlabs.org/patch/661511/

Changes in v3:
- Move SPL_NET_VCI_STRING into the SPL Kconfig file also
- Rebase on master

Changes in v2:
- Add some notes on this option to moveconfig.py
- Improve the commit message and add one for resyncing with savedefconfig
- Add some notes on this option to moveconfig.py
- Add new patch to convert CONFIG_SPL_NET_VCI_STRING
- Drop CONFIG_SPL_PINCTRL_SUPPORT
- Lots of work to make use of common values across multiple boards
- Added a patch to change 'spear' CONFIGs to upper case

Simon Glass (45):
Correct defconfigs using savedefconfig
moveconfig: Add an option to skip prompts
moveconfig: Add an option to commit changes
Kconfig: Move SPL settings into their own file
arm: fsl: Adjust ordering of #ifndef CONFIG_SPL_BUILD
Drop CONFIG_SPL_RAM_SUPPORT
Use separate options for TPL support
Kconfig: spl: Add SPL support options to Kconfig
Kconfig: tpl: Add some TPL support options to Kconfig
Move existing use of CONFIG_SPL_DM to Kconfig
Move existing use of CONFIG_SPL_RSA to Kconfig
spear: Use upper case for CONFIG options
Convert CONFIG_SPL_CRYPTO_SUPPORT to Kconfig
Convert CONFIG_SPL_HASH_SUPPORT to Kconfig
Convert CONFIG_SPL_DMA_SUPPORT to Kconfig
Convert CONFIG_SPL_DRIVERS_MISC_SUPPORT to Kconfig
Convert CONFIG_SPL_ENV_SUPPORT to Kconfig
Convert CONFIG_SPL_ETH_SUPPORT to Kconfig
Convert CONFIG_SPL_EXT_SUPPORT to Kconfig
Convert CONFIG_SPL_FAT_SUPPORT to Kconfig
Convert CONFIG_SPL_GPIO_SUPPORT to Kconfig
Convert CONFIG_SPL_I2C_SUPPORT to Kconfig
Convert CONFIG_SPL_LIBCOMMON_SUPPORT to Kconfig
Convert CONFIG_SPL_LIBDISK_SUPPORT to Kconfig
Convert CONFIG_SPL_LIBGENERIC_SUPPORT to Kconfig
Convert CONFIG_SPL_MMC_SUPPORT to Kconfig
Convert CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT to Kconfig
Convert CONFIG_SPL_MTD_SUPPORT to Kconfig
Convert CONFIG_SPL_MUSB_NEW_SUPPORT to Kconfig
Convert CONFIG_SPL_NAND_SUPPORT to Kconfig
Convert CONFIG_SPL_NET_VCI_STRING to Kconfig
Convert CONFIG_SPL_NET_SUPPORT to Kconfig
Convert CONFIG_SPL_NOR_SUPPORT to Kconfig
Convert CONFIG_SPL_ONENAND_SUPPORT to Kconfig
Remove CONFIG_SPL_PINCTRL_SUPPORT
Convert CONFIG_SPL_POWER_SUPPORT to Kconfig
Convert CONFIG_SPL_SATA_SUPPORT to Kconfig
Convert CONFIG_SPL_SERIAL_SUPPORT to Kconfig
Convert CONFIG_SPL_SPI_FLASH_SUPPORT to Kconfig
Convert CONFIG_SPL_SPI_SUPPORT to Kconfig
Convert CONFIG_SPL_USBETH_SUPPORT to Kconfig
Convert 

Re: [U-Boot] [PATCH v3 00/45] Kconfig: Move CONFIG_SPL_..._SUPPORT to Kconfig

2016-09-13 Thread Simon Glass
Hi Heiko,

On 13 September 2016 at 00:02, Heiko Schocher  wrote:
> Hello Simon,
>
>
> Am 13.09.2016 um 07:18 schrieb Simon Glass:
>>
>> This series moves all the CONFIG_SPL_..._SUPPORT options to Kconfig and
>> fixes up existing boards to continue to build.
>>
>> It also adds a few small but useful features to moveconfig.
>>
>> There is existing work going on in this area, so some of these patches may
>> be superseded. It has taken me a while to get this building cleanly. But I
>> have run out of time so want to get this out.
>>
>> As mentioned on a recent thread [1] there is some confusion about whether
>> an
>> option means enabling driver support or media support. Andrew's recent
>> series seems like a good vehicle to tidy that up. But I hope this series
>> will make it easier.
>>
>> NOTE: in the v2 series I have tried to use common things in Kconfig to
>> reduce the diffs in the defconfig files. This has helped a fair bit. But
>> it
>> is very error-prone and time consuming. Also I have had to add some
>> exceptions (disabling an option in specific board configs). Overall it was
>> not a pleasant experience :-(
>>
>> There are a few strange features of this conversion. The main difficulty
>> is
>> that some PowerPC boards do things like this in their board config file:
>>
>> This means that TPL reuses the SPL options. We can't support this in
>> Kconfig
>> so I have added a small number of CONFIG_TPL_xxx_SUPPORT options to cope
>> with this. This made the conversion more painful than it should have been.
>>
>> A related issue is boards using a common header file and setting options
>> only
>> for SPL:
>>
>> This is not noticed by moveconfig so we have to clean it up manually. Also
>> there are a few incorrect things where Kconfig options are set with
>> #define:
>>
>> Finally, many defconfig files are not ordered correctly, resulting in
>> larger
>> patches than we might like. It would be great to have a solution for this,
>> perhaps with buildman providing a warning. But it might slow down
>> development.
>>
>> The series is fully build-tested (for bisectability) and causes no
>> failures
>> for the boards that already pass. The following boards fail for me at
>> present on mainline (which I have not yet looked at):
>>
>> 01: buildman
>>blackfin:  +   cm-bf527 bf609-ezkit bf537-stamp
>>   sparc:  +   grsim grsim_leon2 gr_cpci_ax2000 gr_xc3s_1500 gr_ep2s60
>>   nios2:  +   10m50 3c120
>> microblaze:  +   microblaze-generic
>>openrisc:  +   openrisc-generic
>>
>> [1] https://patchwork.ozlabs.org/patch/661511/
>>
>> Changes in v3:
>> - Move SPL_NET_VCI_STRING into the SPL Kconfig file also
>> - Rebase on master
>>
>> Changes in v2:
>> - Add some notes on this option to moveconfig.py
>> - Improve the commit message and add one for resyncing with savedefconfig
>> - Add some notes on this option to moveconfig.py
>> - Add new patch to convert CONFIG_SPL_NET_VCI_STRING
>> - Drop CONFIG_SPL_PINCTRL_SUPPORT
>> - Lots of work to make use of common values across multiple boards
>> - Added a patch to change 'spear' CONFIGs to upper case
>>
>> Simon Glass (45):
>>Correct defconfigs using savedefconfig
>>moveconfig: Add an option to skip prompts
>>moveconfig: Add an option to commit changes
>>Kconfig: Move SPL settings into their own file
>>arm: fsl: Adjust ordering of #ifndef CONFIG_SPL_BUILD
>>Drop CONFIG_SPL_RAM_SUPPORT
>>Use separate options for TPL support
>>Kconfig: spl: Add SPL support options to Kconfig
>>Kconfig: tpl: Add some TPL support options to Kconfig
>>Move existing use of CONFIG_SPL_DM to Kconfig
>>Move existing use of CONFIG_SPL_RSA to Kconfig
>>spear: Use upper case for CONFIG options
>>Convert CONFIG_SPL_CRYPTO_SUPPORT to Kconfig
>>Convert CONFIG_SPL_HASH_SUPPORT to Kconfig
>>Convert CONFIG_SPL_DMA_SUPPORT to Kconfig
>>Convert CONFIG_SPL_DRIVERS_MISC_SUPPORT to Kconfig
>>Convert CONFIG_SPL_ENV_SUPPORT to Kconfig
>>Convert CONFIG_SPL_ETH_SUPPORT to Kconfig
>>Convert CONFIG_SPL_EXT_SUPPORT to Kconfig
>>Convert CONFIG_SPL_FAT_SUPPORT to Kconfig
>>Convert CONFIG_SPL_GPIO_SUPPORT to Kconfig
>>Convert CONFIG_SPL_I2C_SUPPORT to Kconfig
>>Convert CONFIG_SPL_LIBCOMMON_SUPPORT to Kconfig
>>Convert CONFIG_SPL_LIBDISK_SUPPORT to Kconfig
>>Convert CONFIG_SPL_LIBGENERIC_SUPPORT to Kconfig
>>Convert CONFIG_SPL_MMC_SUPPORT to Kconfig
>>Convert CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT to Kconfig
>>Convert CONFIG_SPL_MTD_SUPPORT to Kconfig
>>Convert CONFIG_SPL_MUSB_NEW_SUPPORT to Kconfig
>>Convert CONFIG_SPL_NAND_SUPPORT to Kconfig
>>Convert CONFIG_SPL_NET_VCI_STRING to Kconfig
>>Convert CONFIG_SPL_NET_SUPPORT to Kconfig
>>Convert CONFIG_SPL_NOR_SUPPORT to Kconfig
>>Convert CONFIG_SPL_ONENAND_SUPPORT to Kconfig
>>Remove CONFIG_SPL_PINCTRL_SUPPORT
>>Convert CONFIG_SPL_POWER_SUPPORT to Kconfig
>>Convert CONFIG_SPL_SATA_SUPPORT to Kconfig
>>

Re: [U-Boot] [PATCH v3 00/45] Kconfig: Move CONFIG_SPL_..._SUPPORT to Kconfig

2016-09-13 Thread Heiko Schocher

Hello Simon,

Am 13.09.2016 um 07:18 schrieb Simon Glass:

This series moves all the CONFIG_SPL_..._SUPPORT options to Kconfig and
fixes up existing boards to continue to build.

It also adds a few small but useful features to moveconfig.

There is existing work going on in this area, so some of these patches may
be superseded. It has taken me a while to get this building cleanly. But I
have run out of time so want to get this out.

As mentioned on a recent thread [1] there is some confusion about whether an
option means enabling driver support or media support. Andrew's recent
series seems like a good vehicle to tidy that up. But I hope this series
will make it easier.

NOTE: in the v2 series I have tried to use common things in Kconfig to
reduce the diffs in the defconfig files. This has helped a fair bit. But it
is very error-prone and time consuming. Also I have had to add some
exceptions (disabling an option in specific board configs). Overall it was
not a pleasant experience :-(

There are a few strange features of this conversion. The main difficulty is
that some PowerPC boards do things like this in their board config file:

This means that TPL reuses the SPL options. We can't support this in Kconfig
so I have added a small number of CONFIG_TPL_xxx_SUPPORT options to cope
with this. This made the conversion more painful than it should have been.

A related issue is boards using a common header file and setting options only
for SPL:

This is not noticed by moveconfig so we have to clean it up manually. Also
there are a few incorrect things where Kconfig options are set with #define:

Finally, many defconfig files are not ordered correctly, resulting in larger
patches than we might like. It would be great to have a solution for this,
perhaps with buildman providing a warning. But it might slow down
development.

The series is fully build-tested (for bisectability) and causes no failures
for the boards that already pass. The following boards fail for me at
present on mainline (which I have not yet looked at):

01: buildman
   blackfin:  +   cm-bf527 bf609-ezkit bf537-stamp
  sparc:  +   grsim grsim_leon2 gr_cpci_ax2000 gr_xc3s_1500 gr_ep2s60
  nios2:  +   10m50 3c120
microblaze:  +   microblaze-generic
   openrisc:  +   openrisc-generic

[1] https://patchwork.ozlabs.org/patch/661511/

Changes in v3:
- Move SPL_NET_VCI_STRING into the SPL Kconfig file also
- Rebase on master

Changes in v2:
- Add some notes on this option to moveconfig.py
- Improve the commit message and add one for resyncing with savedefconfig
- Add some notes on this option to moveconfig.py
- Add new patch to convert CONFIG_SPL_NET_VCI_STRING
- Drop CONFIG_SPL_PINCTRL_SUPPORT
- Lots of work to make use of common values across multiple boards
- Added a patch to change 'spear' CONFIGs to upper case

Simon Glass (45):
   Correct defconfigs using savedefconfig
   moveconfig: Add an option to skip prompts
   moveconfig: Add an option to commit changes
   Kconfig: Move SPL settings into their own file
   arm: fsl: Adjust ordering of #ifndef CONFIG_SPL_BUILD
   Drop CONFIG_SPL_RAM_SUPPORT
   Use separate options for TPL support
   Kconfig: spl: Add SPL support options to Kconfig
   Kconfig: tpl: Add some TPL support options to Kconfig
   Move existing use of CONFIG_SPL_DM to Kconfig
   Move existing use of CONFIG_SPL_RSA to Kconfig
   spear: Use upper case for CONFIG options
   Convert CONFIG_SPL_CRYPTO_SUPPORT to Kconfig
   Convert CONFIG_SPL_HASH_SUPPORT to Kconfig
   Convert CONFIG_SPL_DMA_SUPPORT to Kconfig
   Convert CONFIG_SPL_DRIVERS_MISC_SUPPORT to Kconfig
   Convert CONFIG_SPL_ENV_SUPPORT to Kconfig
   Convert CONFIG_SPL_ETH_SUPPORT to Kconfig
   Convert CONFIG_SPL_EXT_SUPPORT to Kconfig
   Convert CONFIG_SPL_FAT_SUPPORT to Kconfig
   Convert CONFIG_SPL_GPIO_SUPPORT to Kconfig
   Convert CONFIG_SPL_I2C_SUPPORT to Kconfig
   Convert CONFIG_SPL_LIBCOMMON_SUPPORT to Kconfig
   Convert CONFIG_SPL_LIBDISK_SUPPORT to Kconfig
   Convert CONFIG_SPL_LIBGENERIC_SUPPORT to Kconfig
   Convert CONFIG_SPL_MMC_SUPPORT to Kconfig
   Convert CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT to Kconfig
   Convert CONFIG_SPL_MTD_SUPPORT to Kconfig
   Convert CONFIG_SPL_MUSB_NEW_SUPPORT to Kconfig
   Convert CONFIG_SPL_NAND_SUPPORT to Kconfig
   Convert CONFIG_SPL_NET_VCI_STRING to Kconfig
   Convert CONFIG_SPL_NET_SUPPORT to Kconfig
   Convert CONFIG_SPL_NOR_SUPPORT to Kconfig
   Convert CONFIG_SPL_ONENAND_SUPPORT to Kconfig
   Remove CONFIG_SPL_PINCTRL_SUPPORT
   Convert CONFIG_SPL_POWER_SUPPORT to Kconfig
   Convert CONFIG_SPL_SATA_SUPPORT to Kconfig
   Convert CONFIG_SPL_SERIAL_SUPPORT to Kconfig
   Convert CONFIG_SPL_SPI_FLASH_SUPPORT to Kconfig
   Convert CONFIG_SPL_SPI_SUPPORT to Kconfig
   Convert CONFIG_SPL_USBETH_SUPPORT to Kconfig
   Convert CONFIG_SPL_USB_HOST_SUPPORT to Kconfig
   Convert CONFIG_SPL_USB_SUPPORT to Kconfig
   Convert CONFIG_SPL_WATCHDOG_SUPPORT to Kconfig
   Convert CONFIG_SPL_YMODEM_SUPPORT to Kconfig


Many thanks for this 

[U-Boot] [PATCH v3 00/45] Kconfig: Move CONFIG_SPL_..._SUPPORT to Kconfig

2016-09-12 Thread Simon Glass
This series moves all the CONFIG_SPL_..._SUPPORT options to Kconfig and
fixes up existing boards to continue to build.

It also adds a few small but useful features to moveconfig.

There is existing work going on in this area, so some of these patches may
be superseded. It has taken me a while to get this building cleanly. But I
have run out of time so want to get this out.

As mentioned on a recent thread [1] there is some confusion about whether an
option means enabling driver support or media support. Andrew's recent
series seems like a good vehicle to tidy that up. But I hope this series
will make it easier.

NOTE: in the v2 series I have tried to use common things in Kconfig to
reduce the diffs in the defconfig files. This has helped a fair bit. But it
is very error-prone and time consuming. Also I have had to add some
exceptions (disabling an option in specific board configs). Overall it was
not a pleasant experience :-(

There are a few strange features of this conversion. The main difficulty is
that some PowerPC boards do things like this in their board config file:

This means that TPL reuses the SPL options. We can't support this in Kconfig
so I have added a small number of CONFIG_TPL_xxx_SUPPORT options to cope
with this. This made the conversion more painful than it should have been.

A related issue is boards using a common header file and setting options only
for SPL:

This is not noticed by moveconfig so we have to clean it up manually. Also
there are a few incorrect things where Kconfig options are set with #define:

Finally, many defconfig files are not ordered correctly, resulting in larger
patches than we might like. It would be great to have a solution for this,
perhaps with buildman providing a warning. But it might slow down
development.

The series is fully build-tested (for bisectability) and causes no failures
for the boards that already pass. The following boards fail for me at
present on mainline (which I have not yet looked at):

01: buildman
  blackfin:  +   cm-bf527 bf609-ezkit bf537-stamp
 sparc:  +   grsim grsim_leon2 gr_cpci_ax2000 gr_xc3s_1500 gr_ep2s60
 nios2:  +   10m50 3c120
microblaze:  +   microblaze-generic
  openrisc:  +   openrisc-generic

[1] https://patchwork.ozlabs.org/patch/661511/

Changes in v3:
- Move SPL_NET_VCI_STRING into the SPL Kconfig file also
- Rebase on master

Changes in v2:
- Add some notes on this option to moveconfig.py
- Improve the commit message and add one for resyncing with savedefconfig
- Add some notes on this option to moveconfig.py
- Add new patch to convert CONFIG_SPL_NET_VCI_STRING
- Drop CONFIG_SPL_PINCTRL_SUPPORT
- Lots of work to make use of common values across multiple boards
- Added a patch to change 'spear' CONFIGs to upper case

Simon Glass (45):
  Correct defconfigs using savedefconfig
  moveconfig: Add an option to skip prompts
  moveconfig: Add an option to commit changes
  Kconfig: Move SPL settings into their own file
  arm: fsl: Adjust ordering of #ifndef CONFIG_SPL_BUILD
  Drop CONFIG_SPL_RAM_SUPPORT
  Use separate options for TPL support
  Kconfig: spl: Add SPL support options to Kconfig
  Kconfig: tpl: Add some TPL support options to Kconfig
  Move existing use of CONFIG_SPL_DM to Kconfig
  Move existing use of CONFIG_SPL_RSA to Kconfig
  spear: Use upper case for CONFIG options
  Convert CONFIG_SPL_CRYPTO_SUPPORT to Kconfig
  Convert CONFIG_SPL_HASH_SUPPORT to Kconfig
  Convert CONFIG_SPL_DMA_SUPPORT to Kconfig
  Convert CONFIG_SPL_DRIVERS_MISC_SUPPORT to Kconfig
  Convert CONFIG_SPL_ENV_SUPPORT to Kconfig
  Convert CONFIG_SPL_ETH_SUPPORT to Kconfig
  Convert CONFIG_SPL_EXT_SUPPORT to Kconfig
  Convert CONFIG_SPL_FAT_SUPPORT to Kconfig
  Convert CONFIG_SPL_GPIO_SUPPORT to Kconfig
  Convert CONFIG_SPL_I2C_SUPPORT to Kconfig
  Convert CONFIG_SPL_LIBCOMMON_SUPPORT to Kconfig
  Convert CONFIG_SPL_LIBDISK_SUPPORT to Kconfig
  Convert CONFIG_SPL_LIBGENERIC_SUPPORT to Kconfig
  Convert CONFIG_SPL_MMC_SUPPORT to Kconfig
  Convert CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT to Kconfig
  Convert CONFIG_SPL_MTD_SUPPORT to Kconfig
  Convert CONFIG_SPL_MUSB_NEW_SUPPORT to Kconfig
  Convert CONFIG_SPL_NAND_SUPPORT to Kconfig
  Convert CONFIG_SPL_NET_VCI_STRING to Kconfig
  Convert CONFIG_SPL_NET_SUPPORT to Kconfig
  Convert CONFIG_SPL_NOR_SUPPORT to Kconfig
  Convert CONFIG_SPL_ONENAND_SUPPORT to Kconfig
  Remove CONFIG_SPL_PINCTRL_SUPPORT
  Convert CONFIG_SPL_POWER_SUPPORT to Kconfig
  Convert CONFIG_SPL_SATA_SUPPORT to Kconfig
  Convert CONFIG_SPL_SERIAL_SUPPORT to Kconfig
  Convert CONFIG_SPL_SPI_FLASH_SUPPORT to Kconfig
  Convert CONFIG_SPL_SPI_SUPPORT to Kconfig
  Convert CONFIG_SPL_USBETH_SUPPORT to Kconfig
  Convert CONFIG_SPL_USB_HOST_SUPPORT to Kconfig
  Convert CONFIG_SPL_USB_SUPPORT to Kconfig
  Convert CONFIG_SPL_WATCHDOG_SUPPORT to Kconfig
  Convert CONFIG_SPL_YMODEM_SUPPORT to Kconfig

 Kconfig|  68 ---
 README |  49 --