Back to home page

OSCL-LXR

 
 

    


0001 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
0002 %YAML 1.2
0003 ---
0004 $id: http://devicetree.org/schemas/dma/apple,admac.yaml#
0005 $schema: http://devicetree.org/meta-schemas/core.yaml#
0006 
0007 title: Apple Audio DMA Controller (ADMAC)
0008 
0009 description: |
0010   Apple's Audio DMA Controller (ADMAC) is used to fetch and store audio samples
0011   on SoCs from the "Apple Silicon" family.
0012 
0013   The controller has been seen with up to 24 channels. Even-numbered channels
0014   are TX-only, odd-numbered are RX-only. Individual channels are coupled to
0015   fixed device endpoints.
0016 
0017 maintainers:
0018   - Martin Povišer <povik+lin@cutebit.org>
0019 
0020 allOf:
0021   - $ref: "dma-controller.yaml#"
0022 
0023 properties:
0024   compatible:
0025     items:
0026       - enum:
0027           - apple,t6000-admac
0028           - apple,t8103-admac
0029       - const: apple,admac
0030 
0031   reg:
0032     maxItems: 1
0033 
0034   '#dma-cells':
0035     const: 1
0036     description:
0037       Clients specify a single cell with channel number.
0038 
0039   dma-channels:
0040     maximum: 24
0041 
0042   interrupts:
0043     minItems: 4
0044     maxItems: 4
0045     description:
0046       Interrupts that correspond to the 4 IRQ outputs of the controller. Usually
0047       only one of the controller outputs will be connected as an usable interrupt
0048       source. The remaining interrupts will be left without a valid value, e.g.
0049       in an interrupts-extended list the disconnected positions will contain
0050       an empty phandle reference <0>.
0051 
0052 required:
0053   - compatible
0054   - reg
0055   - '#dma-cells'
0056   - dma-channels
0057   - interrupts
0058 
0059 additionalProperties: false
0060 
0061 examples:
0062   - |
0063     #include <dt-bindings/interrupt-controller/apple-aic.h>
0064     #include <dt-bindings/interrupt-controller/irq.h>
0065 
0066     aic: interrupt-controller {
0067       interrupt-controller;
0068       #interrupt-cells = <3>;
0069     };
0070 
0071     admac: dma-controller@238200000 {
0072       compatible = "apple,t8103-admac", "apple,admac";
0073       reg = <0x38200000 0x34000>;
0074       dma-channels = <24>;
0075       interrupts-extended = <0>,
0076                             <&aic AIC_IRQ 626 IRQ_TYPE_LEVEL_HIGH>,
0077                             <0>,
0078                             <0>;
0079       #dma-cells = <1>;
0080     };