Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1417109 > unrolled thread
| Started by | Roger Quadros <rogerq@ti.com> |
|---|---|
| First post | 2016-06-08 11:10 +0200 |
| Last post | 2016-06-09 10:00 +0200 |
| Articles | 9 — 3 participants |
Back to article view | Back to linux.kernel
This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by
below is the oldest one visible, not the original post.
[PATCH v9 03/14] usb: hcd.h: Add OTG to HCD interface Roger Quadros <rogerq@ti.com> - 2016-06-08 11:10 +0200
Re: [PATCH v9 03/14] usb: hcd.h: Add OTG to HCD interface Sergei Shtylyov <sergei.shtylyov@cogentembedded.com> - 2016-06-08 13:40 +0200
Re: [PATCH v9 03/14] usb: hcd.h: Add OTG to HCD interface Roger Quadros <rogerq@ti.com> - 2016-06-08 14:10 +0200
Re: [PATCH v9 03/14] usb: hcd.h: Add OTG to HCD interface Sergei Shtylyov <sergei.shtylyov@cogentembedded.com> - 2016-06-08 14:20 +0200
Re: [PATCH v9 03/14] usb: hcd.h: Add OTG to HCD interface Roger Quadros <rogerq@ti.com> - 2016-06-09 09:40 +0200
Re: [PATCH v9 03/14] usb: hcd.h: Add OTG to HCD interface Sergei Shtylyov <sergei.shtylyov@cogentembedded.com> - 2016-06-09 12:20 +0200
Re: [PATCH v9 03/14] usb: hcd.h: Add OTG to HCD interface Alan Stern <stern@rowland.harvard.edu> - 2016-06-09 16:20 +0200
Re: [PATCH v9 03/14] usb: hcd.h: Add OTG to HCD interface Roger Quadros <rogerq@ti.com> - 2016-06-10 09:10 +0200
[PATCH v10 03/14] usb: hcd.h: Add OTG to HCD interface Roger Quadros <rogerq@ti.com> - 2016-06-09 10:00 +0200
| From | Roger Quadros <rogerq@ti.com> |
|---|---|
| Date | 2016-06-08 11:10 +0200 |
| Subject | [PATCH v9 03/14] usb: hcd.h: Add OTG to HCD interface |
| Message-ID | <rHHER-6Fd-1@gated-at.bofh.it> |
The OTG core will use struct otg_hcd_ops to interface
with the HCD controller.
The main purpose of this interface is to avoid directly
calling HCD APIs from the OTG core as they
wouldn't be defined in the built-in symbol table if
CONFIG_USB is m.
Signed-off-by: Roger Quadros <rogerq@ti.com>
Acked-by: Peter Chen <peter.chen@nxp.com>
---
include/linux/usb/hcd.h | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)
diff --git a/include/linux/usb/hcd.h b/include/linux/usb/hcd.h
index 66fc137..7914bed 100644
--- a/include/linux/usb/hcd.h
+++ b/include/linux/usb/hcd.h
@@ -400,6 +400,30 @@ struct hc_driver {
};
+/**
+ * struct otg_hcd_ops - Interface between OTG core and HCD
+ *
+ * Provided by the HCD core to allow the OTG core to interface with the HCD
+ *
+ * @add: function to add the HCD
+ * @remove: function to remove the HCD
+ * @usb_bus_start_enum: function to immediately start bus enumeration
+ * @usb_control_msg: function to build and send of a control urb
+ * @usb_hub_find_child: function to get pointer to the child device
+ */
+struct otg_hcd_ops {
+ int (*add)(struct usb_hcd *hcd,
+ unsigned int irqnum, unsigned long irqflags);
+ void (*remove)(struct usb_hcd *hcd);
+ int (*usb_bus_start_enum)(struct usb_bus *bus, unsigned int port_num);
+ int (*usb_control_msg)(struct usb_device *dev, unsigned int pipe,
+ __u8 request, __u8 requesttype, __u16 value,
+ __u16 index, void *data, __u16 size,
+ int timeout);
+ struct usb_device * (*usb_hub_find_child)(struct usb_device *hdev,
+ int port1);
+};
+
static inline int hcd_giveback_urb_in_bh(struct usb_hcd *hcd)
{
return hcd->driver->flags & HCD_BH;
--
2.7.4
[toc] | [next] | [standalone]
| From | Sergei Shtylyov <sergei.shtylyov@cogentembedded.com> |
|---|---|
| Date | 2016-06-08 13:40 +0200 |
| Message-ID | <rHK02-80s-5@gated-at.bofh.it> |
| In reply to | #1417109 |
Hello.
On 6/8/2016 12:03 PM, Roger Quadros wrote:
> The OTG core will use struct otg_hcd_ops to interface
> with the HCD controller.
Host controller driver (HCD) controller? Maybe just HC? :-)
> The main purpose of this interface is to avoid directly
> calling HCD APIs from the OTG core as they
> wouldn't be defined in the built-in symbol table if
> CONFIG_USB is m.
>
> Signed-off-by: Roger Quadros <rogerq@ti.com>
> Acked-by: Peter Chen <peter.chen@nxp.com>
> ---
> include/linux/usb/hcd.h | 24 ++++++++++++++++++++++++
> 1 file changed, 24 insertions(+)
>
> diff --git a/include/linux/usb/hcd.h b/include/linux/usb/hcd.h
> index 66fc137..7914bed 100644
> --- a/include/linux/usb/hcd.h
> +++ b/include/linux/usb/hcd.h
> @@ -400,6 +400,30 @@ struct hc_driver {
>
> };
>
> +/**
> + * struct otg_hcd_ops - Interface between OTG core and HCD
> + *
> + * Provided by the HCD core to allow the OTG core to interface with the HCD
> + *
> + * @add: function to add the HCD
> + * @remove: function to remove the HCD
> + * @usb_bus_start_enum: function to immediately start bus enumeration
> + * @usb_control_msg: function to build and send of a control urb
That "of" is not needed. And it's URB.
[...]
MBR, Sergei
[toc] | [prev] | [next] | [standalone]
| From | Roger Quadros <rogerq@ti.com> |
|---|---|
| Date | 2016-06-08 14:10 +0200 |
| Message-ID | <rHKt3-8pd-9@gated-at.bofh.it> |
| In reply to | #1417317 |
Hi,
On 08/06/16 14:39, Sergei Shtylyov wrote:
> Hello.
>
> On 6/8/2016 12:03 PM, Roger Quadros wrote:
>
>> The OTG core will use struct otg_hcd_ops to interface
>> with the HCD controller.
>
> Host controller driver (HCD) controller? Maybe just HC? :-)
OK.
>
>> The main purpose of this interface is to avoid directly
>> calling HCD APIs from the OTG core as they
>> wouldn't be defined in the built-in symbol table if
>> CONFIG_USB is m.
>>
>> Signed-off-by: Roger Quadros <rogerq@ti.com>
>> Acked-by: Peter Chen <peter.chen@nxp.com>
>> ---
>> include/linux/usb/hcd.h | 24 ++++++++++++++++++++++++
>> 1 file changed, 24 insertions(+)
>>
>> diff --git a/include/linux/usb/hcd.h b/include/linux/usb/hcd.h
>> index 66fc137..7914bed 100644
>> --- a/include/linux/usb/hcd.h
>> +++ b/include/linux/usb/hcd.h
>> @@ -400,6 +400,30 @@ struct hc_driver {
>>
>> };
>>
>> +/**
>> + * struct otg_hcd_ops - Interface between OTG core and HCD
>> + *
>> + * Provided by the HCD core to allow the OTG core to interface with the HCD
>> + *
>> + * @add: function to add the HCD
>> + * @remove: function to remove the HCD
>> + * @usb_bus_start_enum: function to immediately start bus enumeration
>> + * @usb_control_msg: function to build and send of a control urb
>
> That "of" is not needed. And it's URB.
Right.
>
> [...]
>
--
cheers,
-roger
[toc] | [prev] | [next] | [standalone]
| From | Sergei Shtylyov <sergei.shtylyov@cogentembedded.com> |
|---|---|
| Date | 2016-06-08 14:20 +0200 |
| Message-ID | <rHKCK-8sB-21@gated-at.bofh.it> |
| In reply to | #1417335 |
On 6/8/2016 3:04 PM, Roger Quadros wrote:
>>> The OTG core will use struct otg_hcd_ops to interface
>>> with the HCD controller.
>>
>> Host controller driver (HCD) controller? Maybe just HC? :-)
>
> OK.
OTOH, my googling has shown that HCD may stand for both HC driver and HC
device... The host controller device sounds a bit tautological however...
[...]
> --
> cheers,
> -roger
MBR, Sergei
[toc] | [prev] | [next] | [standalone]
| From | Roger Quadros <rogerq@ti.com> |
|---|---|
| Date | 2016-06-09 09:40 +0200 |
| Message-ID | <rI2Jk-3h2-7@gated-at.bofh.it> |
| In reply to | #1417348 |
On 08/06/16 15:10, Sergei Shtylyov wrote: > On 6/8/2016 3:04 PM, Roger Quadros wrote: > >>>> The OTG core will use struct otg_hcd_ops to interface >>>> with the HCD controller. >>> >>> Host controller driver (HCD) controller? Maybe just HC? :-) >> >> OK. > > OTOH, my googling has shown that HCD may stand for both HC driver and HC device... The host controller device sounds a bit tautological however... Yeah I always meant it to be Host Controller Device :). -- cheers, -roger
[toc] | [prev] | [next] | [standalone]
| From | Sergei Shtylyov <sergei.shtylyov@cogentembedded.com> |
|---|---|
| Date | 2016-06-09 12:20 +0200 |
| Message-ID | <rI5e9-4ZN-11@gated-at.bofh.it> |
| In reply to | #1418128 |
Hello.
On 6/9/2016 10:31 AM, Roger Quadros wrote:
>>>>> The OTG core will use struct otg_hcd_ops to interface
>>>>> with the HCD controller.
>>>>
>>>> Host controller driver (HCD) controller? Maybe just HC? :-)
>>>
>>> OK.
>>
>> OTOH, my googling has shown that HCD may stand for both HC driver and HC device... The host controller device sounds a bit tautological however...
>
> Yeah I always meant it to be Host Controller Device :).
The question here is more what was meant by the previous Linux USB
authors. :-)
> --
> cheers,
> -roger
MBR, Sergei
[toc] | [prev] | [next] | [standalone]
| From | Alan Stern <stern@rowland.harvard.edu> |
|---|---|
| Date | 2016-06-09 16:20 +0200 |
| Message-ID | <rI8Yq-7uB-11@gated-at.bofh.it> |
| In reply to | #1418224 |
On Thu, 9 Jun 2016, Sergei Shtylyov wrote: > Hello. > > On 6/9/2016 10:31 AM, Roger Quadros wrote: > > >>>>> The OTG core will use struct otg_hcd_ops to interface > >>>>> with the HCD controller. > >>>> > >>>> Host controller driver (HCD) controller? Maybe just HC? :-) > >>> > >>> OK. > >> > >> OTOH, my googling has shown that HCD may stand for both HC driver and HC device... The host controller device sounds a bit tautological however... > > > > Yeah I always meant it to be Host Controller Device :). > > The question here is more what was meant by the previous Linux USB > authors. :-) I have always used "HCD" to mean Host Controller Driver, and I believe that's what other people have done too. If I want to refer to a Host Controller Device, I would write either "HC" or "host controller". Admittedly, this means that struct usb_hcd has a slightly illogical name. Alan Stern
[toc] | [prev] | [next] | [standalone]
| From | Roger Quadros <rogerq@ti.com> |
|---|---|
| Date | 2016-06-10 09:10 +0200 |
| Message-ID | <rIoJP-1vU-3@gated-at.bofh.it> |
| In reply to | #1418370 |
On 09/06/16 17:11, Alan Stern wrote: > On Thu, 9 Jun 2016, Sergei Shtylyov wrote: > >> Hello. >> >> On 6/9/2016 10:31 AM, Roger Quadros wrote: >> >>>>>>> The OTG core will use struct otg_hcd_ops to interface >>>>>>> with the HCD controller. >>>>>> >>>>>> Host controller driver (HCD) controller? Maybe just HC? :-) >>>>> >>>>> OK. >>>> >>>> OTOH, my googling has shown that HCD may stand for both HC driver and HC device... The host controller device sounds a bit tautological however... >>> >>> Yeah I always meant it to be Host Controller Device :). >> >> The question here is more what was meant by the previous Linux USB >> authors. :-) > > I have always used "HCD" to mean Host Controller Driver, and I believe > that's what other people have done too. > > If I want to refer to a Host Controller Device, I would write either > "HC" or "host controller". > > Admittedly, this means that struct usb_hcd has a slightly illogical > name. > OK, I'll re-spin this series so that HCD means HC driver. cheers, -roger
[toc] | [prev] | [next] | [standalone]
| From | Roger Quadros <rogerq@ti.com> |
|---|---|
| Date | 2016-06-09 10:00 +0200 |
| Subject | [PATCH v10 03/14] usb: hcd.h: Add OTG to HCD interface |
| Message-ID | <rI32F-3oT-1@gated-at.bofh.it> |
| In reply to | #1417109 |
The OTG core will use struct otg_hcd_ops to interface
with the HCD (Host Controller Device).
The main purpose of this interface is to avoid directly
calling HCD APIs from the OTG core as they
wouldn't be defined in the built-in symbol table if
CONFIG_USB is m.
Signed-off-by: Roger Quadros <rogerq@ti.com>
Acked-by: Peter Chen <peter.chen@nxp.com>
---
v10:
- clarify HCD abbreviation in commit message.
- Fix comment
- remove unnecessary "of" in comment
- use URB instead of urb.
include/linux/usb/hcd.h | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)
diff --git a/include/linux/usb/hcd.h b/include/linux/usb/hcd.h
index 66fc137..7729c1f 100644
--- a/include/linux/usb/hcd.h
+++ b/include/linux/usb/hcd.h
@@ -400,6 +400,30 @@ struct hc_driver {
};
+/**
+ * struct otg_hcd_ops - Interface between OTG core and HCD
+ *
+ * Provided by the HCD core to allow the OTG core to interface with the HCD
+ *
+ * @add: function to add the HCD
+ * @remove: function to remove the HCD
+ * @usb_bus_start_enum: function to immediately start bus enumeration
+ * @usb_control_msg: function to build and send a control URB
+ * @usb_hub_find_child: function to get pointer to the child device
+ */
+struct otg_hcd_ops {
+ int (*add)(struct usb_hcd *hcd,
+ unsigned int irqnum, unsigned long irqflags);
+ void (*remove)(struct usb_hcd *hcd);
+ int (*usb_bus_start_enum)(struct usb_bus *bus, unsigned int port_num);
+ int (*usb_control_msg)(struct usb_device *dev, unsigned int pipe,
+ __u8 request, __u8 requesttype, __u16 value,
+ __u16 index, void *data, __u16 size,
+ int timeout);
+ struct usb_device * (*usb_hub_find_child)(struct usb_device *hdev,
+ int port1);
+};
+
static inline int hcd_giveback_urb_in_bh(struct usb_hcd *hcd)
{
return hcd->driver->flags & HCD_BH;
--
2.7.4
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web