Loading drivers/net/wireless/wcnss/wcnss_vreg.c +15 −0 Original line number Diff line number Diff line Loading @@ -47,6 +47,8 @@ static int auto_detect; #define WCNSS_PMU_CFG_GC_BUS_MUX_SEL_TOP BIT(5) #define WCNSS_PMU_CFG_IRIS_XO_CFG_STS BIT(6) /* 1: in progress, 0: done */ #define WCNSS_PMU_CFG_IRIS_RESET BIT(7) #define WCNSS_PMU_CFG_IRIS_RESET_STS BIT(8) /* 1: in progress, 0: done */ #define WCNSS_PMU_CFG_IRIS_XO_READ BIT(9) #define WCNSS_PMU_CFG_IRIS_XO_READ_STS BIT(10) Loading Loading @@ -277,6 +279,19 @@ configure_iris_xo(struct device *dev, writel_relaxed(reg, pmu_conf_reg); /* Reset IRIS */ reg |= WCNSS_PMU_CFG_IRIS_RESET; writel_relaxed(reg, pmu_conf_reg); /* Wait for PMU_CFG.iris_reg_reset_sts */ while (readl_relaxed(pmu_conf_reg) & WCNSS_PMU_CFG_IRIS_RESET_STS) cpu_relax(); /* Reset iris reset bit */ reg &= ~WCNSS_PMU_CFG_IRIS_RESET; writel_relaxed(reg, pmu_conf_reg); /* Start IRIS XO configuration */ reg |= WCNSS_PMU_CFG_IRIS_XO_CFG; writel_relaxed(reg, pmu_conf_reg); Loading Loading
drivers/net/wireless/wcnss/wcnss_vreg.c +15 −0 Original line number Diff line number Diff line Loading @@ -47,6 +47,8 @@ static int auto_detect; #define WCNSS_PMU_CFG_GC_BUS_MUX_SEL_TOP BIT(5) #define WCNSS_PMU_CFG_IRIS_XO_CFG_STS BIT(6) /* 1: in progress, 0: done */ #define WCNSS_PMU_CFG_IRIS_RESET BIT(7) #define WCNSS_PMU_CFG_IRIS_RESET_STS BIT(8) /* 1: in progress, 0: done */ #define WCNSS_PMU_CFG_IRIS_XO_READ BIT(9) #define WCNSS_PMU_CFG_IRIS_XO_READ_STS BIT(10) Loading Loading @@ -277,6 +279,19 @@ configure_iris_xo(struct device *dev, writel_relaxed(reg, pmu_conf_reg); /* Reset IRIS */ reg |= WCNSS_PMU_CFG_IRIS_RESET; writel_relaxed(reg, pmu_conf_reg); /* Wait for PMU_CFG.iris_reg_reset_sts */ while (readl_relaxed(pmu_conf_reg) & WCNSS_PMU_CFG_IRIS_RESET_STS) cpu_relax(); /* Reset iris reset bit */ reg &= ~WCNSS_PMU_CFG_IRIS_RESET; writel_relaxed(reg, pmu_conf_reg); /* Start IRIS XO configuration */ reg |= WCNSS_PMU_CFG_IRIS_XO_CFG; writel_relaxed(reg, pmu_conf_reg); Loading