[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re:Re: [PATCH] hw/intc/riscv_aplic: APLICs should add child earlier than
From: |
yang.zhang |
Subject: |
Re:Re: [PATCH] hw/intc/riscv_aplic: APLICs should add child earlier than realize |
Date: |
Tue, 9 Apr 2024 09:46:47 +0800 (CST) |
At 2024-04-09 06:33:55, "Daniel Henrique Barboza" <dbarboza@ventanamicro.com>
wrote:
>
>
>On 4/7/24 00:46, yang.zhang wrote:
>> From: "yang.zhang" <yang.zhang@hexintek.com>
>>
>> Since only root APLICs can have hw IRQ lines, aplic->parent should
>> be initialized first.
>
>I think it's worth mentioning that, if we don't do that, there won't be
>an aplic->parent assigned during riscv_aplic_realize() and we won't create
>the adequate IRQ lines.
>
>>
>> Signed-off-by: yang.zhang <yang.zhang@hexintek.com>
>> ---
>
>Please add:
>
>Fixes: e8f79343cf ("hw/intc: Add RISC-V AIA APLIC device emulation")
>
>
>And:
>
>
>Reviewed-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com>
Done.
Thanks.
>>
>
>
>> hw/intc/riscv_aplic.c | 8 ++++----
>> 1 file changed, 4 insertions(+), 4 deletions(-)
>>
>> diff --git a/hw/intc/riscv_aplic.c b/hw/intc/riscv_aplic.c
>> index fc5df0d598..32edd6d07b 100644
>> --- a/hw/intc/riscv_aplic.c
>> +++ b/hw/intc/riscv_aplic.c
>> @@ -1000,16 +1000,16 @@ DeviceState *riscv_aplic_create(hwaddr addr, hwaddr
>> size,
>> qdev_prop_set_bit(dev, "msimode", msimode);
>> qdev_prop_set_bit(dev, "mmode", mmode);
>>
>> + if (parent) {
>> + riscv_aplic_add_child(parent, dev);
>> + }
>> +
>> sysbus_realize_and_unref(SYS_BUS_DEVICE(dev), &error_fatal);
>>
>> if (!is_kvm_aia(msimode)) {
>> sysbus_mmio_map(SYS_BUS_DEVICE(dev), 0, addr);
>> }
>>
>> - if (parent) {
>> - riscv_aplic_add_child(parent, dev);
>> - }
>> -
>> if (!msimode) {
>> for (i = 0; i < num_harts; i++) {
>> CPUState *cpu = cpu_by_arch_id(hartid_base + i);