2021-03-28 22:49:05 +02:00
|
|
|
#ifndef OSCACHE_H
|
|
|
|
|
#define OSCACHE_H
|
|
|
|
|
|
|
|
|
|
#include "dolphin/types.h"
|
|
|
|
|
|
2022-08-30 14:22:17 -07:00
|
|
|
#ifdef __cplusplus
|
2021-05-03 02:03:24 +02:00
|
|
|
extern "C" {
|
2022-08-30 14:22:17 -07:00
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
static void DCEnable(void);
|
|
|
|
|
void DCInvalidateRange(void* start, u32 nBytes);
|
|
|
|
|
void DCFlushRange(void* start, u32 nBytes);
|
|
|
|
|
void DCStoreRange(void* start, u32 nBytes);
|
|
|
|
|
void DCFlushRangeNoSync(void* start, u32 nBytes);
|
|
|
|
|
void DCStoreRangeNoSync(void* start, u32 nBytes);
|
|
|
|
|
void DCZeroRange(void* start, u32 nBytes);
|
|
|
|
|
void ICInvalidateRange(void* start, u32 nBytes);
|
|
|
|
|
void ICFlashInvalidate(void);
|
|
|
|
|
static void ICEnable(void);
|
|
|
|
|
void __LCEnable(void);
|
|
|
|
|
void LCEnable(void);
|
|
|
|
|
void LCDisable(void);
|
|
|
|
|
static void LCStoreBlocks(void* destAddr, void* srcAddr, u32 blockNum);
|
|
|
|
|
u32 LCStoreData(void* destAddr, void* srcAddr, u32 nBytes);
|
|
|
|
|
void LCQueueWait(u32 len);
|
|
|
|
|
static void L2GlobalInvalidate(void);
|
2023-01-23 17:02:24 +02:00
|
|
|
static void DMAErrorHandler(u16 error, struct OSContext* context, ...);
|
2022-08-30 14:22:17 -07:00
|
|
|
void __OSCacheInit(void);
|
|
|
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
|
|
|
};
|
|
|
|
|
#endif
|
2021-05-03 02:03:24 +02:00
|
|
|
|
2021-03-28 22:49:05 +02:00
|
|
|
#endif /* OSCACHE_H */
|