On 06/18/2015 12:54 PM, Viresh Kumar wrote:
Migrate tegra20 driver to the new 'set-state' interface provided by clockevents core, the earlier 'set-mode' interface is marked obsolete now.
This also enables us to implement callbacks for new states of clockevent devices, for example: ONESHOT_STOPPED.
Cc: Thierry Reding treding@nvidia.com Cc: Stephen Warren swarren@wwwdotorg.org Signed-off-by: Viresh Kumar viresh.kumar@linaro.org
[ ... ]
+static int tegra_timer_shutdown(struct clock_event_device *evt) {
- u32 reg;
- timer_writel(0, TIMER3_BASE + TIMER_PTV);
- return 0;
+}
- switch (mode) {
- case CLOCK_EVT_MODE_PERIODIC:
reg = 0xC0000000 | ((1000000/HZ)-1);
timer_writel(reg, TIMER3_BASE + TIMER_PTV);
break;
- case CLOCK_EVT_MODE_ONESHOT:
break;
- case CLOCK_EVT_MODE_UNUSED:
- case CLOCK_EVT_MODE_SHUTDOWN:
- case CLOCK_EVT_MODE_RESUME:
break;
- }
+static int tegra_timer_set_periodic(struct clock_event_device *evt) +{
- u32 reg = 0xC0000000 | ((1000000 / HZ) - 1);
- timer_writel(0, TIMER3_BASE + TIMER_PTV);
Replace with 'tegra_timer_shutdown'
- timer_writel(reg, TIMER3_BASE + TIMER_PTV);
- return 0; }