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.