/* SPDX-License-Identifier: GPL-2.0 */ // Copyright (C) 2018 Hangzhou C-SKY Microsystems co.,ltd. #ifndef __ABI_REG_OPS_H #define __ABI_REG_OPS_H #include <asm/reg_ops.h> #define cprcr(reg) \ ({ \ unsigned int tmp; \ asm volatile("cprcr %0, "reg"\n":"=b"(tmp)); \ tmp; \ }) #define cpwcr(reg, val) \ ({ \ asm volatile("cpwcr %0, "reg"\n"::"b"(val)); \ }) static inline unsigned int mfcr_hint(void) { return mfcr("cr30"); } static inline unsigned int mfcr_ccr2(void) { return 0; } #endif /* __ABI_REG_OPS_H */