diff options
author | Cédric Le Goater <clg@kaod.org> | 2017-08-30 15:46:14 -0400 |
---|---|---|
committer | Michael Ellerman <mpe@ellerman.id.au> | 2017-09-02 07:02:37 -0400 |
commit | c58a14a9ccf0a79bbdafc106a95c080340c00f49 (patch) | |
tree | ea7a0586ba84bdaea07fee2b2a3e62637f16d9c7 | |
parent | 99f122573e76376088019d7c3a44744e62db9415 (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.h | 1 | ||||
-rw-r--r-- | arch/powerpc/sysdev/xive/native.c | 2 | ||||
-rw-r--r-- | arch/powerpc/sysdev/xive/spapr.c | 2 |
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; |