From 56cebf1ca151b8e0168149573b209ee0314dce97 Mon Sep 17 00:00:00 2001 From: Eunok Jo Date: Fri, 11 Nov 2016 18:23:34 +0900 Subject: [PATCH] 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 --- drivers/dma/pl330.c | 9 +++++++++ 1 file changed, 9 insertions(+) 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 { -- 2.20.1