From 534467076d7188f61f95bb2fce0b7b4f772ad04e Mon Sep 17 00:00:00 2001 From: Robin Gong Date: Sat, 1 May 2021 00:43:13 +0800 Subject: [PATCH] MLK-25473-5: dmaengine: imx-sdma: change to sdma_load_script in resume Change to sdma_load_script instead of sdma_get_firmware to load firmware. Otherwise, below warning log may come out during suspend/resume: [ 3199.782909] imx-sdma 30e10000.dma-controller: firmware found. [ 3199.788740] imx-sdma 30e10000.dma-controller: failed to load firmware Signed-off-by: Robin Gong Reviewed-by: Shengjiu Wang --- drivers/dma/imx-sdma.c | 16 ++-------------- 1 file changed, 2 insertions(+), 14 deletions(-) diff --git a/drivers/dma/imx-sdma.c b/drivers/dma/imx-sdma.c index 769841e5d74f..66c2f8192e7f 100644 --- a/drivers/dma/imx-sdma.c +++ b/drivers/dma/imx-sdma.c @@ -2660,7 +2660,6 @@ static int sdma_resume(struct device *dev) { struct platform_device *pdev = to_platform_device(dev); struct sdma_engine *sdma = platform_get_drvdata(pdev); - unsigned long timeout = jiffies + msecs_to_jiffies(2); int i, ret; /* Do nothing if not i.MX6SX or i.MX7D, i.MX8MP*/ @@ -2705,19 +2704,8 @@ static int sdma_resume(struct device *dev) /* prepare priority for channel0 to start */ sdma_set_channel_priority(&sdma->channel[0], MXC_SDMA_MAX_PRIORITY); - ret = sdma_get_firmware(sdma, sdma->fw_name); - if (ret) { - dev_warn(&pdev->dev, "failed to get firmware\n"); - return ret; - } - /* wait firmware loaded */ - do { - if (time_after(jiffies, timeout)) { - dev_warn(&pdev->dev, "failed to load firmware\n"); - break; - } - usleep_range(50, 500); - } while (!sdma->fw_loaded); + if (sdma_load_script(sdma)) + dev_warn(sdma->dev, "failed to load firmware.\n"); ret = sdma_save_restore_context(sdma, false); if (ret) -- 2.17.1