Documentation / devicetree / bindings / dma / renesas,nbpfaxi.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 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69
* Renesas "Type-AXI" NBPFAXI* DMA controllers

* DMA controller

Required properties

- compatible:	must be one of
		"renesas,nbpfaxi64dmac1b4"
		"renesas,nbpfaxi64dmac1b8"
		"renesas,nbpfaxi64dmac1b16"
		"renesas,nbpfaxi64dmac4b4"
		"renesas,nbpfaxi64dmac4b8"
		"renesas,nbpfaxi64dmac4b16"
		"renesas,nbpfaxi64dmac8b4"
		"renesas,nbpfaxi64dmac8b8"
		"renesas,nbpfaxi64dmac8b16"
- #dma-cells:	must be 2: the first integer is a terminal number, to which this
		slave is connected, the second one is flags. Flags is a bitmask
		with the following bits defined:

#define NBPF_SLAVE_RQ_HIGH	1
#define NBPF_SLAVE_RQ_LOW	2
#define NBPF_SLAVE_RQ_LEVEL	4

Optional properties:
- max-burst-mem-read:	limit burst size for memory reads
  (DMA_MEM_TO_MEM/DMA_MEM_TO_DEV) to this value, specified in bytes, rather
  than using the maximum burst size allowed by the hardware's buffer size.
- max-burst-mem-write:	limit burst size for memory writes
  (DMA_DEV_TO_MEM/DMA_MEM_TO_MEM) to this value, specified in bytes, rather
  than using the maximum burst size allowed by the hardware's buffer size.
  If both max-burst-mem-read and max-burst-mem-write are set, DMA_MEM_TO_MEM
  will use the lower value.

You can use dma-channels and dma-requests as described in dma.txt, although they
won't be used, this information is derived from the compatibility string.

Example:

	dma: dma-controller@48000000 {
		compatible = "renesas,nbpfaxi64dmac8b4";
		reg = <0x48000000 0x400>;
		interrupts = <0 12 0x4
			      0 13 0x4
			      0 14 0x4
			      0 15 0x4
			      0 16 0x4
			      0 17 0x4
			      0 18 0x4
			      0 19 0x4>;
		#dma-cells = <2>;
		dma-channels = <8>;
		dma-requests = <8>;
	};

* DMA client

Required properties:

dmas and dma-names are required, as described in dma.txt.

Example:

#include <dt-bindings/dma/nbpfaxi.h>

...
		dmas = <&dma 0 (NBPF_SLAVE_RQ_HIGH | NBPF_SLAVE_RQ_LEVEL)
			&dma 1 (NBPF_SLAVE_RQ_HIGH | NBPF_SLAVE_RQ_LEVEL)>;
		dma-names = "rx", "tx";