diff options
author | Baruch Siach <baruch@tkos.co.il> | 2010-01-25 12:58:20 +0200 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2010-01-26 18:54:06 +0100 |
commit | 828df43f139c7fbf0d505c7b9a666d321a0f2c25 (patch) | |
tree | 7b347b084da6499dd937ffc8a4d920d55d2fbe28 /arch/arm/mach-mx25/clock.c | |
parent | fadc095622dd188cae88eb2f3ff28fd6e9d2d2f1 (diff) | |
download | talos-obmc-linux-828df43f139c7fbf0d505c7b9a666d321a0f2c25.tar.gz talos-obmc-linux-828df43f139c7fbf0d505c7b9a666d321a0f2c25.zip |
mx25: properly initialize clocks
This patch disables all unnecessary clock in mx25_clocks_init() to make a clean
start, the same as is being done for the rest of the i.MX chips.
This patch was tested on i.MX25 PDK.
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'arch/arm/mach-mx25/clock.c')
-rw-r--r-- | arch/arm/mach-mx25/clock.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/arch/arm/mach-mx25/clock.c b/arch/arm/mach-mx25/clock.c index abd303bc3bf2..08aaa38f1f1f 100644 --- a/arch/arm/mach-mx25/clock.c +++ b/arch/arm/mach-mx25/clock.c @@ -218,6 +218,14 @@ int __init mx25_clocks_init(void) for (i = 0; i < ARRAY_SIZE(lookups); i++) clkdev_add(&lookups[i]); + /* Turn off all clocks except the ones we need to survive, namely: + * EMI, GPIO1-3 (CCM_CGCR1[18:16]), GPT1, IOMUXC (CCM_CGCR1[27]), IIM, + * SCC + */ + __raw_writel((1 << 19), CRM_BASE + CCM_CGCR0); + __raw_writel((0xf << 16) | (3 << 26), CRM_BASE + CCM_CGCR1); + __raw_writel((1 << 5), CRM_BASE + CCM_CGCR2); + mxc_timer_init(&gpt_clk, MX25_IO_ADDRESS(MX25_GPT1_BASE_ADDR), 54); return 0; |