ReactOS 0.4.17-dev-684-ga6524ef
pmeintf.c
Go to the documentation of this file.
1/*
2 * PROJECT: ReactOS PCI Bus Driver
3 * LICENSE: BSD - See COPYING.ARM in the top level directory
4 * FILE: drivers/bus/pci/intrface/pmeintf.c
5 * PURPOSE: Power Management Event# Signal Interface
6 * PROGRAMMERS: ReactOS Portable Systems Group
7 */
8
9/* INCLUDES *******************************************************************/
10
11#include <pci.h>
12
13#define NDEBUG
14#include <debug.h>
15
16/* GLOBALS ********************************************************************/
17
19{
20 &GUID_PCI_PME_INTERFACE,
21 sizeof(PCI_PME_INTERFACE),
25 0,
29};
30
31/* FUNCTIONS ******************************************************************/
32
36{
38 /* PnP Interfaces don't get Initialized */
39 ASSERTMSG("PCI PciPmeInterfaceInitializer, unexpected call.\n", FALSE);
41}
42
43VOID
46{
48
49 InterlockedIncrement(&FdoExtension->PciPmeInterfaceCount);
50}
51
52VOID
55{
57
58 InterlockedDecrement(&FdoExtension->PciPmeInterfaceCount);
59}
60
61VOID
65{
68
69 DPRINT1("PciPmeInterface_UpdateEnable is not yet implemented\n");
70}
71
76 IN PVOID InterfaceData,
80{
81 PPCI_PME_INTERFACE PmeInterface;
82
84 UNREFERENCED_PARAMETER(InterfaceData);
86
87 PAGED_CODE();
88
89 if (Size < sizeof(PCI_PME_INTERFACE))
90 {
92 }
93
94 PmeInterface = (PPCI_PME_INTERFACE)Interface;
95 PmeInterface->Size = sizeof(*PmeInterface);
96 PmeInterface->Version = PCI_PME_INTRF_STANDARD_VER;
97 PmeInterface->Context = DeviceExtension;
101
102 return STATUS_SUCCESS;
103}
104
105/* EOF */
#define PAGED_CODE()
unsigned char BOOLEAN
Definition: actypes.h:127
#define InterlockedIncrement
Definition: armddk.h:53
#define InterlockedDecrement
Definition: armddk.h:52
LONG NTSTATUS
Definition: precomp.h:26
#define DPRINT1
Definition: precomp.h:8
#define FALSE
Definition: types.h:117
#define PCI_INTERFACE_FDO
Definition: pci.h:58
#define PCI_INTERFACE_ROOT
Definition: pci.h:59
struct _PCI_FDO_EXTENSION * PPCI_FDO_EXTENSION
@ PciInterface_PmeHandler
Definition: pci.h:105
@ FdoExtension
Definition: precomp.h:48
#define ASSERTMSG(msg, exp)
Definition: nt_native.h:431
#define UNREFERENCED_PARAMETER(P)
Definition: ntbasedef.h:329
_In_ ULONGLONG _In_ ULONGLONG _In_ BOOLEAN Enable
Definition: ntddpcm.h:142
unsigned short USHORT
Definition: pedump.c:61
VOID NTAPI PciPmeInterface_Dereference(IN PVOID Context)
Definition: pmeintf.c:54
VOID NTAPI PciPmeInterface_Reference(IN PVOID Context)
Definition: pmeintf.c:45
VOID NTAPI PciPmeInterface_UpdateEnable(IN PDEVICE_OBJECT DeviceObject, IN BOOLEAN Enable)
Definition: pmeintf.c:63
PCI_INTERFACE PciPmeInterface
Definition: pmeintf.c:18
NTSTATUS NTAPI PciPmeInterfaceInitializer(IN PVOID Instance)
Definition: pmeintf.c:35
NTSTATUS NTAPI PciPmeInterfaceConstructor(IN PVOID DeviceExtension, IN PVOID Instance, IN PVOID InterfaceData, IN USHORT Version, IN USHORT Size, IN PINTERFACE Interface)
Definition: pmeintf.c:74
#define STATUS_SUCCESS
Definition: shellext.h:65
_In_ PVOID Context
Definition: storport.h:2269
PINTERFACE_DEREFERENCE InterfaceDereference
Definition: iotypes.h:5575
PINTERFACE_REFERENCE InterfaceReference
Definition: iotypes.h:5574
PPME_SET_PME_ENABLE UpdateEnable
Definition: iotypes.h:5578
#define NTAPI
Definition: typedefs.h:36
#define IN
Definition: typedefs.h:39
#define STATUS_UNSUCCESSFUL
Definition: udferr_usr.h:132
_In_ PDEVICE_OBJECT DeviceObject
Definition: wdfdevice.h:2061
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_DEVICE_PROPERTY_DATA _In_ DEVPROPTYPE _In_ ULONG Size
Definition: wdfdevice.h:4539
_Must_inspect_result_ _In_ WDFDEVICE _In_ LPCGUID _Out_ PINTERFACE Interface
Definition: wdffdo.h:465
_Must_inspect_result_ _In_ WDFDEVICE _In_ LPCGUID _Out_ PINTERFACE _In_ USHORT _In_ USHORT Version
Definition: wdffdo.h:469
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_WMI_INSTANCE_CONFIG _In_opt_ PWDF_OBJECT_ATTRIBUTES _Out_opt_ WDFWMIINSTANCE * Instance
Definition: wdfwmi.h:481
struct _PCI_PME_INTERFACE * PPCI_PME_INTERFACE
#define PCI_PME_INTRF_STANDARD_VER
Definition: iotypes.h:5522
struct _PCI_PME_INTERFACE PCI_PME_INTERFACE