summaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorRajasekaran Kalidoss <rkalidos@codeaurora.org>2019-01-21 13:27:48 +0530
committerGerrit - the friendly Code Review server <code-review@localhost>2019-03-25 20:33:25 -0700
commit9ccdcef08733fd335433167841fa631127adadc3 (patch)
tree41d1cd17d6f77e3bd412f70f2c451d04e6a6a1eb /drivers
parent6543b0a4ad9ae3888e889ff3b6196e351c77aaa2 (diff)
cnss2: Add QCN7605 USB for cold boot cal via fs_ready
For triggering cold boot via fs_ready, the device ID and bus type of QCN7605 USB was added in fs_ready and cold boot cal start and done handlers. Change-Id: I28801207c7833af18a09819cd9ab07ede556ac87 Signed-off-by: Rajasekaran Kalidoss <rkalidos@codeaurora.org>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/net/wireless/cnss2/main.c13
1 files changed, 11 insertions, 2 deletions
diff --git a/drivers/net/wireless/cnss2/main.c b/drivers/net/wireless/cnss2/main.c
index 66a7f4694d96..df65c97b3257 100644
--- a/drivers/net/wireless/cnss2/main.c
+++ b/drivers/net/wireless/cnss2/main.c
@@ -1201,9 +1201,15 @@ out:
static int cnss_cold_boot_cal_start_hdlr(struct cnss_plat_data *plat_priv)
{
int ret = 0;
+ bool pwr_up_reqd = false;
set_bit(CNSS_COLD_BOOT_CAL, &plat_priv->driver_state);
- ret = cnss_bus_dev_powerup(plat_priv);
+ if (test_bit(CNSS_DEV_REMOVED, &plat_priv->driver_state))
+ pwr_up_reqd = true;
+
+ if (pwr_up_reqd || plat_priv->bus_type != CNSS_BUS_USB)
+ ret = cnss_bus_dev_powerup(plat_priv);
+
if (ret)
clear_bit(CNSS_COLD_BOOT_CAL, &plat_priv->driver_state);
@@ -1214,7 +1220,8 @@ static int cnss_cold_boot_cal_done_hdlr(struct cnss_plat_data *plat_priv)
{
plat_priv->cal_done = true;
cnss_wlfw_wlan_mode_send_sync(plat_priv, QMI_WLFW_OFF_V01);
- if (plat_priv->device_id == QCN7605_DEVICE_ID)
+ if (plat_priv->device_id == QCN7605_DEVICE_ID ||
+ plat_priv->bus_type == CNSS_BUS_USB)
goto skip_shutdown;
cnss_bus_dev_shutdown(plat_priv);
@@ -1677,6 +1684,8 @@ static ssize_t cnss_fs_ready_store(struct device *dev,
case QCA6290_EMULATION_DEVICE_ID:
case QCA6290_DEVICE_ID:
case QCN7605_DEVICE_ID:
+ case QCN7605_COMPOSITE_DEVICE_ID:
+ case QCN7605_STANDALONE_DEVICE_ID:
break;
default:
cnss_pr_err("Not supported for device ID 0x%lx\n",