mac802154: slave interfaces declaration

Slaves represent typical network interfaces available from userspace.
Each ieee802154 device/transceiver may have several slaves and able
to be associated with several networks at the same time. So this
patch adds structure for slaves declaration.

Signed-off-by: Alexander Smirnov <alex.bluesman.smirnov@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
alex.bluesman.smirnov@gmail.com 2012-05-15 20:50:24 +00:00 committed by David S. Miller
parent 74a02fcf77
commit 4d23c9cc07
1 changed files with 28 additions and 0 deletions

View File

@ -58,6 +58,34 @@ struct mac802154_priv {
#define MAC802154_DEVICE_STOPPED 0x00
#define MAC802154_DEVICE_RUN 0x01
/* Slave interface definition.
*
* Slaves represent typical network interfaces available from userspace.
* Each ieee802154 device/transceiver may have several slaves and able
* to be associated with several networks at the same time.
*/
struct mac802154_sub_if_data {
struct list_head list; /* the ieee802154_priv->slaves list */
struct mac802154_priv *hw;
struct net_device *dev;
int type;
spinlock_t mib_lock;
__le16 pan_id;
__le16 short_addr;
u8 chan;
u8 page;
/* MAC BSN field */
u8 bsn;
/* MAC DSN field */
u8 dsn;
};
#define mac802154_to_priv(_hw) container_of(_hw, struct mac802154_priv, hw)
#define MAC802154_MAX_XMIT_ATTEMPTS 3