diff --git a/arch/arc/include/asm/mcip.h b/arch/arc/include/asm/mcip.h index 52c11f0bb0e5b5afbeacda75ef9c014032de4fb4..c9b2b402a8103b34f3e5c570ba27a36310162559 100644 --- a/arch/arc/include/asm/mcip.h +++ b/arch/arc/include/asm/mcip.h @@ -86,7 +86,6 @@ static inline void __mcip_cmd_data(unsigned int cmd, unsigned int param, __mcip_cmd(cmd, param); } -extern void mcip_init_early_smp(void); extern void mcip_init_smp(unsigned int cpu); #endif diff --git a/arch/arc/kernel/mcip.c b/arch/arc/kernel/mcip.c index e18d36eb0af60b55a1991fd6267cf5a18b960503..96b0b62ced65b627133a9df0e3c0502125292487 100644 --- a/arch/arc/kernel/mcip.c +++ b/arch/arc/kernel/mcip.c @@ -97,13 +97,7 @@ static void mcip_ipi_clear(int irq) #endif } -struct plat_smp_ops plat_smp_ops = { - .info = smp_cpuinfo_buf, - .ipi_send = mcip_ipi_send, - .ipi_clear = mcip_ipi_clear, -}; - -void mcip_init_early_smp(void) +static void mcip_probe_n_setup(void) { struct mcip_bcr { #ifdef CONFIG_CPU_BIG_ENDIAN @@ -142,6 +136,13 @@ void mcip_init_early_smp(void) panic("kernel trying to use non-existent GRTC\n"); } +struct plat_smp_ops plat_smp_ops = { + .info = smp_cpuinfo_buf, + .init_early_smp = mcip_probe_n_setup, + .ipi_send = mcip_ipi_send, + .ipi_clear = mcip_ipi_clear, +}; + /*************************************************************************** * ARCv2 Interrupt Distribution Unit (IDU) * diff --git a/arch/arc/plat-axs10x/axs10x.c b/arch/arc/plat-axs10x/axs10x.c index 0a77b19e1df8db1d37af0346e36a4b53254ca272..9ce1999633631983246e276a6957f96199015ce9 100644 --- a/arch/arc/plat-axs10x/axs10x.c +++ b/arch/arc/plat-axs10x/axs10x.c @@ -455,11 +455,6 @@ static void __init axs103_early_init(void) axs10x_print_board_ver(AXC003_CREG + 4088, "AXC003 CPU Card"); axs10x_early_init(); - -#ifdef CONFIG_ARC_MCIP - /* No Hardware init, but filling the smp ops callbacks */ - mcip_init_early_smp(); -#endif } #endif diff --git a/arch/arc/plat-sim/platform.c b/arch/arc/plat-sim/platform.c index d9e35b4a2f0861bd9e0bd9ad38360e959029d62c..e4128cca1b52cac496c870a8d333a78a7009a85f 100644 --- a/arch/arc/plat-sim/platform.c +++ b/arch/arc/plat-sim/platform.c @@ -31,7 +31,6 @@ static const char *simulation_compat[] __initconst = { MACHINE_START(SIMULATION, "simulation") .dt_compat = simulation_compat, #ifdef CONFIG_ARC_MCIP - .init_early = mcip_init_early_smp, .init_smp = mcip_init_smp, #endif MACHINE_END