[U-Boot] [PATCH 03/11] video: Add System-Mode configuration hook into mxsfb

Otavio Salvador
2013-07-30T21:46:11Z

On Tue, Jul 30, 2013 at 6:37 PM, Marek Vasut <marex@denx.de> wrote:
> Add hook that allow configuring SmartLCD attached the MXS LCDIF
> controller operating in System-Mode. This hook can be overriden
> by a platform-specific SmartLCD programming routine, which writes
> the SmartLCD specific values into it's registers.
>
> Also, this patch makes sure the SYNC signals are off for the
> SmartLCD case.
>
> Signed-off-by: Marek Vasut <marex@denx.de>
> Cc: Anatolij Gustschin <agust@denx.de>
> Cc: Fabio Estevam <fabio.estevam@freescale.com>
> Cc: Otavio Salvador <otavio@ossystems.com.br>
> Cc: Stefano Babic <sbabic@denx.de>
> ---
> drivers/video/mxsfb.c | 16 ++++++++++++++++
> 1 file changed, 16 insertions(+)
>
> diff --git a/drivers/video/mxsfb.c b/drivers/video/mxsfb.c
> index dbc63a6..78709dd 100644
> --- a/drivers/video/mxsfb.c
> +++ b/drivers/video/mxsfb.c
> @@ -34,6 +34,17 @@
>
> static GraphicDevice panel;
>
> +/**
> + * mxsfb_system_setup() - Fine-tune LCDIF configuration
> + *
> + * This function is used to adjust the LCDIF configuration. This is usually
> + * needed when driving the controller in System-Mode to operate an 8080 or
> + * 6800 connected SmartLCD.
> + */
> +__weak void mxsfb_system_setup(void)
> +{
> +}
> +
> /*
> * DENX M28EVK:
> * setenv videomode
> @@ -88,6 +99,9 @@ static void mxs_lcd_init(GraphicDevice *panel,
>
> writel(valid_data << LCDIF_CTRL1_BYTE_PACKING_FORMAT_OFFSET,
> &regs->hw_lcdif_ctrl1);
> +
> + mxsfb_system_setup();
> +
> writel((mode->yres << LCDIF_TRANSFER_COUNT_V_COUNT_OFFSET) | mode->xres,
> &regs->hw_lcdif_transfer_count);
>
> @@ -115,8 +129,10 @@ static void mxs_lcd_init(GraphicDevice *panel,
> /* Flush FIFO first */
> writel(LCDIF_CTRL1_FIFO_CLEAR, &regs->hw_lcdif_ctrl1_set);
>
> +#ifndef CONFIG_VIDEO_MXS_MODE_SYSTEM

Mode system or System mode?

> /* Sync signals ON */
> setbits_le32(&regs->hw_lcdif_vdctrl4, LCDIF_VDCTRL4_SYNC_SIGNALS_ON);
> +#endif
>
> /* FIFO cleared */
> writel(LCDIF_CTRL1_FIFO_CLEAR, &regs->hw_lcdif_ctrl1_clr);
> --
> 1.7.10.4
>

--
Otavio Salvador O.S. Systems
http://www.ossystems.com.br http://projetos.ossystems.com.br
Mobile: +55 (53) 9981-7854 Mobile: +1 (347) 903-9750