| 123456789101112131415161718192021222324252627282930313233343536 |
- /**************************************************************************//**
- * @file ustimer.h
- * @brief TIMER register definition header file
- *
- * SPDX-License-Identifier: Apache-2.0
- * @copyright (C) 2024-2034 HaiYang Technology Corp. All rights reserved.
- *****************************************************************************/
- #ifndef __US_TIMER_H__
- #define __US_TIMER_H__
-
- #include <linux/types.h>
-
- #define TIMER_BASE (0x03008000UL)
- #define TIMER_VH_OFFSET 32
- #define TIMER_VL_MASK 0xFFFFFFFF
- #define TIMER_VH_MASK 0xFFFFFF
- #define TIMER_IRQ_EN_REG 0x00
- #define TIMER_IRQ_EN(val) (1 << val)
- #define TIMER_IRQ_ST_REG 0x04
- #define TIMER_IRQ_ST(val) (1 << val)
- #define TIMER_CTL_REG(val) (0x10 * val + 0x10)
- #define TIMER_CTL_ENABLE (1 << 0)
- #define TIMER_CTL_AUTORELOAD (1 << 1)
- #define TIMER_CTL_MODE_MASK (1 << 7)
- #define TIMER_CTL_PERIODIC (0 << 7)
- #define TIMER_CTL_ONESHOT (1 << 7)
- #define TIMER_INTVAL_REG(val) (0x10 * val + 0x14)
- #define TIMER_CNTVAL_REG(val) (0x10 * val + 0x18)
- int ustimer_init(void);
- int ustimer_exit(void);
- unsigned long ustimer_get_origin(void);
- #endif
|