Re: [PATCH v9 12/14] usb: hcd: Adapt to OTG core
From: Sergei Shtylyov <hidden>
Date: 2016-06-08 11:42:38
Also in:
linux-omap, lkml
On 6/8/2016 12:03 PM, Roger Quadros wrote:
quoted hunk ↗ jump to hunk
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 <redacted> Acked-by: Peter Chen <redacted> --- 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
[...]
quoted hunk ↗ jump to hunk
@@ -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. :-)
[...]
MBR, Sergei