1、不插充电器开机,原因是开机初始化屏后,流程跑到检测电池电量时,为低电量,进行POWEROFF操作,AMOLED屏会出现红屏闪。
2、插充电器开机,必须作出判断是否在充电,充电状态下,读出的电池电压会需高,需要加大判断低电量的判断条件。
3、源码链接http://download.csdn.net/detail/diandaer/9902237
开机闪烁电源指示灯
vendor\mediatek\proprietary\hardware\liblights\lights.c
static int
set_speaker_light_locked(__attribute__((__unused__)) struct light_device_t* dev,
struct light_state_t const* state)
{
if (red) {
#if 0
blink_green(0, 0, 0);
blink_blue(0, 0, 0);
#endif
blink_red(red, onMS, offMS);
}
#if 1
else {
blink_red(0, 0, 0);
}
#else
else if (green) {
blink_red(0, 0, 0);
blink_blue(0, 0, 0);
blink_green(green, onMS, offMS);
}
else if (blue) {
blink_red(0, 0, 0);
blink_green(0, 0, 0);
blink_blue(blue, onMS, offMS);
}
else {
blink_red(0, 0, 0);
blink_green(0, 0, 0);
blink_blue(0, 0, 0);
}
#endif
}
device\mediatek\mt6739\init.mt6739.rc
on boot
chown system system /sys/class/blue/red/trigger
chmod 777 /sys/class/leds/blue/trigger
write /sys/class/leds/blue/trigger timer
chown system system /sys/class/leds/blue/delay_on
chown system system /sys/class/leds/blue/delay_off
chmod 777 /sys/class/leds/blue/delay_on
chmod 777 /sys/class/leds/blue/delay_off 777
write /sys/class/leds/blue/delay_on 200
write /sys/class/leds/blue/delay_off 200
on property:sys.boot_completed=1
write /sys/class/leds/blue/trigger none
chmod 0777 /sys/class/leds/blue/brightness
write /sys/class/leds/blue/brightness 100
配置蓝灯
led2:led@2 {
compatible = "mediatek,blue";
led_mode = <2>; //GPIO模式
data = <6>;