138 lines
		
	
	
		
			4.4 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			138 lines
		
	
	
		
			4.4 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
# SPDX-License-Identifier: GPL-2.0 OR BSD-2-Clause
 | 
						|
# Copyright (C) 2019 Renesas Electronics Corp.
 | 
						|
%YAML 1.2
 | 
						|
---
 | 
						|
$id: http://devicetree.org/schemas/media/i2c/imi,rdacm2x-gmsl.yaml#
 | 
						|
$schema: http://devicetree.org/meta-schemas/core.yaml#
 | 
						|
 | 
						|
title: IMI D&D RDACM20 and RDACM21 Automotive Camera Platforms
 | 
						|
 | 
						|
maintainers:
 | 
						|
  - Jacopo Mondi <jacopo+renesas@jmondi.org>
 | 
						|
  - Kieran Bingham <kieran.bingham+renesas@ideasonboard.com>
 | 
						|
  - Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
 | 
						|
  - Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
 | 
						|
 | 
						|
description: -|
 | 
						|
  The IMI D&D RDACM20 and RDACM21 are GMSL-compatible camera designed for
 | 
						|
  automotive applications.
 | 
						|
 | 
						|
  The RDACM20 camera module encloses a Maxim Integrated MAX9271 GMSL serializer,
 | 
						|
  coupled with an OV10635 image sensor and an embedded MCU. Both the MCU and
 | 
						|
  the image sensor are connected to the serializer local I2C bus and are
 | 
						|
  accessible by the host SoC by direct addressing.
 | 
						|
 | 
						|
  The RDACM21 camera module encloses the same serializer, coupled with an
 | 
						|
  OV10640 image sensor and an OV490 ISP. Only the OV490 ISP is interfaced to
 | 
						|
  the serializer local I2C bus while the image sensor is not accessible from
 | 
						|
  the host SoC.
 | 
						|
 | 
						|
  They both connect to a remote GMSL endpoint through a coaxial cable.
 | 
						|
 | 
						|
                                                   IMI RDACM20
 | 
						|
  +---------------+                        +--------------------------------+
 | 
						|
  |      GMSL     |   <- Video Stream      |       <- Video--------\        |
 | 
						|
  |               |< === GMSL Link ====== >|MAX9271<- I2C bus-> <-->OV10635 |
 | 
						|
  | de-serializer |   <- I2C messages ->   |                   \<-->MCU     |
 | 
						|
  +---------------+                        +--------------------------------+
 | 
						|
 | 
						|
                                                   IMI RDACM21
 | 
						|
  +---------------+                        +--------------------------------+
 | 
						|
  |      GMSL     |   <- Video Stream      |       <- Video--------\        |
 | 
						|
  |               |< === GMSL Link ====== >|MAX9271<- I2C bus-> <-->OV490   |
 | 
						|
  |               |   <- I2C messages ->   |                          |     |
 | 
						|
  | de-serializer |                        |          OV10640 <-------|     |
 | 
						|
  +---------------+                        +--------------------------------+
 | 
						|
 | 
						|
  Both camera modules serialize video data generated by the embedded camera
 | 
						|
  sensor on the GMSL serial channel to a remote GMSL de-serializer. They also
 | 
						|
  receive and transmit I2C messages encapsulated and transmitted on the GMSL
 | 
						|
  bidirectional control channel.
 | 
						|
 | 
						|
  All I2C traffic received on the GMSL link not directed to the serializer is
 | 
						|
  propagated on the local I2C bus to the remote device there connected. All the
 | 
						|
  I2C traffic generated on the local I2C bus not directed to the serializer is
 | 
						|
  propagated to the remote de-serializer encapsulated in the GMSL control
 | 
						|
  channel.
 | 
						|
 | 
						|
  The RDACM20 and RDACM21 DT node should be a direct child of the GMSL
 | 
						|
  deserializer's I2C bus corresponding to the GMSL link that the camera is
 | 
						|
  attached to.
 | 
						|
 | 
						|
properties:
 | 
						|
  '#address-cells':
 | 
						|
    const: 1
 | 
						|
 | 
						|
  '#size-cells':
 | 
						|
    const: 0
 | 
						|
 | 
						|
  compatible:
 | 
						|
    enum:
 | 
						|
      - imi,rdacm20
 | 
						|
      - imi,rdacm21
 | 
						|
 | 
						|
  reg:
 | 
						|
    description: -|
 | 
						|
      I2C device addresses, the first to be assigned to the serializer, the
 | 
						|
      following ones to be assigned to the remote devices.
 | 
						|
 | 
						|
      For RDACM20 the second entry of the property is assigned to the
 | 
						|
      OV10635 image sensor and the optional third one to the embedded MCU.
 | 
						|
 | 
						|
      For RDACM21 the second entry is assigned to the OV490 ISP and the optional
 | 
						|
      third one ignored.
 | 
						|
 | 
						|
    minItems: 2
 | 
						|
    maxItems: 3
 | 
						|
 | 
						|
  port:
 | 
						|
    $ref: /schemas/graph.yaml#/properties/port
 | 
						|
    description:
 | 
						|
      Connection to the remote GMSL endpoint.
 | 
						|
 | 
						|
required:
 | 
						|
  - compatible
 | 
						|
  - reg
 | 
						|
  - port
 | 
						|
 | 
						|
additionalProperties: false
 | 
						|
 | 
						|
examples:
 | 
						|
  - |
 | 
						|
    i2c@e66d8000 {
 | 
						|
      #address-cells = <1>;
 | 
						|
      #size-cells = <0>;
 | 
						|
 | 
						|
      reg = <0 0xe66d8000>;
 | 
						|
 | 
						|
      camera@31 {
 | 
						|
        compatible = "imi,rdacm20";
 | 
						|
        reg = <0x31>, <0x41>, <0x51>;
 | 
						|
 | 
						|
        port {
 | 
						|
          rdacm20_out0: endpoint {
 | 
						|
            remote-endpoint = <&max9286_in0>;
 | 
						|
          };
 | 
						|
        };
 | 
						|
      };
 | 
						|
    };
 | 
						|
 | 
						|
  - |
 | 
						|
    i2c@e66d8000 {
 | 
						|
      #address-cells = <1>;
 | 
						|
      #size-cells = <0>;
 | 
						|
 | 
						|
      reg = <0 0xe66d8000>;
 | 
						|
 | 
						|
      camera@31 {
 | 
						|
        compatible = "imi,rdacm21";
 | 
						|
        reg = <0x31>, <0x41>;
 | 
						|
 | 
						|
        port {
 | 
						|
          rdacm21_out0: endpoint {
 | 
						|
            remote-endpoint = <&max9286_in0>;
 | 
						|
          };
 | 
						|
        };
 | 
						|
      };
 | 
						|
    };
 |