Re: [PATCH] usb: dwc3: gadget: call gadget driver's ->suspend/->resume

From: David Cohen
Date: Fri Apr 24 2015 - 16:54:23 EST


On Fri, Apr 24, 2015 at 02:48:27PM -0500, Felipe Balbi wrote:
> Hi,

Hi Felipe,

>
> On Thu, Apr 23, 2015 at 03:37:48PM -0700, David Cohen wrote:
> > On Fri, Apr 17, 2015 at 02:43:27PM -0500, Felipe Balbi wrote:
> > > On Fri, Apr 17, 2015 at 11:41:56AM -0700, David Cohen wrote:
> > > > From: Felipe Balbi <balbi@xxxxxx>
> > >
> > > missing the required:
> > >
> > > [ Upstream commit bc5ba2e0b829c9397f96df1191c7d2319ebc36d9 ]
> > >
> > > >
> > > > When going into bus suspend/resume we _must_
> > > > call gadget driver's ->suspend/->resume callbacks
> > > > accordingly. This patch implements that very feature
> > > > which has been missing forever.
> > > >
> > > > Cc: <stable@xxxxxxxxxxxxxxx> # 3.14
> > > > Signed-off-by: Felipe Balbi <balbi@xxxxxx>
> > > > Signed-off-by: David Cohen <david.a.cohen@xxxxxxxxxxxxxxx>
> > > > ---
> > > >
> > > > Hi,
> > > >
> > > > This patch was introduced on v3.15.
> > > > But the issue it fixes already existed on v3.14 and v3.14 is a long term
> > > > support version.
> > >
> > > Can you show me a log of this breaking anywhere ? Why do you consider
> > > this a bug fix ? What sort of drawbacks did you notice ?
> >
> > We're seeing BC1.2 compliance test failure. I borrowed this info from
> > the bug report :)
> >
> > 1. BC1.2 compliance testing - SDP2.0
> > -----------------------------------------------
> > 1. On Connect to active Host (Expected result: 100mA to 500mA):
> > Actual result 100mA to 500mA
> >
> > 2. On Host Suspend (ER: Fall back to 0mA):
> > not falling back to 0mA, remains at 500mA
> >
> > 3. On Connect to Suspended Host (ER: 100mA to 0mA):
> > cable-props shown as 100mA, which means drawing a current of 100mA from
> > Suspended Host
> >
> > 4. On making Host active (ER: 500mA):
> > 500mA
>
> But we don't support Battery Charging with dwc3 as of now :-) In fact,
> just note that none of the BC registers are even defined in the current
> driver anywhere. Seems like you should cherry-pick these to your vendor
> tree, but v3.14 vanilla, because it doesn't support BC1.2, can't be
> claimed to be at fault, right ?

We could call it a missing feature that could lead to a potential bug :)
By your own comment, he "must" was stressed out:
'''
When going into bus suspend/resume we _must_
call gadget driver's ->suspend/->resume callbacks
accordingly. This patch implements that very feature
which has been missing forever.
'''

Since v3.14 is a LTS kernel and the changes are safe, it's worth to
consider.

>
> I'll leave the final decision to Greg and I don't really oppose having
> both patches on v3.14-stable, but this is not a bug fix in my view.

Thanks. I appreciate your feedback.

BR, David

PS: FWIW implementing features or fixing bugs aren't much different tasks:
https://geekwhisperin.files.wordpress.com/2009/09/bug-vs-feature.jpg
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/