On Wed, Dec 15, 2021 at 6:38 AM Kip Walker <k...@rivosinc.com> wrote:
>
> On Fri, Dec 10, 2021 at 8:35 PM Anup Patel <anup.pa...@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.pa...@wdc.com>
> > Reviewed-by: Alistair Francis <alistair.fran...@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