SyterKit 0.4.0.x
SyterKit is a bare-metal framework
Loading...
Searching...
No Matches
cache.h
Go to the documentation of this file.
1
8/* SPDX-License-Identifier: GPL-2.0+ */
9
10#ifndef __CACHE_H__
11#define __CACHE_H__
12
13#include <stdint.h>
14#include "barrier.h"
15#include "csr.h"
16
23void cache_init(void);
24
31void dcache_enable(void);
32
39void icache_enable(void);
40
50void flush_dcache_range(uint64_t start, uint64_t end);
51
63
71void flush_dcache_all();
72
81
82#endif /* __CACHE_H__ */
static void invalidate_dcache_all()
Invalidate the entire data cache.
Definition cache.h:218
static void flush_dcache_range(uint64_t start, uint64_t end)
Flush a range of addresses from the data cache.
Definition cache.h:173
static void invalidate_dcache_range(uint64_t start, uint64_t end)
Invalidate a range of addresses in the data cache.
Definition cache.h:193
static void flush_dcache_all()
Flush (clean) the entire data cache.
Definition cache.h:213
u64_t uint64_t
Definition stdint.h:16
Memory barrier definitions for RISC-V architecture.
void cache_init(void)
Initialize the cache configuration.
Definition cache.c:190
void dcache_enable(void)
Enable the data cache.
Definition cache.c:201
void icache_enable(void)
Enable the instruction cache.
Definition cache.c:211