ARM: OSIRIS: CPUFREQ: Add CPU frequency scaling support
authorBen Dooks <ben@simtec.co.uk>
Thu, 30 Jul 2009 22:23:32 +0000 (23:23 +0100)
committerBen Dooks <ben-linux@fluff.org>
Thu, 30 Jul 2009 22:22:53 +0000 (23:22 +0100)
Add CPU frequency scalling support to the Simtec Osiris.

Signed-off-by: Ben Dooks <ben@simtec.co.uk>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
arch/arm/mach-s3c2440/Kconfig
arch/arm/mach-s3c2440/mach-osiris.c

index 3cb12e3..8ae1b28 100644 (file)
@@ -46,6 +46,7 @@ config MACH_OSIRIS
        select PM_SIMTEC if PM
        select S3C24XX_GPIO_EXTRA128
        select S3C2440_XTAL_12000000
+       select S3C2410_IOTIMING if S3C2440_CPUFREQ
        select S3C_DEV_USB_HOST
        help
          Say Y here if you are using the Simtec IM2440D20 module, also
index cba064b..2105a41 100644 (file)
@@ -34,6 +34,7 @@
 #include <asm/irq.h>
 #include <asm/mach-types.h>
 
+#include <plat/cpu-freq.h>
 #include <plat/regs-serial.h>
 #include <mach/regs-gpio.h>
 #include <mach/regs-mem.h>
@@ -351,6 +352,12 @@ static struct clk *osiris_clocks[] __initdata = {
        &s3c24xx_uclk,
 };
 
+static struct s3c_cpufreq_board __initdata osiris_cpufreq = {
+       .refresh        = 7800, /* refresh period is 7.8usec */
+       .auto_io        = 1,
+       .need_io        = 1,
+};
+
 static void __init osiris_map_io(void)
 {
        unsigned long flags;
@@ -402,6 +409,8 @@ static void __init osiris_init(void)
 
        s3c_i2c0_set_platdata(NULL);
 
+       s3c_cpufreq_setboard(&osiris_cpufreq);
+
        i2c_register_board_info(0, osiris_i2c_devs,
                                ARRAY_SIZE(osiris_i2c_devs));