拿来主义~
mt6580,mt6739闪光灯调试日记:
MTK驱动------camera、af驱动跟flashlight驱动添加
https://www.it610.com/article/1290568312446590976.htm
MTK camera 闪光灯Flashlight驱动调试流程
https://blog.csdn.net/cherry5211314/article/details/22307043
问题背景:
我这有机器,闪光灯有时候会闪,有的机器闪光灯不亮。
log:
09-29 17:22:11.311 1002 1076 I PowerWrap: PowerHal_TouchBoost
09-29 17:22:11.316 623 859 I FlashHal: getTorchStatus(): torch status(0).
09-29 17:22:11.316 623 859 I FlashHal: setTorchOnOff(): type(1), enable(1).
09-29 17:22:11.316 623 859 I FlashHal: init().
09-29 17:22:11.316 623 859 I StrobeDrvFlashlightFops: openkd(): mUsers(1).
09-29 17:22:11.316 623 859 I StrobeDrvFlashlight: init(): mUsers(1).
09-29 17:22:11.316 623 859 I StrobeDrvFlashlight: lowPowerDetectStart(): duty(3).
09-29 17:22:11.316 623 859 I FlashHal: getHwTriggerSensor(): Flash pin sensor:-1 Strobe pin sensor:-1
09-29 17:22:11.316 623 859 I FlashHal: setOnOff(): type(1), enable(1), scenario(0).
09-29 17:22:11.316 623 859 I FlashHal: setFlashOn(): duty(0), timeout(0), lt duty(0), lt timeout(0).
09-29 17:22:11.316 623 859 I FlashHal: setFlashOn(): is low power.
09-29 17:22:11.316 602 1855 I CameraProviderManager: Camera device [email protected]/internal/0 torch status is now AVAILABLE_ON
09-29 17:22:11.316 602 1855 I CameraService: onTorchStatusChangedLocked: Torch status changed for cameraId=0, newStatus=2
log关键词与问题分析:
Flash, light, lowpower
--------------------
1. 自己写了个简单的apk,camera api那一套打开flashlight,打不开
2. 直接底层adb里面拉gpio,是可以点亮手电筒的
3.flashlight的驱动很简单,就是设置io口,这个应该不会出现问题。所以这个问题是系统中间层机制或者限制的导致的
然后结合log的低电的log
所以我在想是不是低电量导致闪光灯不亮 (这个电量实际不准会导致高电量也不亮 ??)
默认机制电池电量低于15%, api那一套是打不开flashlight的
默认设置路径:
kernel-4.4/driver/misc/mediatek/mt6735/v1/pmic_throttling_dlpt.c
宏:
#define BAT_PERCENT_LINIT 15
----
未完待续
国庆后接着写...哈哈