Re: [PATCH v9 05/15] irqchip/sifive-plic: Convert PLIC driver into a platform driver

From: Marc Zyngier
Date: Fri Sep 29 2023 - 08:33:02 EST


On Thu, 28 Sep 2023 07:11:57 +0100,
Anup Patel <apatel@xxxxxxxxxxxxxxxx> wrote:
>
> The PLIC driver does not require very early initialization so let
> us convert it into a platform driver.
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
>
> As part of the conversion, the PLIC probing undergoes the following
> changes:
> 1. Use dev_info(), dev_err() and dev_warn() instead of pr_info(),
> pr_err() and pr_warn()
> 2. Use devm_xyz() APIs wherever applicable
> 3. PLIC is now probed after CPUs are brought-up so we have to
> setup cpuhp state after context handler of all online CPUs
> are initialized otherwise we see crash on multi-socket systems
>
> Signed-off-by: Anup Patel <apatel@xxxxxxxxxxxxxxxx>
> ---
> drivers/irqchip/irq-sifive-plic.c | 242 +++++++++++++++++++-----------
> 1 file changed, 154 insertions(+), 88 deletions(-)
>

[...]

> +core_initcall(plic_init);

Or not. There are only two choices: either you absolutely require
early init, and you stick with the current situation, or you don't,
and you can rely on dependencies.

I'm not prepared to have a third option.

M.

--
Without deviation from the norm, progress is not possible.