Subversion Repositories Kolibri OS

Compare Revisions

Regard whitespace Rev 2921 → Rev 2922

/kernel/branches/net/drivers/bus/pci.inc
50,40 → 50,44
jz .inc
 
and eax, PCI_BASE_ADDRESS_IO_MASK
mov io , eax
jmp .got
 
.inc:
add esi, 4
cmp esi, PCI_BASE_ADDRESS_5
jle .check
jbe .check
xor eax, eax
 
.got:
mov io, eax
 
}
 
 
macro find_mmio32 bus, dev, mmio32 {
macro find_mmio32 bus, dev, io {
 
local .check, .got
local .check, .inc, .got
 
xor eax, eax
mov esi, PCI_BASE_ADDRESS_0
movzx ecx, bus
movzx edx, dev
.check:
stdcall PciRead32, ecx ,edx ,esi
stdcall PciRead32, bus, dev, esi
 
test eax, not PCI_BASE_ADDRESS_IO_MASK
jz .got
test eax, PCI_BASE_ADDRESS_SPACE_IO ; mmio address?
jnz .inc
 
test eax, 100b ; 64 bit?
jnz .inc
and eax, not 1111b
jmp .got
 
.inc:
add esi, 4
cmp esi, PCI_BASE_ADDRESS_5
jle .check
jbe .check
xor eax, eax
 
xor eax, eax
.got:
mov mmio32, eax
mov io, eax
 
}