iMX53 EC7 support for WVGA RGB666 display

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

iMX53 EC7 support for WVGA RGB666 display

Jump to solution
1,592 Views
bdp42
Contributor IV

Hi,

I am trying to add support for a WVGA RGB666 LCD 18bit display to an IMX53 EC7 based platform. I though I only had to change the following registry entry, where Bpp is set the the value appropriate to the actual display.

[HKEY_LOCAL_MACHINE\Drivers\Display\DDIPU]

   "Bpp"=dword:10                ; RGB565

   "VideoBpp"=dword:20           ; RGB666 (32bpp internal)

   "VideoMemSize"=dword:4000000  ; 64MB

Also I needed to add a new entry to the PANEL_INFO structure with the appropriate parameters.This did not work.

I originally thought that the system would use a consistent display format internally and only do the final transformation (to suit the actual display) at the IPU display controller. This would mean changes to suit the physical display are made in one place only. In digging deeper it looks like this is not the case since IDMAC channel 23 (the main plane primary flow) is configured for the display format in addition to the display controller.

Also it looks the the current Freescale BSP does not actually have support for 666 (18 bits per pixel) format, only 4, 8, 16 and 32.bpp.

In C:\WINCE700\platform\common\src\soc\COMMON_FSL_V3\IPUV3\DISPLAY\display.cpp I could add support for an 18 bit format but this may not be enough.

For example in a few places in C:\WINCE700\platform\common\src\soc\COMMON_FSL_V3\IPUV3\DDRAW\ddipu.cpp I see something like this

nBPP = m_pMode->Bpp/8 - 1;

switch (m_pMode->Bpp)

{

        case    8:

        case    16:

        case    24:

        case    32:

            m_pModeEx->ePixelFormat = ePixelFormat[nBPP];

where it looks like the assumption is that the bpp is a multiple of 8. nBPP is used as an index into an array and this only works if bpp is a multiple of 8. This is common Freescale code and this suggests a more fundamental problem with BSP support for 18 bit format.

Is my understanding of this correct? I'm sure the platform can support an18 bit format without having to make wholesale changes. Has anyone added a 666 display support to the IMX53 platform? If so what changes were required?

Thanks,

Bruno




Labels (2)
Tags (2)
0 Kudos
1 Solution
891 Views
martinthompson
Contributor III

Hi Bruno,

Windows CE / Embedded Compact has never supported 18bpp RGB666 mode. You must choose between RGB565 and RGB24.  We prefer 565 as it's much faster and losing 1 bit of red and 1 bit of green is not visible to most people anyway.

Hope this helps

--Martin

View solution in original post

0 Kudos
1 Reply
892 Views
martinthompson
Contributor III

Hi Bruno,

Windows CE / Embedded Compact has never supported 18bpp RGB666 mode. You must choose between RGB565 and RGB24.  We prefer 565 as it's much faster and losing 1 bit of red and 1 bit of green is not visible to most people anyway.

Hope this helps

--Martin

0 Kudos