[U-Boot] [PATCH 1/3] cmd: bootz: make CMD_BOOTZ depend on CMD_BOOTM

Masahiro Yamada yamada.masahiro at socionext.com
Tue Jul 26 06:15:49 CEST 2016


Hi Robert,

2016-07-25 22:17 GMT+09:00 Robert P. J. Day <rpjday at crashcourse.ca>:
> On Mon, 25 Jul 2016, Masahiro Yamada wrote:
>
>> The "bootz" command is implemented in the "bootm", so the dependency
>> should be reflected in Kconfig.
>>
>> Signed-off-by: Masahiro Yamada <yamada.masahiro at socionext.com>
>> ---
>>
>>  Kconfig     | 1 +
>>  cmd/Kconfig | 1 +
>>  2 files changed, 2 insertions(+)
>>
>> diff --git a/Kconfig b/Kconfig
>> index ef12f9f..0d6afd2 100644
>> --- a/Kconfig
>> +++ b/Kconfig
>> @@ -57,6 +57,7 @@ config DISTRO_DEFAULTS
>>       bool "Select defaults suitable for booting general purpose Linux distributions"
>>       default y if ARCH_SUNXI
>>       default n
>> +     select CMD_BOOTM
>>       select CMD_BOOTZ
>>       select CMD_DHCP
>>       select CMD_EXT2
>> diff --git a/cmd/Kconfig b/cmd/Kconfig
>> index d69b817..171114d 100644
>> --- a/cmd/Kconfig
>> +++ b/cmd/Kconfig
>> @@ -162,6 +162,7 @@ config CMD_BOOTM
>>
>>  config CMD_BOOTZ
>>       bool "bootz"
>> +     depends on CMD_BOOTM
>>       help
>>         Boot the Linux zImage
>
>   if bootz already depends on bootm, why then do you need to select
> both?
>

To avoid unmet dependency.


I recommend you to read Linux's Documentation/kbuild/kconfig-language.txt,
especially the following part:


- reverse dependencies: "select" <symbol> ["if" <expr>]
  While normal dependencies reduce the upper limit of a symbol (see
  below), reverse dependencies can be used to force a lower limit of
  another symbol. The value of the current menu symbol is used as the
  minimal value <symbol> can be set to. If <symbol> is selected multiple
  times, the limit is set to the largest selection.
  Reverse dependencies can only be used with boolean or tristate
  symbols.
  Note:
        select should be used with care. select will force
        a symbol to a value without visiting the dependencies.
        By abusing select you are able to select a symbol FOO even
        if FOO depends on BAR that is not set.
        In general use select only for non-visible symbols
        (no prompts anywhere) and for symbols with no dependencies.
        That will limit the usefulness but on the other hand avoid
        the illegal configurations all over.




-- 
Best Regards
Masahiro Yamada


More information about the U-Boot mailing list