Commit 98e182a26bbbf5575457622337684ef61493e864

Authored by Tony Lindgren
1 parent aa56188998

omap2+: Remove gptimer_wakeup for now

This removes the support for setting the wake-up timer for debugging.

Later on we can reserve gptimer1 for PM code only and have similar
functionality.

Signed-off-by: Tony Lindgren <tony@atomide.com>
Reviewed-by: Kevin Hilman <khilman@ti.com>

Showing 5 changed files with 1 additions and 46 deletions Side-by-side Diff

arch/arm/mach-omap2/pm-debug.c
... ... @@ -31,7 +31,6 @@
31 31 #include <plat/board.h>
32 32 #include "powerdomain.h"
33 33 #include "clockdomain.h"
34   -#include <plat/dmtimer.h>
35 34 #include <plat/omap-pm.h>
36 35  
37 36 #include "cm2xxx_3xxx.h"
... ... @@ -41,8 +40,6 @@
41 40 int omap2_pm_debug;
42 41 u32 enable_off_mode;
43 42 u32 sleep_while_idle;
44   -u32 wakeup_timer_seconds;
45   -u32 wakeup_timer_milliseconds;
46 43  
47 44 #define DUMP_PRM_MOD_REG(mod, reg) \
48 45 regs[reg_count].name = #mod "." #reg; \
... ... @@ -162,23 +159,6 @@
162 159 printk(KERN_INFO "%-20s: 0x%08x\n", regs[i].name, regs[i].val);
163 160 }
164 161  
165   -void omap2_pm_wakeup_on_timer(u32 seconds, u32 milliseconds)
166   -{
167   - u32 tick_rate, cycles;
168   -
169   - if (!seconds && !milliseconds)
170   - return;
171   -
172   - tick_rate = clk_get_rate(omap_dm_timer_get_fclk(gptimer_wakeup));
173   - cycles = tick_rate * seconds + tick_rate * milliseconds / 1000;
174   - omap_dm_timer_stop(gptimer_wakeup);
175   - omap_dm_timer_set_load_start(gptimer_wakeup, 0, 0xffffffff - cycles);
176   -
177   - pr_info("PM: Resume timer in %u.%03u secs"
178   - " (%d ticks at %d ticks/sec.)\n",
179   - seconds, milliseconds, cycles, tick_rate);
180   -}
181   -
182 162 #ifdef CONFIG_DEBUG_FS
183 163 #include <linux/debugfs.h>
184 164 #include <linux/seq_file.h>
... ... @@ -576,9 +556,6 @@
576 556 {
577 557 u32 *option = data;
578 558  
579   - if (option == &wakeup_timer_milliseconds && val >= 1000)
580   - return -EINVAL;
581   -
582 559 *option = val;
583 560  
584 561 if (option == &enable_off_mode) {
... ... @@ -641,11 +618,6 @@
641 618 &enable_off_mode, &pm_dbg_option_fops);
642 619 (void) debugfs_create_file("sleep_while_idle", S_IRUGO | S_IWUSR, d,
643 620 &sleep_while_idle, &pm_dbg_option_fops);
644   - (void) debugfs_create_file("wakeup_timer_seconds", S_IRUGO | S_IWUSR, d,
645   - &wakeup_timer_seconds, &pm_dbg_option_fops);
646   - (void) debugfs_create_file("wakeup_timer_milliseconds",
647   - S_IRUGO | S_IWUSR, d, &wakeup_timer_milliseconds,
648   - &pm_dbg_option_fops);
649 621 pm_dbg_init_done = 1;
650 622  
651 623 return 0;
arch/arm/mach-omap2/pm.h
... ... @@ -60,19 +60,13 @@
60 60 extern int omap3_pm_get_suspend_state(struct powerdomain *pwrdm);
61 61 extern int omap3_pm_set_suspend_state(struct powerdomain *pwrdm, int state);
62 62  
63   -extern u32 wakeup_timer_seconds;
64   -extern u32 wakeup_timer_milliseconds;
65   -extern struct omap_dm_timer *gptimer_wakeup;
66   -
67 63 #ifdef CONFIG_PM_DEBUG
68 64 extern void omap2_pm_dump(int mode, int resume, unsigned int us);
69   -extern void omap2_pm_wakeup_on_timer(u32 seconds, u32 milliseconds);
70 65 extern int omap2_pm_debug;
71 66 extern u32 enable_off_mode;
72 67 extern u32 sleep_while_idle;
73 68 #else
74 69 #define omap2_pm_dump(mode, resume, us) do {} while (0);
75   -#define omap2_pm_wakeup_on_timer(seconds, milliseconds) do {} while (0);
76 70 #define omap2_pm_debug 0
77 71 #define enable_off_mode 0
78 72 #define sleep_while_idle 0
arch/arm/mach-omap2/pm34xx.c
... ... @@ -534,10 +534,6 @@
534 534 struct power_state *pwrst;
535 535 int state, ret = 0;
536 536  
537   - if (wakeup_timer_seconds || wakeup_timer_milliseconds)
538   - omap2_pm_wakeup_on_timer(wakeup_timer_seconds,
539   - wakeup_timer_milliseconds);
540   -
541 537 /* Read current next_pwrsts */
542 538 list_for_each_entry(pwrst, &pwrst_list, node)
543 539 pwrst->saved_state = pwrdm_read_next_pwrst(pwrst->pwrdm);
arch/arm/mach-omap2/timer-gp.c
... ... @@ -72,11 +72,9 @@
72 72 /* Clockevent code */
73 73  
74 74 static struct omap_dm_timer clkev;
75   -static struct omap_dm_timer *gptimer;
76 75 static struct clock_event_device clockevent_gpt;
77 76 static u8 __initdata gptimer_id = 1;
78 77 static u8 __initdata inited;
79   -struct omap_dm_timer *gptimer_wakeup;
80 78  
81 79 static irqreturn_t omap2_gp_timer_interrupt(int irq, void *dev_id)
82 80 {
... ... @@ -218,10 +216,6 @@
218 216  
219 217 timer->reserved = 1;
220 218  
221   - gptimer = omap_dm_timer_request_specific(gptimer_id);
222   - BUG_ON(gptimer == NULL);
223   - gptimer_wakeup = gptimer;
224   -
225 219 return res;
226 220 }
227 221  
... ... @@ -235,7 +229,7 @@
235 229 res = omap_dm_timer_init_one(&clkev, gptimer_id, fck_source);
236 230 BUG_ON(res);
237 231  
238   - omap2_gp_timer_irq.dev_id = (void *)gptimer;
  232 + omap2_gp_timer_irq.dev_id = (void *)&clkev;
239 233 setup_irq(clkev.irq, &omap2_gp_timer_irq);
240 234  
241 235 __omap_dm_timer_int_enable(clkev.io_base, OMAP_TIMER_INT_OVERFLOW);
arch/arm/plat-omap/include/plat/dmtimer.h
... ... @@ -59,7 +59,6 @@
59 59 */
60 60 #define OMAP_TIMER_IP_VERSION_1 0x1
61 61 struct omap_dm_timer;
62   -extern struct omap_dm_timer *gptimer_wakeup;
63 62 struct clk;
64 63  
65 64 int omap_dm_timer_init(void);