include: sbi: Remove platform specific IPI init

The platform specfic IPI init is not need anymore because using
IPI device rating multiple IPI devices can be registered in any
order as part of the platform specific early init.

Signed-off-by: Anup Patel <apatel@ventanamicro.com>
Reviewed-by: Samuel Holland <samuel.holland@sifive.com>
Tested-by: Nick Hu <nick.hu@sifive.com>
Link: https://lore.kernel.org/r/20250904052410.546818-3-apatel@ventanamicro.com
Signed-off-by: Anup Patel <anup@brainfault.org>
This commit is contained in:
Anup Patel
2025-09-04 10:54:09 +05:30
committed by Anup Patel
parent ee92afa638
commit 85f22b38c8
8 changed files with 49 additions and 82 deletions

View File

@@ -104,11 +104,15 @@ static int openpiton_early_init(bool cold_boot)
ACLINT_DEFAULT_MTIMECMP_OFFSET;
}
return uart8250_init(uart.addr, uart.freq, uart.baud,
OPENPITON_DEFAULT_UART_REG_SHIFT,
OPENPITON_DEFAULT_UART_REG_WIDTH,
OPENPITON_DEFAULT_UART_REG_OFFSET,
OPENPITON_DEFAULT_UART_CAPS);
rc = uart8250_init(uart.addr, uart.freq, uart.baud,
OPENPITON_DEFAULT_UART_REG_SHIFT,
OPENPITON_DEFAULT_UART_REG_WIDTH,
OPENPITON_DEFAULT_UART_REG_OFFSET,
OPENPITON_DEFAULT_UART_CAPS);
if (rc)
return rc;
return aclint_mswi_cold_init(&mswi);
}
/*
@@ -135,14 +139,6 @@ static int openpiton_irqchip_init(void)
return plic_cold_irqchip_init(&plic);
}
/*
* Initialize IPI during cold boot.
*/
static int openpiton_ipi_init(void)
{
return aclint_mswi_cold_init(&mswi);
}
/*
* Initialize openpiton timer during cold boot.
*/
@@ -155,7 +151,6 @@ static int openhwgroup_openpiton_platform_init(const void *fdt, int nodeoff, con
{
generic_platform_ops.early_init = openpiton_early_init;
generic_platform_ops.timer_init = openpiton_timer_init;
generic_platform_ops.ipi_init = openpiton_ipi_init;
generic_platform_ops.irqchip_init = openpiton_irqchip_init;
generic_platform_ops.final_init = openpiton_final_init;

View File

@@ -229,6 +229,10 @@ int generic_early_init(bool cold_boot)
return rc;
fdt_driver_init_all(fdt, fdt_early_drivers);
rc = fdt_ipi_init();
if (rc)
return rc;
}
return 0;
@@ -337,7 +341,6 @@ struct sbi_platform_operations generic_platform_ops = {
.extensions_init = generic_extensions_init,
.domains_init = generic_domains_init,
.irqchip_init = fdt_irqchip_init,
.ipi_init = fdt_ipi_init,
.pmu_init = generic_pmu_init,
.pmu_xlate_to_mhpmevent = generic_pmu_xlate_to_mhpmevent,
.get_tlbr_flush_limit = generic_tlbr_flush_limit,