138 lines · yaml
1# SPDX-License-Identifier: GPL-2.0 OR BSD-2-Clause2# Copyright (C) 2019 Renesas Electronics Corp.3%YAML 1.24---5$id: http://devicetree.org/schemas/media/i2c/imi,rdacm2x-gmsl.yaml#6$schema: http://devicetree.org/meta-schemas/core.yaml#7 8title: IMI D&D RDACM20 and RDACM21 Automotive Camera Platforms9 10maintainers:11 - Jacopo Mondi <jacopo+renesas@jmondi.org>12 - Kieran Bingham <kieran.bingham+renesas@ideasonboard.com>13 - Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>14 - Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se>15 16description: -|17 The IMI D&D RDACM20 and RDACM21 are GMSL-compatible camera designed for18 automotive applications.19 20 The RDACM20 camera module encloses a Maxim Integrated MAX9271 GMSL serializer,21 coupled with an OV10635 image sensor and an embedded MCU. Both the MCU and22 the image sensor are connected to the serializer local I2C bus and are23 accessible by the host SoC by direct addressing.24 25 The RDACM21 camera module encloses the same serializer, coupled with an26 OV10640 image sensor and an OV490 ISP. Only the OV490 ISP is interfaced to27 the serializer local I2C bus while the image sensor is not accessible from28 the host SoC.29 30 They both connect to a remote GMSL endpoint through a coaxial cable.31 32 IMI RDACM2033 +---------------+ +--------------------------------+34 | GMSL | <- Video Stream | <- Video--------\ |35 | |< === GMSL Link ====== >|MAX9271<- I2C bus-> <-->OV10635 |36 | de-serializer | <- I2C messages -> | \<-->MCU |37 +---------------+ +--------------------------------+38 39 IMI RDACM2140 +---------------+ +--------------------------------+41 | GMSL | <- Video Stream | <- Video--------\ |42 | |< === GMSL Link ====== >|MAX9271<- I2C bus-> <-->OV490 |43 | | <- I2C messages -> | | |44 | de-serializer | | OV10640 <-------| |45 +---------------+ +--------------------------------+46 47 Both camera modules serialize video data generated by the embedded camera48 sensor on the GMSL serial channel to a remote GMSL de-serializer. They also49 receive and transmit I2C messages encapsulated and transmitted on the GMSL50 bidirectional control channel.51 52 All I2C traffic received on the GMSL link not directed to the serializer is53 propagated on the local I2C bus to the remote device there connected. All the54 I2C traffic generated on the local I2C bus not directed to the serializer is55 propagated to the remote de-serializer encapsulated in the GMSL control56 channel.57 58 The RDACM20 and RDACM21 DT node should be a direct child of the GMSL59 deserializer's I2C bus corresponding to the GMSL link that the camera is60 attached to.61 62properties:63 '#address-cells':64 const: 165 66 '#size-cells':67 const: 068 69 compatible:70 enum:71 - imi,rdacm2072 - imi,rdacm2173 74 reg:75 description: -|76 I2C device addresses, the first to be assigned to the serializer, the77 following ones to be assigned to the remote devices.78 79 For RDACM20 the second entry of the property is assigned to the80 OV10635 image sensor and the optional third one to the embedded MCU.81 82 For RDACM21 the second entry is assigned to the OV490 ISP and the optional83 third one ignored.84 85 minItems: 286 maxItems: 387 88 port:89 $ref: /schemas/graph.yaml#/properties/port90 description:91 Connection to the remote GMSL endpoint.92 93required:94 - compatible95 - reg96 - port97 98additionalProperties: false99 100examples:101 - |102 i2c@e66d8000 {103 #address-cells = <1>;104 #size-cells = <0>;105 106 reg = <0 0xe66d8000>;107 108 camera@31 {109 compatible = "imi,rdacm20";110 reg = <0x31>, <0x41>, <0x51>;111 112 port {113 rdacm20_out0: endpoint {114 remote-endpoint = <&max9286_in0>;115 };116 };117 };118 };119 120 - |121 i2c@e66d8000 {122 #address-cells = <1>;123 #size-cells = <0>;124 125 reg = <0 0xe66d8000>;126 127 camera@31 {128 compatible = "imi,rdacm21";129 reg = <0x31>, <0x41>;130 131 port {132 rdacm21_out0: endpoint {133 remote-endpoint = <&max9286_in0>;134 };135 };136 };137 };138