1932300e6SDongchun Zhu# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 2932300e6SDongchun Zhu# Copyright (c) 2019 MediaTek Inc. 3932300e6SDongchun Zhu%YAML 1.2 4932300e6SDongchun Zhu--- 5932300e6SDongchun Zhu$id: http://devicetree.org/schemas/media/i2c/ov8856.yaml# 6932300e6SDongchun Zhu$schema: http://devicetree.org/meta-schemas/core.yaml# 7932300e6SDongchun Zhu 8a612130cSKrzysztof Kozlowskititle: Omnivision OV8856 CMOS Sensor 9932300e6SDongchun Zhu 10932300e6SDongchun Zhumaintainers: 11*c8f30770SSakari Ailus - Sakari Ailus <sakari.ailus@linux.intel.com> 12932300e6SDongchun Zhu 13932300e6SDongchun Zhudescription: |- 14932300e6SDongchun Zhu The Omnivision OV8856 is a high performance, 1/4-inch, 8 megapixel, CMOS 15932300e6SDongchun Zhu image sensor that delivers 3264x2448 at 30fps. It provides full-frame, 16932300e6SDongchun Zhu sub-sampled, and windowed 10-bit MIPI images in various formats via the 17932300e6SDongchun Zhu Serial Camera Control Bus (SCCB) interface. This chip is programmable 18932300e6SDongchun Zhu through I2C and two-wire SCCB. The sensor output is available via CSI-2 19932300e6SDongchun Zhu serial data output (up to 4-lane). 20932300e6SDongchun Zhu 21932300e6SDongchun Zhuproperties: 22932300e6SDongchun Zhu compatible: 23932300e6SDongchun Zhu const: ovti,ov8856 24932300e6SDongchun Zhu 25932300e6SDongchun Zhu reg: 26932300e6SDongchun Zhu maxItems: 1 27932300e6SDongchun Zhu 28932300e6SDongchun Zhu clocks: 29932300e6SDongchun Zhu maxItems: 1 30932300e6SDongchun Zhu 31932300e6SDongchun Zhu clock-names: 32932300e6SDongchun Zhu description: 33932300e6SDongchun Zhu Input clock for the sensor. 34932300e6SDongchun Zhu items: 35932300e6SDongchun Zhu - const: xvclk 36932300e6SDongchun Zhu 37932300e6SDongchun Zhu clock-frequency: 38932300e6SDongchun Zhu description: 39932300e6SDongchun Zhu Frequency of the xvclk clock in Hertz. 40932300e6SDongchun Zhu 41932300e6SDongchun Zhu dovdd-supply: 42932300e6SDongchun Zhu description: 43932300e6SDongchun Zhu Definition of the regulator used as interface power supply. 44932300e6SDongchun Zhu 45932300e6SDongchun Zhu avdd-supply: 46932300e6SDongchun Zhu description: 47932300e6SDongchun Zhu Definition of the regulator used as analog power supply. 48932300e6SDongchun Zhu 49932300e6SDongchun Zhu dvdd-supply: 50932300e6SDongchun Zhu description: 51932300e6SDongchun Zhu Definition of the regulator used as digital power supply. 52932300e6SDongchun Zhu 53932300e6SDongchun Zhu reset-gpios: 54932300e6SDongchun Zhu description: 55932300e6SDongchun Zhu The phandle and specifier for the GPIO that controls sensor reset. 56932300e6SDongchun Zhu This corresponds to the hardware pin XSHUTDOWN which is physically 57932300e6SDongchun Zhu active low. 58932300e6SDongchun Zhu 59932300e6SDongchun Zhu port: 60066a94e2SRob Herring $ref: /schemas/graph.yaml#/$defs/port-base 61932300e6SDongchun Zhu additionalProperties: false 62932300e6SDongchun Zhu 63932300e6SDongchun Zhu properties: 64932300e6SDongchun Zhu endpoint: 65066a94e2SRob Herring $ref: /schemas/media/video-interfaces.yaml# 66066a94e2SRob Herring unevaluatedProperties: false 67932300e6SDongchun Zhu 68932300e6SDongchun Zhu properties: 69932300e6SDongchun Zhu data-lanes: 70932300e6SDongchun Zhu description: |- 71932300e6SDongchun Zhu The driver only supports four-lane operation. 72932300e6SDongchun Zhu items: 73932300e6SDongchun Zhu - const: 1 74932300e6SDongchun Zhu - const: 2 75932300e6SDongchun Zhu - const: 3 76932300e6SDongchun Zhu - const: 4 77932300e6SDongchun Zhu 78932300e6SDongchun Zhu link-frequencies: 79066a94e2SRob Herring description: Frequencies listed are driver, not h/w limitations. 80066a94e2SRob Herring maxItems: 2 81066a94e2SRob Herring items: 82066a94e2SRob Herring enum: [ 360000000, 180000000 ] 83932300e6SDongchun Zhu 84932300e6SDongchun Zhu required: 85932300e6SDongchun Zhu - link-frequencies 86932300e6SDongchun Zhu 87932300e6SDongchun Zhurequired: 88932300e6SDongchun Zhu - compatible 89932300e6SDongchun Zhu - reg 90932300e6SDongchun Zhu - clocks 91932300e6SDongchun Zhu - clock-names 92932300e6SDongchun Zhu - clock-frequency 93932300e6SDongchun Zhu - dovdd-supply 94932300e6SDongchun Zhu - avdd-supply 95932300e6SDongchun Zhu - dvdd-supply 96932300e6SDongchun Zhu - reset-gpios 97932300e6SDongchun Zhu - port 98932300e6SDongchun Zhu 99932300e6SDongchun ZhuadditionalProperties: false 100932300e6SDongchun Zhu 101932300e6SDongchun Zhuexamples: 102932300e6SDongchun Zhu - | 103932300e6SDongchun Zhu #include <dt-bindings/gpio/gpio.h> 104932300e6SDongchun Zhu 105932300e6SDongchun Zhu i2c { 106932300e6SDongchun Zhu #address-cells = <1>; 107932300e6SDongchun Zhu #size-cells = <0>; 108932300e6SDongchun Zhu 109932300e6SDongchun Zhu ov8856: camera@10 { 110932300e6SDongchun Zhu compatible = "ovti,ov8856"; 111932300e6SDongchun Zhu reg = <0x10>; 112932300e6SDongchun Zhu 113932300e6SDongchun Zhu reset-gpios = <&pio 111 GPIO_ACTIVE_LOW>; 114932300e6SDongchun Zhu pinctrl-names = "default"; 115932300e6SDongchun Zhu pinctrl-0 = <&clk_24m_cam>; 116932300e6SDongchun Zhu 117932300e6SDongchun Zhu clocks = <&cam_osc>; 118932300e6SDongchun Zhu clock-names = "xvclk"; 119932300e6SDongchun Zhu clock-frequency = <19200000>; 120932300e6SDongchun Zhu 121932300e6SDongchun Zhu avdd-supply = <&mt6358_vcama2_reg>; 122932300e6SDongchun Zhu dvdd-supply = <&mt6358_vcamd_reg>; 123932300e6SDongchun Zhu dovdd-supply = <&mt6358_vcamio_reg>; 124932300e6SDongchun Zhu 125932300e6SDongchun Zhu port { 126932300e6SDongchun Zhu wcam_out: endpoint { 127932300e6SDongchun Zhu remote-endpoint = <&mipi_in_wcam>; 128932300e6SDongchun Zhu data-lanes = <1 2 3 4>; 129932300e6SDongchun Zhu link-frequencies = /bits/ 64 <360000000>; 130932300e6SDongchun Zhu }; 131932300e6SDongchun Zhu }; 132932300e6SDongchun Zhu }; 133932300e6SDongchun Zhu }; 134932300e6SDongchun Zhu... 135