aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTony Lindgren <tony@atomide.com>2012-10-29 18:20:45 -0400
committerTony Lindgren <tony@atomide.com>2012-10-31 18:37:13 -0400
commit6e740f9a85339c295af8deb5376511fcb2a268ad (patch)
tree9b411c8d8f56cce80a22ee4e766878861a052b10
parent01480bad0a91413e92077067e38e82ade78dc88a (diff)
ARM: OMAP: Move omap-pm-noop.c local to mach-omap2
This code should be private to mach-omap2. The only use for it in for omap1 has been in dmtimer.c to check for context loss. However, omap1 does not lose context during idle, so the code is not needed. Further, omap1 timer has OMAP_TIMER_ALWON set, so omap1 was not hitting omap_pm_get_dev_context_loss_count() test. Cc: Jon Hunter <jon-hunter@ti.com> Cc: Kevin Hilman <khilman@deeprootsystems.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
-rw-r--r--arch/arm/mach-omap2/Makefile1
-rw-r--r--arch/arm/mach-omap2/omap-pm-noop.c (renamed from arch/arm/plat-omap/omap-pm-noop.c)4
-rw-r--r--arch/arm/mach-omap2/timer.c2
-rw-r--r--arch/arm/plat-omap/Makefile1
-rw-r--r--arch/arm/plat-omap/dmtimer.c17
-rw-r--r--arch/arm/plat-omap/include/plat/dmtimer.h2
-rw-r--r--drivers/media/platform/omap3isp/ispvideo.c1
7 files changed, 17 insertions, 11 deletions
diff --git a/arch/arm/mach-omap2/Makefile b/arch/arm/mach-omap2/Makefile
index e3de5d4a57d6..b118ed5f61a9 100644
--- a/arch/arm/mach-omap2/Makefile
+++ b/arch/arm/mach-omap2/Makefile
@@ -70,6 +70,7 @@ obj-$(CONFIG_ARCH_OMAP4) += pm44xx.o omap-mpuss-lowpower.o
70obj-$(CONFIG_ARCH_OMAP4) += sleep44xx.o 70obj-$(CONFIG_ARCH_OMAP4) += sleep44xx.o
71obj-$(CONFIG_SOC_OMAP5) += omap-mpuss-lowpower.o sleep44xx.o 71obj-$(CONFIG_SOC_OMAP5) += omap-mpuss-lowpower.o sleep44xx.o
72obj-$(CONFIG_PM_DEBUG) += pm-debug.o 72obj-$(CONFIG_PM_DEBUG) += pm-debug.o
73obj-$(CONFIG_OMAP_PM_NOOP) += omap-pm-noop.o
73 74
74obj-$(CONFIG_POWER_AVS_OMAP) += sr_device.o 75obj-$(CONFIG_POWER_AVS_OMAP) += sr_device.o
75obj-$(CONFIG_POWER_AVS_OMAP_CLASS3) += smartreflex-class3.o 76obj-$(CONFIG_POWER_AVS_OMAP_CLASS3) += smartreflex-class3.o
diff --git a/arch/arm/plat-omap/omap-pm-noop.c b/arch/arm/mach-omap2/omap-pm-noop.c
index 198685b894b0..6a3be2bebddb 100644
--- a/arch/arm/plat-omap/omap-pm-noop.c
+++ b/arch/arm/mach-omap2/omap-pm-noop.c
@@ -22,8 +22,8 @@
22#include <linux/device.h> 22#include <linux/device.h>
23#include <linux/platform_device.h> 23#include <linux/platform_device.h>
24 24
25#include "../mach-omap2/omap_device.h" 25#include "omap_device.h"
26#include "../mach-omap2/omap-pm.h" 26#include "omap-pm.h"
27 27
28static bool off_mode_enabled; 28static bool off_mode_enabled;
29static int dummy_context_loss_counter; 29static int dummy_context_loss_counter;
diff --git a/arch/arm/mach-omap2/timer.c b/arch/arm/mach-omap2/timer.c
index 565e5755c9bc..95e447890cd5 100644
--- a/arch/arm/mach-omap2/timer.c
+++ b/arch/arm/mach-omap2/timer.c
@@ -559,6 +559,8 @@ static int __init omap_timer_init(struct omap_hwmod *oh, void *unused)
559 if (timer_dev_attr) 559 if (timer_dev_attr)
560 pdata->timer_capability = timer_dev_attr->timer_capability; 560 pdata->timer_capability = timer_dev_attr->timer_capability;
561 561
562 pdata->get_context_loss_count = omap_pm_get_dev_context_loss_count;
563
562 pdev = omap_device_build(name, id, oh, pdata, sizeof(*pdata), 564 pdev = omap_device_build(name, id, oh, pdata, sizeof(*pdata),
563 NULL, 0, 0); 565 NULL, 0, 0);
564 566
diff --git a/arch/arm/plat-omap/Makefile b/arch/arm/plat-omap/Makefile
index 4bd0ace20e98..50da9bf5d95c 100644
--- a/arch/arm/plat-omap/Makefile
+++ b/arch/arm/plat-omap/Makefile
@@ -19,4 +19,3 @@ obj-y += $(i2c-omap-m) $(i2c-omap-y)
19# OMAP mailbox framework 19# OMAP mailbox framework
20obj-$(CONFIG_OMAP_MBOX_FWK) += mailbox.o 20obj-$(CONFIG_OMAP_MBOX_FWK) += mailbox.o
21 21
22obj-$(CONFIG_OMAP_PM_NOOP) += omap-pm-noop.o
diff --git a/arch/arm/plat-omap/dmtimer.c b/arch/arm/plat-omap/dmtimer.c
index 4a0b30a4ebda..9a0bbc455de7 100644
--- a/arch/arm/plat-omap/dmtimer.c
+++ b/arch/arm/plat-omap/dmtimer.c
@@ -45,8 +45,6 @@
45 45
46#include <mach/hardware.h> 46#include <mach/hardware.h>
47 47
48#include "../mach-omap2/omap-pm.h"
49
50static u32 omap_reserved_systimers; 48static u32 omap_reserved_systimers;
51static LIST_HEAD(omap_timer_list); 49static LIST_HEAD(omap_timer_list);
52static DEFINE_SPINLOCK(dm_timer_lock); 50static DEFINE_SPINLOCK(dm_timer_lock);
@@ -349,7 +347,8 @@ int omap_dm_timer_start(struct omap_dm_timer *timer)
349 omap_dm_timer_enable(timer); 347 omap_dm_timer_enable(timer);
350 348
351 if (!(timer->capability & OMAP_TIMER_ALWON)) { 349 if (!(timer->capability & OMAP_TIMER_ALWON)) {
352 if (omap_pm_get_dev_context_loss_count(&timer->pdev->dev) != 350 if (timer->get_context_loss_count &&
351 timer->get_context_loss_count(&timer->pdev->dev) !=
353 timer->ctx_loss_count) 352 timer->ctx_loss_count)
354 omap_timer_restore_context(timer); 353 omap_timer_restore_context(timer);
355 } 354 }
@@ -378,9 +377,11 @@ int omap_dm_timer_stop(struct omap_dm_timer *timer)
378 377
379 __omap_dm_timer_stop(timer, timer->posted, rate); 378 __omap_dm_timer_stop(timer, timer->posted, rate);
380 379
381 if (!(timer->capability & OMAP_TIMER_ALWON)) 380 if (!(timer->capability & OMAP_TIMER_ALWON)) {
382 timer->ctx_loss_count = 381 if (timer->get_context_loss_count)
383 omap_pm_get_dev_context_loss_count(&timer->pdev->dev); 382 timer->ctx_loss_count =
383 timer->get_context_loss_count(&timer->pdev->dev);
384 }
384 385
385 /* 386 /*
386 * Since the register values are computed and written within 387 * Since the register values are computed and written within
@@ -496,7 +497,8 @@ int omap_dm_timer_set_load_start(struct omap_dm_timer *timer, int autoreload,
496 omap_dm_timer_enable(timer); 497 omap_dm_timer_enable(timer);
497 498
498 if (!(timer->capability & OMAP_TIMER_ALWON)) { 499 if (!(timer->capability & OMAP_TIMER_ALWON)) {
499 if (omap_pm_get_dev_context_loss_count(&timer->pdev->dev) != 500 if (timer->get_context_loss_count &&
501 timer->get_context_loss_count(&timer->pdev->dev) !=
500 timer->ctx_loss_count) 502 timer->ctx_loss_count)
501 omap_timer_restore_context(timer); 503 omap_timer_restore_context(timer);
502 } 504 }
@@ -730,6 +732,7 @@ static int __devinit omap_dm_timer_probe(struct platform_device *pdev)
730 timer->reserved = omap_dm_timer_reserved_systimer(timer->id); 732 timer->reserved = omap_dm_timer_reserved_systimer(timer->id);
731 timer->pdev = pdev; 733 timer->pdev = pdev;
732 timer->capability = pdata->timer_capability; 734 timer->capability = pdata->timer_capability;
735 timer->get_context_loss_count = pdata->get_context_loss_count;
733 736
734 /* Skip pm_runtime_enable for OMAP1 */ 737 /* Skip pm_runtime_enable for OMAP1 */
735 if (!(timer->capability & OMAP_TIMER_NEEDS_RESET)) { 738 if (!(timer->capability & OMAP_TIMER_NEEDS_RESET)) {
diff --git a/arch/arm/plat-omap/include/plat/dmtimer.h b/arch/arm/plat-omap/include/plat/dmtimer.h
index 85868e98c11c..3f5b9cfd9c0b 100644
--- a/arch/arm/plat-omap/include/plat/dmtimer.h
+++ b/arch/arm/plat-omap/include/plat/dmtimer.h
@@ -94,6 +94,7 @@ struct dmtimer_platform_data {
94 /* set_timer_src - Only used for OMAP1 devices */ 94 /* set_timer_src - Only used for OMAP1 devices */
95 int (*set_timer_src)(struct platform_device *pdev, int source); 95 int (*set_timer_src)(struct platform_device *pdev, int source);
96 u32 timer_capability; 96 u32 timer_capability;
97 int (*get_context_loss_count)(struct device *);
97}; 98};
98 99
99int omap_dm_timer_reserve_systimer(int id); 100int omap_dm_timer_reserve_systimer(int id);
@@ -263,6 +264,7 @@ struct omap_dm_timer {
263 unsigned reserved:1; 264 unsigned reserved:1;
264 unsigned posted:1; 265 unsigned posted:1;
265 struct timer_regs context; 266 struct timer_regs context;
267 int (*get_context_loss_count)(struct device *);
266 int ctx_loss_count; 268 int ctx_loss_count;
267 int revision; 269 int revision;
268 u32 capability; 270 u32 capability;
diff --git a/drivers/media/platform/omap3isp/ispvideo.c b/drivers/media/platform/omap3isp/ispvideo.c
index a0b737fecf13..5bd40e6870cc 100644
--- a/drivers/media/platform/omap3isp/ispvideo.c
+++ b/drivers/media/platform/omap3isp/ispvideo.c
@@ -36,7 +36,6 @@
36#include <media/v4l2-ioctl.h> 36#include <media/v4l2-ioctl.h>
37#include <plat/iommu.h> 37#include <plat/iommu.h>
38#include <plat/iovmm.h> 38#include <plat/iovmm.h>
39#include <plat/omap-pm.h>
40 39
41#include "ispvideo.h" 40#include "ispvideo.h"
42#include "isp.h" 41#include "isp.h"