blob: a8c28e8ada072db868cdcb4736d2d5ea89690cc2 [file] [edit]
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/dma/ti/ti,cppi41.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: TI CPPI41 DMA Controller
maintainers:
- Sebastian Andrzej Siewior <bigeasy@linutronix.de>
properties:
compatible:
enum:
- ti,am3359-cppi41
- ti,da830-cppi41
reg:
minItems: 3
maxItems: 4
reg-names:
minItems: 3
maxItems: 4
interrupts:
maxItems: 1
interrupt-names:
const: glue
"#dma-cells":
const: 2
dma-channels:
description: Number of DMA channels supported.
$ref: /schemas/types.yaml#/definitions/uint32
dma-requests:
description: Number of DMA requests supported.
$ref: /schemas/types.yaml#/definitions/uint32
power-domains:
maxItems: 1
"#dma-channels":
description: Deprecated, use dma-channels instead.
deprecated: true
"#dma-requests":
description: Deprecated, use dma-requests instead.
deprecated: true
required:
- compatible
- reg
- reg-names
- "#dma-cells"
- dma-channels
allOf:
- $ref: /schemas/dma/dma-controller.yaml#
- if:
properties:
compatible:
contains:
const: ti,am3359-cppi41
then:
properties:
reg:
minItems: 4
reg-names:
items:
- const: glue
- const: controller
- const: scheduler
- const: queuemgr
power-domains: false
required:
- interrupt-names
- interrupts
- dma-requests
else:
properties:
reg:
maxItems: 3
reg-names:
items:
- const: controller
- const: scheduler
- const: queuemgr
unevaluatedProperties: false
examples:
- |
dma-controller@7402000 {
compatible = "ti,am3359-cppi41";
reg = <0x47400000 0x1000>,
<0x47402000 0x1000>,
<0x47403000 0x1000>,
<0x47404000 0x4000>;
reg-names = "glue", "controller", "scheduler", "queuemgr";
interrupts = <17>;
interrupt-names = "glue";
#dma-cells = <2>;
dma-channels = <30>;
dma-requests = <256>;
};