| /* |
| * Copyright (c) 2020-2022, MediaTek Inc. All rights reserved. |
| * |
| * SPDX-License-Identifier: BSD-3-Clause |
| */ |
| |
| #ifndef MT_TIMER_H |
| #define MT_TIMER_H |
| |
| #define SYSTIMER_BASE (0x10017000) |
| #define CNTCR_REG (SYSTIMER_BASE + 0x0) |
| #define CNTSR_REG (SYSTIMER_BASE + 0x4) |
| #define CNTSYS_L_REG (SYSTIMER_BASE + 0x8) |
| #define CNTSYS_H_REG (SYSTIMER_BASE + 0xc) |
| #define CNTWACR_REG (SYSTIMER_BASE + 0x10) |
| #define CNTRACR_REG (SYSTIMER_BASE + 0x14) |
| |
| #define TIEO_EN (1 << 3) |
| #define COMP_15_EN (1 << 10) |
| #define COMP_20_EN (1 << 11) |
| #define COMP_25_EN (1 << 12) |
| |
| #define COMP_FEATURE_MASK (COMP_15_EN | COMP_20_EN | COMP_25_EN | TIEO_EN) |
| #define COMP_15_MASK (COMP_15_EN) |
| #define COMP_20_MASK (COMP_20_EN | TIEO_EN) |
| #define COMP_25_MASK (COMP_20_EN | COMP_25_EN) |
| |
| #define CNT_WRITE_ACCESS_CTL_MASK (0x3FFFFF0U) |
| #define CNT_READ_ACCESS_CTL_MASK (0x3FFFFFFU) |
| |
| void sched_clock_init(uint64_t normal_base, uint64_t atf_base); |
| uint64_t sched_clock(void); |
| int mt_systimer_init(void); |
| |
| #endif /* MT_TIMER_H */ |