((PLL_ALPHA_VAL_U(p) - PLL_ALPHA_VAL(p) == 4) ? \
                                 ALPHA_REG_BITWIDTH : ALPHA_REG_16BIT_WIDTH)
 
+#define pll_has_64bit_config(p)        ((PLL_CONFIG_CTL_U(p) - PLL_CONFIG_CTL(p)) == 4)
+
 #define to_clk_alpha_pll(_hw) container_of(to_clk_regmap(_hw), \
                                           struct clk_alpha_pll, clkr)
 
        regmap_write(regmap, PLL_L_VAL(pll), config->l);
        regmap_write(regmap, PLL_ALPHA_VAL(pll), config->alpha);
        regmap_write(regmap, PLL_CONFIG_CTL(pll), config->config_ctl_val);
-       regmap_write(regmap, PLL_CONFIG_CTL_U(pll), config->config_ctl_hi_val);
+
+       if (pll_has_64bit_config(pll))
+               regmap_write(regmap, PLL_CONFIG_CTL_U(pll),
+                            config->config_ctl_hi_val);
 
        val = config->main_output_mask;
        val |= config->aux_output_mask;