regmap_update_bits(wcd->regmap, WCD934X_ANA_RCO,
                                   WCD934X_ANA_RCO_BG_EN_MASK, 0);
                usleep_range(100, 110);
-       } else if (sido_src == SIDO_SOURCE_RCO_BG) {
-               regmap_update_bits(wcd->regmap, WCD934X_ANA_RCO,
-                                  WCD934X_ANA_RCO_BG_EN_MASK,
-                                  WCD934X_ANA_RCO_BG_ENABLE);
-               usleep_range(100, 110);
                regmap_update_bits(wcd->regmap, WCD934X_ANA_BUCK_CTL,
                                   WCD934X_ANA_BUCK_PRE_EN1_MASK,
                                   WCD934X_ANA_BUCK_PRE_EN1_ENABLE);
                                   WCD934X_ANA_BUCK_HI_ACCU_EN_MASK,
                                   WCD934X_ANA_BUCK_HI_ACCU_ENABLE);
                usleep_range(100, 110);
+       } else if (sido_src == SIDO_SOURCE_RCO_BG) {
+               regmap_update_bits(wcd->regmap, WCD934X_ANA_RCO,
+                                  WCD934X_ANA_RCO_BG_EN_MASK,
+                                  WCD934X_ANA_RCO_BG_ENABLE);
+               usleep_range(100, 110);
        }
        wcd->sido_input_src = sido_src;