[U-Boot] [PATCH v2 02/15] zynq: kconfig: move board select menu and commonsettings

Michal Simek michal.simek at xilinx.com
Wed Aug 6 11:10:14 CEST 2014


On 08/06/2014 10:31 AM, Masahiro Yamada wrote:
> Hi Michal,
> 
> 
> 
> On Wed, 6 Aug 2014 09:57:46 +0200
> Michal Simek <michal.simek at xilinx.com> wrote:
> 
>> On 08/06/2014 08:49 AM, Masahiro Yamada wrote:
>>> Hi Michal,
>>>
>>>
>>> On Wed, 6 Aug 2014 08:39:47 +0200
>>> Michal Simek <michal.simek at xilinx.com> wrote:
>>>
>>>> Hi Masahiro,
>>>>
>>>> On 08/06/2014 05:17 AM, Masahiro Yamada wrote:
>>>>> Becuase the board select menu in arch/arm/Kconfig is too big,
>>>>> move the Zynq board select menu to zynq/Kconfig.
>>>>>
>>>>> Consolidate also common settings (CONFIG_SYS_CPU="armv7" and
>>>>> CONFIG_SYS_SOC="zynq").
>>>>>
>>>>> Refactor board/xilinx/zynq/MAINTAINERS too.
>>>>>
>>>>> Signed-off-by: Masahiro Yamada <yamada.m at jp.panasonic.com>
>>>>> Cc: Michal Simek <michal.simek at xilinx.com>
>>>>> ---
>>>>>
>>>>> Changes in v2: None
>>>>>
>>>>>  arch/arm/Kconfig                   | 15 ++----
>>>>>  arch/arm/cpu/armv7/zynq/Kconfig    | 43 +++++++++++++++++
>>>>>  board/xilinx/zynq/Kconfig          | 95 --------------------------------------
>>>>>  board/xilinx/zynq/MAINTAINERS      | 12 +----
>>>>>  configs/zynq_microzed_defconfig    |  1 +
>>>>>  configs/zynq_zc70x_defconfig       |  1 +
>>>>>  configs/zynq_zc770_xm010_defconfig |  1 +
>>>>>  configs/zynq_zc770_xm012_defconfig |  1 +
>>>>>  configs/zynq_zc770_xm013_defconfig |  1 +
>>>>>  configs/zynq_zed_defconfig         |  1 +
>>>>>  include/configs/zynq-common.h      |  1 -
>>>>>  11 files changed, 54 insertions(+), 118 deletions(-)
>>>>>  create mode 100644 arch/arm/cpu/armv7/zynq/Kconfig
>>>>>  delete mode 100644 board/xilinx/zynq/Kconfig
>>>> One
>>>> One thing I have noticed was that when I run
>>>> [u-boot]$ make zynq_zc70x_defconfig
>>>> ...
>>>>
>>>> there is incorrect CONFIG_DEFCONFIG_LIST setup
>>>>
>>>> [u-boot]$ head .config
>>>> #
>>>> # Automatically generated file; DO NOT EDIT.
>>>> # U-Boot 2014.07 Configuration
>>>> #
>>>> CONFIG_DEFCONFIG_LIST="configs/sandbox_defconfig"
>>>
>>> I assume you thought having sandbox_defconfig in ARM .config
>>> is weird.
>>
>> Not exactly this. My expectation was that when I use
>> zynq_zc70x_defconfig that it will be listed there instead of sandbox one.
>> Or just CONFIG_DEFCONFIG_LIST not there.
>>
>>> But I think this is correct.
>>>
>>> Unlike Linux,  defconfig has a flat structure in U-Boot
>>> because ARCH=arm is not given from the command line.
>>
>> Even if ARCH=arm is passed behavior is the same
> 
> Yes. Giving ARCH is meaningless in U-Boot.
> 
> 
> 
>>
>> Is DEFCONFIG_LIST used anywhere?
>> I just want to know what is this for.
> 
> I set the default value just in case.
> The only difference I noticed is "make savedefconfig".
> 
> 
> If .config does not exist, "make savedefconfig" uses
> DEFCONFIG_LIST as its default.
> 
> 
> With "config DEFCONFIG_LIST",
> 
> $ rm -f .config*
> $ make savedefconfig
> scripts/kconfig/conf --savedefconfig=defconfig Kconfig
> #
> # using defaults found in configs/sandbox_defconfig
> #
> 
> 
> But if we comment out DEFCONFIG_LIST,
> 
> 
> $ rm -f .config*
> $ make savedefconfig
> scripts/kconfig/conf --savedefconfig=defconfig Kconfig
> 

Based on steps below - defconfigs are both empty.
Linux kernel is taking .config from /boot/config-`uname -r`.

Maybe I do something wrong and Kconfig handles it differently
but currently I can't see a reason to have this option there.

Thanks,
Michal

[u-boot]$ make mrproper
[u-boot]$ make savedefconfig
  HOSTCC  scripts/basic/fixdep
  HOSTCC  scripts/kconfig/conf.o
  SHIPPED scripts/kconfig/zconf.tab.c
  SHIPPED scripts/kconfig/zconf.lex.c
  SHIPPED scripts/kconfig/zconf.hash.c
  HOSTCC  scripts/kconfig/zconf.tab.o
  HOSTLD  scripts/kconfig/conf
scripts/kconfig/conf --savedefconfig=defconfig Kconfig
#
# using defaults found in configs/sandbox_defconfig
#
[u-boot]$ cat defconfig
[u-boot]$ vim Kconfig
[u-boot]$ git diff
diff --git a/Kconfig b/Kconfig
index 9e77a6e28b46..1a3864557df4 100644
--- a/Kconfig
+++ b/Kconfig
@@ -12,12 +12,6 @@ config KCONFIG_OBJDIR
        string
        option env="KCONFIG_OBJDIR"

-config DEFCONFIG_LIST
-       string
-       depends on !SPL_BUILD
-       option defconfig_list
-       default "configs/sandbox_defconfig"
-
 menu "General setup"

 config SPL_BUILD
[u-boot]$ make mrproper
  CLEAN   scripts/basic
  CLEAN   scripts/kconfig
[u-boot]$ make savedefconfig
  HOSTCC  scripts/basic/fixdep
  HOSTCC  scripts/kconfig/conf.o
  SHIPPED scripts/kconfig/zconf.tab.c
  SHIPPED scripts/kconfig/zconf.lex.c
  SHIPPED scripts/kconfig/zconf.hash.c
  HOSTCC  scripts/kconfig/zconf.tab.o
  HOSTLD  scripts/kconfig/conf
scripts/kconfig/conf --savedefconfig=defconfig Kconfig
[u-boot]$ cat defconfig
[u-boot]$




More information about the U-Boot mailing list