* Bin Liu <b-...@ti.com> [160513 13:26]:
> On Fri, May 13, 2016 at 03:21:55PM -0500, Bin Liu wrote:
> > On Fri, May 13, 2016 at 01:09:02PM -0700, Tony Lindgren wrote:
> > > * Bin Liu <b-...@ti.com> [160513 12:58]:
> > > > On Wed, May 11, 2016 at 06:33:04PM -0700, Tony Lindgren wrote:
> > > > > --- a/drivers/usb/musb/omap2430.c
> > > > > +++ b/drivers/usb/musb/omap2430.c
> > > > > @@ -49,6 +49,9 @@ struct omap2430_glue {
> > > > >       enum musb_vbus_id_status status;
> > > > >       struct work_struct      omap_musb_mailbox_work;
> > > > >       struct device           *control_otghs;
> > > > > +     bool                    cable_connected;
> > > > > +     bool                    enabled;
> > > > > +     bool                    powered;
> > > > 
> > > > This variable is only used within omap2430_set_power(), so it can be
> > > > local within that function to save a few bytes.
> > > 
> > > Well it needs to be static as we keep things powered only if
> > > glue is enabled and cable is connected.
> > 
> > I think it does not have to static in omap2430_glue, how about in the
> 
> I meant in omap2430_set_power().
> 
> > very beginning of omap2430_set_power(),
> > 
> >     bool powered = glue->enabled && glue->cable_connected;
> > 
> > before changing glue->enabled and glue->cable_connected, then this
> > local powered variable is equivalent to glue->powered.

Hmm but pm_runtime_get_sync() can fail too. I was seeing -EACCES
there while chasing various PM runtime issues. That can happen for
example if the parent and child PM runtime use counts get out of sync
like happened in the -EPROBE_DEFER case. Now we at least know if
something goes wrong with the "could not enable" error.

Regards,

Tony
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to