我无法按下电源按钮来正常关闭操作系统。
我的内核没有 的配置选项acpi
,并acpid
给出以下错误:
root@seco-uq7-dl-256mbx4:~# /usr/sbin/acpid
RTNETLINK1 answers: No such file or directory
acpid: error talking to the kernel via netlink
所以,我的猜测是我必须使用udev
.如果我使用udevadm monitor
,当我按下电源开关时不会引发任何事件。
在深入研究内核源代码(Linux seco-uq7-dl-256mbx4 3.0.101 #1 SMP PREEMPT Thu Jun 2 10:49:45 PDT 2016 armv7l GNU/Linux
)和imx6驱动程序后,我终于找到了一些可能对我有帮助的东西。
1. 我在操作系统中找到了电源按钮驱动程序/sys/bus/platform/drivers/imx_seco_pwrb
。
2. 一些可能有帮助的更多信息。
root@seco-uq7-dl-256mbx4:~# cat /proc/ectrl/events/power_button/enable
disable
root@seco-uq7-dl-256mbx4:~# cat /proc/ectrl/events/power_button/en_flash
disable
root@seco-uq7-dl-256mbx4:~# ls /sys/bus/platform/drivers/imx_seco_pwrb/
bind uevent unbind
3.我发现/proc/ectrl/events/event_state/power_button
它存储了电源按钮的当前状态。
root@seco-uq7-dl-256mbx4:~# cat /proc/ectrl/events/event_state/power_button
active
root@seco-uq7-dl-256mbx4:~# cat /proc/ectrl/events/event_state/power_button
active
root@seco-uq7-dl-256mbx4:~# cat /proc/ectrl/events/event_state/power_button
active
root@seco-uq7-dl-256mbx4:~# cat /proc/ectrl/events/event_state/power_button
inactive
root@seco-uq7-dl-256mbx4:~# cat /proc/ectrl/events/event_state/power_button
inactive
root@seco-uq7-dl-256mbx4:~# cat /proc/ectrl/events/event_state/power_button
inactive
我的嵌入式操作系统正在使用 sysvinit。
我实际上需要电源按钮来执行shutdown -h now
.有什么想法为什么目前没有吗?