diff options
author | Alexander Aring <alex.aring@gmail.com> | 2015-01-04 17:10:55 +0100 |
---|---|---|
committer | Marcel Holtmann <marcel@holtmann.org> | 2015-01-08 07:25:59 +0100 |
commit | 4662a0da544c8ed7ecf79ef0f6c4dc65be081352 (patch) | |
tree | f9e36fb6514d41041491dff7b714a80a3f3d98aa /net/ieee802154/6lowpan/6lowpan_i.h | |
parent | 8691ee592c9299847b28350692eda1d5d6990581 (diff) | |
download | op-kernel-dev-4662a0da544c8ed7ecf79ef0f6c4dc65be081352.zip op-kernel-dev-4662a0da544c8ed7ecf79ef0f6c4dc65be081352.tar.gz |
ieee802154: 6lowpan: move receive functionality
This patch moves all relevant receive functionality into a separate rx.c
file. We can simple separate this functionality like we did it in mac802154.
Signed-off-by: Alexander Aring <alex.aring@gmail.com>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
Diffstat (limited to 'net/ieee802154/6lowpan/6lowpan_i.h')
-rw-r--r-- | net/ieee802154/6lowpan/6lowpan_i.h | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/net/ieee802154/6lowpan/6lowpan_i.h b/net/ieee802154/6lowpan/6lowpan_i.h index edbe803..29ec61b 100644 --- a/net/ieee802154/6lowpan/6lowpan_i.h +++ b/net/ieee802154/6lowpan/6lowpan_i.h @@ -1,6 +1,8 @@ #ifndef __IEEE802154_6LOWPAN_I_H__ #define __IEEE802154_6LOWPAN_I_H__ +#include <linux/list.h> + #include <net/inet_frag.h> struct lowpan_create_arg { @@ -34,8 +36,31 @@ static inline u32 ieee802154_addr_hash(const struct ieee802154_addr *a) } } +struct lowpan_dev_record { + struct net_device *ldev; + struct list_head list; +}; + +/* private device info */ +struct lowpan_dev_info { + struct net_device *real_dev; /* real WPAN device ptr */ + struct mutex dev_list_mtx; /* mutex for list ops */ + u16 fragment_tag; +}; + +static inline struct +lowpan_dev_info *lowpan_dev_info(const struct net_device *dev) +{ + return netdev_priv(dev); +} + +extern struct list_head lowpan_devices; + int lowpan_frag_rcv(struct sk_buff *skb, const u8 frag_type); void lowpan_net_frag_exit(void); int lowpan_net_frag_init(void); +void lowpan_rx_init(void); +void lowpan_rx_exit(void); + #endif /* __IEEE802154_6LOWPAN_I_H__ */ |