90 likes | 224 Views
RFC : To enable Auto-detect feature with EDID for HDMI. Mythri P K. CURRENT DESIGN.
E N D
RFC : To enable Auto-detect feature with EDID for HDMI.Mythri P K
CURRENT DESIGN • The current design involves taking the bootargs from the user regarding the code and the mode of the hdmi TV the user would connect to the board , which would expect the user to be aware of the timings. Else it would assume a default value of CEA 16 ie for 1080P setting.
The current design for reading and using EDID on boot up is as follows:
RE-DESIGN EDID ON BOOT • The following patch would enable auto-detect feature for HDMI , Ie No bootargs would be required and based on the EDID value ie read All the blocks (4/8) depending on whether the extended EDID is present or not would be read and then if the given timing is supported by OMAP4 , Value would be set. Else if the EDID read fails or the timing values supported by TV are not supported by OMAP4 , it will set the default value to 640 480 which would be the default exception.
CURRENT custom_edid_timing sysfs • The current scenario is , it displays all the timing values that are supported by the OMAP4 and the TV based on the EDID read , and when the user enters the value it compares whether the value entered by the user matches with the EDID timing block that is supported by the TV.If yes then it would set the new timing value , otherwise it sets the default timing value. • The current design is , The user enters the code and mode values , after reading the timing value displayed by the custom_edid_timing.There is not match with the EDID timing supported by the TV . It just extracts the timing information based on the user input.
REDESIGN custom_edid_timing sysfs • The reason for this change is , The TV might support Non-CEA timing value like 1920 * 1200 and in such cases the user should be able to set the timing value to 1080 ie 1920 * 1080 with left blank which would not be possible with the current design as the user entered value will be matched with the timings and hence would not match . • Thus no check would be made so the user should be wary when doing this because if wrong values not supported by TV are set it might sometimes result in SYNC_LOST_DIGIT.