|
@@ -793,9 +793,13 @@ static int wl18xx_set_clk(struct wl1271 *wl)
|
|
|
ret = wl18xx_top_reg_write(wl, PLLSH_WCS_PLL_P_FACTOR_CFG_2,
|
|
|
(wl18xx_clk_table[clk_freq].p >> 16) &
|
|
|
PLLSH_WCS_PLL_P_FACTOR_CFG_2_MASK);
|
|
|
+ if (ret < 0)
|
|
|
+ goto out;
|
|
|
} else {
|
|
|
ret = wl18xx_top_reg_write(wl, PLLSH_WCS_PLL_SWALLOW_EN,
|
|
|
PLLSH_WCS_PLL_SWALLOW_EN_VAL2);
|
|
|
+ if (ret < 0)
|
|
|
+ goto out;
|
|
|
}
|
|
|
|
|
|
/* choose WCS PLL */
|
|
@@ -819,8 +823,6 @@ static int wl18xx_set_clk(struct wl1271 *wl)
|
|
|
/* reset the swallowing logic */
|
|
|
ret = wl18xx_top_reg_write(wl, PLLSH_COEX_PLL_SWALLOW_EN,
|
|
|
PLLSH_COEX_PLL_SWALLOW_EN_VAL2);
|
|
|
- if (ret < 0)
|
|
|
- goto out;
|
|
|
|
|
|
out:
|
|
|
return ret;
|