#include <linux/netdevice.h>
#include <linux/if_arp.h>
#include <linux/crc-ccitt.h>
#include <asm/unaligned.h>
#include <net/rtnetlink.h>
#include <net/ieee802154_netdev.h>
#include <net/mac802154.h>
#include <net/cfg802154.h>
#include "ieee802154_i.h"
#include "driver-ops.h"
void ieee802154_xmit_sync_worker(struct work_struct *work)
{ … }
static netdev_tx_t
ieee802154_tx(struct ieee802154_local *local, struct sk_buff *skb)
{ … }
static int ieee802154_sync_queue(struct ieee802154_local *local)
{ … }
int ieee802154_sync_and_hold_queue(struct ieee802154_local *local)
{ … }
int ieee802154_mlme_op_pre(struct ieee802154_local *local)
{ … }
int ieee802154_mlme_tx_locked(struct ieee802154_local *local,
struct ieee802154_sub_if_data *sdata,
struct sk_buff *skb)
{ … }
int ieee802154_mlme_tx(struct ieee802154_local *local,
struct ieee802154_sub_if_data *sdata,
struct sk_buff *skb)
{ … }
void ieee802154_mlme_op_post(struct ieee802154_local *local)
{ … }
int ieee802154_mlme_tx_one(struct ieee802154_local *local,
struct ieee802154_sub_if_data *sdata,
struct sk_buff *skb)
{ … }
int ieee802154_mlme_tx_one_locked(struct ieee802154_local *local,
struct ieee802154_sub_if_data *sdata,
struct sk_buff *skb)
{ … }
static bool ieee802154_queue_is_stopped(struct ieee802154_local *local)
{ … }
static netdev_tx_t
ieee802154_hot_tx(struct ieee802154_local *local, struct sk_buff *skb)
{ … }
netdev_tx_t
ieee802154_monitor_start_xmit(struct sk_buff *skb, struct net_device *dev)
{ … }
netdev_tx_t
ieee802154_subif_start_xmit(struct sk_buff *skb, struct net_device *dev)
{ … }