2018-05-06 21:58:06 +00:00
|
|
|
/* SPDX-License-Identifier: GPL-2.0+ */
|
2014-11-18 18:42:22 +00:00
|
|
|
/*
|
2017-10-23 07:53:59 +00:00
|
|
|
* Copyright (C) 2014, STMicroelectronics - All Rights Reserved
|
|
|
|
* Author(s): Vikas Manocha, <vikas.manocha@st.com> for STMicroelectronics.
|
2014-11-18 18:42:22 +00:00
|
|
|
*/
|
|
|
|
|
|
|
|
#ifndef _STV0991_GPT_H
|
|
|
|
#define _STV0991_GPT_H
|
|
|
|
|
|
|
|
#include <asm/arch-stv0991/hardware.h>
|
|
|
|
|
|
|
|
struct gpt_regs {
|
|
|
|
u32 cr1;
|
|
|
|
u32 cr2;
|
|
|
|
u32 reserved_1;
|
|
|
|
u32 dier; /* dma_int_en */
|
|
|
|
u32 sr; /* status reg */
|
|
|
|
u32 egr; /* event gen */
|
|
|
|
u32 reserved_2[3]; /* offset 0x18--0x20*/
|
|
|
|
u32 cnt;
|
|
|
|
u32 psc;
|
|
|
|
u32 arr;
|
|
|
|
};
|
|
|
|
|
|
|
|
struct gpt_regs *const gpt1_regs_ptr =
|
|
|
|
(struct gpt_regs *) GPTIMER1_BASE_ADDR;
|
|
|
|
|
|
|
|
/* Timer control1 register */
|
|
|
|
#define GPT_CR1_CEN 0x0001
|
|
|
|
#define GPT_MODE_AUTO_RELOAD (1 << 7)
|
|
|
|
|
|
|
|
/* Timer prescalar reg */
|
|
|
|
#define GPT_PRESCALER_128 0x128
|
|
|
|
|
|
|
|
/* Auto reload register for free running config */
|
|
|
|
#define GPT_FREE_RUNNING 0xFFFF
|
|
|
|
|
|
|
|
/* Timer, HZ specific defines */
|
|
|
|
#define CONFIG_STV0991_HZ 1000
|
|
|
|
#define CONFIG_STV0991_HZ_CLOCK (27*1000*1000)/GPT_PRESCALER_128
|
|
|
|
|
|
|
|
#endif
|