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 <[email protected]>
> ---
> 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 <[email protected]>, 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 [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html