• Serge Semin's avatar
    spi: dw-dma: Configure the DMA channels in dma_setup · a874d811
    Serge Semin authored
    Mainly this is a preparation patch before adding one-by-one DMA SG entries
    transmission. But logically the Tx and Rx DMA channels setup should be
    performed in the dma_setup() callback anyway. So we'll move the DMA slave
    channels src/dst burst lengths, address and address width configuration
    from the Tx/Rx channels preparation methods to the dedicated functions and
    then make sure it's called at the DMA setup stage.
    
    Note we now make sure the return value of the dmaengine_slave_config()
    method doesn't indicate an error. It has been unnecessary in case if Dw
    DMAC is utilized as a DMA engine, since its device_config() callback
    always returns zero (though it might change in future). But since DW APB
    SSI driver now supports any DMA back-end we must make sure the DMA device
    configuration has been successful before proceeding with further setups.
    Signed-off-by: default avatarSerge Semin <Sergey.Semin@baikalelectronics.ru>
    Link: https://lore.kernel.org/r/20200920112322.24585-4-Sergey.Semin@baikalelectronics.ruSigned-off-by: default avatarMark Brown <broonie@kernel.org>
    a874d811
spi-dw-dma.c 11.9 KB