1*506c7f9bSMaxime Ripard# SPDX-License-Identifier: GPL-2.0 2*506c7f9bSMaxime Ripard%YAML 1.2 3*506c7f9bSMaxime Ripard--- 4*506c7f9bSMaxime Ripard$id: http://devicetree.org/schemas/sound/allwinner,sun4i-a10-spdif.yaml# 5*506c7f9bSMaxime Ripard$schema: http://devicetree.org/meta-schemas/core.yaml# 6*506c7f9bSMaxime Ripard 7*506c7f9bSMaxime Ripardtitle: Allwinner A10 S/PDIF Controller Device Tree Bindings 8*506c7f9bSMaxime Ripard 9*506c7f9bSMaxime Ripardmaintainers: 10*506c7f9bSMaxime Ripard - Chen-Yu Tsai <wens@csie.org> 11*506c7f9bSMaxime Ripard - Liam Girdwood <lgirdwood@gmail.com> 12*506c7f9bSMaxime Ripard - Mark Brown <broonie@kernel.org> 13*506c7f9bSMaxime Ripard - Maxime Ripard <maxime.ripard@bootlin.com> 14*506c7f9bSMaxime Ripard 15*506c7f9bSMaxime Ripardproperties: 16*506c7f9bSMaxime Ripard "#sound-dai-cells": 17*506c7f9bSMaxime Ripard const: 0 18*506c7f9bSMaxime Ripard 19*506c7f9bSMaxime Ripard compatible: 20*506c7f9bSMaxime Ripard oneOf: 21*506c7f9bSMaxime Ripard - const: allwinner,sun4i-a10-spdif 22*506c7f9bSMaxime Ripard - const: allwinner,sun6i-a31-spdif 23*506c7f9bSMaxime Ripard - const: allwinner,sun8i-h3-spdif 24*506c7f9bSMaxime Ripard - items: 25*506c7f9bSMaxime Ripard - const: allwinner,sun8i-a83t-spdif 26*506c7f9bSMaxime Ripard - const: allwinner,sun8i-h3-spdif 27*506c7f9bSMaxime Ripard - items: 28*506c7f9bSMaxime Ripard - const: allwinner,sun50i-a64-spdif 29*506c7f9bSMaxime Ripard - const: allwinner,sun8i-h3-spdif 30*506c7f9bSMaxime Ripard 31*506c7f9bSMaxime Ripard reg: 32*506c7f9bSMaxime Ripard maxItems: 1 33*506c7f9bSMaxime Ripard 34*506c7f9bSMaxime Ripard interrupts: 35*506c7f9bSMaxime Ripard maxItems: 1 36*506c7f9bSMaxime Ripard 37*506c7f9bSMaxime Ripard clocks: 38*506c7f9bSMaxime Ripard items: 39*506c7f9bSMaxime Ripard - description: Bus Clock 40*506c7f9bSMaxime Ripard - description: Module Clock 41*506c7f9bSMaxime Ripard 42*506c7f9bSMaxime Ripard clock-names: 43*506c7f9bSMaxime Ripard items: 44*506c7f9bSMaxime Ripard - const: apb 45*506c7f9bSMaxime Ripard - const: spdif 46*506c7f9bSMaxime Ripard 47*506c7f9bSMaxime Ripard dmas: 48*506c7f9bSMaxime Ripard items: 49*506c7f9bSMaxime Ripard - description: RX DMA Channel 50*506c7f9bSMaxime Ripard - description: TX DMA Channel 51*506c7f9bSMaxime Ripard 52*506c7f9bSMaxime Ripard dma-names: 53*506c7f9bSMaxime Ripard items: 54*506c7f9bSMaxime Ripard - const: rx 55*506c7f9bSMaxime Ripard - const: tx 56*506c7f9bSMaxime Ripard 57*506c7f9bSMaxime Ripard # Even though it only applies to subschemas under the conditionals, 58*506c7f9bSMaxime Ripard # not listing them here will trigger a warning because of the 59*506c7f9bSMaxime Ripard # additionalsProperties set to false. 60*506c7f9bSMaxime Ripard resets: 61*506c7f9bSMaxime Ripard maxItems: 1 62*506c7f9bSMaxime Ripard 63*506c7f9bSMaxime RipardallOf: 64*506c7f9bSMaxime Ripard - if: 65*506c7f9bSMaxime Ripard properties: 66*506c7f9bSMaxime Ripard compatible: 67*506c7f9bSMaxime Ripard contains: 68*506c7f9bSMaxime Ripard enum: 69*506c7f9bSMaxime Ripard - allwinner,sun6i-a31-spdif 70*506c7f9bSMaxime Ripard - allwinner,sun8i-h3-spdif 71*506c7f9bSMaxime Ripard 72*506c7f9bSMaxime Ripard then: 73*506c7f9bSMaxime Ripard required: 74*506c7f9bSMaxime Ripard - resets 75*506c7f9bSMaxime Ripard 76*506c7f9bSMaxime Ripardrequired: 77*506c7f9bSMaxime Ripard - "#sound-dai-cells" 78*506c7f9bSMaxime Ripard - compatible 79*506c7f9bSMaxime Ripard - reg 80*506c7f9bSMaxime Ripard - interrupts 81*506c7f9bSMaxime Ripard - clocks 82*506c7f9bSMaxime Ripard - clock-names 83*506c7f9bSMaxime Ripard - dmas 84*506c7f9bSMaxime Ripard - dma-names 85*506c7f9bSMaxime Ripard 86*506c7f9bSMaxime RipardadditionalProperties: false 87*506c7f9bSMaxime Ripard 88*506c7f9bSMaxime Ripardexamples: 89*506c7f9bSMaxime Ripard - | 90*506c7f9bSMaxime Ripard spdif: spdif@1c21000 { 91*506c7f9bSMaxime Ripard #sound-dai-cells = <0>; 92*506c7f9bSMaxime Ripard compatible = "allwinner,sun4i-a10-spdif"; 93*506c7f9bSMaxime Ripard reg = <0x01c21000 0x40>; 94*506c7f9bSMaxime Ripard interrupts = <13>; 95*506c7f9bSMaxime Ripard clocks = <&apb0_gates 1>, <&spdif_clk>; 96*506c7f9bSMaxime Ripard clock-names = "apb", "spdif"; 97*506c7f9bSMaxime Ripard dmas = <&dma 0 2>, <&dma 0 2>; 98*506c7f9bSMaxime Ripard dma-names = "rx", "tx"; 99*506c7f9bSMaxime Ripard }; 100*506c7f9bSMaxime Ripard 101*506c7f9bSMaxime Ripard... 102