Zephyr API
4.4.99
A Scalable Open Source RTOS
Toggle main menu visibility
Loading...
Searching...
No Matches
cache.h
Go to the documentation of this file.
1
/*
2
* Copyright 2021 Carlo Caione <
[email protected]
>
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
24
25
#ifdef __cplusplus
26
extern
"C"
{
27
#endif
28
29
#if defined(CONFIG_DCACHE)
30
36
void
cache_data_enable
(
void
);
37
43
void
cache_data_disable
(
void
);
44
53
int
cache_data_flush_all
(
void
);
54
63
int
cache_data_invd_all
(
void
);
64
73
int
cache_data_flush_and_invd_all
(
void
);
74
93
int
cache_data_flush_range
(
void
*addr,
size_t
size);
94
114
int
cache_data_invd_range
(
void
*addr,
size_t
size);
115
135
int
cache_data_flush_and_invd_range
(
void
*addr,
size_t
size);
136
137
#if defined(CONFIG_DCACHE_LINE_SIZE_DETECT)
151
size_t
cache_data_line_size_get
(
void
);
152
153
#endif
/* CONFIG_DCACHE_LINE_SIZE_DETECT */
154
155
#endif
/* CONFIG_DCACHE */
156
157
#if defined(CONFIG_ICACHE)
158
164
void
cache_instr_enable
(
void
);
165
171
void
cache_instr_disable
(
void
);
172
181
int
cache_instr_flush_all
(
void
);
182
191
int
cache_instr_invd_all
(
void
);
192
201
int
cache_instr_flush_and_invd_all
(
void
);
202
221
int
cache_instr_flush_range
(
void
*addr,
size_t
size);
222
242
int
cache_instr_invd_range
(
void
*addr,
size_t
size);
243
263
int
cache_instr_flush_and_invd_range
(
void
*addr,
size_t
size);
264
265
#ifdef CONFIG_ICACHE_LINE_SIZE_DETECT
279
size_t
cache_instr_line_size_get
(
void
);
280
281
#endif
/* CONFIG_ICACHE_LINE_SIZE_DETECT */
282
283
#endif
/* CONFIG_ICACHE */
284
285
#ifdef __cplusplus
286
}
287
#endif
288
292
293
#endif
/* ZEPHYR_INCLUDE_DRIVERS_CACHE_H_ */
cache_instr_invd_all
#define cache_instr_invd_all
Definition
cache.h:229
cache_instr_disable
#define cache_instr_disable
Definition
cache.h:203
cache_instr_flush_all
#define cache_instr_flush_all
Definition
cache.h:216
cache_data_flush_and_invd_range
#define cache_data_flush_and_invd_range(addr, size)
Definition
cache.h:159
cache_instr_invd_range
#define cache_instr_invd_range(addr, size)
Definition
cache.h:289
cache_instr_flush_and_invd_all
#define cache_instr_flush_and_invd_all
Definition
cache.h:242
cache_instr_enable
#define cache_instr_enable
Definition
cache.h:194
cache_instr_flush_range
#define cache_instr_flush_range(addr, size)
Definition
cache.h:265
cache_data_invd_range
#define cache_data_invd_range(addr, size)
Definition
cache.h:134
cache_instr_flush_and_invd_range
#define cache_instr_flush_and_invd_range(addr, size)
Definition
cache.h:313
cache_data_invd_all
#define cache_data_invd_all
Definition
cache.h:74
cache_data_flush_range
#define cache_data_flush_range(addr, size)
Definition
cache.h:110
cache_data_flush_and_invd_all
#define cache_data_flush_and_invd_all
Definition
cache.h:87
cache_data_flush_all
#define cache_data_flush_all
Definition
cache.h:61
cache_data_enable
#define cache_data_enable
Definition
cache.h:39
cache_instr_line_size_get
#define cache_instr_line_size_get
Definition
cache.h:334
cache_data_disable
#define cache_data_disable
Definition
cache.h:48
cache_data_line_size_get
#define cache_data_line_size_get
Definition
cache.h:179
zephyr
drivers
cache.h
Generated on
for Zephyr API by
1.17.0