opengles display incorrect on imx6q custom board

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

opengles display incorrect on imx6q custom board

1,241 Views
zarelaky
Contributor I

I’m porting 3.10.53 kernel to imx6qsabre based custom board, the board use rgb24 interface lcd panel,

pinctrl control config correct (u-boot logo display ok, kernel log display ok), rootfs build with yocto-layers,

but when i run a opengles 2.0 test program. it display as below,  someone can give me any ideas ?

regards.

20150704_155500.jpg

Labels (2)
0 Kudos
5 Replies

1,011 Views
Bio_TICFSL
NXP TechSupport
NXP TechSupport

Hi zare,

Probably you need to check the uboot parameters and resolution for RGB24, also you should try the unit test for the IPU, or the OBDS.

Regards

0 Kudos

1,011 Views
zarelaky
Contributor I

thanks for you reply,

I think my resolution settings is not wrong,  operating on mxcfb is ok,  just opengles has problem. below is the mxcfb testing result photo. and my display pinctrl settings follow it .

20150708_152622.jpg

my uboot pinctrl settings

#define DISPLAY_RGB_PAD_CTRL  MUX_PAD_CTRL(NO_PAD_CTRL)

iomux_v3_cfg_t display_rgb_pads[] = {

    MX6_PAD_DI0_DISP_CLK__IPU1_DI0_DISP_CLK | DISPLAY_RGB_PAD_CTRL,

    MX6_PAD_DI0_PIN15__IPU1_DI0_PIN15 | DISPLAY_RGB_PAD_CTRL,

    MX6_PAD_DI0_PIN2__IPU1_DI0_PIN02 | DISPLAY_RGB_PAD_CTRL,

    MX6_PAD_DI0_PIN3__IPU1_DI0_PIN03 | DISPLAY_RGB_PAD_CTRL,

    MX6_PAD_DI0_PIN4__GPIO4_IO20 | DISPLAY_RGB_PAD_CTRL,

    MX6_PAD_DISP0_DAT0__IPU1_DISP0_DATA00 | DISPLAY_RGB_PAD_CTRL,

    MX6_PAD_DISP0_DAT1__IPU1_DISP0_DATA01 | DISPLAY_RGB_PAD_CTRL,

    MX6_PAD_DISP0_DAT2__IPU1_DISP0_DATA02 | DISPLAY_RGB_PAD_CTRL,

    MX6_PAD_DISP0_DAT3__IPU1_DISP0_DATA03 | DISPLAY_RGB_PAD_CTRL,

    MX6_PAD_DISP0_DAT4__IPU1_DISP0_DATA04 | DISPLAY_RGB_PAD_CTRL,

    MX6_PAD_DISP0_DAT5__IPU1_DISP0_DATA05 | DISPLAY_RGB_PAD_CTRL,

    MX6_PAD_DISP0_DAT6__IPU1_DISP0_DATA06 | DISPLAY_RGB_PAD_CTRL,

    MX6_PAD_DISP0_DAT7__IPU1_DISP0_DATA07 | DISPLAY_RGB_PAD_CTRL,

    MX6_PAD_DISP0_DAT8__IPU1_DISP0_DATA08 | DISPLAY_RGB_PAD_CTRL,

    MX6_PAD_DISP0_DAT9__IPU1_DISP0_DATA09 | DISPLAY_RGB_PAD_CTRL,

    MX6_PAD_DISP0_DAT10__IPU1_DISP0_DATA10 | DISPLAY_RGB_PAD_CTRL,

    MX6_PAD_DISP0_DAT11__IPU1_DISP0_DATA11 | DISPLAY_RGB_PAD_CTRL,

    MX6_PAD_DISP0_DAT12__IPU1_DISP0_DATA12 | DISPLAY_RGB_PAD_CTRL,

    MX6_PAD_DISP0_DAT13__IPU1_DISP0_DATA13 | DISPLAY_RGB_PAD_CTRL,

    MX6_PAD_DISP0_DAT14__IPU1_DISP0_DATA14 | DISPLAY_RGB_PAD_CTRL,

    MX6_PAD_DISP0_DAT15__IPU1_DISP0_DATA15 | DISPLAY_RGB_PAD_CTRL,

    MX6_PAD_DISP0_DAT16__IPU1_DISP0_DATA16 | DISPLAY_RGB_PAD_CTRL,

    MX6_PAD_DISP0_DAT17__IPU1_DISP0_DATA17 | DISPLAY_RGB_PAD_CTRL,

    MX6_PAD_DISP0_DAT18__IPU1_DISP0_DATA18 | DISPLAY_RGB_PAD_CTRL,

    MX6_PAD_DISP0_DAT19__IPU1_DISP0_DATA19 | DISPLAY_RGB_PAD_CTRL,

    MX6_PAD_DISP0_DAT20__IPU1_DISP0_DATA20 | DISPLAY_RGB_PAD_CTRL,

    MX6_PAD_DISP0_DAT21__IPU1_DISP0_DATA21 | DISPLAY_RGB_PAD_CTRL,

    MX6_PAD_DISP0_DAT22__IPU1_DISP0_DATA22 | DISPLAY_RGB_PAD_CTRL,

    MX6_PAD_DISP0_DAT23__IPU1_DISP0_DATA23 | DISPLAY_RGB_PAD_CTRL

};

display parameters:

static struct display_info_t const displays[] = {{

    .bus    = -1,

    .addr    = 0,

    .pixfmt    = IPU_PIX_FMT_RGB24,

    .detect    = NULL,

    .enable    = NULL,

    .mode    = {

        .name           = "AA-WVGA",

        .refresh        = 60,

        .xres           = 1280,

        .yres           = 720,

        .pixclock       = 14492,

        .left_margin    = 107,

        .right_margin   = 91,

        .upper_margin   = 37,

        .lower_margin   = 11,

        .hsync_len      = 2,

        .vsync_len      = 5,

        .sync           = FB_SYNC_HOR_HIGH_ACT | FB_SYNC_VERT_HIGH_ACT,

        .vmode          = FB_VMODE_NONINTERLACED

    } },

And where can i get ipu test units.

0 Kudos

1,011 Views
jayaramks
Contributor III

HI,

Please try the following :

      bootarg fbpix=BGR32

FYI:

Wrong Qt-Rendering with platform EGLFS

Regards,

Jayaram

0 Kudos

1,011 Views
zarelaky
Contributor I

It's still not working, either I change ipu input pixel format in _setup_disp_channel1 to  IPU_PIX_FMT_BGR32.

I think there is problem when gpu translate data to ipu, but I can not find where it is .

0 Kudos

1,011 Views
zarelaky
Contributor I

No one can know what happened ?

0 Kudos