[PATCH 05/14] ARM: OMAP2: Add functions to save and restore powerdomain context

Tony Lindgren tony at atomide.com
Thu Apr 12 07:37:17 PDT 2018


* Keerthy <j-keerthy at ti.com> [180412 03:56]:
> From: Russ Dill <Russ.Dill at ti.com>
> --- a/arch/arm/mach-omap2/powerdomain.c
> +++ b/arch/arm/mach-omap2/powerdomain.c
> @@ -1199,3 +1199,63 @@ bool pwrdm_can_ever_lose_context(struct powerdomain *pwrdm)
>  
>  	return 0;
>  }
> +
> +/**
> + * pwrdm_save_context - save powerdomain registers
> + *
> + * Register state is going to be lost due to a suspend or hibernate
> + * event. Save the powerdomain registers.
> + */
> +static int pwrdm_save_context(struct powerdomain *pwrdm, void *unused)
> +{
> +	if (arch_pwrdm && arch_pwrdm->pwrdm_save_context)
> +		arch_pwrdm->pwrdm_save_context(pwrdm);
> +	return 0;
> +}
> +
> +/**
> + * pwrdm_save_context - restore powerdomain registers
> + *
> + * Restore powerdomain control registers after a suspend or resume
> + * event.
> + */
> +static int pwrdm_restore_context(struct powerdomain *pwrdm, void *unused)
> +{
> +	if (arch_pwrdm && arch_pwrdm->pwrdm_restore_context)
> +		arch_pwrdm->pwrdm_restore_context(pwrdm);
> +	return 0;
> +}

Here too we should use notifiers with the idea being that it allows making
powerdomains into a regular device driver eventually.

Regards,

Tony



More information about the linux-arm-kernel mailing list