From: Eunok Jo Date: Fri, 11 Nov 2016 09:23:34 +0000 (+0900) Subject: Set CPU Affinity for handling interrupt X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=56cebf1ca151b8e0168149573b209ee0314dce97;p=GitHub%2FLineageOS%2Fandroid_kernel_motorola_exynos9610.git Set CPU Affinity for handling interrupt When HMP for exynos series is enabled, cpu affinity for handling interrupt will be set only for little cores. Otherwise, all cores can catch interrupt and handle it. Change-Id: Id6a37fd0e7e97ed240c94f47c91d096b5f5211cd Signed-off-by: Eunok Jo --- diff --git a/drivers/dma/pl330.c b/drivers/dma/pl330.c index 27708c91c5a6..ed3a7d169886 100644 --- a/drivers/dma/pl330.c +++ b/drivers/dma/pl330.c @@ -27,6 +27,7 @@ #include #include #include +#include #include "dmaengine.h" #ifdef CONFIG_EXYNOS_PD @@ -3100,7 +3101,11 @@ static int pl330_resume(struct device *dev) for (i = 0; i < AMBA_NR_IRQS; i++) { int irq = pl330->irqnum_having_multi[i]; if (irq) +#if defined(CONFIG_SCHED_HMP) + irq_set_affinity(irq, &hmp_slow_cpu_mask); +#else irq_set_affinity(irq, cpu_all_mask); +#endif else break; } @@ -3182,7 +3187,11 @@ pl330_probe(struct amba_device *adev, const struct amba_id *id) return ret; if(pl330->multi_irq) { +#if defined(CONFIG_SCHED_HMP) + irq_set_affinity(irq, &hmp_slow_cpu_mask); +#else irq_set_affinity(irq, cpu_all_mask); +#endif pl330->irqnum_having_multi[count_irq++] = irq; } } else {