All of lore.kernel.org
 help / color / mirror / Atom feed
From: Russell King <rmk@arm.linux.org.uk>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Kevin Hilman <khilman@deeprootsystems.com>,
	Daniel Walker <dwalker@codeaurora.org>,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
	linux-arm-msm@vger.kernel.org
Subject: Re: ARM defconfig files
Date: Thu, 3 Jun 2010 19:10:10 +0100	[thread overview]
Message-ID: <20100603181010.GA25779@flint.arm.linux.org.uk> (raw)
In-Reply-To: <alpine.LFD.2.00.1006030725420.8175@i5.linux-foundation.org>

On Thu, Jun 03, 2010 at 07:48:18AM -0700, Linus Torvalds wrote:
> So I _think_ whatever "mach-xyz" file _should_ do something like
> 
> 	# Kconfig file for OMAP4ABCXYZ chip
> 
> 	.. set the particulars for this _particular_ chip,
> 	   ie select the particular drivers on this chip ..
> 
> 	include "chip-family-details" (ie maybe "base OMAP details")
> 
> 	include "architecture-family-details" (ie ARM Kconfig)
> 
> see? Not one flat file, and very much not something generated.

Umm...

> And I actually suspect we could do it with our current Kconfig file model. 
> IOW, in the arch/arm/Kconfig file, I think it should be doable to have 
> basically a
> 
> 	choice
> 		prompt "ARM platform"
> 
> 	config ARM_PLATFORM_OMAP
> 		bool PLATFORM_OMAP
> 
> 	config ARM_PLATFORM_MSM
> 		bool PLATFORM_MSM
> 	...
> 	endchoice

Umm.  I don't think you've actually looked at the Kconfig files if you're
writing this, because that's precisely what we already do.

