Training courses

Kernel and Embedded Linux

Bootlin training courses

Embedded Linux, kernel,
Yocto Project, Buildroot, real-time,
graphics, boot time, debugging...

Bootlin logo

Elixir Cross Referencer

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: must be "ti,dra72-cal"
- 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;

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";
		ti,hwmods = "cal";
		reg = <0x4845B000 0x400>,
		      <0x4845B800 0x40>,
		      <0x4845B900 0x40>,
		      <0x4A002e94 0x4>;
		reg-names = "cal_top",
			    "cal_rx_core0",
			    "cal_rx_core1",
			    "camerrx_control";
		interrupts = <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>;
		#address-cells = <1>;
		#size-cells = <0>;

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

			csi2_0: port@0 {
				reg = <0>;
				endpoint {
					slave-mode;
					remote-endpoint = <&ar0330_1>;
				};
			};
			csi2_1: port@1 {
				reg = <1>;
			};
		};
	};

	i2c5: i2c@4807c000 {
		ar0330@10 {
			compatible = "ti,ar0330";
			reg = <0x10>;

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

				ar0330_1: endpoint {
					reg = <0>;
					clock-lanes = <1>;
					data-lanes = <0 2 3 4>;
					remote-endpoint = <&csi2_0>;
				};
			};
		};
	};