【Android休眠】之PowerKey唤醒源实现

版本信息:
Linux:3.10
Android: 4.4


http://blog.csdn.net/u013686019/article/details/53677531

一、唤醒源

设备休眠后,通过触发唤醒源使设备恢复正常工作模式。设备唤醒源有多种,对于Android设备常见的就有PowerKey、来电唤醒、Alarm唤醒等。
唤醒源的实现处于内核空间,本文重点讨论下PowerKey作为唤醒源的具体实现。

二、PowerKey唤醒源

PowerKey唤醒设备的原理,本质其实就是中断

PowerKey连接到CPU的一个输入(Input)引脚(Pin)上,该Pin运行在中断模式上。一旦 PowerKey按下,引发Pin中断;而该中断具有唤醒CPU的功能,于是设备得以唤醒。

三、PowerKey对应的Pin Configuration

和PowerKey相连的Pin的具体配置位于板级dts文件中,比如 如下 配置:
arch/arm/boot/dts/xxxxx.dts
power-key {
        /** 是CPU的哪个Pin */
        gpios = <&gpio0 GPIO_A5 GPIO_ACTIVE_LOW>;
        /** Key code  */
        linux,code = <116>;
        /** 起个名字 */
        label = "power";
        /** 该Pin具有wakeup的功能 */
        gpio-key,wakeup;
};

着重说下 linux,code = <116>,116怎么来的?
对于键盘,每一个按键都有唯一的编码,在Linux中,编码值位于:
input.h (kernel\inc
  • 4
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值