现象:机器带备用电池,拔掉电池机器屏幕,更换电池后亮屏,有概率在更换电池后机器不能亮屏。
原因:通过LOG分析是在更换电池前机器处于睡眠状态,更换电池后触发中断,然后去通过电量计去读电池的电量,读取过程中,I2C又suspend了,导致读取电量失败。
修改:在中断处理函数里面加入__pm_stay_awake,处理完调用__pm_relax
现象:机器带备用电池,拔掉电池机器屏幕,更换电池后亮屏,有概率在更换电池后机器不能亮屏。
原因:通过LOG分析是在更换电池前机器处于睡眠状态,更换电池后触发中断,然后去通过电量计去读电池的电量,读取过程中,I2C又suspend了,导致读取电量失败。
修改:在中断处理函数里面加入__pm_stay_awake,处理完调用__pm_relax