mirror of
https://github.com/reactos/reactos.git
synced 2025-07-03 15:21:23 +00:00
Add a bus number to the PCI resource descriptor
svn path=/trunk/; revision=26992
This commit is contained in:
parent
1c8c62aa42
commit
2a9396bf7f
1 changed files with 12 additions and 4 deletions
|
@ -182,8 +182,8 @@ DetectPciIrqRoutingTable(FRLDRHKEY BusKey)
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Set 'Configuration Data' value */
|
/* Set 'Configuration Data' value */
|
||||||
Size = sizeof(CM_FULL_RESOURCE_DESCRIPTOR) +
|
Size = FIELD_OFFSET(CM_FULL_RESOURCE_DESCRIPTOR, PartialResourceList.PartialDescriptors) +
|
||||||
Table->Size;
|
2 * sizeof(CM_PARTIAL_RESOURCE_DESCRIPTOR) + Table->Size;
|
||||||
FullResourceDescriptor = MmAllocateMemory(Size);
|
FullResourceDescriptor = MmAllocateMemory(Size);
|
||||||
if (FullResourceDescriptor == NULL)
|
if (FullResourceDescriptor == NULL)
|
||||||
{
|
{
|
||||||
|
@ -196,14 +196,22 @@ DetectPciIrqRoutingTable(FRLDRHKEY BusKey)
|
||||||
memset(FullResourceDescriptor, 0, Size);
|
memset(FullResourceDescriptor, 0, Size);
|
||||||
FullResourceDescriptor->InterfaceType = Isa;
|
FullResourceDescriptor->InterfaceType = Isa;
|
||||||
FullResourceDescriptor->BusNumber = 0;
|
FullResourceDescriptor->BusNumber = 0;
|
||||||
FullResourceDescriptor->PartialResourceList.Count = 1;
|
FullResourceDescriptor->PartialResourceList.Version = 1;
|
||||||
|
FullResourceDescriptor->PartialResourceList.Revision = 1;
|
||||||
|
FullResourceDescriptor->PartialResourceList.Count = 2;
|
||||||
|
|
||||||
PartialDescriptor = &FullResourceDescriptor->PartialResourceList.PartialDescriptors[0];
|
PartialDescriptor = &FullResourceDescriptor->PartialResourceList.PartialDescriptors[0];
|
||||||
|
PartialDescriptor->Type = CmResourceTypeBusNumber;
|
||||||
|
PartialDescriptor->ShareDisposition = CmResourceShareDeviceExclusive;
|
||||||
|
PartialDescriptor->u.BusNumber.Start = 0;
|
||||||
|
PartialDescriptor->u.BusNumber.Length = 1;
|
||||||
|
|
||||||
|
PartialDescriptor = &FullResourceDescriptor->PartialResourceList.PartialDescriptors[1];
|
||||||
PartialDescriptor->Type = CmResourceTypeDeviceSpecific;
|
PartialDescriptor->Type = CmResourceTypeDeviceSpecific;
|
||||||
PartialDescriptor->ShareDisposition = CmResourceShareUndetermined;
|
PartialDescriptor->ShareDisposition = CmResourceShareUndetermined;
|
||||||
PartialDescriptor->u.DeviceSpecificData.DataSize = Table->Size;
|
PartialDescriptor->u.DeviceSpecificData.DataSize = Table->Size;
|
||||||
|
|
||||||
memcpy((PVOID)((ULONG_PTR)FullResourceDescriptor + sizeof(CM_FULL_RESOURCE_DESCRIPTOR)),
|
memcpy(&FullResourceDescriptor->PartialResourceList.PartialDescriptors[2],
|
||||||
Table,
|
Table,
|
||||||
Table->Size);
|
Table->Size);
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue