Lines Matching refs:wil
594 void (*configure_interrupt_moderation)(struct wil6210_priv *wil);
598 void (*ring_fini_tx)(struct wil6210_priv *wil, struct wil_ring *ring);
600 int (*tx_init)(struct wil6210_priv *wil);
601 void (*tx_fini)(struct wil6210_priv *wil);
607 int (*tx_ring_tso)(struct wil6210_priv *wil, struct wil6210_vif *vif,
613 int (*rx_init)(struct wil6210_priv *wil, uint ring_order);
614 void (*rx_fini)(struct wil6210_priv *wil);
615 int (*wmi_addba_rx_resp)(struct wil6210_priv *wil, u8 mid, u8 cid,
618 void (*get_reorder_params)(struct wil6210_priv *wil,
623 int (*rx_crypto_check)(struct wil6210_priv *wil, struct sk_buff *skb);
624 int (*rx_error_check)(struct wil6210_priv *wil, struct sk_buff *skb,
626 bool (*is_rx_idle)(struct wil6210_priv *wil);
798 struct wil6210_priv *wil; member
824 struct wil6210_priv *wil; member
846 struct wil6210_priv *wil; member
1074 #define vif_to_wil(v) (v->wil)
1077 #define GET_MAX_VIFS(wil) min_t(int, (wil)->max_vifs, WIL_MAX_VIFS) argument
1079 static inline struct wil6210_vif *wdev_to_vif(struct wil6210_priv *wil, in wdev_to_vif() argument
1083 if (wdev == wil->p2p_wdev) in wdev_to_vif()
1084 return ndev_to_vif(wil->main_ndev); in wdev_to_vif()
1090 vif_to_radio_wdev(struct wil6210_priv *wil, struct wil6210_vif *vif) in vif_to_radio_wdev() argument
1096 return wil->radio_wdev; in vif_to_radio_wdev()
1100 void wil_dbg_trace(struct wil6210_priv *wil, const char *fmt, ...);
1102 void __wil_err(struct wil6210_priv *wil, const char *fmt, ...);
1104 void __wil_err_ratelimited(struct wil6210_priv *wil, const char *fmt, ...);
1106 void __wil_info(struct wil6210_priv *wil, const char *fmt, ...);
1108 void wil_dbg_ratelimited(const struct wil6210_priv *wil, const char *fmt, ...);
1109 #define wil_dbg(wil, fmt, arg...) do { \ argument
1110 netdev_dbg(wil->main_ndev, fmt, ##arg); \
1111 wil_dbg_trace(wil, fmt, ##arg); \
1114 #define wil_dbg_irq(wil, fmt, arg...) wil_dbg(wil, "DBG[ IRQ]" fmt, ##arg) argument
1115 #define wil_dbg_txrx(wil, fmt, arg...) wil_dbg(wil, "DBG[TXRX]" fmt, ##arg) argument
1116 #define wil_dbg_wmi(wil, fmt, arg...) wil_dbg(wil, "DBG[ WMI]" fmt, ##arg) argument
1117 #define wil_dbg_misc(wil, fmt, arg...) wil_dbg(wil, "DBG[MISC]" fmt, ##arg) argument
1118 #define wil_dbg_pm(wil, fmt, arg...) wil_dbg(wil, "DBG[ PM ]" fmt, ##arg) argument
1119 #define wil_err(wil, fmt, arg...) __wil_err(wil, "%s: " fmt, __func__, ##arg) argument
1120 #define wil_info(wil, fmt, arg...) __wil_info(wil, "%s: " fmt, __func__, ##arg) argument
1121 #define wil_err_ratelimited(wil, fmt, arg...) \ argument
1122 __wil_err_ratelimited(wil, "%s: " fmt, __func__, ##arg)
1126 static inline u32 wil_r(struct wil6210_priv *wil, u32 reg) in wil_r() argument
1128 return readl(wil->csr + HOSTADDR(reg)); in wil_r()
1132 static inline void wil_w(struct wil6210_priv *wil, u32 reg, u32 val) in wil_w() argument
1134 writel(val, wil->csr + HOSTADDR(reg)); in wil_w()
1139 static inline void wil_s(struct wil6210_priv *wil, u32 reg, u32 val) in wil_s() argument
1141 wil_w(wil, reg, wil_r(wil, reg) | val); in wil_s()
1145 static inline void wil_c(struct wil6210_priv *wil, u32 reg, u32 val) in wil_c() argument
1147 wil_w(wil, reg, wil_r(wil, reg) & ~val); in wil_c()
1153 static inline bool wil_cid_valid(struct wil6210_priv *wil, int cid) in wil_cid_valid() argument
1155 return (cid >= 0 && cid < wil->max_assoc_sta && cid < WIL6210_MAX_CID); in wil_cid_valid()
1158 void wil_get_board_file(struct wil6210_priv *wil, char *buf, size_t len);
1202 int wil_mem_access_lock(struct wil6210_priv *wil);
1203 void wil_mem_access_unlock(struct wil6210_priv *wil);
1206 wil_vif_alloc(struct wil6210_priv *wil, const char *name,
1210 bool wil_has_other_active_ifaces(struct wil6210_priv *wil,
1212 bool wil_has_active_ifaces(struct wil6210_priv *wil, bool up, bool ok);
1213 void wil_if_free(struct wil6210_priv *wil);
1214 int wil_vif_add(struct wil6210_priv *wil, struct wil6210_vif *vif);
1215 int wil_if_add(struct wil6210_priv *wil);
1216 void wil_vif_remove(struct wil6210_priv *wil, u8 mid);
1217 void wil_if_remove(struct wil6210_priv *wil);
1218 int wil_priv_init(struct wil6210_priv *wil);
1219 void wil_priv_deinit(struct wil6210_priv *wil);
1220 int wil_ps_update(struct wil6210_priv *wil,
1222 int wil_reset(struct wil6210_priv *wil, bool no_fw);
1223 void wil_fw_error_recovery(struct wil6210_priv *wil);
1224 void wil_set_recovery_state(struct wil6210_priv *wil, int state);
1225 bool wil_is_recovery_blocked(struct wil6210_priv *wil);
1226 int wil_up(struct wil6210_priv *wil);
1227 int __wil_up(struct wil6210_priv *wil);
1228 int wil_down(struct wil6210_priv *wil);
1229 int __wil_down(struct wil6210_priv *wil);
1230 void wil_refresh_fw_capabilities(struct wil6210_priv *wil);
1232 int wil_find_cid(struct wil6210_priv *wil, u8 mid, const u8 *mac);
1233 int wil_find_cid_by_idx(struct wil6210_priv *wil, u8 mid, int idx);
1237 void __iomem *wmi_buffer_block(struct wil6210_priv *wil, __le32 ptr, u32 size);
1238 void __iomem *wmi_buffer(struct wil6210_priv *wil, __le32 ptr);
1239 void __iomem *wmi_addr(struct wil6210_priv *wil, u32 ptr);
1240 int wmi_read_hdr(struct wil6210_priv *wil, __le32 ptr,
1242 int wmi_send(struct wil6210_priv *wil, u16 cmdid, u8 mid, void *buf, u16 len);
1243 void wmi_recv_cmd(struct wil6210_priv *wil);
1244 int wmi_call(struct wil6210_priv *wil, u16 cmdid, u8 mid, void *buf, u16 len,
1247 void wmi_event_flush(struct wil6210_priv *wil);
1250 int wmi_set_channel(struct wil6210_priv *wil, int channel);
1251 int wmi_get_channel(struct wil6210_priv *wil, int *channel);
1257 int wmi_echo(struct wil6210_priv *wil);
1259 int wmi_rx_chain_add(struct wil6210_priv *wil, struct wil_ring *vring);
1261 int wmi_rxon(struct wil6210_priv *wil, bool on);
1262 int wmi_get_temperature(struct wil6210_priv *wil, u32 *t_m, u32 *t_r);
1263 int wmi_get_all_temperatures(struct wil6210_priv *wil,
1268 int wmi_addba(struct wil6210_priv *wil, u8 mid,
1270 int wmi_delba_tx(struct wil6210_priv *wil, u8 mid, u8 ringid, u16 reason);
1271 int wmi_delba_rx(struct wil6210_priv *wil, u8 mid, u8 cid, u8 tid, u16 reason);
1272 int wmi_addba_rx_resp(struct wil6210_priv *wil,
1275 int wmi_ps_dev_profile_cfg(struct wil6210_priv *wil,
1277 int wmi_set_mgmt_retry(struct wil6210_priv *wil, u8 retry_short);
1278 int wmi_get_mgmt_retry(struct wil6210_priv *wil, u8 *retry_short);
1280 int wmi_port_allocate(struct wil6210_priv *wil, u8 mid,
1282 int wmi_port_delete(struct wil6210_priv *wil, u8 mid);
1284 int wil_addba_rx_request(struct wil6210_priv *wil, u8 mid, u8 cid, u8 tid,
1287 int wil_addba_tx_request(struct wil6210_priv *wil, u8 ringid, u16 wsize);
1289 void wil6210_clear_irq(struct wil6210_priv *wil);
1290 int wil6210_init_irq(struct wil6210_priv *wil, int irq);
1291 void wil6210_fini_irq(struct wil6210_priv *wil, int irq);
1292 void wil_mask_irq(struct wil6210_priv *wil);
1293 void wil_unmask_irq(struct wil6210_priv *wil);
1294 void wil_configure_interrupt_moderation(struct wil6210_priv *wil);
1295 void wil_disable_irq(struct wil6210_priv *wil);
1296 void wil_enable_irq(struct wil6210_priv *wil);
1297 void wil6210_mask_halp(struct wil6210_priv *wil);
1303 int wil_p2p_listen(struct wil6210_priv *wil, struct wireless_dev *wdev,
1310 void wil_p2p_stop_radio_operations(struct wil6210_priv *wil);
1322 void wil_cfg80211_ap_recovery(struct wil6210_priv *wil);
1324 struct wil6210_priv *wil,
1329 int wil6210_debugfs_init(struct wil6210_priv *wil);
1330 void wil6210_debugfs_remove(struct wil6210_priv *wil);
1332 static inline int wil6210_debugfs_init(struct wil6210_priv *wil) { return 0; } in wil6210_debugfs_init() argument
1333 static inline void wil6210_debugfs_remove(struct wil6210_priv *wil) {} in wil6210_debugfs_remove() argument
1340 void wil_cfg80211_deinit(struct wil6210_priv *wil);
1341 void wil_p2p_wdev_free(struct wil6210_priv *wil);
1343 int wmi_set_mac_address(struct wil6210_priv *wil, const void *addr);
1347 int wmi_led_cfg(struct wil6210_priv *wil, bool enable);
1350 void wil_abort_scan_all_vifs(struct wil6210_priv *wil, bool sync);
1351 void wil6210_bus_request(struct wil6210_priv *wil, u32 kbps);
1361 void wil_init_txrx_ops(struct wil6210_priv *wil);
1368 void wil_bcast_fini_all(struct wil6210_priv *wil);
1370 void wil_update_net_queues(struct wil6210_priv *wil, struct wil6210_vif *vif,
1372 void wil_update_net_queues_bh(struct wil6210_priv *wil, struct wil6210_vif *vif,
1378 void wil6210_unmask_irq_tx(struct wil6210_priv *wil);
1379 void wil6210_unmask_irq_tx_edma(struct wil6210_priv *wil);
1382 void wil_rx_handle(struct wil6210_priv *wil, int *quota);
1383 void wil6210_unmask_irq_rx(struct wil6210_priv *wil);
1384 void wil6210_unmask_irq_rx_edma(struct wil6210_priv *wil);
1391 int wil_request_firmware(struct wil6210_priv *wil, const char *name,
1393 int wil_request_board(struct wil6210_priv *wil, const char *name);
1394 bool wil_fw_verify_file_exists(struct wil6210_priv *wil, const char *name);
1396 void wil_pm_runtime_allow(struct wil6210_priv *wil);
1397 void wil_pm_runtime_forbid(struct wil6210_priv *wil);
1398 int wil_pm_runtime_get(struct wil6210_priv *wil);
1399 void wil_pm_runtime_put(struct wil6210_priv *wil);
1401 int wil_can_suspend(struct wil6210_priv *wil, bool is_runtime);
1402 int wil_suspend(struct wil6210_priv *wil, bool is_runtime, bool keep_radio_on);
1403 int wil_resume(struct wil6210_priv *wil, bool is_runtime, bool keep_radio_on);
1404 bool wil_is_wmi_idle(struct wil6210_priv *wil);
1405 int wmi_resume(struct wil6210_priv *wil);
1406 int wmi_suspend(struct wil6210_priv *wil);
1407 bool wil_is_tx_idle(struct wil6210_priv *wil);
1409 int wil_fw_copy_crash_dump(struct wil6210_priv *wil, void *dest, u32 size);
1410 void wil_fw_core_dump(struct wil6210_priv *wil);
1412 void wil_halp_vote(struct wil6210_priv *wil);
1413 void wil_halp_unvote(struct wil6210_priv *wil);
1414 void wil6210_set_halp(struct wil6210_priv *wil);
1415 void wil6210_clear_halp(struct wil6210_priv *wil);
1417 int wmi_start_sched_scan(struct wil6210_priv *wil,
1419 int wmi_stop_sched_scan(struct wil6210_priv *wil);
1423 int wmi_rbufcap_cfg(struct wil6210_priv *wil, bool enable, u16 threshold);
1427 void wil_update_supported_bands(struct wil6210_priv *wil);
1432 int wil_wmi_tx_sring_cfg(struct wil6210_priv *wil, int ring_id);
1433 int wil_wmi_cfg_def_rx_offload(struct wil6210_priv *wil,
1435 int wil_wmi_rx_sring_add(struct wil6210_priv *wil, u16 ring_id);
1436 int wil_wmi_rx_desc_ring_add(struct wil6210_priv *wil, int status_ring_id);
1440 int wmi_addba_rx_resp_edma(struct wil6210_priv *wil, u8 mid, u8 cid,
1444 void update_supported_bands(struct wil6210_priv *wil);
1446 void wil_clear_fw_log_addr(struct wil6210_priv *wil);
1447 int wmi_set_cqm_rssi_config(struct wil6210_priv *wil,