1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- * ARM PrimeCell PL330 DMA Controller
- The ARM PrimeCell PL330 DMA controller can move blocks of memory contents
- between memory and peripherals or memory to memory.
- Required properties:
- - compatible: should include both "arm,pl330" and "arm,primecell".
- - reg: physical base address of the controller and length of memory mapped
- region.
- - interrupts: interrupt number to the cpu.
- Optional properties:
- - dma-coherent : Present if dma operations are coherent
- - #dma-cells: must be <1>. used to represent the number of integer
- cells in the dmas property of client device.
- - dma-channels: contains the total number of DMA channels supported by the DMAC
- - dma-requests: contains the total number of DMA requests supported by the DMAC
- Example:
- pdma0: pdma@12680000 {
- compatible = "arm,pl330", "arm,primecell";
- reg = <0x12680000 0x1000>;
- interrupts = <99>;
- #dma-cells = <1>;
- #dma-channels = <8>;
- #dma-requests = <32>;
- };
- Client drivers (device nodes requiring dma transfers from dev-to-mem or
- mem-to-dev) should specify the DMA channel numbers and dma channel names
- as shown below.
- [property name] = <[phandle of the dma controller] [dma request id]>;
- [property name] = <[dma channel name]>
- where 'dma request id' is the dma request number which is connected
- to the client controller. The 'property name' 'dmas' and 'dma-names'
- as required by the generic dma device tree binding helpers. The dma
- names correspond 1:1 with the dma request ids in the dmas property.
- Example: dmas = <&pdma0 12
- &pdma1 11>;
- dma-names = "tx", "rx";
|