On Fri, Mar 08, 2013 at 01:30:52PM +0200, Felipe Balbi wrote: > this method will be used to enable or disable > the charge pump. > > Whenever we have DRD devices, we need to be > able to turn VBUS on or off whenever we want. > > Note that in the ideal case, this would be > controlled by the ID-pin Interrupt, but not > all devices have ID-pin properly routed since > manufacturers can choose to save that trace > if they're building a host-only product out > of a DRD IP. > > This is also useful during debugging where > we might not have the proper cable hanging > around. > > Signed-off-by: Felipe Balbi <balbi@xxxxxx> > --- > include/linux/usb/phy.h | 21 +++++++++++++++++++++ > 1 file changed, 21 insertions(+) > > diff --git a/include/linux/usb/phy.h b/include/linux/usb/phy.h > index b001dc3..b7c2217 100644 > --- a/include/linux/usb/phy.h > +++ b/include/linux/usb/phy.h > @@ -91,6 +91,9 @@ struct usb_phy { > int (*init)(struct usb_phy *x); > void (*shutdown)(struct usb_phy *x); > > + /* enable/disable VBUS */ > + int (*set_vbus)(struct usb_phy *x, int on); > + > /* effective for B devices, ignored for A-peripheral */ > int (*set_power)(struct usb_phy *x, > unsigned mA); > @@ -160,6 +163,24 @@ usb_phy_shutdown(struct usb_phy *x) > x->shutdown(x); > } > > +static inline int > +usb_phy_vbus_on(struct usb_phy *x) > +{ > + if (!x->set_vbus) > + return 0; > + > + return x->set_vbus(x, true); > +} > + > +static inline int > +usb_phy_vbus_off(struct usb_phy *x) > +{ > + if (!x->set_vbus) > + return 0; > + > + return x->set_vbus(x, false); > +} > + What's plan for otg's set_vbus? I suggest using phy's to instead of otg's. > /* for usb host and peripheral controller drivers */ > #if IS_ENABLED(CONFIG_USB_PHY) > extern struct usb_phy *usb_get_phy(enum usb_phy_type type); > -- > 1.8.1.rc1.5.g7e0651a > > -- > To unsubscribe from this list: send the line "unsubscribe linux-usb" in > the body of a message to majordomo@xxxxxxxxxxxxxxx > More majordomo info at http://vger.kernel.org/majordomo-info.html > -- Best Regards, Peter Chen -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html