aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/netdevice.h
diff options
context:
space:
mode:
authorAlexander Aring <alex.aring@gmail.com>2014-11-02 01:44:54 -0400
committerMarcel Holtmann <marcel@holtmann.org>2014-11-03 16:27:51 -0500
commit98a18b6ffc79baa69f4a0d1bae58faf2a8aef4c8 (patch)
tree13cb21dc5f8b459341b8068051d3b34f1e8f2a59 /include/linux/netdevice.h
parenta736abc1ac09b824387fb75b2aa7887c6e3ed68a (diff)
netdevice: add ieee802154_ptr to net_device
This patch adds an ieee802154_ptr to the net_device structure. Furthermore the 802.15.4 subsystem will introduce a nl802154 framework which is similar like the nl80211 framework and a wpan_dev structure. The wpan_dev structure will hold additional net_device attributes like address options which are 802.15.4 specific. In the upcoming nl802154 implementation we will introduce a NL802154_FLAG_NEED_WPAN_DEV like NL80211_FLAG_NEED_WDEV. For this flag an ieee802154_ptr in net_device is needed. Additional we can access the wpan_dev attributes in upper layers like IEEE 802.15.4 6LoWPAN easily. Current solution is a complicated callback interface and getting these values over subif data structure in mac802154. Signed-off-by: Alexander Aring <alex.aring@gmail.com> Acked-by: David S. Miller <davem@davemloft.net> Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
Diffstat (limited to 'include/linux/netdevice.h')
-rw-r--r--include/linux/netdevice.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/include/linux/netdevice.h b/include/linux/netdevice.h
index 74fd5d37f15a..c9bcf33efb47 100644
--- a/include/linux/netdevice.h
+++ b/include/linux/netdevice.h
@@ -57,6 +57,8 @@ struct device;
57struct phy_device; 57struct phy_device;
58/* 802.11 specific */ 58/* 802.11 specific */
59struct wireless_dev; 59struct wireless_dev;
60/* 802.15.4 specific */
61struct wpan_dev;
60 62
61void netdev_set_default_ethtool_ops(struct net_device *dev, 63void netdev_set_default_ethtool_ops(struct net_device *dev,
62 const struct ethtool_ops *ops); 64 const struct ethtool_ops *ops);
@@ -1572,6 +1574,7 @@ struct net_device {
1572 struct inet6_dev __rcu *ip6_ptr; 1574 struct inet6_dev __rcu *ip6_ptr;
1573 void *ax25_ptr; 1575 void *ax25_ptr;
1574 struct wireless_dev *ieee80211_ptr; 1576 struct wireless_dev *ieee80211_ptr;
1577 struct wpan_dev *ieee802154_ptr;
1575 1578
1576/* 1579/*
1577 * Cache lines mostly used on receive path (including eth_type_trans()) 1580 * Cache lines mostly used on receive path (including eth_type_trans())