/linux/drivers/net/wireless/ti/wlcore/ |
H A D | hw_ops.h | 15 wlcore_hw_calc_tx_blocks(struct wl1271 *wl, u32 len, u32 spare_blks) in wlcore_hw_calc_tx_blocks() argument 17 if (!wl->ops->calc_tx_blocks) in wlcore_hw_calc_tx_blocks() 20 return wl->ops->calc_tx_blocks(wl, len, spare_blks); in wlcore_hw_calc_tx_blocks() 24 wlcore_hw_set_tx_desc_blocks(struct wl1271 *wl, struct wl1271_tx_hw_descr *desc, in wlcore_hw_set_tx_desc_blocks() argument 27 if (!wl->ops->set_tx_desc_blocks) in wlcore_hw_set_tx_desc_blocks() 30 return wl->ops->set_tx_desc_blocks(wl, desc, blks, spare_blks); in wlcore_hw_set_tx_desc_blocks() 34 wlcore_hw_set_tx_desc_data_len(struct wl1271 *wl, in wlcore_hw_set_tx_desc_data_len() argument 38 if (!wl->ops->set_tx_desc_data_len) in wlcore_hw_set_tx_desc_data_len() 41 wl->ops->set_tx_desc_data_len(wl, desc, skb); in wlcore_hw_set_tx_desc_data_len() 45 wlcore_hw_get_rx_buf_align(struct wl1271 *wl, u32 rx_desc) in wlcore_hw_get_rx_buf_align() argument [all …]
|
H A D | io.h | 34 void wlcore_disable_interrupts(struct wl1271 *wl); 35 void wlcore_disable_interrupts_nosync(struct wl1271 *wl); 36 void wlcore_enable_interrupts(struct wl1271 *wl); 37 void wlcore_synchronize_interrupts(struct wl1271 *wl); 39 void wl1271_io_reset(struct wl1271 *wl); 40 void wl1271_io_init(struct wl1271 *wl); 41 int wlcore_translate_addr(struct wl1271 *wl, int addr); 44 static inline int __must_check wlcore_raw_write(struct wl1271 *wl, int addr, in wlcore_raw_write() argument 50 if (test_bit(WL1271_FLAG_IO_FAILED, &wl->flags) || in wlcore_raw_write() 51 WARN_ON((test_bit(WL1271_FLAG_IN_ELP, &wl->flags) && in wlcore_raw_write() [all …]
|
H A D | tx.c | 30 static int wl1271_set_default_wep_key(struct wl1271 *wl, in wl1271_set_default_wep_key() argument 37 ret = wl12xx_cmd_set_default_wep_key(wl, id, in wl1271_set_default_wep_key() 40 ret = wl12xx_cmd_set_default_wep_key(wl, id, wlvif->sta.hlid); in wl1271_set_default_wep_key() 49 static int wl1271_alloc_tx_id(struct wl1271 *wl, struct sk_buff *skb) in wl1271_alloc_tx_id() argument 53 id = find_first_zero_bit(wl->tx_frames_map, wl->num_tx_desc); in wl1271_alloc_tx_id() 54 if (id >= wl->num_tx_desc) in wl1271_alloc_tx_id() 57 __set_bit(id, wl->tx_frames_map); in wl1271_alloc_tx_id() 58 wl->tx_frames[id] = skb; in wl1271_alloc_tx_id() 59 wl->tx_frames_cnt++; in wl1271_alloc_tx_id() 63 void wl1271_free_tx_id(struct wl1271 *wl, int id) in wl1271_free_tx_id() argument [all …]
|
H A D | init.c | 23 int wl1271_init_templates_config(struct wl1271 *wl) in wl1271_init_templates_config() argument 29 ret = wl1271_cmd_template_set(wl, WL12XX_INVALID_ROLE_ID, in wl1271_init_templates_config() 30 wl->scan_templ_id_2_4, NULL, in wl1271_init_templates_config() 36 ret = wl1271_cmd_template_set(wl, WL12XX_INVALID_ROLE_ID, in wl1271_init_templates_config() 37 wl->scan_templ_id_5, in wl1271_init_templates_config() 43 if (wl->quirks & WLCORE_QUIRK_DUAL_PROBE_TMPL) { in wl1271_init_templates_config() 44 ret = wl1271_cmd_template_set(wl, WL12XX_INVALID_ROLE_ID, in wl1271_init_templates_config() 45 wl->sched_scan_templ_id_2_4, in wl1271_init_templates_config() 52 ret = wl1271_cmd_template_set(wl, WL12XX_INVALID_ROLE_ID, in wl1271_init_templates_config() 53 wl->sched_scan_templ_id_5, in wl1271_init_templates_config() [all …]
|
H A D | boot.c | 21 static int wl1271_boot_set_ecpu_ctrl(struct wl1271 *wl, u32 flag) in wl1271_boot_set_ecpu_ctrl() argument 27 ret = wlcore_read_reg(wl, REG_ECPU_CONTROL, &cpu_ctrl); in wl1271_boot_set_ecpu_ctrl() 33 ret = wlcore_write_reg(wl, REG_ECPU_CONTROL, cpu_ctrl); in wl1271_boot_set_ecpu_ctrl() 39 static int wlcore_boot_parse_fw_ver(struct wl1271 *wl, in wlcore_boot_parse_fw_ver() argument 44 strscpy(wl->chip.fw_ver_str, static_data->fw_version, in wlcore_boot_parse_fw_ver() 45 sizeof(wl->chip.fw_ver_str)); in wlcore_boot_parse_fw_ver() 47 ret = sscanf(wl->chip.fw_ver_str + 4, "%u.%u.%u.%u.%u", in wlcore_boot_parse_fw_ver() 48 &wl->chip.fw_ver[0], &wl->chip.fw_ver[1], in wlcore_boot_parse_fw_ver() 49 &wl->chip.fw_ver[2], &wl->chip.fw_ver[3], in wlcore_boot_parse_fw_ver() 50 &wl->chip.fw_ver[4]); in wlcore_boot_parse_fw_ver() [all …]
|
H A D | debugfs.c | 46 void wl1271_debugfs_update_stats(struct wl1271 *wl) in wl1271_debugfs_update_stats() argument 50 mutex_lock(&wl->mutex); in wl1271_debugfs_update_stats() 52 if (unlikely(wl->state != WLCORE_STATE_ON)) in wl1271_debugfs_update_stats() 55 ret = pm_runtime_resume_and_get(wl->dev); in wl1271_debugfs_update_stats() 59 if (!wl->plt && in wl1271_debugfs_update_stats() 60 time_after(jiffies, wl->stats.fw_stats_update + in wl1271_debugfs_update_stats() 62 wl1271_acx_statistics(wl, wl->stats.fw_stats); in wl1271_debugfs_update_stats() 63 wl->stats.fw_stats_update = jiffies; in wl1271_debugfs_update_stats() 66 pm_runtime_mark_last_busy(wl->dev); in wl1271_debugfs_update_stats() 67 pm_runtime_put_autosuspend(wl->dev); in wl1271_debugfs_update_stats() [all …]
|
H A D | sysfs.c | 19 struct wl1271 *wl = dev_get_drvdata(dev); in bt_coex_state_show() local 22 mutex_lock(&wl->mutex); in bt_coex_state_show() 23 len = sysfs_emit(buf, "%d\n\n0 - off\n1 - on\n", wl->sg_enabled); in bt_coex_state_show() 24 mutex_unlock(&wl->mutex); in bt_coex_state_show() 34 struct wl1271 *wl = dev_get_drvdata(dev); in bt_coex_state_store() local 44 mutex_lock(&wl->mutex); in bt_coex_state_store() 48 if (res == wl->sg_enabled) in bt_coex_state_store() 51 wl->sg_enabled = res; in bt_coex_state_store() 53 if (unlikely(wl->state != WLCORE_STATE_ON)) in bt_coex_state_store() 56 ret = pm_runtime_resume_and_get(wl->dev); in bt_coex_state_store() [all …]
|
H A D | event.c | 25 int wlcore_event_fw_logger(struct wl1271 *wl) in wlcore_event_fw_logger() argument 49 ret = wlcore_read(wl, addr, buffer, WL18XX_LOGGER_SDIO_BUFF_MAX, in wlcore_event_fw_logger() 85 wl12xx_copy_fwlog(wl, &buffer[start_loc], len); in wlcore_event_fw_logger() 93 wl12xx_copy_fwlog(wl, in wlcore_event_fw_logger() 100 ret = wlcore_write32(wl, addr + WL18XX_LOGGER_READ_POINT_OFFSET, in wlcore_event_fw_logger() 109 void wlcore_event_rssi_trigger(struct wl1271 *wl, s8 *metric_arr) in wlcore_event_rssi_trigger() argument 119 wl12xx_for_each_wlvif_sta(wl, wlvif) { in wlcore_event_rssi_trigger() 134 static void wl1271_stop_ba_event(struct wl1271 *wl, struct wl12xx_vif *wlvif) in wl1271_stop_ba_event() argument 140 if (!wl->links[hlid].ba_bitmap) in wl1271_stop_ba_event() 142 ieee80211_stop_rx_ba_session(vif, wl->links[hlid].ba_bitmap, in wl1271_stop_ba_event() [all …]
|
H A D | testmode.c | 58 static int wl1271_tm_cmd_test(struct wl1271 *wl, struct nlattr *tb[]) in wl1271_tm_cmd_test() argument 79 mutex_lock(&wl->mutex); in wl1271_tm_cmd_test() 81 if (unlikely(wl->state != WLCORE_STATE_ON)) { in wl1271_tm_cmd_test() 86 ret = pm_runtime_resume_and_get(wl->dev); in wl1271_tm_cmd_test() 90 ret = wl1271_cmd_test(wl, buf, buf_len, answer); in wl1271_tm_cmd_test() 112 skb = cfg80211_testmode_alloc_reply_skb(wl->hw->wiphy, len); in wl1271_tm_cmd_test() 130 pm_runtime_mark_last_busy(wl->dev); in wl1271_tm_cmd_test() 131 pm_runtime_put_autosuspend(wl->dev); in wl1271_tm_cmd_test() 133 mutex_unlock(&wl->mutex); in wl1271_tm_cmd_test() 138 static int wl1271_tm_cmd_interrogate(struct wl1271 *wl, struct nlattr *tb[]) in wl1271_tm_cmd_interrogate() argument [all …]
|
H A D | wlcore.h | 38 int (*setup)(struct wl1271 *wl); 39 int (*identify_chip)(struct wl1271 *wl); 40 int (*identify_fw)(struct wl1271 *wl); 41 int (*boot)(struct wl1271 *wl); 42 int (*plt_init)(struct wl1271 *wl); 43 int (*trigger_cmd)(struct wl1271 *wl, int cmd_box_addr, 45 int (*ack_event)(struct wl1271 *wl); 46 int (*wait_for_event)(struct wl1271 *wl, enum wlcore_wait_event event, 48 int (*process_mailbox_events)(struct wl1271 *wl); 49 u32 (*calc_tx_blocks)(struct wl1271 *wl, u32 len, u32 spare_blks); [all …]
|
H A D | rx.c | 27 static u32 wlcore_rx_get_buf_size(struct wl1271 *wl, in wlcore_rx_get_buf_size() argument 30 if (wl->quirks & WLCORE_QUIRK_RX_BLOCKSIZE_ALIGN) in wlcore_rx_get_buf_size() 37 static u32 wlcore_rx_get_align_buf_size(struct wl1271 *wl, u32 pkt_len) in wlcore_rx_get_align_buf_size() argument 39 if (wl->quirks & WLCORE_QUIRK_RX_BLOCKSIZE_ALIGN) in wlcore_rx_get_align_buf_size() 45 static void wl1271_rx_status(struct wl1271 *wl, in wl1271_rx_status() argument 57 status->rate_idx = wlcore_rate_to_idx(wl, desc->rate, status->band); in wl1271_rx_status() 60 if (desc->rate <= wl->hw_min_ht_rate) in wl1271_rx_status() 77 wl->noise = desc->rssi - (desc->snr >> 1); in wl1271_rx_status() 99 wlcore_set_pending_regdomain_ch(wl, (u16)desc->channel, in wl1271_rx_status() 103 static int wl1271_rx_handle_data(struct wl1271 *wl, u8 *data, u32 length, in wl1271_rx_handle_data() argument [all …]
|
H A D | cmd.c | 40 static int __wlcore_cmd_send(struct wl1271 *wl, u16 id, void *buf, in __wlcore_cmd_send() argument 50 if (unlikely(wl->state == WLCORE_STATE_RESTARTING && in __wlcore_cmd_send() 62 WARN_ON(test_bit(WL1271_FLAG_IN_ELP, &wl->flags)); in __wlcore_cmd_send() 64 ret = wlcore_write(wl, wl->cmd_box_addr, buf, len, false); in __wlcore_cmd_send() 72 ret = wl->ops->trigger_cmd(wl, wl->cmd_box_addr, buf, len); in __wlcore_cmd_send() 78 ret = wlcore_read_reg(wl, REG_INTERRUPT_NO_CLEAR, &intr); in __wlcore_cmd_send() 94 ret = wlcore_read_reg(wl, REG_INTERRUPT_NO_CLEAR, &intr); in __wlcore_cmd_send() 103 ret = wlcore_read(wl, wl->cmd_box_addr, cmd, res_len, false); in __wlcore_cmd_send() 109 ret = wlcore_write_reg(wl, REG_INTERRUPT_ACK, in __wlcore_cmd_send() 121 static int wlcore_cmd_send_failsafe(struct wl1271 *wl, u16 id, void *buf, in wlcore_cmd_send_failsafe() argument [all …]
|
H A D | io.c | 21 bool wl1271_set_block_size(struct wl1271 *wl) in wl1271_set_block_size() argument 23 if (wl->if_ops->set_block_size) { in wl1271_set_block_size() 24 wl->if_ops->set_block_size(wl->dev, WL12XX_BUS_BLOCK_SIZE); in wl1271_set_block_size() 31 void wlcore_disable_interrupts(struct wl1271 *wl) in wlcore_disable_interrupts() argument 33 disable_irq(wl->irq); in wlcore_disable_interrupts() 37 void wlcore_disable_interrupts_nosync(struct wl1271 *wl) in wlcore_disable_interrupts_nosync() argument 39 disable_irq_nosync(wl->irq); in wlcore_disable_interrupts_nosync() 43 void wlcore_enable_interrupts(struct wl1271 *wl) in wlcore_enable_interrupts() argument 45 enable_irq(wl->irq); in wlcore_enable_interrupts() 49 void wlcore_synchronize_interrupts(struct wl1271 *wl) in wlcore_synchronize_interrupts() argument [all …]
|
/linux/drivers/net/wireless/ti/wl1251/ |
H A D | main.c | 32 void wl1251_enable_interrupts(struct wl1251 *wl) in wl1251_enable_interrupts() argument 34 wl->if_ops->enable_irq(wl); in wl1251_enable_interrupts() 37 void wl1251_disable_interrupts(struct wl1251 *wl) in wl1251_disable_interrupts() argument 39 wl->if_ops->disable_irq(wl); in wl1251_disable_interrupts() 42 static int wl1251_power_off(struct wl1251 *wl) in wl1251_power_off() argument 44 return wl->if_ops->power(wl, false); in wl1251_power_off() 47 static int wl1251_power_on(struct wl1251 *wl) in wl1251_power_on() argument 49 return wl->if_ops->power(wl, true); in wl1251_power_on() 52 static int wl1251_fetch_firmware(struct wl1251 *wl) in wl1251_fetch_firmware() argument 55 struct device *dev = wiphy_dev(wl->hw->wiphy); in wl1251_fetch_firmware() [all …]
|
H A D | boot.c | 17 void wl1251_boot_target_enable_interrupts(struct wl1251 *wl) in wl1251_boot_target_enable_interrupts() argument 19 wl1251_reg_write32(wl, ACX_REG_INTERRUPT_MASK, ~(wl->intr_mask)); in wl1251_boot_target_enable_interrupts() 20 wl1251_reg_write32(wl, HI_CFG, HI_CFG_DEF_VAL); in wl1251_boot_target_enable_interrupts() 23 int wl1251_boot_soft_reset(struct wl1251 *wl) in wl1251_boot_soft_reset() argument 29 wl1251_reg_write32(wl, ACX_REG_SLV_SOFT_RESET, ACX_SLV_SOFT_RESET_BIT); in wl1251_boot_soft_reset() 34 boot_data = wl1251_reg_read32(wl, ACX_REG_SLV_SOFT_RESET); in wl1251_boot_soft_reset() 50 wl1251_reg_write32(wl, ENABLE, 0x0); in wl1251_boot_soft_reset() 53 wl1251_reg_write32(wl, SPARE_A2, 0xffff); in wl1251_boot_soft_reset() 58 int wl1251_boot_init_seq(struct wl1251 *wl) in wl1251_boot_init_seq() argument 80 scr_pad6 = wl1251_reg_read32(wl, SCR_PAD6); in wl1251_boot_init_seq() [all …]
|
H A D | init.c | 18 int wl1251_hw_init_hwenc_config(struct wl1251 *wl) in wl1251_hw_init_hwenc_config() argument 22 ret = wl1251_acx_feature_cfg(wl, 0); in wl1251_hw_init_hwenc_config() 28 ret = wl1251_acx_default_key(wl, wl->default_key); in wl1251_hw_init_hwenc_config() 37 int wl1251_hw_init_templates_config(struct wl1251 *wl) in wl1251_hw_init_templates_config() argument 43 ret = wl1251_cmd_template_set(wl, CMD_PROBE_REQ, NULL, in wl1251_hw_init_templates_config() 48 ret = wl1251_cmd_template_set(wl, CMD_NULL_DATA, NULL, in wl1251_hw_init_templates_config() 53 ret = wl1251_cmd_template_set(wl, CMD_PS_POLL, NULL, in wl1251_hw_init_templates_config() 58 ret = wl1251_cmd_template_set(wl, CMD_QOS_NULL_DATA, NULL, in wl1251_hw_init_templates_config() 64 ret = wl1251_cmd_template_set(wl, CMD_PROBE_RESP, NULL, in wl1251_hw_init_templates_config() 70 ret = wl1251_cmd_template_set(wl, CMD_BEACON, NULL, in wl1251_hw_init_templates_config() [all …]
|
H A D | event.c | 15 static int wl1251_event_scan_complete(struct wl1251 *wl, in wl1251_event_scan_complete() argument 24 if (wl->scanning) { in wl1251_event_scan_complete() 29 ieee80211_scan_completed(wl->hw, &info); in wl1251_event_scan_complete() 31 wl->scanning = false; in wl1251_event_scan_complete() 32 if (wl->hw->conf.flags & IEEE80211_CONF_IDLE) in wl1251_event_scan_complete() 33 ret = wl1251_ps_set_mode(wl, STATION_IDLE); in wl1251_event_scan_complete() 40 static int wl1251_event_ps_report(struct wl1251 *wl, in wl1251_event_ps_report() argument 51 if (wl->station_mode != STATION_POWER_SAVE_MODE) { in wl1251_event_ps_report() 53 wl->psm_entry_retry = 0; in wl1251_event_ps_report() 57 if (wl->psm_entry_retry < WL1251_PSM_ENTRY_RETRIES) { in wl1251_event_ps_report() [all …]
|
H A D | tx.c | 19 static bool wl1251_tx_double_buffer_busy(struct wl1251 *wl, u32 data_out_count) in wl1251_tx_double_buffer_busy() argument 23 data_in_count = wl->data_in_count; in wl1251_tx_double_buffer_busy() 40 static int wl1251_tx_path_status(struct wl1251 *wl) in wl1251_tx_path_status() argument 45 addr = wl->data_path->tx_control_addr; in wl1251_tx_path_status() 46 status = wl1251_mem_read32(wl, addr); in wl1251_tx_path_status() 48 busy = wl1251_tx_double_buffer_busy(wl, data_out_count); in wl1251_tx_path_status() 56 static int wl1251_tx_id(struct wl1251 *wl, struct sk_buff *skb) in wl1251_tx_id() argument 61 if (wl->tx_frames[i] == NULL) { in wl1251_tx_id() 62 wl->tx_frames[i] = skb; in wl1251_tx_id() 134 static int wl1251_tx_fill_hdr(struct wl1251 *wl, struct sk_buff *skb, in wl1251_tx_fill_hdr() argument [all …]
|
H A D | io.h | 23 static inline u32 wl1251_read32(struct wl1251 *wl, int addr) in wl1251_read32() argument 25 wl->if_ops->read(wl, addr, &wl->buffer_32, sizeof(wl->buffer_32)); in wl1251_read32() 27 return le32_to_cpu(wl->buffer_32); in wl1251_read32() 30 static inline void wl1251_write32(struct wl1251 *wl, int addr, u32 val) in wl1251_write32() argument 32 wl->buffer_32 = cpu_to_le32(val); in wl1251_write32() 33 wl->if_ops->write(wl, addr, &wl->buffer_32, sizeof(wl->buffer_32)); in wl1251_write32() 36 static inline u32 wl1251_read_elp(struct wl1251 *wl, int addr) in wl1251_read_elp() argument 40 if (wl->if_ops->read_elp) in wl1251_read_elp() 41 wl->if_ops->read_elp(wl, addr, &response); in wl1251_read_elp() 43 wl->if_ops->read(wl, addr, &response, sizeof(u32)); in wl1251_read_elp() [all …]
|
H A D | ps.c | 19 struct wl1251 *wl; in wl1251_elp_work() local 22 wl = container_of(dwork, struct wl1251, elp_work); in wl1251_elp_work() 26 mutex_lock(&wl->mutex); in wl1251_elp_work() 28 if (wl->elp || wl->station_mode == STATION_ACTIVE_MODE) in wl1251_elp_work() 32 wl1251_write_elp(wl, HW_ACCESS_ELP_CTRL_REG_ADDR, ELPCTRL_SLEEP); in wl1251_elp_work() 33 wl->elp = true; in wl1251_elp_work() 36 mutex_unlock(&wl->mutex); in wl1251_elp_work() 42 void wl1251_ps_elp_sleep(struct wl1251 *wl) in wl1251_ps_elp_sleep() argument 46 if (wl->station_mode != STATION_ACTIVE_MODE) { in wl1251_ps_elp_sleep() 48 ieee80211_queue_delayed_work(wl->hw, &wl->elp_work, delay); in wl1251_ps_elp_sleep() [all …]
|
H A D | io.c | 27 static int wl1251_translate_reg_addr(struct wl1251 *wl, int addr) in wl1251_translate_reg_addr() argument 41 return addr - wl->physical_reg_addr + wl->virtual_reg_addr; in wl1251_translate_reg_addr() 44 static int wl1251_translate_mem_addr(struct wl1251 *wl, int addr) in wl1251_translate_mem_addr() argument 46 return addr - wl->physical_mem_addr + wl->virtual_mem_addr; in wl1251_translate_mem_addr() 49 void wl1251_mem_read(struct wl1251 *wl, int addr, void *buf, size_t len) in wl1251_mem_read() argument 53 physical = wl1251_translate_mem_addr(wl, addr); in wl1251_mem_read() 55 wl->if_ops->read(wl, physical, buf, len); in wl1251_mem_read() 58 void wl1251_mem_write(struct wl1251 *wl, int addr, void *buf, size_t len) in wl1251_mem_write() argument 62 physical = wl1251_translate_mem_addr(wl, addr); in wl1251_mem_write() 64 wl->if_ops->write(wl, physical, buf, len); in wl1251_mem_write() [all …]
|
/linux/drivers/net/wireless/broadcom/brcm80211/brcmsmac/ |
H A D | mac80211_if.c | 285 static void brcms_free(struct brcms_info *wl) in brcms_free() argument 290 if (wl->fw.fw_cnt) in brcms_free() 291 brcms_ucode_data_free(&wl->ucode); in brcms_free() 292 if (wl->irq) in brcms_free() 293 free_irq(wl->irq, wl); in brcms_free() 296 tasklet_kill(&wl->tasklet); in brcms_free() 298 if (wl->pub) { in brcms_free() 299 brcms_debugfs_detach(wl->pub); in brcms_free() 300 brcms_c_module_unregister(wl->pub, "linux", wl); in brcms_free() 304 if (wl->wlc) { in brcms_free() [all …]
|
H A D | led.c | 22 static void brcms_radio_led_ctrl(struct brcms_info *wl, bool state) in brcms_radio_led_ctrl() argument 24 if (!wl->radio_led.gpiod) in brcms_radio_led_ctrl() 28 gpiod_set_value(wl->radio_led.gpiod, 1); in brcms_radio_led_ctrl() 30 gpiod_set_value(wl->radio_led.gpiod, 0); in brcms_radio_led_ctrl() 38 struct brcms_info *wl = container_of(led_dev, in brcms_led_brightness_set() local 40 brcms_radio_led_ctrl(wl, brightness); in brcms_led_brightness_set() 43 void brcms_led_unregister(struct brcms_info *wl) in brcms_led_unregister() argument 45 if (wl->led_dev.dev) in brcms_led_unregister() 46 led_classdev_unregister(&wl->led_dev); in brcms_led_unregister() 47 if (wl->radio_led.gpiod) in brcms_led_unregister() [all …]
|
/linux/kernel/power/ |
H A D | wakelock.c | 41 struct wakelock *wl; in pm_show_wakelocks() local 47 wl = rb_entry(node, struct wakelock, node); in pm_show_wakelocks() 48 if (wl->ws->active == show_active) in pm_show_wakelocks() 49 len += sysfs_emit_at(buf, len, "%s ", wl->name); in pm_show_wakelocks() 90 static inline void wakelocks_lru_add(struct wakelock *wl) in wakelocks_lru_add() argument 92 list_add(&wl->lru, &wakelocks_lru_list); in wakelocks_lru_add() 95 static inline void wakelocks_lru_most_recent(struct wakelock *wl) in wakelocks_lru_most_recent() argument 97 list_move(&wl->lru, &wakelocks_lru_list); in wakelocks_lru_most_recent() 102 struct wakelock *wl, *aux; in __wakelocks_gc() local 108 list_for_each_entry_safe_reverse(wl, aux, &wakelocks_lru_list, lru) { in __wakelocks_gc() [all …]
|
/linux/drivers/net/wireless/ti/wl12xx/ |
H A D | scan.c | 13 static int wl1271_get_scan_channels(struct wl1271 *wl, in wl1271_get_scan_channels() argument 18 struct conf_scan_settings *c = &wl->conf.scan; in wl1271_get_scan_channels() 27 if (!test_bit(i, wl->scan.scanned_ch) && in wl1271_get_scan_channels() 69 set_bit(i, wl->scan.scanned_ch); in wl1271_get_scan_channels() 80 static int wl1271_scan_send(struct wl1271 *wl, struct wl12xx_vif *wlvif, in wl1271_scan_send() argument 91 if (!passive && wl->scan.req->n_ssids == 0) in wl1271_scan_send() 101 if (wl->conf.scan.split_scan_timeout) in wl1271_scan_send() 120 cmd->params.n_ch = wl1271_get_scan_channels(wl, wl->scan.req, in wl1271_scan_send() 129 cmd->params.n_probe_reqs = wl->conf.scan.num_probe_reqs; in wl1271_scan_send() 138 if (wl->scan.ssid_len) { in wl1271_scan_send() [all …]
|