Messages in this thread | | | Subject | Re: [PATCH v10 08/14] usb: otg: add OTG/dual-role core | From | Roger Quadros <> | Date | Fri, 10 Jun 2016 13:19:28 +0300 |
| |
Hi,
On 09/06/16 15:34, Sergei Shtylyov wrote: > On 6/9/2016 10:53 AM, Roger Quadros wrote: > >> It provides APIs for the following tasks >> >> - Registering an OTG/dual-role capable controller >> - Registering Host and Gadget controllers to OTG core >> - Providing inputs to and kicking the OTG state machine >> >> Provide a dual-role device (DRD) state machine. >> DRD mode is a reduced functionality OTG mode. In this mode >> we don't support SRP, HNP and dynamic role-swap. >> >> In DRD operation, the controller mode (Host or Peripheral) >> is decided based on the ID pin status. Once a cable plug (Type-A >> or Type-B) is attached the controller selects the state >> and doesn't change till the cable in unplugged and a different >> cable type is inserted. >> >> As we don't need most of the complex OTG states and OTG timers >> we implement a lean DRD state machine in usb-otg.c. >> The DRD state machine is only interested in 2 hardware inputs >> 'id' and 'b_sess_vld'. >> >> Signed-off-by: Roger Quadros <rogerq@ti.com> >
<snip>
> [...] >> +/** >> + * usb_otg_register_gadget - Register the gadget controller to OTG core >> + * @gadget: gadget controller > > We call that USB device controller (UDC). I'm not sure what you meant here... > And what about the 2nd arg, 'ops'?
There are 2 data structures representing the Device controller.
struct usb_gadget - represents a usb slave device struct usb_udc -struct usb_udc - describes one usb device controller
usb_udc is for private use only. usb_otg_register_gadget() takes struct usb_gadget as argument.
Do you want me to refer to struct usb_gadget as UDC?
What is wrong with calling it gadget controller?
-- cheers, -roger
| |