1// SPDX-License-Identifier: GPL-2.0+ 2/* 3 * Copyright 2020, Heinrich Schuchardt <xypron.glpk@gmx.de> 4 */ 5 6#include <cpu_func.h> 7#include <asm/state.h> 8 9void flush_cache(unsigned long addr, unsigned long size) 10{ 11 /* Clang uses (char *) parameters, GCC (void *) */ 12 __builtin___clear_cache((void *)addr, (void *)(addr + size)); 13} 14 15void invalidate_icache_all(void) 16{ 17 struct sandbox_state *state = state_get_current(); 18 19 /* Clang uses (char *) parameters, GCC (void *) */ 20 __builtin___clear_cache((void *)state->ram_buf, 21 (void *)(state->ram_buf + state->ram_size)); 22} 23