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内核中,如何通过wakelock结构来防止系统在特定条件下如USB或DC插入时进入深度休眠,仅保持屏幕点亮。方法是初始化和解锁wakelock,同时展示了查看wakeup源列表的命令。
7450

被折叠的 条评论
为什么被折叠?



