162306a36Sopenharmony_ci* Renesas "Type-AXI" NBPFAXI* DMA controllers 262306a36Sopenharmony_ci 362306a36Sopenharmony_ci* DMA controller 462306a36Sopenharmony_ci 562306a36Sopenharmony_ciRequired properties 662306a36Sopenharmony_ci 762306a36Sopenharmony_ci- compatible: must be one of 862306a36Sopenharmony_ci "renesas,nbpfaxi64dmac1b4" 962306a36Sopenharmony_ci "renesas,nbpfaxi64dmac1b8" 1062306a36Sopenharmony_ci "renesas,nbpfaxi64dmac1b16" 1162306a36Sopenharmony_ci "renesas,nbpfaxi64dmac4b4" 1262306a36Sopenharmony_ci "renesas,nbpfaxi64dmac4b8" 1362306a36Sopenharmony_ci "renesas,nbpfaxi64dmac4b16" 1462306a36Sopenharmony_ci "renesas,nbpfaxi64dmac8b4" 1562306a36Sopenharmony_ci "renesas,nbpfaxi64dmac8b8" 1662306a36Sopenharmony_ci "renesas,nbpfaxi64dmac8b16" 1762306a36Sopenharmony_ci- #dma-cells: must be 2: the first integer is a terminal number, to which this 1862306a36Sopenharmony_ci slave is connected, the second one is flags. Flags is a bitmask 1962306a36Sopenharmony_ci with the following bits defined: 2062306a36Sopenharmony_ci 2162306a36Sopenharmony_ci#define NBPF_SLAVE_RQ_HIGH 1 2262306a36Sopenharmony_ci#define NBPF_SLAVE_RQ_LOW 2 2362306a36Sopenharmony_ci#define NBPF_SLAVE_RQ_LEVEL 4 2462306a36Sopenharmony_ci 2562306a36Sopenharmony_ciOptional properties: 2662306a36Sopenharmony_ci- max-burst-mem-read: limit burst size for memory reads 2762306a36Sopenharmony_ci (DMA_MEM_TO_MEM/DMA_MEM_TO_DEV) to this value, specified in bytes, rather 2862306a36Sopenharmony_ci than using the maximum burst size allowed by the hardware's buffer size. 2962306a36Sopenharmony_ci- max-burst-mem-write: limit burst size for memory writes 3062306a36Sopenharmony_ci (DMA_DEV_TO_MEM/DMA_MEM_TO_MEM) to this value, specified in bytes, rather 3162306a36Sopenharmony_ci than using the maximum burst size allowed by the hardware's buffer size. 3262306a36Sopenharmony_ci If both max-burst-mem-read and max-burst-mem-write are set, DMA_MEM_TO_MEM 3362306a36Sopenharmony_ci will use the lower value. 3462306a36Sopenharmony_ci 3562306a36Sopenharmony_ciYou can use dma-channels and dma-requests as described in dma.txt, although they 3662306a36Sopenharmony_ciwon't be used, this information is derived from the compatibility string. 3762306a36Sopenharmony_ci 3862306a36Sopenharmony_ciExample: 3962306a36Sopenharmony_ci 4062306a36Sopenharmony_ci dma: dma-controller@48000000 { 4162306a36Sopenharmony_ci compatible = "renesas,nbpfaxi64dmac8b4"; 4262306a36Sopenharmony_ci reg = <0x48000000 0x400>; 4362306a36Sopenharmony_ci interrupts = <0 12 0x4 4462306a36Sopenharmony_ci 0 13 0x4 4562306a36Sopenharmony_ci 0 14 0x4 4662306a36Sopenharmony_ci 0 15 0x4 4762306a36Sopenharmony_ci 0 16 0x4 4862306a36Sopenharmony_ci 0 17 0x4 4962306a36Sopenharmony_ci 0 18 0x4 5062306a36Sopenharmony_ci 0 19 0x4>; 5162306a36Sopenharmony_ci #dma-cells = <2>; 5262306a36Sopenharmony_ci dma-channels = <8>; 5362306a36Sopenharmony_ci dma-requests = <8>; 5462306a36Sopenharmony_ci }; 5562306a36Sopenharmony_ci 5662306a36Sopenharmony_ci* DMA client 5762306a36Sopenharmony_ci 5862306a36Sopenharmony_ciRequired properties: 5962306a36Sopenharmony_ci 6062306a36Sopenharmony_cidmas and dma-names are required, as described in dma.txt. 6162306a36Sopenharmony_ci 6262306a36Sopenharmony_ciExample: 6362306a36Sopenharmony_ci 6462306a36Sopenharmony_ci#include <dt-bindings/dma/nbpfaxi.h> 6562306a36Sopenharmony_ci 6662306a36Sopenharmony_ci... 6762306a36Sopenharmony_ci dmas = <&dma 0 (NBPF_SLAVE_RQ_HIGH | NBPF_SLAVE_RQ_LEVEL) 6862306a36Sopenharmony_ci &dma 1 (NBPF_SLAVE_RQ_HIGH | NBPF_SLAVE_RQ_LEVEL)>; 6962306a36Sopenharmony_ci dma-names = "rx", "tx"; 70