/* SPDX-License-Identifier: GPL-2.0 */ /* USB OTG (On The Go) defines */ /* * * These APIs may be used between USB controllers. USB device drivers * (for either host or peripheral roles) don't use these calls; they * continue to use just usb_device and usb_gadget.
*/
/* bind/unbind the host controller */ int (*set_host)(struct usb_otg *otg, struct usb_bus *host);
/* bind/unbind the peripheral controller */ int (*set_peripheral)(struct usb_otg *otg, struct usb_gadget *gadget);
/* effective for A-peripheral, ignored for B devices */ int (*set_vbus)(struct usb_otg *otg, bool enabled);
/* for B devices only: start session with A-Host */ int (*start_srp)(struct usb_otg *otg);
/* start or continue HNP role switch */ int (*start_hnp)(struct usb_otg *otg);
};
/** * struct usb_otg_caps - describes the otg capabilities of the device * @otg_rev: The OTG revision number the device is compliant with, it's * in binary-coded decimal (i.e. 2.0 is 0200H). * @hnp_support: Indicates if the device supports HNP. * @srp_support: Indicates if the device supports SRP. * @adp_support: Indicates if the device supports ADP.
*/ struct usb_otg_caps {
u16 otg_rev; bool hnp_support; bool srp_support; bool adp_support;
};
/** * usb_get_dr_mode - Get dual role mode for given device * @dev: Pointer to the given device * * The function gets phy interface string from property 'dr_mode', * and returns the corresponding enum usb_dr_mode
*/ externenum usb_dr_mode usb_get_dr_mode(struct device *dev); externenum usb_dr_mode usb_get_role_switch_default_mode(struct device *dev);
#endif/* __LINUX_USB_OTG_H */
Messung V0.5
¤ Dauer der Verarbeitung: 0.1 Sekunden
(vorverarbeitet)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.