[PATCH v3 4/8] usb: cdns3-ti: support reset-on-resume behavior
Sergei Shtylyov
sergei.shtylyov at gmail.com
Tue Feb 27 08:27:53 PST 2024
On 2/26/24 1:13 PM, Théo Lebrun wrote:
[...]
>>> Add match data support, with one boolean to indicate whether the
>>> hardware resets after a system-wide suspend. If hardware resets, we
>>> force execute ->runtime_resume() at system-wide resume to run the
>>> hardware init sequence.
>>>
>>> No compatible exploits this functionality, just yet.
>>>
>>> Signed-off-by: Théo Lebrun <theo.lebrun at bootlin.com>
>>> ---
>>> drivers/usb/cdns3/cdns3-ti.c | 27 +++++++++++++++++++++++++++
>>> 1 file changed, 27 insertions(+)
>>>
>>> diff --git a/drivers/usb/cdns3/cdns3-ti.c b/drivers/usb/cdns3/cdns3-ti.c
>>> index 4c8a557e6a6f..f76327566798 100644
>>> --- a/drivers/usb/cdns3/cdns3-ti.c
>>> +++ b/drivers/usb/cdns3/cdns3-ti.c
>> [...]
>>> @@ -220,8 +226,29 @@ static int cdns_ti_runtime_resume(struct device *dev)
>>> return 0;
>>> }
>>>
>>> +static int cdns_ti_suspend(struct device *dev)
>>> +{
>>> + struct cdns_ti *data = dev_get_drvdata(dev);
>>> +
>>> + if (data->match_data && data->match_data->reset_on_resume)
>>> + return pm_runtime_force_suspend(dev);
>>> + else
>>
>> Pointless *else* after *return*...
>
> Indeed! I used this form explicitely as it reads nicely: "if reset on
> reset, force suspend, else do nothing". It also prevents the error of
s/reset/resume/ here? :-)
> adding behavior below the if-statement without seeing that it won't
> apply to both cases.
You were going to add stuff after the final *return*? :-)
> If you do believe it would make the code better I'll happily change it
> for the next revision, I do not mind.
Up to you!
This is a thing people usually complain about when reviewing
patches. I even thought checkpatch.pl would complain as well, but it
didn't... :-)
> Thanks for the review Sergey!
>
> --
> Théo Lebrun, Bootlin
> Embedded Linux and Kernel engineering
> https://bootlin.com
MBR, Swrgey
More information about the linux-arm-kernel
mailing list