vionet: make msix edge trigger

This commit is contained in:
Matheus
2024-07-27 23:56:59 -03:00
parent e675f1c152
commit 803724141e
+2 -2
View File
@@ -195,12 +195,12 @@ int vionet_newdevice(viodevice_t *viodevice) {
isr_t *rxisr = interrupt_allocate(rx_irq, ARCH_EOI, IPL_NET);
__assert(rxisr);
pci_msixadd(viodevice->e, 0, INTERRUPT_IDTOVECTOR(rxisr->id), 0, 0);
pci_msixadd(viodevice->e, 0, INTERRUPT_IDTOVECTOR(rxisr->id), 1, 0);
__assert(hashtable_set(&irqtable, netdev, &rxisr->id, sizeof(rxisr->id), true) == 0);
isr_t *txisr = interrupt_allocate(tx_irq, ARCH_EOI, IPL_NET);
__assert(txisr);
pci_msixadd(viodevice->e, 1, INTERRUPT_IDTOVECTOR(txisr->id), 0, 0);
pci_msixadd(viodevice->e, 1, INTERRUPT_IDTOVECTOR(txisr->id), 1, 0);
__assert(hashtable_set(&irqtable, netdev, &txisr->id, sizeof(txisr->id), true) == 0);
pci_msixsetmask(viodevice->e, 0);