1、自动背光调节 BrightnessPreference.java->PowerManagerService.jave->sensors.cpp->lightsensor.cpp->apds990x.c
android10自调亮度对应的等级,需修改下面这个文件
frameworks\base\core\res\res\values\config.xml
<integer-array name="config_autoBrightnessLevels">
<item>128</item>
<item>256</item>
<item>384</item>
<item>512</item>
<item>640</item>
<item>768</item>
<item>896</item>
<item>1024</item>
<item>2048</item>
<item>4096</item>
<item>6144</item>
<item>8192</item>
<item>10240</item>
<item>12288</item>
<item>13336</item>
<item>14336</item>
<item>16984</item>
<item>18432</item>
</integer-array>
<array name="config_autoBrightnessDisplayValuesNits">
<item>33.07</item> <!-- 0-16 -->
<item>49.81</item> <!-- 16-32 -->
<item>65.02</item> <!-- 32-50 -->
<item>80.2</item> <!-- 50-100 -->
<item>96.75</item> <!-- 100-140 -->
<item>111.8</item> <!-- 140-180 -->
<item>144.3</item> <!-- 180-240 -->
<item>164.3</item> <!-- 300-600 -->
<item>184.3</item> <!-- 600-800 -->
<item>224.3</item> <!-- 800-1000 -->
<item>260.0</item> <!-- 1000-2000 -->
<item>288.5</item> <!-- 2000-3000 -->
<item>302.0</item> <!-- 3000-4000 -->
<item>308.7</item> <!-- 4000-5000 -->
<item>315.4</item> <!-- 5000-6000 -->
<item>330.0</item> <!-- 6000-8000 -->
<item>363.6</item> <!-- 8000-10000 -->
<item>366.6</item> <!-- 10000+ -->
</array>
<integer-array name="config_screenBrightnessBacklight">
<item>10</item>
<item>50</item>
<item>60</item>
<item>70</item>
<item>80</item>
<item>90</item>
<item>100</item>
<item>110</item>
<item>120</item>
<item>130</item>
<item>140</item>
<item>150</item>
<item>165</item>
<item>180</item>
<item>195</item>
<item>210</item>
<item>225</item>
<item>240</item>
<item>255</item>
</integer-array>
<array name="config_screenBrightnessNits">
<item>33.07</item> <!-- 0-16 -->
<item>49.81</item> <!-- 16-32 -->
<item>65.02</item> <!-- 32-50 -->
<item>80.2</item> <!-- 50-100 -->
<item>96.75</item> <!-- 100-140 -->
<item>111.8</item> <!-- 140-180 -->
<item>144.3</item> <!-- 180-240 -->
<item>164.3</item> <!-- 240-300 -->
<item>184.3</item> <!-- 300-600 -->
<item>204.3</item> <!-- 600-800 -->
<item>224.3</item> <!-- 800-1000 -->
<item>260.0</item> <!-- 1000-2000 --> <item>288.5</item> <!-- 2000-3000 -->
<item>302.0</item> <!-- 3000-4000 -->
<item>308.7</item> <!-- 4000-5000 -->
<item>315.4</item> <!-- 5000-6000 -->
<item>330.0</item> <!-- 6000-8000 -->
<item>363.6</item> <!-- 8000-10000 -->
<item>366.6</item> <!-- 10000+ -->
</array>
降低LK背光亮度引起进kernel会黑一下和AAL引起的突然变亮
1、LK降低亮度
ddp_pwm.c
int disp_pwm_set_backlight(disp_pwm_id_t id, int level_1024)
{
unsigned int reg_base;
unsigned int offset;
+ level_1024=512;
.....
}
2、进kernel亮度突然变亮,
初始化添加一个定时器,30s后设置变量为1.
ddp_pwm.c
int disp_pwm_set_backlight_cmdq(disp_pwm_id_t id, int level_1024, void *cmdq)
{
#ifndef CONFIG_FPGA_EARLY_PORTING
/* PWM is excluded from FPGA bitfile */
unsigned long reg_base;
int old_pwm;
int index;
int abs_diff;
bool force_update = false;
if(get_bl_is_init()==0) //30s才会生效,防止aal过早设置,aal默认会设置为最大值
{
level_1024=512;
}
...
}
3、进kernel会黑一下
clk-mt6739.c
//#define INFRA_CG2 0x0FFCC7DD
#define INFRA_CG2 0x0FFCC7D9