Hi Daniel,
On Mon, 08 Sep 2014 21:23:05 +0200 Daniel Schwierzeck <daniel.schwierz...@gmail.com> wrote: > > > diff --git a/dts/Kconfig b/dts/Kconfig > > new file mode 100644 > > index 0000000..98b2357 > > --- /dev/null > > +++ b/dts/Kconfig > > @@ -0,0 +1,46 @@ > > +# > > +# Device Tree Control > > +# > > +# TODO: > > +# This feature is not currently supported for SPL, > > +# but this restriction should be removed in the future. > > + > > +menu "Device Tree Control" > > + depends on !SPL_BUILD > > + depends on ARM || MICROBLAZE || SANDBOX || X86 > > I suggest to use boolean symbols HAS_* or SUPPORTS_* like the kernel > does. For example: > > config SUPPORTS_OF_CONTROL > bool > > menu "Device Tree Control" > depends on !SPL_BUILD > depends on SUPPORTS_OF_CONTROL > > > arch/Kconfig: > config ARM > bool "ARM architecture" > select SUPPORTS_OF_CONTROL > Good idea, altough HAVE_* seems more common: In Linux 3.17-rc4, $ find . -name 'Kconfig*' | xargs grep HAVE_ | wc 1332 4394 71649 $ find . -name 'Kconfig*' | xargs grep HAS_ | wc 760 2744 40496 $ find . -name 'Kconfig*' | xargs grep SUPPORTS_ | wc 487 1571 26996 Besides, Documentation/kbuild/kconfig-language.txt suggests to do so. ---------------------------8<--------------------------- Adding common features and make the usage configurable ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ It is a common idiom to implement a feature/functionality that are relevant for some architectures but not all. The recommended way to do so is to use a config variable named HAVE_* that is defined in a common Kconfig file and selected by the relevant architectures. An example is the generic IOMAP functionality. We would in lib/Kconfig see: # Generic IOMAP is used to ... config HAVE_GENERIC_IOMAP config GENERIC_IOMAP depends on HAVE_GENERIC_IOMAP && FOO And in lib/Makefile we would see: obj-$(CONFIG_GENERIC_IOMAP) += iomap.o For each architecture using the generic IOMAP functionality we would see: config X86 select ... select HAVE_GENERIC_IOMAP select ... Note: we use the existing config option and avoid creating a new config variable to select HAVE_GENERIC_IOMAP. Note: the use of the internal config variable HAVE_GENERIC_IOMAP, it is introduced to overcome the limitation of select which will force a config option to 'y' no matter the dependencies. The dependencies are moved to the symbol GENERIC_IOMAP and we avoid the situation where select forces a symbol equals to 'y'. ---------------------------->8---------------------------- I was also thinking to add HAVE_SPL_SUPPORT. config SPL bool "Enable SPL" depends on HAVE_SPL_SUPPORT Best Regards Masahiro Yamada _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot