1c66ec88fSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 2c66ec88fSEmmanuel Vadot# Copyright (c) 2019 MediaTek Inc. 3c66ec88fSEmmanuel Vadot%YAML 1.2 4c66ec88fSEmmanuel Vadot--- 5c66ec88fSEmmanuel Vadot$id: http://devicetree.org/schemas/media/i2c/ov8856.yaml# 6c66ec88fSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 7c66ec88fSEmmanuel Vadot 88bab661aSEmmanuel Vadottitle: Omnivision OV8856 CMOS Sensor 9c66ec88fSEmmanuel Vadot 10c66ec88fSEmmanuel Vadotmaintainers: 11fac71e4eSEmmanuel Vadot - Sakari Ailus <sakari.ailus@linux.intel.com> 12c66ec88fSEmmanuel Vadot 13c66ec88fSEmmanuel Vadotdescription: |- 14c66ec88fSEmmanuel Vadot The Omnivision OV8856 is a high performance, 1/4-inch, 8 megapixel, CMOS 15c66ec88fSEmmanuel Vadot image sensor that delivers 3264x2448 at 30fps. It provides full-frame, 16c66ec88fSEmmanuel Vadot sub-sampled, and windowed 10-bit MIPI images in various formats via the 17c66ec88fSEmmanuel Vadot Serial Camera Control Bus (SCCB) interface. This chip is programmable 18c66ec88fSEmmanuel Vadot through I2C and two-wire SCCB. The sensor output is available via CSI-2 19c66ec88fSEmmanuel Vadot serial data output (up to 4-lane). 20c66ec88fSEmmanuel Vadot 21c66ec88fSEmmanuel Vadotproperties: 22c66ec88fSEmmanuel Vadot compatible: 23c66ec88fSEmmanuel Vadot const: ovti,ov8856 24c66ec88fSEmmanuel Vadot 25c66ec88fSEmmanuel Vadot reg: 26c66ec88fSEmmanuel Vadot maxItems: 1 27c66ec88fSEmmanuel Vadot 28c66ec88fSEmmanuel Vadot clocks: 29c66ec88fSEmmanuel Vadot maxItems: 1 30c66ec88fSEmmanuel Vadot 31c66ec88fSEmmanuel Vadot clock-names: 32c66ec88fSEmmanuel Vadot description: 33c66ec88fSEmmanuel Vadot Input clock for the sensor. 34c66ec88fSEmmanuel Vadot items: 35c66ec88fSEmmanuel Vadot - const: xvclk 36c66ec88fSEmmanuel Vadot 37c66ec88fSEmmanuel Vadot clock-frequency: 38c66ec88fSEmmanuel Vadot description: 39c66ec88fSEmmanuel Vadot Frequency of the xvclk clock in Hertz. 40c66ec88fSEmmanuel Vadot 41c66ec88fSEmmanuel Vadot dovdd-supply: 42c66ec88fSEmmanuel Vadot description: 43c66ec88fSEmmanuel Vadot Definition of the regulator used as interface power supply. 44c66ec88fSEmmanuel Vadot 45c66ec88fSEmmanuel Vadot avdd-supply: 46c66ec88fSEmmanuel Vadot description: 47c66ec88fSEmmanuel Vadot Definition of the regulator used as analog power supply. 48c66ec88fSEmmanuel Vadot 49c66ec88fSEmmanuel Vadot dvdd-supply: 50c66ec88fSEmmanuel Vadot description: 51c66ec88fSEmmanuel Vadot Definition of the regulator used as digital power supply. 52c66ec88fSEmmanuel Vadot 53c66ec88fSEmmanuel Vadot reset-gpios: 54c66ec88fSEmmanuel Vadot description: 55c66ec88fSEmmanuel Vadot The phandle and specifier for the GPIO that controls sensor reset. 56c66ec88fSEmmanuel Vadot This corresponds to the hardware pin XSHUTDOWN which is physically 57c66ec88fSEmmanuel Vadot active low. 58c66ec88fSEmmanuel Vadot 59c66ec88fSEmmanuel Vadot port: 605def4c47SEmmanuel Vadot $ref: /schemas/graph.yaml#/$defs/port-base 61c66ec88fSEmmanuel Vadot additionalProperties: false 62c66ec88fSEmmanuel Vadot 63c66ec88fSEmmanuel Vadot properties: 64c66ec88fSEmmanuel Vadot endpoint: 655def4c47SEmmanuel Vadot $ref: /schemas/media/video-interfaces.yaml# 665def4c47SEmmanuel Vadot unevaluatedProperties: false 67c66ec88fSEmmanuel Vadot 68c66ec88fSEmmanuel Vadot properties: 69c66ec88fSEmmanuel Vadot data-lanes: 70*8d13bc63SEmmanuel Vadot oneOf: 71*8d13bc63SEmmanuel Vadot - items: 72*8d13bc63SEmmanuel Vadot - const: 1 73*8d13bc63SEmmanuel Vadot - items: 74*8d13bc63SEmmanuel Vadot - const: 1 75*8d13bc63SEmmanuel Vadot - const: 2 76*8d13bc63SEmmanuel Vadot - items: 77c66ec88fSEmmanuel Vadot - const: 1 78c66ec88fSEmmanuel Vadot - const: 2 79c66ec88fSEmmanuel Vadot - const: 3 80c66ec88fSEmmanuel Vadot - const: 4 81c66ec88fSEmmanuel Vadot 82c66ec88fSEmmanuel Vadot required: 83c66ec88fSEmmanuel Vadot - link-frequencies 84c66ec88fSEmmanuel Vadot 85c66ec88fSEmmanuel Vadotrequired: 86c66ec88fSEmmanuel Vadot - compatible 87c66ec88fSEmmanuel Vadot - reg 88c66ec88fSEmmanuel Vadot - clocks 89c66ec88fSEmmanuel Vadot - clock-names 90c66ec88fSEmmanuel Vadot - clock-frequency 91c66ec88fSEmmanuel Vadot - dovdd-supply 92c66ec88fSEmmanuel Vadot - avdd-supply 93c66ec88fSEmmanuel Vadot - dvdd-supply 94c66ec88fSEmmanuel Vadot - reset-gpios 95c66ec88fSEmmanuel Vadot - port 96c66ec88fSEmmanuel Vadot 97c66ec88fSEmmanuel VadotadditionalProperties: false 98c66ec88fSEmmanuel Vadot 99c66ec88fSEmmanuel Vadotexamples: 100c66ec88fSEmmanuel Vadot - | 101c66ec88fSEmmanuel Vadot #include <dt-bindings/gpio/gpio.h> 102c66ec88fSEmmanuel Vadot 103c66ec88fSEmmanuel Vadot i2c { 104c66ec88fSEmmanuel Vadot #address-cells = <1>; 105c66ec88fSEmmanuel Vadot #size-cells = <0>; 106c66ec88fSEmmanuel Vadot 107c66ec88fSEmmanuel Vadot ov8856: camera@10 { 108c66ec88fSEmmanuel Vadot compatible = "ovti,ov8856"; 109c66ec88fSEmmanuel Vadot reg = <0x10>; 110c66ec88fSEmmanuel Vadot 111c66ec88fSEmmanuel Vadot reset-gpios = <&pio 111 GPIO_ACTIVE_LOW>; 112c66ec88fSEmmanuel Vadot pinctrl-names = "default"; 113c66ec88fSEmmanuel Vadot pinctrl-0 = <&clk_24m_cam>; 114c66ec88fSEmmanuel Vadot 115c66ec88fSEmmanuel Vadot clocks = <&cam_osc>; 116c66ec88fSEmmanuel Vadot clock-names = "xvclk"; 117c66ec88fSEmmanuel Vadot clock-frequency = <19200000>; 118c66ec88fSEmmanuel Vadot 119c66ec88fSEmmanuel Vadot avdd-supply = <&mt6358_vcama2_reg>; 120c66ec88fSEmmanuel Vadot dvdd-supply = <&mt6358_vcamd_reg>; 121c66ec88fSEmmanuel Vadot dovdd-supply = <&mt6358_vcamio_reg>; 122c66ec88fSEmmanuel Vadot 123c66ec88fSEmmanuel Vadot port { 124c66ec88fSEmmanuel Vadot wcam_out: endpoint { 125c66ec88fSEmmanuel Vadot remote-endpoint = <&mipi_in_wcam>; 126c66ec88fSEmmanuel Vadot data-lanes = <1 2 3 4>; 127c66ec88fSEmmanuel Vadot link-frequencies = /bits/ 64 <360000000>; 128c66ec88fSEmmanuel Vadot }; 129c66ec88fSEmmanuel Vadot }; 130c66ec88fSEmmanuel Vadot }; 131c66ec88fSEmmanuel Vadot }; 132c66ec88fSEmmanuel Vadot... 133