summaryrefslogtreecommitdiff
path: root/general/toaster/umdf2/func/shared
diff options
context:
space:
mode:
authorDave Wilson <[email protected]>2015-03-17 19:50:07 -0700
committerDave Wilson <[email protected]>2015-03-17 19:50:07 -0700
commit97cf5197cf5b882b2c689d8dc2b555f2edf8f418 (patch)
tree46f3701832d70b420eb0fc0eb93261f9da45db3f /general/toaster/umdf2/func/shared
parentef1905bf1e8825bb31120dfb27e0daf3154d859a (diff)
Initial publish
Diffstat (limited to 'general/toaster/umdf2/func/shared')
-rw-r--r--general/toaster/umdf2/func/shared/toaster.h118
1 files changed, 118 insertions, 0 deletions
diff --git a/general/toaster/umdf2/func/shared/toaster.h b/general/toaster/umdf2/func/shared/toaster.h
new file mode 100644
index 00000000..006166e7
--- /dev/null
+++ b/general/toaster/umdf2/func/shared/toaster.h
@@ -0,0 +1,118 @@
+/*++
+
+Copyright (c) 1990-2000 Microsoft Corporation All Rights Reserved
+
+Module Name:
+
+ Toaster.h
+
+Abstract:
+
+ Header file for the toaster driver modules.
+
+Environment:
+
+ User mode
+
+--*/
+
+
+#if !defined(_TOASTER_H_)
+#define _TOASTER_H_
+
+#include <windows.h>
+#include <winioctl.h>
+#pragma warning( disable: 4201 ) // nonstandard extension used : nameless struct/union
+#include <ntstatus.h>
+#include <devpropdef.h>
+#include <wudfwdm.h>
+#include <wdf.h>
+#include <initguid.h>
+#include "..\inc\driver.h"
+#include "..\inc\public.h"
+
+#define TOASTER_POOL_TAG (ULONG) 'saoT'
+
+//
+// The device extension for the device object
+//
+typedef struct _FDO_DATA
+{
+
+ WDFWMIINSTANCE WmiDeviceArrivalEvent;
+
+ BOOLEAN WmiPowerDeviceEnableRegistered;
+
+} FDO_DATA, *PFDO_DATA;
+
+WDF_DECLARE_CONTEXT_TYPE_WITH_NAME(FDO_DATA, ToasterFdoGetData)
+
+
+//
+// Connector Types
+//
+
+#define TOASTER_WMI_STD_I8042 0
+#define TOASTER_WMI_STD_SERIAL 1
+#define TOASTER_WMI_STD_PARALEL 2
+#define TOASTER_WMI_STD_USB 3
+
+DRIVER_INITIALIZE DriverEntry;
+
+EVT_WDF_DRIVER_DEVICE_ADD ToasterEvtDeviceAdd;
+
+EVT_WDF_DEVICE_CONTEXT_CLEANUP ToasterEvtDeviceContextCleanup;
+EVT_WDF_DEVICE_D0_ENTRY ToasterEvtDeviceD0Entry;
+EVT_WDF_DEVICE_D0_EXIT ToasterEvtDeviceD0Exit;
+EVT_WDF_DEVICE_PREPARE_HARDWARE ToasterEvtDevicePrepareHardware;
+EVT_WDF_DEVICE_RELEASE_HARDWARE ToasterEvtDeviceReleaseHardware;
+
+EVT_WDF_DEVICE_SELF_MANAGED_IO_INIT ToasterEvtDeviceSelfManagedIoInit;
+
+//
+// Io events callbacks.
+//
+EVT_WDF_IO_QUEUE_IO_READ ToasterEvtIoRead;
+EVT_WDF_IO_QUEUE_IO_WRITE ToasterEvtIoWrite;
+EVT_WDF_IO_QUEUE_IO_DEVICE_CONTROL ToasterEvtIoDeviceControl;
+EVT_WDF_DEVICE_FILE_CREATE ToasterEvtDeviceFileCreate;
+EVT_WDF_FILE_CLOSE ToasterEvtFileClose;
+
+NTSTATUS
+ToasterWmiRegistration(
+ _In_ WDFDEVICE Device
+ );
+
+//
+// Power events callbacks
+//
+EVT_WDF_DEVICE_ARM_WAKE_FROM_S0 ToasterEvtDeviceArmWakeFromS0;
+EVT_WDF_DEVICE_ARM_WAKE_FROM_SX ToasterEvtDeviceArmWakeFromSx;
+EVT_WDF_DEVICE_DISARM_WAKE_FROM_S0 ToasterEvtDeviceDisarmWakeFromS0;
+EVT_WDF_DEVICE_DISARM_WAKE_FROM_SX ToasterEvtDeviceDisarmWakeFromSx;
+EVT_WDF_DEVICE_WAKE_FROM_S0_TRIGGERED ToasterEvtDeviceWakeFromS0Triggered;
+EVT_WDF_DEVICE_WAKE_FROM_SX_TRIGGERED ToasterEvtDeviceWakeFromSxTriggered;
+
+PCHAR
+DbgDevicePowerString(
+ IN WDF_POWER_DEVICE_STATE Type
+ );
+
+//
+// WMI event callbacks
+//
+EVT_WDF_WMI_INSTANCE_QUERY_INSTANCE EvtWmiInstanceStdDeviceDataQueryInstance;
+EVT_WDF_WMI_INSTANCE_QUERY_INSTANCE EvtWmiInstanceToasterControlQueryInstance;
+EVT_WDF_WMI_INSTANCE_SET_INSTANCE EvtWmiInstanceStdDeviceDataSetInstance;
+EVT_WDF_WMI_INSTANCE_SET_INSTANCE EvtWmiInstanceToasterControlSetInstance;
+EVT_WDF_WMI_INSTANCE_SET_ITEM EvtWmiInstanceToasterControlSetItem;
+EVT_WDF_WMI_INSTANCE_SET_ITEM EvtWmiInstanceStdDeviceDataSetItem;
+EVT_WDF_WMI_INSTANCE_EXECUTE_METHOD EvtWmiInstanceToasterControlExecuteMethod;
+
+NTSTATUS
+ToasterFireArrivalEvent(
+ _In_ WDFDEVICE Device
+ );
+
+#endif // _TOASTER_H_
+