From mboxrd@z Thu Jan 1 00:00:00 1970 From: Arnd Bergmann Subject: Re: [PATCH] ARM: use "depends on" for SoC configs instead of "if" after prompt Date: Mon, 16 Nov 2015 11:05:16 +0100 Message-ID: <4171977.M1BLuS2ZzP@wuerfel> References: <1447643170-23773-1-git-send-email-yamada.masahiro@socionext.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <1447643170-23773-1-git-send-email-yamada.masahiro-uWyLwvC0a2jby3iVrkZq2A@public.gmane.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "Linux-mediatek" Errors-To: linux-mediatek-bounces+glpam-linux-mediatek=m.gmane.org-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org To: Masahiro Yamada Cc: Andrew Lunn , Krzysztof Kozlowski , kernel-F5mvAk5X5gdBDgjK7y7TUQ@public.gmane.org, linux-sh-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, Linus Walleij , Liviu Dudau , linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, Matthias Brugger , Thierry Reding , Alexandre Belloni , Jamie Iles , Heiko Stuebner , Alexandre Courbot , linux-samsung-soc-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, Florian Fainelli , Russell King , Viresh Kumar , Stephen Warren , Magnus Damm , Michal Simek , Wei Xu , Lorenzo Pieralisi , linux-rockchip-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org, Chen-Yu Tsai List-Id: linux-tegra@vger.kernel.org On Monday 16 November 2015 12:06:10 Masahiro Yamada wrote: > Many ARM sub-architectures use prompts followed by "if" conditional, > but it is wrong. > > Please notice the difference between > > config ARCH_FOO > bool "Foo SoCs" if ARCH_MULTI_V7 > > and > > config ARCH_FOO > bool "Foo SoCs" > depends on ARCH_MULTI_V7 > > These two are *not* equivalent! > > In the former statement, it is not ARCH_FOO, but its prompt that > depends on ARCH_MULTI_V7. So, it is completely valid that ARCH_FOO > is selected by another, but ARCH_MULTI_V7 is still disabled. As it is > not unmet dependency, Kconfig never warns. This is probably not what > you want. Did you encounter a case where someone actually did a 'select' on one of those symbols? I probably introduced a lot of them and did not expect that to happen. > The former should be used only when you need to do so, and you really > understand what you are doing. (In most cases, it should be wrong!) > > For enabling/disabling sub-architectures, the latter is always correct. > > As a good side effect, this commit fixes some entries over 80 columns > (mach-imx, mach-integrator, mach-mbevu). > > Signed-off-by: Masahiro Yamada > --- > > I hope this patch is applied to ARM-SOC, but am CCing Kbuild ML > because the correct understanding of Kconfig is required for this patch. Yes, we can take it through arm-soc, I don't think it's important but I also don't mind the change. > diff --git a/arch/arm/mach-integrator/Kconfig b/arch/arm/mach-integrator/Kconfig > index 02d0834..2fa9d11 100644 > --- a/arch/arm/mach-integrator/Kconfig > +++ b/arch/arm/mach-integrator/Kconfig > @@ -1,5 +1,6 @@ > config ARCH_INTEGRATOR > - bool "ARM Ltd. Integrator family" if (ARCH_MULTI_V4T || ARCH_MULTI_V5 || ARCH_MULTI_V6) > + bool "ARM Ltd. Integrator family" > + depends on ARCH_MULTI_V4T || ARCH_MULTI_V5 || ARCH_MULTI_V6 > select ARM_AMBA > select ARM_PATCH_PHYS_VIRT if MMU > select AUTO_ZRELADDR There is one related change that I would like to see, and that is to convert all top-level 'config' statements that have sub-options into 'menuconfig' statements for consistency. At the moment, the platform menu has a mix of platform-selection and platform-specific options, and I'd like to make that more consistent. Arnd