| From 7bb6aeaf1274fa39092c111c7db516f13eafe5a6 Mon Sep 17 00:00:00 2001 |
| From: Sasha Levin <sashal@kernel.org> |
| Date: Tue, 23 Mar 2021 17:36:22 +0200 |
| Subject: usb: gadget: pch_udc: Check for DMA mapping error |
| |
| From: Andy Shevchenko <andriy.shevchenko@linux.intel.com> |
| |
| [ Upstream commit 4a28d77e359009b846951b06f7c0d8eec8dce298 ] |
| |
| DMA mapping might fail, we have to check it with dma_mapping_error(). |
| Otherwise DMA-API is not happy: |
| |
| DMA-API: pch_udc 0000:02:02.4: device driver failed to check map error[device address=0x00000000027ee678] [size=64 bytes] [mapped as single] |
| |
| Fixes: abab0c67c061 ("usb: pch_udc: Fixed issue which does not work with g_serial") |
| Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> |
| Link: https://lore.kernel.org/r/20210323153626.54908-3-andriy.shevchenko@linux.intel.com |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| Signed-off-by: Sasha Levin <sashal@kernel.org> |
| --- |
| drivers/usb/gadget/udc/pch_udc.c | 2 +- |
| 1 file changed, 1 insertion(+), 1 deletion(-) |
| |
| diff --git a/drivers/usb/gadget/udc/pch_udc.c b/drivers/usb/gadget/udc/pch_udc.c |
| index b46e9bdc720f..29e89ed6aad5 100644 |
| --- a/drivers/usb/gadget/udc/pch_udc.c |
| +++ b/drivers/usb/gadget/udc/pch_udc.c |
| @@ -2955,7 +2955,7 @@ static int init_dma_pools(struct pch_udc_dev *dev) |
| dev->dma_addr = dma_map_single(&dev->pdev->dev, ep0out_buf, |
| UDC_EP0OUT_BUFF_SIZE * 4, |
| DMA_FROM_DEVICE); |
| - return 0; |
| + return dma_mapping_error(&dev->pdev->dev, dev->dma_addr); |
| } |
| |
| static int pch_udc_start(struct usb_gadget *g, |
| -- |
| 2.30.2 |
| |