lkml.org 
[lkml]   [2021]   [Sep]   [13]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.14 251/334] mmc: dw_mmc: Fix issue with uninitialized dma_slave_config
    Date
    From: Tony Lindgren <tony@atomide.com>

    [ Upstream commit c3ff0189d3bc9c03845fe37472c140f0fefd0c79 ]

    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 dw_mmc, this is probably not currently an issue but is still good to
    fix though.

    Fixes: 3fc7eaef44db ("mmc: dw_mmc: Add external dma interface support")
    Cc: Shawn Lin <shawn.lin@rock-chips.com>
    Cc: Jaehoon Chung <jh80.chung@samsung.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/20210810081644.19353-2-tony@atomide.com
    Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    drivers/mmc/host/dw_mmc.c | 1 +
    1 file changed, 1 insertion(+)

    diff --git a/drivers/mmc/host/dw_mmc.c b/drivers/mmc/host/dw_mmc.c
    index c3229d8c7041..33cb70aa02aa 100644
    --- a/drivers/mmc/host/dw_mmc.c
    +++ b/drivers/mmc/host/dw_mmc.c
    @@ -782,6 +782,7 @@ static int dw_mci_edmac_start_dma(struct dw_mci *host,
    int ret = 0;

    /* Set external dma config: burst size, burst width */
    + memset(&cfg, 0, sizeof(cfg));
    cfg.dst_addr = host->phy_regs + fifo_offset;
    cfg.src_addr = cfg.dst_addr;
    cfg.dst_addr_width = DMA_SLAVE_BUSWIDTH_4_BYTES;
    --
    2.30.2


    \
     
     \ /
      Last update: 2021-09-13 16:43    [W:2.055 / U:0.176 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site