32 lines
		
	
	
	
		
			758 B
			
		
	
	
	
		
			C
		
	
	
	
	
	
		
		
			
		
	
	
			32 lines
		
	
	
	
		
			758 B
			
		
	
	
	
		
			C
		
	
	
	
	
	
|   | /*
 | ||
|  |  * linux/include/asm-alpha/timex.h | ||
|  |  * | ||
|  |  * ALPHA architecture timex specifications | ||
|  |  */ | ||
|  | #ifndef _ASMALPHA_TIMEX_H
 | ||
|  | #define _ASMALPHA_TIMEX_H
 | ||
|  | 
 | ||
|  | /* With only one or two oddballs, we use the RTC as the ticker, selecting
 | ||
|  |    the 32.768kHz reference clock, which nicely divides down to our HZ.  */ | ||
|  | #define CLOCK_TICK_RATE	32768
 | ||
|  | 
 | ||
|  | /*
 | ||
|  |  * Standard way to access the cycle counter. | ||
|  |  * Currently only used on SMP for scheduling. | ||
|  |  * | ||
|  |  * Only the low 32 bits are available as a continuously counting entity.  | ||
|  |  * But this only means we'll force a reschedule every 8 seconds or so, | ||
|  |  * which isn't an evil thing. | ||
|  |  */ | ||
|  | 
 | ||
|  | typedef unsigned int cycles_t; | ||
|  | 
 | ||
|  | static inline cycles_t get_cycles (void) | ||
|  | { | ||
|  | 	cycles_t ret; | ||
|  | 	__asm__ __volatile__ ("rpcc %0" : "=r"(ret)); | ||
|  | 	return ret; | ||
|  | } | ||
|  | 
 | ||
|  | #endif
 |