1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2# Copyright 2019,2020 Lubomir Rintel <lkundrak@v3.sk>
3%YAML 1.2
4---
5$id: http://devicetree.org/schemas/media/marvell,mmp2-ccic.yaml#
6$schema: http://devicetree.org/meta-schemas/core.yaml#
7
8title: Marvell MMP2 camera host interface bindings
9
10maintainers:
11  - Lubomir Rintel <lkundrak@v3.sk>
12
13properties:
14  $nodename:
15    pattern: '^camera@[a-f0-9]+$'
16
17  compatible:
18    const: marvell,mmp2-ccic
19
20  reg:
21    maxItems: 1
22
23  interrupts:
24    maxItems: 1
25
26  power-domains:
27    maxItems: 1
28
29  port:
30    type: object
31    additionalProperties: false
32
33    properties:
34      endpoint:
35        type: object
36        additionalProperties: false
37
38        # Properties described in
39        # Documentation/devicetree/bindings/media/video-interfaces.txt
40        properties:
41          remote-endpoint: true
42          hsync-active: true
43          vsync-active: true
44          pclk-sample: true
45          bus-type: true
46
47        required:
48          - remote-endpoint
49
50    required:
51      - endpoint
52
53  clocks:
54    minItems: 1
55    maxItems: 3
56    items:
57      - description: AXI bus interface clock
58      - description: Peripheral clock
59      - description: Parallel video bus interface clock
60
61  clock-names:
62    const: axi
63
64  '#clock-cells':
65    const: 0
66
67  clock-output-names:
68    const: mclk
69
70required:
71  - compatible
72  - reg
73  - interrupts
74  - port
75
76additionalProperties: false
77
78examples:
79  - |
80    #include <dt-bindings/clock/marvell,mmp2.h>
81    #include <dt-bindings/power/marvell,mmp2.h>
82
83    camera@d420a000 {
84      compatible = "marvell,mmp2-ccic";
85      reg = <0xd420a000 0x800>;
86      interrupts = <42>;
87      clocks = <&soc_clocks MMP2_CLK_CCIC0>;
88      clock-names = "axi";
89      #clock-cells = <0>;
90      clock-output-names = "mclk";
91      power-domains = <&soc_clocks MMP3_POWER_DOMAIN_CAMERA>;
92
93      port {
94        camera0_0: endpoint {
95          remote-endpoint = <&ov7670_0>;
96          bus-type = <5>;      /* Parallel */
97          hsync-active = <1>;  /* Active high */
98          vsync-active = <1>;  /* Active high */
99          pclk-sample = <0>;   /* Falling */
100        };
101      };
102    };
103
104...
105