From 5641e5789e99558bd3515ec28027f8d950bf18a0 Mon Sep 17 00:00:00 2001 From: Fugang Duan Date: Thu, 10 Nov 2011 15:58:13 +0800 Subject: [PATCH] ENGR00159982-1 [MX6] : Fix FEC get clock rate function. - The clock formula has error, fix the get clock rate for FEC module. Signed-off-by: Fugang Duan --- arch/arm/mach-mx6/clock.c | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/arch/arm/mach-mx6/clock.c b/arch/arm/mach-mx6/clock.c index f5c7ba08af24..a0db56dca5f7 100644 --- a/arch/arm/mach-mx6/clock.c +++ b/arch/arm/mach-mx6/clock.c @@ -3394,7 +3394,22 @@ static unsigned long _clk_enet_get_rate(struct clk *clk) div = (__raw_readl(PLL8_ENET_BASE_ADDR)) & ANADIG_PLL_ENET_DIV_SELECT_MASK; - return 500000000 / (div + 1); + switch (div) { + case 0: + div = 20; + break; + case 1: + div = 10; + break; + case 3: + div = 5; + break; + case 4: + div = 4; + break; + } + + return 500000000 / div; } static struct clk enet_clk[] = { -- 2.39.5