lcd: add screen black support before backlight on [2/2]

PD#167706: lcd: add screen black support before backlight on

Change-Id: I5fd1eb644ae96dac279a00740d8488d4c14870cf
Signed-off-by: Evoke Zhang <evoke.zhang@amlogic.com>
This commit is contained in:
Evoke Zhang
2018-06-08 16:25:21 +08:00
committed by Yixun Lan
parent 9fd8b8f65c
commit 5fe330861e
4 changed files with 16 additions and 14 deletions

View File

@@ -95,6 +95,7 @@ extern void lcd_venc_change(struct lcd_config_s *pconf);
extern void lcd_if_enable_retry(struct lcd_config_s *pconf);
/* lcd debug */
extern void lcd_mute_setting(unsigned char flag);
extern int lcd_class_creat(void);
extern int lcd_class_remove(void);

View File

@@ -1019,7 +1019,7 @@ static void lcd_debug_test(unsigned int num)
LCDPR("disable test pattern\n");
}
static void lcd_mute_setting(unsigned char flag)
void lcd_mute_setting(unsigned char flag)
{
LCDPR("set lcd mute: %d\n", flag);
if (flag) {
@@ -1052,19 +1052,18 @@ static void lcd_screen_restore(void)
h_active = lcd_drv->lcd_config->lcd_basic.h_active;
video_on_pixel = lcd_drv->lcd_config->lcd_timing.video_on_pixel;
if (num >= 0) {
lcd_vcbus_write(ENCL_VIDEO_RGBIN_CTRL, lcd_enc_tst[num][6]);
lcd_vcbus_write(ENCL_TST_MDSEL, lcd_enc_tst[num][0]);
lcd_vcbus_write(ENCL_TST_Y, lcd_enc_tst[num][1]);
lcd_vcbus_write(ENCL_TST_CB, lcd_enc_tst[num][2]);
lcd_vcbus_write(ENCL_TST_CR, lcd_enc_tst[num][3]);
lcd_vcbus_write(ENCL_TST_CLRBAR_STRT, video_on_pixel);
lcd_vcbus_write(ENCL_TST_CLRBAR_WIDTH, (h_active / 9));
lcd_vcbus_write(ENCL_TST_EN, lcd_enc_tst[num][4]);
lcd_vcbus_setb(ENCL_VIDEO_MODE_ADV, lcd_enc_tst[num][5], 3, 1);
if (num > 0)
LCDPR("show test pattern: %s\n", lcd_enc_tst_str[num]);
}
lcd_vcbus_write(ENCL_VIDEO_RGBIN_CTRL, lcd_enc_tst[num][6]);
lcd_vcbus_write(ENCL_TST_MDSEL, lcd_enc_tst[num][0]);
lcd_vcbus_write(ENCL_TST_Y, lcd_enc_tst[num][1]);
lcd_vcbus_write(ENCL_TST_CB, lcd_enc_tst[num][2]);
lcd_vcbus_write(ENCL_TST_CR, lcd_enc_tst[num][3]);
lcd_vcbus_write(ENCL_TST_CLRBAR_STRT, video_on_pixel);
lcd_vcbus_write(ENCL_TST_CLRBAR_WIDTH, (h_active / 9));
lcd_vcbus_write(ENCL_TST_EN, lcd_enc_tst[num][4]);
lcd_vcbus_setb(ENCL_VIDEO_MODE_ADV, lcd_enc_tst[num][5], 3, 1);
if (num > 0)
LCDPR("show test pattern: %s\n", lcd_enc_tst_str[num]);
}
static void lcd_screen_black(void)

View File

@@ -913,6 +913,7 @@ void lcd_tablet_driver_init_pre(void)
lcd_clk_set(pconf);
lcd_venc_set(pconf);
lcd_encl_tcon_set(pconf);
lcd_mute_setting(1);
lcd_vcbus_write(VENC_INTCTRL, 0x200);

View File

@@ -1264,6 +1264,7 @@ void lcd_tv_driver_init_pre(void)
lcd_clk_set(pconf);
lcd_venc_set(pconf);
lcd_encl_tcon_set(pconf);
lcd_mute_setting(1);
lcd_vcbus_write(VENC_INTCTRL, 0x200);