Lines Matching defs:link
23 Abstract: rt2x00 generic link tuning routines.
49 * that with link tuning, the device can have a very good RSSI
53 * the new values correctly allowing a effective link tuning,
78 struct link_ant *ant = &rt2x00dev->link.ant;
80 if (ant->rssi_ant.avg && rt2x00dev->link.qual.rx_success)
87 struct link_ant *ant = &rt2x00dev->link.ant;
97 struct link_ant *ant = &rt2x00dev->link.ant;
103 rt2x00dev->link.ant.rssi_ant.avg = 0;
104 rt2x00dev->link.ant.rssi_ant.avg_weight = 0;
109 struct link_ant *ant = &rt2x00dev->link.ant;
150 struct link_ant *ant = &rt2x00dev->link.ant;
190 struct link_ant *ant = &rt2x00dev->link.ant;
196 * Always perform this check since within the link
225 } else if (rt2x00dev->link.count & 1) {
237 struct link *link = &rt2x00dev->link;
238 struct link_qual *qual = &rt2x00dev->link.qual;
239 struct link_ant *ant = &rt2x00dev->link.ant;
260 link->avg_rssi = MOVING_AVERAGE(link->avg_rssi, rxdesc->rssi);
270 struct link *link = &rt2x00dev->link;
275 * don't need link tuning and monitor mode interfaces
276 * should never have to work with link tuners.
282 * While scanning, link tuning is disabled. By default
294 &link->work, LINK_TUNE_INTERVAL);
299 cancel_delayed_work_sync(&rt2x00dev->link.work);
304 struct link_qual *qual = &rt2x00dev->link.qual;
311 * Reset link information.
313 * the link tuner counter should be reset. Resetting
315 * device should only perform link tuning during the
318 rt2x00dev->link.count = 0;
329 * Reset the link tuner.
339 struct link_qual *qual = &rt2x00dev->link.qual;
350 container_of(work, struct rt2x00_dev, link.work.work);
351 struct link *link = &rt2x00dev->link;
352 struct link_qual *qual = &rt2x00dev->link.qual;
356 * immediately cease all link tuning.
369 * Update quality RSSI for link tuning,
374 if (!link->avg_rssi.avg || !qual->rx_success)
377 qual->rssi = link->avg_rssi.avg;
380 * Check if link tuning is supported by the hardware, some hardware
381 * do not support link tuning at all, while other devices can disable
385 rt2x00dev->ops->lib->link_tuner(rt2x00dev, qual, link->count);
401 * Increase tuner counter, and reschedule the next link tuner run.
403 link->count++;
407 &link->work, LINK_TUNE_INTERVAL);
412 struct link *link = &rt2x00dev->link;
419 &link->watchdog_work, WATCHDOG_INTERVAL);
424 cancel_delayed_work_sync(&rt2x00dev->link.watchdog_work);
430 container_of(work, struct rt2x00_dev, link.watchdog_work.work);
431 struct link *link = &rt2x00dev->link;
444 &link->watchdog_work, WATCHDOG_INTERVAL);
449 INIT_DELAYED_WORK(&rt2x00dev->link.watchdog_work, rt2x00link_watchdog);
450 INIT_DELAYED_WORK(&rt2x00dev->link.work, rt2x00link_tuner);