Update hwc for 10" panel support, get default_mode from bsp configuration and set
This commit is contained in:
parent
8e766dba19
commit
c7fc432124
3 changed files with 17 additions and 4 deletions
|
@ -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;
|
||||
|
|
|
@ -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},
|
||||
|
||||
|
|
|
@ -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
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue