diff options
| author | Paul Zhang <paulz@codeaurora.org> | 2017-05-23 13:27:04 +0800 |
|---|---|---|
| committer | Gerrit - the friendly Code Review server <code-review@localhost> | 2017-05-24 05:53:23 -0700 |
| commit | e184fd8d1558c4bd5d9ea71650d73b2cdeb504f3 (patch) | |
| tree | 18e17c3cd6ab206c9330303428828af3364b0268 /drivers/soc | |
| parent | 60be71604a84d2e047215cb702d6324379a353bb (diff) | |
cnss: save the cc source to platform driver
There is a design limitation in host driver. Driver
sends regulatory_hint_user for both user-space and
11d country to kernel. So when wiphy re-registration
happens, kernel tells the source as USER even for 11d.
And per driver logic the 11d needs to be disabled
if INI gCountryCodePriority is set.
To mitigate this issue, storing the country source
in the platform driver.
CRs-Fixed: 2051651
Change-Id: I335a046a886ac3ce35cf96eb71231bfe75d33c60
Signed-off-by: Paul Zhang <paulz@codeaurora.org>
Diffstat (limited to 'drivers/soc')
| -rw-r--r-- | drivers/soc/qcom/icnss.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/drivers/soc/qcom/icnss.c b/drivers/soc/qcom/icnss.c index 8c242bc7a702..92dc7a352ad9 100644 --- a/drivers/soc/qcom/icnss.c +++ b/drivers/soc/qcom/icnss.c @@ -366,6 +366,8 @@ static struct icnss_priv { bool bypass_s1_smmu; } *penv; +static enum cnss_cc_src cnss_cc_source = CNSS_SOURCE_CORE; + #ifdef CONFIG_ICNSS_DEBUG static void icnss_ignore_qmi_timeout(bool ignore) { @@ -939,6 +941,18 @@ static int icnss_hw_power_off(struct icnss_priv *priv) return ret; } +void cnss_set_cc_source(enum cnss_cc_src cc_source) +{ + cnss_cc_source = cc_source; +} +EXPORT_SYMBOL(cnss_set_cc_source); + +enum cnss_cc_src cnss_get_cc_source(void) +{ + return cnss_cc_source; +} +EXPORT_SYMBOL(cnss_get_cc_source); + int icnss_power_on(struct device *dev) { struct icnss_priv *priv = dev_get_drvdata(dev); |
