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.
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
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 .
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.
HI,
Please try the following :
bootarg fbpix=BGR32
FYI:
Wrong Qt-Rendering with platform EGLFS
Regards,
Jayaram
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 .
No one can know what happened ?