diff options
author | Daniel Henrique Barboza <dbarboza@ventanamicro.com> | 2024-05-31 17:27:55 -0300 |
---|---|---|
committer | Alistair Francis <alistair.francis@wdc.com> | 2024-06-26 22:37:15 +1000 |
commit | 362b31fc35f39d5148744c7394d1e9a7d886effd (patch) | |
tree | 3b0230fca585eadf7c0a64f319965df659e2a2ab /hw | |
parent | 29390fdbc1f80f16008391a36024e5d090590bc5 (diff) | |
download | qemu-362b31fc35f39d5148744c7394d1e9a7d886effd.zip qemu-362b31fc35f39d5148744c7394d1e9a7d886effd.tar.gz qemu-362b31fc35f39d5148744c7394d1e9a7d886effd.tar.bz2 |
hw/riscv/virt.c: aplic DT: add 'qemu, aplic' to 'compatible'
The DT docs for riscv,aplic [1] predicts a 'qemu,aplic' enum in the
'compatible' property.
[1] Documentation/devicetree/bindings/interrupt-controller/riscv,aplic.yaml
Reported-by: Conor Dooley <conor@kernel.org>
Fixes: e6faee65855b ("hw/riscv: virt: Add optional AIA APLIC support to virt machine")
Signed-off-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Message-ID: <20240531202759.911601-5-dbarboza@ventanamicro.com>
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
Diffstat (limited to 'hw')
-rw-r--r-- | hw/riscv/virt.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/hw/riscv/virt.c b/hw/riscv/virt.c index a803c33..746df3f 100644 --- a/hw/riscv/virt.c +++ b/hw/riscv/virt.c @@ -606,6 +606,9 @@ static void create_fdt_one_aplic(RISCVVirtState *s, int socket, g_autofree char *aplic_name = fdt_get_aplic_nodename(aplic_addr); g_autofree uint32_t *aplic_cells = g_new0(uint32_t, num_harts * 2); MachineState *ms = MACHINE(s); + static const char * const aplic_compat[2] = { + "qemu,aplic", "riscv,aplic" + }; for (cpu = 0; cpu < num_harts; cpu++) { aplic_cells[cpu * 2 + 0] = cpu_to_be32(intc_phandles[cpu]); @@ -613,7 +616,9 @@ static void create_fdt_one_aplic(RISCVVirtState *s, int socket, } qemu_fdt_add_subnode(ms->fdt, aplic_name); - qemu_fdt_setprop_string(ms->fdt, aplic_name, "compatible", "riscv,aplic"); + qemu_fdt_setprop_string_array(ms->fdt, aplic_name, "compatible", + (char **)&aplic_compat, + ARRAY_SIZE(aplic_compat)); qemu_fdt_setprop_cell(ms->fdt, aplic_name, "#address-cells", FDT_APLIC_ADDR_CELLS); qemu_fdt_setprop_cell(ms->fdt, aplic_name, |