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.
 Bio_TICFSL
		
			Bio_TICFSL
		
		
		
		
		
		
		
		
	
			
		
		
			
					
		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.
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 .
