Lines Matching refs:link

99 	struct ieee80211_link_data *link;  member
110 return d->format(d->link, buf, bufsize); in ieee80211_if_read_link_handler()
117 ssize_t (*format)(const struct ieee80211_link_data *link, char *, int)) in ieee80211_if_read_link() argument
119 struct ieee80211_link_data *link = file->private_data; in ieee80211_if_read_link() local
122 .link = link, in ieee80211_if_read_link()
126 return wiphy_locked_debugfs_read(link->sdata->local->hw.wiphy, in ieee80211_if_read_link()
135 struct ieee80211_link_data *link; member
153 ssize_t (*write)(struct ieee80211_link_data *link, const char *, int)) in ieee80211_if_write_link() argument
155 struct ieee80211_link_data *link = file->private_data; in ieee80211_if_write_link() local
158 .link = link, in ieee80211_if_write_link()
162 return wiphy_locked_debugfs_write(link->sdata->local->hw.wiphy, in ieee80211_if_write_link()
379 static int ieee80211_set_smps(struct ieee80211_link_data *link, in ieee80211_set_smps() argument
382 struct ieee80211_sub_if_data *sdata = link->sdata; in ieee80211_set_smps()
404 return __ieee80211_request_smps_mgd(link->sdata, link, smps_mode); in ieee80211_set_smps()
414 static ssize_t ieee80211_if_fmt_smps(const struct ieee80211_link_data *link, in ieee80211_if_fmt_smps() argument
417 if (link->sdata->vif.type == NL80211_IFTYPE_STATION) in ieee80211_if_fmt_smps()
419 smps_modes[link->u.mgd.req_smps], in ieee80211_if_fmt_smps()
420 smps_modes[link->smps_mode]); in ieee80211_if_fmt_smps()
424 static ssize_t ieee80211_if_parse_smps(struct ieee80211_link_data *link, in ieee80211_if_parse_smps() argument
431 int err = ieee80211_set_smps(link, mode); in ieee80211_if_parse_smps()
979 link, &link_##name##_ops)
983 static void add_link_files(struct ieee80211_link_data *link, in add_link_files() argument
990 switch (link->sdata->vif.type) { in add_link_files()
1044 void ieee80211_link_debugfs_add(struct ieee80211_link_data *link) in ieee80211_link_debugfs_add() argument
1048 if (WARN_ON(!link->sdata->vif.debugfs_dir || link->debugfs_dir)) in ieee80211_link_debugfs_add()
1052 if (WARN_ON(!(link->sdata->local->hw.wiphy->flags & WIPHY_FLAG_SUPPORTS_MLO))) in ieee80211_link_debugfs_add()
1056 "link-%d", link->link_id); in ieee80211_link_debugfs_add()
1058 link->debugfs_dir = in ieee80211_link_debugfs_add()
1060 link->sdata->vif.debugfs_dir); in ieee80211_link_debugfs_add()
1062 DEBUGFS_ADD(link->debugfs_dir, addr); in ieee80211_link_debugfs_add()
1063 add_link_files(link, link->debugfs_dir); in ieee80211_link_debugfs_add()
1066 void ieee80211_link_debugfs_remove(struct ieee80211_link_data *link) in ieee80211_link_debugfs_remove() argument
1068 if (!link->sdata->vif.debugfs_dir || !link->debugfs_dir) { in ieee80211_link_debugfs_remove()
1069 link->debugfs_dir = NULL; in ieee80211_link_debugfs_remove()
1073 if (link->debugfs_dir == link->sdata->vif.debugfs_dir) { in ieee80211_link_debugfs_remove()
1074 WARN_ON(link != &link->sdata->deflink); in ieee80211_link_debugfs_remove()
1075 link->debugfs_dir = NULL; in ieee80211_link_debugfs_remove()
1079 debugfs_remove_recursive(link->debugfs_dir); in ieee80211_link_debugfs_remove()
1080 link->debugfs_dir = NULL; in ieee80211_link_debugfs_remove()
1083 void ieee80211_link_debugfs_drv_add(struct ieee80211_link_data *link) in ieee80211_link_debugfs_drv_add() argument
1085 if (link->sdata->vif.type == NL80211_IFTYPE_MONITOR || in ieee80211_link_debugfs_drv_add()
1086 WARN_ON(!link->debugfs_dir)) in ieee80211_link_debugfs_drv_add()
1089 drv_link_add_debugfs(link->sdata->local, link->sdata, in ieee80211_link_debugfs_drv_add()
1090 link->conf, link->debugfs_dir); in ieee80211_link_debugfs_drv_add()
1093 void ieee80211_link_debugfs_drv_remove(struct ieee80211_link_data *link) in ieee80211_link_debugfs_drv_remove() argument
1095 if (!link || !link->debugfs_dir) in ieee80211_link_debugfs_drv_remove()
1098 if (WARN_ON(link->debugfs_dir == link->sdata->vif.debugfs_dir)) in ieee80211_link_debugfs_drv_remove()
1102 debugfs_remove_recursive(link->debugfs_dir); in ieee80211_link_debugfs_drv_remove()
1103 link->debugfs_dir = NULL; in ieee80211_link_debugfs_drv_remove()
1105 ieee80211_link_debugfs_add(link); in ieee80211_link_debugfs_drv_remove()