From d8d75b5cf628d4e58c0a1de0c291250ac706b326 Mon Sep 17 00:00:00 2001 From: hidnplayr Date: Sun, 26 Jul 2015 11:02:45 +0000 Subject: [PATCH] PCNET32: Correctly handle interrupts when more then one device is loaded. git-svn-id: svn://kolibrios.org@5617 a494cfbc-eb01-0410-851d-a64ba20cac60 --- drivers/ethernet/pcnet32.asm | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/drivers/ethernet/pcnet32.asm b/drivers/ethernet/pcnet32.asm index bab9e5dca0..8ee2745ff1 100644 --- a/drivers/ethernet/pcnet32.asm +++ b/drivers/ethernet/pcnet32.asm @@ -679,9 +679,7 @@ probe: call [ebx + device.write_bcr] mov ecx, CSR_DMACTL - call [ebx + device.read_csr] -; and eax, 0xc00 -; or eax, 0xc00 +; call [ebx + device.read_csr] mov eax, 0xc00 call [ebx + device.write_csr] @@ -1090,8 +1088,7 @@ int_handler: call [ebx + device.read_csr] ; get IRQ reason call [ebx + device.write_csr] ; write it back to ACK pop ecx -;;; and ax, CSR_RINT or CSR_TINT - test ax, ax + test ax, CSR_RINT or CSR_TINT jnz .got_it .continue: add esi, 4