Lines Matching refs:wpan_dev
36 static struct wpan_dev *
40 struct wpan_dev *result = NULL; in __cfg802154_wpan_dev_from_attrs()
60 struct wpan_dev *wpan_dev; in __cfg802154_wpan_dev_from_attrs() local
68 list_for_each_entry(wpan_dev, &rdev->wpan_dev_list, list) { in __cfg802154_wpan_dev_from_attrs()
69 if (have_ifidx && wpan_dev->netdev && in __cfg802154_wpan_dev_from_attrs()
70 wpan_dev->netdev->ifindex == ifidx) { in __cfg802154_wpan_dev_from_attrs()
71 result = wpan_dev; in __cfg802154_wpan_dev_from_attrs()
75 wpan_dev->identifier == (u32)wpan_dev_id) { in __cfg802154_wpan_dev_from_attrs()
76 result = wpan_dev; in __cfg802154_wpan_dev_from_attrs()
110 struct wpan_dev *wpan_dev; in __cfg802154_rdev_from_attrs() local
116 list_for_each_entry(wpan_dev, &tmp->wpan_dev_list, list) { in __cfg802154_rdev_from_attrs()
117 if (wpan_dev->identifier != (u32)wpan_dev_id) in __cfg802154_rdev_from_attrs()
237 struct wpan_dev **wpan_dev) in nl802154_prepare_wpan_dev_dump() argument
245 *wpan_dev = __cfg802154_wpan_dev_from_attrs(sock_net(skb->sk), in nl802154_prepare_wpan_dev_dump()
247 if (IS_ERR(*wpan_dev)) { in nl802154_prepare_wpan_dev_dump()
248 err = PTR_ERR(*wpan_dev); in nl802154_prepare_wpan_dev_dump()
251 *rdev = wpan_phy_to_rdev((*wpan_dev)->wpan_phy); in nl802154_prepare_wpan_dev_dump()
254 cb->args[1] = (*wpan_dev)->identifier; in nl802154_prepare_wpan_dev_dump()
258 struct wpan_dev *tmp; in nl802154_prepare_wpan_dev_dump()
265 *wpan_dev = NULL; in nl802154_prepare_wpan_dev_dump()
269 *wpan_dev = tmp; in nl802154_prepare_wpan_dev_dump()
274 if (!*wpan_dev) { in nl802154_prepare_wpan_dev_dump()
659 static inline u64 wpan_dev_id(struct wpan_dev *wpan_dev) in wpan_dev_id() argument
661 return (u64)wpan_dev->identifier | in wpan_dev_id()
662 ((u64)wpan_phy_to_rdev(wpan_dev->wpan_phy)->wpan_phy_idx << 32); in wpan_dev_id()
739 struct wpan_dev *wpan_dev) in nl802154_get_llsec_params() argument
745 ret = rdev_get_llsec_params(rdev, wpan_dev, ¶ms); in nl802154_get_llsec_params()
772 struct wpan_dev *wpan_dev) in nl802154_send_iface() argument
774 struct net_device *dev = wpan_dev->netdev; in nl802154_send_iface()
788 nla_put_u32(msg, NL802154_ATTR_IFTYPE, wpan_dev->iftype) || in nl802154_send_iface()
790 wpan_dev_id(wpan_dev), NL802154_ATTR_PAD) || in nl802154_send_iface()
798 wpan_dev->extended_addr, in nl802154_send_iface()
801 wpan_dev->short_addr) || in nl802154_send_iface()
802 nla_put_le16(msg, NL802154_ATTR_PAN_ID, wpan_dev->pan_id)) in nl802154_send_iface()
807 wpan_dev->frame_retries) || in nl802154_send_iface()
808 nla_put_u8(msg, NL802154_ATTR_MAX_BE, wpan_dev->max_be) || in nl802154_send_iface()
810 wpan_dev->csma_retries) || in nl802154_send_iface()
811 nla_put_u8(msg, NL802154_ATTR_MIN_BE, wpan_dev->min_be)) in nl802154_send_iface()
815 if (nla_put_u8(msg, NL802154_ATTR_LBT_MODE, wpan_dev->lbt)) in nl802154_send_iface()
819 if (nla_put_u8(msg, NL802154_ATTR_ACKREQ_DEFAULT, wpan_dev->ackreq)) in nl802154_send_iface()
823 if (wpan_dev->iftype == NL802154_IFTYPE_MONITOR) in nl802154_send_iface()
826 if (nl802154_get_llsec_params(msg, rdev, wpan_dev) < 0) in nl802154_send_iface()
848 struct wpan_dev *wpan_dev; in nl802154_dump_interface() local
860 list_for_each_entry(wpan_dev, &rdev->wpan_dev_list, list) { in nl802154_dump_interface()
867 rdev, wpan_dev) < 0) { in nl802154_dump_interface()
888 struct wpan_dev *wdev = info->user_ptr[1]; in nl802154_get_interface()
937 struct wpan_dev *wpan_dev = info->user_ptr[1]; in nl802154_del_interface() local
948 if (!wpan_dev->netdev) in nl802154_del_interface()
951 return rdev_del_virtual_intf(rdev, wpan_dev); in nl802154_del_interface()
1053 struct wpan_dev *wpan_dev = dev->ieee802154_ptr; in nl802154_set_pan_id() local
1060 if (wpan_dev->lowpan_dev) { in nl802154_set_pan_id()
1061 if (netif_running(wpan_dev->lowpan_dev)) in nl802154_set_pan_id()
1066 if (wpan_dev->iftype == NL802154_IFTYPE_MONITOR || in nl802154_set_pan_id()
1082 return rdev_set_pan_id(rdev, wpan_dev, pan_id); in nl802154_set_pan_id()
1089 struct wpan_dev *wpan_dev = dev->ieee802154_ptr; in nl802154_set_short_addr() local
1096 if (wpan_dev->lowpan_dev) { in nl802154_set_short_addr()
1097 if (netif_running(wpan_dev->lowpan_dev)) in nl802154_set_short_addr()
1102 if (wpan_dev->iftype == NL802154_IFTYPE_MONITOR || in nl802154_set_short_addr()
1123 return rdev_set_short_addr(rdev, wpan_dev, short_addr); in nl802154_set_short_addr()
1131 struct wpan_dev *wpan_dev = dev->ieee802154_ptr; in nl802154_set_backoff_exponent() local
1153 return rdev_set_backoff_exponent(rdev, wpan_dev, min_be, max_be); in nl802154_set_backoff_exponent()
1161 struct wpan_dev *wpan_dev = dev->ieee802154_ptr; in nl802154_set_max_csma_backoffs() local
1179 return rdev_set_max_csma_backoffs(rdev, wpan_dev, max_csma_backoffs); in nl802154_set_max_csma_backoffs()
1187 struct wpan_dev *wpan_dev = dev->ieee802154_ptr; in nl802154_set_max_frame_retries() local
1204 return rdev_set_max_frame_retries(rdev, wpan_dev, max_frame_retries); in nl802154_set_max_frame_retries()
1211 struct wpan_dev *wpan_dev = dev->ieee802154_ptr; in nl802154_set_lbt_mode() local
1228 return rdev_set_lbt_mode(rdev, wpan_dev, mode); in nl802154_set_lbt_mode()
1236 struct wpan_dev *wpan_dev = dev->ieee802154_ptr; in nl802154_set_ackreq_default() local
1250 return rdev_set_ackreq_default(rdev, wpan_dev, ackreq); in nl802154_set_ackreq_default()
1388 struct wpan_dev *wpan_dev = dev->ieee802154_ptr; in nl802154_set_llsec_params() local
1393 if (wpan_dev->iftype == NL802154_IFTYPE_MONITOR) in nl802154_set_llsec_params()
1429 return rdev_set_llsec_params(rdev, wpan_dev, ¶ms, changed); in nl802154_set_llsec_params()
1495 struct wpan_dev *wpan_dev; in nl802154_dump_llsec_key() local
1498 err = nl802154_prepare_wpan_dev_dump(skb, cb, &rdev, &wpan_dev); in nl802154_dump_llsec_key()
1502 if (wpan_dev->iftype == NL802154_IFTYPE_MONITOR) { in nl802154_dump_llsec_key()
1507 if (!wpan_dev->netdev) { in nl802154_dump_llsec_key()
1512 rdev_lock_llsec_table(rdev, wpan_dev); in nl802154_dump_llsec_key()
1513 rdev_get_llsec_table(rdev, wpan_dev, &table); in nl802154_dump_llsec_key()
1523 rdev, wpan_dev->netdev, key) < 0) { in nl802154_dump_llsec_key()
1526 rdev_unlock_llsec_table(rdev, wpan_dev); in nl802154_dump_llsec_key()
1534 rdev_unlock_llsec_table(rdev, wpan_dev); in nl802154_dump_llsec_key()
1555 struct wpan_dev *wpan_dev = dev->ieee802154_ptr; in nl802154_add_llsec_key() local
1561 if (wpan_dev->iftype == NL802154_IFTYPE_MONITOR) in nl802154_add_llsec_key()
1602 return rdev_add_llsec_key(rdev, wpan_dev, &id, &key); in nl802154_add_llsec_key()
1609 struct wpan_dev *wpan_dev = dev->ieee802154_ptr; in nl802154_del_llsec_key() local
1613 if (wpan_dev->iftype == NL802154_IFTYPE_MONITOR) in nl802154_del_llsec_key()
1623 return rdev_del_llsec_key(rdev, wpan_dev, &id); in nl802154_del_llsec_key()
1674 struct wpan_dev *wpan_dev; in nl802154_dump_llsec_dev() local
1677 err = nl802154_prepare_wpan_dev_dump(skb, cb, &rdev, &wpan_dev); in nl802154_dump_llsec_dev()
1681 if (wpan_dev->iftype == NL802154_IFTYPE_MONITOR) { in nl802154_dump_llsec_dev()
1686 if (!wpan_dev->netdev) { in nl802154_dump_llsec_dev()
1691 rdev_lock_llsec_table(rdev, wpan_dev); in nl802154_dump_llsec_dev()
1692 rdev_get_llsec_table(rdev, wpan_dev, &table); in nl802154_dump_llsec_dev()
1702 rdev, wpan_dev->netdev, dev) < 0) { in nl802154_dump_llsec_dev()
1705 rdev_unlock_llsec_table(rdev, wpan_dev); in nl802154_dump_llsec_dev()
1713 rdev_unlock_llsec_table(rdev, wpan_dev); in nl802154_dump_llsec_dev()
1769 struct wpan_dev *wpan_dev = dev->ieee802154_ptr; in nl802154_add_llsec_dev() local
1772 if (wpan_dev->iftype == NL802154_IFTYPE_MONITOR) in nl802154_add_llsec_dev()
1779 return rdev_add_device(rdev, wpan_dev, &dev_desc); in nl802154_add_llsec_dev()
1786 struct wpan_dev *wpan_dev = dev->ieee802154_ptr; in nl802154_del_llsec_dev() local
1790 if (wpan_dev->iftype == NL802154_IFTYPE_MONITOR) in nl802154_del_llsec_dev()
1801 return rdev_del_device(rdev, wpan_dev, extended_addr); in nl802154_del_llsec_dev()
1855 struct wpan_dev *wpan_dev; in nl802154_dump_llsec_devkey() local
1858 err = nl802154_prepare_wpan_dev_dump(skb, cb, &rdev, &wpan_dev); in nl802154_dump_llsec_devkey()
1862 if (wpan_dev->iftype == NL802154_IFTYPE_MONITOR) { in nl802154_dump_llsec_devkey()
1867 if (!wpan_dev->netdev) { in nl802154_dump_llsec_devkey()
1872 rdev_lock_llsec_table(rdev, wpan_dev); in nl802154_dump_llsec_devkey()
1873 rdev_get_llsec_table(rdev, wpan_dev, &table); in nl802154_dump_llsec_devkey()
1887 wpan_dev->netdev, in nl802154_dump_llsec_devkey()
1892 rdev_unlock_llsec_table(rdev, wpan_dev); in nl802154_dump_llsec_devkey()
1901 rdev_unlock_llsec_table(rdev, wpan_dev); in nl802154_dump_llsec_devkey()
1919 struct wpan_dev *wpan_dev = dev->ieee802154_ptr; in nl802154_add_llsec_devkey() local
1924 if (wpan_dev->iftype == NL802154_IFTYPE_MONITOR) in nl802154_add_llsec_devkey()
1946 return rdev_add_devkey(rdev, wpan_dev, extended_addr, &key); in nl802154_add_llsec_devkey()
1953 struct wpan_dev *wpan_dev = dev->ieee802154_ptr; in nl802154_del_llsec_devkey() local
1958 if (wpan_dev->iftype == NL802154_IFTYPE_MONITOR) in nl802154_del_llsec_devkey()
1977 return rdev_del_devkey(rdev, wpan_dev, extended_addr, &key); in nl802154_del_llsec_devkey()
2028 struct wpan_dev *wpan_dev; in nl802154_dump_llsec_seclevel() local
2031 err = nl802154_prepare_wpan_dev_dump(skb, cb, &rdev, &wpan_dev); in nl802154_dump_llsec_seclevel()
2035 if (wpan_dev->iftype == NL802154_IFTYPE_MONITOR) { in nl802154_dump_llsec_seclevel()
2040 if (!wpan_dev->netdev) { in nl802154_dump_llsec_seclevel()
2045 rdev_lock_llsec_table(rdev, wpan_dev); in nl802154_dump_llsec_seclevel()
2046 rdev_get_llsec_table(rdev, wpan_dev, &table); in nl802154_dump_llsec_seclevel()
2056 rdev, wpan_dev->netdev, sl) < 0) { in nl802154_dump_llsec_seclevel()
2059 rdev_unlock_llsec_table(rdev, wpan_dev); in nl802154_dump_llsec_seclevel()
2067 rdev_unlock_llsec_table(rdev, wpan_dev); in nl802154_dump_llsec_seclevel()
2121 struct wpan_dev *wpan_dev = dev->ieee802154_ptr; in nl802154_add_llsec_seclevel() local
2124 if (wpan_dev->iftype == NL802154_IFTYPE_MONITOR) in nl802154_add_llsec_seclevel()
2131 return rdev_add_seclevel(rdev, wpan_dev, &sl); in nl802154_add_llsec_seclevel()
2139 struct wpan_dev *wpan_dev = dev->ieee802154_ptr; in nl802154_del_llsec_seclevel() local
2142 if (wpan_dev->iftype == NL802154_IFTYPE_MONITOR) in nl802154_del_llsec_seclevel()
2150 return rdev_del_seclevel(rdev, wpan_dev, &sl); in nl802154_del_llsec_seclevel()
2168 struct wpan_dev *wpan_dev; in nl802154_pre_doit() local
2186 wpan_dev = __cfg802154_wpan_dev_from_attrs(genl_info_net(info), in nl802154_pre_doit()
2188 if (IS_ERR(wpan_dev)) { in nl802154_pre_doit()
2191 return PTR_ERR(wpan_dev); in nl802154_pre_doit()
2194 dev = wpan_dev->netdev; in nl802154_pre_doit()
2195 rdev = wpan_phy_to_rdev(wpan_dev->wpan_phy); in nl802154_pre_doit()
2206 info->user_ptr[1] = wpan_dev; in nl802154_pre_doit()
2231 struct wpan_dev *wpan_dev = info->user_ptr[1]; in nl802154_post_doit() local
2233 if (wpan_dev->netdev) in nl802154_post_doit()
2234 dev_put(wpan_dev->netdev); in nl802154_post_doit()