Looks helpful. I'll read through it. I discovered that the location of the status="okay"; statement matters, and now with that statement under the configuration for that node I get the following out of dmesg:
[ 3.776730] imx-drm display-subsystem: bound imx-ipuv3-crtc.0 (ops ipu_crtc_ops)
[ 3.784208] imx-drm display-subsystem: bound imx-ipuv3-crtc.1 (ops ipu_crtc_ops)
[ 3.791721] imx-drm display-subsystem: bound imx-ipuv3-crtc.4 (ops ipu_crtc_ops)
[ 3.799226] imx-drm display-subsystem: bound imx-ipuv3-crtc.5 (ops ipu_crtc_ops)
[ 3.806843] dwhdmi-imx 120000.hdmi: Detected HDMI controller 0x13:0xa:0xa0:0xc1
[ 3.814351] [drm] forcing HDMI-A-1 connector ON
[ 3.818937] imx-drm display-subsystem: bound 120000.hdmi (ops dw_hdmi_imx_ops)
[ 3.826355] imx-ldb 2000000.aips-bus:ldb@020e0008: could not determine data mapping: -22
[ 3.834470] imx-drm display-subsystem: failed to bind 2000000.aips-bus:ldb@020e0008 (ops imx_ldb_ops): -22
[ 3.844925] imx-drm display-subsystem: master bind failed: -22
[ 3.850787] imx-ipuv3-crtc: probe of imx-ipuv3-crtc.5 failed with error -22
[ 3.858174] imx-ipuv3 2800000.ipu: IPUv3H probed
Which is an improvement I guess, it's at least trying to do something. I haven't found a translation for error -22 yet though. The LDB declaration I'm making on top of the default code is:
&ldb {
interface_pix_fmt = "IPU_PIX_FMT_RGB666";
clocks = <&clks IMX6QDL_CLK_LDB_DI0_SEL>, <&clks IMX6QDL_CLK_LDB_DI1_SEL>,
<&clks IMX6QDL_CLK_IPU1_DI0_SEL>, <&clks IMX6QDL_CLK_IPU1_DI1_SEL>,
<&clks IMX6QDL_CLK_IPU2_DI0_SEL>, <&clks IMX6QDL_CLK_IPU2_DI1_SEL>,
<&clks IMX6QDL_CLK_LDB_DI0>, <&clks IMX6QDL_CLK_LDB_DI1>,
<&clks IMX6QDL_CLK_LDB_DI0_DIV_3_5>, <&clks IMX6QDL_CLK_LDB_DI1_DIV_3_5>,
<&clks IMX6QDL_CLK_LDB_DI0_SEL>, <&clks IMX6QDL_CLK_LDB_DI1_SEL>;
clock-names = "di0_pll", "di1_pll",
"di0_sel", "di1_sel",
"di2_sel", "di3_sel",
"di0", "di1",
"ldb_di0_div_3_5", "ldb_di1_div_3_5",
"ldb_di0_sel","ldb_di1_sel";
status = "okay";
lvds-channel@0 {
crtc = "ipu1-di1";
interface_pix_fmt = "RGB666";
status = "okay";
display-timings {
native-mode = <&timing0>;
timing0: timing {
clock-frequency = <30000000>;
hactive = <800>;
vactive = <480>;
hback-porch = <0x5a>;
hfront-porch = <0x78>;
vback-porch = <0x1>;
vfront-porch = <0x1>;
hsync-len = <0x64>;
vsync-len = <0x21>;
//linux,phandle = <0x14>;
//phandle = &timing0;
pixelclk-active = "active high";
};
};
};
};
Are you able to tell me more about what that error means? Thanks!