diff options
author | Cédric Le Goater <clg@kaod.org> | 2019-08-14 17:47:53 +0200 |
---|---|---|
committer | Michael Ellerman <mpe@ellerman.id.au> | 2019-08-19 05:20:24 +0200 |
commit | b4868ff55d082bc66b0c287a41e4888f6d3e5f87 (patch) | |
tree | 1433205cf4e23a07497bebeacac7ec7b599822ca /arch/powerpc/sysdev/xive/xive-internal.h | |
parent | powerpc/xmon: Check for HV mode when dumping XIVE info from OPAL (diff) | |
download | linux-b4868ff55d082bc66b0c287a41e4888f6d3e5f87.tar.xz linux-b4868ff55d082bc66b0c287a41e4888f6d3e5f87.zip |
powerpc/xive: Fix dump of XIVE interrupt under pseries
The xmon 'dxi' command calls OPAL to query the XIVE configuration of a
interrupt. This can only be done on baremetal (PowerNV) and it will
crash a pseries machine.
Introduce a new XIVE get_irq_config() operation which implements a
different query depending on the platform, PowerNV or pseries, and
modify xmon to use a top level wrapper.
Signed-off-by: Cédric Le Goater <clg@kaod.org>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/20190814154754.23682-3-clg@kaod.org
Diffstat (limited to 'arch/powerpc/sysdev/xive/xive-internal.h')
-rw-r--r-- | arch/powerpc/sysdev/xive/xive-internal.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/powerpc/sysdev/xive/xive-internal.h b/arch/powerpc/sysdev/xive/xive-internal.h index 211725dbf364..59cd366e7933 100644 --- a/arch/powerpc/sysdev/xive/xive-internal.h +++ b/arch/powerpc/sysdev/xive/xive-internal.h @@ -33,6 +33,8 @@ struct xive_cpu { struct xive_ops { int (*populate_irq_data)(u32 hw_irq, struct xive_irq_data *data); int (*configure_irq)(u32 hw_irq, u32 target, u8 prio, u32 sw_irq); + int (*get_irq_config)(u32 hw_irq, u32 *target, u8 *prio, + u32 *sw_irq); int (*setup_queue)(unsigned int cpu, struct xive_cpu *xc, u8 prio); void (*cleanup_queue)(unsigned int cpu, struct xive_cpu *xc, u8 prio); void (*setup_cpu)(unsigned int cpu, struct xive_cpu *xc); |