diff options
| author | Liangwei Dong <liangwei@codeaurora.org> | 2015-12-22 02:03:26 -0500 |
|---|---|---|
| committer | David Keitel <dkeitel@codeaurora.org> | 2016-03-23 21:16:03 -0700 |
| commit | d362e25309d571f42950855410a2ce81312eddcb (patch) | |
| tree | d547d4ff0cf638e88777cbda50b74cb8cee764ac /include | |
| parent | d7749d7f8e2fc65c07d712a5b6340a5682d61b1d (diff) | |
Net: CNSS_SDIO: Add SSR support for QCA WIFI Devices
Register subsystem device for SSR recovery. Create
ramdump device for cnss fw dump collection. Implement
cnss SSR API to wlan sdio driver.
CRs-Fixed: 944010
Change-Id: If81fd84bb6080df73b12f235a2aa0eff6f717ce1
Signed-off-by: Liangwei Dong <liangwei@codeaurora.org>
Diffstat (limited to 'include')
| -rw-r--r-- | include/net/cnss.h | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/include/net/cnss.h b/include/net/cnss.h index 9fd505d38685..eb766f2d993b 100644 --- a/include/net/cnss.h +++ b/include/net/cnss.h @@ -115,11 +115,6 @@ enum cnss_runtime_request { extern int cnss_get_fw_image(struct image_desc_info *image_desc_info); extern void cnss_runtime_init(struct device *dev, int auto_delay); extern void cnss_runtime_exit(struct device *dev); -extern void cnss_device_crashed(void); -extern void cnss_device_self_recovery(void); -extern int cnss_get_ramdump_mem(unsigned long *address, unsigned long *size); -extern void *cnss_get_virt_ramdump_mem(unsigned long *size); -extern void cnss_schedule_recovery_work(void); extern void cnss_wlan_pci_link_down(void); extern int cnss_pcie_shadow_control(struct pci_dev *dev, bool enable); extern int cnss_wlan_register_driver(struct cnss_wlan_driver *driver); @@ -188,6 +183,11 @@ extern int cnss_get_wlan_unsafe_channel(u16 *unsafe_ch_list, u16 *ch_count, u16 buf_len); extern int cnss_wlan_set_dfs_nol(const void *info, u16 info_len); extern int cnss_wlan_get_dfs_nol(void *info, u16 info_len); +extern void cnss_device_crashed(void); +extern void cnss_device_self_recovery(void); +extern int cnss_get_ramdump_mem(unsigned long *address, unsigned long *size); +extern void *cnss_get_virt_ramdump_mem(unsigned long *size); +extern void cnss_schedule_recovery_work(void); #ifdef CONFIG_CNSS_SDIO struct cnss_sdio_wlan_driver { @@ -195,6 +195,9 @@ struct cnss_sdio_wlan_driver { const struct sdio_device_id *id_table; int (*probe)(struct sdio_func *, const struct sdio_device_id *); void (*remove)(struct sdio_func *); + int (*reinit)(struct sdio_func *, const struct sdio_device_id *); + void (*shutdown)(struct sdio_func *); + void (*crash_shutdown)(struct sdio_func *); int (*suspend)(struct device *); int (*resume)(struct device *); }; |
