1*c66ec88fSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2*c66ec88fSEmmanuel Vadot%YAML 1.2 3*c66ec88fSEmmanuel Vadot--- 4*c66ec88fSEmmanuel Vadot$id: http://devicetree.org/schemas/sound/ingenic,aic.yaml# 5*c66ec88fSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6*c66ec88fSEmmanuel Vadot 7*c66ec88fSEmmanuel Vadottitle: Ingenic SoCs AC97 / I2S Controller (AIC) DT bindings 8*c66ec88fSEmmanuel Vadot 9*c66ec88fSEmmanuel Vadotmaintainers: 10*c66ec88fSEmmanuel Vadot - Paul Cercueil <paul@crapouillou.net> 11*c66ec88fSEmmanuel Vadot 12*c66ec88fSEmmanuel Vadotproperties: 13*c66ec88fSEmmanuel Vadot $nodename: 14*c66ec88fSEmmanuel Vadot pattern: '^audio-controller@' 15*c66ec88fSEmmanuel Vadot 16*c66ec88fSEmmanuel Vadot compatible: 17*c66ec88fSEmmanuel Vadot oneOf: 18*c66ec88fSEmmanuel Vadot - enum: 19*c66ec88fSEmmanuel Vadot - ingenic,jz4740-i2s 20*c66ec88fSEmmanuel Vadot - ingenic,jz4760-i2s 21*c66ec88fSEmmanuel Vadot - ingenic,jz4770-i2s 22*c66ec88fSEmmanuel Vadot - ingenic,jz4780-i2s 23*c66ec88fSEmmanuel Vadot - items: 24*c66ec88fSEmmanuel Vadot - const: ingenic,jz4725b-i2s 25*c66ec88fSEmmanuel Vadot - const: ingenic,jz4740-i2s 26*c66ec88fSEmmanuel Vadot 27*c66ec88fSEmmanuel Vadot '#sound-dai-cells': 28*c66ec88fSEmmanuel Vadot const: 0 29*c66ec88fSEmmanuel Vadot 30*c66ec88fSEmmanuel Vadot reg: 31*c66ec88fSEmmanuel Vadot maxItems: 1 32*c66ec88fSEmmanuel Vadot 33*c66ec88fSEmmanuel Vadot interrupts: 34*c66ec88fSEmmanuel Vadot maxItems: 1 35*c66ec88fSEmmanuel Vadot 36*c66ec88fSEmmanuel Vadot clocks: 37*c66ec88fSEmmanuel Vadot items: 38*c66ec88fSEmmanuel Vadot - description: AIC clock 39*c66ec88fSEmmanuel Vadot - description: I2S clock 40*c66ec88fSEmmanuel Vadot - description: EXT clock 41*c66ec88fSEmmanuel Vadot - description: PLL/2 clock 42*c66ec88fSEmmanuel Vadot 43*c66ec88fSEmmanuel Vadot clock-names: 44*c66ec88fSEmmanuel Vadot items: 45*c66ec88fSEmmanuel Vadot - const: aic 46*c66ec88fSEmmanuel Vadot - const: i2s 47*c66ec88fSEmmanuel Vadot - const: ext 48*c66ec88fSEmmanuel Vadot - const: pll half 49*c66ec88fSEmmanuel Vadot 50*c66ec88fSEmmanuel Vadot dmas: 51*c66ec88fSEmmanuel Vadot items: 52*c66ec88fSEmmanuel Vadot - description: DMA controller phandle and request line for I2S RX 53*c66ec88fSEmmanuel Vadot - description: DMA controller phandle and request line for I2S TX 54*c66ec88fSEmmanuel Vadot 55*c66ec88fSEmmanuel Vadot dma-names: 56*c66ec88fSEmmanuel Vadot items: 57*c66ec88fSEmmanuel Vadot - const: rx 58*c66ec88fSEmmanuel Vadot - const: tx 59*c66ec88fSEmmanuel Vadot 60*c66ec88fSEmmanuel VadotadditionalProperties: false 61*c66ec88fSEmmanuel Vadot 62*c66ec88fSEmmanuel Vadotrequired: 63*c66ec88fSEmmanuel Vadot - compatible 64*c66ec88fSEmmanuel Vadot - reg 65*c66ec88fSEmmanuel Vadot - interrupts 66*c66ec88fSEmmanuel Vadot - clocks 67*c66ec88fSEmmanuel Vadot - clock-names 68*c66ec88fSEmmanuel Vadot - dmas 69*c66ec88fSEmmanuel Vadot - dma-names 70*c66ec88fSEmmanuel Vadot - '#sound-dai-cells' 71*c66ec88fSEmmanuel Vadot 72*c66ec88fSEmmanuel Vadotexamples: 73*c66ec88fSEmmanuel Vadot - | 74*c66ec88fSEmmanuel Vadot #include <dt-bindings/clock/jz4740-cgu.h> 75*c66ec88fSEmmanuel Vadot aic: audio-controller@10020000 { 76*c66ec88fSEmmanuel Vadot compatible = "ingenic,jz4740-i2s"; 77*c66ec88fSEmmanuel Vadot reg = <0x10020000 0x38>; 78*c66ec88fSEmmanuel Vadot 79*c66ec88fSEmmanuel Vadot #sound-dai-cells = <0>; 80*c66ec88fSEmmanuel Vadot 81*c66ec88fSEmmanuel Vadot interrupt-parent = <&intc>; 82*c66ec88fSEmmanuel Vadot interrupts = <18>; 83*c66ec88fSEmmanuel Vadot 84*c66ec88fSEmmanuel Vadot clocks = <&cgu JZ4740_CLK_AIC>, 85*c66ec88fSEmmanuel Vadot <&cgu JZ4740_CLK_I2S>, 86*c66ec88fSEmmanuel Vadot <&cgu JZ4740_CLK_EXT>, 87*c66ec88fSEmmanuel Vadot <&cgu JZ4740_CLK_PLL_HALF>; 88*c66ec88fSEmmanuel Vadot clock-names = "aic", "i2s", "ext", "pll half"; 89*c66ec88fSEmmanuel Vadot 90*c66ec88fSEmmanuel Vadot dmas = <&dmac 25 0xffffffff>, <&dmac 24 0xffffffff>; 91*c66ec88fSEmmanuel Vadot dma-names = "rx", "tx"; 92*c66ec88fSEmmanuel Vadot }; 93