/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (C) 2020 Google, Inc */ #ifndef _ASM_RISCV_CLINT_H #define _ASM_RISCV_CLINT_H #include <linux/types.h> #include <asm/mmio.h> #ifdef CONFIG_RISCV_M_MODE /* * This lives in the CLINT driver, but is accessed directly by timex.h to avoid * any overhead when accessing the MMIO timer. * * The ISA defines mtime as a 64-bit memory-mapped register that increments at * a constant frequency, but it doesn't define some other constraints we depend * on (most notably ordering constraints, but also some simpler stuff like the * memory layout). Thus, this is called "clint_time_val" instead of something * like "riscv_mtime", to signify that these non-ISA assumptions must hold. */ extern u64 __iomem *clint_time_val; #endif #endif