diff options
author | Rajasekaran Kalidoss <rkalidos@codeaurora.org> | 2019-01-21 13:27:48 +0530 |
---|---|---|
committer | Gerrit - the friendly Code Review server <code-review@localhost> | 2019-03-25 20:33:25 -0700 |
commit | 9ccdcef08733fd335433167841fa631127adadc3 (patch) | |
tree | 41d1cd17d6f77e3bd412f70f2c451d04e6a6a1eb /drivers | |
parent | 6543b0a4ad9ae3888e889ff3b6196e351c77aaa2 (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.c | 13 |
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", |