diff options
| author | Samuel Holland <[email protected]> | 2024-11-04 20:10:09 -0800 |
|---|---|---|
| committer | Anup Patel <[email protected]> | 2024-11-28 11:46:36 +0530 |
| commit | 678f5909a3fe54d528276f9afce5dd3148e42cbf (patch) | |
| tree | bd3377085a71ed54c2e80a3a0a98a3cff24185cc /include | |
| parent | 2dd6eaf680556e763a85b0b4ae180391e2671854 (diff) | |
platform: Drop irqchip warm init and exit hooks
Now that driver lifecycle is managed from within the SBI irqchip core,
platforms need only to initialize the driver once during cold init.
Remove the remaining platform hooks that are no longer used.
Signed-off-by: Samuel Holland <[email protected]>
Reviewed-by: Anup Patel <[email protected]>
Diffstat (limited to 'include')
| -rw-r--r-- | include/sbi/sbi_platform.h | 25 | ||||
| -rw-r--r-- | include/sbi_utils/irqchip/fdt_irqchip.h | 10 |
2 files changed, 7 insertions, 28 deletions
diff --git a/include/sbi/sbi_platform.h b/include/sbi/sbi_platform.h index e94ab37c..dc852a5c 100644 --- a/include/sbi/sbi_platform.h +++ b/include/sbi/sbi_platform.h @@ -111,10 +111,8 @@ struct sbi_platform_operations { /** Get platform specific mhpmevent value */ uint64_t (*pmu_xlate_to_mhpmevent)(uint32_t event_idx, uint64_t data); - /** Initialize the platform interrupt controller for current HART */ - int (*irqchip_init)(bool cold_boot); - /** Exit the platform interrupt controller for current HART */ - void (*irqchip_exit)(void); + /** Initialize the platform interrupt controller during cold boot */ + int (*irqchip_init)(void); /** Initialize IPI during cold boot */ int (*ipi_init)(void); @@ -543,33 +541,20 @@ static inline uint64_t sbi_platform_pmu_xlate_to_mhpmevent(const struct sbi_plat } /** - * Initialize the platform interrupt controller for current HART + * Initialize the platform interrupt controller during cold boot * * @param plat pointer to struct sbi_platform - * @param cold_boot whether cold boot (true) or warm_boot (false) * * @return 0 on success and negative error code on failure */ -static inline int sbi_platform_irqchip_init(const struct sbi_platform *plat, - bool cold_boot) +static inline int sbi_platform_irqchip_init(const struct sbi_platform *plat) { if (plat && sbi_platform_ops(plat)->irqchip_init) - return sbi_platform_ops(plat)->irqchip_init(cold_boot); + return sbi_platform_ops(plat)->irqchip_init(); return 0; } /** - * Exit the platform interrupt controller for current HART - * - * @param plat pointer to struct sbi_platform - */ -static inline void sbi_platform_irqchip_exit(const struct sbi_platform *plat) -{ - if (plat && sbi_platform_ops(plat)->irqchip_exit) - sbi_platform_ops(plat)->irqchip_exit(); -} - -/** * Initialize the platform IPI support during cold boot * * @param plat pointer to struct sbi_platform diff --git a/include/sbi_utils/irqchip/fdt_irqchip.h b/include/sbi_utils/irqchip/fdt_irqchip.h index bc02c0c8..0ad00489 100644 --- a/include/sbi_utils/irqchip/fdt_irqchip.h +++ b/include/sbi_utils/irqchip/fdt_irqchip.h @@ -17,19 +17,13 @@ struct fdt_irqchip { const struct fdt_match *match_table; int (*cold_init)(const void *fdt, int nodeoff, const struct fdt_match *match); - int (*warm_init)(void); - void (*exit)(void); }; -void fdt_irqchip_exit(void); - -int fdt_irqchip_init(bool cold_boot); +int fdt_irqchip_init(void); #else -static inline void fdt_irqchip_exit(void) { } - -static inline int fdt_irqchip_init(bool cold_boot) { return 0; } +static inline int fdt_irqchip_init(void) { return 0; } #endif |
