diff options
author | Tony Lindgren <tony@atomide.com> | 2021-08-10 11:17:27 +0300 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2021-08-10 15:22:20 +0300 |
commit | 976c1de1de147bb7f4e0d87482f375221c05aeaf (patch) | |
tree | d4c397af05a467b7d2c5102c1387ffefc68cff7f /drivers/spi/spi-pic32.c | |
parent | 209ab223ad5b18e437289235e3bde12593b94ac4 (diff) | |
download | linux-976c1de1de147bb7f4e0d87482f375221c05aeaf.tar.xz |
spi: spi-pic32: Fix issue with uninitialized dma_slave_config
Depending on the DMA driver being used, the struct dma_slave_config may
need to be initialized to zero for the unused data.
For example, we have three DMA drivers using src_port_window_size and
dst_port_window_size. If these are left uninitialized, it can cause DMA
failures.
For spi-pic32, this is probably not currently an issue but is still good to
fix though.
Fixes: 1bcb9f8ceb67 ("spi: spi-pic32: Add PIC32 SPI master driver")
Cc: Purna Chandra Mandal <purna.mandal@microchip.com>
Cc: Peter Ujfalusi <peter.ujfalusi@gmail.com>
Cc: Vinod Koul <vkoul@kernel.org>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Link: https://lore.kernel.org/r/20210810081727.19491-2-tony@atomide.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'drivers/spi/spi-pic32.c')
-rw-r--r-- | drivers/spi/spi-pic32.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/spi/spi-pic32.c b/drivers/spi/spi-pic32.c index 104bde153efd..5eb7b61bbb4d 100644 --- a/drivers/spi/spi-pic32.c +++ b/drivers/spi/spi-pic32.c @@ -361,6 +361,7 @@ static int pic32_spi_dma_config(struct pic32_spi *pic32s, u32 dma_width) struct dma_slave_config cfg; int ret; + memset(&cfg, 0, sizeof(cfg)); cfg.device_fc = true; cfg.src_addr = pic32s->dma_base + buf_offset; cfg.dst_addr = pic32s->dma_base + buf_offset; |