Since the common code in the spi-dw-dma.c driver is ready to be used
by the MMIO driver and now provides a method to generically (on any
DT or ACPI-based platforms) retrieve the Tx/Rx DMA channel handlers,
we can use it and a set of the common DW SPI DMA callbacks to enable
DMA at least for generic "snps,dw-apb-ssi" and "snps,dwc-ssi-1.01a"
devices.

Co-developed-by: Georgy Vlasov <georgy.vla...@baikalelectronics.ru>
Signed-off-by: Georgy Vlasov <georgy.vla...@baikalelectronics.ru>
Co-developed-by: Ramil Zaripov <ramil.zari...@baikalelectronics.ru>
Signed-off-by: Ramil Zaripov <ramil.zari...@baikalelectronics.ru>
Signed-off-by: Serge Semin <sergey.se...@baikalelectronics.ru>
Reviewed-by: Andy Shevchenko <andriy.shevche...@linux.intel.com>
Cc: Alexey Malahov <alexey.mala...@baikalelectronics.ru>
Cc: Thomas Bogendoerfer <tsbog...@alpha.franken.de>
Cc: Arnd Bergmann <a...@arndb.de>
Cc: Feng Tang <feng.t...@intel.com>
Cc: Rob Herring <robh...@kernel.org>
Cc: linux-m...@vger.kernel.org
Cc: devicet...@vger.kernel.org
---
 drivers/spi/spi-dw-mmio.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/drivers/spi/spi-dw-mmio.c b/drivers/spi/spi-dw-mmio.c
index 0894b4c09496..e23d0c53a664 100644
--- a/drivers/spi/spi-dw-mmio.c
+++ b/drivers/spi/spi-dw-mmio.c
@@ -149,6 +149,8 @@ static int dw_spi_dw_apb_init(struct platform_device *pdev,
        /* Register hook to configure CTRLR0 */
        dwsmmio->dws.update_cr0 = dw_spi_update_cr0;
 
+       dw_spi_dma_setup_generic(&dwsmmio->dws);
+
        return 0;
 }
 
@@ -158,6 +160,8 @@ static int dw_spi_dwc_ssi_init(struct platform_device *pdev,
        /* Register hook to configure CTRLR0 */
        dwsmmio->dws.update_cr0 = dw_spi_update_cr0_v1_01a;
 
+       dw_spi_dma_setup_generic(&dwsmmio->dws);
+
        return 0;
 }
 
-- 
2.26.2

Reply via email to