Skip to content

Commit

Permalink
[ARM] 4790/1: S3C2412: Fix parent selection for msysclk.
Browse files Browse the repository at this point in the history
The msysclk clock was checking for the wrong PLL for the
parent in s3c2412_setparent_msysclk(), trying the UPLL instead
of the MPLL output.

Also ensure the mpll and fclks are at the same rate at init time.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
  • Loading branch information
Ben Dooks authored and Russell King committed Jan 28, 2008
1 parent e95f52c commit cca851d
Show file tree
Hide file tree
Showing 2 changed files with 3 additions and 1 deletion.
2 changes: 1 addition & 1 deletion arch/arm/mach-s3c2412/clock.c
Original file line number Diff line number Diff line change
Expand Up @@ -217,7 +217,7 @@ static int s3c2412_setparent_msysclk(struct clk *clk, struct clk *parent)

if (parent == &clk_mdivclk)
clksrc &= ~S3C2412_CLKSRC_MSYSCLK_MPLL;
else if (parent == &clk_upll)
else if (parent == &clk_mpll)
clksrc |= S3C2412_CLKSRC_MSYSCLK_MPLL;
else
return -EINVAL;
Expand Down
2 changes: 2 additions & 0 deletions arch/arm/mach-s3c2412/s3c2412.c
Original file line number Diff line number Diff line change
Expand Up @@ -168,6 +168,8 @@ void __init s3c2412_init_clocks(int xtal)

fclk = s3c2410_get_pll(__raw_readl(S3C2410_MPLLCON), xtal*2);

clk_mpll.rate = fclk;

tmp = __raw_readl(S3C2410_CLKDIVN);

/* work out clock scalings */
Expand Down

0 comments on commit cca851d

Please sign in to comment.