Lines Matching refs:wil
595 void (*configure_interrupt_moderation)(struct wil6210_priv *wil);
599 void (*ring_fini_tx)(struct wil6210_priv *wil, struct wil_ring *ring);
601 int (*tx_init)(struct wil6210_priv *wil);
602 void (*tx_fini)(struct wil6210_priv *wil);
608 int (*tx_ring_tso)(struct wil6210_priv *wil, struct wil6210_vif *vif,
614 int (*rx_init)(struct wil6210_priv *wil, uint ring_order);
615 void (*rx_fini)(struct wil6210_priv *wil);
616 int (*wmi_addba_rx_resp)(struct wil6210_priv *wil, u8 mid, u8 cid,
619 void (*get_reorder_params)(struct wil6210_priv *wil,
624 int (*rx_crypto_check)(struct wil6210_priv *wil, struct sk_buff *skb);
625 int (*rx_error_check)(struct wil6210_priv *wil, struct sk_buff *skb,
627 bool (*is_rx_idle)(struct wil6210_priv *wil);
799 struct wil6210_priv *wil; member
825 struct wil6210_priv *wil; member
847 struct wil6210_priv *wil; member
1075 #define vif_to_wil(v) (v->wil)
1078 #define GET_MAX_VIFS(wil) min_t(int, (wil)->max_vifs, WIL_MAX_VIFS) argument
1080 static inline struct wil6210_vif *wdev_to_vif(struct wil6210_priv *wil, in wdev_to_vif() argument
1084 if (wdev == wil->p2p_wdev) in wdev_to_vif()
1085 return ndev_to_vif(wil->main_ndev); in wdev_to_vif()
1091 vif_to_radio_wdev(struct wil6210_priv *wil, struct wil6210_vif *vif) in vif_to_radio_wdev() argument
1097 return wil->radio_wdev; in vif_to_radio_wdev()
1101 void wil_dbg_trace(struct wil6210_priv *wil, const char *fmt, ...);
1103 void __wil_err(struct wil6210_priv *wil, const char *fmt, ...);
1105 void __wil_err_ratelimited(struct wil6210_priv *wil, const char *fmt, ...);
1107 void __wil_info(struct wil6210_priv *wil, const char *fmt, ...);
1109 void wil_dbg_ratelimited(const struct wil6210_priv *wil, const char *fmt, ...);
1110 #define wil_dbg(wil, fmt, arg...) do { \ argument
1111 netdev_dbg(wil->main_ndev, fmt, ##arg); \
1112 wil_dbg_trace(wil, fmt, ##arg); \
1115 #define wil_dbg_irq(wil, fmt, arg...) wil_dbg(wil, "DBG[ IRQ]" fmt, ##arg) argument
1116 #define wil_dbg_txrx(wil, fmt, arg...) wil_dbg(wil, "DBG[TXRX]" fmt, ##arg) argument
1117 #define wil_dbg_wmi(wil, fmt, arg...) wil_dbg(wil, "DBG[ WMI]" fmt, ##arg) argument
1118 #define wil_dbg_misc(wil, fmt, arg...) wil_dbg(wil, "DBG[MISC]" fmt, ##arg) argument
1119 #define wil_dbg_pm(wil, fmt, arg...) wil_dbg(wil, "DBG[ PM ]" fmt, ##arg) argument
1120 #define wil_err(wil, fmt, arg...) __wil_err(wil, "%s: " fmt, __func__, ##arg) argument
1121 #define wil_info(wil, fmt, arg...) __wil_info(wil, "%s: " fmt, __func__, ##arg) argument
1122 #define wil_err_ratelimited(wil, fmt, arg...) \ argument
1123 __wil_err_ratelimited(wil, "%s: " fmt, __func__, ##arg)
1127 static inline u32 wil_r(struct wil6210_priv *wil, u32 reg) in wil_r() argument
1129 return readl(wil->csr + HOSTADDR(reg)); in wil_r()
1133 static inline void wil_w(struct wil6210_priv *wil, u32 reg, u32 val) in wil_w() argument
1135 writel(val, wil->csr + HOSTADDR(reg)); in wil_w()
1140 static inline void wil_s(struct wil6210_priv *wil, u32 reg, u32 val) in wil_s() argument
1142 wil_w(wil, reg, wil_r(wil, reg) | val); in wil_s()
1146 static inline void wil_c(struct wil6210_priv *wil, u32 reg, u32 val) in wil_c() argument
1148 wil_w(wil, reg, wil_r(wil, reg) & ~val); in wil_c()
1154 static inline bool wil_cid_valid(struct wil6210_priv *wil, int cid) in wil_cid_valid() argument
1156 return (cid >= 0 && cid < wil->max_assoc_sta && cid < WIL6210_MAX_CID); in wil_cid_valid()
1159 void wil_get_board_file(struct wil6210_priv *wil, char *buf, size_t len);
1203 int wil_mem_access_lock(struct wil6210_priv *wil);
1204 void wil_mem_access_unlock(struct wil6210_priv *wil);
1207 wil_vif_alloc(struct wil6210_priv *wil, const char *name,
1211 bool wil_has_other_active_ifaces(struct wil6210_priv *wil,
1213 bool wil_has_active_ifaces(struct wil6210_priv *wil, bool up, bool ok);
1214 void wil_if_free(struct wil6210_priv *wil);
1215 int wil_vif_add(struct wil6210_priv *wil, struct wil6210_vif *vif);
1216 int wil_if_add(struct wil6210_priv *wil);
1217 void wil_vif_remove(struct wil6210_priv *wil, u8 mid);
1218 void wil_if_remove(struct wil6210_priv *wil);
1219 int wil_priv_init(struct wil6210_priv *wil);
1220 void wil_priv_deinit(struct wil6210_priv *wil);
1221 int wil_ps_update(struct wil6210_priv *wil,
1223 int wil_reset(struct wil6210_priv *wil, bool no_fw);
1224 void wil_fw_error_recovery(struct wil6210_priv *wil);
1225 void wil_set_recovery_state(struct wil6210_priv *wil, int state);
1226 bool wil_is_recovery_blocked(struct wil6210_priv *wil);
1227 int wil_up(struct wil6210_priv *wil);
1228 int __wil_up(struct wil6210_priv *wil);
1229 int wil_down(struct wil6210_priv *wil);
1230 int __wil_down(struct wil6210_priv *wil);
1231 void wil_refresh_fw_capabilities(struct wil6210_priv *wil);
1233 int wil_find_cid(struct wil6210_priv *wil, u8 mid, const u8 *mac);
1234 int wil_find_cid_by_idx(struct wil6210_priv *wil, u8 mid, int idx);
1238 void __iomem *wmi_buffer_block(struct wil6210_priv *wil, __le32 ptr, u32 size);
1239 void __iomem *wmi_buffer(struct wil6210_priv *wil, __le32 ptr);
1240 void __iomem *wmi_addr(struct wil6210_priv *wil, u32 ptr);
1241 int wmi_read_hdr(struct wil6210_priv *wil, __le32 ptr,
1243 int wmi_send(struct wil6210_priv *wil, u16 cmdid, u8 mid, void *buf, u16 len);
1244 void wmi_recv_cmd(struct wil6210_priv *wil);
1245 int wmi_call(struct wil6210_priv *wil, u16 cmdid, u8 mid, void *buf, u16 len,
1248 void wmi_event_flush(struct wil6210_priv *wil);
1251 int wmi_set_channel(struct wil6210_priv *wil, int channel);
1252 int wmi_get_channel(struct wil6210_priv *wil, int *channel);
1258 int wmi_echo(struct wil6210_priv *wil);
1260 int wmi_rx_chain_add(struct wil6210_priv *wil, struct wil_ring *vring);
1262 int wmi_rxon(struct wil6210_priv *wil, bool on);
1263 int wmi_get_temperature(struct wil6210_priv *wil, u32 *t_m, u32 *t_r);
1264 int wmi_get_all_temperatures(struct wil6210_priv *wil,
1269 int wmi_addba(struct wil6210_priv *wil, u8 mid,
1271 int wmi_delba_tx(struct wil6210_priv *wil, u8 mid, u8 ringid, u16 reason);
1272 int wmi_delba_rx(struct wil6210_priv *wil, u8 mid, u8 cid, u8 tid, u16 reason);
1273 int wmi_addba_rx_resp(struct wil6210_priv *wil,
1276 int wmi_ps_dev_profile_cfg(struct wil6210_priv *wil,
1278 int wmi_set_mgmt_retry(struct wil6210_priv *wil, u8 retry_short);
1279 int wmi_get_mgmt_retry(struct wil6210_priv *wil, u8 *retry_short);
1281 int wmi_port_allocate(struct wil6210_priv *wil, u8 mid,
1283 int wmi_port_delete(struct wil6210_priv *wil, u8 mid);
1285 int wil_addba_rx_request(struct wil6210_priv *wil, u8 mid, u8 cid, u8 tid,
1288 int wil_addba_tx_request(struct wil6210_priv *wil, u8 ringid, u16 wsize);
1290 void wil6210_clear_irq(struct wil6210_priv *wil);
1291 int wil6210_init_irq(struct wil6210_priv *wil, int irq);
1292 void wil6210_fini_irq(struct wil6210_priv *wil, int irq);
1293 void wil_mask_irq(struct wil6210_priv *wil);
1294 void wil_unmask_irq(struct wil6210_priv *wil);
1295 void wil_configure_interrupt_moderation(struct wil6210_priv *wil);
1296 void wil_disable_irq(struct wil6210_priv *wil);
1297 void wil_enable_irq(struct wil6210_priv *wil);
1298 void wil6210_mask_halp(struct wil6210_priv *wil);
1304 int wil_p2p_listen(struct wil6210_priv *wil, struct wireless_dev *wdev,
1311 void wil_p2p_stop_radio_operations(struct wil6210_priv *wil);
1323 void wil_cfg80211_ap_recovery(struct wil6210_priv *wil);
1325 struct wil6210_priv *wil,
1330 int wil6210_debugfs_init(struct wil6210_priv *wil);
1331 void wil6210_debugfs_remove(struct wil6210_priv *wil);
1333 static inline int wil6210_debugfs_init(struct wil6210_priv *wil) { return 0; } in wil6210_debugfs_init() argument
1334 static inline void wil6210_debugfs_remove(struct wil6210_priv *wil) {} in wil6210_debugfs_remove() argument
1341 void wil_cfg80211_deinit(struct wil6210_priv *wil);
1342 void wil_p2p_wdev_free(struct wil6210_priv *wil);
1344 int wmi_set_mac_address(struct wil6210_priv *wil, void *addr);
1348 int wmi_led_cfg(struct wil6210_priv *wil, bool enable);
1351 void wil_abort_scan_all_vifs(struct wil6210_priv *wil, bool sync);
1352 void wil6210_bus_request(struct wil6210_priv *wil, u32 kbps);
1362 void wil_init_txrx_ops(struct wil6210_priv *wil);
1369 void wil_bcast_fini_all(struct wil6210_priv *wil);
1371 void wil_update_net_queues(struct wil6210_priv *wil, struct wil6210_vif *vif,
1373 void wil_update_net_queues_bh(struct wil6210_priv *wil, struct wil6210_vif *vif,
1379 void wil6210_unmask_irq_tx(struct wil6210_priv *wil);
1380 void wil6210_unmask_irq_tx_edma(struct wil6210_priv *wil);
1383 void wil_rx_handle(struct wil6210_priv *wil, int *quota);
1384 void wil6210_unmask_irq_rx(struct wil6210_priv *wil);
1385 void wil6210_unmask_irq_rx_edma(struct wil6210_priv *wil);
1392 int wil_request_firmware(struct wil6210_priv *wil, const char *name,
1394 int wil_request_board(struct wil6210_priv *wil, const char *name);
1395 bool wil_fw_verify_file_exists(struct wil6210_priv *wil, const char *name);
1397 void wil_pm_runtime_allow(struct wil6210_priv *wil);
1398 void wil_pm_runtime_forbid(struct wil6210_priv *wil);
1399 int wil_pm_runtime_get(struct wil6210_priv *wil);
1400 void wil_pm_runtime_put(struct wil6210_priv *wil);
1402 int wil_can_suspend(struct wil6210_priv *wil, bool is_runtime);
1403 int wil_suspend(struct wil6210_priv *wil, bool is_runtime, bool keep_radio_on);
1404 int wil_resume(struct wil6210_priv *wil, bool is_runtime, bool keep_radio_on);
1405 bool wil_is_wmi_idle(struct wil6210_priv *wil);
1406 int wmi_resume(struct wil6210_priv *wil);
1407 int wmi_suspend(struct wil6210_priv *wil);
1408 bool wil_is_tx_idle(struct wil6210_priv *wil);
1410 int wil_fw_copy_crash_dump(struct wil6210_priv *wil, void *dest, u32 size);
1411 void wil_fw_core_dump(struct wil6210_priv *wil);
1413 void wil_halp_vote(struct wil6210_priv *wil);
1414 void wil_halp_unvote(struct wil6210_priv *wil);
1415 void wil6210_set_halp(struct wil6210_priv *wil);
1416 void wil6210_clear_halp(struct wil6210_priv *wil);
1418 int wmi_start_sched_scan(struct wil6210_priv *wil,
1420 int wmi_stop_sched_scan(struct wil6210_priv *wil);
1424 int wmi_rbufcap_cfg(struct wil6210_priv *wil, bool enable, u16 threshold);
1428 void wil_update_supported_bands(struct wil6210_priv *wil);
1433 int wil_wmi_tx_sring_cfg(struct wil6210_priv *wil, int ring_id);
1434 int wil_wmi_cfg_def_rx_offload(struct wil6210_priv *wil,
1436 int wil_wmi_rx_sring_add(struct wil6210_priv *wil, u16 ring_id);
1437 int wil_wmi_rx_desc_ring_add(struct wil6210_priv *wil, int status_ring_id);
1441 int wmi_addba_rx_resp_edma(struct wil6210_priv *wil, u8 mid, u8 cid,
1445 void update_supported_bands(struct wil6210_priv *wil);
1447 void wil_clear_fw_log_addr(struct wil6210_priv *wil);
1448 int wmi_set_cqm_rssi_config(struct wil6210_priv *wil,