video_common: Added EDID standard timings to resolution support check.

Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
This commit is contained in:
Andrei-Liviu Simion 2014-12-11 18:02:04 -08:00 committed by Nava kishore Manne
parent d43640ecf6
commit da4deba46a

View file

@ -57,6 +57,7 @@
/**************************** Function Prototypes *****************************/
static u32 XEdid_IsVideoTimingSupportedEstablishedTimings(u8 *EdidRaw, XVid_VideoTimingMode *VtMode);
static u32 XEdid_IsVideoTimingSupportedStandardTimings(u8 *EdidRaw, XVid_VideoTimingMode *VtMode);
static float XVid_CalculatePower(float Base, u8 Power);
static float XVid_CalculateBinaryFraction(u16 Val, u8 DecPtIndex);
@ -191,9 +192,12 @@ u32 XEdid_IsVideoTimingSupported(u8 *EdidRaw, XVid_VideoTimingMode *VtMode)
{
u32 Status;
/* First, check established timings I, II, and III. */
/* Check established timings I, II, and III. */
Status = XEdid_IsVideoTimingSupportedEstablishedTimings(EdidRaw, VtMode);
/* Check in standard timings support. */
XEdid_IsVideoTimingSupportedStandardTimings(EdidRaw, VtMode);
return Status;
}
@ -291,6 +295,24 @@ static u32 XEdid_IsVideoTimingSupportedEstablishedTimings(u8 *EdidRaw, XVid_Vide
return Status;
}
static u32 XEdid_IsVideoTimingSupportedStandardTimings(u8 *EdidRaw, XVid_VideoTimingMode *VtMode)
{
u8 Index;
for (Index = 0; Index < 8; Index++) {
if ((VtMode->Timing.HActive ==
XEDID_GET_STD_TIMINGS_H(EdidRaw, Index + 1)) &&
(VtMode->Timing.VActive ==
XEDID_GET_STD_TIMINGS_V(EdidRaw, Index + 1)) &&
(VtMode->FrameRate ==
XEDID_GET_STD_TIMINGS_FRR(EdidRaw, Index + 1))) {
return XST_SUCCESS;
}
}
return XST_FAILURE;
}
/******************************************************************************/
/**
* Perform a power operation.