void update_av_info_edid(bool audio_video, unsigned int param1, unsigned int param2) { if(audio_video)///video infor { switch(param1) { case 0x22: case 0x14: pal_resulution |= SINK_1080P30; break; case 0x10: if(packed_pixel_available(si_dev_context)) pal_resulution |= SINK_1080P60; break; case 0x4: pal_resulution |= SINK_720P60; break; case 0x3: case 0x2: pal_resulution |= SINK_480P; break; default: HDMI_LOG("param1: %d\n", param1); } } return ; }
void hdmi_GetEdidInfo(void *pv_get_info) { HDMI_EDID_INFO_T *ptr = (HDMI_EDID_INFO_T *)pv_get_info; if(ptr) { ptr->ui4_ntsc_resolution = 0; ptr->ui4_pal_resolution = si_mhl_get_av_info(); if(ptr->ui4_pal_resolution == 0) { HDMI_LOG("MHL edid parse error \n"); if(si_dev_context && packed_pixel_available(si_dev_context)) ptr->ui4_pal_resolution = SINK_720P60 | SINK_1080P60 | SINK_480P; else ptr->ui4_pal_resolution = SINK_720P60 | SINK_1080P30 | SINK_480P; } #ifdef MHL_RESOLUTION_LIMIT_720P_60 ptr->ui4_pal_resolution &= (~SINK_1080P60); ptr->ui4_pal_resolution &= (~SINK_1080P30); #endif #ifdef MHL_RESOLUTION_LIMIT_1080P_30 if(ptr->ui4_pal_resolution & SINK_1080P60) { ptr->ui4_pal_resolution &= (~SINK_1080P60); ptr->ui4_pal_resolution |= SINK_1080P30; } #endif } if(si_dev_context) { HDMI_LOG("MHL hdmi_GetEdidInfo ntsc 0x%x,pal: 0x%x, packed: %d, parsed 0x%x\n", ptr->ui4_ntsc_resolution , ptr->ui4_pal_resolution, packed_pixel_available(si_dev_context), si_mhl_get_av_info()); } }
void hdmi_GetEdidInfo(void *pv_get_info) { HDMI_EDID_INFO_T *ptr = (HDMI_EDID_INFO_T *)pv_get_info; if(ptr) { ptr->ui4_ntsc_resolution = 0; ptr->ui4_pal_resolution = si_mhl_get_av_info(); if(ptr->ui4_pal_resolution == 0) { HDMI_LOG("MHL edid parse error \n"); if(si_dev_context && packed_pixel_available(si_dev_context)) ptr->ui4_pal_resolution = SINK_720P60 | SINK_1080P60 | SINK_480P; else ptr->ui4_pal_resolution = SINK_720P60 | SINK_1080P30 | SINK_480P; } } if(si_dev_context) { HDMI_LOG("MHL hdmi_GetEdidInfo ntsc 0x%x,pal: 0x%x, packed: %d, parsed 0x%x\n", ptr->ui4_ntsc_resolution , ptr->ui4_pal_resolution, packed_pixel_available(si_dev_context), si_mhl_get_av_info()); } }