Loading...
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 | # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) # Copyright 2019 BayLibre, SAS %YAML 1.2 --- $id: http://devicetree.org/schemas/media/amlogic,gx-vdec.yaml# $schema: http://devicetree.org/meta-schemas/core.yaml# title: Amlogic Video Decoder maintainers: - Neil Armstrong <neil.armstrong@linaro.org> - Maxime Jourdan <mjourdan@baylibre.com> description: | The video decoding IP lies within the DOS memory region, except for the hardware bitstream parser that makes use of an undocumented region. It makes use of the following blocks: - ESPARSER is a bitstream parser that outputs to a VIFIFO. Further VDEC blocks then feed from this VIFIFO. - VDEC_1 can decode MPEG-1, MPEG-2, MPEG-4 part 2, MJPEG, H.263, H.264, VC-1. - VDEC_HEVC can decode HEVC and VP9. Both VDEC_1 and VDEC_HEVC share the "vdec" IRQ and as such cannot run concurrently. properties: compatible: oneOf: - items: - enum: - amlogic,gxbb-vdec # GXBB (S905) - amlogic,gxl-vdec # GXL (S905X, S905D) - amlogic,gxm-vdec # GXM (S912) - const: amlogic,gx-vdec - enum: - amlogic,g12a-vdec # G12A (S905X2, S905D2) - amlogic,sm1-vdec # SM1 (S905X3, S905D3) interrupts: minItems: 2 interrupt-names: items: - const: vdec - const: esparser reg: minItems: 2 reg-names: items: - const: dos - const: esparser resets: maxItems: 1 reset-names: items: - const: esparser clocks: minItems: 4 maxItems: 5 clock-names: minItems: 4 items: - const: dos_parser - const: dos - const: vdec_1 - const: vdec_hevc - const: vdec_hevcf amlogic,ao-sysctrl: description: should point to the AOBUS sysctrl node $ref: /schemas/types.yaml#/definitions/phandle amlogic,canvas: description: should point to a canvas provider node $ref: /schemas/types.yaml#/definitions/phandle allOf: - if: properties: compatible: contains: enum: - amlogic,gx-vdec then: properties: clock-names: maxItems: 4 - if: properties: compatible: contains: enum: - amlogic,g12a-vdec - amlogic,sm1-vdec then: properties: clock-names: minItems: 5 required: - compatible - reg - reg-names - interrupts - interrupt-names - clocks - clock-names - resets - reset-names - amlogic,ao-sysctrl - amlogic,canvas additionalProperties: false examples: - | vdec: video-decoder@c8820000 { compatible = "amlogic,gxl-vdec", "amlogic,gx-vdec"; reg = <0xc8820000 0x10000>, <0xc110a580 0xe4>; reg-names = "dos", "esparser"; interrupts = <44>, <32>; interrupt-names = "vdec", "esparser"; clocks = <&clk_dos_parser> ,<&clk_dos>, <&clk_vdec_1>, <&clk_vdec_hevc>; clock-names = "dos_parser", "dos", "vdec_1", "vdec_hevc"; resets = <&reset_parser>; reset-names = "esparser"; amlogic,ao-sysctrl = <&sysctrl_AO>; amlogic,canvas = <&canvas>; }; |