Before enabling a generated clock whose source is from the UPLL
clock, check and enable the UPLL clock.

Signed-off-by: Wenyou Yang <wenyou.y...@atmel.com>
---

 arch/arm/mach-at91/armv7/clock.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/arch/arm/mach-at91/armv7/clock.c b/arch/arm/mach-at91/armv7/clock.c
index 81e9f69..27372b3 100644
--- a/arch/arm/mach-at91/armv7/clock.c
+++ b/arch/arm/mach-at91/armv7/clock.c
@@ -162,6 +162,11 @@ int at91_enable_periph_generated_clk(u32 id, u32 
clk_source, u32 div)
        if (div > 0xff)
                return -EINVAL;
 
+       if (clk_source == GCK_CSS_UPLL_CLK) {
+               if (at91_upll_clk_enable())
+                       return -ENODEV;
+       }
+
        writel(id, &pmc->pcr);
        regval = readl(&pmc->pcr);
        regval &= ~AT91_PMC_PCR_GCKCSS;
-- 
2.7.4

_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot

Reply via email to