[PATCH 5.5 025/399] dmaengine: ti: edma: Fix error return code in edma_probe()

From: Greg Kroah-Hartman
Date: Fri Feb 21 2020 - 02:44:28 EST


From: Wei Yongjun <weiyongjun1@xxxxxxxxxx>

[ Upstream commit d1fd03a35efc6285e43f4ef35ef04dbf2c9389c6 ]

Fix to return negative error code -ENOMEM from the error handling
case instead of 0, as done elsewhere in this function.

Fixes: 2a03c1314506 ("dmaengine: ti: edma: add missed operations")
Signed-off-by: Wei Yongjun <weiyongjun1@xxxxxxxxxx>
Acked-by: Peter Ujfalusi <peter.ujfalusi@xxxxxx>
Link: https://lore.kernel.org/r/20191212114622.127322-1-weiyongjun1@xxxxxxxxxx
Signed-off-by: Vinod Koul <vkoul@xxxxxxxxxx>
Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>
---
drivers/dma/ti/edma.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/dma/ti/edma.c b/drivers/dma/ti/edma.c
index 0628ee4bf1b41..03a7f647f7b2c 100644
--- a/drivers/dma/ti/edma.c
+++ b/drivers/dma/ti/edma.c
@@ -2342,8 +2342,10 @@ static int edma_probe(struct platform_device *pdev)
ecc->channels_mask = devm_kcalloc(dev,
BITS_TO_LONGS(ecc->num_channels),
sizeof(unsigned long), GFP_KERNEL);
- if (!ecc->slave_chans || !ecc->slot_inuse || !ecc->channels_mask)
+ if (!ecc->slave_chans || !ecc->slot_inuse || !ecc->channels_mask) {
+ ret = -ENOMEM;
goto err_disable_pm;
+ }

/* Mark all channels available initially */
bitmap_fill(ecc->channels_mask, ecc->num_channels);
--
2.20.1