# \[PATCH\] usb: phy: check the return value of ioremap() in usb\_otg\_start()

- From: \<hidden\>
- Date: 2022-07-22 03:20:33 
- List: linux-usb
- Page: https://ratatoskr.run/linux-usb/2022/07/1868898
- Thread: https://ratatoskr.run/linux-usb/2022/07/1868898/t.md

```text
From: William Dean <redacted>

The function ioremap() in usb_otg_start() can fail, so
its return value should be checked.

Fixes: 0807c500a1a6d ("USB: add Freescale USB OTG Transceiver driver")
Reported-by: Hacash Robot <redacted>
Signed-off-by: William Dean <redacted>
---
 drivers/usb/phy/phy-fsl-usb.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/usb/phy/phy-fsl-usb.c b/drivers/usb/phy/phy-fsl-usb.c
index 972704262b02..21b3b2d57358 100644
--- a/drivers/usb/phy/phy-fsl-usb.c
+++ b/drivers/usb/phy/phy-fsl-usb.c
@@ -855,6 +855,8 @@ int usb_otg_start(struct platform_device *pdev)
 	 * with host/device */
 
 	usb_dr_regs = ioremap(res->start, sizeof(struct usb_dr_mmap));
+	if (!usb_dr_regs)
+		return -ENOMEM;
 	p_otg->dr_mem_map = (struct usb_dr_mmap *)usb_dr_regs;
 	pdata->regs = (void *)usb_dr_regs;
 
-- 
2.25.1

```
