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>;
|
||
|
};
|
||
|
};
|
||
|
};
|
||
|
};
|