[U-Boot] [PATCH 06/14] arm: mx6: cm-fx6: add hdmi console

Nikita Kiryanov
2015-01-18T12:48:38Z

Hi Soeren,

On 01/14/2015 01:34 PM, Soeren Moch wrote:
>> Add support for hdmi console.
>>
>> Signed-off-by: Nikita Kiryanov <nikita@compulab.co.il>
>> Cc: Stefano Babic <sbabic@denx.de>
>> Cc: Igor Grinberg <grinberg@compulab.co.il>
>> ---
>> board/compulab/cm_fx6/cm_fx6.c | 51
> ++++++++++++++++++++++++++++++++++++++++++
>> include/configs/cm_fx6.h | 15 +++++++++++++
>> 2 files changed, 66 insertions(+)
> [...]
>> +struct display_info_t const displays[] = {
>> + {
>> + .bus = -1,
>> + .addr = 0,
>> + .pixfmt = IPU_PIX_FMT_RGB24,
>> + .detect = detect_hdmi,
>> + .enable = cm_fx6_enable_hdmi,
>> + .mode = {
>> + .name = "HDMI",
>> + .refresh = 60,
>> + .xres = 1024,
>> + .yres = 768,
>> + .pixclock = 40385,
>> + .left_margin = 220,
>> + .right_margin = 40,
>> + .upper_margin = 21,
>> + .lower_margin = 7,
>> + .hsync_len = 60,
>> + .vsync_len = 10,
>> + .sync = FB_SYNC_EXT,
>> + .vmode = FB_VMODE_NONINTERLACED,
>> + }
>> + },
>> +};
>
>
> This is not VESA compliant.
>
>
>> +static void cm_fx6_setup_display(void)
>> +{
>> + struct mxc_ccm_reg *mxc_ccm = (struct mxc_ccm_reg *) CCM_BASE_ADDR;
>> + int reg;
>> +
>> + enable_ipu_clock();
>> + imx_setup_hdmi();
>> + reg = __raw_readl(&mxc_ccm->CCGR3);
>> + reg |= MXC_CCM_CCGR3_IPU1_IPU_DI0_MASK;
>> + writel(reg, &mxc_ccm->CCGR3);
>> +}
>
>
> This will not give the correct pixel clock for a framerate of 60 frames
> per second (as probably expected).
>
> Just as a warning: Due to the non-standard video timing most hdmi
> monitors will not work. For more compatible settings please have a look
> into the tbs2910 board code.
>

Thanks for the pointer. I'll take a look at the tbs2910 code when I
expand the set of supported display presets. For now this is a
preliminary support.

--
Regards,
Nikita Kiryanov