1. 程式人生 > >TQIMAX6q除錯筆記一:lvds屏的移植

TQIMAX6q除錯筆記一:lvds屏的移植

一、移植概述

Linux version:Linux Embedsky 4.1.15 #1 SMP PREEMPT Mon Sep 18 17:54:29 CST 2017 armv7l GNU/Linux

本次移植了兩塊LVDS螢幕,分別是12寸 單路 LVDS和13寸 雙路 LVDS。

二、12寸單路LVDS移植

1.uboot

修改引數:setenv mxcfb0 'video=mxcfb0:dev=ldb,[email protected],if=RGB888,bpp=24'

2.kernel

修改kernel_imx/arch/arm/boot/dts/imx6qdl-sabresd.dtsi 裝置樹:

//單路,只需要配置一個通道[email protected]

&ldb {
status = "okay";
dual-mode = <1>; //重要,設定顯示模式,見晶片手冊

[email protected] {
fsl,data-mapping = "spwg";  //重要,設定spwg對映標準,見晶片手冊
fsl,data-width = <24>;            //重要,設定24位資料寬度,見晶片手冊
status = "okay"; 

display-timings {
native-mode = <&timing0>;
timing0: hsd100pxn1 {
clock-frequency = <60000000>;
hactive = <1280>;
vactive = <800>;
hback-porch = <100>;
hfront-porch = <50>;
vback-porch = <15>;
vfront-porch = <8>;
hsync-len = <50>;
 vsync-len = <15>;
};
};
};

三、13寸雙路LVDS移植

1.uboot

修改引數:setenv mxcfb0 'video=mxcfb0:dev=ldb,[email protected],if=RGB888 ldb=spl0,bpp=24'

2.kernel

修改kernel_imx/arch/arm/boot/dts/imx6qdl-sabresd.dtsi 裝置樹:

//雙路,需要配置兩個個通道[email protected][email protected] 

&ldb {
status = "okay";
split-mode = <1>; //重要,設定雙顯示模式,見晶片手冊
[email protected]
{
fsl,data-mapping = "jeida";//重要,設定jeida對映標準,見晶片手冊
fsl,data-width = <24>;         //重要,設定24位資料寬度,見晶片手冊
status = "okay";


display-timings {
native-mode = <&timing0>;
timing0: hsd100pxn1 {
clock-frequency = <60000000>;
hactive = <1920>;
vactive = <1080>;
hback-porch = <88>;
hfront-porch = <58>;
vback-porch = <14>;
vfront-porch = <8>;
hsync-len = <42>;
 vsync-len = <14>;
};
};
};


[email protected] {
fsl,data-mapping = "jeida";
fsl,data-width = <24>;
primary;
status = "okay";


display-timings {
native-mode = <&timing1>;
timing1: hsd100pxn1 {
 clock-frequency = <60000000>;
hactive = <1920>;
vactive = <1080>;
hback-porch = <88>;
hfront-porch = <58>;
vback-porch = <14>;
vfront-porch = <8>;
hsync-len = <42>;
vsync-len = <14>;
};
};
};
};