lkml.org 
[lkml]   [2017]   [Feb]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
Date
SubjectRe: [PATCH v2 4/4] usb: dwc3: Workaround for super-speed host on dra7 in dual-role mode
Hi Roger,

[snip]

> /* dwc->lock must be held */
> static void dwc3_otg_core_exit(struct dwc3 *dwc)
> {
> + if (dwc->edev)
> + return;
> +
> /* disable all otg irqs */
> dwc3_otg_disable_events(dwc, DWC3_OTG_ALL_EVENTS);
> /* clear all events */
> @@ -1286,6 +1364,57 @@ static int dwc3_drd_init(struct dwc3 *dwc)
>
> INIT_WORK(&dwc->otg_work, dwc3_drd_work);
>
> + /* If extcon device is present we don't rely on OTG core for ID event */
> + if (dwc->edev) {
> + int id, vbus;
> +
> + dwc->edev_nb.notifier_call = dwc3_drd_notifier;
> + ret = extcon_register_notifier(dwc->edev, EXTCON_USB,
> + &dwc->edev_nb);

I recommend that you better to use the devm_extcon_register_notifier()

> + if (ret < 0) {
> + dev_err(dwc->dev, "Couldn't register USB cable notifier\n");
> + return -ENODEV;
> + }
> +
> + ret = extcon_register_notifier(dwc->edev, EXTCON_USB_HOST,
> + &dwc->edev_nb);

Ditto.

[snip]

--
Best Regards,
Chanwoo Choi
Samsung Electronics

\
 
 \ /
  Last update: 2017-02-25 04:37    [W:0.186 / U:0.684 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site