18c2ecf20Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 */ 28c2ecf20Sopenharmony_ci/* 38c2ecf20Sopenharmony_ci * Copyright (C) 2020 SiFive 48c2ecf20Sopenharmony_ci */ 58c2ecf20Sopenharmony_ci 68c2ecf20Sopenharmony_ci#ifndef _ASM_RISCV_CACHEINFO_H 78c2ecf20Sopenharmony_ci#define _ASM_RISCV_CACHEINFO_H 88c2ecf20Sopenharmony_ci 98c2ecf20Sopenharmony_ci#include <linux/cacheinfo.h> 108c2ecf20Sopenharmony_ci 118c2ecf20Sopenharmony_cistruct riscv_cacheinfo_ops { 128c2ecf20Sopenharmony_ci const struct attribute_group * (*get_priv_group)(struct cacheinfo 138c2ecf20Sopenharmony_ci *this_leaf); 148c2ecf20Sopenharmony_ci}; 158c2ecf20Sopenharmony_ci 168c2ecf20Sopenharmony_civoid riscv_set_cacheinfo_ops(struct riscv_cacheinfo_ops *ops); 178c2ecf20Sopenharmony_ciuintptr_t get_cache_size(u32 level, enum cache_type type); 188c2ecf20Sopenharmony_ciuintptr_t get_cache_geometry(u32 level, enum cache_type type); 198c2ecf20Sopenharmony_ci 208c2ecf20Sopenharmony_ci#endif /* _ASM_RISCV_CACHEINFO_H */ 21