提交 8098bb0d 编写于 作者: S stanley.miao 提交者: Tony Lindgren

OMAP3: Fix a cpu type check problem

cpu_is_omap3517() and cpu_is_omap3505() are the subgroups of cpu_is_omap34xx(),
so we should check cpu_is_omap3517() and cpu_is_omap3505() first, then check
cpu_is_omap34xx().

Otherwise, All AM35XX (Sitara) clocks do not get registered and device drivers
(ti_hecc, etc...) that depend on those clocks are failing to get the clock and
end up with non working device.
Signed-off-by: NStanley.Miao <stanley.miao@windriver.com>
Tested-by: NIgor Grinberg <grinberg@compulab.co.il>
Signed-off-by: NTony Lindgren <tony@atomide.com>
上级 77c0870c
...@@ -3417,7 +3417,13 @@ int __init omap3xxx_clk_init(void) ...@@ -3417,7 +3417,13 @@ int __init omap3xxx_clk_init(void)
struct omap_clk *c; struct omap_clk *c;
u32 cpu_clkflg = CK_3XXX; u32 cpu_clkflg = CK_3XXX;
if (cpu_is_omap34xx()) { if (cpu_is_omap3517()) {
cpu_mask = RATE_IN_3XXX | RATE_IN_3430ES2PLUS;
cpu_clkflg |= CK_3517;
} else if (cpu_is_omap3505()) {
cpu_mask = RATE_IN_3XXX | RATE_IN_3430ES2PLUS;
cpu_clkflg |= CK_3505;
} else if (cpu_is_omap34xx()) {
cpu_mask = RATE_IN_3XXX; cpu_mask = RATE_IN_3XXX;
cpu_clkflg |= CK_343X; cpu_clkflg |= CK_343X;
...@@ -3432,12 +3438,6 @@ int __init omap3xxx_clk_init(void) ...@@ -3432,12 +3438,6 @@ int __init omap3xxx_clk_init(void)
cpu_mask |= RATE_IN_3430ES2PLUS; cpu_mask |= RATE_IN_3430ES2PLUS;
cpu_clkflg |= CK_3430ES2; cpu_clkflg |= CK_3430ES2;
} }
} else if (cpu_is_omap3517()) {
cpu_mask = RATE_IN_3XXX | RATE_IN_3430ES2PLUS;
cpu_clkflg |= CK_3517;
} else if (cpu_is_omap3505()) {
cpu_mask = RATE_IN_3XXX | RATE_IN_3430ES2PLUS;
cpu_clkflg |= CK_3505;
} }
if (omap3_has_192mhz_clk()) if (omap3_has_192mhz_clk())
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册