blob: 4eedf3644b1ef20e5c1ae1b9dcf2704966968952 [file] [log] [blame]
/********************************************************************************
* Marvell GPL License Option
*
* If you received this File from Marvell, you may opt to use, redistribute and/or
* modify this File in accordance with the terms and conditions of the General
* Public License Version 2, June 1991 (the "GPL License"), a copy of which is
* available along with the File in the license.txt file or by writing to the Free
* Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 or
* on the worldwide web at http://www.gnu.org/licenses/gpl.txt.
*
* THE FILE IS DISTRIBUTED AS-IS, WITHOUT WARRANTY OF ANY KIND, AND THE IMPLIED
* WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE ARE EXPRESSLY
* DISCLAIMED. The GPL License provides additional details about this warranty
* disclaimer.
******************************************************************************/
#ifndef __APB_TIMER_H__
#define __APB_TIMER_H__
#define APD_TIMER_1_LOADCOUNT 0x00
#define APB_TIMER_1_CURRENTVALUE 0x04
#define APB_TIMER_1_CONTROLREG 0x08
#define APB_TIMER_1_EOI 0x0C
#define APB_TIMER_1_INTSTATUS 0x10
#define APD_TIMER_REG_RANGE 0x14
/**********************************************************************************************
* the offset of APB_TIMER_N_xxxx is derived from APD_TIMER_REG_RANGE*(N-1) + APD_TIMER_xxx
**********************************************************************************************/
#define APB_TIMERS_INTSTATUS 0xA0
#define APB_TIMERS_EOI 0xA4
#define APB_TIMERS_RAW_INTSTSTUS 0xA8
#define APB_TIMERS_COMP_VERSION 0xAC
#define bTimer_Enable 1 /*bit*/
#define LSbTimer_Enable 0
#define bTimer_Mode 1
#define LSbTimer_Mode 1
#define bTimer_Interrupt_Mask 1
#define LSbTimer_Interrupt_Mask 2
#define TIMER_FREE_RUN_MODE 0
#define TIMER_USR_DEFINED_MODE 1
void TIMERx_SetControlReg(unsigned int timer_N, unsigned int mask, unsigned int enable, unsigned int mode);
unsigned int TIMERx_GetCurrentValue(unsigned int timer_N);
void TIMERx_SetLoadCount(unsigned int timer_N, unsigned int count_val);
void TIMERx_SetIntEn(unsigned int timer_N, unsigned int enable);
#endif // __APB_TIMER_H__