You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
138 lines
2.4 KiB
138 lines
2.4 KiB
#ifndef _SOFTPCIDEVICEH_
|
|
#define _SOFTPCIDEVICEH_
|
|
|
|
|
|
#define SoftPCI_GetCurrentConfigSpace(pdn, commonConfig) \
|
|
SoftPCI_ReadWriteConfigSpace(pdn, \
|
|
0, \
|
|
sizeof(PCI_COMMON_CONFIG), \
|
|
commonConfig, \
|
|
FALSE \
|
|
)
|
|
|
|
|
|
BOOL
|
|
SoftPCI_GetSlotPathList(
|
|
IN PPCI_DN Pdn,
|
|
OUT PULONG SlotCount,
|
|
OUT PLIST_ENTRY SlotPathList
|
|
);
|
|
|
|
BOOL
|
|
SoftPCI_GetDevicePathList(
|
|
IN PPCI_DN Pdn,
|
|
OUT PLIST_ENTRY DevicePathList
|
|
);
|
|
|
|
VOID
|
|
SoftPCI_DestroySlotPathList(
|
|
PLIST_ENTRY SlotPathList
|
|
);
|
|
|
|
PWCHAR
|
|
SoftPCI_GetPciPathFromDn(
|
|
IN PPCI_DN Pdn
|
|
);
|
|
|
|
VOID
|
|
SoftPCI_EnumerateDevices(
|
|
IN PPCI_TREE PciTree,
|
|
IN PPCI_DN *Pdn,
|
|
IN DEVNODE Dn,
|
|
IN PPCI_DN Parent
|
|
);
|
|
|
|
BOOL
|
|
SoftPCI_EnumerateHotplugDevices(
|
|
IN PPCI_TREE PciTree,
|
|
IN PPCI_DN ControllerDevnode
|
|
);
|
|
|
|
VOID
|
|
SoftPCI_AddChild(
|
|
IN PPCI_DN Parent,
|
|
IN PPCI_DN Child
|
|
);
|
|
|
|
VOID
|
|
SoftPCI_BringHotplugDeviceOnline(
|
|
IN PPCI_DN PciDn,
|
|
IN UCHAR SlotNumber
|
|
);
|
|
|
|
VOID
|
|
SoftPCI_TakeHotplugDeviceOffline(
|
|
IN PPCI_DN PciDn,
|
|
IN UCHAR SlotNumber
|
|
);
|
|
|
|
ULONGLONG
|
|
SoftPCI_GetLengthFromBar(
|
|
ULONGLONG BaseAddressRegister
|
|
);
|
|
|
|
VOID
|
|
SoftPCI_CompletePciDevNode(
|
|
IN PPCI_DN Pdn
|
|
);
|
|
|
|
HANDLE
|
|
SoftPCI_OpenHandleToDriver(
|
|
VOID
|
|
);
|
|
|
|
BOOL
|
|
SoftPCI_IsBridgeDevice(
|
|
IN PPCI_DN Pdn
|
|
);
|
|
|
|
BOOL
|
|
SoftPCI_IsSoftPCIDevice(
|
|
IN PPCI_DN Pdn
|
|
);
|
|
|
|
BOOL
|
|
SoftPCI_IsDevnodePCIRoot(
|
|
IN DEVNODE Dn,
|
|
IN BOOL ValidateAll
|
|
);
|
|
|
|
BOOL
|
|
SoftPCI_UpdateDeviceFriendlyName(
|
|
IN DEVNODE DeviceNode,
|
|
IN PWCHAR NewName
|
|
);
|
|
|
|
VOID
|
|
SoftPCI_InitializeDevice(
|
|
IN PSOFTPCI_DEVICE Device,
|
|
IN SOFTPCI_DEV_TYPE Type
|
|
);
|
|
|
|
VOID
|
|
SoftPCI_InstallScriptDevices(
|
|
VOID
|
|
);
|
|
|
|
BOOL
|
|
SoftPCI_CreateDevice(
|
|
IN PVOID CreateDevice,
|
|
IN ULONG PossibleDeviceMask,
|
|
IN BOOL PathBasedDevice
|
|
);
|
|
|
|
BOOL
|
|
SoftPCI_DeleteDevice(
|
|
IN PSOFTPCI_DEVICE Device
|
|
);
|
|
|
|
BOOL
|
|
SoftPCI_ReadWriteConfigSpace(
|
|
IN PPCI_DN Device,
|
|
IN ULONG Offset,
|
|
IN ULONG Length,
|
|
IN OUT PVOID Buffer,
|
|
IN BOOL WriteConfig
|
|
);
|
|
|
|
#endif
|