119 lines
2.4 KiB
C
119 lines
2.4 KiB
C
|
/*++
|
||
|
|
||
|
Copyright (c) 1997 Microsoft Corporation
|
||
|
|
||
|
Module Name:
|
||
|
|
||
|
acpictl.c
|
||
|
|
||
|
Abstract:
|
||
|
|
||
|
This module handles all of the INTERNAL_DEVICE_CONTROLS requested to
|
||
|
the ACPI driver
|
||
|
|
||
|
Author:
|
||
|
|
||
|
Stephane Plante (splante)
|
||
|
|
||
|
Environment:
|
||
|
|
||
|
NT Kernel Mode Driver only
|
||
|
|
||
|
--*/
|
||
|
|
||
|
#ifndef _ACPICTL_H_
|
||
|
#define _ACPICTL_H_
|
||
|
|
||
|
NTSTATUS
|
||
|
ACPIIoctlAcquireGlobalLock(
|
||
|
IN PDEVICE_OBJECT DeviceObject,
|
||
|
IN PIRP Irp,
|
||
|
IN PIO_STACK_LOCATION IrpStack
|
||
|
);
|
||
|
|
||
|
NTSTATUS
|
||
|
ACPIIoctlAsyncEvalControlMethod(
|
||
|
IN PDEVICE_OBJECT DeviceObject,
|
||
|
IN PIRP Irp,
|
||
|
IN PIO_STACK_LOCATION IrpStack
|
||
|
);
|
||
|
|
||
|
VOID EXPORT
|
||
|
ACPIIoctlAsyncEvalControlMethodCompletion(
|
||
|
IN PNSOBJ AcpiObject,
|
||
|
IN NTSTATUS Status,
|
||
|
IN POBJDATA ObjectData,
|
||
|
IN PVOID Context
|
||
|
);
|
||
|
|
||
|
NTSTATUS
|
||
|
ACPIIoctlCalculateOutputBuffer(
|
||
|
IN POBJDATA ObjectData,
|
||
|
IN PACPI_METHOD_ARGUMENT Argument,
|
||
|
IN BOOLEAN TopLevel
|
||
|
);
|
||
|
|
||
|
NTSTATUS
|
||
|
ACPIIoctlCalculateOutputBufferSize(
|
||
|
IN POBJDATA ObjectData,
|
||
|
IN PULONG BufferSize,
|
||
|
IN PULONG BufferCount,
|
||
|
IN BOOLEAN TopLevel
|
||
|
);
|
||
|
|
||
|
NTSTATUS
|
||
|
ACPIIoctlEvalControlMethod(
|
||
|
IN PDEVICE_OBJECT DeviceObject,
|
||
|
IN PIRP Irp,
|
||
|
IN PIO_STACK_LOCATION IrpStack
|
||
|
);
|
||
|
|
||
|
NTSTATUS
|
||
|
ACPIIoctlEvalPostProcessing(
|
||
|
IN PIRP Irp,
|
||
|
IN POBJDATA ObjectData
|
||
|
);
|
||
|
|
||
|
NTSTATUS
|
||
|
ACPIIoctlEvalPreProcessing(
|
||
|
IN PDEVICE_OBJECT DeviceObject,
|
||
|
IN PIRP Irp,
|
||
|
IN PIO_STACK_LOCATION IrpStack,
|
||
|
IN POOL_TYPE PoolType,
|
||
|
OUT PNSOBJ *MethodObject,
|
||
|
OUT POBJDATA *ResultData,
|
||
|
OUT POBJDATA *ArgumentData,
|
||
|
OUT ULONG *ArgumentCount
|
||
|
);
|
||
|
|
||
|
NTSTATUS
|
||
|
ACPIIoctlRegisterOpRegionHandler(
|
||
|
IN PDEVICE_OBJECT DeviceObject,
|
||
|
IN PIRP Irp,
|
||
|
IN PIO_STACK_LOCATION IrpStack
|
||
|
);
|
||
|
|
||
|
NTSTATUS
|
||
|
ACPIIoctlReleaseGlobalLock(
|
||
|
IN PDEVICE_OBJECT DeviceObject,
|
||
|
IN PIRP Irp,
|
||
|
IN PIO_STACK_LOCATION IrpStack
|
||
|
);
|
||
|
|
||
|
NTSTATUS
|
||
|
ACPIIoctlUnRegisterOpRegionHandler(
|
||
|
IN PDEVICE_OBJECT DeviceObject,
|
||
|
IN PIRP Irp,
|
||
|
IN PIO_STACK_LOCATION IrpStack
|
||
|
);
|
||
|
|
||
|
NTSTATUS
|
||
|
ACPIIrpDispatchDeviceControl(
|
||
|
IN PDEVICE_OBJECT DeviceObject,
|
||
|
IN PIRP Irp
|
||
|
);
|
||
|
|
||
|
|
||
|
#endif
|
||
|
|