diff options
author | Ben Hutchings <bhutchings@solarflare.com> | 2012-11-26 09:16:10 +0000 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2012-11-26 17:10:44 -0500 |
commit | b3422a314c27d2189c05b69cc1654b71315d3d21 (patch) | |
tree | 9e292cd89f014f6627a4bf9d0f462413e1857f21 /net/dsa/Kconfig | |
parent | 53d6841d225b93c20d561878637c3cd307c11648 (diff) |
dsa: Hide core config options; make drivers select what they need
Commit 82167cb8c6b2f8166d5c7532e5ef4b5e0cc46a72 ('net: dsa/slave: Fix
compilation warnings') fixed one possible invalid configuration
(NET_DSA enabled with no trailer formats) but added others: drivers
can select NET_DSA without its dependencies being met.
It's not very useful to make either the DSA core or the tagging
formats manually selectable without a driver to use them, so:
1. Define a hidden HAVE_NET_DSA option and move the dependencies of
NET_DSA to that. While we're at it, drop the deprecated
EXPERIMENTAL dependency.
2. Make NET_DSA and the drivers dependent on HAVE_NET_DSA.
3. Hide the tagging format options again.
4. Make drivers select both NET_DSA and the appropriate tagging format
option.
Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
Acked-by: Randy Dunlap <rdunlap@infradead.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/dsa/Kconfig')
-rw-r--r-- | net/dsa/Kconfig | 30 |
1 files changed, 13 insertions, 17 deletions
diff --git a/net/dsa/Kconfig b/net/dsa/Kconfig index 0f5dc344ed92..f5eede1d6cb8 100644 --- a/net/dsa/Kconfig +++ b/net/dsa/Kconfig @@ -1,28 +1,24 @@ +config HAVE_NET_DSA + def_bool y + depends on NETDEVICES && !S390 + +# Drivers must select NET_DSA and the appropriate tagging format + config NET_DSA tristate - default n - depends on EXPERIMENTAL && NETDEVICES && !S390 + depends on HAVE_NET_DSA select PHYLIB - ---help--- - This allows you to use hardware switch chips that use - the Distributed Switch Architecture. - -menu "Distributed Switch Architecture support" +if NET_DSA # tagging formats config NET_DSA_TAG_DSA - bool "Original DSA packet tagging format" - select NET_DSA - default n + bool config NET_DSA_TAG_EDSA - bool "Ethertype DSA packet tagging format" - select NET_DSA - default n + bool config NET_DSA_TAG_TRAILER - bool "Trailer DSA packet tagging format" - select NET_DSA - default n -endmenu + bool + +endif |