]> git.karo-electronics.de Git - linux-beck.git/commitdiff
ARM: clps711x: Switch CLPS711X subarch to use cpuidle driver
authorAlexander Shiyan <shc_work@mail.ru>
Thu, 19 Jun 2014 15:26:35 +0000 (19:26 +0400)
committerOlof Johansson <olof@lixom.net>
Sun, 6 Jul 2014 23:52:15 +0000 (16:52 -0700)
This patch removes old support for cpuidle and switches all current
users to use new cpuidle driver.

Signed-off-by: Alexander Shiyan <shc_work@mail.ru>
Signed-off-by: Olof Johansson <olof@lixom.net>
arch/arm/mach-clps711x/board-autcpu12.c
arch/arm/mach-clps711x/board-cdb89712.c
arch/arm/mach-clps711x/board-clep7312.c
arch/arm/mach-clps711x/board-edb7211.c
arch/arm/mach-clps711x/board-p720t.c
arch/arm/mach-clps711x/common.c
arch/arm/mach-clps711x/common.h
arch/arm/mach-clps711x/devices.c

index d62ca16d53942e9a69db041261d79e4be3217e6f..45abf6bd5f689f2d98b6f9f0a5fb8aafa5c763aa 100644 (file)
@@ -266,7 +266,6 @@ MACHINE_START(AUTCPU12, "autronix autcpu12")
        /* Maintainer: Thomas Gleixner */
        .atag_offset    = 0x20000,
        .map_io         = clps711x_map_io,
-       .init_early     = clps711x_init_early,
        .init_irq       = clps711x_init_irq,
        .init_time      = clps711x_timer_init,
        .init_machine   = autcpu12_init,
index e261a47f2aff276ac60cc8d6dd3daa627fbb2d45..1ec378c334e5ccdb3e37d1b2230e38227e17e5f0 100644 (file)
@@ -140,7 +140,6 @@ MACHINE_START(CDB89712, "Cirrus-CDB89712")
        /* Maintainer: Ray Lehtiniemi */
        .atag_offset    = 0x100,
        .map_io         = clps711x_map_io,
-       .init_early     = clps711x_init_early,
        .init_irq       = clps711x_init_irq,
        .init_time      = clps711x_timer_init,
        .init_machine   = cdb89712_init,
index 94a7add88a3f10a8a83bfc63f367194c3a0fce7d..b33ba2116ec4bf9597e20c1c86b5760c6aab15bc 100644 (file)
@@ -37,7 +37,6 @@ MACHINE_START(CLEP7212, "Cirrus Logic 7212/7312")
        .atag_offset    = 0x0100,
        .fixup          = fixup_clep7312,
        .map_io         = clps711x_map_io,
-       .init_early     = clps711x_init_early,
        .init_irq       = clps711x_init_irq,
        .init_time      = clps711x_timer_init,
        .restart        = clps711x_restart,
index f9828f89972a164e4cb1782ac93e7d3031a66cac..7ad94ff1da2820ec8019389a1c9e92c84bd8a698 100644 (file)
@@ -178,7 +178,6 @@ MACHINE_START(EDB7211, "CL-EDB7211 (EP7211 eval board)")
        .fixup          = fixup_edb7211,
        .reserve        = edb7211_reserve,
        .map_io         = clps711x_map_io,
-       .init_early     = clps711x_init_early,
        .init_irq       = clps711x_init_irq,
        .init_time      = clps711x_timer_init,
        .init_machine   = edb7211_init,
index 0cf0e51e6546a1e8d1cdee52ef18c269701638e7..b9937676b6befa49b470098d5c4c9498ece21478 100644 (file)
@@ -365,7 +365,6 @@ MACHINE_START(P720T, "ARM-Prospector720T")
        .atag_offset    = 0x100,
        .fixup          = fixup_p720t,
        .map_io         = clps711x_map_io,
-       .init_early     = clps711x_init_early,
        .init_irq       = clps711x_init_irq,
        .init_time      = clps711x_timer_init,
        .init_machine   = p720t_init,
index aee81fa46ccfc4454e5ed9d1082a853965100c97..2a6323b157824410fa6f6d165d7f81724c999f90 100644 (file)
@@ -193,15 +193,3 @@ void clps711x_restart(enum reboot_mode mode, const char *cmd)
 {
        soft_restart(0);
 }
-
-static void clps711x_idle(void)
-{
-       clps_writel(1, HALT);
-       asm("mov r0, r0");
-       asm("mov r0, r0");
-}
-
-void __init clps711x_init_early(void)
-{
-       arm_pm_idle = clps711x_idle;
-}
index 7489139d5d632f312e5ef13c41b357e761d70706..f8818996389840c3ae952b9b2743e83cd109f8f0 100644 (file)
@@ -13,7 +13,6 @@ extern void clps711x_map_io(void);
 extern void clps711x_init_irq(void);
 extern void clps711x_timer_init(void);
 extern void clps711x_restart(enum reboot_mode mode, const char *cmd);
-extern void clps711x_init_early(void);
 
 /* drivers/irqchip/irq-clps711x.c */
 void clps711x_intc_init(phys_addr_t, resource_size_t);
index 2001488a5ef24b4831889946309bcae16d684166..0c689d3a6710a28de506957727d95dde71a41c04 100644 (file)
 
 #include <mach/hardware.h>
 
+static const struct resource clps711x_cpuidle_res __initconst =
+       DEFINE_RES_MEM(CLPS711X_PHYS_BASE + HALT, SZ_128);
+
+static void __init clps711x_add_cpuidle(void)
+{
+       platform_device_register_simple("clps711x-cpuidle", PLATFORM_DEVID_NONE,
+                                       &clps711x_cpuidle_res, 1);
+}
+
 static const phys_addr_t clps711x_gpios[][2] __initconst = {
        { PADR, PADDR },
        { PBDR, PBDDR },
@@ -83,6 +92,7 @@ static void __init clps711x_add_uart(void)
 
 void __init clps711x_devices_init(void)
 {
+       clps711x_add_cpuidle();
        clps711x_add_gpio();
        clps711x_add_syscon();
        clps711x_add_uart();