[1/3] cmd: bootz: make CMD_BOOTZ depend on CMD_BOOTM

Message ID 1469451968-26992-2-git-send-email-yamada.masahiro@socionext.com
State New
Headers show

Commit Message

Masahiro Yamada July 25, 2016, 1:06 p.m.
The "bootz" command is implemented in the "bootm", so the dependency
should be reflected in Kconfig.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>

---

 Kconfig     | 1 +
 cmd/Kconfig | 1 +
 2 files changed, 2 insertions(+)

-- 
1.9.1

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

Comments

Masahiro Yamada July 26, 2016, 4:15 a.m. | #1
Hi Robert,

2016-07-25 22:17 GMT+09:00 Robert P. J. Day <rpjday@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@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
_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot

Patch

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