Lines Matching refs:sdata
35 struct ieee802154_sub_if_data *sdata = IEEE802154_DEV_TO_SUB_IF(dev); in mac802154_wpan_update_llsec() local
37 struct wpan_dev *wpan_dev = &sdata->wpan_dev; in mac802154_wpan_update_llsec()
59 struct ieee802154_sub_if_data *sdata = IEEE802154_DEV_TO_SUB_IF(dev); in mac802154_wpan_ioctl() local
60 struct wpan_dev *wpan_dev = &sdata->wpan_dev; in mac802154_wpan_ioctl()
67 spin_lock_bh(&sdata->mib_lock); in mac802154_wpan_ioctl()
92 spin_unlock_bh(&sdata->mib_lock); in mac802154_wpan_ioctl()
114 spin_unlock_bh(&sdata->mib_lock); in mac802154_wpan_ioctl()
120 struct ieee802154_sub_if_data *sdata = IEEE802154_DEV_TO_SUB_IF(dev); in mac802154_wpan_mac_addr() local
132 sdata->wpan_dev.extended_addr = extended_addr; in mac802154_wpan_mac_addr()
139 struct ieee802154_sub_if_data *sdata = IEEE802154_DEV_TO_SUB_IF(dev); in mac802154_slave_open() local
140 struct ieee802154_local *local = sdata->local; in mac802154_slave_open()
145 set_bit(SDATA_STATE_RUNNING, &sdata->state); in mac802154_slave_open()
159 clear_bit(SDATA_STATE_RUNNING, &sdata->state); in mac802154_slave_open()
204 ieee802154_check_concurrent_iface(struct ieee802154_sub_if_data *sdata, in ieee802154_check_concurrent_iface() argument
207 struct ieee802154_local *local = sdata->local; in ieee802154_check_concurrent_iface()
208 struct wpan_dev *wpan_dev = &sdata->wpan_dev; in ieee802154_check_concurrent_iface()
213 if (nsdata != sdata && ieee802154_sdata_running(nsdata)) { in ieee802154_check_concurrent_iface()
221 if (sdata->vif.type == NL802154_IFTYPE_NODE && in ieee802154_check_concurrent_iface()
241 struct ieee802154_sub_if_data *sdata = IEEE802154_DEV_TO_SUB_IF(dev); in mac802154_wpan_open() local
242 struct ieee802154_local *local = sdata->local; in mac802154_wpan_open()
243 struct wpan_dev *wpan_dev = &sdata->wpan_dev; in mac802154_wpan_open()
244 struct wpan_phy *phy = sdata->local->phy; in mac802154_wpan_open()
246 rc = ieee802154_check_concurrent_iface(sdata, sdata->vif.type); in mac802154_wpan_open()
307 struct ieee802154_sub_if_data *sdata = IEEE802154_DEV_TO_SUB_IF(dev); in mac802154_slave_close() local
308 struct ieee802154_local *local = sdata->local; in mac802154_slave_close()
317 clear_bit(SDATA_STATE_RUNNING, &sdata->state); in mac802154_slave_close()
325 static int mac802154_set_header_security(struct ieee802154_sub_if_data *sdata, in mac802154_set_header_security() argument
332 mac802154_llsec_get_params(&sdata->sec, ¶ms); in mac802154_set_header_security()
365 struct ieee802154_sub_if_data *sdata = IEEE802154_DEV_TO_SUB_IF(dev); in mac802154_header_create() local
366 struct wpan_dev *wpan_dev = &sdata->wpan_dev; in mac802154_header_create()
379 if (mac802154_set_header_security(sdata, &hdr, cb) < 0) in mac802154_header_create()
383 spin_lock_bh(&sdata->mib_lock); in mac802154_header_create()
397 spin_unlock_bh(&sdata->mib_lock); in mac802154_header_create()
453 struct ieee802154_sub_if_data *sdata = IEEE802154_DEV_TO_SUB_IF(dev); in mac802154_wpan_free() local
455 mac802154_llsec_destroy(&sdata->sec); in mac802154_wpan_free()
473 ieee802154_setup_sdata(struct ieee802154_sub_if_data *sdata, in ieee802154_setup_sdata() argument
476 struct wpan_dev *wpan_dev = &sdata->wpan_dev; in ieee802154_setup_sdata()
479 sdata->vif.type = type; in ieee802154_setup_sdata()
480 sdata->wpan_dev.iftype = type; in ieee802154_setup_sdata()
498 sdata->dev->dev_addr); in ieee802154_setup_sdata()
500 sdata->dev->header_ops = &mac802154_header_ops; in ieee802154_setup_sdata()
501 sdata->dev->destructor = mac802154_wpan_free; in ieee802154_setup_sdata()
502 sdata->dev->netdev_ops = &mac802154_wpan_ops; in ieee802154_setup_sdata()
503 sdata->dev->ml_priv = &mac802154_mlme_wpan; in ieee802154_setup_sdata()
506 spin_lock_init(&sdata->mib_lock); in ieee802154_setup_sdata()
507 mutex_init(&sdata->sec_mtx); in ieee802154_setup_sdata()
509 mac802154_llsec_init(&sdata->sec); in ieee802154_setup_sdata()
512 sdata->dev->destructor = free_netdev; in ieee802154_setup_sdata()
513 sdata->dev->netdev_ops = &mac802154_monitor_ops; in ieee802154_setup_sdata()
529 struct ieee802154_sub_if_data *sdata = NULL; in ieee802154_if_add() local
534 ndev = alloc_netdev(sizeof(*sdata) + local->hw.vif_data_size, name, in ieee802154_if_add()
566 sdata = netdev_priv(ndev); in ieee802154_if_add()
567 ndev->ieee802154_ptr = &sdata->wpan_dev; in ieee802154_if_add()
568 memcpy(sdata->name, ndev->name, IFNAMSIZ); in ieee802154_if_add()
569 sdata->dev = ndev; in ieee802154_if_add()
570 sdata->wpan_dev.wpan_phy = local->hw.phy; in ieee802154_if_add()
571 sdata->local = local; in ieee802154_if_add()
574 ret = ieee802154_setup_sdata(sdata, type); in ieee802154_if_add()
583 list_add_tail_rcu(&sdata->list, &local->interfaces); in ieee802154_if_add()
593 void ieee802154_if_remove(struct ieee802154_sub_if_data *sdata) in ieee802154_if_remove() argument
597 mutex_lock(&sdata->local->iflist_mtx); in ieee802154_if_remove()
598 list_del_rcu(&sdata->list); in ieee802154_if_remove()
599 mutex_unlock(&sdata->local->iflist_mtx); in ieee802154_if_remove()
602 unregister_netdevice(sdata->dev); in ieee802154_if_remove()
607 struct ieee802154_sub_if_data *sdata, *tmp; in ieee802154_remove_interfaces() local
610 list_for_each_entry_safe(sdata, tmp, &local->interfaces, list) { in ieee802154_remove_interfaces()
611 list_del(&sdata->list); in ieee802154_remove_interfaces()
613 unregister_netdevice(sdata->dev); in ieee802154_remove_interfaces()
622 struct ieee802154_sub_if_data *sdata; in netdev_notify() local
633 sdata = IEEE802154_DEV_TO_SUB_IF(dev); in netdev_notify()
634 memcpy(sdata->name, dev->name, IFNAMSIZ); in netdev_notify()