Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
torvalds
GitHub Repository: torvalds/linux
Path: blob/master/Documentation/devicetree/bindings/dma/fsl,eloplus-dma.yaml
26308 views
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,eloplus-dma.yaml#
5
$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7
title: Freescale EloPlus DMA Controller
8
9
maintainers:
10
- J. Neuschäfer <j.ne@posteo.net>
11
12
description:
13
This is a 4-channel DMA controller with extended addresses and chaining,
14
mainly used in Freescale mpc85xx/86xx, Pxxx and BSC series chips, such as
15
mpc8540, mpc8641 p4080, bsc9131 etc.
16
17
properties:
18
compatible:
19
oneOf:
20
- items:
21
- enum:
22
- fsl,mpc8540-dma
23
- fsl,mpc8541-dma
24
- fsl,mpc8548-dma
25
- fsl,mpc8555-dma
26
- fsl,mpc8560-dma
27
- fsl,mpc8572-dma
28
- fsl,mpc8641-dma
29
- const: fsl,eloplus-dma
30
- const: fsl,eloplus-dma
31
32
reg:
33
items:
34
- description:
35
DMA General Status Register, i.e. DGSR which contains
36
status for all the 4 DMA channels
37
38
cell-index:
39
$ref: /schemas/types.yaml#/definitions/uint32
40
description:
41
controller index. 0 for controller @ 0x21000, 1 for controller @ 0xc000
42
43
ranges: true
44
45
"#address-cells":
46
const: 1
47
48
"#size-cells":
49
const: 1
50
51
interrupts:
52
maxItems: 1
53
description: Controller interrupt.
54
55
patternProperties:
56
"^dma-channel@[0-9a-f]+$":
57
type: object
58
additionalProperties: false
59
60
properties:
61
compatible:
62
oneOf:
63
# native DMA channel
64
- items:
65
- enum:
66
- fsl,mpc8540-dma-channel
67
- fsl,mpc8541-dma-channel
68
- fsl,mpc8548-dma-channel
69
- fsl,mpc8555-dma-channel
70
- fsl,mpc8560-dma-channel
71
- fsl,mpc8572-dma-channel
72
- const: fsl,eloplus-dma-channel
73
74
# audio DMA channel, see fsl,ssi.yaml
75
- const: fsl,ssi-dma-channel
76
77
reg:
78
maxItems: 1
79
80
cell-index:
81
description: DMA channel index starts at 0.
82
83
interrupts:
84
maxItems: 1
85
description:
86
Per-channel interrupt. Only necessary if no controller interrupt has
87
been provided.
88
89
additionalProperties: false
90
91
examples:
92
- |
93
#include <dt-bindings/interrupt-controller/irq.h>
94
95
dma@21300 {
96
compatible = "fsl,mpc8540-dma", "fsl,eloplus-dma";
97
reg = <0x21300 4>;
98
#address-cells = <1>;
99
#size-cells = <1>;
100
ranges = <0 0x21100 0x200>;
101
cell-index = <0>;
102
103
dma-channel@0 {
104
compatible = "fsl,mpc8540-dma-channel", "fsl,eloplus-dma-channel";
105
reg = <0 0x80>;
106
cell-index = <0>;
107
interrupts = <20 IRQ_TYPE_EDGE_FALLING>;
108
};
109
110
dma-channel@80 {
111
compatible = "fsl,mpc8540-dma-channel", "fsl,eloplus-dma-channel";
112
reg = <0x80 0x80>;
113
cell-index = <1>;
114
interrupts = <21 IRQ_TYPE_EDGE_FALLING>;
115
};
116
117
dma-channel@100 {
118
compatible = "fsl,mpc8540-dma-channel", "fsl,eloplus-dma-channel";
119
reg = <0x100 0x80>;
120
cell-index = <2>;
121
interrupts = <22 IRQ_TYPE_EDGE_FALLING>;
122
};
123
124
dma-channel@180 {
125
compatible = "fsl,mpc8540-dma-channel", "fsl,eloplus-dma-channel";
126
reg = <0x180 0x80>;
127
cell-index = <3>;
128
interrupts = <23 IRQ_TYPE_EDGE_FALLING>;
129
};
130
};
131
132
...
133
134