Message ID | 20220825182152.v2.2.If09027f73daa6e1ed95f5eab02326b543c67132e@changeid (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | [v2,1/2] clk: qcom: gcc-sc7180: Keep the USB GDSC always on | expand |
On Thu, Aug 25, 2022 at 06:21:59PM -0700, Matthias Kaehlcke wrote: > When the GDSC is disabled during system suspend USB is broken on > sc7280 when the system resumes. Mark the GDSC as always on to > make sure USB still works after system suspend. > > Signed-off-by: Matthias Kaehlcke <mka@chromium.org> > --- > > Changes in v2: > - set the flags of the GDSC not of the GDSC power domain > - updated commit message > > drivers/clk/qcom/gcc-sc7280.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/clk/qcom/gcc-sc7280.c b/drivers/clk/qcom/gcc-sc7280.c > index 7ff64d4d5920..adef68d2cb0b 100644 > --- a/drivers/clk/qcom/gcc-sc7280.c > +++ b/drivers/clk/qcom/gcc-sc7280.c Perhaps you can add a comment here about why this is needed similar to what I did for sc8280xp: https://lore.kernel.org/all/20220805121250.10347-3-johan+linaro@kernel.org/ > @@ -3127,7 +3127,7 @@ static struct gdsc gcc_usb30_prim_gdsc = { > .name = "gcc_usb30_prim_gdsc", > }, > .pwrsts = PWRSTS_OFF_ON, > - .flags = VOTABLE, > + .flags = VOTABLE | ALWAYS_ON, > }; > > static struct gdsc gcc_usb30_sec_gdsc = { Look good otherwise. For both patches: Reviewed-by: Johan Hovold <johan+linaro@kernel.org> Johan
On Fri, Aug 26, 2022 at 09:16:38AM +0200, Johan Hovold wrote: > On Thu, Aug 25, 2022 at 06:21:59PM -0700, Matthias Kaehlcke wrote: > > When the GDSC is disabled during system suspend USB is broken on > > sc7280 when the system resumes. Mark the GDSC as always on to > > make sure USB still works after system suspend. > > > > Signed-off-by: Matthias Kaehlcke <mka@chromium.org> > > --- > > > > Changes in v2: > > - set the flags of the GDSC not of the GDSC power domain > > - updated commit message > > > > drivers/clk/qcom/gcc-sc7280.c | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > diff --git a/drivers/clk/qcom/gcc-sc7280.c b/drivers/clk/qcom/gcc-sc7280.c > > index 7ff64d4d5920..adef68d2cb0b 100644 > > --- a/drivers/clk/qcom/gcc-sc7280.c > > +++ b/drivers/clk/qcom/gcc-sc7280.c > > Perhaps you can add a comment here about why this is needed similar to > what I did for sc8280xp: > > https://lore.kernel.org/all/20220805121250.10347-3-johan+linaro@kernel.org/ From Bjorn's comment on the sc7180 patch it seems it's not an dwc3 implementation issue. IIUC the GDSCs should have a retention state that would be used during suspend. > > @@ -3127,7 +3127,7 @@ static struct gdsc gcc_usb30_prim_gdsc = { > > .name = "gcc_usb30_prim_gdsc", > > }, > > .pwrsts = PWRSTS_OFF_ON, > > - .flags = VOTABLE, > > + .flags = VOTABLE | ALWAYS_ON, > > }; > > > > static struct gdsc gcc_usb30_sec_gdsc = { > > Look good otherwise. For both patches: > > Reviewed-by: Johan Hovold <johan+linaro@kernel.org> Thanks!
diff --git a/drivers/clk/qcom/gcc-sc7280.c b/drivers/clk/qcom/gcc-sc7280.c index 7ff64d4d5920..adef68d2cb0b 100644 --- a/drivers/clk/qcom/gcc-sc7280.c +++ b/drivers/clk/qcom/gcc-sc7280.c @@ -3127,7 +3127,7 @@ static struct gdsc gcc_usb30_prim_gdsc = { .name = "gcc_usb30_prim_gdsc", }, .pwrsts = PWRSTS_OFF_ON, - .flags = VOTABLE, + .flags = VOTABLE | ALWAYS_ON, }; static struct gdsc gcc_usb30_sec_gdsc = {
When the GDSC is disabled during system suspend USB is broken on sc7280 when the system resumes. Mark the GDSC as always on to make sure USB still works after system suspend. Signed-off-by: Matthias Kaehlcke <mka@chromium.org> --- Changes in v2: - set the flags of the GDSC not of the GDSC power domain - updated commit message drivers/clk/qcom/gcc-sc7280.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)