Lines Matching defs:wl

15 static int wl1251_event_scan_complete(struct wl1251 *wl,
24 if (wl->scanning) {
29 ieee80211_scan_completed(wl->hw, &info);
31 wl->scanning = false;
32 if (wl->hw->conf.flags & IEEE80211_CONF_IDLE)
33 ret = wl1251_ps_set_mode(wl, STATION_IDLE);
40 static int wl1251_event_ps_report(struct wl1251 *wl,
51 if (wl->station_mode != STATION_POWER_SAVE_MODE) {
53 wl->psm_entry_retry = 0;
57 if (wl->psm_entry_retry < WL1251_PSM_ENTRY_RETRIES) {
58 wl->psm_entry_retry++;
59 ret = wl1251_ps_set_mode(wl, STATION_POWER_SAVE_MODE);
62 wl->psm_entry_retry = 0;
69 wl->psm_entry_retry = 0;
83 static int wl1251_event_process(struct wl1251 *wl, struct event_mailbox *mbox)
94 ret = wl1251_event_scan_complete(wl, mbox);
102 if (wl->psm_requested &&
103 wl->station_mode != STATION_ACTIVE_MODE) {
104 ret = wl1251_ps_set_mode(wl, STATION_ACTIVE_MODE);
112 ret = wl1251_event_ps_report(wl, mbox);
121 if (wl->vif && wl->vif->type == NL80211_IFTYPE_STATION)
122 ieee80211_beacon_loss(wl->vif);
126 if (wl->psm_requested) {
127 ret = wl1251_ps_set_mode(wl, STATION_POWER_SAVE_MODE);
133 if (wl->vif && wl->rssi_thold) {
137 ieee80211_cqm_rssi_notify(wl->vif,
145 ieee80211_cqm_rssi_notify(wl->vif,
158 int wl1251_event_wait(struct wl1251 *wl, u32 mask, int timeout_ms)
172 events_vector = wl1251_mem_read32(wl, wl->mbox_ptr[0]);
174 events_vector = wl1251_mem_read32(wl, wl->mbox_ptr[1]);
181 int wl1251_event_unmask(struct wl1251 *wl)
185 ret = wl1251_acx_event_mbox_mask(wl, ~(wl->event_mask));
192 void wl1251_event_mbox_config(struct wl1251 *wl)
194 wl->mbox_ptr[0] = wl1251_reg_read32(wl, REG_EVENT_MAILBOX_PTR);
195 wl->mbox_ptr[1] = wl->mbox_ptr[0] + sizeof(struct event_mailbox);
198 wl->mbox_ptr[0], wl->mbox_ptr[1]);
201 int wl1251_event_handle(struct wl1251 *wl, u8 mbox_num)
218 wl1251_mem_read(wl, wl->mbox_ptr[mbox_num], mbox,
222 ret = wl1251_event_process(wl, mbox);
229 wl1251_reg_write32(wl, ACX_REG_INTERRUPT_TRIG, INTR_TRIG_EVENT_ACK);