Hi,
I am simply trying to setup two separate framebuffers: one HDMI and one single channel LVDS.
HDMI and LVDS are working properly, but enabling both is not working.
Here is my fb setup:
static struct fsl_mxc_hdmi_platform_data hdmi_data = {
.init = hdmi_init,
};
static struct fsl_mxc_hdmi_core_platform_data hdmi_core_data = {
.ipu_id = 0,
.disp_id = 0,
};
static struct fsl_mxc_ldb_platform_data ldb_data = {
.ipu_id = 1,
.disp_id = 0,
.ext_ref = 1,
.mode = LDB_SIN0,
.sec_ipu_id = 0,
.sec_disp_id = 1,
};
static struct ipuv3_fb_platform_data fb_data[] = {
{ /* fb0 */
.disp_dev = "hdmi",
.interface_pix_fmt = IPU_PIX_FMT_RGB24,
.mode_str = "1280x1024M@60",
.default_bpp = 24,
.int_clk = false,
},
{ /* fb1 */
.disp_dev = "ldb",
.interface_pix_fmt = IPU_PIX_FMT_RGB666,
.mode_str = "LDB-WVGA",
.default_bpp = 16,
.int_clk = false,
},
In the sample above the ldb driver will be loaded correctly but the ldb_disp_setup() function will never be called.
There also is no change when using boot arguments to overwrite this default configuration.
Only fb0 is running properly. So when I swap both FB definitions above LDB is working and HDMI is down.
This has worked on 3.0.15 kernel properly by on 3.0.35 kernel I did not succeed yet. Any ideas?