|
@@ -33,6 +33,11 @@ const struct keystone_pll_regs keystone_pll_regs[] = {
|
|
|
[DDR3B_PLL] = {KS2_DDR3BPLLCTL0, KS2_DDR3BPLLCTL1},
|
|
|
};
|
|
|
|
|
|
+inline void pll_pa_clk_sel(void)
|
|
|
+{
|
|
|
+ setbits_le32(keystone_pll_regs[PASS_PLL].reg1, CFG_PLLCTL1_PAPLL_MASK);
|
|
|
+}
|
|
|
+
|
|
|
static void wait_for_completion(const struct pll_init_data *data)
|
|
|
{
|
|
|
int i;
|
|
@@ -180,9 +185,8 @@ void configure_secondary_pll(const struct pll_init_data *data)
|
|
|
sdelay(21000);
|
|
|
|
|
|
/* Select the Output of PASS PLL as input to PASS */
|
|
|
- if (data->pll == PASS_PLL)
|
|
|
- setbits_le32(keystone_pll_regs[data->pll].reg1,
|
|
|
- CFG_PLLCTL1_PAPLL_MASK);
|
|
|
+ if (data->pll == PASS_PLL && cpu_is_k2hk())
|
|
|
+ pll_pa_clk_sel();
|
|
|
|
|
|
/* Select the Output of ARM PLL as input to ARM */
|
|
|
if (data->pll == TETRIS_PLL)
|