aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-davinci/include
diff options
context:
space:
mode:
authorSekhar Nori <nsekhar@ti.com>2009-09-22 11:44:01 -0400
committerKevin Hilman <khilman@deeprootsystems.com>2009-11-25 13:21:29 -0500
commit683b1e1f0e6f7b2690c0ce76751ba8f26f0235c6 (patch)
tree2b8c1c9cc6067ee1dfca8d9bd9af188f6dd22193 /arch/arm/mach-davinci/include
parent6601b8030de3e9c29930684eeac15302a59f991a (diff)
davinci: DA850/OMAP-L138: add frequency scaling support
Adds basic frequency scaling support for DA850/OMAP-L138. Currently, frequency scaling only on PLL0 is supported. No scaling of PLL1 as yet. Peripherals like MMC/SD which have a clock input synchronous with ARM clock will not work well since the clock will change behind their backs. Support for notification to such devices to adjust themselves to the new frequency will be added in later patches. Current defconfigs keep CPUFreq disabled so it will not affect normal operation. The OPP defintions assume clock input of 24MHz to the SoC. This is inline with hardcoding of input frequency in the <soc>.c files. At some point this will need to move into board dependent code as new boards appear with a different reference clock. Tested on OMAP-L138 EVM with ondemand governer and a shell script to vary processor load. Signed-off-by: Sekhar Nori <nsekhar@ti.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
Diffstat (limited to 'arch/arm/mach-davinci/include')
-rw-r--r--arch/arm/mach-davinci/include/mach/da8xx.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/arm/mach-davinci/include/mach/da8xx.h b/arch/arm/mach-davinci/include/mach/da8xx.h
index 3b7527324bf4..401bf93fd32f 100644
--- a/arch/arm/mach-davinci/include/mach/da8xx.h
+++ b/arch/arm/mach-davinci/include/mach/da8xx.h
@@ -37,6 +37,7 @@ extern void __iomem *da8xx_syscfg_base;
37#define DA8XX_SYSCFG_BASE (IO_PHYS + 0x14000) 37#define DA8XX_SYSCFG_BASE (IO_PHYS + 0x14000)
38#define DA8XX_SYSCFG_VIRT(x) (da8xx_syscfg_base + (x)) 38#define DA8XX_SYSCFG_VIRT(x) (da8xx_syscfg_base + (x))
39#define DA8XX_JTAG_ID_REG 0x18 39#define DA8XX_JTAG_ID_REG 0x18
40#define DA8XX_CFGCHIP0_REG 0x17c
40#define DA8XX_CFGCHIP2_REG 0x184 41#define DA8XX_CFGCHIP2_REG 0x184
41#define DA8XX_CFGCHIP3_REG 0x188 42#define DA8XX_CFGCHIP3_REG 0x188
42 43
@@ -85,6 +86,7 @@ int da8xx_register_lcdc(struct da8xx_lcdc_platform_data *pdata);
85int da8xx_register_mmcsd0(struct davinci_mmc_config *config); 86int da8xx_register_mmcsd0(struct davinci_mmc_config *config);
86void __init da8xx_register_mcasp(int id, struct snd_platform_data *pdata); 87void __init da8xx_register_mcasp(int id, struct snd_platform_data *pdata);
87int da8xx_register_rtc(void); 88int da8xx_register_rtc(void);
89int da850_register_cpufreq(void);
88 90
89extern struct platform_device da8xx_serial_device; 91extern struct platform_device da8xx_serial_device;
90extern struct emac_platform_data da8xx_emac_pdata; 92extern struct emac_platform_data da8xx_emac_pdata;