diff options
| author | Ferry Zhou <tianguiz@codeaurora.org> | 2018-01-22 16:11:58 +0800 |
|---|---|---|
| committer | Ferry Zhou <tianguiz@codeaurora.org> | 2018-03-26 16:44:09 +0800 |
| commit | eceef732d8154c2c9c3090860997474c9d36e5ac (patch) | |
| tree | d317af215f32abb8c726f09c28403bf0f04a6e1a /include/net | |
| parent | 70a1e9b6257c74c0891e420cdccfd4717516cd86 (diff) | |
cnss2: msm: Enable WLAN over PCIe for GVM
The hypervisor does not support PCI_MSM, and uses PCI_HOST_GENERIC
instead. After this change, the cnss2/PCIe for WLAN in metal case
depends on PCI_MSM, while in GVM case depends on PCI_HOST_GENERIC.
Currently, the WLAN chip is powered up by hypervisor. So, just
bypass power related code.
Change-Id: Icf13fb11c5e18f6e48746fe82f1b4392559dd5b0
Signed-off-by: Ferry Zhou <tianguiz@codeaurora.org>
Diffstat (limited to 'include/net')
| -rw-r--r-- | include/net/cnss2.h | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/include/net/cnss2.h b/include/net/cnss2.h index ca2de6013a36..053114979a87 100644 --- a/include/net/cnss2.h +++ b/include/net/cnss2.h @@ -1,4 +1,4 @@ -/* Copyright (c) 2016-2017, The Linux Foundation. All rights reserved. +/* Copyright (c) 2016-2018, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and @@ -146,7 +146,19 @@ enum cnss_recovery_reason { extern int cnss_wlan_register_driver(struct cnss_wlan_driver *driver); extern void cnss_wlan_unregister_driver(struct cnss_wlan_driver *driver); extern void cnss_device_crashed(struct device *dev); +#ifdef CONFIG_PCI_MSM extern int cnss_pci_link_down(struct device *dev); +extern int cnss_wlan_pm_control(struct device *dev, bool vote); +#else /* CONFIG_PCI_MSM */ +static inline int cnss_pci_link_down(struct device *dev) +{ + return 0; +} +static inline int cnss_wlan_pm_control(struct device *dev, bool vote) +{ + return 0; +} +#endif /* CONFIG_PCI_MSM */ extern void cnss_schedule_recovery(struct device *dev, enum cnss_recovery_reason reason); extern int cnss_self_recovery(struct device *dev, @@ -166,7 +178,6 @@ extern void cnss_request_pm_qos(struct device *dev, u32 qos_val); extern void cnss_remove_pm_qos(struct device *dev); extern void cnss_lock_pm_sem(struct device *dev); extern void cnss_release_pm_sem(struct device *dev); -extern int cnss_wlan_pm_control(struct device *dev, bool vote); extern int cnss_auto_suspend(struct device *dev); extern int cnss_auto_resume(struct device *dev); extern int cnss_get_user_msi_assignment(struct device *dev, char *user_name, |
