23 #include <linux/kernel.h>
24 #include <linux/module.h>
25 #include <linux/netdevice.h>
42 res = ipriv->
ops->start(&ipriv->
hw);
48 if (ipriv->
ops->ieee_addr) {
56 netif_start_queue(dev);
59 priv->
hw->open_count--;
69 netif_stop_queue(dev);
72 ipriv->
ops->stop(&ipriv->
hw);
84 ipriv = wpan_phy_priv(phy);
86 priv = netdev_priv(dev);
107 list_add_tail_rcu(&priv->
list, &ipriv->
slaves);
120 sdata = netdev_priv(dev);
125 list_del_rcu(&sdata->
list);
129 unregister_netdevice(sdata->
dev);
155 err = mac802154_netdev_register(phy, dev);
175 if (!ops || !ops->
xmit || !ops->
ed || !ops->
start ||
178 "undefined IEEE802.15.4 device operations\n");
205 "failure to allocate master IEEE802.15.4 device\n");
209 priv = wpan_phy_priv(phy);
214 INIT_LIST_HEAD(&priv->
slaves);
243 wpan_phy_set_dev(priv->
phy, priv->
hw.parent);
245 priv->
phy->add_iface = mac802154_add_iface;
246 priv->
phy->del_iface = mac802154_del_iface;
288 unregister_netdevice(sdata->
dev);