xref: /openbmc/linux/arch/xtensa/include/asm/mtd-xip.h (revision 03ce34cf)
1*03ce34cfSMax Filippov /* SPDX-License-Identifier: GPL-2.0-only */
2*03ce34cfSMax Filippov 
3*03ce34cfSMax Filippov #ifndef _ASM_MTD_XIP_H
4*03ce34cfSMax Filippov #define _ASM_MTD_XIP_H
5*03ce34cfSMax Filippov 
6*03ce34cfSMax Filippov #include <asm/processor.h>
7*03ce34cfSMax Filippov 
8*03ce34cfSMax Filippov #define xip_irqpending()	(xtensa_get_sr(interrupt) & xtensa_get_sr(intenable))
9*03ce34cfSMax Filippov #define xip_currtime()		(xtensa_get_sr(ccount))
10*03ce34cfSMax Filippov #define xip_elapsed_since(x)	((xtensa_get_sr(ccount) - (x)) / 1000) /* should work up to 1GHz */
11*03ce34cfSMax Filippov #define xip_cpu_idle()		do { asm volatile ("waiti 0"); } while (0)
12*03ce34cfSMax Filippov 
13*03ce34cfSMax Filippov #endif /* _ASM_MTD_XIP_H */
14*03ce34cfSMax Filippov 
15