1506c7f9bSMaxime Ripard# SPDX-License-Identifier: GPL-2.0 2506c7f9bSMaxime Ripard%YAML 1.2 3506c7f9bSMaxime Ripard--- 4506c7f9bSMaxime Ripard$id: http://devicetree.org/schemas/sound/allwinner,sun4i-a10-spdif.yaml# 5506c7f9bSMaxime Ripard$schema: http://devicetree.org/meta-schemas/core.yaml# 6506c7f9bSMaxime Ripard 7506c7f9bSMaxime Ripardtitle: Allwinner A10 S/PDIF Controller Device Tree Bindings 8506c7f9bSMaxime Ripard 9506c7f9bSMaxime Ripardmaintainers: 10506c7f9bSMaxime Ripard - Chen-Yu Tsai <wens@csie.org> 11506c7f9bSMaxime Ripard - Liam Girdwood <lgirdwood@gmail.com> 12506c7f9bSMaxime Ripard - Mark Brown <broonie@kernel.org> 13506c7f9bSMaxime Ripard - Maxime Ripard <maxime.ripard@bootlin.com> 14506c7f9bSMaxime Ripard 15506c7f9bSMaxime Ripardproperties: 16506c7f9bSMaxime Ripard "#sound-dai-cells": 17506c7f9bSMaxime Ripard const: 0 18506c7f9bSMaxime Ripard 19506c7f9bSMaxime Ripard compatible: 20506c7f9bSMaxime Ripard oneOf: 21506c7f9bSMaxime Ripard - const: allwinner,sun4i-a10-spdif 22506c7f9bSMaxime Ripard - const: allwinner,sun6i-a31-spdif 23506c7f9bSMaxime Ripard - const: allwinner,sun8i-h3-spdif 24506c7f9bSMaxime Ripard - items: 25506c7f9bSMaxime Ripard - const: allwinner,sun8i-a83t-spdif 26506c7f9bSMaxime Ripard - const: allwinner,sun8i-h3-spdif 27506c7f9bSMaxime Ripard - items: 28506c7f9bSMaxime Ripard - const: allwinner,sun50i-a64-spdif 29506c7f9bSMaxime Ripard - const: allwinner,sun8i-h3-spdif 30506c7f9bSMaxime Ripard 31506c7f9bSMaxime Ripard reg: 32506c7f9bSMaxime Ripard maxItems: 1 33506c7f9bSMaxime Ripard 34506c7f9bSMaxime Ripard interrupts: 35506c7f9bSMaxime Ripard maxItems: 1 36506c7f9bSMaxime Ripard 37506c7f9bSMaxime Ripard clocks: 38506c7f9bSMaxime Ripard items: 39506c7f9bSMaxime Ripard - description: Bus Clock 40506c7f9bSMaxime Ripard - description: Module Clock 41506c7f9bSMaxime Ripard 42506c7f9bSMaxime Ripard clock-names: 43506c7f9bSMaxime Ripard items: 44506c7f9bSMaxime Ripard - const: apb 45506c7f9bSMaxime Ripard - const: spdif 46506c7f9bSMaxime Ripard 47506c7f9bSMaxime Ripard # Even though it only applies to subschemas under the conditionals, 48506c7f9bSMaxime Ripard # not listing them here will trigger a warning because of the 49506c7f9bSMaxime Ripard # additionalsProperties set to false. 50b1f35dfdSMaxime Ripard dmas: true 51b1f35dfdSMaxime Ripard dma-names: true 52506c7f9bSMaxime Ripard resets: 53506c7f9bSMaxime Ripard maxItems: 1 54506c7f9bSMaxime Ripard 55506c7f9bSMaxime RipardallOf: 56506c7f9bSMaxime Ripard - if: 57506c7f9bSMaxime Ripard properties: 58506c7f9bSMaxime Ripard compatible: 59506c7f9bSMaxime Ripard contains: 60506c7f9bSMaxime Ripard enum: 61506c7f9bSMaxime Ripard - allwinner,sun6i-a31-spdif 62506c7f9bSMaxime Ripard - allwinner,sun8i-h3-spdif 63506c7f9bSMaxime Ripard 64506c7f9bSMaxime Ripard then: 65506c7f9bSMaxime Ripard required: 66506c7f9bSMaxime Ripard - resets 67506c7f9bSMaxime Ripard 68b1f35dfdSMaxime Ripard - if: 69b1f35dfdSMaxime Ripard properties: 70b1f35dfdSMaxime Ripard compatible: 71b1f35dfdSMaxime Ripard contains: 72b1f35dfdSMaxime Ripard const: allwinner,sun8i-h3-spdif 73b1f35dfdSMaxime Ripard 74b1f35dfdSMaxime Ripard then: 75b1f35dfdSMaxime Ripard properties: 76b1f35dfdSMaxime Ripard dmas: 77b1f35dfdSMaxime Ripard description: TX DMA Channel 78b1f35dfdSMaxime Ripard 79b1f35dfdSMaxime Ripard dma-names: 80b1f35dfdSMaxime Ripard const: tx 81b1f35dfdSMaxime Ripard 82b1f35dfdSMaxime Ripard else: 83b1f35dfdSMaxime Ripard properties: 84b1f35dfdSMaxime Ripard dmas: 85b1f35dfdSMaxime Ripard items: 86b1f35dfdSMaxime Ripard - description: RX DMA Channel 87b1f35dfdSMaxime Ripard - description: TX DMA Channel 88b1f35dfdSMaxime Ripard 89b1f35dfdSMaxime Ripard dma-names: 90b1f35dfdSMaxime Ripard items: 91b1f35dfdSMaxime Ripard - const: rx 92b1f35dfdSMaxime Ripard - const: tx 93b1f35dfdSMaxime Ripard 94506c7f9bSMaxime Ripardrequired: 95506c7f9bSMaxime Ripard - "#sound-dai-cells" 96506c7f9bSMaxime Ripard - compatible 97506c7f9bSMaxime Ripard - reg 98506c7f9bSMaxime Ripard - interrupts 99506c7f9bSMaxime Ripard - clocks 100506c7f9bSMaxime Ripard - clock-names 101506c7f9bSMaxime Ripard - dmas 102506c7f9bSMaxime Ripard - dma-names 103506c7f9bSMaxime Ripard 104506c7f9bSMaxime RipardadditionalProperties: false 105506c7f9bSMaxime Ripard 106506c7f9bSMaxime Ripardexamples: 107506c7f9bSMaxime Ripard - | 108506c7f9bSMaxime Ripard spdif: spdif@1c21000 { 109506c7f9bSMaxime Ripard #sound-dai-cells = <0>; 110506c7f9bSMaxime Ripard compatible = "allwinner,sun4i-a10-spdif"; 111506c7f9bSMaxime Ripard reg = <0x01c21000 0x40>; 112506c7f9bSMaxime Ripard interrupts = <13>; 113506c7f9bSMaxime Ripard clocks = <&apb0_gates 1>, <&spdif_clk>; 114506c7f9bSMaxime Ripard clock-names = "apb", "spdif"; 115506c7f9bSMaxime Ripard dmas = <&dma 0 2>, <&dma 0 2>; 116506c7f9bSMaxime Ripard dma-names = "rx", "tx"; 117506c7f9bSMaxime Ripard }; 118506c7f9bSMaxime Ripard 119506c7f9bSMaxime Ripard... 120