Jonathan Kliegman wrote:
> 
> The interupt combiner registers need to be saved on suspend resume
> or its interrupts (trackpad and keyboard most noticeably) won't work
> after resume.
> 
> Signed-off-by: Jonathan Kliegman <kli...@chromium.org>
> ---
>  arch/arm/mach-exynos/common.c |   74
> +++++++++++++++++++++++++++++++++++++----
>  1 files changed, 67 insertions(+), 7 deletions(-)

[...]

> +#ifdef CONFIG_PM

#ifdef CONFIG_CPU_PM?

> +static void combiner_save(void)
> +{
> +     int i;
> +
> +     for (i = 0; i < rt_max_combiner_nr; i++) {
> +             if (combiner_data[i].irq_mask &
> +                 __raw_readl(combiner_data[i].base +
COMBINER_ENABLE_SET))
> {
> +                     combiner_data[i].saved_on = true;
> +             } else {
> +                     combiner_data[i].saved_on = false;
> +             }
> +     }
> +}
> +
> +static void combiner_restore(void)
> +{
> +     int i;
> +
> +     for (i = 0; i < rt_max_combiner_nr; i++) {
> +             if (!combiner_data[i].saved_on)
> +                     continue;
> +
> +             __raw_writel(combiner_data[i].irq_mask,
> +                          combiner_data[i].base + COMBINER_ENABLE_SET);
> +     }
> +}
> +
> +

No need double empty lines :)

> +static int combiner_notifier(struct notifier_block *self, unsigned long
> cmd,
> +                          void *v)
> +{
> +     switch (cmd) {
> +     case CPU_PM_ENTER:

Should be CPU_CLUSTER_PM_ENTER?

> +             combiner_save();
> +             break;
> +     case CPU_PM_EXIT:

CPU_CLUSTER_PM_EXIT?

Thanks.

Best regards,
Kgene.
--
Kukjin Kim <kgene....@samsung.com>, Senior Engineer,
SW Solution Development Team, Samsung Electronics Co., Ltd.

--
To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to