Read dma-channel-mask from device tree and register only the specified channels. This is useful to reserve some channels for the firmware. Also update the channel number and interrupts to include all 32 channels. The current driver was using only 31 channels as one channel was reserved for firmware. Now with this change, the driver can align more to the actual hardware. v2->v3: * Updates in driver and DT to provide only the interrupts corresponding to the channels used in kernel. This would fix the ABI breakage that could occur with the previous version v1->v2: * Reversed the operands and used BIT macro in 'if' condition. * Fixed warning reported-by: kernel test robot <lkp@xxxxxxxxx> Akhil R (3): dt-bindings: dmaengine: Add dma-channel-mask to Tegra GPCDMA arm64: tegra: Add dma-channel-mask in GPCDMA node dmaengine: tegra: Add support for dma-channel-mask .../bindings/dma/nvidia,tegra186-gpc-dma.yaml | 7 ++- arch/arm64/boot/dts/nvidia/tegra186.dtsi | 1 + arch/arm64/boot/dts/nvidia/tegra194.dtsi | 1 + arch/arm64/boot/dts/nvidia/tegra234.dtsi | 1 + drivers/dma/tegra186-gpc-dma.c | 46 +++++++++++++++---- 5 files changed, 46 insertions(+), 10 deletions(-) -- 2.17.1