1/* 2 * Copyright (C) 2017 SiFive 3 * 4 * This program is free software; you can redistribute it and/or 5 * modify it under the terms of the GNU General Public License 6 * as published by the Free Software Foundation, version 2. 7 * 8 * This program is distributed in the hope that it will be useful, 9 * but WITHOUT ANY WARRANTY; without even the implied warranty of 10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 11 * GNU General Public License for more details. 12 */ 13 14#include <linux/linkage.h> 15#include <asm/unistd.h> 16 17 .text 18/* int __vdso_flush_icache(void *start, void *end, unsigned long flags); */ 19ENTRY(__vdso_flush_icache) 20 .cfi_startproc 21#ifdef CONFIG_SMP 22 li a7, __NR_riscv_flush_icache 23 ecall 24#else 25 fence.i 26 li a0, 0 27#endif 28 ret 29 .cfi_endproc 30ENDPROC(__vdso_flush_icache) 31