# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) # Copyright (c) 2022 Amarulasolutions %YAML 1.2 --- $id: http://devicetree.org/schemas/media/i2c/ovti,ov5693.yaml# $schema: http://devicetree.org/meta-schemas/core.yaml# title: Omnivision OV5693/OV5695 CMOS Sensors maintainers: - Tommaso Merciai <tommaso.merciai@amarulasolutions.com> description: | The Omnivision OV5693/OV5695 are high performance, 1/4-inch, 5 megapixel, CMOS image sensors that deliver 2592x1944 at 30fps. It provides full-frame, sub-sampled, and windowed 10-bit MIPI images in various formats via the Serial Camera Control Bus (SCCB) interface. OV5693/OV5695 are controlled via I2C and two-wire Serial Camera Control Bus (SCCB). The sensor output is available via CSI-2 serial data output (up to 2-lane). allOf: - $ref: /schemas/media/video-interface-devices.yaml# - if: properties: compatible: contains: const: ovti,ov5693 then: properties: port: properties: endpoint: required: - link-frequencies properties: compatible: enum: - ovti,ov5693 - ovti,ov5695 reg: maxItems: 1 clocks: description: System input clock (aka XVCLK). From 6 to 27 MHz. maxItems: 1 clock-names: const: xvclk dovdd-supply: description: Digital I/O voltage supply, 1.8V. avdd-supply: description: Analog voltage supply, 2.8V. dvdd-supply: description: Digital core voltage supply, 1.2V. reset-gpios: description: The phandle and specifier for the GPIO that controls sensor reset. This corresponds to the hardware pin XSHUTDN which is physically active low. maxItems: 1 port: description: MIPI CSI-2 transmitter port $ref: /schemas/graph.yaml#/$defs/port-base additionalProperties: false properties: endpoint: $ref: /schemas/media/video-interfaces.yaml# unevaluatedProperties: false properties: link-frequencies: true data-lanes: minItems: 1 maxItems: 2 required: - data-lanes required: - compatible - reg - clocks - port unevaluatedProperties: false examples: - | #include <dt-bindings/clock/px30-cru.h> #include <dt-bindings/gpio/gpio.h> #include <dt-bindings/pinctrl/rockchip.h> i2c { #address-cells = <1>; #size-cells = <0>; ov5693: camera@36 { compatible = "ovti,ov5693"; reg = <0x36>; reset-gpios = <&gpio2 RK_PB1 GPIO_ACTIVE_LOW>; pinctrl-names = "default"; pinctrl-0 = <&cif_clkout_m0>; clocks = <&cru SCLK_CIF_OUT>; assigned-clocks = <&cru SCLK_CIF_OUT>; assigned-clock-rates = <19200000>; avdd-supply = <&vcc_1v8>; dvdd-supply = <&vcc_1v2>; dovdd-supply = <&vcc_2v8>; rotation = <90>; orientation = <0>; port { ucam_out: endpoint { remote-endpoint = <&mipi_in_ucam>; data-lanes = <1 2>; link-frequencies = /bits/ 64 <450000000>; }; }; }; }; ...