0001 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
0002 %YAML 1.2
0003 ---
0004 $id: http://devicetree.org/schemas/media/coda.yaml#
0005 $schema: http://devicetree.org/meta-schemas/core.yaml#
0006
0007 title: Chips&Media Coda multi-standard codec IP
0008
0009 maintainers:
0010 - Philipp Zabel <p.zabel@pengutronix.de>
0011
0012 description: |-
0013 Coda codec IPs are present in i.MX SoCs in various versions,
0014 called VPU (Video Processing Unit).
0015
0016 properties:
0017 compatible:
0018 oneOf:
0019 - items:
0020 - const: fsl,imx27-vpu
0021 - const: cnm,codadx6
0022 - items:
0023 - const: fsl,imx51-vpu
0024 - const: cnm,codahx4
0025 - items:
0026 - const: fsl,imx53-vpu
0027 - const: cnm,coda7541
0028 - items:
0029 - enum:
0030 - fsl,imx6dl-vpu
0031 - fsl,imx6q-vpu
0032 - const: cnm,coda960
0033
0034 reg:
0035 maxItems: 1
0036
0037 clocks:
0038 items:
0039 - description: PER clock
0040 - description: AHB interface clock
0041
0042 clock-names:
0043 items:
0044 - const: per
0045 - const: ahb
0046
0047 interrupts:
0048 minItems: 1
0049 items:
0050 - description: BIT processor interrupt
0051 - description: JPEG unit interrupt
0052
0053 interrupt-names:
0054 minItems: 1
0055 items:
0056 - const: bit
0057 - const: jpeg
0058
0059 power-domains:
0060 maxItems: 1
0061
0062 resets:
0063 maxItems: 1
0064
0065 iram:
0066 $ref: /schemas/types.yaml#/definitions/phandle
0067 description: phandle pointing to the SRAM device node
0068
0069 required:
0070 - compatible
0071 - reg
0072 - interrupts
0073 - clocks
0074 - clock-names
0075
0076 additionalProperties: false
0077
0078 allOf:
0079 - if:
0080 properties:
0081 compatible:
0082 contains:
0083 const: cnm,coda960
0084 then:
0085 properties:
0086 interrupts:
0087 minItems: 2
0088
0089 interrupt-names:
0090 minItems: 2
0091 else:
0092 properties:
0093 interrupts:
0094 maxItems: 1
0095
0096 power-domains: false
0097
0098 examples:
0099 - |
0100 vpu: video-codec@63ff4000 {
0101 compatible = "fsl,imx53-vpu", "cnm,coda7541";
0102 reg = <0x63ff4000 0x1000>;
0103 interrupts = <9>;
0104 clocks = <&clks 63>, <&clks 63>;
0105 clock-names = "per", "ahb";
0106 iram = <&ocram>;
0107 };