struct device *dev;
const char *label;
unsigned int flags;
+ struct module *owner;
enum usb_otg_state state;
enum usb_phy_events last_event;
struct usb_phy_io_ops *io_ops;
void __iomem *io_priv;
+ struct list_head list;
+ const char *dev_id_host;
+ const char *dev_id_peripheral;
+
/* for notification of usb_phy_events */
struct atomic_notifier_head notifier;
/* for usb host and peripheral controller drivers */
#ifdef CONFIG_USB_OTG_UTILS
extern struct usb_phy *usb_get_transceiver(void);
+extern struct usb_phy *usb_find_transceiver(struct device *dev);
extern void usb_put_transceiver(struct usb_phy *);
extern const char *otg_state_string(enum usb_otg_state state);
+extern void usb_add_transceiver(struct usb_phy *phy);
+extern void usb_remove_transceiver(struct usb_phy *phy);
#else
static inline struct usb_phy *usb_get_transceiver(void)
{
return NULL;
}
+static inline struct usb_phy *usb_find_transceiver(struct device *dev)
+{
+ return NULL;
+}
+
static inline void usb_put_transceiver(struct usb_phy *x)
{
}
{
return NULL;
}
+
+static inline void usb_add_transceiver(struct usb_phy *phy)
+{
+}
+
+static inline void usb_remove_transceiver(struct usb_phy *phy)
+{
+}
#endif
/* Context: can sleep */