[U-Boot] FW: [PATCH 06/10] video: exynos: fimd: always use 16bpp display mode.
Ajay kumar
ajaynumb at gmail.com
Tue Dec 10 09:55:22 CET 2013
Hi Marczak,
On Tue, Dec 10, 2013 at 1:45 PM, Przemyslaw Marczak
<p.marczak at samsung.com>wrote:
> Hello Donghwa,
>
> On 12/10/2013 06:47 AM, Donghwa Lee wrote:
> > Hi,
> >
> > On 3 Dec 2013 18:03, Przemyslaw wrote:
> >> This change updates exynos board files too.
> >> 16 bpp mode is required by LCD console mode.
> >>
> >> Signed-off-by: Przemyslaw Marczak <p.marczak at samsung.com>
> >> ---
> >> board/samsung/trats/trats.c | 2 +-
> >> board/samsung/trats2/trats2.c | 2 +-
> >> board/samsung/universal_c210/universal.c | 2 +-
> >> drivers/video/exynos_fimd.c | 10 ++--------
> >> include/configs/s5pc210_universal.h | 2 +-
> >> include/configs/trats.h | 2 +-
> >> include/configs/trats2.h | 2 +-
> >> 7 files changed, 8 insertions(+), 14 deletions(-)
> >>
> >> diff --git a/board/samsung/trats/trats.c b/board/samsung/trats/trats.c
> >> index ce4b41f..db527c7 100644
> >> --- a/board/samsung/trats/trats.c
> >> +++ b/board/samsung/trats/trats.c
> >> @@ -739,7 +739,7 @@ vidinfo_t panel_info = {
> >> .vl_hsp = CONFIG_SYS_LOW,
> >> .vl_vsp = CONFIG_SYS_LOW,
> >> .vl_dp = CONFIG_SYS_LOW,
> >> - .vl_bpix = 5, /* Bits per pixel, 2^5 = 32 */
> >> + .vl_bpix = 4, /* Bits per pixel, 2^4 = 16 */
> >>
> >> /* s6e8ax0 Panel infomation */
> >> .vl_hspw = 5,
> >> diff --git a/board/samsung/trats2/trats2.c
> b/board/samsung/trats2/trats2.c
> >> index 73b8cc1..6fa02c9 100644
> >> --- a/board/samsung/trats2/trats2.c
> >> +++ b/board/samsung/trats2/trats2.c
> >> @@ -542,7 +542,7 @@ vidinfo_t panel_info = {
> >> .vl_hsp = CONFIG_SYS_LOW,
> >> .vl_vsp = CONFIG_SYS_LOW,
> >> .vl_dp = CONFIG_SYS_LOW,
> >> - .vl_bpix = 5, /* Bits per pixel, 2^5 = 32 */
> >> + .vl_bpix = 4, /* Bits per pixel, 2^4 = 16 */
> >>
> >> /* s6e8ax0 Panel infomation */
> >> .vl_hspw = 5,
> >> diff --git a/board/samsung/universal_c210/universal.c
> >> b/board/samsung/universal_c210/universal.c
> >> index 166d5ee..1ebea0f 100644
> >> --- a/board/samsung/universal_c210/universal.c
> >> +++ b/board/samsung/universal_c210/universal.c
> >> @@ -446,7 +446,7 @@ vidinfo_t panel_info = {
> >> .vl_vsp = CONFIG_SYS_HIGH,
> >> .vl_dp = CONFIG_SYS_HIGH,
> >>
> >> - .vl_bpix = 5, /* Bits per pixel */
> >> + .vl_bpix = 4, /* Bits per pixel */
> >>
> >> /* LD9040 LCD Panel */
> >> .vl_hspw = 2,
> >> diff --git a/drivers/video/exynos_fimd.c b/drivers/video/exynos_fimd.c
> >> index f962c4f..847fbe8 100644
> >> --- a/drivers/video/exynos_fimd.c
> >> +++ b/drivers/video/exynos_fimd.c
> >> @@ -73,18 +73,12 @@ static void exynos_fimd_set_par(unsigned int win_id)
> >> /* DATAPATH is DMA */
> >> cfg |= EXYNOS_WINCON_DATAPATH_DMA;
> >>
> >> - if (pvid->logo_on) /* To get proprietary LOGO */
> >> - cfg |= EXYNOS_WINCON_WSWP_ENABLE;
> >> - else /* To get output console on LCD */
> >> - cfg |= EXYNOS_WINCON_HAWSWP_ENABLE;
> >> + cfg |= EXYNOS_WINCON_HAWSWP_ENABLE;
> >>
>
>> /* dma burst is 16 */
> >> cfg |= EXYNOS_WINCON_BURSTLEN_16WORD;
> >>
> >> - if (pvid->logo_on) /* To get proprietary LOGO */
> >> - cfg |= EXYNOS_WINCON_BPPMODE_24BPP_888;
> >> - else /* To get output console on LCD */
> >> - cfg |= EXYNOS_WINCON_BPPMODE_16BPP_565;
> >> + cfg |= EXYNOS_WINCON_BPPMODE_16BPP_565;
> >>
> >
> > Why does exynos fimd always use 16bpp display mode?
>
> Good question. I switched fimd to 16BPP because of LCD framework which
> supports in max 16BPP mode for LCD console. Leaving fimd 32BPP mode and
> 16BPP console is possible but it causes wrong setup of lcd console row
> and columns, it also displays wrong size fonts.
>
> > It could be used as other bpp modes in exynos.
> > How do you use above vl_bpix variable in panel_info structure to check
> bpp mode?
>
> Actually vl_bpix was never used to check BPP mode in fimd driver, it was
> only used to set proper memory space. Fimd BPP mode was set by checking
> logo_on in panel_info structure.
> This is good reason to use vl_bpix in fimd driver to set proper BPP. I
> will change this to something like this:
>
> if (pvid->vl_bpix == 4)
> cfg |= EXYNOS_WINCON_BPPMODE_16BPP_565;
> else
> cfg |= EXYNOS_WINCON_BPPMODE_24BPP_888;
>
> Do you agree?
>
> This change makes sense.
We should actually be using vl_bpix for the check, and not logo_on.
> >
> >
> > BR,
> > Donghwa Lee.
> >
>
> Thank you,
> --
> Przemyslaw Marczak
> Samsung R&D Institute Poland
> Samsung Electronics
> p.marczak at samsung.com
> _______________________________________________
> U-Boot mailing list
> U-Boot at lists.denx.de
> http://lists.denx.de/mailman/listinfo/u-boot
>
More information about the U-Boot
mailing list