On 30 October 2012 12:15, Viresh Kumar <viresh.ku...@linaro.org> wrote:
> And so, if we select NET_DSA from these tagging drivers, then only slave.c 
> will
> get compiled. Otherwise slave.c dsa.c dsa_core.c wouldn't be compiled and so
> no warnings.

If my above explanation/assumption is correct, then please review following
patch:

--------------------------x-----------------------x----------------

From: Viresh Kumar <viresh.ku...@linaro.org>
Date: Mon, 29 Oct 2012 22:19:14 +0530
Subject: [PATCH] net: dsa/slave: Fix compilation warnings

Currently when none of CONFIG_NET_DSA_TAG_DSA, CONFIG_NET_DSA_TAG_EDSA and
CONFIG_NET_DSA_TAG_TRAILER is defined, we get following compilation warnings:

net/dsa/slave.c:51:12: warning: 'dsa_slave_init' defined but not used
[-Wunused-function]
net/dsa/slave.c:60:12: warning: 'dsa_slave_open' defined but not used
[-Wunused-function]
net/dsa/slave.c:98:12: warning: 'dsa_slave_close' defined but not used
[-Wunused-function]
net/dsa/slave.c:116:13: warning: 'dsa_slave_change_rx_flags' defined
but not used [-Wunused-function]
net/dsa/slave.c:127:13: warning: 'dsa_slave_set_rx_mode' defined but
not used [-Wunused-function]
net/dsa/slave.c:136:12: warning: 'dsa_slave_set_mac_address' defined
but not used [-Wunused-function]
net/dsa/slave.c:164:12: warning: 'dsa_slave_ioctl' defined but not
used [-Wunused-function]

Earlier approach to fix this was discussed here:

lkml.org/lkml/2012/10/29/549

This is another approach to fix it. This is done by some changes in config
options, which make more sense than the earlier approach. As, atleast one
tagging option must always be selected for using net/dsa/ infrastructure, this
patch selects NET_DSA from tagging configs instead of having it as an selectable
config.

Signed-off-by: Viresh Kumar <viresh.ku...@linaro.org>
---
 drivers/net/dsa/Kconfig |  1 -
 net/dsa/Kconfig         | 16 +++++++++-------
 2 files changed, 9 insertions(+), 8 deletions(-)

diff --git a/drivers/net/dsa/Kconfig b/drivers/net/dsa/Kconfig
index dd151d5..96eae22 100644
--- a/drivers/net/dsa/Kconfig
+++ b/drivers/net/dsa/Kconfig
@@ -1,5 +1,4 @@
 menu "Distributed Switch Architecture drivers"
-       depends on NET_DSA

 config NET_DSA_MV88E6XXX
        tristate
diff --git a/net/dsa/Kconfig b/net/dsa/Kconfig
index 274791c..f7c6cef 100644
--- a/net/dsa/Kconfig
+++ b/net/dsa/Kconfig
@@ -1,5 +1,5 @@
 config NET_DSA
-       tristate "Distributed Switch Architecture support"
+       tristate
        default n
        depends on EXPERIMENTAL && NETDEVICES && !S390
        select PHYLIB
@@ -8,19 +8,21 @@ config NET_DSA
          the Distributed Switch Architecture.


-if NET_DSA
+menu "Distributed Switch Architecture support"

 # tagging formats
 config NET_DSA_TAG_DSA
-       bool
+       bool "Original DSA packet tagging format"
+       select NET_DSt
        default n

 config NET_DSA_TAG_EDSA
-       bool
+       bool "Ethertype DSA packet tagging format"
+       select NET_DSA
        default n

 config NET_DSA_TAG_TRAILER
-       bool
+       bool "Trailer DSA packet tagging format"
+       select NET_DSA
        default n
-
-endif
+endmenu
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to