1*3216e828SJacopo Mondi# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 2*3216e828SJacopo Mondi%YAML 1.2 3*3216e828SJacopo Mondi--- 4*3216e828SJacopo Mondi$id: http://devicetree.org/schemas/media/i2c/ovti,ov8858.yaml# 5*3216e828SJacopo Mondi$schema: http://devicetree.org/meta-schemas/core.yaml# 6*3216e828SJacopo Mondi 7*3216e828SJacopo Mondititle: OmniVision OV8858 Image Sensor 8*3216e828SJacopo Mondi 9*3216e828SJacopo Mondimaintainers: 10*3216e828SJacopo Mondi - Jacopo Mondi <jacopo.mondi@ideasonboard.com> 11*3216e828SJacopo Mondi - Nicholas Roth <nicholas@rothemail.net> 12*3216e828SJacopo Mondi 13*3216e828SJacopo Mondidescription: | 14*3216e828SJacopo Mondi The OmniVision OV8858 is a color CMOS 8 Megapixels (3264x2448) image sensor 15*3216e828SJacopo Mondi controlled through an I2C-compatible SCCB bus. The sensor transmits images 16*3216e828SJacopo Mondi on a MIPI CSI-2 output interface with up to 4 data lanes. 17*3216e828SJacopo Mondi 18*3216e828SJacopo Mondiproperties: 19*3216e828SJacopo Mondi compatible: 20*3216e828SJacopo Mondi const: ovti,ov8858 21*3216e828SJacopo Mondi 22*3216e828SJacopo Mondi reg: 23*3216e828SJacopo Mondi maxItems: 1 24*3216e828SJacopo Mondi 25*3216e828SJacopo Mondi clocks: 26*3216e828SJacopo Mondi maxItems: 1 27*3216e828SJacopo Mondi description: XVCLK external clock 28*3216e828SJacopo Mondi 29*3216e828SJacopo Mondi clock-names: 30*3216e828SJacopo Mondi const: xvclk 31*3216e828SJacopo Mondi 32*3216e828SJacopo Mondi dvdd-supply: 33*3216e828SJacopo Mondi description: Digital Domain Power Supply 34*3216e828SJacopo Mondi 35*3216e828SJacopo Mondi avdd-supply: 36*3216e828SJacopo Mondi description: Analog Domain Power Supply 37*3216e828SJacopo Mondi 38*3216e828SJacopo Mondi dovdd-supply: 39*3216e828SJacopo Mondi description: I/O Domain Power Supply 40*3216e828SJacopo Mondi 41*3216e828SJacopo Mondi powerdown-gpios: 42*3216e828SJacopo Mondi description: PWDNB powerdown GPIO (active low) 43*3216e828SJacopo Mondi 44*3216e828SJacopo Mondi reset-gpios: 45*3216e828SJacopo Mondi maxItems: 1 46*3216e828SJacopo Mondi description: XSHUTDN reset GPIO (active low) 47*3216e828SJacopo Mondi 48*3216e828SJacopo Mondi port: 49*3216e828SJacopo Mondi description: MIPI CSI-2 transmitter port 50*3216e828SJacopo Mondi $ref: /schemas/graph.yaml#/$defs/port-base 51*3216e828SJacopo Mondi additionalProperties: false 52*3216e828SJacopo Mondi 53*3216e828SJacopo Mondi properties: 54*3216e828SJacopo Mondi endpoint: 55*3216e828SJacopo Mondi $ref: /schemas/media/video-interfaces.yaml# 56*3216e828SJacopo Mondi unevaluatedProperties: false 57*3216e828SJacopo Mondi 58*3216e828SJacopo Mondi properties: 59*3216e828SJacopo Mondi data-lanes: 60*3216e828SJacopo Mondi minItems: 1 61*3216e828SJacopo Mondi maxItems: 4 62*3216e828SJacopo Mondi 63*3216e828SJacopo Mondi required: 64*3216e828SJacopo Mondi - data-lanes 65*3216e828SJacopo Mondi 66*3216e828SJacopo Mondirequired: 67*3216e828SJacopo Mondi - compatible 68*3216e828SJacopo Mondi - reg 69*3216e828SJacopo Mondi - clocks 70*3216e828SJacopo Mondi - port 71*3216e828SJacopo Mondi 72*3216e828SJacopo MondiadditionalProperties: false 73*3216e828SJacopo Mondi 74*3216e828SJacopo Mondiexamples: 75*3216e828SJacopo Mondi - | 76*3216e828SJacopo Mondi #include <dt-bindings/pinctrl/rockchip.h> 77*3216e828SJacopo Mondi #include <dt-bindings/clock/rk3399-cru.h> 78*3216e828SJacopo Mondi #include <dt-bindings/gpio/gpio.h> 79*3216e828SJacopo Mondi 80*3216e828SJacopo Mondi i2c { 81*3216e828SJacopo Mondi #address-cells = <1>; 82*3216e828SJacopo Mondi #size-cells = <0>; 83*3216e828SJacopo Mondi 84*3216e828SJacopo Mondi ov8858: camera@36 { 85*3216e828SJacopo Mondi compatible = "ovti,ov8858"; 86*3216e828SJacopo Mondi reg = <0x36>; 87*3216e828SJacopo Mondi 88*3216e828SJacopo Mondi clocks = <&cru SCLK_CIF_OUT>; 89*3216e828SJacopo Mondi clock-names = "xvclk"; 90*3216e828SJacopo Mondi assigned-clocks = <&cru SCLK_CIF_OUT>; 91*3216e828SJacopo Mondi assigned-clock-rates = <24000000>; 92*3216e828SJacopo Mondi 93*3216e828SJacopo Mondi dovdd-supply = <&vcc1v8_dvp>; 94*3216e828SJacopo Mondi 95*3216e828SJacopo Mondi reset-gpios = <&gpio1 RK_PA4 GPIO_ACTIVE_LOW>; 96*3216e828SJacopo Mondi powerdown-gpios = <&gpio2 RK_PB4 GPIO_ACTIVE_LOW>; 97*3216e828SJacopo Mondi 98*3216e828SJacopo Mondi port { 99*3216e828SJacopo Mondi ucam_out: endpoint { 100*3216e828SJacopo Mondi remote-endpoint = <&mipi_in_ucam>; 101*3216e828SJacopo Mondi data-lanes = <1 2 3 4>; 102*3216e828SJacopo Mondi }; 103*3216e828SJacopo Mondi }; 104*3216e828SJacopo Mondi }; 105*3216e828SJacopo Mondi }; 106*3216e828SJacopo Mondi... 107