252 lines
4.3 KiB
C
252 lines
4.3 KiB
C
/*++
|
|
|
|
Copyright (C) 1993-99 Microsoft Corporation
|
|
|
|
Module Name:
|
|
|
|
chanfdo.h
|
|
|
|
Abstract:
|
|
|
|
--*/
|
|
|
|
#if !defined (___chanfdo_h___)
|
|
#define ___chanfdo_h___
|
|
|
|
//
|
|
// work item
|
|
//
|
|
typedef struct _IDE_WORK_ITEM_CONTEXT {
|
|
|
|
PIO_WORKITEM WorkItem;
|
|
PIRP Irp;
|
|
|
|
} IDE_WORK_ITEM_CONTEXT, *PIDE_WORK_ITEM_CONTEXT;
|
|
|
|
|
|
NTSTATUS
|
|
ChannelAddDevice(
|
|
IN PDRIVER_OBJECT DriverObject,
|
|
IN PDEVICE_OBJECT PhysicalDeviceObject
|
|
);
|
|
|
|
NTSTATUS
|
|
ChannelAddChannel(
|
|
IN PDRIVER_OBJECT DriverObject,
|
|
IN PDEVICE_OBJECT PhysicalDeviceObject,
|
|
OUT PFDO_EXTENSION *FdoExtension
|
|
);
|
|
|
|
NTSTATUS
|
|
ChannelStartDevice (
|
|
IN PDEVICE_OBJECT DeviceObject,
|
|
IN OUT PIRP Irp
|
|
);
|
|
|
|
NTSTATUS
|
|
ChannelStartChannel (
|
|
PFDO_EXTENSION FdoExtension,
|
|
PCM_RESOURCE_LIST ResourceListToKeep
|
|
);
|
|
|
|
NTSTATUS
|
|
ChannelStartDeviceCompletionRoutine (
|
|
IN PDEVICE_OBJECT DeviceObject,
|
|
IN OUT PIRP Irp,
|
|
IN OUT PVOID Context
|
|
);
|
|
|
|
NTSTATUS
|
|
ChannelCreateSymblicLinks (
|
|
PFDO_EXTENSION FdoExtension
|
|
);
|
|
|
|
NTSTATUS
|
|
ChannelDeleteSymblicLinks (
|
|
PFDO_EXTENSION FdoExtension
|
|
);
|
|
|
|
NTSTATUS
|
|
ChannelSurpriseRemoveDevice (
|
|
IN PDEVICE_OBJECT DeviceObject,
|
|
IN OUT PIRP Irp
|
|
);
|
|
|
|
NTSTATUS
|
|
ChannelRemoveDevice (
|
|
IN PDEVICE_OBJECT DeviceObject,
|
|
IN OUT PIRP Irp
|
|
);
|
|
|
|
NTSTATUS
|
|
ChannelRemoveDeviceCompletionRoutine (
|
|
IN PDEVICE_OBJECT DeviceObject,
|
|
IN PIRP Irp,
|
|
IN PVOID Context
|
|
);
|
|
|
|
NTSTATUS
|
|
ChannelStopDevice (
|
|
IN PDEVICE_OBJECT DeviceObject,
|
|
IN OUT PIRP Irp
|
|
);
|
|
|
|
NTSTATUS
|
|
ChannelRemoveChannel (
|
|
PFDO_EXTENSION FdoExtension
|
|
);
|
|
|
|
NTSTATUS
|
|
ChannelStartDeviceCompletionRoutine (
|
|
IN PDEVICE_OBJECT DeviceObject,
|
|
IN PIRP Irp,
|
|
IN PVOID Context
|
|
);
|
|
|
|
NTSTATUS
|
|
ChannelQueryDeviceRelations (
|
|
IN PDEVICE_OBJECT DeviceObject,
|
|
IN OUT PIRP Irp
|
|
);
|
|
|
|
NTSTATUS
|
|
ChannelQueryBusRelation (
|
|
IN PDEVICE_OBJECT DeviceObject,
|
|
IN PIDE_WORK_ITEM_CONTEXT workItemContext
|
|
);
|
|
|
|
PDEVICE_RELATIONS
|
|
ChannelBuildDeviceRelationList (
|
|
PFDO_EXTENSION FdoExtension
|
|
);
|
|
|
|
NTSTATUS
|
|
ChannelQueryId (
|
|
IN PDEVICE_OBJECT DeviceObject,
|
|
IN OUT PIRP Irp
|
|
);
|
|
|
|
NTSTATUS
|
|
ChannelQueryIdCompletionRoutine(
|
|
PDEVICE_OBJECT DeviceObject,
|
|
PIRP Irp,
|
|
PVOID Context
|
|
);
|
|
|
|
NTSTATUS
|
|
ChannelUsageNotification (
|
|
IN PDEVICE_OBJECT DeviceObject,
|
|
IN OUT PIRP Irp
|
|
);
|
|
|
|
NTSTATUS
|
|
ChannelUsageNotificationCompletionRoutine (
|
|
IN PDEVICE_OBJECT DeviceObject,
|
|
IN PIRP Irp,
|
|
IN PVOID Context
|
|
);
|
|
|
|
NTSTATUS
|
|
ChannelDeviceIoControl(
|
|
IN PDEVICE_OBJECT DeviceObject,
|
|
IN PIRP Irp
|
|
);
|
|
|
|
VOID
|
|
ChannelQueryBusMasterInterface (
|
|
PFDO_EXTENSION FdoExtension
|
|
);
|
|
|
|
VOID
|
|
ChannelQueryTransferModeInterface (
|
|
PFDO_EXTENSION FdoExtension
|
|
);
|
|
|
|
VOID
|
|
ChannelUnbindBusMasterParent (
|
|
PFDO_EXTENSION FdoExtension
|
|
);
|
|
|
|
VOID
|
|
ChannelQuerySyncAccessInterface (
|
|
PFDO_EXTENSION FdoExtension
|
|
);
|
|
|
|
VOID
|
|
ChannelQueryRequestProperResourceInterface (
|
|
PFDO_EXTENSION FdoExtension
|
|
);
|
|
|
|
|
|
__inline
|
|
VOID
|
|
ChannelEnableInterrupt (
|
|
IN PFDO_EXTENSION FdoExtension
|
|
);
|
|
|
|
__inline
|
|
VOID
|
|
ChannelDisableInterrupt (
|
|
IN PFDO_EXTENSION FdoExtension
|
|
);
|
|
|
|
NTSTATUS
|
|
ChannelGetIdentifyData (
|
|
PFDO_EXTENSION FdoExtension,
|
|
ULONG DeviceNumber,
|
|
PIDENTIFY_DATA IdentifyData
|
|
);
|
|
|
|
NTSTATUS
|
|
ChannelAcpiTransferModeSelect (
|
|
IN PVOID Context,
|
|
PPCIIDE_TRANSFER_MODE_SELECT XferMode
|
|
);
|
|
|
|
NTSTATUS
|
|
ChannelRestoreTiming (
|
|
IN PFDO_EXTENSION FdoExtension,
|
|
IN PSET_ACPI_TIMING_COMPLETION_ROUTINE CallerCompletionRoutine,
|
|
IN PVOID CallerContext
|
|
);
|
|
|
|
NTSTATUS
|
|
ChannelRestoreTimingCompletionRoutine (
|
|
IN PDEVICE_OBJECT DeviceObject,
|
|
IN NTSTATUS Status,
|
|
IN PVOID Context
|
|
);
|
|
|
|
NTSTATUS
|
|
ChannelFilterResourceRequirements (
|
|
IN PDEVICE_OBJECT DeviceObject,
|
|
IN OUT PIRP Irp
|
|
);
|
|
|
|
BOOLEAN
|
|
ChannelQueryPcmciaParent (
|
|
PFDO_EXTENSION FdoExtension
|
|
);
|
|
|
|
#ifdef IDE_FILTER_PROMISE_TECH_RESOURCES
|
|
NTSTATUS
|
|
ChannelFilterPromiseTechResourceRequirements (
|
|
IN PDEVICE_OBJECT DeviceObject,
|
|
IN OUT PIRP Irp
|
|
);
|
|
#endif // IDE_FILTER_PROMISE_TECH_RESOURCES
|
|
|
|
NTSTATUS
|
|
ChannelQueryPnPDeviceState (
|
|
IN PDEVICE_OBJECT DeviceObject,
|
|
IN OUT PIRP Irp
|
|
);
|
|
|
|
#ifdef ENABLE_NATIVE_MODE
|
|
VOID
|
|
ChannelQueryInterruptInterface (
|
|
PFDO_EXTENSION FdoExtension
|
|
);
|
|
#endif
|
|
#endif // ___chanfdo_h___
|