Files
opensbi/lib/utils/ipi/fdt_ipi_plicsw.c
Samuel Holland d561418f22 lib: utils/ipi: Constify FDT pointers in parsing functions
Indicate that none of these functions modify the devicetree by
constifying the parameter type.

Signed-off-by: Samuel Holland <samuel.holland@sifive.com>
Reviewed-by: Andrew Jones <ajones@ventanamicro.com>
Reviewed-by: Anup Patel <anup@brainfault.org>
2024-08-24 13:02:33 +05:30

48 lines
1.0 KiB
C

/*
* SPDX-License-Identifier: BSD-2-Clause
*
* Copyright (c) 2022 Andes Technology Corporation
*
* Authors:
* Zong Li <zong@andestech.com>
* Nylon Chen <nylon7@andestech.com>
* Leo Yu-Chi Liang <ycliang@andestech.com>
* Yu Chien Peter Lin <peterlin@andestech.com>
*/
#include <sbi/riscv_io.h>
#include <sbi_utils/fdt/fdt_helper.h>
#include <sbi_utils/ipi/fdt_ipi.h>
#include <sbi_utils/ipi/andes_plicsw.h>
extern struct plicsw_data plicsw;
int fdt_plicsw_cold_ipi_init(const void *fdt, int nodeoff,
const struct fdt_match *match)
{
int rc;
rc = fdt_parse_plicsw_node(fdt, nodeoff, &plicsw.addr, &plicsw.size,
&plicsw.hart_count);
if (rc)
return rc;
rc = plicsw_cold_ipi_init(&plicsw);
if (rc)
return rc;
return 0;
}
static const struct fdt_match ipi_plicsw_match[] = {
{ .compatible = "andestech,plicsw" },
{},
};
struct fdt_ipi fdt_ipi_plicsw = {
.match_table = ipi_plicsw_match,
.cold_init = fdt_plicsw_cold_ipi_init,
.warm_init = plicsw_warm_ipi_init,
.exit = NULL,
};