• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-R7000-V1.0.7.12_1.2.5/components/opensource/linux/linux-2.6.36/drivers/uwb/

Lines Matching refs:uwb_rc

77  * @uwb_rc:  UWB Radio Controller
80 * We don't need to lock the uwb_rc's mutex because we don't modify
85 ssize_t uwb_rc_get_ie(struct uwb_rc *uwb_rc, struct uwb_rc_evt_get_ie **pget_ie)
88 struct device *dev = &uwb_rc->uwb_dev.dev;
99 result = uwb_rc_vcmd(uwb_rc, "GET_IE", cmd, sizeof(*cmd),
130 int uwb_rc_set_ie(struct uwb_rc *rc, struct uwb_rc_cmd_set_ie *cmd)
159 void uwb_rc_ie_init(struct uwb_rc *uwb_rc)
161 mutex_init(&uwb_rc->ies_mutex);
167 * @uwb_rc: the radio controller.
175 int uwb_rc_ie_setup(struct uwb_rc *uwb_rc)
180 capacity = uwb_rc_get_ie(uwb_rc, &ie_info);
184 mutex_lock(&uwb_rc->ies_mutex);
186 uwb_rc->ies = (struct uwb_rc_cmd_set_ie *)ie_info;
187 uwb_rc->ies->rccb.bCommandType = UWB_RC_CET_GENERAL;
188 uwb_rc->ies->rccb.wCommand = cpu_to_le16(UWB_RC_CMD_SET_IE);
189 uwb_rc->ies_capacity = capacity;
191 mutex_unlock(&uwb_rc->ies_mutex);
198 void uwb_rc_ie_release(struct uwb_rc *uwb_rc)
200 kfree(uwb_rc->ies);
201 uwb_rc->ies = NULL;
202 uwb_rc->ies_capacity = 0;
206 static int uwb_rc_ie_add_one(struct uwb_rc *rc, const struct uwb_ie_hdr *new_ie)
243 * @uwb_rc: the radio controller.
260 int uwb_rc_ie_add(struct uwb_rc *uwb_rc,
267 mutex_lock(&uwb_rc->ies_mutex);
275 result = uwb_rc_ie_add_one(uwb_rc, ie);
281 if (uwb_rc->beaconing != -1)
282 result = uwb_rc_set_ie(uwb_rc, uwb_rc->ies);
287 mutex_unlock(&uwb_rc->ies_mutex);
307 void uwb_rc_ie_cache_rm(struct uwb_rc *uwb_rc, enum uwb_ie to_remove)
310 size_t len = le16_to_cpu(uwb_rc->ies->wIELength);
314 ptr = uwb_rc->ies->IEData;
326 uwb_rc->ies->wIELength = cpu_to_le16(len);
332 * @uwb_rc: the radio controller.
340 int uwb_rc_ie_rm(struct uwb_rc *uwb_rc, enum uwb_ie element_id)
344 mutex_lock(&uwb_rc->ies_mutex);
346 uwb_rc_ie_cache_rm(uwb_rc, element_id);
348 if (uwb_rc->beaconing != -1)
349 result = uwb_rc_set_ie(uwb_rc, uwb_rc->ies);
351 mutex_unlock(&uwb_rc->ies_mutex);