mirror of
https://github.com/ApfelTeeSaft/reactos.git
synced 2026-08-26 19:33:31 +00:00
[PCI]
Fix a port base adddress decoding bug. Port base addresses were always decoded like memory base addresses. Because of this bug, a device could have two port address ranges starting at the same base address but with different lengths. svn path=/trunk/; revision=75981
This commit is contained in:
@@ -355,7 +355,9 @@ PdoGetRangeLength(PPDO_DEVICE_EXTENSION DeviceExtension,
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
*Base = OriginalValue.Bar & PCI_ADDRESS_MEMORY_ADDRESS_MASK_64;
|
||||
*Base = ((OriginalValue.Bar & PCI_ADDRESS_IO_SPACE)
|
||||
? (OriginalValue.Bar & PCI_ADDRESS_IO_ADDRESS_MASK_64)
|
||||
: (OriginalValue.Bar & PCI_ADDRESS_MEMORY_ADDRESS_MASK_64));
|
||||
|
||||
*Length = ~((NewValue.Bar & PCI_ADDRESS_IO_SPACE)
|
||||
? (NewValue.Bar & PCI_ADDRESS_IO_ADDRESS_MASK_64)
|
||||
|
||||
Reference in New Issue
Block a user