1 /*
2  * The MPU local timer source file. In OMAP4, both cortex-a9 cores have
3  * own timer in it's MPU domain. These timers will be driving the
4  * linux kernel SMP tick framework when active. These timers are not
5  * part of the wake up domain.
6  *
7  * Copyright (C) 2009 Texas Instruments, Inc.
8  *
9  * Author:
10  *      Santosh Shilimkar <santosh.shilimkar@ti.com>
11  *
12  * This file is based on arm realview smp platform file.
13  * Copyright (C) 2002 ARM Ltd.
14  *
15  * This program is free software; you can redistribute it and/or modify
16  * it under the terms of the GNU General Public License version 2 as
17  * published by the Free Software Foundation.
18  */
19 #include <linux/init.h>
20 #include <linux/smp.h>
21 #include <linux/clockchips.h>
22 #include <asm/irq.h>
23 #include <asm/smp_twd.h>
24 #include <asm/localtimer.h>
25 
26 /*
27  * Setup the local clock events for a CPU.
28  */
local_timer_setup(struct clock_event_device * evt)29 int __cpuinit local_timer_setup(struct clock_event_device *evt)
30 {
31 	/* Local timers are not supprted on OMAP4430 ES1.0 */
32 	if (omap_rev() == OMAP4430_REV_ES1_0)
33 		return -ENXIO;
34 
35 	evt->irq = OMAP44XX_IRQ_LOCALTIMER;
36 	twd_timer_setup(evt);
37 	return 0;
38 }
39 
40