1*4882a593Smuzhiyun /* SPDX-License-Identifier: GPL-2.0-or-later */ 2*4882a593Smuzhiyun /* 3*4882a593Smuzhiyun * OpenRISC Linux 4*4882a593Smuzhiyun * 5*4882a593Smuzhiyun * Linux architectural port borrowing liberally from similar works of 6*4882a593Smuzhiyun * others. All original copyrights apply as per the original source 7*4882a593Smuzhiyun * declaration. 8*4882a593Smuzhiyun * 9*4882a593Smuzhiyun * OpenRISC implementation: 10*4882a593Smuzhiyun * Copyright (C) 2010-2011 Jonas Bonn <jonas@southpole.se> 11*4882a593Smuzhiyun */ 12*4882a593Smuzhiyun 13*4882a593Smuzhiyun #ifndef __ASM_OPENRISC_TIMEX_H 14*4882a593Smuzhiyun #define __ASM_OPENRISC_TIMEX_H 15*4882a593Smuzhiyun 16*4882a593Smuzhiyun #define get_cycles get_cycles 17*4882a593Smuzhiyun 18*4882a593Smuzhiyun #include <asm-generic/timex.h> 19*4882a593Smuzhiyun #include <asm/spr.h> 20*4882a593Smuzhiyun #include <asm/spr_defs.h> 21*4882a593Smuzhiyun get_cycles(void)22*4882a593Smuzhiyunstatic inline cycles_t get_cycles(void) 23*4882a593Smuzhiyun { 24*4882a593Smuzhiyun return mfspr(SPR_TTCR); 25*4882a593Smuzhiyun } 26*4882a593Smuzhiyun #define get_cycles get_cycles 27*4882a593Smuzhiyun 28*4882a593Smuzhiyun /* This isn't really used any more */ 29*4882a593Smuzhiyun #define CLOCK_TICK_RATE 1000 30*4882a593Smuzhiyun 31*4882a593Smuzhiyun #define ARCH_HAS_READ_CURRENT_TIMER 32*4882a593Smuzhiyun 33*4882a593Smuzhiyun #endif 34