qemu-riscv
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v5 16/23] hw/riscv: virt: Use AIA INTC compatible string when


From: Anup Patel
Subject: Re: [PATCH v5 16/23] hw/riscv: virt: Use AIA INTC compatible string when available
Date: Wed, 15 Dec 2021 20:29:38 +0530

On Wed, Dec 15, 2021 at 6:38 AM Kip Walker <kip@rivosinc.com> wrote:
>
> On Fri, Dec 10, 2021 at 8:35 PM Anup Patel <anup.patel@wdc.com> wrote:
> >
> > We should use the AIA INTC compatible string in the CPU INTC
> > DT nodes when the CPUs support AIA feature. This will allow
> > Linux INTC driver to use AIA local interrupt CSRs.
> >
> > Signed-off-by: Anup Patel <anup.patel@wdc.com>
> > Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
> > ---
> >  hw/riscv/virt.c | 13 +++++++++++--
> >  1 file changed, 11 insertions(+), 2 deletions(-)
> >
> > diff --git a/hw/riscv/virt.c b/hw/riscv/virt.c
> > index 3af074148e..936156554c 100644
> > --- a/hw/riscv/virt.c
> > +++ b/hw/riscv/virt.c
> > @@ -211,8 +211,17 @@ static void create_fdt_socket_cpus(RISCVVirtState *s, 
> > int socket,
> >          qemu_fdt_add_subnode(mc->fdt, intc_name);
> >          qemu_fdt_setprop_cell(mc->fdt, intc_name, "phandle",
> >              intc_phandles[cpu]);
> > -        qemu_fdt_setprop_string(mc->fdt, intc_name, "compatible",
> > -            "riscv,cpu-intc");
> > +        if (riscv_feature(&s->soc[socket].harts[cpu].env,
> > +                          RISCV_FEATURE_AIA)) {
> > +            static const char * const compat[2] = {
> > +                "riscv,cpu-intc-aia", "riscv,cpu-intc"
> > +            };
> > +            qemu_fdt_setprop_string_array(mc->fdt, name, "compatible",
> > +                                      (char **)&compat, 
> > ARRAY_SIZE(compat));
>
> I think this should be intc_name rather than name.

Ahh, good catch. I will fix this typo in the next revision.

Thanks,
Anup

>
> Kip
>
> > +        } else {
> > +            qemu_fdt_setprop_string(mc->fdt, intc_name, "compatible",
> > +                "riscv,cpu-intc");
> > +        }
> >          qemu_fdt_setprop(mc->fdt, intc_name, "interrupt-controller", NULL, 
> > 0);
> >          qemu_fdt_setprop_cell(mc->fdt, intc_name, "#interrupt-cells", 1);
> >
> > --
> > 2.25.1
> >
> >



reply via email to

[Prev in Thread] Current Thread [Next in Thread]