* 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:

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";
