Hello all.
I want to use both displays (HDMI and LCD) with different dimensions on my custom board based on sabresd.
I have both displays work with different dimensions on Android, but can't get it on Yocto and Debian.
I have both displays work only if i set for lcd and hdmi the same ipu_id and disp_id in dtsi. In this case they both have 800x480 dimension. What should I do to get different dimension on HDMi and LCD?
here is my dtsi:
| mxcfb1: fb@0 { |
| | compatible = "fsl,mxc_sdc_fb"; |
| | disp_dev = "lcd"; |
| | interface_pix_fmt = "RGB24"; |
| | mode_str ="CLAA-WVGA"; |
| | default_bpp = <24>; |
| | int_clk = <0>; |
| | late_init = <0>; |
| | status = "disabled"; |
};
mxcfb2: fb@1 {
| | compatible = "fsl,mxc_sdc_fb"; |
| | disp_dev = "hdmi"; |
| | interface_pix_fmt = "RGB24"; |
| | mode_str ="1920x1080M@60"; |
| | default_bpp = <24>; |
| | int_clk = <0>; |
| | late_init = <0>; |
| | status = "disabled"; |
};
mxcfb3: fb@2 {
| | compatible = "fsl,mxc_sdc_fb"; |
| | disp_dev = "ldb"; |
| | interface_pix_fmt = "RGB666"; |
| | default_bpp = <16>; |
| | int_clk = <0>; |
| | late_init = <0>; |
| | status = "disabled"; |
};
mxcfb4: fb@3 {
| | compatible = "fsl,mxc_sdc_fb"; |
| | disp_dev = "ldb"; |
| | interface_pix_fmt = "RGB666"; |
| | default_bpp = <16>; |
| | int_clk = <0>; |
| | late_init = <0>; |
| | status = "disabled"; |
};
lcd@0 {
| | compatible = "fsl,lcd"; |
| | ipu_id = <0>; |
| | disp_id = <0>; |
| | default_ifmt = "RGB24"; |
| | pinctrl-names = "default"; |
| | pinctrl-0 = <&pinctrl_ipu1_1>; |
| | status = "okay"; |
};
...
&hdmi_audio {
status = "okay";
};
&hdmi_cec {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_hdmi_cec_2>;
status = "okay";
};
&hdmi_core {
ipu_id = <0>;
disp_id = <0>;
status = "okay";
};
&hdmi_video {
fsl,phy_reg_vlev = <0x0294>;
fsl,phy_reg_cksymtx = <0x800d>;
status = "okay";
};
my video u-boot environment:
video=mxcfb0:dev=lcd,bpp=16,CLAA-WVGA,if=RGB24 video=mxcfb1:dev=hdmi,1920x1080M@60,if=RGB24
If i change envinronment to:
video=mxcfb1:dev=lcd,bpp=16,CLAA-WVGA,if=RGB24 video=mxcfb0:dev=hdmi,1920x1080M@60,if=RGB24
then HDMI sets to 1920x1080, but LCD at this time shows garbage.
I have read this post How to add HDMI and LCD both(Dual display) on latest devicetree supported kernel
and compared dts files with my own and didn't found any differences.
I use 3.10.53 kernel.
Thanks.