Merge "icnss: Top level reset if clocks are dead"

This commit is contained in:
Linux Build Service Account 2016-09-17 12:59:52 -07:00 committed by Gerrit - the friendly Code Review server
commit c93a92750e

View file

@ -1320,7 +1320,7 @@ int icnss_hw_reset(struct icnss_priv *priv)
MPM_WCSSAON_CONFIG_FORCE_ACTIVE, 1);
icnss_hw_poll_reg_field(priv->mem_base_va, SR_WCSSAON_SR_LSB_OFFSET,
SR_WCSSAON_SR_LSB_RETENTION_STATUS, 1, 100,
SR_WCSSAON_SR_LSB_RETENTION_STATUS, 1, 200,
ICNSS_HW_REG_RETRY);
for (i = 0; i < ICNSS_HW_REG_RETRY; i++) {
@ -1348,11 +1348,13 @@ int icnss_hw_reset(struct icnss_priv *priv)
}
if (i >= ICNSS_HW_REG_RETRY)
ICNSS_ASSERT(false);
goto top_level_reset;
icnss_hw_write_reg_field(priv->mpm_config_va, MPM_WCSSAON_CONFIG_OFFSET,
MPM_WCSSAON_CONFIG_DISCONNECT_CLR, 0x1);
usleep_range(200, 300);
icnss_hw_reset_wlan_ss_power_down(priv);
icnss_hw_reset_common_ss_power_down(priv);