In order to push switchdev objects down to DSA drivers, I need to include
switchdev.h in dsa.h. But compilation fails because of a circular dependency
issue, since dsa.h is also included in linux/netdevice.h.
dsa.h is included for two purposes: to have the definition of struct
dsa_switch_tree; and to have access to dsa_uses_tagged_protocol(), used by
netdev_uses_dsa().

This patchset forward declares struct dsa_switch_tree; adds a new uses_hw_tag
boolean to struct net_device, which is more explicit than the DSA helper, and
finally get rid of the dsa.h include.

With this patchset, switchdev.h can safely be included in dsa.h.

Vivien Didelot (3):
  net: dsa: add uses_hw_tag
  net: dsa: include dsa.h in dsa_priv.h
  net: remove dsa.h include from linux/netdevice.h

 include/linux/netdevice.h | 9 ++++++---
 include/net/dsa.h         | 5 -----
 net/dsa/dsa.c             | 1 +
 net/dsa/dsa_priv.h        | 1 +
 4 files changed, 8 insertions(+), 8 deletions(-)

-- 
2.6.0

--
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