ieee802154_i.h (16301861004e50be9c47113cceca62f56516a9a2) ieee802154_i.h (0ea3da64fa602efa0a89502eefdb396be84d2eba)
1/*
2 * Copyright (C) 2007-2012 Siemens AG
3 *
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License version 2
6 * as published by the Free Software Foundation.
7 *
8 * This program is distributed in the hope that it will be useful,

--- 53 unchanged lines hidden (view full) ---

62
63#define MAC802154_DEVICE_STOPPED 0x00
64#define MAC802154_DEVICE_RUN 0x01
65
66enum {
67 IEEE802154_RX_MSG = 1,
68};
69
1/*
2 * Copyright (C) 2007-2012 Siemens AG
3 *
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License version 2
6 * as published by the Free Software Foundation.
7 *
8 * This program is distributed in the hope that it will be useful,

--- 53 unchanged lines hidden (view full) ---

62
63#define MAC802154_DEVICE_STOPPED 0x00
64#define MAC802154_DEVICE_RUN 0x01
65
66enum {
67 IEEE802154_RX_MSG = 1,
68};
69
70enum ieee802154_sdata_state_bits {
71 SDATA_STATE_RUNNING,
72};
73
70/* Slave interface definition.
71 *
72 * Slaves represent typical network interfaces available from userspace.
73 * Each ieee802154 device/transceiver may have several slaves and able
74 * to be associated with several networks at the same time.
75 */
76struct ieee802154_sub_if_data {
77 struct list_head list; /* the ieee802154_priv->slaves list */
78
79 struct ieee802154_local *local;
80 struct net_device *dev;
81
82 int type;
74/* Slave interface definition.
75 *
76 * Slaves represent typical network interfaces available from userspace.
77 * Each ieee802154 device/transceiver may have several slaves and able
78 * to be associated with several networks at the same time.
79 */
80struct ieee802154_sub_if_data {
81 struct list_head list; /* the ieee802154_priv->slaves list */
82
83 struct ieee802154_local *local;
84 struct net_device *dev;
85
86 int type;
83 bool running;
87 unsigned long state;
84
85 spinlock_t mib_lock;
86
87 __le16 pan_id;
88 __le16 short_addr;
89 __le64 extended_addr;
90
91 u8 chan;

--- 23 unchanged lines hidden (view full) ---

115}
116
117static inline struct ieee802154_sub_if_data *
118IEEE802154_DEV_TO_SUB_IF(const struct net_device *dev)
119{
120 return netdev_priv(dev);
121}
122
88
89 spinlock_t mib_lock;
90
91 __le16 pan_id;
92 __le16 short_addr;
93 __le64 extended_addr;
94
95 u8 chan;

--- 23 unchanged lines hidden (view full) ---

119}
120
121static inline struct ieee802154_sub_if_data *
122IEEE802154_DEV_TO_SUB_IF(const struct net_device *dev)
123{
124 return netdev_priv(dev);
125}
126
127static inline bool
128ieee802154_sdata_running(struct ieee802154_sub_if_data *sdata)
129{
130 return test_bit(SDATA_STATE_RUNNING, &sdata->state);
131}
132
123extern struct ieee802154_reduced_mlme_ops mac802154_mlme_reduced;
124extern struct ieee802154_mlme_ops mac802154_mlme_wpan;
125
126void mac802154_monitor_setup(struct net_device *dev);
127netdev_tx_t
128ieee802154_monitor_start_xmit(struct sk_buff *skb, struct net_device *dev);
129
130void mac802154_wpan_setup(struct net_device *dev);

--- 51 unchanged lines hidden ---
133extern struct ieee802154_reduced_mlme_ops mac802154_mlme_reduced;
134extern struct ieee802154_mlme_ops mac802154_mlme_wpan;
135
136void mac802154_monitor_setup(struct net_device *dev);
137netdev_tx_t
138ieee802154_monitor_start_xmit(struct sk_buff *skb, struct net_device *dev);
139
140void mac802154_wpan_setup(struct net_device *dev);

--- 51 unchanged lines hidden ---