162306a36Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0
262306a36Sopenharmony_ci%YAML 1.2
362306a36Sopenharmony_ci---
462306a36Sopenharmony_ci$id: http://devicetree.org/schemas/dma/dma-router.yaml#
562306a36Sopenharmony_ci$schema: http://devicetree.org/meta-schemas/core.yaml#
662306a36Sopenharmony_ci
762306a36Sopenharmony_cititle: DMA Router Common Properties
862306a36Sopenharmony_ci
962306a36Sopenharmony_cimaintainers:
1062306a36Sopenharmony_ci  - Vinod Koul <vkoul@kernel.org>
1162306a36Sopenharmony_ci
1262306a36Sopenharmony_ciallOf:
1362306a36Sopenharmony_ci  - $ref: dma-common.yaml#
1462306a36Sopenharmony_ci
1562306a36Sopenharmony_cidescription:
1662306a36Sopenharmony_ci  DMA routers are transparent IP blocks used to route DMA request
1762306a36Sopenharmony_ci  lines from devices to the DMA controller. Some SoCs (like TI DRA7x)
1862306a36Sopenharmony_ci  have more peripherals integrated with DMA requests than what the DMA
1962306a36Sopenharmony_ci  controller can handle directly.
2062306a36Sopenharmony_ci
2162306a36Sopenharmony_ciproperties:
2262306a36Sopenharmony_ci  $nodename:
2362306a36Sopenharmony_ci    pattern: "^dma-router(@.*)?$"
2462306a36Sopenharmony_ci
2562306a36Sopenharmony_ci  dma-masters:
2662306a36Sopenharmony_ci    $ref: /schemas/types.yaml#/definitions/phandle-array
2762306a36Sopenharmony_ci    items:
2862306a36Sopenharmony_ci      maxItems: 1
2962306a36Sopenharmony_ci    description:
3062306a36Sopenharmony_ci      Array of phandles to the DMA controllers the router can direct
3162306a36Sopenharmony_ci      the signal to.
3262306a36Sopenharmony_ci
3362306a36Sopenharmony_ci  dma-requests:
3462306a36Sopenharmony_ci    description:
3562306a36Sopenharmony_ci      Number of incoming request lines the router can handle.
3662306a36Sopenharmony_ci
3762306a36Sopenharmony_cirequired:
3862306a36Sopenharmony_ci  - "#dma-cells"
3962306a36Sopenharmony_ci  - dma-masters
4062306a36Sopenharmony_ci
4162306a36Sopenharmony_ciadditionalProperties: true
4262306a36Sopenharmony_ci
4362306a36Sopenharmony_ciexamples:
4462306a36Sopenharmony_ci  - |
4562306a36Sopenharmony_ci    sdma_xbar: dma-router@4a002b78 {
4662306a36Sopenharmony_ci        compatible = "ti,dra7-dma-crossbar";
4762306a36Sopenharmony_ci        reg = <0x4a002b78 0xfc>;
4862306a36Sopenharmony_ci        #dma-cells = <1>;
4962306a36Sopenharmony_ci        dma-requests = <205>;
5062306a36Sopenharmony_ci        ti,dma-safe-map = <0>;
5162306a36Sopenharmony_ci        dma-masters = <&sdma>;
5262306a36Sopenharmony_ci    };
5362306a36Sopenharmony_ci
5462306a36Sopenharmony_ci...
55