Loading drivers/net/wireless/cnss/cnss_pci.c +4 −154 Original line number Diff line number Diff line Loading @@ -1857,13 +1857,7 @@ void cnss_pci_recovery_work_handler(struct work_struct *recovery) cnss_pci_device_self_recovery(); } DECLARE_WORK(recovery_work, cnss_pci_recovery_work_handler); void cnss_schedule_recovery_work(void) { schedule_work(&recovery_work); } EXPORT_SYMBOL(cnss_schedule_recovery_work); DECLARE_WORK(cnss_pci_recovery_work, cnss_pci_recovery_work_handler); void cnss_pci_events_cb(struct msm_pcie_notify *notify) { Loading @@ -1888,7 +1882,7 @@ void cnss_pci_events_cb(struct msm_pcie_notify *notify) spin_unlock_irqrestore(&pci_link_down_lock, flags); pr_err("PCI link down, schedule recovery\n"); schedule_work(&recovery_work); schedule_work(&cnss_pci_recovery_work); break; case MSM_PCIE_EVENT_WAKEUP: Loading Loading @@ -1922,7 +1916,7 @@ void cnss_wlan_pci_link_down(void) spin_unlock_irqrestore(&pci_link_down_lock, flags); pr_err("PCI link down detected by host driver, schedule recovery!\n"); schedule_work(&recovery_work); schedule_work(&cnss_pci_recovery_work); } EXPORT_SYMBOL(cnss_wlan_pci_link_down); Loading Loading @@ -2062,40 +2056,6 @@ end: } EXPORT_SYMBOL(cnss_pci_get_wlan_mac_address); /** * cnss_get_wlan_mac_address() - API to return MAC addresses buffer * @dev: struct device pointer * @num: buffer for number of mac addresses supported * * API returns the pointer to the buffer filled with mac addresses and * updates num with the number of mac addresses the buffer contains. * * Return: pointer to mac address buffer. */ u8 *cnss_get_wlan_mac_address(struct device *dev, uint32_t *num) { struct cnss_wlan_mac_addr *addr = NULL; if (!penv) { pr_err("%s: Invalid Platform Driver Context\n", __func__); goto end; } if (!penv->is_wlan_mac_set) { pr_info("%s: Platform Driver doesn't have any mac address\n", __func__); goto end; } addr = &penv->wlan_mac_addr; *num = addr->no_of_mac_addr_set; return &addr->mac_addr[0][0]; end: *num = 0; return NULL; } EXPORT_SYMBOL(cnss_get_wlan_mac_address); /** * cnss_pcie_set_wlan_mac_address() - API to get two wlan mac address * @in: Input buffer with wlan mac addresses Loading Loading @@ -2416,7 +2376,7 @@ EXPORT_SYMBOL(cnss_release_pm_sem); void cnss_pci_schedule_recovery_work(void) { schedule_work(&recovery_work); schedule_work(&cnss_pci_recovery_work); } void *cnss_pci_get_virt_ramdump_mem(unsigned long *size) Loading @@ -2437,26 +2397,6 @@ void cnss_pci_device_crashed(void) } } void *cnss_get_virt_ramdump_mem(unsigned long *size) { if (!penv || !penv->pldev) return NULL; *size = penv->ramdump_size; return penv->ramdump_addr; } EXPORT_SYMBOL(cnss_get_virt_ramdump_mem); void cnss_device_crashed(void) { if (penv && penv->subsys) { subsys_set_crash_status(penv->subsys, true); subsystem_restart_dev(penv->subsys); } } EXPORT_SYMBOL(cnss_device_crashed); static int cnss_shutdown(const struct subsys_desc *subsys, bool force_stop) { struct cnss_wlan_driver *wdrv; Loading Loading @@ -2666,30 +2606,6 @@ static void cnss_crash_shutdown(const struct subsys_desc *subsys) penv->dump_data.magic = CNSS_DUMP_MAGIC_VER_V2; } void cnss_device_self_recovery(void) { if (!penv) return; if (penv->recovery_in_progress) { pr_err("cnss: Recovery already in progress\n"); return; } if (penv->driver_status == CNSS_LOAD_UNLOAD) { pr_err("cnss: load unload in progress\n"); return; } penv->recovery_count++; penv->recovery_in_progress = true; cnss_pm_wake_lock(&penv->ws); cnss_shutdown(NULL, false); msleep(WLAN_RECOVERY_DELAY); cnss_powerup(NULL); cnss_pm_wake_lock_release(&penv->ws); penv->recovery_in_progress = false; } EXPORT_SYMBOL(cnss_device_self_recovery); static int cnss_modem_notifier_nb(struct notifier_block *this, unsigned long code, void *ss_handle) Loading Loading @@ -3038,39 +2954,6 @@ static void __exit cnss_exit(void) platform_driver_unregister(&cnss_driver); } void cnss_request_pm_qos_type(int latency_type, u32 qos_val) { if (!penv) { pr_err("%s: penv is NULL!\n", __func__); return; } pm_qos_add_request(&penv->qos_request, latency_type, qos_val); } EXPORT_SYMBOL(cnss_request_pm_qos_type); void cnss_request_pm_qos(u32 qos_val) { if (!penv) { pr_err("%s: penv is NULL!\n", __func__); return; } pm_qos_add_request(&penv->qos_request, PM_QOS_CPU_DMA_LATENCY, qos_val); } EXPORT_SYMBOL(cnss_request_pm_qos); void cnss_remove_pm_qos(void) { if (!penv) { pr_err("%s: penv is NULL!\n", __func__); return; } pm_qos_remove_request(&penv->qos_request); } EXPORT_SYMBOL(cnss_remove_pm_qos); void cnss_pci_request_pm_qos_type(int latency_type, u32 qos_val) { if (!penv) { Loading Loading @@ -3136,39 +3019,6 @@ int cnss_pci_request_bus_bandwidth(int bandwidth) return ret; } int cnss_request_bus_bandwidth(int bandwidth) { int ret = 0; if (!penv) return -ENODEV; if (!penv->bus_client) return -ENOSYS; switch (bandwidth) { case CNSS_BUS_WIDTH_NONE: case CNSS_BUS_WIDTH_LOW: case CNSS_BUS_WIDTH_MEDIUM: case CNSS_BUS_WIDTH_HIGH: ret = msm_bus_scale_client_update_request(penv->bus_client, bandwidth); if (!ret) { penv->current_bandwidth_vote = bandwidth; } else { pr_err("%s: could not set bus bandwidth %d, ret = %d\n", __func__, bandwidth, ret); } break; default: pr_err("%s: Invalid request %d", __func__, bandwidth); ret = -EINVAL; } return ret; } EXPORT_SYMBOL(cnss_request_bus_bandwidth); int cnss_get_platform_cap(struct cnss_platform_cap *cap) { if (!penv) Loading drivers/net/wireless/cnss/cnss_sdio.c +2 −116 Original line number Diff line number Diff line Loading @@ -214,74 +214,6 @@ void cnss_sdio_remove_pm_qos(void) } EXPORT_SYMBOL(cnss_sdio_remove_pm_qos); int cnss_request_bus_bandwidth(int bandwidth) { int ret; struct cnss_sdio_bus_bandwidth *bus_bandwidth; if (!cnss_pdata) return -ENODEV; bus_bandwidth = &cnss_pdata->bus_bandwidth; if (!bus_bandwidth->bus_client) return -ENOSYS; switch (bandwidth) { case CNSS_BUS_WIDTH_NONE: case CNSS_BUS_WIDTH_LOW: case CNSS_BUS_WIDTH_MEDIUM: case CNSS_BUS_WIDTH_HIGH: ret = msm_bus_scale_client_update_request( bus_bandwidth->bus_client, bandwidth); if (!ret) { bus_bandwidth->current_bandwidth_vote = bandwidth; } else { pr_debug( "%s: could not set bus bandwidth %d, ret = %d\n", __func__, bandwidth, ret); } break; default: pr_debug("%s: Invalid request %d", __func__, bandwidth); ret = -EINVAL; } return ret; } EXPORT_SYMBOL(cnss_request_bus_bandwidth); void cnss_request_pm_qos_type(int latency_type, u32 qos_val) { if (!cnss_pdata) return; pr_debug("%s: PM QoS value: %d\n", __func__, qos_val); pm_qos_add_request(&cnss_pdata->qos_request, latency_type, qos_val); } EXPORT_SYMBOL(cnss_request_pm_qos_type); void cnss_request_pm_qos(u32 qos_val) { if (!cnss_pdata) return; pr_debug("%s: PM QoS value: %d\n", __func__, qos_val); pm_qos_add_request( &cnss_pdata->qos_request, PM_QOS_CPU_DMA_LATENCY, qos_val); } EXPORT_SYMBOL(cnss_request_pm_qos); void cnss_remove_pm_qos(void) { if (!cnss_pdata) return; pm_qos_remove_request(&cnss_pdata->qos_request); pr_debug("%s: PM QoS removed\n", __func__); } EXPORT_SYMBOL(cnss_remove_pm_qos); static int cnss_sdio_shutdown(const struct subsys_desc *subsys, bool force_stop) { struct cnss_sdio_info *cnss_info; Loading Loading @@ -578,56 +510,17 @@ void cnss_sdio_device_crashed(void) } } void *cnss_get_virt_ramdump_mem(unsigned long *size) { if (!cnss_pdata || !cnss_pdata->pdev) return NULL; *size = cnss_pdata->ssr_info.ramdump_size; return cnss_pdata->ssr_info.ramdump_addr; } EXPORT_SYMBOL(cnss_get_virt_ramdump_mem); void cnss_device_self_recovery(void) { cnss_sdio_shutdown(NULL, false); msleep(WLAN_RECOVERY_DELAY); cnss_sdio_powerup(NULL); } EXPORT_SYMBOL(cnss_device_self_recovery); static void cnss_sdio_recovery_work_handler(struct work_struct *recovery) { cnss_sdio_device_self_recovery(); } DECLARE_WORK(recovery_work, cnss_sdio_recovery_work_handler); DECLARE_WORK(cnss_sdio_recovery_work, cnss_sdio_recovery_work_handler); void cnss_sdio_schedule_recovery_work(void) { schedule_work(&recovery_work); } void cnss_schedule_recovery_work(void) { schedule_work(&recovery_work); schedule_work(&cnss_sdio_recovery_work); } EXPORT_SYMBOL(cnss_schedule_recovery_work); void cnss_device_crashed(void) { struct cnss_ssr_info *ssr_info; if (!cnss_pdata) return; ssr_info = &cnss_pdata->ssr_info; if (ssr_info->subsys) { subsys_set_crash_status(ssr_info->subsys, true); subsystem_restart_dev(ssr_info->subsys); } } EXPORT_SYMBOL(cnss_device_crashed); /** * cnss_get_restart_level() - cnss get restart level API Loading Loading @@ -1277,13 +1170,6 @@ u8 *cnss_sdio_get_wlan_mac_address(uint32_t *num) } EXPORT_SYMBOL(cnss_sdio_get_wlan_mac_address); u8 *cnss_get_wlan_mac_address(struct device *dev, uint32_t *num) { *num = 0; return NULL; } EXPORT_SYMBOL(cnss_get_wlan_mac_address); static const struct of_device_id cnss_sdio_dt_match[] = { {.compatible = "qcom,cnss_sdio"}, {} Loading include/net/cnss.h +0 −12 Original line number Diff line number Diff line Loading @@ -122,7 +122,6 @@ extern int cnss_get_fw_files(struct cnss_fw_files *pfw_files); extern int cnss_get_fw_files_for_target(struct cnss_fw_files *pfw_files, u32 target_type, u32 target_version); extern int cnss_request_bus_bandwidth(int bandwidth); extern int cnss_get_sha_hash(const u8 *data, u32 data_len, u8 *hash_idx, u8 *out); extern void *cnss_get_fw_ptr(void); Loading @@ -136,10 +135,6 @@ extern int cnss_wlan_pm_control(bool vote); extern void cnss_lock_pm_sem(void); extern void cnss_release_pm_sem(void); extern void cnss_request_pm_qos_type(int latency_type, u32 qos_val); extern void cnss_request_pm_qos(u32 qos_val); extern void cnss_remove_pm_qos(void); extern void cnss_pci_request_pm_qos_type(int latency_type, u32 qos_val); extern void cnss_pci_request_pm_qos(u32 qos_val); extern void cnss_pci_remove_pm_qos(void); Loading Loading @@ -173,14 +168,7 @@ extern int cnss_pm_runtime_request(struct device *dev, enum extern void cnss_pm_wake_lock_init(struct wakeup_source *ws, const char *name); extern void cnss_pm_wake_lock(struct wakeup_source *ws); extern void cnss_device_crashed(void); extern void cnss_device_self_recovery(void); extern void *cnss_get_virt_ramdump_mem(unsigned long *size); extern void cnss_schedule_recovery_work(void); extern int cnss_pcie_set_wlan_mac_address(const u8 *in, uint32_t len); extern u8 *cnss_get_wlan_mac_address(struct device *dev, uint32_t *num); extern int cnss_sdio_set_wlan_mac_address(const u8 *in, uint32_t len); enum { CNSS_RESET_SOC = 0, Loading Loading
drivers/net/wireless/cnss/cnss_pci.c +4 −154 Original line number Diff line number Diff line Loading @@ -1857,13 +1857,7 @@ void cnss_pci_recovery_work_handler(struct work_struct *recovery) cnss_pci_device_self_recovery(); } DECLARE_WORK(recovery_work, cnss_pci_recovery_work_handler); void cnss_schedule_recovery_work(void) { schedule_work(&recovery_work); } EXPORT_SYMBOL(cnss_schedule_recovery_work); DECLARE_WORK(cnss_pci_recovery_work, cnss_pci_recovery_work_handler); void cnss_pci_events_cb(struct msm_pcie_notify *notify) { Loading @@ -1888,7 +1882,7 @@ void cnss_pci_events_cb(struct msm_pcie_notify *notify) spin_unlock_irqrestore(&pci_link_down_lock, flags); pr_err("PCI link down, schedule recovery\n"); schedule_work(&recovery_work); schedule_work(&cnss_pci_recovery_work); break; case MSM_PCIE_EVENT_WAKEUP: Loading Loading @@ -1922,7 +1916,7 @@ void cnss_wlan_pci_link_down(void) spin_unlock_irqrestore(&pci_link_down_lock, flags); pr_err("PCI link down detected by host driver, schedule recovery!\n"); schedule_work(&recovery_work); schedule_work(&cnss_pci_recovery_work); } EXPORT_SYMBOL(cnss_wlan_pci_link_down); Loading Loading @@ -2062,40 +2056,6 @@ end: } EXPORT_SYMBOL(cnss_pci_get_wlan_mac_address); /** * cnss_get_wlan_mac_address() - API to return MAC addresses buffer * @dev: struct device pointer * @num: buffer for number of mac addresses supported * * API returns the pointer to the buffer filled with mac addresses and * updates num with the number of mac addresses the buffer contains. * * Return: pointer to mac address buffer. */ u8 *cnss_get_wlan_mac_address(struct device *dev, uint32_t *num) { struct cnss_wlan_mac_addr *addr = NULL; if (!penv) { pr_err("%s: Invalid Platform Driver Context\n", __func__); goto end; } if (!penv->is_wlan_mac_set) { pr_info("%s: Platform Driver doesn't have any mac address\n", __func__); goto end; } addr = &penv->wlan_mac_addr; *num = addr->no_of_mac_addr_set; return &addr->mac_addr[0][0]; end: *num = 0; return NULL; } EXPORT_SYMBOL(cnss_get_wlan_mac_address); /** * cnss_pcie_set_wlan_mac_address() - API to get two wlan mac address * @in: Input buffer with wlan mac addresses Loading Loading @@ -2416,7 +2376,7 @@ EXPORT_SYMBOL(cnss_release_pm_sem); void cnss_pci_schedule_recovery_work(void) { schedule_work(&recovery_work); schedule_work(&cnss_pci_recovery_work); } void *cnss_pci_get_virt_ramdump_mem(unsigned long *size) Loading @@ -2437,26 +2397,6 @@ void cnss_pci_device_crashed(void) } } void *cnss_get_virt_ramdump_mem(unsigned long *size) { if (!penv || !penv->pldev) return NULL; *size = penv->ramdump_size; return penv->ramdump_addr; } EXPORT_SYMBOL(cnss_get_virt_ramdump_mem); void cnss_device_crashed(void) { if (penv && penv->subsys) { subsys_set_crash_status(penv->subsys, true); subsystem_restart_dev(penv->subsys); } } EXPORT_SYMBOL(cnss_device_crashed); static int cnss_shutdown(const struct subsys_desc *subsys, bool force_stop) { struct cnss_wlan_driver *wdrv; Loading Loading @@ -2666,30 +2606,6 @@ static void cnss_crash_shutdown(const struct subsys_desc *subsys) penv->dump_data.magic = CNSS_DUMP_MAGIC_VER_V2; } void cnss_device_self_recovery(void) { if (!penv) return; if (penv->recovery_in_progress) { pr_err("cnss: Recovery already in progress\n"); return; } if (penv->driver_status == CNSS_LOAD_UNLOAD) { pr_err("cnss: load unload in progress\n"); return; } penv->recovery_count++; penv->recovery_in_progress = true; cnss_pm_wake_lock(&penv->ws); cnss_shutdown(NULL, false); msleep(WLAN_RECOVERY_DELAY); cnss_powerup(NULL); cnss_pm_wake_lock_release(&penv->ws); penv->recovery_in_progress = false; } EXPORT_SYMBOL(cnss_device_self_recovery); static int cnss_modem_notifier_nb(struct notifier_block *this, unsigned long code, void *ss_handle) Loading Loading @@ -3038,39 +2954,6 @@ static void __exit cnss_exit(void) platform_driver_unregister(&cnss_driver); } void cnss_request_pm_qos_type(int latency_type, u32 qos_val) { if (!penv) { pr_err("%s: penv is NULL!\n", __func__); return; } pm_qos_add_request(&penv->qos_request, latency_type, qos_val); } EXPORT_SYMBOL(cnss_request_pm_qos_type); void cnss_request_pm_qos(u32 qos_val) { if (!penv) { pr_err("%s: penv is NULL!\n", __func__); return; } pm_qos_add_request(&penv->qos_request, PM_QOS_CPU_DMA_LATENCY, qos_val); } EXPORT_SYMBOL(cnss_request_pm_qos); void cnss_remove_pm_qos(void) { if (!penv) { pr_err("%s: penv is NULL!\n", __func__); return; } pm_qos_remove_request(&penv->qos_request); } EXPORT_SYMBOL(cnss_remove_pm_qos); void cnss_pci_request_pm_qos_type(int latency_type, u32 qos_val) { if (!penv) { Loading Loading @@ -3136,39 +3019,6 @@ int cnss_pci_request_bus_bandwidth(int bandwidth) return ret; } int cnss_request_bus_bandwidth(int bandwidth) { int ret = 0; if (!penv) return -ENODEV; if (!penv->bus_client) return -ENOSYS; switch (bandwidth) { case CNSS_BUS_WIDTH_NONE: case CNSS_BUS_WIDTH_LOW: case CNSS_BUS_WIDTH_MEDIUM: case CNSS_BUS_WIDTH_HIGH: ret = msm_bus_scale_client_update_request(penv->bus_client, bandwidth); if (!ret) { penv->current_bandwidth_vote = bandwidth; } else { pr_err("%s: could not set bus bandwidth %d, ret = %d\n", __func__, bandwidth, ret); } break; default: pr_err("%s: Invalid request %d", __func__, bandwidth); ret = -EINVAL; } return ret; } EXPORT_SYMBOL(cnss_request_bus_bandwidth); int cnss_get_platform_cap(struct cnss_platform_cap *cap) { if (!penv) Loading
drivers/net/wireless/cnss/cnss_sdio.c +2 −116 Original line number Diff line number Diff line Loading @@ -214,74 +214,6 @@ void cnss_sdio_remove_pm_qos(void) } EXPORT_SYMBOL(cnss_sdio_remove_pm_qos); int cnss_request_bus_bandwidth(int bandwidth) { int ret; struct cnss_sdio_bus_bandwidth *bus_bandwidth; if (!cnss_pdata) return -ENODEV; bus_bandwidth = &cnss_pdata->bus_bandwidth; if (!bus_bandwidth->bus_client) return -ENOSYS; switch (bandwidth) { case CNSS_BUS_WIDTH_NONE: case CNSS_BUS_WIDTH_LOW: case CNSS_BUS_WIDTH_MEDIUM: case CNSS_BUS_WIDTH_HIGH: ret = msm_bus_scale_client_update_request( bus_bandwidth->bus_client, bandwidth); if (!ret) { bus_bandwidth->current_bandwidth_vote = bandwidth; } else { pr_debug( "%s: could not set bus bandwidth %d, ret = %d\n", __func__, bandwidth, ret); } break; default: pr_debug("%s: Invalid request %d", __func__, bandwidth); ret = -EINVAL; } return ret; } EXPORT_SYMBOL(cnss_request_bus_bandwidth); void cnss_request_pm_qos_type(int latency_type, u32 qos_val) { if (!cnss_pdata) return; pr_debug("%s: PM QoS value: %d\n", __func__, qos_val); pm_qos_add_request(&cnss_pdata->qos_request, latency_type, qos_val); } EXPORT_SYMBOL(cnss_request_pm_qos_type); void cnss_request_pm_qos(u32 qos_val) { if (!cnss_pdata) return; pr_debug("%s: PM QoS value: %d\n", __func__, qos_val); pm_qos_add_request( &cnss_pdata->qos_request, PM_QOS_CPU_DMA_LATENCY, qos_val); } EXPORT_SYMBOL(cnss_request_pm_qos); void cnss_remove_pm_qos(void) { if (!cnss_pdata) return; pm_qos_remove_request(&cnss_pdata->qos_request); pr_debug("%s: PM QoS removed\n", __func__); } EXPORT_SYMBOL(cnss_remove_pm_qos); static int cnss_sdio_shutdown(const struct subsys_desc *subsys, bool force_stop) { struct cnss_sdio_info *cnss_info; Loading Loading @@ -578,56 +510,17 @@ void cnss_sdio_device_crashed(void) } } void *cnss_get_virt_ramdump_mem(unsigned long *size) { if (!cnss_pdata || !cnss_pdata->pdev) return NULL; *size = cnss_pdata->ssr_info.ramdump_size; return cnss_pdata->ssr_info.ramdump_addr; } EXPORT_SYMBOL(cnss_get_virt_ramdump_mem); void cnss_device_self_recovery(void) { cnss_sdio_shutdown(NULL, false); msleep(WLAN_RECOVERY_DELAY); cnss_sdio_powerup(NULL); } EXPORT_SYMBOL(cnss_device_self_recovery); static void cnss_sdio_recovery_work_handler(struct work_struct *recovery) { cnss_sdio_device_self_recovery(); } DECLARE_WORK(recovery_work, cnss_sdio_recovery_work_handler); DECLARE_WORK(cnss_sdio_recovery_work, cnss_sdio_recovery_work_handler); void cnss_sdio_schedule_recovery_work(void) { schedule_work(&recovery_work); } void cnss_schedule_recovery_work(void) { schedule_work(&recovery_work); schedule_work(&cnss_sdio_recovery_work); } EXPORT_SYMBOL(cnss_schedule_recovery_work); void cnss_device_crashed(void) { struct cnss_ssr_info *ssr_info; if (!cnss_pdata) return; ssr_info = &cnss_pdata->ssr_info; if (ssr_info->subsys) { subsys_set_crash_status(ssr_info->subsys, true); subsystem_restart_dev(ssr_info->subsys); } } EXPORT_SYMBOL(cnss_device_crashed); /** * cnss_get_restart_level() - cnss get restart level API Loading Loading @@ -1277,13 +1170,6 @@ u8 *cnss_sdio_get_wlan_mac_address(uint32_t *num) } EXPORT_SYMBOL(cnss_sdio_get_wlan_mac_address); u8 *cnss_get_wlan_mac_address(struct device *dev, uint32_t *num) { *num = 0; return NULL; } EXPORT_SYMBOL(cnss_get_wlan_mac_address); static const struct of_device_id cnss_sdio_dt_match[] = { {.compatible = "qcom,cnss_sdio"}, {} Loading
include/net/cnss.h +0 −12 Original line number Diff line number Diff line Loading @@ -122,7 +122,6 @@ extern int cnss_get_fw_files(struct cnss_fw_files *pfw_files); extern int cnss_get_fw_files_for_target(struct cnss_fw_files *pfw_files, u32 target_type, u32 target_version); extern int cnss_request_bus_bandwidth(int bandwidth); extern int cnss_get_sha_hash(const u8 *data, u32 data_len, u8 *hash_idx, u8 *out); extern void *cnss_get_fw_ptr(void); Loading @@ -136,10 +135,6 @@ extern int cnss_wlan_pm_control(bool vote); extern void cnss_lock_pm_sem(void); extern void cnss_release_pm_sem(void); extern void cnss_request_pm_qos_type(int latency_type, u32 qos_val); extern void cnss_request_pm_qos(u32 qos_val); extern void cnss_remove_pm_qos(void); extern void cnss_pci_request_pm_qos_type(int latency_type, u32 qos_val); extern void cnss_pci_request_pm_qos(u32 qos_val); extern void cnss_pci_remove_pm_qos(void); Loading Loading @@ -173,14 +168,7 @@ extern int cnss_pm_runtime_request(struct device *dev, enum extern void cnss_pm_wake_lock_init(struct wakeup_source *ws, const char *name); extern void cnss_pm_wake_lock(struct wakeup_source *ws); extern void cnss_device_crashed(void); extern void cnss_device_self_recovery(void); extern void *cnss_get_virt_ramdump_mem(unsigned long *size); extern void cnss_schedule_recovery_work(void); extern int cnss_pcie_set_wlan_mac_address(const u8 *in, uint32_t len); extern u8 *cnss_get_wlan_mac_address(struct device *dev, uint32_t *num); extern int cnss_sdio_set_wlan_mac_address(const u8 *in, uint32_t len); enum { CNSS_RESET_SOC = 0, Loading