1*873971f8SMartin Povišer# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 2*873971f8SMartin Povišer%YAML 1.2 3*873971f8SMartin Povišer--- 4*873971f8SMartin Povišer$id: http://devicetree.org/schemas/dma/apple,admac.yaml# 5*873971f8SMartin Povišer$schema: http://devicetree.org/meta-schemas/core.yaml# 6*873971f8SMartin Povišer 7*873971f8SMartin Povišertitle: Apple Audio DMA Controller (ADMAC) 8*873971f8SMartin Povišer 9*873971f8SMartin Povišerdescription: | 10*873971f8SMartin Povišer Apple's Audio DMA Controller (ADMAC) is used to fetch and store audio samples 11*873971f8SMartin Povišer on SoCs from the "Apple Silicon" family. 12*873971f8SMartin Povišer 13*873971f8SMartin Povišer The controller has been seen with up to 24 channels. Even-numbered channels 14*873971f8SMartin Povišer are TX-only, odd-numbered are RX-only. Individual channels are coupled to 15*873971f8SMartin Povišer fixed device endpoints. 16*873971f8SMartin Povišer 17*873971f8SMartin Povišermaintainers: 18*873971f8SMartin Povišer - Martin Povišer <povik+lin@cutebit.org> 19*873971f8SMartin Povišer 20*873971f8SMartin PovišerallOf: 21*873971f8SMartin Povišer - $ref: "dma-controller.yaml#" 22*873971f8SMartin Povišer 23*873971f8SMartin Povišerproperties: 24*873971f8SMartin Povišer compatible: 25*873971f8SMartin Povišer items: 26*873971f8SMartin Povišer - enum: 27*873971f8SMartin Povišer - apple,t6000-admac 28*873971f8SMartin Povišer - apple,t8103-admac 29*873971f8SMartin Povišer - const: apple,admac 30*873971f8SMartin Povišer 31*873971f8SMartin Povišer reg: 32*873971f8SMartin Povišer maxItems: 1 33*873971f8SMartin Povišer 34*873971f8SMartin Povišer '#dma-cells': 35*873971f8SMartin Povišer const: 1 36*873971f8SMartin Povišer description: 37*873971f8SMartin Povišer Clients specify a single cell with channel number. 38*873971f8SMartin Povišer 39*873971f8SMartin Povišer dma-channels: 40*873971f8SMartin Povišer maximum: 24 41*873971f8SMartin Povišer 42*873971f8SMartin Povišer interrupts: 43*873971f8SMartin Povišer minItems: 4 44*873971f8SMartin Povišer maxItems: 4 45*873971f8SMartin Povišer description: 46*873971f8SMartin Povišer Interrupts that correspond to the 4 IRQ outputs of the controller. Usually 47*873971f8SMartin Povišer only one of the controller outputs will be connected as an usable interrupt 48*873971f8SMartin Povišer source. The remaining interrupts will be left without a valid value, e.g. 49*873971f8SMartin Povišer in an interrupts-extended list the disconnected positions will contain 50*873971f8SMartin Povišer an empty phandle reference <0>. 51*873971f8SMartin Povišer 52*873971f8SMartin Povišerrequired: 53*873971f8SMartin Povišer - compatible 54*873971f8SMartin Povišer - reg 55*873971f8SMartin Povišer - '#dma-cells' 56*873971f8SMartin Povišer - dma-channels 57*873971f8SMartin Povišer - interrupts 58*873971f8SMartin Povišer 59*873971f8SMartin PovišeradditionalProperties: false 60*873971f8SMartin Povišer 61*873971f8SMartin Povišerexamples: 62*873971f8SMartin Povišer - | 63*873971f8SMartin Povišer #include <dt-bindings/interrupt-controller/apple-aic.h> 64*873971f8SMartin Povišer #include <dt-bindings/interrupt-controller/irq.h> 65*873971f8SMartin Povišer 66*873971f8SMartin Povišer admac: dma-controller@238200000 { 67*873971f8SMartin Povišer compatible = "apple,t8103-admac", "apple,admac"; 68*873971f8SMartin Povišer reg = <0x38200000 0x34000>; 69*873971f8SMartin Povišer dma-channels = <24>; 70*873971f8SMartin Povišer interrupts-extended = <0>, 71*873971f8SMartin Povišer <&aic AIC_IRQ 626 IRQ_TYPE_LEVEL_HIGH>, 72*873971f8SMartin Povišer <0>, 73*873971f8SMartin Povišer <0>; 74*873971f8SMartin Povišer #dma-cells = <1>; 75*873971f8SMartin Povišer }; 76