linux-loongson/Documentation/devicetree/bindings/dma/sophgo,cv1800b-dmamux.yaml
Inochi Amaoto 994b5709f9 dt-bindings: dmaengine: Add dma multiplexer for CV18XX/SG200X series SoC
The DMA IP of Sophgo CV18XX/SG200X is based on a DW AXI CORE, with
an additional channel remap register located in the top system control
area. The DMA channel is exclusive to each core.

In addition, the DMA multiplexer is a subdevice of system controller,
so this binding only contains necessary properties for the multiplexer
itself.

Add the dmamux binding for CV18XX/SG200X series SoC.

Signed-off-by: Inochi Amaoto <inochiama@gmail.com>
Reviewed-by: Conor Dooley <conor.dooley@microchip.com>
Link: https://lore.kernel.org/r/20250611081000.1187374-2-inochiama@gmail.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
2025-06-17 11:26:13 +05:30

52 lines
1.1 KiB
YAML

# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/dma/sophgo,cv1800b-dmamux.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Sophgo CV1800/SG200 Series DMA multiplexer
maintainers:
- Inochi Amaoto <inochiama@gmail.com>
description:
The DMA multiplexer of CV1800 is a subdevice of the system
controller. It support mapping 8 channels, but each channel
can be mapped only once.
allOf:
- $ref: dma-router.yaml#
properties:
compatible:
const: sophgo,cv1800b-dmamux
reg:
items:
- description: DMA channal remapping register
- description: DMA channel interrupt mapping register
'#dma-cells':
const: 2
description:
The first cells is device id. The second one is the cpu id.
dma-masters:
maxItems: 1
required:
- reg
- '#dma-cells'
- dma-masters
additionalProperties: false
examples:
- |
dma-router@154 {
compatible = "sophgo,cv1800b-dmamux";
reg = <0x154 0x8>, <0x298 0x4>;
#dma-cells = <2>;
dma-masters = <&dmac>;
};