From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751610AbdBYDgU (ORCPT ); Fri, 24 Feb 2017 22:36:20 -0500 Received: from mail-qk0-f196.google.com ([209.85.220.196]:32818 "EHLO mail-qk0-f196.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751474AbdBYDgT (ORCPT ); Fri, 24 Feb 2017 22:36:19 -0500 MIME-Version: 1.0 Reply-To: cwchoi00@gmail.com In-Reply-To: <1487250377-13653-5-git-send-email-rogerq@ti.com> References: <1487250377-13653-1-git-send-email-rogerq@ti.com> <1487250377-13653-5-git-send-email-rogerq@ti.com> From: Chanwoo Choi Date: Sat, 25 Feb 2017 12:35:37 +0900 Message-ID: Subject: Re: [PATCH v2 4/4] usb: dwc3: Workaround for super-speed host on dra7 in dual-role mode To: Roger Quadros Cc: balbi@kernel.org, vivek.gautam@codeaurora.org, linux-usb@vger.kernel.org, linux-kernel Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 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