aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation/devicetree/bindings/media/ti-cal.txt
blob: cb2dc50a24fb71998d29707ce92b322637fd1270 (plain) (blame)
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
Texas Instruments DRA72x CAMERA ADAPTATION LAYER (CAL)
------------------------------------------------------

The Camera Adaptation Layer (CAL) is a key component for image capture
applications. The capture module provides the system interface and the
processing capability to connect CSI2 image-sensor modules to the
DRA72x device.

Required properties:
- compatible:
 Should be "ti,dra72-cal", for DRA72 controllers
 Should be "ti,dra72-pre-es2-cal", for DRA72 controllers pre ES2.0
- reg:	CAL Top level, Receiver Core #0, Receiver Core #1 and Camera RX
	control address space
- reg-names: cal_top, cal_rx_core0, cal_rx_core1 and camerrx_control
	     registers
- interrupts: should contain IRQ line for the CAL;
- ti,camerrx-control: phandle to the device control module and offset to
		      the control_camerarx_core register.
		      This node is meant to replace the "camerrx_control"
		      reg entry above but "camerrx_control" is still
		      handled for backward compatibility.

CAL supports 2 camera port nodes on MIPI bus. Each CSI2 camera port nodes
should contain a 'port' child node with child 'endpoint' node. Please
refer to the bindings defined in
Documentation/devicetree/bindings/media/video-interfaces.txt.

Example:
	cal: cal@4845b000 {
		compatible = "ti,dra72-cal";
		reg = <0x4845B000 0x400>,
		      <0x4845B800 0x40>,
		      <0x4845B900 0x40>;
		reg-names = "cal_top",
			    "cal_rx_core0",
			    "cal_rx_core1";
		interrupts = <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>;
		ti,camerrx-control = <&scm_conf 0xE94>;
		#address-cells = <1>;
		#size-cells = <0>;

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

			csi2_0: port@0 {
				reg = <0>;
				csi2_phy0: endpoint {
					remote-endpoint = <&csi2_cam0>;
					clock-lanes = <0>;
					data-lanes = <1 2>;
				};
			};
			csi2_1: port@1 {
				reg = <1>;
			};
		};
	};

	i2c5: i2c@4807c000 {
		clock-frequency = <400000>;

		camera-sensor@3c {
			compatible = "ovti,ov5640";
			reg = <0x3c>;

			clocks = <&clk_fixed>;
			clock-names = "xclk";

			port {
				csi2_cam0: endpoint {
					remote-endpoint = <&csi2_phy0>;
					clock-lanes = <0>;
					data-lanes = <1 2>;
				};
			};
		};
	};