| /Linux-v5.4/drivers/net/wireless/ath/wcn36xx/ |
| D | dxe.c | 30 static void wcn36xx_ccu_write_register(struct wcn36xx *wcn, int addr, int data) in wcn36xx_ccu_write_register() argument 36 writel(data, wcn->ccu_base + addr); in wcn36xx_ccu_write_register() 39 static void wcn36xx_dxe_write_register(struct wcn36xx *wcn, int addr, int data) in wcn36xx_dxe_write_register() argument 45 writel(data, wcn->dxe_base + addr); in wcn36xx_dxe_write_register() 48 static void wcn36xx_dxe_read_register(struct wcn36xx *wcn, int addr, int *data) in wcn36xx_dxe_read_register() argument 50 *data = readl(wcn->dxe_base + addr); in wcn36xx_dxe_read_register() 101 int wcn36xx_dxe_alloc_ctl_blks(struct wcn36xx *wcn) in wcn36xx_dxe_alloc_ctl_blks() argument 105 wcn->dxe_tx_l_ch.ch_type = WCN36XX_DXE_CH_TX_L; in wcn36xx_dxe_alloc_ctl_blks() 106 wcn->dxe_tx_h_ch.ch_type = WCN36XX_DXE_CH_TX_H; in wcn36xx_dxe_alloc_ctl_blks() 107 wcn->dxe_rx_l_ch.ch_type = WCN36XX_DXE_CH_RX_L; in wcn36xx_dxe_alloc_ctl_blks() [all …]
|
| D | main.c | 259 static void wcn36xx_feat_caps_info(struct wcn36xx *wcn) in wcn36xx_feat_caps_info() argument 264 if (get_feat_caps(wcn->fw_feat_caps, i)) in wcn36xx_feat_caps_info() 271 struct wcn36xx *wcn = hw->priv; in wcn36xx_start() local 277 ret = wcn36xx_smd_open(wcn); in wcn36xx_start() 284 ret = wcn36xx_dxe_allocate_mem_pools(wcn); in wcn36xx_start() 290 ret = wcn36xx_dxe_alloc_ctl_blks(wcn); in wcn36xx_start() 296 wcn->hal_buf = kmalloc(WCN36XX_HAL_BUF_SIZE, GFP_KERNEL); in wcn36xx_start() 297 if (!wcn->hal_buf) { in wcn36xx_start() 303 ret = wcn36xx_smd_load_nv(wcn); in wcn36xx_start() 309 ret = wcn36xx_smd_start(wcn); in wcn36xx_start() [all …]
|
| D | smd.h | 56 int wcn36xx_smd_open(struct wcn36xx *wcn); 57 void wcn36xx_smd_close(struct wcn36xx *wcn); 59 int wcn36xx_smd_load_nv(struct wcn36xx *wcn); 60 int wcn36xx_smd_start(struct wcn36xx *wcn); 61 int wcn36xx_smd_stop(struct wcn36xx *wcn); 62 int wcn36xx_smd_init_scan(struct wcn36xx *wcn, enum wcn36xx_hal_sys_mode mode); 63 int wcn36xx_smd_start_scan(struct wcn36xx *wcn, u8 scan_channel); 64 int wcn36xx_smd_end_scan(struct wcn36xx *wcn, u8 scan_channel); 65 int wcn36xx_smd_finish_scan(struct wcn36xx *wcn, 67 int wcn36xx_smd_update_scan_params(struct wcn36xx *wcn, u8 *channels, size_t channel_count); [all …]
|
| D | smd.c | 82 static int put_cfg_tlv_u32(struct wcn36xx *wcn, size_t *len, u32 id, u32 value) in put_cfg_tlv_u32() argument 92 entry = (struct wcn36xx_hal_cfg *) (wcn->hal_buf + *len); in put_cfg_tlv_u32() 106 static void wcn36xx_smd_set_bss_nw_type(struct wcn36xx *wcn, in wcn36xx_smd_set_bss_nw_type() argument 110 if (NL80211_BAND_5GHZ == WCN36XX_BAND(wcn)) in wcn36xx_smd_set_bss_nw_type() 192 static void wcn36xx_smd_set_sta_params(struct wcn36xx *wcn, in wcn36xx_smd_set_sta_params() argument 209 sta_params->listen_interval = WCN36XX_LISTEN_INTERVAL(wcn); in wcn36xx_smd_set_sta_params() 251 static int wcn36xx_smd_send_and_wait(struct wcn36xx *wcn, size_t len) in wcn36xx_smd_send_and_wait() argument 256 (struct wcn36xx_hal_msg_header *)wcn->hal_buf; in wcn36xx_smd_send_and_wait() 259 wcn36xx_dbg_dump(WCN36XX_DBG_SMD_DUMP, "HAL >>> ", wcn->hal_buf, len); in wcn36xx_smd_send_and_wait() 261 init_completion(&wcn->hal_rsp_compl); in wcn36xx_smd_send_and_wait() [all …]
|
| D | txrx.c | 26 int wcn36xx_rx_skb(struct wcn36xx *wcn, struct sk_buff *skb) in wcn36xx_rx_skb() argument 53 if (ieee80211_is_beacon(hdr->frame_control) && wcn->scan_freq) { in wcn36xx_rx_skb() 54 status.freq = wcn->scan_freq; in wcn36xx_rx_skb() 55 status.band = wcn->scan_band; in wcn36xx_rx_skb() 57 status.freq = WCN36XX_CENTER_FREQ(wcn); in wcn36xx_rx_skb() 58 status.band = WCN36XX_BAND(wcn); in wcn36xx_rx_skb() 87 ieee80211_rx_irqsafe(wcn->hw, skb); in wcn36xx_rx_skb() 106 static inline struct wcn36xx_vif *get_vif_by_addr(struct wcn36xx *wcn, in get_vif_by_addr() argument 111 list_for_each_entry(vif_priv, &wcn->vif_list, list) { in get_vif_by_addr() 120 static void wcn36xx_tx_start_ampdu(struct wcn36xx *wcn, in wcn36xx_tx_start_ampdu() argument [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() 55 struct wcn36xx *wcn = file->private_data; in write_file_bool_bmps() local 70 list_for_each_entry(vif_priv, &wcn->vif_list, list) { in write_file_bool_bmps() 73 wcn36xx_enable_keep_alive_null_packet(wcn, vif); in write_file_bool_bmps() 74 wcn36xx_pmc_enter_bmps_state(wcn, vif); in write_file_bool_bmps() 81 list_for_each_entry(vif_priv, &wcn->vif_list, list) { in write_file_bool_bmps() 84 wcn36xx_pmc_exit_bmps_state(wcn, vif); in write_file_bool_bmps() 102 struct wcn36xx *wcn = file->private_data; in write_file_dump() local 129 wcn36xx_smd_dump_cmd_req(wcn, arg[0], arg[1], arg[2], arg[3], arg[4]); in write_file_dump() [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 53 wcn36xx_smd_exit_bmps(wcn, vif); in wcn36xx_pmc_exit_bmps_state() 58 int wcn36xx_enable_keep_alive_null_packet(struct wcn36xx *wcn, in wcn36xx_enable_keep_alive_null_packet() argument 62 return wcn36xx_smd_keep_alive_req(wcn, vif, in wcn36xx_enable_keep_alive_null_packet()
|
| D | testmode.c | 43 static int wcn36xx_tm_cmd_ptt(struct wcn36xx *wcn, struct ieee80211_vif *vif, in wcn36xx_tm_cmd_ptt() argument 70 body->drv_major = wcn->fw_major; in wcn36xx_tm_cmd_ptt() 71 body->drv_minor = wcn->fw_minor; in wcn36xx_tm_cmd_ptt() 72 body->drv_patch = wcn->fw_version; in wcn36xx_tm_cmd_ptt() 73 body->drv_build = wcn->fw_revision; in wcn36xx_tm_cmd_ptt() 84 msg->resp_status = wcn36xx_smd_process_ptt_msg(wcn, vif, msg, in wcn36xx_tm_cmd_ptt() 104 skb = cfg80211_testmode_alloc_reply_skb(wcn->hw->wiphy, in wcn36xx_tm_cmd_ptt() 129 struct wcn36xx *wcn = hw->priv; in wcn36xx_tm_cmd() local 148 return wcn36xx_tm_cmd_ptt(wcn, vif, tb); in wcn36xx_tm_cmd()
|
| 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 | dxe.h | 456 int wcn36xx_dxe_allocate_mem_pools(struct wcn36xx *wcn); 457 void wcn36xx_dxe_free_mem_pools(struct wcn36xx *wcn); 458 void wcn36xx_dxe_rx_frame(struct wcn36xx *wcn); 459 int wcn36xx_dxe_alloc_ctl_blks(struct wcn36xx *wcn); 460 void wcn36xx_dxe_free_ctl_blks(struct wcn36xx *wcn); 461 int wcn36xx_dxe_init(struct wcn36xx *wcn); 462 void wcn36xx_dxe_deinit(struct wcn36xx *wcn); 463 int wcn36xx_dxe_init_channels(struct wcn36xx *wcn); 464 int wcn36xx_dxe_tx_frame(struct wcn36xx *wcn, 469 void wcn36xx_dxe_tx_ack_ind(struct wcn36xx *wcn, u32 status);
|
| 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 | 259 static inline bool wcn36xx_is_fw_version(struct wcn36xx *wcn, in wcn36xx_is_fw_version() argument 265 return (wcn->fw_major == major && in wcn36xx_is_fw_version() 266 wcn->fw_minor == minor && in wcn36xx_is_fw_version() 267 wcn->fw_version == version && in wcn36xx_is_fw_version() 268 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,
|