Documentation / devicetree / bindings / dma / sprd-dma.txt


Based on kernel version 6.8. Page generated on 2024-03-11 21:26 EST.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
* Spreadtrum DMA controller

This binding follows the generic DMA bindings defined in dma.txt.

Required properties:
- compatible: Should be "sprd,sc9860-dma".
- reg: Should contain DMA registers location and length.
- interrupts: Should contain one interrupt shared by all channel.
- #dma-cells: must be <1>. Used to represent the number of integer
	cells in the dmas property of client device.
- dma-channels : Number of DMA channels supported. Should be 32.
- clock-names: Should contain the clock of the DMA controller.
- clocks: Should contain a clock specifier for each entry in clock-names.

Deprecated properties:
- #dma-channels : Number of DMA channels supported. Should be 32.

Example:

Controller:
apdma: dma-controller@20100000 {
	compatible = "sprd,sc9860-dma";
	reg = <0x20100000 0x4000>;
	interrupts = <GIC_SPI 50 IRQ_TYPE_LEVEL_HIGH>;
	#dma-cells = <1>;
	dma-channels = <32>;
	clock-names = "enable";
	clocks = <&clk_ap_ahb_gates 5>;
};


Client:
DMA clients connected to the Spreadtrum DMA controller must use the format
described in the dma.txt file, using a two-cell specifier for each channel.
The two cells in order are:
1. A phandle pointing to the DMA controller.
2. The slave id.

spi0: spi@70a00000{
	...
	dma-names = "rx_chn", "tx_chn";
	dmas = <&apdma 11>, <&apdma 12>;
	...
};