问题描述:设备未充电待机的时候红色LED灯会间隔两三秒闪烁一次,修改hal层代码停止红灯闪烁
此方法其实治标不治本,正确的做法是找到调用该hal层接口的代码注释
+++ b/vendor/mediatek/proprietary/hardware/liblights/lights.c
@@ -239,14 +239,15 @@ blink_red(int level, int onMS, int offMS)
}
else if (nowStatus == 1) {
// write_int(RED_LED_FILE, level); // default full brightness
- write_str(RED_TRIGGER_FILE, "timer");
- while (((access(RED_DELAY_OFF_FILE, F_OK) == -1) || (access(RED_DELAY_OFF_FILE, R_OK|W_OK) == -1)) && i<10) {
- ALOGD("RED_DELAY_OFF_FILE doesn't exist or cannot write!!\n");
- led_wait_delay(5);//sleep 5ms for wait kernel LED class create led delay_off/delay_on node of fs
- i++;
- }
- write_int(RED_DELAY_OFF_FILE, offMS);
- write_int(RED_DELAY_ON_FILE, onMS);
+ //write_str(RED_TRIGGER_FILE, "timer");
+ //while (((access(RED_DELAY_OFF_FILE, F_OK) == -1) || (access(RED_DELAY_OFF_FILE, R_OK|W_OK) == -1)) && i<10) {
+ // ALOGD("RED_DELAY_OFF_FILE doesn't exist or cannot write!!\n");
+ // led_wait_delay(5);//sleep 5ms for wait kernel LED class create led delay_off/delay_on node of fs
+ // i++;
+ //}
+ //write_int(RED_DELAY_OFF_FILE, offMS);
+ //write_int(RED_DELAY_ON_FILE, onMS);
+ ALOGD("close red timer\n");
}
else {
write_str(RED_TRIGGER_FILE, "none");