Zephyr Project API  3.2.0
A Scalable Open Source RTOS
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
7#ifndef ZEPHYR_INCLUDE_DRIVERS_CACHE_H_
8#define ZEPHYR_INCLUDE_DRIVERS_CACHE_H_
9
10#include <zephyr/cache.h>
11
12#if defined(CONFIG_DCACHE)
13
19void cache_data_enable(void);
20
26void cache_data_disable(void);
27
39int cache_data_all(int op);
40
59int cache_data_range(void *addr, size_t size, int op);
60
61#if defined(CONFIG_DCACHE_LINE_SIZE_DETECT)
70size_t cache_data_line_size_get(void);
71
72#endif /* CONFIG_DCACHE_LINE_SIZE_DETECT */
73
74#endif /* CONFIG_DCACHE */
75
76#if defined(CONFIG_ICACHE)
82void cache_instr_enable(void);
83
89void cache_instr_disable(void);
90
102int cache_instr_all(int op);
103
122int cache_instr_range(void *addr, size_t size, int op);
123
124#ifdef CONFIG_ICACHE_LINE_SIZE_DETECT
133size_t cache_instr_line_size_get(void);
134
135#endif /* CONFIG_ICACHE_LINE_SIZE_DETECT */
136
137#endif /* CONFIG_ICACHE */
138
139#endif /* ZEPHYR_INCLUDE_DRIVERS_CACHE_H_ */