Commit d739d2ca authored by Rashmica Gupta's avatar Rashmica Gupta Committed by Michael Ellerman

powerpc/pseries: Remove MPIC from pseries kexec

MPIC was only used by Power3 which is now unsupported, so remove MPIC
code. XICS is now the only supported interrupt controller for
pSeries so do some cleanups too.
Signed-off-by: default avatarRashmica Gupta <rashmicy@gmail.com>
Signed-off-by: default avatarMichael Ellerman <mpe@ellerman.id.au>
parent 86425bed
...@@ -14,14 +14,13 @@ ...@@ -14,14 +14,13 @@
#include <asm/page.h> #include <asm/page.h>
#include <asm/firmware.h> #include <asm/firmware.h>
#include <asm/kexec.h> #include <asm/kexec.h>
#include <asm/mpic.h>
#include <asm/xics.h> #include <asm/xics.h>
#include <asm/smp.h> #include <asm/smp.h>
#include <asm/plpar_wrappers.h> #include <asm/plpar_wrappers.h>
#include "pseries.h" #include "pseries.h"
static void pseries_kexec_cpu_down(int crash_shutdown, int secondary) void pseries_kexec_cpu_down(int crash_shutdown, int secondary)
{ {
/* Don't risk a hypervisor call if we're crashing */ /* Don't risk a hypervisor call if we're crashing */
if (firmware_has_feature(FW_FEATURE_SPLPAR) && !crash_shutdown) { if (firmware_has_feature(FW_FEATURE_SPLPAR) && !crash_shutdown) {
...@@ -51,26 +50,6 @@ static void pseries_kexec_cpu_down(int crash_shutdown, int secondary) ...@@ -51,26 +50,6 @@ static void pseries_kexec_cpu_down(int crash_shutdown, int secondary)
"(hw %d) failed with %d\n", cpu, hwcpu, ret); "(hw %d) failed with %d\n", cpu, hwcpu, ret);
} }
} }
}
static void pseries_kexec_cpu_down_mpic(int crash_shutdown, int secondary)
{
pseries_kexec_cpu_down(crash_shutdown, secondary);
mpic_teardown_this_cpu(secondary);
}
void __init setup_kexec_cpu_down_mpic(void)
{
ppc_md.kexec_cpu_down = pseries_kexec_cpu_down_mpic;
}
static void pseries_kexec_cpu_down_xics(int crash_shutdown, int secondary)
{
pseries_kexec_cpu_down(crash_shutdown, secondary);
xics_kexec_teardown_cpu(secondary); xics_kexec_teardown_cpu(secondary);
} }
void __init setup_kexec_cpu_down_xics(void)
{
ppc_md.kexec_cpu_down = pseries_kexec_cpu_down_xics;
}
...@@ -36,13 +36,7 @@ extern void smp_init_pseries(void); ...@@ -36,13 +36,7 @@ extern void smp_init_pseries(void);
static inline void smp_init_pseries(void) { }; static inline void smp_init_pseries(void) { };
#endif #endif
#ifdef CONFIG_KEXEC extern void pseries_kexec_cpu_down(int crash_shutdown, int secondary);
extern void setup_kexec_cpu_down_xics(void);
extern void setup_kexec_cpu_down_mpic(void);
#else
static inline void setup_kexec_cpu_down_xics(void) { }
static inline void setup_kexec_cpu_down_mpic(void) { }
#endif
extern void pSeries_final_fixup(void); extern void pSeries_final_fixup(void);
......
...@@ -436,7 +436,6 @@ static void __init pSeries_setup_arch(void) ...@@ -436,7 +436,6 @@ static void __init pSeries_setup_arch(void)
set_arch_panic_timeout(10, ARCH_PANIC_TIMEOUT); set_arch_panic_timeout(10, ARCH_PANIC_TIMEOUT);
/* Discover PIC type and setup ppc_md accordingly */ /* Discover PIC type and setup ppc_md accordingly */
setup_kexec_cpu_down_xics();
smp_init_pseries(); smp_init_pseries();
...@@ -786,6 +785,7 @@ define_machine(pseries) { ...@@ -786,6 +785,7 @@ define_machine(pseries) {
.machine_check_exception = pSeries_machine_check_exception, .machine_check_exception = pSeries_machine_check_exception,
#ifdef CONFIG_KEXEC #ifdef CONFIG_KEXEC
.machine_kexec = pSeries_machine_kexec, .machine_kexec = pSeries_machine_kexec,
.kexec_cpu_down = pseries_kexec_cpu_down,
#endif #endif
#ifdef CONFIG_MEMORY_HOTPLUG_SPARSE #ifdef CONFIG_MEMORY_HOTPLUG_SPARSE
.memory_block_size = pseries_memory_block_size, .memory_block_size = pseries_memory_block_size,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment