6db4831e98
Android 14
102 lines
2.5 KiB
Plaintext
102 lines
2.5 KiB
Plaintext
Renesas R-Car MIPI CSI-2
|
|
------------------------
|
|
|
|
The R-Car CSI-2 receiver device provides MIPI CSI-2 capabilities for the
|
|
Renesas R-Car family of devices. It is used in conjunction with the
|
|
R-Car VIN module, which provides the video capture capabilities.
|
|
|
|
Mandatory properties
|
|
--------------------
|
|
- compatible: Must be one or more of the following
|
|
- "renesas,r8a7795-csi2" for the R8A7795 device.
|
|
- "renesas,r8a7796-csi2" for the R8A7796 device.
|
|
- "renesas,r8a77965-csi2" for the R8A77965 device.
|
|
- "renesas,r8a77970-csi2" for the R8A77970 device.
|
|
|
|
- reg: the register base and size for the device registers
|
|
- interrupts: the interrupt for the device
|
|
- clocks: reference to the parent clock
|
|
|
|
The device node shall contain two 'port' child nodes according to the
|
|
bindings defined in Documentation/devicetree/bindings/media/
|
|
video-interfaces.txt. port@0 shall connect to the CSI-2 source. port@1
|
|
shall connect to all the R-Car VIN modules that have a hardware
|
|
connection to the CSI-2 receiver.
|
|
|
|
- port@0- Video source (mandatory)
|
|
- endpoint@0 - sub-node describing the endpoint that is the video source
|
|
|
|
- port@1 - VIN instances (optional)
|
|
- One endpoint sub-node for every R-Car VIN instance which is connected
|
|
to the R-Car CSI-2 receiver.
|
|
|
|
Example:
|
|
|
|
csi20: csi2@fea80000 {
|
|
compatible = "renesas,r8a7796-csi2";
|
|
reg = <0 0xfea80000 0 0x10000>;
|
|
interrupts = <0 184 IRQ_TYPE_LEVEL_HIGH>;
|
|
clocks = <&cpg CPG_MOD 714>;
|
|
power-domains = <&sysc R8A7796_PD_ALWAYS_ON>;
|
|
resets = <&cpg 714>;
|
|
|
|
ports {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
|
|
port@0 {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
|
|
reg = <0>;
|
|
|
|
csi20_in: endpoint@0 {
|
|
reg = <0>;
|
|
clock-lanes = <0>;
|
|
data-lanes = <1>;
|
|
remote-endpoint = <&adv7482_txb>;
|
|
};
|
|
};
|
|
|
|
port@1 {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
|
|
reg = <1>;
|
|
|
|
csi20vin0: endpoint@0 {
|
|
reg = <0>;
|
|
remote-endpoint = <&vin0csi20>;
|
|
};
|
|
csi20vin1: endpoint@1 {
|
|
reg = <1>;
|
|
remote-endpoint = <&vin1csi20>;
|
|
};
|
|
csi20vin2: endpoint@2 {
|
|
reg = <2>;
|
|
remote-endpoint = <&vin2csi20>;
|
|
};
|
|
csi20vin3: endpoint@3 {
|
|
reg = <3>;
|
|
remote-endpoint = <&vin3csi20>;
|
|
};
|
|
csi20vin4: endpoint@4 {
|
|
reg = <4>;
|
|
remote-endpoint = <&vin4csi20>;
|
|
};
|
|
csi20vin5: endpoint@5 {
|
|
reg = <5>;
|
|
remote-endpoint = <&vin5csi20>;
|
|
};
|
|
csi20vin6: endpoint@6 {
|
|
reg = <6>;
|
|
remote-endpoint = <&vin6csi20>;
|
|
};
|
|
csi20vin7: endpoint@7 {
|
|
reg = <7>;
|
|
remote-endpoint = <&vin7csi20>;
|
|
};
|
|
};
|
|
};
|
|
};
|