Update hwc for 10" panel support, get default_mode from bsp configuration and set

This commit is contained in:
August 2018-12-13 00:52:49 +08:00
parent 8e766dba19
commit c7fc432124
3 changed files with 17 additions and 4 deletions

View file

@ -118,8 +118,10 @@ char displayName[5][10] = {
tv_para_t hdmi_support[]=
{
/* 1'st is default */
{DISP_TV_MOD_1080P_60HZ, 1920, 1080, 60, 0},
{DISP_TV_MOD_1024_600P, 1024, 600, 60, 0},
{DISP_TV_MOD_1280_800P, 1280, 800, 60, 0},
{DISP_TV_MOD_720P_60HZ, 1280, 720, 60, 0},
{DISP_TV_MOD_1080P_60HZ, 1920, 1080, 60, 0},
{DISP_TV_MOD_480I, 720, 480, 60, 0},
{DISP_TV_MOD_576I, 720, 576, 60, 0},
@ -1935,16 +1937,19 @@ loop:
ret = ioctl(dispFd, DISP_HDMI_SUPPORT_MODE, arg);
}
if((ret > 0) || all_support
|| (numbconfig && hdmi_support[i].mode == DISP_TV_MOD_1080P_24HZ_3D_FP))
|| (numbconfig && hdmi_support[i].mode == DISP_TV_MOD_1080P_24HZ_3D_FP)) {
hdmi_support[i].support = 1;
ALOGE("hdmi_support[%d] resolution support\n", i);
}
else {
hdmi_support[i].support = 0;
ALOGE("hdmi_support[%d] resolution not support\n", i);
continue;
}
if (hdmi_support[i].mode == display->default_mode) {
fix = numbconfig;
ALOGE("hdmi_support[%d] fix resolution\n", i);
}
numbconfig++;
}
@ -2311,7 +2316,6 @@ int displayDeviceInit(Display_t ***display)
hwdisplay = toHwDisplay(disp);
disp->displayOpration = &sunxiDisplayOpr;
disp->displayId = i;
disp->default_mode = DISP_TV_MOD_1080P_60HZ;
arg[0] = i;
arg[1] = (unsigned long)&hwdisplay->type;
@ -2321,6 +2325,11 @@ int displayDeviceInit(Display_t ***display)
else
ALOGE("get [Disp%d] output type is NONE!\n", i);
ALOGE("get [Disp%d] output type %d output mode %d \n", i, hwdisplay->type.type, hwdisplay->type.mode);
//bpi, get default mode from bsp
disp->default_mode = hwdisplay->type.mode;
if (hwdisplay->type.type == DISP_OUTPUT_TYPE_LCD) {
ALOGD("find Permanent display:%d", i);
fixdiplay = i + 1;

View file

@ -1154,6 +1154,8 @@ int hwc_setBlank(int display)
tv_para_t tv_mode[]=
{
/* 1'st is default */
{DISP_TV_MOD_1024_600P, 1024, 600, 60, 0},
{DISP_TV_MOD_1280_800P, 1280, 800, 60, 0},
{DISP_TV_MOD_1080P_60HZ, 1920, 1080, 60, 0},
{DISP_TV_MOD_720P_60HZ, 1280, 720, 60, 0},

View file

@ -212,6 +212,8 @@ enum disp_tv_mode
DISP_TV_MOD_4096_2160P_60HZ = 0x23,
DISP_TV_MOD_3840_2160P_50HZ = 0x24,
DISP_TV_MOD_4096_2160P_50HZ = 0x25,
DISP_TV_MOD_1024_600P = 0x45,
DISP_TV_MOD_1280_800P = 0x46,
/*
* vga
* NOTE:macro'value of new solution must between