/device/board/isoftstone/zhiyuan/kernel/driver/drivers/net/wireless/xr829/wlan/ |
D | bh.c | 56 typedef int (*xradio_wsm_handler) (struct xradio_common *hw_priv, u8 *data, 74 static void xradio_put_skb(struct xradio_common *hw_priv, struct sk_buff *skb); 75 static struct sk_buff *xradio_get_skb(struct xradio_common *hw_priv, size_t len, u8 *flags); 76 static inline int xradio_put_resv_skb(struct xradio_common *hw_priv, 81 int bh_proc_init(struct xradio_common *hw_priv) in bh_proc_init() argument 88 memset(&hw_priv->proc, 0, sizeof(struct bh_proc)); in bh_proc_init() 90 spin_lock_init(&hw_priv->proc.lock); in bh_proc_init() 91 init_waitqueue_head(&hw_priv->proc.proc_wq); in bh_proc_init() 94 atomic_set(&hw_priv->proc.proc_tx, 0); in bh_proc_init() 95 atomic_set(&hw_priv->proc.rx_queued, 0); in bh_proc_init() [all …]
|
D | main.c | 521 static void xradio_set_ifce_comb(struct xradio_common *hw_priv, in xradio_set_ifce_comb() argument 526 hw_priv->if_limits1[0].max = 2; in xradio_set_ifce_comb() 528 hw_priv->if_limits1[0].max = 1; in xradio_set_ifce_comb() 531 hw_priv->if_limits1[0].types = BIT(NL80211_IFTYPE_STATION); in xradio_set_ifce_comb() 532 hw_priv->if_limits1[1].max = 1; in xradio_set_ifce_comb() 533 hw_priv->if_limits1[1].types = BIT(NL80211_IFTYPE_AP); in xradio_set_ifce_comb() 536 hw_priv->if_limits2[0].max = 3; in xradio_set_ifce_comb() 538 hw_priv->if_limits2[0].max = 2; in xradio_set_ifce_comb() 540 hw_priv->if_limits2[0].types = BIT(NL80211_IFTYPE_STATION); in xradio_set_ifce_comb() 543 hw_priv->if_limits3[0].max = 2; in xradio_set_ifce_comb() [all …]
|
D | scan.c | 21 static int xradio_advance_scan_start(struct xradio_common *hw_priv) in xradio_advance_scan_start() argument 26 tmo += hw_priv->advanceScanElems.duration; in xradio_advance_scan_start() 28 xradio_pm_stay_awake(&hw_priv->pm_state, tmo * HZ / 1000); in xradio_advance_scan_start() 31 queue_delayed_work(hw_priv->workqueue, in xradio_advance_scan_start() 32 &hw_priv->advance_scan_timeout, tmo * HZ / 1000); in xradio_advance_scan_start() 78 struct xradio_common *hw_priv = xrwl_vifpriv_to_hwpriv(priv); in xradio_disable_filtering() local 85 ret = wsm_set_rx_filter(hw_priv, &rx_filter, priv->if_id); in xradio_disable_filtering() 91 ret = wsm_beacon_filter_control(hw_priv, &bf_control, priv->if_id); in xradio_disable_filtering() 95 ret = wsm_set_bssid_filtering(hw_priv, bssid_filtering, priv->if_id); in xradio_disable_filtering() 109 struct xradio_common *hw_priv = xrwl_vifpriv_to_hwpriv(priv); in xradio_scan_start() local [all …]
|
D | hwio.c | 19 static int __xradio_read(struct xradio_common *hw_priv, u16 addr, in __xradio_read() argument 37 SYS_BUG(!hw_priv->sbus_ops); in __xradio_read() 38 return hw_priv->sbus_ops->sbus_data_read(hw_priv->sbus_priv, in __xradio_read() 43 static int __xradio_write(struct xradio_common *hw_priv, u16 addr, in __xradio_write() argument 62 SYS_BUG(!hw_priv->sbus_ops); in __xradio_write() 63 return hw_priv->sbus_ops->sbus_data_write(hw_priv->sbus_priv, in __xradio_write() 68 static inline int __xradio_read_reg32(struct xradio_common *hw_priv, in __xradio_read_reg32() argument 73 *hw_priv->sbus_priv->val32_r = 0; in __xradio_read_reg32() 74 ret = __xradio_read(hw_priv, addr, hw_priv->sbus_priv->val32_r, sizeof(u32), 0); in __xradio_read_reg32() 75 *val = *hw_priv->sbus_priv->val32_r; in __xradio_read_reg32() [all …]
|
D | wsm.c | 92 static int get_interface_id_scanning(struct xradio_common *hw_priv); 94 static int wsm_cmd_send(struct xradio_common *hw_priv, 99 *wsm_get_interface_for_tx(struct xradio_common *hw_priv); 101 static inline void wsm_cmd_lock(struct xradio_common *hw_priv) in wsm_cmd_lock() argument 103 down(&hw_priv->wsm_cmd_sema); in wsm_cmd_lock() 106 static inline void wsm_cmd_unlock(struct xradio_common *hw_priv) in wsm_cmd_unlock() argument 108 up(&hw_priv->wsm_cmd_sema); in wsm_cmd_unlock() 111 static inline void wsm_oper_lock(struct xradio_common *hw_priv) in wsm_oper_lock() argument 113 down(&hw_priv->wsm_oper_lock); in wsm_oper_lock() 116 static inline void wsm_oper_unlock(struct xradio_common *hw_priv) in wsm_oper_unlock() argument [all …]
|
D | sta.c | 152 struct xradio_common *hw_priv = dev->priv; in xradio_start() local 157 if (wait_event_interruptible_timeout(hw_priv->wsm_startup_done, in xradio_start() 158 hw_priv->driver_ready, 3*HZ) <= 0) { in xradio_start() 164 if (wait_event_interruptible_timeout(hw_priv->wsm_wakeup_done, in xradio_start() 165 XRADIO_RESUME == atomic_read(&hw_priv->suspend_state), 3*HZ) <= 0) { in xradio_start() 171 suspend_lock_state = atomic_cmpxchg(&hw_priv->suspend_lock_state, in xradio_start() 178 down(&hw_priv->conf_lock); in xradio_start() 179 atomic_set(&hw_priv->suspend_lock_state, XRADIO_SUSPEND_LOCK_IDEL); in xradio_start() 182 spin_lock_bh(&hw_priv->tsm_lock); in xradio_start() 183 memset(&hw_priv->tsm_stats, 0, sizeof(struct xr_tsm_stats)); in xradio_start() [all …]
|
D | pm.c | 127 static int xradio_poweroff_suspend(struct xradio_common *hw_priv); 128 static int xradio_poweroff_resume(struct xradio_common *hw_priv); 168 struct xradio_common *hw_priv) in xradio_pm_init_common() argument 213 struct xradio_common *hw_priv) in xradio_pm_init() argument 218 ret = xradio_pm_init_common(pm, hw_priv); in xradio_pm_init() 293 struct xradio_common *hw_priv) in xradio_pm_init() argument 298 ret = xradio_pm_init_common(pm, hw_priv); in xradio_pm_init() 367 static int xradio_resume_work(struct xradio_common *hw_priv, in xradio_resume_work() argument 375 return queue_delayed_work(hw_priv->workqueue, work, tmo); in xradio_resume_work() 380 struct xradio_common *hw_priv = dev->platform_data; in xradio_suspend_late() local [all …]
|
D | fwio.c | 26 ret = xradio_apb_write_32(hw_priv, APB_ADDR(reg), (val)); \ 36 ret = xradio_apb_read_32(hw_priv, APB_ADDR(reg), &(val)); \ 46 ret = xradio_reg_write_32(hw_priv, (reg), (val)); \ 56 ret = xradio_reg_read_32(hw_priv, (reg), &(val)); \ 86 static int xradio_parse_sdd(struct xradio_common *hw_priv, u32 *dpll) in xradio_parse_sdd() argument 94 SYS_BUG(hw_priv->sdd != NULL); in xradio_parse_sdd() 97 switch (hw_priv->hw_revision) { in xradio_parse_sdd() 111 ret = request_firmware(&hw_priv->sdd, sdd_path, hw_priv->pdev); in xradio_parse_sdd() 119 hw_priv->is_BT_Present = false; in xradio_parse_sdd() 120 pElement = (struct xradio_sdd *)hw_priv->sdd->data; in xradio_parse_sdd() [all …]
|
D | bh.h | 68 int bh_proc_init(struct xradio_common *hw_priv); 69 void bh_proc_deinit(struct xradio_common *hw_priv); 70 int bh_proc_reinit(struct xradio_common *hw_priv); 71 int bh_proc_flush_queue(struct xradio_common *hw_priv); 72 int bh_proc_flush_txqueue(struct xradio_common *hw_priv, int if_id); 75 int xradio_register_bh(struct xradio_common *hw_priv); 76 void xradio_unregister_bh(struct xradio_common *hw_priv); 78 void xradio_bh_wakeup(struct xradio_common *hw_priv); 79 int xradio_bh_suspend(struct xradio_common *hw_priv); 80 int xradio_bh_resume(struct xradio_common *hw_priv); [all …]
|
D | ap.c | 56 struct xradio_common *hw_priv = hw->priv; in xradio_sta_add() local 94 hw_priv->connected_sta_cnt++; in xradio_sta_add() 95 if (hw_priv->connected_sta_cnt > 1 && in xradio_sta_add() 96 WSM_VERSION_BF(hw_priv->wsm_caps, 8, 39)) { in xradio_sta_add() 97 wsm_lock_tx(hw_priv); in xradio_sta_add() 98 SYS_WARN(wsm_set_block_ack_policy(hw_priv, in xradio_sta_add() 102 wsm_unlock_tx(hw_priv); in xradio_sta_add() 113 struct xradio_common *hw_priv = hw->priv; in xradio_sta_remove() local 121 suspend_lock_state = atomic_cmpxchg(&hw_priv->suspend_lock_state, in xradio_sta_remove() 128 down(&hw_priv->conf_lock); in xradio_sta_remove() [all …]
|
D | hwio.h | 185 int xradio_data_read(struct xradio_common *hw_priv, void *buf, 187 int xradio_data_write(struct xradio_common *hw_priv, const void *buf, 189 int xradio_reg_read(struct xradio_common *hw_priv, u16 addr, void *buf, 191 int xradio_reg_write(struct xradio_common *hw_priv, u16 addr, 193 int xradio_reg_bit_operate(struct xradio_common *hw_priv, u16 addr, u32 set, u32 clr); 194 int xradio_indirect_read(struct xradio_common *hw_priv, u32 addr, void *buf, 196 int xradio_apb_write(struct xradio_common *hw_priv, u32 addr, 198 int xradio_ahb_write(struct xradio_common *hw_priv, u32 addr, 202 static inline int xradio_reg_read_16(struct xradio_common *hw_priv, in xradio_reg_read_16() argument 207 ret = xradio_reg_read(hw_priv, addr, &bigVal, sizeof(bigVal)); in xradio_reg_read_16() [all …]
|
D | txrx.c | 45 const struct xradio_common *hw_priv, 96 static void xradio_check_go_neg_conf_success(struct xradio_common *hw_priv, in xradio_check_go_neg_conf_success() argument 103 hw_priv->is_go_thru_go_neg = true; in xradio_check_go_neg_conf_success() 105 hw_priv->is_go_thru_go_neg = false; in xradio_check_go_neg_conf_success() 128 static void xradio_frame_monitor(struct xradio_common *hw_priv, in xradio_frame_monitor() argument 178 static void xradio_check_prov_desc_req(struct xradio_common *hw_priv, in xradio_check_prov_desc_req() argument 184 hw_priv->is_go_thru_go_neg = false; in xradio_check_prov_desc_req() 240 struct xradio_common *hw_priv = xrwl_vifpriv_to_hwpriv(priv); local 242 wsm_send_disassoc_to_self(hw_priv, priv); 317 struct xradio_common *hw_priv = xrwl_vifpriv_to_hwpriv(priv); local [all …]
|
D | wsm.h | 816 int wsm_configuration(struct xradio_common *hw_priv, 826 int wsm_reset(struct xradio_common *hw_priv, const struct wsm_reset *arg, 828 void wsm_upper_restart(struct xradio_common *hw_priv); 832 int wsm_read_mib(struct xradio_common *hw_priv, u16 mibId, void *buf, 836 int wsm_write_mib(struct xradio_common *hw_priv, u16 mibId, void *buf, 867 typedef void (*wsm_scan_complete_cb) (struct xradio_common *hw_priv, 990 int wsm_scan(struct xradio_common *hw_priv, const struct wsm_scan *arg, 994 int wsm_stop_scan(struct xradio_common *hw_priv, int if_id); 1073 typedef void (*wsm_tx_confirm_cb) (struct xradio_common *hw_priv, 1242 typedef void (*wsm_event_cb) (struct xradio_common *hw_priv, [all …]
|
D | debug.c | 138 for (i = 0; i < priv->hw_priv->tx_queue_stats.map_capacity; ++i) in xradio_debug_print_map() 141 priv->hw_priv->tx_queue_stats.map_capacity - 1); in xradio_debug_print_map() 146 struct xradio_common *hw_priv = seq->private; in xradio_version_show() local 148 seq_printf(seq, "Firmware Label:%s\n", &hw_priv->wsm_caps.fw_label[0]); in xradio_version_show() 168 struct xradio_common *hw_priv = seq->private; in xradio_hwinfo_show() local 171 wsm_read_mib(hw_priv, WSM_MIB_ID_HW_INFO, (void *)&hw_arry, in xradio_hwinfo_show() 206 struct xradio_common *hw_priv = seq->private; in xradio_temperature_show() local 209 wsm_read_mib(hw_priv, WSM_MIB_ID_GET_TEMPERATURE, (void *)&s32tempQ4, in xradio_temperature_show() 233 struct xradio_common *hw_priv = seq->private; in xradio_status_show_common() local 234 struct xradio_debug_common *d = hw_priv->debug; in xradio_status_show_common() [all …]
|
D | debug.h | 445 int get_hwt_hif_tx(struct xradio_common *hw_priv, u8 **data, 508 void xradio_hang_driver_for_debug(struct xradio_common *hw_priv, int error); 510 int xradio_debug_init_common(struct xradio_common *hw_priv); 511 int xradio_debug_init_priv(struct xradio_common *hw_priv, 513 void xradio_debug_release_common(struct xradio_common *hw_priv); 555 static inline void xradio_debug_tx_cache_miss(struct xradio_common *hw_priv) in xradio_debug_tx_cache_miss() argument 557 if (!hw_priv->debug) in xradio_debug_tx_cache_miss() 559 ++hw_priv->debug->tx_cache_miss; in xradio_debug_tx_cache_miss() 576 static inline void xradio_debug_tx_burst(struct xradio_common *hw_priv) in xradio_debug_tx_burst() argument 578 if (!hw_priv->debug) in xradio_debug_tx_burst() [all …]
|
D | xradio.h | 601 struct xradio_common *hw_priv; member 684 return priv->hw_priv; in xrwl_vifpriv_to_hwpriv() 694 struct xradio_vif *xrwl_hwpriv_to_vifpriv(struct xradio_common *hw_priv, in xrwl_hwpriv_to_vifpriv() argument 703 spin_lock(&hw_priv->vif_list_lock); in xrwl_hwpriv_to_vifpriv() 704 if (!hw_priv->vif_list[if_id]) { in xrwl_hwpriv_to_vifpriv() 705 spin_unlock(&hw_priv->vif_list_lock); in xrwl_hwpriv_to_vifpriv() 709 vif = xrwl_get_vif_from_ieee80211(hw_priv->vif_list[if_id]); in xrwl_hwpriv_to_vifpriv() 715 spin_unlock(&hw_priv->vif_list_lock); in xrwl_hwpriv_to_vifpriv() 720 struct xradio_vif *__xrwl_hwpriv_to_vifpriv(struct xradio_common *hw_priv, in __xrwl_hwpriv_to_vifpriv() argument 726 if (!hw_priv->vif_list[if_id]) { in __xrwl_hwpriv_to_vifpriv() [all …]
|
D | queue.c | 27 mac80211_stop_queue(stats->hw_priv->hw, queue->queue_id); in __xradio_queue_lock() 39 mac80211_wake_queue(stats->hw_priv->hw, queue->queue_id); in __xradio_queue_unlock() 82 stats->skb_dtor(stats->hw_priv, item->skb, &item->txpriv); in xradio_queue_post_gc() 140 if (queue->num_queued <= ((stats->hw_priv->vif0_throttle + in __xradio_queue_gc() 141 stats->hw_priv->vif1_throttle+2)>>1)) { in __xradio_queue_gc() 150 xradio_pm_stay_awake(&stats->hw_priv->pm_state, in __xradio_queue_gc() 165 queue_work(queue->stats->hw_priv->workqueue, &queue->stats->gc_work); in xradio_queue_gc() 168 void xradio_skb_post_gc(struct xradio_common *hw_priv, in xradio_skb_post_gc() argument 175 xradio_queue_register_post_gc(&hw_priv->tx_queue_stats, &skb_drop); in xradio_skb_post_gc() 176 queue_work(hw_priv->workqueue, &hw_priv->tx_queue_stats.gc_work); in xradio_skb_post_gc() [all …]
|
D | txrx.h | 169 void tx_policy_init(struct xradio_common *hw_priv); 175 u32 xradio_rate_mask_to_wsm(struct xradio_common *hw_priv, 179 void xradio_skb_dtor(struct xradio_common *hw_priv, 188 u16 xradio_get_rate_entry(const struct xradio_common *hw_priv, 195 void xradio_tx_confirm_cb(struct xradio_common *hw_priv, 208 int xradio_alloc_key(struct xradio_common *hw_priv); 209 void xradio_free_key(struct xradio_common *hw_priv, int idx); 210 void xradio_free_keys(struct xradio_common *hw_priv);
|
D | sta.h | 87 void xradio_channel_switch_cb(struct xradio_common *hw_priv); 92 void xradio_free_event_queue(struct xradio_common *hw_priv); 102 int xradio_setup_mac(struct xradio_common *hw_priv); 110 int __xradio_flush(struct xradio_common *hw_priv, bool drop, int if_id); 124 int xradio_set_macaddrfilter(struct xradio_common *hw_priv, 131 void xradio_channel_switch(struct xradio_common *hw_priv,
|
D | fwio.h | 35 int xradio_load_firmware(struct xradio_common *hw_priv); 36 int xradio_dev_deinit(struct xradio_common *hw_priv); 37 int xradio_update_dpllctrl(struct xradio_common *hw_priv, u32 dpll_update);
|
D | queue.h | 101 struct xradio_common *hw_priv; member 122 void xradio_skb_post_gc(struct xradio_common *hw_priv, 141 int xradio_queue_requeue(struct xradio_common *hw_priv, 149 int xradio_queue_remove(struct xradio_common *hw_priv, 164 bool xradio_query_txpkt_timeout(struct xradio_common *hw_priv, int if_id,
|
D | etf.c | 388 int wsm_etf_cmd(struct xradio_common *hw_priv, struct wsm_hdr *arg); 389 int xradio_bh_suspend(struct xradio_common *hw_priv); 390 int xradio_bh_resume(struct xradio_common *hw_priv); 567 int wsm_hwt_cmd(struct xradio_common *hw_priv, void *arg, size_t arg_size); 648 struct xradio_common *hw_priv = etf_priv.core_priv; in xradio_etf_proc() local 650 if (hw_priv) { in xradio_etf_proc() 651 ctxt_ret->is_etf_fw_run = hw_priv->wsm_caps.firmwareReady; in xradio_etf_proc() 652 memcpy(ctxt_ret->fw_label, hw_priv->wsm_caps.fw_label, in xradio_etf_proc() 654 ctxt_ret->fw_api_ver = hw_priv->wsm_caps.firmwareApiVer; in xradio_etf_proc() 789 struct xradio_common *hw_priv = etf_priv.core_priv; in xradio_etf_proc() local [all …]
|