Fixed bug wich caused i8254x driver to be able to load multiple times on the same device.

git-svn-id: svn://kolibrios.org@2934 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
hidnplayr 2012-08-25 16:05:36 +00:00
parent 76bf409d84
commit c575a498b5

View File

@ -354,8 +354,11 @@ proc service_proc stdcall, ioctl:dword
mov ax, [eax+1] ; mov ax, [eax+1] ;
.nextdevice: .nextdevice:
mov ebx, [esi] mov ebx, [esi]
cmp ax , word [device.pci_bus] ; compare with pci and device num in device list (notice the usage of word instead of byte) cmp al, byte [device.pci_bus]
jne .next
cmp ah, byte [device.pci_dev]
je .find_devicenum ; Device is already loaded, let's find it's device number je .find_devicenum ; Device is already loaded, let's find it's device number
.next:
add esi, 4 add esi, 4
loop .nextdevice loop .nextdevice