1. 16 11月, 2016 1 次提交
    • N
      Kconfig: Introduce the "imply" keyword · 237e3ad0
      Nicolas Pitre 提交于
      The "imply" keyword is a weak version of "select" where the target
      config symbol can still be turned off, avoiding those pitfalls that come
      with the "select" keyword.
      
      This is useful e.g. with multiple drivers that want to indicate their
      ability to hook into a secondary subsystem while allowing the user to
      configure that subsystem out without also having to unset these drivers.
      
      Currently, the same effect can almost be achieved with:
      
      config DRIVER_A
      	tristate
      
      config DRIVER_B
      	tristate
      
      config DRIVER_C
      	tristate
      
      config DRIVER_D
      	tristate
      
      [...]
      
      config SUBSYSTEM_X
      	tristate
      	default DRIVER_A || DRIVER_B || DRIVER_C || DRIVER_D || [...]
      
      This is unwieldy to maintain especially with a large number of drivers.
      Furthermore, there is no easy way to restrict the choice for SUBSYSTEM_X
      to y or n, excluding m, when some drivers are built-in. The "select"
      keyword allows for excluding m, but it excludes n as well. Hence
      this "imply" keyword.  The above becomes:
      
      config DRIVER_A
      	tristate
      	imply SUBSYSTEM_X
      
      config DRIVER_B
      	tristate
      	imply SUBSYSTEM_X
      
      [...]
      
      config SUBSYSTEM_X
      	tristate
      
      This is much cleaner, and way more flexible than "select". SUBSYSTEM_X
      can still be configured out, and it can be set as a module when none of
      the drivers are configured in or all of them are modular.
      Signed-off-by: NNicolas Pitre <nico@linaro.org>
      Acked-by: NRichard Cochran <richardcochran@gmail.com>
      Acked-by: NThomas Gleixner <tglx@linutronix.de>
      Acked-by: NJohn Stultz <john.stultz@linaro.org>
      Reviewed-by: NJosh Triplett <josh@joshtriplett.org>
      Cc: Paul Bolle <pebolle@tiscali.nl>
      Cc: linux-kbuild@vger.kernel.org
      Cc: netdev@vger.kernel.org
      Cc: Michal Marek <mmarek@suse.com>
      Cc: Edward Cree <ecree@solarflare.com>
      Link: http://lkml.kernel.org/r/1478841010-28605-2-git-send-email-nicolas.pitre@linaro.orgSigned-off-by: NThomas Gleixner <tglx@linutronix.de>
      237e3ad0
  2. 09 9月, 2016 1 次提交
  3. 19 8月, 2016 1 次提交
  4. 07 7月, 2016 1 次提交
  5. 10 5月, 2016 2 次提交
  6. 08 10月, 2015 1 次提交
    • L
      kbuild: document recursive dependency limitation / resolution · 1c199f28
      Luis R. Rodriguez 提交于
      Recursive dependency issues with kconfig are unavoidable due to
      some limitations with kconfig, since these issues are recurring
      provide a hint to the user how they can resolve these dependency
      issues and also document why such limitation exists.
      
      While at it also document a bit of future prospects of ways to
      enhance Kconfig, including providing formal semantics and evaluation
      of use of a SAT solver. If you're interested in this work or prospects
      of it check out the kconfig-sat project wiki [0] and mailing list [1].
      
      [0] http://kernelnewbies.org/KernelProjects/kconfig-sat
      [1] https://groups.google.com/d/forum/kconfig-sat
      
      Cc: Geert Uytterhoeven <geert@linux-m68k.org>
      Cc: James Bottomley <jbottomley@odin.com>
      Cc: Josh Triplett <josh@joshtriplett.org>
      Cc: Paul Bolle <pebolle@tiscali.nl>
      Cc: Herbert Xu <herbert@gondor.apana.org.au>
      Cc: Takashi Iwai <tiwai@suse.de>
      Cc: "Yann E. MORIN" <yann.morin.1998@free.fr>
      Cc: Jonathan Corbet <corbet@lwn.net>
      Cc: Mate Soos <soos.mate@gmail.com>
      Signed-off-by: NLuis R. Rodriguez <mcgrof@suse.com>
      Signed-off-by: NMichal Marek <mmarek@suse.com>
      1c199f28
  7. 07 8月, 2015 1 次提交
  8. 06 7月, 2015 1 次提交
    • M
      kbuild: Allow arch Makefiles to override {cpp,ld,c}flags · 61754c18
      Michal Marek 提交于
      Since commit a1c48bb1 (Makefile: Fix unrecognized cross-compiler command
      line options), the arch Makefile is included earlier by the main
      Makefile, preventing the arc architecture to set its -O3 compiler
      option. Since there might be more use cases for an arch Makefile to
      fine-tune the options, add support for ARCH_CPPFLAGS, ARCH_AFLAGS and
      ARCH_CFLAGS variables that are appended to the respective kbuild
      variables. The user still has the final say via the KCPPFLAGS, KAFLAGS
      and KCFLAGS variables.
      Reported-by: NVineet Gupta <Vineet.Gupta1@synopsys.com>
      Cc: stable@vger.kernel.org # 3.16+
      Signed-off-by: NMichal Marek <mmarek@suse.com>
      61754c18
  9. 22 6月, 2015 1 次提交
  10. 09 6月, 2015 1 次提交
  11. 10 1月, 2015 2 次提交
  12. 08 1月, 2015 1 次提交
  13. 19 8月, 2014 4 次提交
  14. 05 8月, 2014 1 次提交
  15. 16 7月, 2014 1 次提交
  16. 19 6月, 2014 1 次提交
  17. 10 6月, 2014 1 次提交
  18. 08 4月, 2014 1 次提交
  19. 09 10月, 2013 1 次提交
  20. 05 9月, 2013 1 次提交
  21. 17 7月, 2013 1 次提交
  22. 25 6月, 2013 1 次提交
    • Y
      kconfig: sort found symbols by relevance · 193b40ae
      Yann E. MORIN 提交于
      When searching for symbols, return the symbols sorted by relevance.
      
      Sorting is done as thus:
        - first, symbols that match exactly
        - then, alphabetical sort
      
      Since the search can be a regexp, it is possible that more than one symbol
      matches exactly. In this case, we can't decide which to sort first, so we
      fallback to alphabeticall sort.
      
      Explain this (new!) sorting heuristic in the documentation.
      Reported-by: NJean Delvare <jdelvare@suse.de>
      Signed-off-by: N"Yann E. MORIN" <yann.morin.1998@free.fr>
      Cc: Jean Delvare <jdelvare@suse.de>
      Cc: Michal Marek <mmarek@suse.cz>
      Cc: Roland Eggner <edvx1@systemanalysen.net>
      Cc: Wang YanQing <udknight@gmail.com>
      
      --
      Changes v1->v2:
        - drop the previous, complex heuristic in favour of a simpler heuristic
          that is both easier to understand, *and* to maintain (Jean)
        - explain sorting heuristic in the doc  (Jean)
      193b40ae
  23. 04 6月, 2013 1 次提交
  24. 25 4月, 2013 2 次提交
    • Y
      kconfig: implement KCONFIG_PROBABILITY for randconfig · e43956e6
      Yann E. MORIN 提交于
      Currently the odds to set each symbol is (rounded):
          booleans:   y: 50%          n: 50%
          tristates:  y: 33%  m: 33%  n: 33%
      
      Introduce a KCONFIG_PROBABILITY environment variable to tweak the
      probabilities (in percentage), as such:
          KCONFIG_PROBABILITY     y:n split           y:m:n split
          -----------------------------------------------------------------
      [1] unset or empty          50  : 50            33  : 33  : 34
      [2] N                        N  : 100-N         N/2 : N/2 : 100-N
          N:M                     N+M : 100-(N+M)      N  :  M  : 100-(N+M)
          N:M:L                    N  : 100-N          M  :  L  : 100-(M+L)
      
      [1] The current behaviour is kept as default, for backward compatibility
      [2] The solution initially implemented by Peter for Buildroot, see:
          http://git.buildroot.org/buildroot/commit/?id=3435c1afb5Signed-off-by: NPeter Korsgaard <jacmet@uclibc.org>
      [yann.morin.1998@free.fr: add to Documentation/]
      Signed-off-by: N"Yann E. MORIN" <yann.morin.1998@free.fr>
      e43956e6
    • Y
      kconfig: allow specifying the seed for randconfig · 0d8024c6
      Yann E. MORIN 提交于
      For reproducibility, it can be useful to be able to specify the
      seed to use to seed the RNG.
      
      Add a new KCONFIG_SEED environment variable which can be set to
      the seed to use:
          $ make KCONFIG_SEED=42 randconfig
          $ sha1sum .config
          70a128c8dcc61303069e1be352cce64114dfcbca  .config
          $ make KCONFIG_SEED=42 randconfig
          $ sha1sum .config
          70a128c8dcc61303069e1be352cce64114dfcbca  .config
      
      It's very usefull for eg. debugging the kconfig parser.
      Signed-off-by: N"Yann E. MORIN" <yann.morin.1998@free.fr>
      0d8024c6
  25. 08 4月, 2013 2 次提交
  26. 08 2月, 2013 1 次提交
  27. 26 12月, 2012 1 次提交
  28. 06 12月, 2012 1 次提交
  29. 01 12月, 2012 1 次提交
    • S
      kbuild: centralize .dts->.dtb rule · 90b335fb
      Stephen Warren 提交于
      All architectures that use cmd_dtc do so in almost the same way. Create
      a central build rule to avoid duplication. The one difference is that
      most current uses of dtc build $(obj)/%.dtb from $(src)/dts/%.dts rather
      than building the .dtb in the same directory as the .dts file. This
      difference will be eliminated arch-by-arch in future patches.
      
      MIPS is the exception here; it already uses the exact same rule as the
      new common rule, so the duplicate is removed in this patch to avoid any
      conflict. arch/mips changes courtesy of Ralf Baechle.
      
      Update Documentation/kbuild to remove the explicit call to cmd_dtc from
      the example, now that the rule exists in a centralized location.
      
      Cc: Arnd Bergmann <arnd@arndb.de>
      Cc: linux-arm-kernel@lists.infradead.org
      Cc: Olof Johansson <olof@lixom.net>
      Cc: Russell King <linux@arm.linux.org.uk>
      Acked-by: NCatalin Marinas <catalin.marinas@arm.com>
      Cc: Jonas Bonn <jonas@southpole.se>
      Cc: linux@lists.openrisc.net
      Cc: Aurelien Jacquiot <a-jacquiot@ti.com>
      Cc: linux-c6x-dev@linux-c6x.org
      Cc: Mark Salter <msalter@redhat.com>
      Cc: Michal Simek <monstr@monstr.eu>
      Cc: microblaze-uclinux@itee.uq.edu.au
      Cc: Chris Zankel <chris@zankel.net>
      Cc: linux-xtensa@linux-xtensa.org
      Cc: Max Filippov <jcmvbkbc@gmail.com>
      Signed-off-by: NRalf Baechle <ralf@linux-mips.org>
      Signed-off-by: NStephen Warren <swarren@nvidia.com>
      Signed-off-by: NRob Herring <rob.herring@calxeda.com>
      90b335fb
  30. 19 11月, 2012 1 次提交
  31. 03 10月, 2012 1 次提交
  32. 06 5月, 2012 1 次提交
  33. 05 5月, 2012 1 次提交
    • E
      kconfig: Add error handling to KCONFIG_ALLCONFIG · 5efe241e
      Eric W. Biederman 提交于
      - Only try to read the file specified if KCONFIG_ALL_CONFIG is set to
        something other than the empty string or "1".
      
      - Don't use stat to check the name passed to conf_read_simple so that
        zconf_fopen can find the file in the current directory or in SRCTREE
        removing a extremely source of confusing failure, where KCONFIG_ALL_CONFIG
        was not interpreted with respect to the directory make was called in.
      
      - If conf_read_simple fails complain clearly and stop processing.
        Allowing the simple debugging of typos.
      
      - Clearly document the behavior so it is clear to users which
        values are treated as flags and which values are treated as
        filenames.
      Signed-off-by: NEric W. Biederman <ebiederm@xmission.com>
      Signed-off-by: NMichal Marek <mmarek@suse.cz>
      5efe241e