【MTK】flashlight驱动部分调试

您所在的位置:网站首页 flashq闪光灯 【MTK】flashlight驱动部分调试

【MTK】flashlight驱动部分调试

2024-07-16 12:15| 来源: 网络整理| 查看: 265

1.闪光灯校准

使用adb命令的方式在正常开机环境下做flash 校准,步骤如下:

-1- adb shell setprop z.flash_ratio 1

-2- 全黑环境下,请将手机固定,对着白墙10cm,固定。

-3- 点击拍照,然后手机会自动打闪多次(其中不要任何人员靠近,避免影响光源)。

-4- 手机停止拍照以后,存储空间内将生成eng_all.txt,eng_code.txt,fwb_code.txt等文件。

校准数据检查没问题后,

-1- 将eng_code.txt中的engTab数据合入到flash_tuning_custom_cct.cpp中的engTab数组中;

-2- 将fwb_code.txt中的数据合入到Camera_flash_awb_para_xxxxxx.h的Flash AWB Calibration数组中。 合入后重新编译即可生效。

主要调试文件:

1.kernel-4.4\drivers\misc\mediatek\flashlight\flashlights-dummy-gpio.c

2.vendor\mediatek\proprietary\custom\mt6739\hal\flashlight\flash_tuning_custom.cpp

3.vendor\mediatek\proprietary\custom\mt6739\hal\flashlight\flash_tuning_custom_cct.cpp

一:常见闪光灯问题处理

1.开启闪光灯拍照和录像的照片跟视频偏色(我这里主要偏绿色)

修改vendor\mediatek\proprietary\custom\mt6739\hal\camera_3a\flashawb_tuning_custom.cpp中MTRUE为MFALSE(关掉白平衡)

2.明亮处拍照闪光灯会亮起

vendor/mediatek/proprietary/custom/mt6739/hal/imgsensor/gc5025_mipi_raw/camera_AE_PLineTable_gc5025mipiraw.h

适当减小u4StrobeTrigerBv值,即环境亮度低于所设 BV 门限值时才会打闪,设的越小,越需要到更暗的环境才会打闪,gc5025默认是20,可以适当调低

3.闪光灯打闪暗处和亮处拍照均会变暗

gain 值补不上来,则导致拍照变暗很多

解决办法:vendor\mediatek\proprietary\custom\mt6739\hal\flashlight\flash_tuning_custom.cpp

para.maxCapExpTimeUs默认值从80000改成100000,即闪光灯打闪时,capture shutter 最大值。默认为 80000,即 80ms,主要目的为了防止闪光灯工作时间较长会导致寿命缩短。通常建议不大于 12500

4.flashlights-dummy-gpio.c驱动拍黑暗处闪光灯起不了补光作用

kernel-4.4\drivers\misc\mediatek\flashlight\flashlights-dummy-gpio.c

解决办法:在开闪光灯拍照的时候,适当加500ms延时

dummy_enable();  mdelay(500);

5.利用SGM37891闪光灯IC编程,降低手电筒电流,防止长时间开启后打闪或者提高闪光灯亮度

控制IC的1W管脚

spin_lock_irq(&g_strobeSMPLock);         if(pinctrl_select_state(dummy_pinctrl, dummy_xxx_high)){printk("[constant_flashlight] set gpio failed!!\n");}         udelay(200);     

        for(i=0; i



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3