MT6589][AAL]巧用dumpsys处理AAL工作异常问题

来源:互联网 发布:java soa是什么 编辑:程序博客网 时间:2024/05/27 09:48
前提】
1. AAL feature已经打开(如需打开,请申请patch)
2. Cust_leds.c中已经配置了正确的backlight(详情,请参考FAQ05966 )
 
【case1】 在亮度设置中勾选“自动调整亮度”,功耗未发生变化;勾选“省电背光”后,手动拉动背光亮度值无变化
处理方法:
1. 手机连接adb,输入命令,生成aal.txt
2. 查看aal.txt中AAL states
其中Content analysis parameters的第一个参数表示LCM_WIDTH*LCM_HEIGHT*0.95;而Content analysis result的第一个参数为当前需要刷新内容的像素个数。要求Content analysis result的第一个大于Content analysis parameters,才可以正常工作。
 
在本例中,875520 = 720 * 1280 *0.95; 而518400 = 540*960
说明当前需要刷新一帧540*960的内容,但分辨率设置为720*1280,导致AAL无法正常工作
 
结论:如果dumpsys aal的结果发现上述现象,请查看ProjectConfig.mk以及LCM driver中LCM_WIDTH和LCM_HEIGHT的大小
 
【case 2】在亮度设置中勾选“自动调整亮度”或勾选“省电背光”后手机屏幕发白,显示异常
处理方法:
1. 确保LCM有做过校准,具体校准方法,请参考e-course MT6589_AAL_Introduction
2. 如果没有色度计进行校准,可以查看LCM模组spec中最大亮度的值利用公式进行计算,计算公式如下
luminance = (LCM 最大亮度) * (greycode/255)^(LCM Gamma)
计算到不同灰阶的亮度,写入…\alps\mediatek\platform\mt6589\hardware\aal\inc\aal_lcm_cal.cfg
 
3. 如果写入后问题依然存在,仿照case1,dumpsys AAL,得到如下内容
其中GAMMA的值就是我们在aal_lcm_cal.cfg中写入不同灰阶的亮度值
 
4. 查看我们写入的aal_lcm_cal.cfg,与上表对应看到
 
写入greycode与luminace之间加入了空格,脚本识别错误,导致前12个值没有读入
结论:在手动填写aal_als_cal.cfg以及aal_lcm_cal.cfg时,务必不要使用空格对参数进行分隔!!
0 0
原创粉丝点击