diff options
-rw-r--r-- | arch/arm/boot/dts/imx6q-sabrelite.dts | 12 | ||||
-rw-r--r-- | arch/arm/mach-imx/mach-imx6q.c | 11 | ||||
-rw-r--r-- | drivers/video/mxc/mxc_ipuv3_fb.c | 6 |
3 files changed, 29 insertions, 0 deletions
diff --git a/arch/arm/boot/dts/imx6q-sabrelite.dts b/arch/arm/boot/dts/imx6q-sabrelite.dts index 6d1f57ce32b..95c7fcc2c71 100644 --- a/arch/arm/boot/dts/imx6q-sabrelite.dts +++ b/arch/arm/boot/dts/imx6q-sabrelite.dts @@ -68,4 +68,16 @@ linux,default-trigger = "heartbeat"; }; }; + + fbs { + #address-cells = <1>; + #size-cells = <1>; + compatible = "simple-bus"; + ranges; + + fb@0 { + compatible = "fsl,mxcfb_ipuv3"; + reg = <0x00000000 0x0>; /* reserve fb mem */ + }; + }; }; diff --git a/arch/arm/mach-imx/mach-imx6q.c b/arch/arm/mach-imx/mach-imx6q.c index c662c5f4520..ddb57901f1f 100644 --- a/arch/arm/mach-imx/mach-imx6q.c +++ b/arch/arm/mach-imx/mach-imx6q.c @@ -85,9 +85,20 @@ static struct fsl_mxc_hdmi_core_platform_data hdmi_core_data = { .disp_id = 0, }; +static struct ipuv3_fb_platform_data sabr_fb_data[] = { + { /*fb0*/ + .disp_dev = "hdmi", + .interface_pix_fmt = IPU_PIX_FMT_RGB24, + .mode_str = "1280x720M@60", + .default_bpp = 16, + .int_clk = false, + }, +}; + static const struct of_dev_auxdata imx6q_auxdata_lookup[] __initconst = { OF_DEV_AUXDATA("fsl,ipuv3", MX6Q_IPU1_BASE_ADDR, "imx-ipuv3.0", &ipuv3_pdata), OF_DEV_AUXDATA("fsl,ipuv3", MX6Q_IPU2_BASE_ADDR, "imx-ipuv3.1", &ipuv3_pdata), + OF_DEV_AUXDATA("fsl,mxcfb_ipuv3", 0, "mxc_sdc_fb.0", &sabr_fb_data[0]), OF_DEV_AUXDATA("fsl,imx6q-hdmi-core", MX6Q_HDMI_BASE_ADDR, "mxc_hdmi_core.0", &hdmi_core_data), }; diff --git a/drivers/video/mxc/mxc_ipuv3_fb.c b/drivers/video/mxc/mxc_ipuv3_fb.c index 63807917350..b65632cc233 100644 --- a/drivers/video/mxc/mxc_ipuv3_fb.c +++ b/drivers/video/mxc/mxc_ipuv3_fb.c @@ -2031,12 +2031,18 @@ static int mxcfb_remove(struct platform_device *pdev) return 0; } +static const struct of_device_id mxcfb_ipuv3_dt_ids[] = { + { .compatible = "fsl,mxcfb_ipuv3", }, + { /* sentinel */ } +}; + /*! * This structure contains pointers to the power management callback functions. */ static struct platform_driver mxcfb_driver = { .driver = { .name = MXCFB_NAME, + .of_match_table = mxcfb_ipuv3_dt_ids, }, .probe = mxcfb_probe, .remove = mxcfb_remove, |