150 lines · yaml
1# SPDX-License-Identifier: GPL-2.02%YAML 1.23---4$id: http://devicetree.org/schemas/media/i2c/ovti,ov5640.yaml#5$schema: http://devicetree.org/meta-schemas/core.yaml#6 7title: OmniVision OV5640 Image Sensor8 9maintainers:10 - Steve Longerbeam <slongerbeam@gmail.com>11 12allOf:13 - $ref: /schemas/media/video-interface-devices.yaml#14 15properties:16 compatible:17 const: ovti,ov564018 19 reg:20 maxItems: 121 22 clocks:23 description: XCLK Input Clock24 25 clock-names:26 const: xclk27 28 AVDD-supply:29 description: Analog voltage supply, 2.8 volts30 31 DVDD-supply:32 description: Digital core voltage supply, 1.5 volts33 34 DOVDD-supply:35 description: Digital I/O voltage supply, 1.8 volts36 37 powerdown-gpios:38 maxItems: 139 description: >40 Reference to the GPIO connected to the powerdown pin, if any.41 42 reset-gpios:43 maxItems: 144 description: >45 Reference to the GPIO connected to the reset pin, if any.46 47 port:48 description: Digital Output Port49 $ref: /schemas/graph.yaml#/$defs/port-base50 additionalProperties: false51 52 properties:53 endpoint:54 $ref: /schemas/media/video-interfaces.yaml#55 unevaluatedProperties: false56 57 properties:58 clock-lanes:59 const: 060 61 data-lanes:62 minItems: 163 maxItems: 264 items:65 enum: [1, 2]66 67 bus-width:68 enum: [8, 10]69 70 data-shift:71 enum: [0, 2]72 73required:74 - compatible75 - reg76 - clocks77 - clock-names78 - AVDD-supply79 - DVDD-supply80 - DOVDD-supply81 - port82 83unevaluatedProperties: false84 85examples:86 - |87 #include <dt-bindings/clock/imx6qdl-clock.h>88 #include <dt-bindings/gpio/gpio.h>89 90 i2c {91 #address-cells = <1>;92 #size-cells = <0>;93 94 camera@3c {95 compatible = "ovti,ov5640";96 pinctrl-names = "default";97 pinctrl-0 = <&pinctrl_ov5640>;98 reg = <0x3c>;99 clocks = <&clks IMX6QDL_CLK_CKO>;100 clock-names = "xclk";101 DOVDD-supply = <&vgen4_reg>; /* 1.8v */102 AVDD-supply = <&vgen3_reg>; /* 2.8v */103 DVDD-supply = <&vgen2_reg>; /* 1.5v */104 powerdown-gpios = <&gpio1 19 GPIO_ACTIVE_HIGH>;105 reset-gpios = <&gpio1 20 GPIO_ACTIVE_LOW>;106 rotation = <180>;107 108 port {109 /* MIPI CSI-2 bus endpoint */110 ov5640_to_mipi_csi2: endpoint {111 remote-endpoint = <&mipi_csi2_from_ov5640>;112 clock-lanes = <0>;113 data-lanes = <1 2>;114 };115 };116 };117 };118 119 - |120 i2c {121 #address-cells = <1>;122 #size-cells = <0>;123 124 camera@3c {125 compatible = "ovti,ov5640";126 pinctrl-names = "default";127 pinctrl-0 = <&pinctrl_ov5640>;128 reg = <0x3c>;129 clocks = <&clk_ext_camera>;130 clock-names = "xclk";131 DOVDD-supply = <&vgen4_reg>; /* 1.8v */132 AVDD-supply = <&vgen3_reg>; /* 2.8v */133 DVDD-supply = <&vgen2_reg>; /* 1.5v */134 135 port {136 /* Parallel bus endpoint */137 ov5640_to_parallel: endpoint {138 remote-endpoint = <¶llel_from_ov5640>;139 bus-width = <8>;140 data-shift = <2>; /* lines 9:2 are used */141 hsync-active = <0>;142 vsync-active = <0>;143 pclk-sample = <1>;144 };145 };146 };147 };148 149...150