Zephyr API Documentation 4.4.99
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
cache.h
Go to the documentation of this file.
1/*
2 * Copyright 2021 Carlo Caione <ccaione@baylibre.com>
3 *
4 * SPDX-License-Identifier: Apache-2.0
5 */
6
12
13#ifndef ZEPHYR_INCLUDE_DRIVERS_CACHE_H_
14#define ZEPHYR_INCLUDE_DRIVERS_CACHE_H_
15
16#include <stddef.h>
17
26
27#ifdef __cplusplus
28extern "C" {
29#endif
30
39
48
60
72
84
105int cache_data_flush_range(void *addr, size_t size);
106
128int cache_data_invd_range(void *addr, size_t size);
129
151int cache_data_flush_and_invd_range(void *addr, size_t size);
152
169
178
187
199
211
223
244int cache_instr_flush_range(void *addr, size_t size);
245
267int cache_instr_invd_range(void *addr, size_t size);
268
290int cache_instr_flush_and_invd_range(void *addr, size_t size);
291
308
309#ifdef __cplusplus
310}
311#endif
312
316
317#endif /* ZEPHYR_INCLUDE_DRIVERS_CACHE_H_ */
#define cache_instr_invd_all
Definition cache.h:229
#define cache_instr_disable
Definition cache.h:203
#define cache_instr_flush_all
Definition cache.h:216
#define cache_data_flush_and_invd_range(addr, size)
Definition cache.h:159
#define cache_instr_invd_range(addr, size)
Definition cache.h:289
#define cache_instr_flush_and_invd_all
Definition cache.h:242
#define cache_instr_enable
Definition cache.h:194
#define cache_instr_flush_range(addr, size)
Definition cache.h:265
#define cache_data_invd_range(addr, size)
Definition cache.h:134
#define cache_instr_flush_and_invd_range(addr, size)
Definition cache.h:313
#define cache_data_flush_range(addr, size)
Definition cache.h:110
size_t cache_instr_line_size_get(void)
Get the i-cache line size.
int cache_data_flush_and_invd_all(void)
Flush and Invalidate the d-cache.
size_t cache_data_line_size_get(void)
Get the d-cache line size.
void cache_data_enable(void)
Enable the d-cache.
void cache_data_disable(void)
Disable the d-cache.
int cache_data_flush_all(void)
Flush the d-cache.
int cache_data_invd_all(void)
Invalidate the d-cache.