| 
									
										
										
										
											2005-04-16 15:20:36 -07:00
										 |  |  | /*
 | 
					
						
							| 
									
										
										
										
											2008-08-02 10:55:55 +01:00
										 |  |  |  * arch/arm/include/asm/mach/time.h | 
					
						
							| 
									
										
										
										
											2005-04-16 15:20:36 -07:00
										 |  |  |  * | 
					
						
							|  |  |  |  * Copyright (C) 2004 MontaVista Software, Inc. | 
					
						
							|  |  |  |  * | 
					
						
							|  |  |  |  * 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. | 
					
						
							|  |  |  |  */ | 
					
						
							|  |  |  | #ifndef __ASM_ARM_MACH_TIME_H
 | 
					
						
							|  |  |  | #define __ASM_ARM_MACH_TIME_H
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #include <linux/sysdev.h>
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | /*
 | 
					
						
							|  |  |  |  * This is our kernel timer structure. | 
					
						
							|  |  |  |  * | 
					
						
							|  |  |  |  * - init | 
					
						
							|  |  |  |  *   Initialise the kernels jiffy timer source, claim interrupt | 
					
						
							|  |  |  |  *   using setup_irq.  This is called early on during initialisation | 
					
						
							|  |  |  |  *   while interrupts are still disabled on the local CPU. | 
					
						
							|  |  |  |  * - suspend | 
					
						
							|  |  |  |  *   Suspend the kernel jiffy timer source, if necessary.  This | 
					
						
							|  |  |  |  *   is called with interrupts disabled, after all normal devices | 
					
						
							|  |  |  |  *   have been suspended.  If no action is required, set this to | 
					
						
							|  |  |  |  *   NULL. | 
					
						
							|  |  |  |  * - resume | 
					
						
							|  |  |  |  *   Resume the kernel jiffy timer source, if necessary.  This | 
					
						
							|  |  |  |  *   is called with interrupts disabled before any normal devices | 
					
						
							|  |  |  |  *   are resumed.  If no action is required, set this to NULL. | 
					
						
							|  |  |  |  * - offset | 
					
						
							|  |  |  |  *   Return the timer offset in microseconds since the last timer | 
					
						
							|  |  |  |  *   interrupt.  Note: this must take account of any unprocessed | 
					
						
							|  |  |  |  *   timer interrupt which may be pending. | 
					
						
							|  |  |  |  */ | 
					
						
							|  |  |  | struct sys_timer { | 
					
						
							|  |  |  | 	struct sys_device	dev; | 
					
						
							|  |  |  | 	void			(*init)(void); | 
					
						
							|  |  |  | 	void			(*suspend)(void); | 
					
						
							|  |  |  | 	void			(*resume)(void); | 
					
						
							| 
									
										
										
										
											2010-03-24 00:22:36 +00:00
										 |  |  | #ifdef CONFIG_ARCH_USES_GETTIMEOFFSET
 | 
					
						
							| 
									
										
										
										
											2005-04-16 15:20:36 -07:00
										 |  |  | 	unsigned long		(*offset)(void); | 
					
						
							| 
									
										
										
										
											2006-09-22 00:16:30 +01:00
										 |  |  | #endif
 | 
					
						
							| 
									
										
										
										
											2005-04-16 15:20:36 -07:00
										 |  |  | }; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | extern struct sys_timer *system_timer; | 
					
						
							| 
									
										
										
										
											2006-10-06 10:53:39 -07:00
										 |  |  | extern void timer_tick(void); | 
					
						
							| 
									
										
										
										
											2005-04-16 15:20:36 -07:00
										 |  |  | 
 | 
					
						
							|  |  |  | #endif
 |