1c5040fecSAnson Huang# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2c5040fecSAnson Huang%YAML 1.2 3c5040fecSAnson Huang--- 4c5040fecSAnson Huang$id: http://devicetree.org/schemas/sound/fsl,spdif.yaml# 5c5040fecSAnson Huang$schema: http://devicetree.org/meta-schemas/core.yaml# 6c5040fecSAnson Huang 7c5040fecSAnson Huangtitle: Freescale Sony/Philips Digital Interface Format (S/PDIF) Controller 8c5040fecSAnson Huang 9c5040fecSAnson Huangmaintainers: 10c5040fecSAnson Huang - Shengjiu Wang <shengjiu.wang@nxp.com> 11c5040fecSAnson Huang 12c5040fecSAnson Huangdescription: | 13c5040fecSAnson Huang The Freescale S/PDIF audio block is a stereo transceiver that allows the 14c5040fecSAnson Huang processor to receive and transmit digital audio via an coaxial cable or 15c5040fecSAnson Huang a fibre cable. 16c5040fecSAnson Huang 17c5040fecSAnson Huangproperties: 18c5040fecSAnson Huang compatible: 19*82e54d65SFabio Estevam oneOf: 20*82e54d65SFabio Estevam - items: 21*82e54d65SFabio Estevam - enum: 22c5040fecSAnson Huang - fsl,imx35-spdif 23c5040fecSAnson Huang - fsl,imx6sx-spdif 249deef665SShengjiu Wang - fsl,imx8mm-spdif 259deef665SShengjiu Wang - fsl,imx8mn-spdif 26*82e54d65SFabio Estevam - fsl,imx8mq-spdif 27*82e54d65SFabio Estevam - fsl,imx8qm-spdif 28*82e54d65SFabio Estevam - fsl,imx8qxp-spdif 29cb7d734eSShengjiu Wang - fsl,imx8ulp-spdif 30*82e54d65SFabio Estevam - fsl,vf610-spdif 31*82e54d65SFabio Estevam - items: 32*82e54d65SFabio Estevam - enum: 33*82e54d65SFabio Estevam - fsl,imx6sl-spdif 34*82e54d65SFabio Estevam - fsl,imx6sx-spdif 35*82e54d65SFabio Estevam - const: fsl,imx35-spdif 36c5040fecSAnson Huang 37c5040fecSAnson Huang reg: 38c5040fecSAnson Huang maxItems: 1 39c5040fecSAnson Huang 40c5040fecSAnson Huang interrupts: 4182330327SFrank Li minItems: 1 4282330327SFrank Li items: 4382330327SFrank Li - description: Combined or receive interrupt 4482330327SFrank Li - description: Transmit interrupt 45c5040fecSAnson Huang 46c5040fecSAnson Huang dmas: 47c5040fecSAnson Huang items: 48c5040fecSAnson Huang - description: DMA controller phandle and request line for RX 49c5040fecSAnson Huang - description: DMA controller phandle and request line for TX 50c5040fecSAnson Huang 51c5040fecSAnson Huang dma-names: 52c5040fecSAnson Huang items: 53c5040fecSAnson Huang - const: rx 54c5040fecSAnson Huang - const: tx 55c5040fecSAnson Huang 56c5040fecSAnson Huang clocks: 57c5040fecSAnson Huang items: 58c5040fecSAnson Huang - description: The core clock of spdif controller. 59c5040fecSAnson Huang - description: Clock for tx0 and rx0. 60c5040fecSAnson Huang - description: Clock for tx1 and rx1. 61c5040fecSAnson Huang - description: Clock for tx2 and rx2. 62c5040fecSAnson Huang - description: Clock for tx3 and rx3. 63c5040fecSAnson Huang - description: Clock for tx4 and rx4. 64c5040fecSAnson Huang - description: Clock for tx5 and rx5. 65c5040fecSAnson Huang - description: Clock for tx6 and rx6. 66c5040fecSAnson Huang - description: Clock for tx7 and rx7. 67c5040fecSAnson Huang - description: The spba clock is required when SPDIF is placed as a bus 68c5040fecSAnson Huang slave of the Shared Peripheral Bus and when two or more bus masters 69c5040fecSAnson Huang (CPU, DMA or DSP) try to access it. This property is optional depending 70c5040fecSAnson Huang on the SoC design. 71df0835a8SShengjiu Wang - description: PLL clock source for 8kHz series rate, optional. 72df0835a8SShengjiu Wang - description: PLL clock source for 11khz series rate, optional. 73c5040fecSAnson Huang minItems: 9 74c5040fecSAnson Huang 75c5040fecSAnson Huang clock-names: 76c5040fecSAnson Huang items: 77c5040fecSAnson Huang - const: core 78c5040fecSAnson Huang - const: rxtx0 79c5040fecSAnson Huang - const: rxtx1 80c5040fecSAnson Huang - const: rxtx2 81c5040fecSAnson Huang - const: rxtx3 82c5040fecSAnson Huang - const: rxtx4 83c5040fecSAnson Huang - const: rxtx5 84c5040fecSAnson Huang - const: rxtx6 85c5040fecSAnson Huang - const: rxtx7 86c5040fecSAnson Huang - const: spba 87df0835a8SShengjiu Wang - const: pll8k 88df0835a8SShengjiu Wang - const: pll11k 89c5040fecSAnson Huang minItems: 9 90c5040fecSAnson Huang 91c5040fecSAnson Huang big-endian: 92c5040fecSAnson Huang $ref: /schemas/types.yaml#/definitions/flag 93c5040fecSAnson Huang description: | 94c5040fecSAnson Huang If this property is absent, the native endian mode will be in use 95c5040fecSAnson Huang as default, or the big endian mode will be in use for all the device 96c5040fecSAnson Huang registers. Set this flag for HCDs with big endian descriptors and big 97c5040fecSAnson Huang endian registers. 98c5040fecSAnson Huang 999b215318SFrank Li power-domains: 1009b215318SFrank Li maxItems: 1 1019b215318SFrank Li 102c5040fecSAnson Huangrequired: 103c5040fecSAnson Huang - compatible 104c5040fecSAnson Huang - reg 105c5040fecSAnson Huang - interrupts 106c5040fecSAnson Huang - dmas 107c5040fecSAnson Huang - dma-names 108c5040fecSAnson Huang - clocks 109c5040fecSAnson Huang - clock-names 110c5040fecSAnson Huang 111c5040fecSAnson HuangadditionalProperties: false 112c5040fecSAnson Huang 1139b215318SFrank LiallOf: 1149b215318SFrank Li - if: 1159b215318SFrank Li properties: 1169b215318SFrank Li compatible: 11782330327SFrank Li enum: 11882330327SFrank Li - fsl,imx8qm-spdif 11982330327SFrank Li - fsl,imx8qxp-spdif 12082330327SFrank Li then: 12182330327SFrank Li properties: 12282330327SFrank Li interrupts: 12382330327SFrank Li minItems: 2 12482330327SFrank Li else: 12582330327SFrank Li properties: 12682330327SFrank Li interrupts: 12782330327SFrank Li maxItems: 1 12882330327SFrank Li 12982330327SFrank Li - if: 13082330327SFrank Li properties: 13182330327SFrank Li compatible: 1329b215318SFrank Li contains: 1339b215318SFrank Li enum: 1349b215318SFrank Li - fsl,imx8qm-spdif 1359b215318SFrank Li - fsl,imx8qxp-spdif 1369b215318SFrank Li then: 1379b215318SFrank Li required: 1389b215318SFrank Li - power-domains 1399b215318SFrank Li 140c5040fecSAnson Huangexamples: 141c5040fecSAnson Huang - | 142c5040fecSAnson Huang spdif@2004000 { 143c5040fecSAnson Huang compatible = "fsl,imx35-spdif"; 144c5040fecSAnson Huang reg = <0x02004000 0x4000>; 145c5040fecSAnson Huang interrupts = <0 52 0x04>; 146c5040fecSAnson Huang dmas = <&sdma 14 18 0>, 147c5040fecSAnson Huang <&sdma 15 18 0>; 148c5040fecSAnson Huang dma-names = "rx", "tx"; 149c5040fecSAnson Huang clocks = <&clks 197>, <&clks 3>, 150c5040fecSAnson Huang <&clks 197>, <&clks 107>, 151c5040fecSAnson Huang <&clks 0>, <&clks 118>, 152c5040fecSAnson Huang <&clks 62>, <&clks 139>, 153c5040fecSAnson Huang <&clks 0>; 154c5040fecSAnson Huang clock-names = "core", "rxtx0", 155c5040fecSAnson Huang "rxtx1", "rxtx2", 156c5040fecSAnson Huang "rxtx3", "rxtx4", 157c5040fecSAnson Huang "rxtx5", "rxtx6", 158c5040fecSAnson Huang "rxtx7"; 159c5040fecSAnson Huang big-endian; 160c5040fecSAnson Huang }; 161