Merge "wcnss: Fix access to WCNSS register before enabling clock"
diff --git a/drivers/net/wireless/wcnss/wcnss_vreg.c b/drivers/net/wireless/wcnss/wcnss_vreg.c
index 6a315d2..0aa9677 100644
--- a/drivers/net/wireless/wcnss/wcnss_vreg.c
+++ b/drivers/net/wireless/wcnss/wcnss_vreg.c
@@ -156,8 +156,15 @@
 			goto fail;
 		}
 
-		/* power on thru SSR should not set NV bit,
-		 * during SSR, NV bin is downloaded by WLAN driver
+		/* Enable IRIS XO */
+		rc = clk_prepare_enable(clk);
+		if (rc) {
+			pr_err("clk enable failed\n");
+			goto fail;
+		}
+		/* NV bit is set to indicate that platform driver is capable
+		 * of doing NV download. SSR should not set NV bit; during
+		 * SSR NV bin is downloaded by WLAN driver.
 		 */
 		if (!wcnss_cold_boot_done()) {
 			pr_debug("wcnss: Indicate NV bin download\n");
@@ -168,13 +175,6 @@
 		}
 
 		pmu_conf_reg = msm_wcnss_base + pmu_offset;
-
-		/* Enable IRIS XO */
-		rc = clk_prepare_enable(clk);
-		if (rc) {
-			pr_err("clk enable failed\n");
-			goto fail;
-		}
 		writel_relaxed(0, pmu_conf_reg);
 		reg = readl_relaxed(pmu_conf_reg);
 		reg |= WCNSS_PMU_CFG_GC_BUS_MUX_SEL_TOP |