A simulated RTL8139 under QEMU isn't reporting its interrupt information (PIN or Line) in the PCI configuration space, see the attached image, I have run through a loop printing out all information in the PCI configuration space. 0x3E and 0x3F report 0x0 back, not what I was expecting, though the IO address is reported fine at 0x10 being 0xc101 or 49409. Any ideas why this is?
Thanks
QEMU RTL8139 Interrupt's
Re: QEMU RTL8139 Interrupt's
To get the IRQ you need another IO, this is what I do:
In my setting, the 8139 has IRQ 11.
Code: Select all
outl(PCI_CONFIG_ADDRESS, base +0x3C);
if ( (data = inl(PCI_CONFIG_DATA)) == 0xFFFFFFFF ) return -1;
*irq = data & 0xFF;