Hi Manu
in lcdif.h the only thing i changed was this line:
__raw_writel(BF_LCDIF_CTRL_WORD_LENGTH(3) | /* 24 bit */
BM_LCDIF_CTRL_DATA_SELECT | /* data mode */
BF_LCDIF_CTRL_INPUT_DATA_SWIZZLE(0) | /* no swap */
BF_LCDIF_CTRL_LCD_DATABUS_WIDTH(2), /* 18 bit */
REGS_LCDIF_BASE + HW_LCDIF_CTRL_SET);
Where I set the DATABUS_WIDTH to 2.
The struct you refer to I think is in the LCD driver.
I derived it from one of the supplied LCD drivers (in /drivers/video/mxs).
Note that our LCD has a different resolution, so you should keep the values of the original drivers. To use a different resolution some defines in the top of the file had to be changed as well.
static struct mxs_platform_fb_entry fb_entry = {
.name = "43wvf1g",
.x_res = 480,
.y_res = 640,
.bpp = 32,
.cycle_time_ns = 30,
.lcd_type = MXS_LCD_PANEL_DOTCLK,
.init_panel = init_panel,
.release_panel = release_panel,
.blank_panel = blank_panel,
.run_panel = mxs_lcdif_run,
.stop_panel = mxs_lcdif_stop,
.pan_display = mxs_lcdif_pan_display,
.bl_data = &bl_data,
};
Regards,
Denny