Skip to content
Snippets Groups Projects
timer.c 553 B
Newer Older
  • Learn to ignore specific revisions
  • Alexey Brodkin's avatar
    Alexey Brodkin committed
    /*
     * 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);
    }