spi: s3c64xx: Use dmaengine_prep_slave_single() to prepare DMA transfers
Since the driver supports only contiguous buffers, there is no need to manually construct a scatterlist with just a single entry, when there is a dedicated helper for this purpose. This patch modifies prepare_dma() function to use available helper instead of manually creating a scatterlist. Signed-off-by: Tomasz Figa <tomasz.figa@gmail.com> Signed-off-by: Mark Brown <broonie@linaro.org>
This commit is contained in:
Родитель
0149871c42
Коммит
90438c4bf9
|
@ -389,7 +389,6 @@ static void prepare_dma(struct s3c64xx_spi_dma_data *dma,
|
|||
{
|
||||
struct s3c64xx_spi_driver_data *sdd;
|
||||
struct dma_slave_config config;
|
||||
struct scatterlist sg;
|
||||
struct dma_async_tx_descriptor *desc;
|
||||
|
||||
memset(&config, 0, sizeof(config));
|
||||
|
@ -412,14 +411,8 @@ static void prepare_dma(struct s3c64xx_spi_dma_data *dma,
|
|||
dmaengine_slave_config(dma->ch, &config);
|
||||
}
|
||||
|
||||
sg_init_table(&sg, 1);
|
||||
sg_dma_len(&sg) = len;
|
||||
sg_set_page(&sg, pfn_to_page(PFN_DOWN(buf)),
|
||||
len, offset_in_page(buf));
|
||||
sg_dma_address(&sg) = buf;
|
||||
|
||||
desc = dmaengine_prep_slave_sg(dma->ch,
|
||||
&sg, 1, dma->direction, DMA_PREP_INTERRUPT);
|
||||
desc = dmaengine_prep_slave_single(dma->ch, buf, len,
|
||||
dma->direction, DMA_PREP_INTERRUPT);
|
||||
|
||||
desc->callback = s3c64xx_spi_dmacb;
|
||||
desc->callback_param = dma;
|
||||
|
|
Загрузка…
Ссылка в новой задаче