Merge tag 'qcom-dts-for-5.9' of git://git.kernel.org/pub/scm/linux/kernel/git/qcom...
[linux-2.6-microblaze.git] / Documentation / devicetree / bindings / media / marvell,mmp2-ccic.yaml
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
8 title: Marvell MMP2 camera host interface bindings
9
10 maintainers:
11   - Lubomir Rintel <lkundrak@v3.sk>
12
13 properties:
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   port:
27     type: object
28     additionalProperties: false
29
30     properties:
31       endpoint:
32         type: object
33         additionalProperties: false
34
35         # Properties described in
36         # Documentation/devicetree/bindings/media/video-interfaces.txt
37         properties:
38           remote-endpoint: true
39           hsync-active: true
40           vsync-active: true
41           pclk-sample: true
42           bus-type: true
43
44         required:
45           - remote-endpoint
46
47     required:
48       - endpoint
49
50   clocks:
51     minItems: 1
52     maxItems: 3
53     items:
54       - description: AXI bus interface clock
55       - description: Peripheral clock
56       - description: Parallel video bus interface clock
57
58   clock-names:
59     const: axi
60
61   '#clock-cells':
62     const: 0
63
64   clock-output-names:
65     const: mclk
66
67 required:
68   - compatible
69   - reg
70   - interrupts
71   - port
72
73 additionalProperties: false
74
75 examples:
76   - |
77     #include <dt-bindings/clock/marvell,mmp2.h>
78
79     camera@d420a000 {
80       compatible = "marvell,mmp2-ccic";
81       reg = <0xd420a000 0x800>;
82       interrupts = <42>;
83       clocks = <&soc_clocks MMP2_CLK_CCIC0>;
84       clock-names = "axi";
85       #clock-cells = <0>;
86       clock-output-names = "mclk";
87
88       port {
89         camera0_0: endpoint {
90           remote-endpoint = <&ov7670_0>;
91           bus-type = <5>;      /* Parallel */
92           hsync-active = <1>;  /* Active high */
93           vsync-active = <1>;  /* Active high */
94           pclk-sample = <0>;   /* Falling */
95         };
96       };
97     };
98
99 ...