1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2%YAML 1.2 3--- 4$id: http://devicetree.org/schemas/dma/fsl,elo-dma.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: Freescale Elo DMA Controller 8 9maintainers: 10 - J. Neuschäfer <j.ne@posteo.net> 11 12description: 13 This is a little-endian 4-channel DMA controller, used in Freescale mpc83xx 14 series chips such as mpc8315, mpc8349, mpc8379 etc. 15 16properties: 17 compatible: 18 items: 19 - enum: 20 - fsl,mpc8313-dma 21 - fsl,mpc8315-dma 22 - fsl,mpc8323-dma 23 - fsl,mpc8347-dma 24 - fsl,mpc8349-dma 25 - fsl,mpc8360-dma 26 - fsl,mpc8377-dma 27 - fsl,mpc8378-dma 28 - fsl,mpc8379-dma 29 - const: fsl,elo-dma 30 31 reg: 32 items: 33 - description: 34 DMA General Status Register, i.e. DGSR which contains status for 35 all the 4 DMA channels. 36 37 cell-index: 38 $ref: /schemas/types.yaml#/definitions/uint32 39 description: Controller index. 0 for controller @ 0x8100. 40 41 ranges: true 42 43 "#address-cells": 44 const: 1 45 46 "#size-cells": 47 const: 1 48 49 interrupts: 50 maxItems: 1 51 description: Controller interrupt. 52 53required: 54 - compatible 55 - reg 56 57patternProperties: 58 "^dma-channel@[0-9a-f]+$": 59 type: object 60 additionalProperties: false 61 62 properties: 63 compatible: 64 oneOf: 65 # native DMA channel 66 - items: 67 - enum: 68 - fsl,mpc8315-dma-channel 69 - fsl,mpc8323-dma-channel 70 - fsl,mpc8347-dma-channel 71 - fsl,mpc8349-dma-channel 72 - fsl,mpc8360-dma-channel 73 - fsl,mpc8377-dma-channel 74 - fsl,mpc8378-dma-channel 75 - fsl,mpc8379-dma-channel 76 - const: fsl,elo-dma-channel 77 78 # audio DMA channel, see fsl,ssi.yaml 79 - const: fsl,ssi-dma-channel 80 81 reg: 82 maxItems: 1 83 84 cell-index: 85 description: DMA channel index starts at 0. 86 87 interrupts: 88 maxItems: 1 89 description: 90 Per-channel interrupt. Only necessary if no controller interrupt has 91 been provided. 92 93additionalProperties: false 94 95examples: 96 - | 97 #include <dt-bindings/interrupt-controller/irq.h> 98 99 dma@82a8 { 100 compatible = "fsl,mpc8349-dma", "fsl,elo-dma"; 101 reg = <0x82a8 4>; 102 #address-cells = <1>; 103 #size-cells = <1>; 104 ranges = <0 0x8100 0x1a4>; 105 interrupts = <71 IRQ_TYPE_LEVEL_LOW>; 106 cell-index = <0>; 107 108 dma-channel@0 { 109 compatible = "fsl,mpc8349-dma-channel", "fsl,elo-dma-channel"; 110 reg = <0 0x80>; 111 cell-index = <0>; 112 interrupts = <71 IRQ_TYPE_LEVEL_LOW>; 113 }; 114 115 dma-channel@80 { 116 compatible = "fsl,mpc8349-dma-channel", "fsl,elo-dma-channel"; 117 reg = <0x80 0x80>; 118 cell-index = <1>; 119 interrupts = <71 IRQ_TYPE_LEVEL_LOW>; 120 }; 121 122 dma-channel@100 { 123 compatible = "fsl,mpc8349-dma-channel", "fsl,elo-dma-channel"; 124 reg = <0x100 0x80>; 125 cell-index = <2>; 126 interrupts = <71 IRQ_TYPE_LEVEL_LOW>; 127 }; 128 129 dma-channel@180 { 130 compatible = "fsl,mpc8349-dma-channel", "fsl,elo-dma-channel"; 131 reg = <0x180 0x80>; 132 cell-index = <3>; 133 interrupts = <71 IRQ_TYPE_LEVEL_LOW>; 134 }; 135 }; 136 137... 138