07787a85c0
On OMAP4430 ES1.0 the local timers are gated by security. Enable the CONFIG_LOCAL_TIMERS for omap2plus build and handle the OMAP4430 es1.0 exception case. This patch has dependency on the first patch in this series. ARM: smp: Select local timers vs dummy timer support runtime Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com> Acked-by: Tony Lindgren <tony@atomide.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
39 lines
1.1 KiB
C
39 lines
1.1 KiB
C
/*
|
|
* The MPU local timer source file. In OMAP4, both cortex-a9 cores have
|
|
* own timer in it's MPU domain. These timers will be driving the
|
|
* linux kernel SMP tick framework when active. These timers are not
|
|
* part of the wake up domain.
|
|
*
|
|
* Copyright (C) 2009 Texas Instruments, Inc.
|
|
*
|
|
* Author:
|
|
* Santosh Shilimkar <santosh.shilimkar@ti.com>
|
|
*
|
|
* This file is based on arm realview smp platform file.
|
|
* Copyright (C) 2002 ARM Ltd.
|
|
*
|
|
* This program is free software; you can redistribute it and/or modify
|
|
* it under the terms of the GNU General Public License version 2 as
|
|
* published by the Free Software Foundation.
|
|
*/
|
|
#include <linux/init.h>
|
|
#include <linux/smp.h>
|
|
#include <linux/clockchips.h>
|
|
#include <asm/irq.h>
|
|
#include <asm/smp_twd.h>
|
|
#include <asm/localtimer.h>
|
|
|
|
/*
|
|
* Setup the local clock events for a CPU.
|
|
*/
|
|
int __cpuinit local_timer_setup(struct clock_event_device *evt)
|
|
{
|
|
/* Local timers are not supprted on OMAP4430 ES1.0 */
|
|
if (omap_rev() == OMAP4430_REV_ES1_0)
|
|
return -ENXIO;
|
|
|
|
evt->irq = OMAP44XX_IRQ_LOCALTIMER;
|
|
twd_timer_setup(evt);
|
|
return 0;
|
|
}
|
|
|