forked from raspberrypi/linux
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
media: dt-bindings: media: i2c: Add bindings for IMI RDACM2x
The IMI RDACM20 and IMI RDACM21 are Gigabit Multimedia Serial Link (GMSL) camera capable of transmitting video and I2C control messages on a coax cable physical link for automotive applications. Document their device tree bindings. Signed-off-by: Jacopo Mondi <[email protected]> Signed-off-by: Kieran Bingham <[email protected]> Reviewed-by: Laurent Pinchart <[email protected]> Reviewed-by: Rob Herring <[email protected]> Signed-off-by: Sakari Ailus <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
- Loading branch information
Showing
2 changed files
with
161 additions
and
0 deletions.
There are no files selected for viewing
159 changes: 159 additions & 0 deletions
159
Documentation/devicetree/bindings/media/i2c/imi,rdacm2x-gmsl.yaml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,159 @@ | ||
# 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 <[email protected]> | ||
- Kieran Bingham <[email protected]> | ||
- Laurent Pinchart <[email protected]> | ||
- Niklas Söderlund <[email protected]> | ||
|
||
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: | ||
type: object | ||
additionalProperties: false | ||
description: -| | ||
Connection to the remote GMSL endpoint are modelled using the OF graph | ||
bindings in accordance with the video interface bindings defined in | ||
Documentation/devicetree/bindings/media/video-interfaces.txt. | ||
|
||
The device node contains a single "port" child node with a single | ||
"endpoint" sub-device. | ||
|
||
properties: | ||
endpoint: | ||
type: object | ||
additionalProperties: false | ||
|
||
properties: | ||
remote-endpoint: | ||
description: -| | ||
phandle to the remote GMSL endpoint sub-node in the remote node | ||
port. | ||
maxItems: 1 | ||
|
||
required: | ||
- remote-endpoint | ||
|
||
required: | ||
- endpoint | ||
|
||
required: | ||
- compatible | ||
- reg | ||
- port | ||
|
||
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>; | ||
}; | ||
}; | ||
}; | ||
}; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters