VAR-SOM-MX6 LVDS: Difference between revisions

From Variscite Wiki
No edit summary
 
(4 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{PageHeader|VAR-SOM-MX6 - LVDS}} {{DocImage|category1=VAR-SOM-MX6|category2=Yocto}} __toc__
{{PageHeader|VAR-SOM-MX6 - LVDS}} {{DocImage|category1=VAR-SOM-MX6|category2=Yocto}} __toc__
= LVDS on Variscite's EVKs =
On VAR-SOLOCUSTOMBOARD:
* LVDS1 is the primary default display, used as 18bit LVDS
* LVDS0 is the the secondary display.
<span style="color:red">Note:</span> LVDS0 and LVDS1 headers are not pin-2-pin compatible. Variscite's provided display can not be connected to LVDS0 header.
<br><br>
On VAR-MX6CUSTOMBOARD:
* LVDS0 is the primary default display, used as 24bit LVDS, and connected to an RGB display, using LVDS->RGB converter.
* LVDS1 is the the secondary display.
= LVDS boot arguments =
= LVDS boot arguments =


Line 16: Line 28:
</pre>
</pre>


== Switching to LVDS1 as main display ==
== Switching between LVDS0 and LVDS1 as main display ==
Switching to LVDS1 display requires changing the "primary" of the lvds section flag in the device tree.
Switching between the  LVDS channels requires changing the "primary" of the LVDS section flag in the device tree.
Example:<br>
Setting display to be LVDS1 by default: edit arch/arm/boot/dts/imx6qdl-var-som.dtsi and set section of the lvds1. When you set the "primary" property to the LVDS1 struct, make sure you remove it from the LVDS0 struct
Setting display to be LVDS1 by default: edit arch/arm/boot/dts/imx6qdl-var-som.dtsi and set section of the lvds1. When you set the "primary" property to the LVDS1 struct, make sure you remove it from the LVDS0 struct



Latest revision as of 16:38, 25 June 2016

VAR-SOM-MX6 - LVDS

LVDS on Variscite's EVKs

On VAR-SOLOCUSTOMBOARD:

  • LVDS1 is the primary default display, used as 18bit LVDS
  • LVDS0 is the the secondary display.

Note: LVDS0 and LVDS1 headers are not pin-2-pin compatible. Variscite's provided display can not be connected to LVDS0 header.

On VAR-MX6CUSTOMBOARD:

  • LVDS0 is the primary default display, used as 24bit LVDS, and connected to an RGB display, using LVDS->RGB converter.
  • LVDS1 is the the secondary display.

LVDS boot arguments

Resistive/Capacitive alternate screen

Variscite expand the default display settings to support alternate display without any requirement to change the device tree. During the boot sequence Variscite u-boot will add screen_alternate=yes option to enable selection of the second display settings (capacitive display).
For example:

U-Boot # printenv mmcargs
mmcargs=setenv bootargs console=${console},${baudrate} ${smp} video=mxcfb1:off root=${mmcroot} 
screen_alternate=yes

The developer can prevent the modification of u-boot by settings var_auto_fdt_file=N.

U-Boot # setenv var_auto_fdt_file=N

Switching between LVDS0 and LVDS1 as main display

Switching between the LVDS channels requires changing the "primary" of the LVDS section flag in the device tree. Example:
Setting display to be LVDS1 by default: edit arch/arm/boot/dts/imx6qdl-var-som.dtsi and set section of the lvds1. When you set the "primary" property to the LVDS1 struct, make sure you remove it from the LVDS0 struct

lvds-channel@1 {
fsl,data-mapping = "spwg";
fsl,data-width = <18>;
crtc = "ipu1-di1";
primary;
status = "okay";
display-timings {
native-mode = <&timing1>;
timing1: hsd100pxn1 {
clock-frequency = <35714000>;
hactive = <800>;
vactive = <480>;
hback-porch = <28>;
hfront-porch = <17>;
vback-porch = <13>;
vfront-porch = <20>;
hsync-len = <20>;
vsync-len = <13>;
};
};
};

Please take a look on the wiki section for kernel out of tree to see how to compile the device tree.