![]() ![]() Host and gadget controllers that are a part of OTG/dual-role port must The host/gadget controllers are started/stopped according to the FSM. Once all resources areĪvailable it instantiates the Finite State Machine (FSM). 'struct otg_fsm_ops *fsm_ops' in the 'struct usb_otg_config'.Īfter registration, the OTG core waits for host, gadget controllerĪnd the gadget function driver to be registered. ![]() The low level OTG controller driver ops are povided via Special needs to be provided if only dual-role functionality is desired. The dual-role state machine is built-into the OTG core so nothing Void (*otg_work)(struct work_struct *work) * optional custom otg state machine work function * struct usb_otg_config - otg controller configuration Int usb_otg_unregister(struct device *dev) Struct usb_otg *usb_otg_register(struct device *dev, The OTG controller driver can provide the OTG capabilities and theįinite State Machine work function via 'struct usb_otg_config'Īt the time of registration i.e. Registration of OTG controller device and OTG capable host and gadget The OTG/dual-role core consists of a set of APIs that allow This couldn't be done till now but can be done from the OTG core. One has to be stopped for the other to run. Host and gadget controllers might be sharing resources and can'tīe always running. to stop and start themįrom a central location. Host and gadget controllers in dual-role mode. ![]() There needs to be a way to co-ordinate the operation of the Host and gadget functionality are no longer closely knit like olderĬores. Newer OTG cores support standard host interface (e.g. We can benefit from code-reuseĪnd simplicity by adding the OTG/dual-role core driver. Implemented in the Linux USB stack and every USB controller driver isĭoing their own thing for OTG/dual-role. Series is based on v4.6-rc1 and depends on Ĭurrently there is no central location where OTG/dual-role functionality is ![]() This series centralizes OTG/Dual-role functionality in the kernel.Īs of now I've got Dual-role functionality working pretty reliably onĭWC3 controller and platform related patches will be sent separately. ` (11 more replies) 0 siblings, 12 replies 100+ messages in threadįrom: Roger Quadros 14:05 UTC ( / raw)Ĭc: dan.j.williams, jun.li, mathias.nyman, tony, Joao.Pinto,Ībrestic, r.baldyga, linux-usb, linux-kernel, linux-omap, 14:05 ` usb: hcd: Initialize hcd->flags to 0 Roger Quadros USB OTG/dual-role framework LKML Archive on help / color / mirror / Atom feed * USB OTG/dual-role framework 14:05 Roger Quadros ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. Archives
January 2023
Categories |