[PATCH v3 5/8] powerpc/xive: add the HW IRQ number under xive_irq_data
Benjamin Herrenschmidt
benh at kernel.crashing.org
Fri Sep 1 15:34:00 AEST 2017
On Wed, 2017-08-30 at 21:46 +0200, Cédric Le Goater wrote:
> It will be required later by the H_INT_ESB hcall.
>
> Signed-off-by: Cédric Le Goater <clg at kaod.org>
Acked-by: Benjamin Herrenschmidt <benh at kernel.crashing.org>
A little but unfortunate as the number is available in the
irq_data but that would mean changing more of our internal
interfaces to get to it ... so ack for now.
> ---
> arch/powerpc/include/asm/xive.h | 1 +
> arch/powerpc/sysdev/xive/native.c | 2 ++
> arch/powerpc/sysdev/xive/spapr.c | 2 ++
> 3 files changed, 5 insertions(+)
>
> 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 {
> void __iomem *trig_mmio;
> u32 esb_shift;
> int src_chip;
> + u32 hw_irq;
>
> /* Setup/used by frontend */
> int target;
> diff --git a/arch/powerpc/sysdev/xive/native.c b/arch/powerpc/sysdev/xive/native.c
> index ef92a83090e1..f8bcff15b0f9 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)
> return -ENOMEM;
> }
>
> + data->hw_irq = hw_irq;
> +
> if (!data->trig_page)
> return 0;
> 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)
> return -ENOMEM;
> }
>
> + data->hw_irq = hw_irq;
> +
> /* Full function page supports trigger */
> if (flags & XIVE_SRC_TRIGGER) {
> data->trig_mmio = data->eoi_mmio;
More information about the Linuxppc-dev
mailing list