/* | |
* Copyright (C) 2013-2014 Synopsys, Inc. All rights reserved. | |
* | |
* SPDX-License-Identifier: GPL-2.0+ | |
*/ | |
#include <asm/arcregs.h> | |
#define NH_MODE (1 << 1) /* Disable timer if CPU is halted */ | |
int timer_init(void) | |
{ | |
write_aux_reg(ARC_AUX_TIMER0_CTRL, NH_MODE); | |
/* Set max value for counter/timer */ | |
write_aux_reg(ARC_AUX_TIMER0_LIMIT, 0xffffffff); | |
/* Set initial count value and restart counter/timer */ | |
write_aux_reg(ARC_AUX_TIMER0_CNT, 0); | |
return 0; | |
} | |
unsigned long timer_read_counter(void) | |
{ | |
return read_aux_reg(ARC_AUX_TIMER0_CNT); | |
} |