MTK 安卓11 lcm AVDD及AVEE值修改
通常情况下lcm的avdd默认5.4v,某些屏幕对avdd要求不同,需要进行修改驱动程序路径:kernel-4.14/drivers/misc/mediatek/lcm/lcm_pmic.cint display_bias_enable(void){int ret = 0;int retval = 0;display_bias_regulator_init();/* set voltage wit
·
通常情况下lcm的avdd默认5.4v,某些屏幕对avdd要求不同,需要进行修改
驱动程序路径:
kernel-4.14/drivers/misc/mediatek/lcm/lcm_pmic.c
int display_bias_enable(void)
{
int ret = 0;
int retval = 0;
display_bias_regulator_init();
/* set voltage with min & max*/
ret = regulator_set_voltage(disp_bias_pos, 5800000, 5800000);//修改avdd峰值
if (ret < 0)
pr_info("set voltage disp_bias_pos fail, ret = %d\n", ret);
retval |= ret;
ret = regulator_set_voltage(disp_bias_neg, 5800000, 5800000);//修改avee峰值
if (ret < 0)
pr_info("set voltage disp_bias_neg fail, ret = %d\n", ret);
retval |= ret;
.........
修改后效果如下:
我们可以明显的看到,AVDD拉高后有一个阶梯,分别为5.4v和5.8v,那是因为在启动时lk里的电压设置没有修改,导致在lk中AVDD峰值为5.4v,启动后峰值为5.8v;
lk程序路径:
vendor/mediatek/proprietary/bootable/bootloader/lk/dev/lcm/lcm_pmic.c
int display_bias_enable(void)
{
int ret = 0;
/*config rt5081 register 0xB2[7:6]=0x3, that is set db_delay=4ms.*/
ret = PMU_REG_MASK(0xB2, (0x3 << 6), (0x3 << 6));
/* set AVDD 5.4v, (4v+28*0.05v) */
/*ret = RT5081_write_byte(0xB3, (1 << 6) | 28);*/
//修改avdd 5.8v,(4v+36*0.05v)
ret = PMU_REG_MASK(0xB3, 36, (0x3F << 0));
if (ret < 0)
LCM_LOGI("nt35695----tps6132----cmd=%0x--i2c write error----\n", 0xB3);
else
LCM_LOGI("nt35695----tps6132----cmd=%0x--i2c write success----\n", 0xB3);
/* set AVEE */
/*ret = RT5081_write_byte(0xB4, (1 << 6) | 28);*/
ret = PMU_REG_MASK(0xB4, 36, (0x3F << 0));
if (ret < 0)
LCM_LOGI("nt35695----tps6132----cmd=%0x--i2c write error----\n", 0xB4);
else
LCM_LOGI("nt35695----tps6132----cmd=%0x--i2c write success----\n", 0xB4);
.............
修改后效果如下:
更多推荐
已为社区贡献5条内容
所有评论(0)