Linux之wake lock

kernel层有些情况下,我们希望阻止系统休眠进入 suspend,比如 usb 插入、DC插入,我们不希望系统进入深度休眠,只是灭屏而已,如何实现的呢?是的,通过wake lock

struct wake_lock        wakelock;

wake_lock_init(&rk_phy->wakelock, WAKE_LOCK_SUSPEND, "rockchip_otg");

wake_unlock(&rk_phy->wakelock);

wake_lock(&rk_phy->wakelock); 

enum {          
        WAKE_LOCK_SUSPEND, /* Prevent suspend */
        WAKE_LOCK_TYPE_COUNT   
};              
可以通过以下命令,查看wakeup列表

cat /sys/kernel/debug/wakeup_sources

你可能感兴趣的:(linux,运维,服务器)