aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation/devicetree/bindings/media/xilinx/xlnx,v-vpss-csc.txt
blob: b3627af85e6e1ec664a2a1ea486aa24b9e803245 (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
Xilinx VPSS Color Space Converter (CSC)
-----------------------------------------
The Xilinx VPSS Color Space Converter (CSC) is a Video IP that supports
color space conversion from RGB input to YUV output.

Required properties:

- compatible: Must be "xlnx,v-vpss-csc".

- reg: Physical base address and length of the registers set for the device.

- clocks: Reference to the clock that drives the ap_clk signal.

- xlnx,max-height: Maximum number of lines.
  Valid range from 64 to 4320.

- xlnx,max-width: Maximum number of pixels in a line.
  Valid range from 64 to 8192.

- reset-gpios: Specifier for a GPIO that assert VPSS CSC (AP_RST_N) reset.

- ports: Video ports, using the DT bindings defined in ../video-interfaces.txt.
  The scaler has an input port (0) and an output port (1).

Required port properties:

- xlnx,video-format: Must be XVIP_VF_RBG, XVIP_VF_YUV_444 or XVIP_VF_YUV_422
  for input port (0) and XVIP_VF_RBG, XVIP_VF_YUV_444 or XVIP_VF_YUV_422
  for output port (1). See <dt-bindings/media/xilinx-vip.h> for more details.

- xlnx,video-width: Video width as defined in video.txt. Must be either 8 or 10.

Example:
	csc_1:csc@a0040000 {
		compatible = "xlnx,v-vpss-csc";
		reg = <0x0 0xa0040000 0x0 0x10000>;
		clocks = <&vid_stream_clk>;
		reset-gpios = <&gpio 84 1>;
		xlnx,max-width = <3840>;
		xlnx,max-height = <2160>;

		ports {
			#address-cells = <1>;
			#size-cells = <0>;
			/* Sink Pad */
			port@0 {
				reg = <0>;
				xlnx,video-format = <XVIP_VF_RBG>;
				xlnx,video-width = <8>;

				csc_in: endpoint {
					remote-endpoint = <&gamma_out>;
				};
			};
			/* Source Pad */
			port@1 {
				reg = <1>;
				xlnx,video-format = <XVIP_VF_RBG>;
				xlnx,video-width = <8>;

				csc_out: endpoint {
					remote-endpoint = <&scalar_in>;
				};
			};
		};
	};