lib: utils/irqchip: Move per-hart data from fdt_plic to plic

The per-hart PLIC pointer is not really specific to FDT platforms. Move
it into the main driver and drop the extra wrapper functions.

Signed-off-by: Samuel Holland <samuel.holland@sifive.com>
Reviewed-by: Anup Patel <anup@brainfault.org>
This commit is contained in:
Samuel Holland
2024-11-04 20:10:06 -08:00
committed by Anup Patel
parent c6c22f00f4
commit 56fddce83f
10 changed files with 60 additions and 83 deletions

View File

@@ -1,19 +0,0 @@
/*
* SPDX-License-Identifier: BSD-2-Clause
*
* Copyright (c) 2022 Samuel Holland <samuel@sholland.org>
*/
#ifndef __IRQCHIP_FDT_IRQCHIP_PLIC_H__
#define __IRQCHIP_FDT_IRQCHIP_PLIC_H__
#include <sbi/sbi_types.h>
#include <sbi_utils/irqchip/plic.h>
struct plic_data *fdt_plic_get(void);
void fdt_plic_suspend(void);
void fdt_plic_resume(void);
#endif

View File

@@ -36,11 +36,13 @@ struct plic_data {
#define PLIC_IE_WORDS(__p) ((__p)->num_src / 32 + 1)
void plic_suspend(const struct plic_data *plic);
struct plic_data *plic_get(void);
void plic_resume(const struct plic_data *plic);
void plic_suspend(void);
int plic_warm_irqchip_init(const struct plic_data *plic);
void plic_resume(void);
int plic_warm_irqchip_init(void);
int plic_cold_irqchip_init(struct plic_data *plic);