Path: blob/master/Documentation/devicetree/bindings/dma/nvidia,tegra210-adma.yaml
26308 views
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)1%YAML 1.22---3$id: http://devicetree.org/schemas/dma/nvidia,tegra210-adma.yaml#4$schema: http://devicetree.org/meta-schemas/core.yaml#56title: NVIDIA Tegra Audio DMA (ADMA) controller78description: |9The Tegra Audio DMA controller is used for transferring data10between system memory and the Audio Processing Engine (APE).1112maintainers:13- Jon Hunter <jonathanh@nvidia.com>1415properties:16compatible:17oneOf:18- enum:19- nvidia,tegra210-adma20- nvidia,tegra186-adma21- nvidia,tegra264-adma22- items:23- enum:24- nvidia,tegra234-adma25- nvidia,tegra194-adma26- const: nvidia,tegra186-adma2728reg:29description:30The 'page' region describes the address space of the page31used for accessing the DMA channel registers. The 'global'32region describes the address space of the global DMA registers.33In the absence of the 'reg-names' property, there must be a34single entry that covers the address space of the global DMA35registers and the DMA channel registers.36minItems: 137maxItems: 23839reg-names:40minItems: 141maxItems: 24243interrupts:44description: |45Should contain all of the per-channel DMA interrupts in46ascending order with respect to the DMA channel index.47minItems: 148maxItems: 324950clocks:51description: Must contain one entry for the ADMA module clock52maxItems: 15354clock-names:55const: d_audio5657"#dma-cells":58description: |59The first cell denotes the receive/transmit request number and60should be between 1 and the maximum number of requests supported.61This value corresponds to the RX/TX_REQUEST_SELECT fields in the62ADMA_CHn_CTRL register.63const: 16465dma-channel-mask:66maxItems: 16768required:69- compatible70- reg71- interrupts72- clocks73- clock-names7475allOf:76- $ref: dma-controller.yaml#77- if:78properties:79compatible:80contains:81enum:82- nvidia,tegra210-adma83then:84properties:85reg:86items:87- description: Full address space range of DMA registers.8889- if:90properties:91compatible:92contains:93enum:94- nvidia,tegra186-adma95- nvidia,tegra264-adma96then:97anyOf:98- properties:99reg:100items:101- description: Full address space range of DMA registers.102- properties:103reg:104items:105- description: Channel Page address space range of DMA registers.106reg-names:107items:108- const: page109- properties:110reg:111items:112- description: Channel Page address space range of DMA registers.113- description: Global Page address space range of DMA registers.114reg-names:115items:116- const: page117- const: global118119additionalProperties: false120121examples:122- |123#include <dt-bindings/interrupt-controller/arm-gic.h>124#include<dt-bindings/clock/tegra210-car.h>125126dma-controller@702e2000 {127compatible = "nvidia,tegra210-adma";128reg = <0x702e2000 0x2000>;129interrupt-parent = <&tegra_agic>;130interrupts = <GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>,131<GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>,132<GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>,133<GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>,134<GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH>,135<GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>,136<GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>,137<GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>,138<GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>,139<GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>,140<GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>,141<GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>,142<GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>,143<GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>,144<GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>,145<GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>,146<GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>,147<GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>,148<GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>,149<GIC_SPI 43 IRQ_TYPE_LEVEL_HIGH>,150<GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>,151<GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>;152clocks = <&tegra_car TEGRA210_CLK_D_AUDIO>;153clock-names = "d_audio";154#dma-cells = <1>;155};156157...158159160