qemu-riscv
[Top][All Lists]
Advanced

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

Re: [PATCH v2 09/12] hw/pci-host/Kconfig: Add missing dependency MV64361


From: Philippe Mathieu-Daudé
Subject: Re: [PATCH v2 09/12] hw/pci-host/Kconfig: Add missing dependency MV64361 -> I8259
Date: Mon, 17 May 2021 07:10:39 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.8.1

On 5/17/21 4:49 AM, Bin Meng wrote:
> On Sun, May 16, 2021 at 1:52 AM Philippe Mathieu-Daudé
> <philmd@redhat.com> wrote:
>>
>> From: Philippe Mathieu-Daudé <f4bug@amsat.org>
>>
>> Looking at the MV64340 model source, there is a dependency on the
>> 8259 interrupt controller:
>>
>>   523     case MV64340_PCI_1_INTERRUPT_ACKNOWLEDGE_VIRTUAL_REG:
>>   524         /* FIXME: Should this be sent via the PCI bus somehow? */
>>   525         if (s->gpp_int_level && (s->gpp_value & BIT(31))) {
>>   526             ret = pic_read_irq(isa_pic);
>>   527         }
>>   528         break;
>>
>> Add it to Kconfig to avoid the following build failure:
>>
>>   /usr/bin/ld: libcommon.fa.p/hw_pci-host_mv64361.c.o: in function 
>> `mv64361_read':
>>   hw/pci-host/mv64361.c:526: undefined reference to `isa_pic'
>>   /usr/bin/ld: hw/pci-host/mv64361.c:526: undefined reference to 
>> `pic_read_irq'
>>
>> Fixes: dcdf98a9015 ("hw/pci-host: Add emulation of Marvell MV64361 PPC 
>> system controller")
>> Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
>> ---
>>  hw/pci-host/Kconfig | 1 +
>>  1 file changed, 1 insertion(+)
>>
> 
> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>

Thank you :)

> There are some more codes that contain isa_pic. Maybe worth an additional 
> check.
> 
> ./hw/i386/x86.c:573:    intno = pic_read_irq(isa_pic);
> ./hw/intc/i8259.c:58:DeviceState *isa_pic;
> ./hw/intc/i8259.c:429:    isa_pic = dev;
> ./hw/intc/apic.c:387:    } else if (!apic_accept_pic_intr(dev) ||
> !pic_get_output(isa_pic)) {
> ./hw/intc/apic.c:562:    if (!apic_accept_pic_intr(dev) ||
> !pic_get_output(isa_pic)) {
> ./hw/intc/apic.c:615:        return isa_pic != NULL;
> ./hw/intc/ioapic.c:78:        info->vector = pic_read_irq(isa_pic);
> ./hw/hppa/pci.c:67:    return pic_read_irq(isa_pic);
> ./hw/mips/gt64xxx_pci.c:777:        val = pic_read_irq(isa_pic);
> ./hw/alpha/pci.c:70:    return pic_read_irq(isa_pic);
> ./hw/pci-host/mv64361.c:526:            ret = pic_read_irq(isa_pic);
> ./hw/pci-host/prep.c:121:    return pic_read_irq(isa_pic);
> ./include/hw/intc/i8259.h:6:extern DeviceState *isa_pic;

I'll have a look, by my secret plan is to remove the global isa_pic :)



reply via email to

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