arch/arm/Kconfig has a big choice statement in it to select the machine
class, and then it sources the individual arch/arm/*/Kconfig files,
which are themselves wrapped in a

if FOO

foo's options

endif

It's not one huge big "let's source everything and hope people ignore
options which don't apply to their platform" that you seem to be implying
we are doing.

The big problem with doing away with the defconfig files is more to do
with what happens _outside_ of arch/arm.

At one time, I was phasing IDE out, and didn't want to see the "IDE"
configuration options on platforms which either never had IDE support
or had had IDE support removed - unfortunately I was overruled by the
IDE/ATA developers and the conditionals we had went away.

That's just one instance, but consider when you're presented with
thousands of driver and filesystem configuration options as is the
case with modern kernels.  How do you find the few options you need
to get to a point that the kernel you've built is actually useful?

Anyway, I thought we were discussing _defconfig_ files, not Kconfig
files...

What we _could_ to is introduce a:

config STD_CONFIG
	bool "Enable me to generate a standard configuration for your platform"

and then have platforms conditionally select everything that's
appropriate for their use.  That provides a way to avoid the ages old
issue of select forcing options on, but the user still being presented
with the option and being told the only possible value for it is 'y'.

And yes, it _is_ necessary - because if you want to turn off something
on the platform - eg, you're not using MMC and MMC fails to build -
you can still end up with a working configuration at the end of the
day.

-- 
Russell King
 Linux kernel    2.6 ARM Linux   - http://www.arm.linux.org.uk/
 maintainer of:

  parent reply	other threads:[~2010-06-03 18:11 UTC|newest]

Thread overview: 133+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20100603074548.GA12104@flint.arm.linux.org.uk>
2010-06-03 14:48 ` ARM defconfig files Linus Torvalds
2010-06-03 16:46   ` Tony Lindgren
2010-06-03 18:13     ` Russell King
2010-06-03 21:33       ` Tony Lindgren
2010-06-03 22:45         ` Nicolas Pitre
2010-06-04  4:59           ` Tony Lindgren
2010-06-04  0:23       ` Kevin Hilman
2010-06-04  4:53         ` Tony Lindgren
2010-06-04  1:02       ` Benjamin Herrenschmidt
2010-06-04  5:29         ` Tony Lindgren
2010-06-04  6:30         ` Geert Uytterhoeven
2010-06-04  6:53           ` Geert Uytterhoeven
2010-06-04  8:52           ` Benjamin Herrenschmidt
2010-06-03 16:53   ` Daniel Walker
2010-06-08 15:30     ` Catalin Marinas
2010-06-08 16:37       ` Daniel Walker
2010-06-03 18:10   ` Russell King [this message]
2010-06-03 18:18     ` Linus Torvalds
2010-06-03 18:53       ` Russell King
2010-06-03 18:56         ` Linus Torvalds
2010-06-03 19:20           ` Russell King
2010-06-03 19:35           ` Daniel Walker
2010-06-03 19:45             ` Russell King
2010-06-03 19:49               ` Daniel Walker
2010-06-03 19:57                 ` Russell King
2010-06-03 20:06                   ` Daniel Walker
2010-06-03 20:18                     ` Russell King
2010-06-03 20:20                   ` Nicolas Pitre
2010-06-04  1:06                   ` Benjamin Herrenschmidt
2010-06-03 20:09               ` Linus Torvalds
2010-06-03 20:31                 ` Linus Torvalds
2010-06-03 21:17                   ` Tony Lindgren
2010-06-03 22:15                     ` Grant Likely
2010-06-04  5:18                       ` Felipe Balbi
2010-06-04 11:31                       ` Catalin Marinas
2010-06-03 22:24                     ` Daniel Walker
2010-06-05 14:12                     ` Felipe Contreras
2010-06-05 14:39                       ` Linus Torvalds
2010-06-05 16:39                         ` Felipe Contreras
2010-06-03 21:48                   ` Daniel Walker
2010-06-04  0:36                   ` Paul Mackerras
2010-06-04 12:39                     ` Grant Likely
2010-06-05 13:47                   ` Felipe Contreras
2010-06-03 20:34                 ` Nicolas Pitre
2010-06-03 20:05             ` Linus Torvalds
2010-06-06  3:28         ` david
2010-06-03 18:20     ` Daniel Walker
2010-06-03 18:21       ` Linus Torvalds
2010-06-03 18:30         ` Al Viro
2010-06-03 19:26         ` Paul Mundt
2010-06-14  8:32         ` Uwe Kleine-König
2010-06-14  8:32           ` Uwe Kleine-König
2010-06-30 10:40           ` Uwe Kleine-König
2010-06-30 10:40             ` Uwe Kleine-König
2010-07-12 15:55             ` Uwe Kleine-König
2010-07-12 15:55               ` Uwe Kleine-König
2010-07-12 16:51               ` Linus Torvalds
2010-07-12 16:51                 ` Linus Torvalds
2010-07-12 16:51                 ` Linus Torvalds
2010-07-12 17:32                 ` Russell King - ARM Linux
2010-07-12 17:32                   ` Russell King - ARM Linux
2010-07-12 17:40                   ` Linus Torvalds
2010-07-12 17:40                     ` Linus Torvalds
2010-07-12 17:40                     ` Linus Torvalds
2010-07-12 18:50                     ` Uwe Kleine-König
2010-07-12 18:50                       ` Uwe Kleine-König
2010-07-12 18:50                       ` Uwe Kleine-König
2010-07-12 19:04                       ` Linus Torvalds
2010-07-12 19:04                         ` Linus Torvalds
2010-07-12 19:17                         ` Nicolas Pitre
2010-07-12 19:17                           ` Nicolas Pitre
2010-07-12 19:34                           ` Linus Torvalds
2010-07-12 19:34                             ` Linus Torvalds
2010-07-12 19:34                             ` Linus Torvalds
2010-07-12 19:50                             ` Grant Likely
2010-07-12 19:50                               ` Grant Likely
2010-07-13  7:07                               ` Uwe Kleine-König
2010-07-13  7:07                                 ` Uwe Kleine-König
2010-07-13  8:07                                 ` optimized script [Was: ARM defconfig files] Uwe Kleine-König
2010-07-13  8:07                                   ` Uwe Kleine-König
2010-07-13  8:07                                   ` Uwe Kleine-König
2010-07-13 18:04                                   ` Olof Johansson
2010-07-13 18:04                                     ` Olof Johansson
2010-07-13 18:04                                     ` Olof Johansson
2010-07-13 18:04                                     ` Olof Johansson
2010-07-13 23:39                                     ` Nicolas Pitre
2010-07-13 23:39                                       ` Nicolas Pitre
2010-07-13 23:39                                       ` Nicolas Pitre
2010-07-13 18:32                                 ` ARM defconfig files Grant Likely
2010-07-13 18:32                                   ` Grant Likely
2010-07-13 18:32                                   ` Grant Likely
2010-07-12 19:59                             ` Uwe Kleine-König
2010-07-12 19:59                               ` Uwe Kleine-König
2010-07-12 20:14                             ` Nicolas Pitre
2010-07-12 20:14                               ` Nicolas Pitre
2010-07-12 19:09                       ` Nicolas Pitre
2010-07-12 19:09                         ` Nicolas Pitre
2010-07-12 20:31                       ` Arnd Bergmann
2010-07-12 20:31                         ` Arnd Bergmann
2010-07-12 20:50                         ` Nicolas Pitre
2010-07-12 20:50                           ` Nicolas Pitre
2010-07-12 20:50                           ` Nicolas Pitre
2010-07-12 23:05                       ` David Brown
2010-07-12 23:05                         ` David Brown
2010-07-12 23:18                         ` Linus Torvalds
2010-07-12 23:18                           ` Linus Torvalds
2010-07-12 23:18                           ` Linus Torvalds
2010-07-12 23:34                           ` David Brown
2010-07-12 23:34                             ` David Brown
2010-07-13  0:55                             ` Nicolas Pitre
2010-07-13  0:55                               ` Nicolas Pitre
2010-07-14  9:13                             ` Felipe Contreras
2010-07-14  9:13                               ` Felipe Contreras
2010-07-14 13:20                             ` Uwe Kleine-König
2010-07-14 13:20                               ` Uwe Kleine-König
2010-07-14 13:20                               ` Uwe Kleine-König
2010-07-14 17:37                               ` Tony Luck
2010-07-14 17:37                                 ` Tony Luck
2010-07-14 17:37                                 ` Tony Luck
2010-07-13 18:32                           ` Rob Landley
2010-07-13 18:32                             ` Rob Landley
2010-07-12 20:06                     ` Russell King - ARM Linux
2010-07-12 20:06                       ` Russell King - ARM Linux
2010-07-12 20:29                       ` Nicolas Pitre
2010-07-12 20:29                         ` Nicolas Pitre
2010-07-12 21:54                         ` Linus Torvalds
2010-07-12 21:54                           ` Linus Torvalds
2010-07-14  9:21                       ` Felipe Contreras
2010-07-14  9:21                         ` Felipe Contreras
2010-07-14  9:21                         ` Felipe Contreras
2010-06-03 18:41       ` Russell King
2010-06-03 18:53         ` Linus Torvalds
2010-06-06  3:53         ` david

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20100603181010.GA25779@flint.arm.linux.org.uk \
    --to=rmk@arm.linux.org.uk \
    --cc=dwalker@codeaurora.org \
    --cc=khilman@deeprootsystems.com \
    --cc=linux-arm-msm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=torvalds@linux-foundation.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.