Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0 */
0002 #ifndef __ASM_IDLE_H
0003 #define __ASM_IDLE_H
0004 
0005 #include <linux/cpuidle.h>
0006 #include <linux/linkage.h>
0007 
0008 extern void (*cpu_wait)(void);
0009 extern void r4k_wait(void);
0010 extern asmlinkage void __r4k_wait(void);
0011 extern void r4k_wait_irqoff(void);
0012 
0013 static inline int using_rollback_handler(void)
0014 {
0015     return cpu_wait == r4k_wait;
0016 }
0017 
0018 extern void __init check_wait(void);
0019 
0020 extern int mips_cpuidle_wait_enter(struct cpuidle_device *dev,
0021                    struct cpuidle_driver *drv, int index);
0022 
0023 #define MIPS_CPUIDLE_WAIT_STATE {\
0024     .enter          = mips_cpuidle_wait_enter,\
0025     .exit_latency       = 1,\
0026     .target_residency   = 1,\
0027     .power_usage        = UINT_MAX,\
0028     .name           = "wait",\
0029     .desc           = "MIPS wait",\
0030 }
0031 
0032 #endif /* __ASM_IDLE_H  */