summaryrefslogtreecommitdiffstats
path: root/Documentation/devicetree/bindings/media/i2c/tvp5150.txt
blob: 28b64ad149efa38657c8491acad1d49b40f2f877 (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
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
* Texas Instruments TVP5150 and TVP5151 video decoders

The TVP5150 and TVP5151 are video decoders that convert baseband NTSC and PAL
(and also SECAM in the TVP5151 case) video signals to either 8-bit 4:2:2 YUV
with discrete syncs or 8-bit ITU-R BT.656 with embedded syncs output formats.

Required Properties:
- compatible: value must be "ti,tvp5150"
- reg: I2C slave address

Optional Properties:
- pdn-gpios: phandle for the GPIO connected to the PDN pin, if any.
- reset-gpios: phandle for the GPIO connected to the RESETB pin, if any.

The device node must contain one 'port' child node per device physical input
and output port, in accordance with the video interface bindings defined in
Documentation/devicetree/bindings/media/video-interfaces.txt. The port nodes
are numbered as follows

	  Name		Type		Port
	--------------------------------------
	  AIP1A		sink		0
	  AIP1B		sink		1
	  Y-OUT		src		2

The device node must contain at least one sink port and the src port. Each input
port must be linked to an endpoint defined in
Documentation/devicetree/bindings/display/connector/analog-tv-connector.txt. The
port/connector layout is as follows

tvp-5150 port@0 (AIP1A)
	endpoint@0 -----------> Comp0-Con  port
	endpoint@1 ------+----> Svideo-Con port
tvp-5150 port@1 (AIP1B)  |
	endpoint@1 ------+
	endpoint@0 -----------> Comp1-Con  port
tvp-5150 port@2
	endpoint (video bitstream output at YOUT[0-7] parallel bus)

Required Endpoint Properties for parallel synchronization on output port:

- hsync-active: active state of the HSYNC signal. Must be <1> (HIGH).
- vsync-active: active state of the VSYNC signal. Must be <1> (HIGH).
- field-even-active: field signal level during the even field data
  transmission. Must be <0>.

If none of hsync-active, vsync-active and field-even-active is specified,
the endpoint is assumed to use embedded BT.656 synchronization.

Example - three input sources:

comp_connector_0 {
	compatible = "composite-video-connector";
	label = "Composite0";

	port {
		composite0_to_tvp5150: endpoint {
			remote-endpoint = <&tvp5150_to_composite0>;
		};
	};
};

comp_connector_1 {
	compatible = "composite-video-connector";
	label = "Composite1";

	port {
		composite1_to_tvp5150: endpoint {
			remote-endpoint = <&tvp5150_to_composite1>;
		};
	};
};

svideo_connector {
	compatible = "svideo-connector";
	label = "S-Video";

	port {
		#address-cells = <1>;
		#size-cells = <0>;

		svideo_luma_to_tvp5150: endpoint@0 {
			reg = <0>;
			remote-endpoint = <&tvp5150_to_svideo_luma>;
		};

		svideo_chroma_to_tvp5150: endpoint@1 {
			reg = <1>;
			remote-endpoint = <&tvp5150_to_svideo_chroma>;
		};
	};
};

&i2c2 {
	tvp5150@5c {
		compatible = "ti,tvp5150";
		reg = <0x5c>;
		pdn-gpios = <&gpio4 30 GPIO_ACTIVE_LOW>;
		reset-gpios = <&gpio6 7 GPIO_ACTIVE_LOW>;
		#address-cells = <1>;
		#size-cells = <0>;

		port@0 {
			#address-cells = <1>;
			#size-cells = <0>;
			reg = <0>;

			tvp5150_to_composite0: endpoint@0 {
				reg = <0>;
				remote-endpoint = <&composite0_to_tvp5150>;
			};

			tvp5150_to_svideo_luma: endpoint@1 {
				reg = <1>;
				remote-endpoint = <&svideo_luma_to_tvp5150>;
			};
		};

		port@1 {
			#address-cells = <1>;
			#size-cells = <0>;
			reg = <1>;

			tvp5150_to_composite1: endpoint@0 {
				reg = <0>;
                                remote-endpoint = <&composite1_to_tvp5150>;
			};

			tvp5150_to_svideo_chroma: endpoint@1 {
				reg = <1>;
				remote-endpoint = <&svideo_chroma_to_tvp5150>;
			};
		};

		port@2 {
			reg = <2>;

			tvp5150_1: endpoint {
				remote-endpoint = <&ccdc_ep>;
			};
		};
	};
};