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
|
Rockchip RGB interface
================================
Required properties:
- compatible: matching the soc type:
- "rockchip,px30-rgb";
- "rockchip,rk1808-rgb";
- "rockchip,rk3066-rgb";
- "rockchip,rk3308-rgb";
- "rockchip,rv1108-rgb";
Optional properties:
- pinctrl-names: the pin control state names; should contain "default"
- pinctrl-0: the default pinctrl state (active)
- pinctrl-1: the "sleep" pinctrl state
The rgb has two video ports described by:
Documentation/devicetree/bindings/media/video-interfaces.txt
Their connections are modeled using the OF graph bindings specified in
Documentation/devicetree/bindings/graph.txt.
- video port 0 for the VOP input, the remote endpoint maybe vopb/vopl/vop
- video port 1 for either a panel or subsequent encoder
the panel described by:
Documentation/devicetree/bindings/display/panel/simple-panel.txt
Panel other required properties:
- ports for remote rgb output.
Example:
panel: panel {
compatible = "auo,b101ean01";
enable-gpios = <&gpio7 21 GPIO_ACTIVE_HIGH>;
bus-format = <MEDIA_BUS_FMT_RGB888_1X24>;
ports {
panel_in_rgb: endpoint {
remote-endpoint = <&rgb_out_panel>;
};
};
};
For Rockchip RV1108:
rgb: rgb {
compatible = "rockchip,rv1108-rgb";
pinctrl-names = "default";
pinctrl-0 = <&lcdc_ctl>;
ports {
#address-cells = <1>;
#size-cells = <0>;
rgb_in: port@0 {
reg = <0>;
#address-cells = <1>;
#size-cells = <0>;
rgb_in_vop: endpoint {
remote-endpoint = <&vop_out_rgb>;
};
};
rgb_out: port@1 {
reg = <1>;
#address-cells = <1>;
#size-cells = <0>;
rgb_out_panel: endpoint {
remote-endpoint = <&panel_in_rgb>;
};
};
};
};
For Rockchip PX30:
grf: syscon@ff140000 {
compatible = "rockchip,px30-grf", "syscon", "simple-mfd";
...
rgb: rgb {
compatible = "rockchip,px30-rgb";
pinctrl-names = "default";
pinctrl-0 = <&lcdc_rgb_dclk_pin
&lcdc_rgb_m0_den_pin
&lcdc_rgb_m0_hsync_pin
&lcdc_rgb_m0_vsync_pin
&lcdc_rgb888_m0_data_pins>;
status = "disabled";
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
#address-cells = <1>;
#size-cells = <0>;
rgb_in_vopb: endpoint@0 {
reg = <0>;
remote-endpoint = <&vopb_out_rgb>;
};
rgb_in_vopl: endpoint@1 {
reg = <1>;
remote-endpoint = <&vopl_out_rgb>;
};
};
};
};
};
|