From 7da5b5cd93050ce264ba36556f2f2720a0a39acd Mon Sep 17 00:00:00 2001 From: Sascha Hauer Date: Fri, 26 Oct 2018 11:19:49 +0200 Subject: usb: imx: unregister ehci controller on device removal ehci does DMA and hence must be properly quiesced before we leave barebox. Call ehci_unregister() on device removal when we previously registered a ehci controller. Signed-off-by: Sascha Hauer --- drivers/usb/imx/chipidea-imx.c | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'drivers/usb') diff --git a/drivers/usb/imx/chipidea-imx.c b/drivers/usb/imx/chipidea-imx.c index 321a8ada3f..7bf2ef76c5 100644 --- a/drivers/usb/imx/chipidea-imx.c +++ b/drivers/usb/imx/chipidea-imx.c @@ -364,6 +364,11 @@ static int imx_chipidea_probe(struct device_d *dev) static void imx_chipidea_remove(struct device_d *dev) { + struct imx_chipidea *ci = dev->priv; + + if (ci->ehci) + ehci_unregister(ci->ehci); + if (IS_ENABLED(CONFIG_USB_GADGET_DRIVER_ARC)) ci_udc_unregister(); } -- cgit v1.2.3