From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756639AbcFHMG2 (ORCPT ); Wed, 8 Jun 2016 08:06:28 -0400 Received: from arroyo.ext.ti.com ([198.47.19.12]:36283 "EHLO arroyo.ext.ti.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751672AbcFHMGZ (ORCPT ); Wed, 8 Jun 2016 08:06:25 -0400 Subject: Re: [PATCH v9 12/14] usb: hcd: Adapt to OTG core To: Sergei Shtylyov , References: <1465376626-30122-1-git-send-email-rogerq@ti.com> <1465376626-30122-13-git-send-email-rogerq@ti.com> <22442eeb-e927-d7ac-52c6-3aebd2106837@cogentembedded.com> CC: , , , , , , , , , , , , , , , From: Roger Quadros Message-ID: <57580A2D.8060308@ti.com> Date: Wed, 8 Jun 2016 15:06:05 +0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.8.0 MIME-Version: 1.0 In-Reply-To: <22442eeb-e927-d7ac-52c6-3aebd2106837@cogentembedded.com> Content-Type: text/plain; charset="windows-1252" Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 08/06/16 14:42, Sergei Shtylyov wrote: > On 6/8/2016 12:03 PM, Roger Quadros wrote: > >> Introduce usb_otg_add/remove_hcd() for use by host >> controllers that are part of OTG/dual-role port. >> >> Non Device tree platforms can use the otg_dev argument >> to specify the OTG controller device. If otg_dev is NULL >> then the device tree node's otg-controller property is used to >> get the otg_dev device. >> >> Signed-off-by: Roger Quadros >> Acked-by: Peter Chen >> --- >> drivers/usb/core/hcd.c | 55 +++++++++++++++++++++++++++++++++++++++++++++++++ >> include/linux/usb/hcd.h | 4 ++++ >> 2 files changed, 59 insertions(+) >> >> diff --git a/drivers/usb/core/hcd.c b/drivers/usb/core/hcd.c >> index ae6c76d..c6f4155 100644 >> --- a/drivers/usb/core/hcd.c >> +++ b/drivers/usb/core/hcd.c > [...] >> @@ -3025,6 +3030,56 @@ void usb_remove_hcd(struct usb_hcd *hcd) >> } >> EXPORT_SYMBOL_GPL(usb_remove_hcd); >> >> +static struct otg_hcd_ops otg_hcd_intf = { >> + .add = usb_add_hcd, >> + .remove = usb_remove_hcd, >> + .usb_bus_start_enum = usb_bus_start_enum, >> + .usb_control_msg = usb_control_msg, >> + .usb_hub_find_child = usb_hub_find_child, >> +}; >> + >> +/** >> + * usb_otg_add_hcd - Register the HCD with OTG core. >> + * @hcd: the usb_hcd structure to initialize >> + * @irqnum: Interrupt line to allocate >> + * @irqflags: Interrupt type flags >> + * @otg_dev: OTG controller device managing this HCD > > Device managing a driver? That's interesting. :-) Well it is the OTG controller instance really. How else do you want me to write it? cheers, -roger