在线时间120 小时
UID2008616
注册时间2013-5-8
NXP金币26
该用户从未签到
金牌会员
 
- 积分
- 3278
- 最后登录
- 1970-1-1
|
发表于 2014-3-4 16:50:47
|
显示全部楼层
回复:SABRELITE 板子上的Power键如何唤醒屏幕
回复第 4 楼 于2014-02-21 16:43:48发表:
回复第 3 楼 于2014-02-20 15:49:27发表:
楼主你好,由于Sabrelite的板子硬件是第三方公司设计的,BSP 是由飞思卡尔设计并支持的,这里我建议你先去查看一下它的原理图,看一下板子上ON_OFF是如何连接的。
硬件上ON_OFF按钮是接在imx6的ONOFF管脚上的。
这的问题是,硬件原理图上的SEARCH按键在Android源代码中是被当作POWER按键的。见GPIO_BUTTON定义,/kerne/arch/am/mach-mx6/board-mx6q_sabrelite.c
当系统起来后,按一次POWER键,可以将屏幕关闭,从串口监控信息,可以发现系统进入suspend状态。
然而再按一次POWER按键的时候,整个系统没反应了。这个问题应该是唤醒的工程中的软件问题。估计是POWER按键在休眠的时候不能被识别。
另一个问题,长按POWER按键,弹出关机确认对话框,点确定后,关机过程进行一段时间后就挂死了。查看串口输出信息,应该是系统出现空指针错误。错误提示如图
Unable to handle kernel NULL pointer dereference at virtual address 00000014
pgd = d70f8000
[00000014] *pgd=26769831, *pte=00000000, *ppte=00000000
Internal error: Oops: 17 [#1] PREEMPT SMP
Modules linked in:
CPU: 1 Not tainted (3.0.15 #26)
PC is at core_shutdown+0x10/0x3c
LR is at core_shutdown+0x10/0x3c
pc : [] lr : [] psr: a0000013
sp : d7101e68 ip : 00000001 fp : dead0002
r10: 00000000 r9 : d7100000 r8 : c0046744
r7 : 00000000 r6 : d6b7422c r5 : c07e4a74 r4 : d6b74200
r3 : d6f86900 r2 : d6b74200 r1 : 00000002 r0 : 00000000
Flags: NzCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment user
Control: 10c53c7d Table: 270f804a DAC: 00000015
楼主你好,关于power按键的驱动,飞思卡尔的BSP是定义好的,你可以查看一下,另外要说的是这部分一般是不需要修改直接用就可以的。 |
|