[Intel-gfx] [PATCH v5 06/16] pwm: lpss: Use pwm_lpss_apply() when restoring state on resume
Hans de Goede
hdegoede at redhat.com
Sun Aug 2 20:51:34 UTC 2020
Hi,
On 7/29/20 10:12 AM, Andy Shevchenko wrote:
> On Tue, Jul 28, 2020 at 09:55:22PM +0200, Hans de Goede wrote:
>> On 7/28/20 8:57 PM, Andy Shevchenko wrote:
>>> On Fri, Jul 17, 2020 at 03:37:43PM +0200, Hans de Goede wrote:
>
> ...
>
>>> Maybe I'm too picky, but I would go even further and split apply to two versions
>>>
>>> static int pwm_lpss_apply_on_resume(struct pwm_chip *chip, struct pwm_device *pwm,
>>> const struct pwm_state *state)
>>>> {
>>>> struct pwm_lpss_chip *lpwm = to_lpwm(chip);
>>>> if (state->enabled)
>>>> return pwm_lpss_prepare_enable(lpwm, pwm, state, !pwm_is_enabled(pwm));
>>>> if (pwm_is_enabled(pwm)) {
>>>> pwm_lpss_write(pwm, pwm_lpss_read(pwm) & ~PWM_ENABLE);
>>>> return 0;
>>>> }
>>>
>>> and another one for !from_resume.
>>
>> It is a bit picky :) But that is actually not a bad idea, although I would write
>> it like this for more symmetry with the normal (not on_resume) apply version,
>> while at it I also renamed the function:
>>
>> /*
>> * This is a mirror of pwm_lpss_apply() without pm_runtime reference handling
>> * for restoring the PWM state on resume.
>> */
>> static int pwm_lpss_restore_state(struct pwm_chip *chip, struct pwm_device *pwm,
>> const struct pwm_state *state)
>> {
>> struct pwm_lpss_chip *lpwm = to_lpwm(chip);
>> int ret = 0;
>>
>> if (state->enabled)
>> ret = pwm_lpss_prepare_enable(lpwm, pwm, state, !pwm_is_enabled(pwm));
>> else if (pwm_is_enabled(pwm))
>> pwm_lpss_write(pwm, pwm_lpss_read(pwm) & ~PWM_ENABLE);
>>
>> return ret;
>> }
>>
>> Would that work for you?
>
> Yes.
Ok, I've added the suggested/discussed helper in my personal tree. Is it ok
if I add your Reviewed-by with that change in place. This is the last unreviewed
bit, so I would rather not respin the series just for this (there will be one
more respin when I rebase it on 5.9-rc1).
If you want to check out what the patch looks like now, the new version from
my personal tree is here:
https://github.com/jwrdegoede/linux-sunxi/commit/e4869830d88bb8cb8251718e0086ac189abc0f56
Regards,
Hans
More information about the Intel-gfx
mailing list