Hi @emr1
I hope you are doing well.
There is no need to make change the device tree.
As dma properties for ecspi are already defined in imx8mp.dtsi as below.
ecspi1: spi@30820000 {
#address-cells = <1>;
#size-cells = <0>;
compatible = "fsl,imx8mp-ecspi", "fsl,imx6ul-ecspi";
reg = <0x30820000 0x10000>;
interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&clk IMX8MP_CLK_ECSPI1_ROOT>,
<&clk IMX8MP_CLK_ECSPI1_ROOT>;
clock-names = "ipg", "per";
assigned-clock-rates = <80000000>;
assigned-clocks = <&clk IMX8MP_CLK_ECSPI1>;
assigned-clock-parents = <&clk IMX8MP_SYS_PLL1_800M>;
dmas = <&sdma1 0 7 1>, <&sdma1 1 7 2>;
dma-names = "rx", "tx";
status = "disabled";
};
By Default, Dma transfer is enabled in ecspi driver by use_dma kernel parameter in spi-imx.c driver.
Dma mode is disabled in driver under some configurations (such as slavemode & transfer length). Please see spi_imx_can_dma() in spi-imx.c driver for such conditions.
One can cross-check this by printing degugging information in kernel with highest log level and below kernel options.
CONFIG_SPI_DEBUG=y
Thanks & Regards,
Sanket Parekh