From fdb01338797f7ff2e1fde30bab7827084d81eaaf Mon Sep 17 00:00:00 2001 From: Neeraj Upadhyay Date: Thu, 11 Feb 2021 13:20:39 +0530 Subject: [PATCH] ANDROID: gic-v3: Update vendor hook to set affinity in GIC v3 GIC provides implementation specific registers, to configure affinity of a SPI. Update the existing affinity hook to allow vendors to configure those implementation defined settings. Bug: 180471389 Change-Id: I273035da65eaeb346c0d8b303a722f4d8d7918d6 Signed-off-by: Neeraj Upadhyay (cherry picked from commit f52f34358744754df82678e6a0726370fcdbec31) Signed-off-by: Palmer Dabbelt --- drivers/irqchip/irq-gic-v3.c | 2 +- include/trace/hooks/gic_v3.h | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/irqchip/irq-gic-v3.c b/drivers/irqchip/irq-gic-v3.c index 1833755b94a1..3abe6ed72dbf 100644 --- a/drivers/irqchip/irq-gic-v3.c +++ b/drivers/irqchip/irq-gic-v3.c @@ -1273,7 +1273,7 @@ static int gic_set_affinity(struct irq_data *d, const struct cpumask *mask_val, reg = gic_dist_base(d) + offset + (index * 8); val = gic_mpidr_to_affinity(cpu_logical_map(cpu)); - trace_android_vh_gic_v3_set_affinity(d, mask_val, &val); + trace_android_vh_gic_v3_set_affinity(d, mask_val, &val, force, gic_dist_base(d)); gic_write_irouter(val, reg); /* diff --git a/include/trace/hooks/gic_v3.h b/include/trace/hooks/gic_v3.h index f1ddbb19ea65..0f0f92c35607 100644 --- a/include/trace/hooks/gic_v3.h +++ b/include/trace/hooks/gic_v3.h @@ -16,8 +16,8 @@ DECLARE_HOOK(android_vh_gic_v3_affinity_init, TP_ARGS(irq, offset, affinity)); DECLARE_HOOK(android_vh_gic_v3_set_affinity, TP_PROTO(struct irq_data *d, const struct cpumask *mask_val, - u64 *affinity), - TP_ARGS(d, mask_val, affinity)); + u64 *affinity, bool force, void __iomem *base), + TP_ARGS(d, mask_val, affinity, force, base)); #endif /* _TRACE_HOOK_GIC_V3_H */ /* This part must be outside protection */