新建 #162
open
Added by 余 顺 about 3 years ago.
Updated over 2 years ago.
Description
版型:rp-box-rk3568
系统:buildroor
需求:休眠唤醒
尝试操作:
1.rk3568.dtsi中默认包含了RKPM_GPIO_WAKEUP_EN (GPIO0的唤醒)。添加RKPM_GPIO_WAKEUP_EN之后

2.在sdk中rk3568-linux.dtsi中设置了使能

3.系统可以在配置echo mem >sys/power/state的10s后自动恢复,根据GPIO的配置说明

4.将gpio0b6设置为WAKEUP的key

5.通过echo mem > /sys/power/state 使系统休眠后,按键唤醒无效果,通过读取GPIO0_B6的值可以看到gpio的输入是有改变的

Files
GPIO唤醒系统配置
参考驱动:kernel/drivers/input/keyboard/gpio_keys.c
参考DTS:
gpio_keys: gpio-keys {
status = "disabled";
compatible = "gpio-keys";
autorepeat;
BACK {
label = "GPIO Key Home";
debounce-interval = <10>;
interrupt-parent = <&gpio0>;
interrupts = <13 IRQ_TYPE_LEVEL_LOW>;
linux,input-type = <EV_KEY>;
linux,code = <KEY_BACK>;
gpio-key,wakeup;
};
};
需要注意不能通过rp-gpio 控对应的gpio口,否则上述的修改不生效
gpio 中断配置 可以参考 sdk 源码中docs 目录下的 Rockchip_Developer_Guide_Linux_Pinctrl_CN.pdf
Also available in: Atom
PDF