aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCédric Le Goater <clg@kaod.org>2017-08-30 15:46:14 -0400
committerMichael Ellerman <mpe@ellerman.id.au>2017-09-02 07:02:37 -0400
commitc58a14a9ccf0a79bbdafc106a95c080340c00f49 (patch)
treeea7a0586ba84bdaea07fee2b2a3e62637f16d9c7
parent99f122573e76376088019d7c3a44744e62db9415 (diff)
powerpc/xive: add the HW IRQ number under xive_irq_data
It will be required later by the H_INT_ESB hcall. Signed-off-by: Cédric Le Goater <clg@kaod.org> Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
-rw-r--r--arch/powerpc/include/asm/xive.h1
-rw-r--r--arch/powerpc/sysdev/xive/native.c2
-rw-r--r--arch/powerpc/sysdev/xive/spapr.c2
3 files changed, 5 insertions, 0 deletions
diff --git a/arch/powerpc/include/asm/xive.h b/arch/powerpc/include/asm/xive.h
index 473f133a8555..64ec9bbcf03e 100644
--- a/arch/powerpc/include/asm/xive.h
+++ b/arch/powerpc/include/asm/xive.h
@@ -45,6 +45,7 @@ struct xive_irq_data {
45 void __iomem *trig_mmio; 45 void __iomem *trig_mmio;
46 u32 esb_shift; 46 u32 esb_shift;
47 int src_chip; 47 int src_chip;
48 u32 hw_irq;
48 49
49 /* Setup/used by frontend */ 50 /* Setup/used by frontend */
50 int target; 51 int target;
diff --git a/arch/powerpc/sysdev/xive/native.c b/arch/powerpc/sysdev/xive/native.c
index ace3d7aedfb7..44f3a25ca630 100644
--- a/arch/powerpc/sysdev/xive/native.c
+++ b/arch/powerpc/sysdev/xive/native.c
@@ -82,6 +82,8 @@ int xive_native_populate_irq_data(u32 hw_irq, struct xive_irq_data *data)
82 return -ENOMEM; 82 return -ENOMEM;
83 } 83 }
84 84
85 data->hw_irq = hw_irq;
86
85 if (!data->trig_page) 87 if (!data->trig_page)
86 return 0; 88 return 0;
87 if (data->trig_page == data->eoi_page) { 89 if (data->trig_page == data->eoi_page) {
diff --git a/arch/powerpc/sysdev/xive/spapr.c b/arch/powerpc/sysdev/xive/spapr.c
index 797bb0636ab7..0fcae7504353 100644
--- a/arch/powerpc/sysdev/xive/spapr.c
+++ b/arch/powerpc/sysdev/xive/spapr.c
@@ -264,6 +264,8 @@ static int xive_spapr_populate_irq_data(u32 hw_irq, struct xive_irq_data *data)
264 return -ENOMEM; 264 return -ENOMEM;
265 } 265 }
266 266
267 data->hw_irq = hw_irq;
268
267 /* Full function page supports trigger */ 269 /* Full function page supports trigger */
268 if (flags & XIVE_SRC_TRIGGER) { 270 if (flags & XIVE_SRC_TRIGGER) {
269 data->trig_mmio = data->eoi_mmio; 271 data->trig_mmio = data->eoi_mmio;