Loading drivers/net/wireless/cnss/cnss.c +15 −0 Original line number Diff line number Diff line Loading @@ -104,6 +104,7 @@ static struct cnss_data { void *subsys_handle; struct esoc_desc *esoc_desc; bool notify_modem_status; struct cnss_platform_cap cap; } *penv; Loading Loading @@ -283,6 +284,7 @@ static int cnss_wlan_get_resources(struct platform_device *pdev) pr_err("%s: vreg initial vote failed\n", __func__); goto err_reg_enable2; } penv->cap.cap_flag |= CNSS_HAS_EXTERNAL_SWREG; } vreg_info->state = VREG_ON; Loading Loading @@ -1276,6 +1278,19 @@ int cnss_request_bus_bandwidth(int bandwidth) } EXPORT_SYMBOL(cnss_request_bus_bandwidth); int cnss_get_platform_cap(struct cnss_platform_cap *cap) { if (!penv) return -ENODEV; if (cap) *cap = penv->cap; return 0; } EXPORT_SYMBOL(cnss_get_platform_cap); module_init(cnss_initialize); module_exit(cnss_exit); Loading include/net/cnss.h +10 −0 Original line number Diff line number Diff line Loading @@ -49,6 +49,15 @@ struct cnss_wlan_driver { const struct pci_device_id *id_table; }; /* platform capabilities */ enum cnss_platform_cap_flag { CNSS_HAS_EXTERNAL_SWREG = 0x01, }; struct cnss_platform_cap { u32 cap_flag; }; 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); Loading @@ -71,5 +80,6 @@ extern void cnss_pm_wake_lock_destroy(struct wakeup_source *ws); extern int cnss_set_cpus_allowed_ptr(struct task_struct *task, ulong cpu); extern void cnss_request_pm_qos(u32 qos_val); extern void cnss_remove_pm_qos(void); extern int cnss_get_platform_cap(struct cnss_platform_cap *cap); #endif /* _NET_CNSS_H_ */ Loading
drivers/net/wireless/cnss/cnss.c +15 −0 Original line number Diff line number Diff line Loading @@ -104,6 +104,7 @@ static struct cnss_data { void *subsys_handle; struct esoc_desc *esoc_desc; bool notify_modem_status; struct cnss_platform_cap cap; } *penv; Loading Loading @@ -283,6 +284,7 @@ static int cnss_wlan_get_resources(struct platform_device *pdev) pr_err("%s: vreg initial vote failed\n", __func__); goto err_reg_enable2; } penv->cap.cap_flag |= CNSS_HAS_EXTERNAL_SWREG; } vreg_info->state = VREG_ON; Loading Loading @@ -1276,6 +1278,19 @@ int cnss_request_bus_bandwidth(int bandwidth) } EXPORT_SYMBOL(cnss_request_bus_bandwidth); int cnss_get_platform_cap(struct cnss_platform_cap *cap) { if (!penv) return -ENODEV; if (cap) *cap = penv->cap; return 0; } EXPORT_SYMBOL(cnss_get_platform_cap); module_init(cnss_initialize); module_exit(cnss_exit); Loading
include/net/cnss.h +10 −0 Original line number Diff line number Diff line Loading @@ -49,6 +49,15 @@ struct cnss_wlan_driver { const struct pci_device_id *id_table; }; /* platform capabilities */ enum cnss_platform_cap_flag { CNSS_HAS_EXTERNAL_SWREG = 0x01, }; struct cnss_platform_cap { u32 cap_flag; }; 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); Loading @@ -71,5 +80,6 @@ extern void cnss_pm_wake_lock_destroy(struct wakeup_source *ws); extern int cnss_set_cpus_allowed_ptr(struct task_struct *task, ulong cpu); extern void cnss_request_pm_qos(u32 qos_val); extern void cnss_remove_pm_qos(void); extern int cnss_get_platform_cap(struct cnss_platform_cap *cap); #endif /* _NET_CNSS_H_ */