summaryrefslogtreecommitdiff
path: root/arch/arm64/boot/dts/freescale/fsl-imx8qxp-colibri-lvds-dual-eval-v3.dts
blob: 3171b7ef7d5a027116b72d3b683ee7721c2cf3d4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
// SPDX-License-Identifier: GPL-2.0+ OR X11
/*
 * Copyright 2018-2019 Toradex
 */

/dts-v1/;
//#define IS_A0_SILICON

#include "dt-bindings/pwm/pwm.h"
#include "fsl-imx8qxp-colibri-eval-v3.dtsi"

/ {
	model = "Toradex Colibri iMX8QXP with dual channel lvds";
	compatible = "toradex,colibri-imx8qxp-lvds-dual-eval-v3", "toradex,colibri-imx8qxp", "fsl,imx8qxp";

	backlight: backlight {
		compatible = "pwm-backlight";
		pinctrl-names = "default";
		pinctrl-0 = <&pinctrl_gpio_bklght_on>;
		enable-gpios = <&gpio1 31 GPIO_ACTIVE_HIGH>; /* Ext.Conn 25: LVDS1_GPIO0_00 */
		pwms = <&pwm_adma_lcdif 0 5000000>; /* PWM freq. 200Hz */
		brightness-levels = <0 8 16 32 64 128 192 255>;
		default-brightness-level = <6>;
		status = "okay";
	};

	lvds1_panel {
		compatible = "lg,lp156wf1";
		backlight = <&backlight>;

		port {
			panel_lvds1_in: endpoint {
				remote-endpoint = <&lvds1_out>;
			};
		};
	};
};

&iomuxc {
	pinctrl-names = "default";

	colibri-imx8qxp {
		pinctrl_gpio_bklght_on: gpio-bl-on {
			fsl,pins = <
				SC_P_MIPI_DSI1_GPIO0_00_LSIO_GPIO1_IO31		0x00000020
			>;
		};
	};
};

/* DSI/LVDS port 0 */
&i2c0_mipi_lvds0 {
	#address-cells = <1>;
	#size-cells = <0>;
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_i2c0_mipi_lvds0>;
	clock-frequency = <100000>;
	status = "disabled";
};

&ldb1_phy {
	status = "okay";
};

&ldb1 {
	status = "okay";
	fsl,dual-channel;
	power-domains = <&pd_mipi_dsi_1_dual_lvds>;

	lvds-channel@0 {
		fsl,data-mapping = "jeida";
		fsl,data-width = <24>; /* Actually would need 18 but isn't supported by the driver */
		status = "okay";

		port@1 {
			reg = <1>;

			lvds1_out: endpoint {
				remote-endpoint = <&panel_lvds1_in>;
			};
		};
	};
};

&mipi_dsi_phy1 {
	status = "okay";
};

&mipi_dsi1 {
	pwr-delay = <10>;
	status = "okay";
};

&mipi_dsi_bridge1 {
	status = "disabled";
};

/* DSI/LVDS port 1 */
&i2c0_mipi_lvds1 {
	#address-cells = <1>;
	#size-cells = <0>;
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_i2c0_mipi_csi>;
	clock-frequency = <100000>;
	status = "disabled";
};

&ldb2_phy {
	status = "okay";
};

&ldb2 {
	status = "disabled";
};

&mipi_dsi_phy2 {
	status = "okay";
};

&mipi_dsi2 {
	pwr-delay = <10>;
	status = "okay";
};

&mipi_dsi_bridge2 {
	status = "disabled";
};