xref: /linux/Documentation/devicetree/bindings/media/i2c/ovti,ov772x.yaml (revision b20d9fac5bf54d5909d8538431bf53d83fbe5509)
1898bd5b5SJacopo Mondi# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2898bd5b5SJacopo Mondi%YAML 1.2
3898bd5b5SJacopo Mondi---
4898bd5b5SJacopo Mondi$id: http://devicetree.org/schemas/media/i2c/ovti,ov772x.yaml#
5898bd5b5SJacopo Mondi$schema: http://devicetree.org/meta-schemas/core.yaml#
6898bd5b5SJacopo Mondi
7898bd5b5SJacopo Mondititle: Omnivision OV7720/OV7725 CMOS sensor
8898bd5b5SJacopo Mondi
9898bd5b5SJacopo Mondimaintainers:
10898bd5b5SJacopo Mondi  - Jacopo Mondi <jacopo@jmondi.org>
11898bd5b5SJacopo Mondi
12898bd5b5SJacopo Mondidescription: |
13898bd5b5SJacopo Mondi  The Omnivision OV7720/OV7725 sensor supports multiple resolutions output,
14898bd5b5SJacopo Mondi  such as VGA, QVGA, and any size scaling down from CIF to 40x30. It also can
15898bd5b5SJacopo Mondi  support the YUV422, RGB565/555/444, GRB422 or raw RGB output formats.
16898bd5b5SJacopo Mondi
17898bd5b5SJacopo Mondiproperties:
18898bd5b5SJacopo Mondi  compatible:
19898bd5b5SJacopo Mondi    enum:
20898bd5b5SJacopo Mondi      - ovti,ov7720
21898bd5b5SJacopo Mondi      - ovti,ov7725
22898bd5b5SJacopo Mondi
23898bd5b5SJacopo Mondi  reg:
24898bd5b5SJacopo Mondi    maxItems: 1
25898bd5b5SJacopo Mondi
26898bd5b5SJacopo Mondi  clocks:
27898bd5b5SJacopo Mondi    maxItems: 1
28898bd5b5SJacopo Mondi
29898bd5b5SJacopo Mondi  reset-gpios:
30898bd5b5SJacopo Mondi    description: |
31898bd5b5SJacopo Mondi      Reference to the GPIO connected to the RSTB pin which is active low.
32898bd5b5SJacopo Mondi    maxItems: 1
33898bd5b5SJacopo Mondi
34898bd5b5SJacopo Mondi  powerdown-gpios:
35898bd5b5SJacopo Mondi    description: |
36898bd5b5SJacopo Mondi      Reference to the GPIO connected to the PWDN pin which is active high.
37898bd5b5SJacopo Mondi    maxItems: 1
38898bd5b5SJacopo Mondi
39898bd5b5SJacopo Mondi  port:
40898bd5b5SJacopo Mondi    type: object
41898bd5b5SJacopo Mondi    description: |
42898bd5b5SJacopo Mondi      Video output port. See ../video-interfaces.txt.
43898bd5b5SJacopo Mondi
44b2d05946SJacopo Mondi    properties:
45b2d05946SJacopo Mondi      endpoint:
46b2d05946SJacopo Mondi        type: object
47b2d05946SJacopo Mondi
48b2d05946SJacopo Mondi        properties:
49b2d05946SJacopo Mondi          bus-type:
50b2d05946SJacopo Mondi            enum: [5, 6]
51b2d05946SJacopo Mondi
52*b20d9facSJacopo Mondi          bus-width:
53*b20d9facSJacopo Mondi            enum: [8, 10]
54*b20d9facSJacopo Mondi            default: 10
55*b20d9facSJacopo Mondi
56*b20d9facSJacopo Mondi          data-shift:
57*b20d9facSJacopo Mondi            enum: [0, 2]
58*b20d9facSJacopo Mondi            default: 0
59*b20d9facSJacopo Mondi
60*b20d9facSJacopo Mondi          hsync-active:
61*b20d9facSJacopo Mondi            enum: [0, 1]
62*b20d9facSJacopo Mondi            default: 1
63*b20d9facSJacopo Mondi
64*b20d9facSJacopo Mondi          vsync-active:
65*b20d9facSJacopo Mondi            enum: [0, 1]
66*b20d9facSJacopo Mondi            default: 1
67*b20d9facSJacopo Mondi
68*b20d9facSJacopo Mondi          pclk-sample:
69*b20d9facSJacopo Mondi            enum: [0, 1]
70*b20d9facSJacopo Mondi            default: 1
71*b20d9facSJacopo Mondi
72*b20d9facSJacopo Mondi        allOf:
73*b20d9facSJacopo Mondi          - if:
74*b20d9facSJacopo Mondi              properties:
75*b20d9facSJacopo Mondi                bus-type:
76*b20d9facSJacopo Mondi                  const: 6
77*b20d9facSJacopo Mondi            then:
78*b20d9facSJacopo Mondi                properties:
79*b20d9facSJacopo Mondi                  hsync-active: false
80*b20d9facSJacopo Mondi                  vsync-active: false
81*b20d9facSJacopo Mondi
82*b20d9facSJacopo Mondi          - if:
83*b20d9facSJacopo Mondi              properties:
84*b20d9facSJacopo Mondi                bus-width:
85*b20d9facSJacopo Mondi                  const: 10
86*b20d9facSJacopo Mondi            then:
87*b20d9facSJacopo Mondi                properties:
88*b20d9facSJacopo Mondi                  data-shift:
89*b20d9facSJacopo Mondi                    const: 0
90*b20d9facSJacopo Mondi
91b2d05946SJacopo Mondi        required:
92b2d05946SJacopo Mondi          - bus-type
93b2d05946SJacopo Mondi
94b2d05946SJacopo Mondi        unevaluatedProperties: false
95b2d05946SJacopo Mondi
96b2d05946SJacopo Mondi    additionalProperties: false
97b2d05946SJacopo Mondi
98898bd5b5SJacopo Mondirequired:
99898bd5b5SJacopo Mondi  - compatible
100898bd5b5SJacopo Mondi  - reg
101898bd5b5SJacopo Mondi  - clocks
102898bd5b5SJacopo Mondi  - port
103898bd5b5SJacopo Mondi
104898bd5b5SJacopo MondiadditionalProperties: false
105898bd5b5SJacopo Mondi
106898bd5b5SJacopo Mondiexamples:
107898bd5b5SJacopo Mondi  - |
108898bd5b5SJacopo Mondi    #include <dt-bindings/gpio/gpio.h>
109898bd5b5SJacopo Mondi
110898bd5b5SJacopo Mondi    i2c0 {
111898bd5b5SJacopo Mondi        #address-cells = <1>;
112898bd5b5SJacopo Mondi        #size-cells = <0>;
113898bd5b5SJacopo Mondi        ov772x: camera@21 {
114898bd5b5SJacopo Mondi            compatible = "ovti,ov7725";
115898bd5b5SJacopo Mondi            reg = <0x21>;
116898bd5b5SJacopo Mondi            reset-gpios = <&axi_gpio_0 0 GPIO_ACTIVE_LOW>;
117898bd5b5SJacopo Mondi            powerdown-gpios = <&axi_gpio_0 1 GPIO_ACTIVE_LOW>;
118898bd5b5SJacopo Mondi            clocks = <&xclk>;
119898bd5b5SJacopo Mondi
120898bd5b5SJacopo Mondi            port {
121898bd5b5SJacopo Mondi                ov772x_0: endpoint {
122b2d05946SJacopo Mondi                    bus-type = <5>;
123*b20d9facSJacopo Mondi                    vsync-active = <0>;
124*b20d9facSJacopo Mondi                    hsync-active = <0>;
125*b20d9facSJacopo Mondi                    pclk-sample = <0>;
126*b20d9facSJacopo Mondi                    bus-width = <8>;
127*b20d9facSJacopo Mondi                    data-shift = <0>;
128898bd5b5SJacopo Mondi                    remote-endpoint = <&vcap1_in0>;
129898bd5b5SJacopo Mondi                };
130898bd5b5SJacopo Mondi            };
131898bd5b5SJacopo Mondi        };
132898bd5b5SJacopo Mondi    };
133898bd5b5SJacopo Mondi
134898bd5b5SJacopo Mondi...
135