/drivers/net/wireless/ath/wcn36xx/ |
D | dxe.c | 29 void *wcn36xx_dxe_get_next_bd(struct wcn36xx *wcn, bool is_low) in wcn36xx_dxe_get_next_bd() argument 32 &wcn->dxe_tx_l_ch : in wcn36xx_dxe_get_next_bd() 33 &wcn->dxe_tx_h_ch; in wcn36xx_dxe_get_next_bd() 38 static void wcn36xx_dxe_write_register(struct wcn36xx *wcn, int addr, int data) in wcn36xx_dxe_write_register() argument 44 writel(data, wcn->mmio + addr); in wcn36xx_dxe_write_register() 47 #define wcn36xx_dxe_write_register_x(wcn, reg, reg_data) \ argument 49 if (wcn->chip_version == WCN36XX_CHIP_3680) \ 50 wcn36xx_dxe_write_register(wcn, reg ## _3680, reg_data); \ 52 wcn36xx_dxe_write_register(wcn, reg ## _3660, reg_data); \ 55 static void wcn36xx_dxe_read_register(struct wcn36xx *wcn, int addr, int *data) in wcn36xx_dxe_read_register() argument [all …]
|
D | smd.c | 79 static int put_cfg_tlv_u32(struct wcn36xx *wcn, size_t *len, u32 id, u32 value) in put_cfg_tlv_u32() argument 89 entry = (struct wcn36xx_hal_cfg *) (wcn->hal_buf + *len); in put_cfg_tlv_u32() 103 static void wcn36xx_smd_set_bss_nw_type(struct wcn36xx *wcn, in wcn36xx_smd_set_bss_nw_type() argument 107 if (IEEE80211_BAND_5GHZ == WCN36XX_BAND(wcn)) in wcn36xx_smd_set_bss_nw_type() 189 static void wcn36xx_smd_set_sta_params(struct wcn36xx *wcn, in wcn36xx_smd_set_sta_params() argument 206 sta_params->listen_interval = WCN36XX_LISTEN_INTERVAL(wcn); in wcn36xx_smd_set_sta_params() 248 static int wcn36xx_smd_send_and_wait(struct wcn36xx *wcn, size_t len) in wcn36xx_smd_send_and_wait() argument 252 wcn36xx_dbg_dump(WCN36XX_DBG_SMD_DUMP, "HAL >>> ", wcn->hal_buf, len); in wcn36xx_smd_send_and_wait() 254 init_completion(&wcn->hal_rsp_compl); in wcn36xx_smd_send_and_wait() 256 ret = wcn->ctrl_ops->tx(wcn->hal_buf, len); in wcn36xx_smd_send_and_wait() [all …]
|
D | main.c | 216 static void wcn36xx_feat_caps_info(struct wcn36xx *wcn) in wcn36xx_feat_caps_info() argument 221 if (get_feat_caps(wcn->fw_feat_caps, i)) in wcn36xx_feat_caps_info() 226 static void wcn36xx_detect_chip_version(struct wcn36xx *wcn) in wcn36xx_detect_chip_version() argument 228 if (get_feat_caps(wcn->fw_feat_caps, DOT11AC)) { in wcn36xx_detect_chip_version() 230 wcn->chip_version = WCN36XX_CHIP_3680; in wcn36xx_detect_chip_version() 233 wcn->chip_version = WCN36XX_CHIP_3660; in wcn36xx_detect_chip_version() 239 struct wcn36xx *wcn = hw->priv; in wcn36xx_start() local 245 ret = wcn36xx_smd_open(wcn); in wcn36xx_start() 252 ret = wcn36xx_dxe_allocate_mem_pools(wcn); in wcn36xx_start() 258 ret = wcn36xx_dxe_alloc_ctl_blks(wcn); in wcn36xx_start() [all …]
|
D | smd.h | 55 int wcn36xx_smd_open(struct wcn36xx *wcn); 56 void wcn36xx_smd_close(struct wcn36xx *wcn); 58 int wcn36xx_smd_load_nv(struct wcn36xx *wcn); 59 int wcn36xx_smd_start(struct wcn36xx *wcn); 60 int wcn36xx_smd_stop(struct wcn36xx *wcn); 61 int wcn36xx_smd_init_scan(struct wcn36xx *wcn, enum wcn36xx_hal_sys_mode mode); 62 int wcn36xx_smd_start_scan(struct wcn36xx *wcn); 63 int wcn36xx_smd_end_scan(struct wcn36xx *wcn); 64 int wcn36xx_smd_finish_scan(struct wcn36xx *wcn, 66 int wcn36xx_smd_update_scan_params(struct wcn36xx *wcn); [all …]
|
D | debug.c | 30 struct wcn36xx *wcn = file->private_data; in read_file_bool_bmps() local 35 list_for_each_entry(vif_priv, &wcn->vif_list, list) { in read_file_bool_bmps() 57 struct wcn36xx *wcn = file->private_data; in write_file_bool_bmps() local 72 list_for_each_entry(vif_priv, &wcn->vif_list, list) { in write_file_bool_bmps() 77 wcn36xx_enable_keep_alive_null_packet(wcn, vif); in write_file_bool_bmps() 78 wcn36xx_pmc_enter_bmps_state(wcn, vif); in write_file_bool_bmps() 85 list_for_each_entry(vif_priv, &wcn->vif_list, list) { in write_file_bool_bmps() 90 wcn36xx_pmc_exit_bmps_state(wcn, vif); in write_file_bool_bmps() 108 struct wcn36xx *wcn = file->private_data; in write_file_dump() local 135 wcn36xx_smd_dump_cmd_req(wcn, arg[0], arg[1], arg[2], arg[3], arg[4]); in write_file_dump() [all …]
|
D | txrx.c | 26 int wcn36xx_rx_skb(struct wcn36xx *wcn, struct sk_buff *skb) in wcn36xx_rx_skb() argument 49 status.freq = WCN36XX_CENTER_FREQ(wcn); in wcn36xx_rx_skb() 50 status.band = WCN36XX_BAND(wcn); in wcn36xx_rx_skb() 80 ieee80211_rx_irqsafe(wcn->hw, skb); in wcn36xx_rx_skb() 99 static inline struct wcn36xx_vif *get_vif_by_addr(struct wcn36xx *wcn, in get_vif_by_addr() argument 104 list_for_each_entry(vif_priv, &wcn->vif_list, list) { in get_vif_by_addr() 115 static void wcn36xx_tx_start_ampdu(struct wcn36xx *wcn, in wcn36xx_tx_start_ampdu() argument 123 if (!conf_is_ht(&wcn->hw->conf)) in wcn36xx_tx_start_ampdu() 151 struct wcn36xx *wcn, in wcn36xx_set_tx_data() argument 185 __vif_priv = get_vif_by_addr(wcn, hdr->addr2); in wcn36xx_set_tx_data() [all …]
|
D | dxe.h | 271 int wcn36xx_dxe_allocate_mem_pools(struct wcn36xx *wcn); 272 void wcn36xx_dxe_free_mem_pools(struct wcn36xx *wcn); 273 void wcn36xx_dxe_rx_frame(struct wcn36xx *wcn); 274 int wcn36xx_dxe_alloc_ctl_blks(struct wcn36xx *wcn); 275 void wcn36xx_dxe_free_ctl_blks(struct wcn36xx *wcn); 276 int wcn36xx_dxe_init(struct wcn36xx *wcn); 277 void wcn36xx_dxe_deinit(struct wcn36xx *wcn); 278 int wcn36xx_dxe_init_channels(struct wcn36xx *wcn); 279 int wcn36xx_dxe_tx_frame(struct wcn36xx *wcn, 283 void wcn36xx_dxe_tx_ack_ind(struct wcn36xx *wcn, u32 status); [all …]
|
D | pmc.c | 21 int wcn36xx_pmc_enter_bmps_state(struct wcn36xx *wcn, in wcn36xx_pmc_enter_bmps_state() argument 27 ret = wcn36xx_smd_enter_bmps(wcn, vif); in wcn36xx_pmc_enter_bmps_state() 42 int wcn36xx_pmc_exit_bmps_state(struct wcn36xx *wcn, in wcn36xx_pmc_exit_bmps_state() argument 51 wcn36xx_smd_exit_bmps(wcn, vif); in wcn36xx_pmc_exit_bmps_state() 56 int wcn36xx_enable_keep_alive_null_packet(struct wcn36xx *wcn, in wcn36xx_enable_keep_alive_null_packet() argument 60 return wcn36xx_smd_keep_alive_req(wcn, vif, in wcn36xx_enable_keep_alive_null_packet()
|
D | debug.h | 36 void wcn36xx_debugfs_init(struct wcn36xx *wcn); 37 void wcn36xx_debugfs_exit(struct wcn36xx *wcn); 40 static inline void wcn36xx_debugfs_init(struct wcn36xx *wcn) in wcn36xx_debugfs_init() argument 43 static inline void wcn36xx_debugfs_exit(struct wcn36xx *wcn) in wcn36xx_debugfs_exit() argument
|
D | pmc.h | 27 int wcn36xx_pmc_enter_bmps_state(struct wcn36xx *wcn, 29 int wcn36xx_pmc_exit_bmps_state(struct wcn36xx *wcn, 31 int wcn36xx_enable_keep_alive_null_packet(struct wcn36xx *wcn,
|
D | wcn36xx.h | 247 static inline bool wcn36xx_is_fw_version(struct wcn36xx *wcn, in wcn36xx_is_fw_version() argument 253 return (wcn->fw_major == major && in wcn36xx_is_fw_version() 254 wcn->fw_minor == minor && in wcn36xx_is_fw_version() 255 wcn->fw_version == version && in wcn36xx_is_fw_version() 256 wcn->fw_revision == revision); in wcn36xx_is_fw_version()
|
D | txrx.h | 162 int wcn36xx_rx_skb(struct wcn36xx *wcn, struct sk_buff *skb); 163 int wcn36xx_start_tx(struct wcn36xx *wcn,
|