media: dt-bindings: ov5640: refine CSI-2 and add parallel interface

Refine CSI-2 endpoint documentation and add bindings
for DVP parallel interface support.

Signed-off-by: Hugues Fruchet <hugues.fruchet@st.com>
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
This commit is contained in:
Hugues Fruchet 2018-01-03 04:57:30 -05:00 committed by Mauro Carvalho Chehab
parent 0f7acb5291
commit 495f014d31
1 changed files with 44 additions and 2 deletions

View File

@ -1,4 +1,4 @@
* Omnivision OV5640 MIPI CSI-2 sensor * Omnivision OV5640 MIPI CSI-2 / parallel sensor
Required Properties: Required Properties:
- compatible: should be "ovti,ov5640" - compatible: should be "ovti,ov5640"
@ -18,7 +18,25 @@ The device node must contain one 'port' child node for its digital output
video port, in accordance with the video interface bindings defined in video port, in accordance with the video interface bindings defined in
Documentation/devicetree/bindings/media/video-interfaces.txt. Documentation/devicetree/bindings/media/video-interfaces.txt.
Example: OV5640 can be connected to a MIPI CSI-2 bus or a parallel bus endpoint.
Endpoint node required properties for CSI-2 connection are:
- remote-endpoint: a phandle to the bus receiver's endpoint node.
- clock-lanes: should be set to <0> (clock lane on hardware lane 0)
- data-lanes: should be set to <1> or <1 2> (one or two CSI-2 lanes supported)
Endpoint node required properties for parallel connection are:
- remote-endpoint: a phandle to the bus receiver's endpoint node.
- bus-width: shall be set to <8> for 8 bits parallel bus
or <10> for 10 bits parallel bus
- data-shift: shall be set to <2> for 8 bits parallel bus
(lines 9:2 are used) or <0> for 10 bits parallel bus
- hsync-active: active state of the HSYNC signal, 0/1 for LOW/HIGH respectively.
- vsync-active: active state of the VSYNC signal, 0/1 for LOW/HIGH respectively.
- pclk-sample: sample data on rising (1) or falling (0) edge of the pixel clock
signal.
Examples:
&i2c1 { &i2c1 {
ov5640: camera@3c { ov5640: camera@3c {
@ -35,6 +53,7 @@ Example:
reset-gpios = <&gpio1 20 GPIO_ACTIVE_LOW>; reset-gpios = <&gpio1 20 GPIO_ACTIVE_LOW>;
port { port {
/* MIPI CSI-2 bus endpoint */
ov5640_to_mipi_csi2: endpoint { ov5640_to_mipi_csi2: endpoint {
remote-endpoint = <&mipi_csi2_from_ov5640>; remote-endpoint = <&mipi_csi2_from_ov5640>;
clock-lanes = <0>; clock-lanes = <0>;
@ -43,3 +62,26 @@ Example:
}; };
}; };
}; };
&i2c1 {
ov5640: camera@3c {
compatible = "ovti,ov5640";
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_ov5640>;
reg = <0x3c>;
clocks = <&clk_ext_camera>;
clock-names = "xclk";
port {
/* Parallel bus endpoint */
ov5640_to_parallel: endpoint {
remote-endpoint = <&parallel_from_ov5640>;
bus-width = <8>;
data-shift = <2>; /* lines 9:2 are used */
hsync-active = <0>;
vsync-active = <0>;
pclk-sample = <1>;
};
};
};
};