ReactOS 0.4.17-dev-1281-g065abb3
entry.cpp File Reference
#include "usbhub3.h"
#include <debug.h>
Include dependency graph for entry.cpp:

Go to the source code of this file.

Classes

struct  HubPolicyValue
 

Macros

#define NDEBUG
 

Functions

 _IRQL_requires_ (PASSIVE_LEVEL) static NTSTATUS NTAPI HubQueryRegistryULong(_In_ WDFKEY Key
 Sends a synchronous IOCTL to the specified device object.
 
return WdfRegistryQueryValue (Key, &ValueName, sizeof(*Value), Value, NULL, NULL)
 
return WdfRegistryOpenKey (NULL, &KeyName, Access, WDF_NO_OBJECT_ATTRIBUTES, Key)
 
static VOID NTAPI HubApplyDisableSelectiveSuspendUI (_In_ ULONG Value)
 
static VOID NTAPI HubApplyMsOsDescriptorMode (_In_ ULONG Value)
 
static VOID NTAPI HubApplyEnableDiagnosticMode (_In_ ULONG Value)
 
static VOID NTAPI HubApplyDisableOnSoftRemove (_In_ ULONG Value)
 
static VOID NTAPI HubApplyDisableUxdSupport (_In_ ULONG Value)
 
static VOID NTAPI HubApplyEnableExtendedValidation (_In_ ULONG Value)
 
static VOID NTAPI HubApplyWakeOnConnectUI (_In_ ULONG Value)
 
static VOID NTAPI HubApplyPreventSuperSpeedDebounce (_In_ ULONG Value)
 
VOID NTAPI HubNotifyBootDeviceRemoval (_In_opt_ PVOID Handle)
 
static VOID NTAPI HubEvtDriverCleanup (_In_ WDFOBJECT Object)
 
 CODE_SEG ("INIT") NTSTATUS NTAPI DriverEntry(_In_ PDRIVER_OBJECT DriverObject
 
 if (!NT_SUCCESS(Status))
 
 HubReadGlobalPolicy ()
 
 HubReadUsb20LpmPolicy ()
 
 HubReadLtmPolicy ()
 
 HubReadKseGlobalFlags ()
 
 DPRINT ("Hub driver loaded, global flags 0x%lx\n",(ULONG) HubDriver.GlobalFlags)
 

Variables

HubDriverState HubDriver
 
const ULONG Microsoft_USBD_Compat_Version = 0x110
 
DRIVER_INITIALIZE DriverEntry
 
static EVT_WDF_OBJECT_CONTEXT_CLEANUP HubEvtDriverCleanup
 
_In_ PCWSTR Name
 
_In_ PCWSTR _Out_ PULONG Value
 
RtlInitUnicodeString & ValueName
 
_In_ ACCESS_MASK Access
 
_In_ ACCESS_MASK _Out_ WDFKEY * Key
 
RtlInitUnicodeString & KeyName
 
static const HubPolicyValue HubGlobalPolicy []
 
_In_ PUNICODE_STRING RegistryPath
 
WDF_OBJECT_ATTRIBUTES Attributes
 
NTSTATUS Status = WdfDriverCreate(DriverObject, RegistryPath, &Attributes, &Config, &HubDriver.Driver)
 
HubDriver DriverObject = DriverObject
 
WDF_DRIVER_CONFIG_INIT & Config
 
Config DriverPoolTag = HUB_TAG_DRIVER
 
Attributes EvtCleanupCallback = HubEvtDriverCleanup
 
Attributes ParentObject = HubDriver.Driver
 
HubDriver KseQueryDeviceFlags
 
HubDriver RegisterPowerSetting
 
HubDriver UnregisterPowerSetting
 
HubDriver GetInterfaceProperty
 
return STATUS_SUCCESS
 

Macro Definition Documentation

◆ NDEBUG

#define NDEBUG

Definition at line 10 of file entry.cpp.

Function Documentation

◆ _IRQL_requires_()

_IRQL_requires_ ( PASSIVE_LEVEL  )

Sends a synchronous IOCTL to the specified device object.

One 4 byte value; the registry type is not checked.

Reread whenever user experience settings change; the open status is returned.

Definition at line 164 of file entry.cpp.

170{
171 WDFKEY Key;
172 ULONG Index;
173 ULONG Value;
175
177
178 if (!NT_SUCCESS(HubOpenRegistryKey(L"\\Registry\\Machine\\System\\CurrentControlSet\\Services\\USBHUB\\hubg",
180 {
181 return;
182 }
183
185 {
186 Status = HubQueryRegistryULong(Key, HubGlobalPolicy[Index].Name, &Value);
188 continue;
189
190 if (!NT_SUCCESS(Status))
191 {
192 DPRINT1("Reading %S failed 0x%lx\n", HubGlobalPolicy[Index].Name, Status);
193 break;
194 }
195
197 }
198
200}
#define RTL_NUMBER_OF(x)
Definition: RtlRegistry.c:12
LONG NTSTATUS
Definition: precomp.h:26
#define DPRINT1
Definition: precomp.h:8
#define NT_SUCCESS(StatCode)
Definition: apphelp.c:33
#define L(x)
Definition: resources.c:13
_In_ PCWSTR _Out_ PULONG Value
Definition: entry.cpp:30
static const HubPolicyValue HubGlobalPolicy[]
Definition: entry.cpp:151
NTSTATUS Status
Definition: entry.cpp:381
_In_ PCWSTR Name
Definition: entry.cpp:28
HubDriverState HubDriver
Definition: entry.cpp:13
_In_ ACCESS_MASK _Out_ WDFKEY * Key
Definition: entry.cpp:47
WdfRegistryClose(HardwareKey)
Status
Definition: gdiplustypes.h:24
@ DisableOnSoftRemove
#define KEY_QUERY_VALUE
Definition: nt_native.h:1019
VOID SetFlag(_In_ HubGlobal Flag)
Definition: hubdriver.h:126
uint32_t ULONG
Definition: typedefs.h:59
#define STATUS_OBJECT_NAME_NOT_FOUND
Definition: udferr_usr.h:149
_In_ WDFCOLLECTION _In_ ULONG Index
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING _Out_opt_ PUSHORT _Inout_opt_ PUNICODE_STRING Value
Definition: wdfregistry.h:413

◆ CODE_SEG()

CODE_SEG ( "INIT"  )

Definition at line 246 of file Interface.c.

1817{
1818 UNICODE_STRING DeviceName = RTL_CONSTANT_STRING(L"\\FileSystem\\Filters\\"DRIVER_NAME);
1819 PDEVICE_OBJECT RawDeviceObject;
1821 PFILE_OBJECT RawFileObject;
1823 UNICODE_STRING SymLink;
1824
1826
1829
1830 /* Save the registry key for this driver */
1834 RegistryPath->MaximumLength,
1838
1839 /* Do some initialization */
1841
1842 /* Create the main filter manager device object */
1844 0,
1845 &DeviceName,
1848 FALSE,
1849 &DeviceObject);
1850 if (!NT_SUCCESS(Status))
1851 {
1852 DPRINT1("fltmgr IoCreateDevice failed. Status = %X\n", Status);
1853 goto Cleanup;
1854 }
1855
1856 /* Store a global reference so we can access from callbacks */
1858
1859 /* Generate the symbolic link name */
1860 RtlInitUnicodeString(&SymLink, L"\\??\\"DRIVER_NAME);
1862 if (!NT_SUCCESS(Status)) goto Cleanup;
1863
1864 /* Create the callbacks for the dispatch table, FastIo and FS callbacks */
1866 if (!NT_SUCCESS(Status)) goto Cleanup;
1867
1868 /* Initialize the comms objects */
1870 if (!NT_SUCCESS(Status)) goto Cleanup;
1871
1872 /* Register for notifications when a new file system is loaded. This also enumerates any existing file systems */
1874 FLT_ASSERT(Status != STATUS_DEVICE_ALREADY_ATTACHED); // Windows checks for this, I'm not sure how it can happen. Needs investigation??
1875 if (!NT_SUCCESS(Status)) goto Cleanup;
1876
1879
1880 /* IoRegisterFsRegistrationChange isn't notified about the raw file systems, so we attach to them manually */
1881 RtlInitUnicodeString(&ObjectName, L"\\Device\\RawDisk");
1884 &RawFileObject,
1885 &RawDeviceObject);
1886 if (NT_SUCCESS(Status))
1887 {
1888 FltpFsNotification(RawDeviceObject, TRUE);
1889 ObDereferenceObject(RawFileObject);
1890 }
1891
1892 RtlInitUnicodeString(&ObjectName, L"\\Device\\RawCdRom");
1895 &RawFileObject,
1896 &RawDeviceObject);
1897 if (NT_SUCCESS(Status))
1898 {
1899 FltpFsNotification(RawDeviceObject, TRUE);
1900 ObDereferenceObject(RawFileObject);
1901 }
1902
1903 /* We're done, clear the initializing flag */
1906
1907Cleanup:
1908
1909 if (!NT_SUCCESS(Status))
1910 {
1912 {
1913 DriverObject->FastIoDispatch = NULL;
1915 }
1916
1917 IoDeleteSymbolicLink(&SymLink);
1918
1919 if (DeviceObject)
1921
1924 }
1925
1926 return Status;
1927}
LIST_ENTRY FilterList
Definition: Filter.c:24
DRIVER_FS_NOTIFICATION FltpFsNotification
Definition: Interface.c:1699
ERESOURCE FilterListLock
Definition: Filter.c:25
static NTSTATUS SetupDispatchAndCallbacksTables(_In_ PDRIVER_OBJECT DriverObject)
Definition: Interface.c:1739
DRIVER_DATA DriverData
Definition: Interface.c:35
#define FILE_DEVICE_SECURE_OPEN
Definition: cdrw_usr.h:46
#define NULL
Definition: types.h:112
#define TRUE
Definition: types.h:120
#define FALSE
Definition: types.h:117
#define RTL_CONSTANT_STRING(s)
Definition: combase.c:35
static const WCHAR Cleanup[]
Definition: register.c:80
#define ExAllocatePoolWithTag(hernya, size, tag)
Definition: env_spec_w32.h:350
NTSTATUS ExInitializeResourceLite(PULONG res)
Definition: env_spec_w32.h:641
#define DO_DEVICE_INITIALIZING
Definition: env_spec_w32.h:399
#define NonPagedPool
Definition: env_spec_w32.h:307
#define InitializeListHead(ListHead)
Definition: env_spec_w32.h:944
#define ClearFlag(_F, _SF)
Definition: ext2fs.h:191
#define DRIVER_NAME
Definition: ext2fs.h:136
#define FLT_ASSERT(_e)
Definition: fltkernel.h:49
#define FM_TAG_REGISTRY_DATA
Definition: fltmgr.h:18
#define FM_TAG_DISPATCH_TABLE
Definition: fltmgr.h:17
NTSTATUS FltpSetupCommunicationObjects(_In_ PDRIVER_OBJECT DriverObject)
Definition: Messaging.c:377
#define ExFreePoolWithTag(_P, _T)
Definition: module.h:1109
NTSYSAPI VOID NTAPI RtlCopyUnicodeString(PUNICODE_STRING DestinationString, PUNICODE_STRING SourceString)
#define FILE_READ_ATTRIBUTES
Definition: nt_native.h:647
NTSYSAPI VOID NTAPI RtlInitUnicodeString(PUNICODE_STRING DestinationString, PCWSTR SourceString)
NTSTATUS NTAPI IoCreateDevice(IN PDRIVER_OBJECT DriverObject, IN ULONG DeviceExtensionSize, IN PUNICODE_STRING DeviceName, IN DEVICE_TYPE DeviceType, IN ULONG DeviceCharacteristics, IN BOOLEAN Exclusive, OUT PDEVICE_OBJECT *DeviceObject)
Definition: device.c:1038
VOID NTAPI IoDeleteDevice(IN PDEVICE_OBJECT DeviceObject)
Definition: device.c:1261
NTSTATUS NTAPI IoGetDeviceObjectPointer(IN PUNICODE_STRING ObjectName, IN ACCESS_MASK DesiredAccess, OUT PFILE_OBJECT *FileObject, OUT PDEVICE_OBJECT *DeviceObject)
Definition: device.c:1455
NTSTATUS NTAPI IoRegisterFsRegistrationChange(IN PDRIVER_OBJECT DriverObject, IN PDRIVER_FS_NOTIFICATION DriverNotificationRoutine)
Definition: volume.c:1089
#define STATUS_DEVICE_ALREADY_ATTACHED
Definition: ntstatus.h:386
#define FILE_DEVICE_DISK_FILE_SYSTEM
Definition: winioctl.h:53
#define STATUS_SUCCESS
Definition: shellext.h:65
PDRIVER_OBJECT DriverObject
Definition: fltmgr.h:31
UNICODE_STRING ServiceKey
Definition: fltmgr.h:33
PFAST_IO_DISPATCH FastIoDispatch
Definition: fltmgr.h:37
FAST_MUTEX FilterAttachLock
Definition: fltmgr.h:39
PDEVICE_OBJECT DeviceObject
Definition: fltmgr.h:32
USHORT MaximumLength
Definition: env_spec_w32.h:370
#define RtlZeroMemory(Destination, Length)
Definition: typedefs.h:262
uint16_t * PWCHAR
Definition: typedefs.h:56
#define STATUS_INSUFFICIENT_RESOURCES
Definition: udferr_usr.h:158
_In_ PDEVICE_OBJECT DeviceObject
Definition: wdfdevice.h:2061
_Must_inspect_result_ _In_ PWDFDEVICE_INIT _In_opt_ PCUNICODE_STRING DeviceName
Definition: wdfdevice.h:3281
_Must_inspect_result_ _In_ PDRIVER_OBJECT _In_ PCUNICODE_STRING RegistryPath
Definition: wdfdriver.h:215
_Must_inspect_result_ _In_ PDRIVER_OBJECT DriverObject
Definition: wdfdriver.h:213
_In_ PVOID _Out_opt_ PULONG_PTR _Outptr_opt_ PCUNICODE_STRING * ObjectName
Definition: cmfuncs.h:64
FORCEINLINE VOID ExInitializeFastMutex(_Out_ PFAST_MUTEX FastMutex)
Definition: exfuncs.h:274
* PFILE_OBJECT
Definition: iotypes.h:1998
#define ObDereferenceObject
Definition: obfuncs.h:203

◆ DPRINT()

DPRINT ( "Hub driver  loaded,
global flags 0x%lx\n"  ,
(ULONG) HubDriver.  GlobalFlags 
)

◆ HubApplyDisableOnSoftRemove()

static VOID NTAPI HubApplyDisableOnSoftRemove ( _In_ ULONG  Value)
static

Definition at line 97 of file entry.cpp.

99{
100 if (Value == 0)
102}
VOID ClearFlag(_In_ HubGlobal Flag)
Definition: hubdriver.h:133

◆ HubApplyDisableSelectiveSuspendUI()

static VOID NTAPI HubApplyDisableSelectiveSuspendUI ( _In_ ULONG  Value)
static

Definition at line 64 of file entry.cpp.

◆ HubApplyDisableUxdSupport()

static VOID NTAPI HubApplyDisableUxdSupport ( _In_ ULONG  Value)
static

Definition at line 107 of file entry.cpp.

109{
110 if (Value != 0)
112}
@ DisableUxdSupport

◆ HubApplyEnableDiagnosticMode()

static VOID NTAPI HubApplyEnableDiagnosticMode ( _In_ ULONG  Value)
static

Definition at line 86 of file entry.cpp.

◆ HubApplyEnableExtendedValidation()

static VOID NTAPI HubApplyEnableExtendedValidation ( _In_ ULONG  Value)
static

Definition at line 118 of file entry.cpp.

120{
121 if (Value == 0)
122 return;
123
125 if (Value & 0x8)
127 if (Value & 0x4)
129}
@ StrictDescriptorChecks
@ EnableExtendedValidation
@ CheckReservedFields

◆ HubApplyMsOsDescriptorMode()

static VOID NTAPI HubApplyMsOsDescriptorMode ( _In_ ULONG  Value)
static

Definition at line 74 of file entry.cpp.

76{
79 else
80 DPRINT1("Ignoring MsOsDescriptorMode %lu\n", Value);
81}
HubMsOsMode
Definition: hubdriver.h:34
HubMsOsMode MsOsMode
Definition: hubdriver.h:92

◆ HubApplyPreventSuperSpeedDebounce()

static VOID NTAPI HubApplyPreventSuperSpeedDebounce ( _In_ ULONG  Value)
static

Definition at line 144 of file entry.cpp.

146{
147 if (Value != 0)
149}
@ PreventSuperSpeedDebounce

◆ HubApplyWakeOnConnectUI()

static VOID NTAPI HubApplyWakeOnConnectUI ( _In_ ULONG  Value)
static

Definition at line 134 of file entry.cpp.

136{
137 if (Value != 0)
139}

◆ HubEvtDriverCleanup()

static VOID NTAPI HubEvtDriverCleanup ( _In_ WDFOBJECT  Object)
static

Definition at line 358 of file entry.cpp.

360{
362
363 PAGED_CODE();
364
367
369}
#define PAGED_CODE()
#define IsListEmpty(ListHead)
Definition: env_spec_w32.h:954
#define UNREFERENCED_PARAMETER(P)
Definition: ntbasedef.h:329
LIST_ENTRY HubList
Definition: hubdriver.h:95
LIST_ENTRY ConnectorMap
Definition: hubdriver.h:99
PDRIVER_OBJECT DriverObject
Definition: hubdriver.h:89
_Must_inspect_result_ _In_ WDFCOLLECTION _In_ WDFOBJECT Object
#define NT_ASSERT
Definition: rtlfuncs.h:3334

◆ HubNotifyBootDeviceRemoval()

VOID NTAPI HubNotifyBootDeviceRemoval ( _In_opt_ PVOID  Handle)

Kernel boot device removal notice; nothing when the kernel lacks it or Handle is NULL.

Definition at line 335 of file entry.cpp.

337{
340}
ULONG Handle
Definition: gdb_input.c:15
PFN_HUB_NOTIFY_BOOT_DEVICE_REMOVAL NotifyBootDeviceRemoval
Definition: hubdriver.h:113

Referenced by PortMachine::NotifyBootDeviceRemoval(), and DeviceMachine::NotifyWrongDevice().

◆ HubReadGlobalPolicy()

HubReadGlobalPolicy ( )

◆ HubReadKseGlobalFlags()

HubReadKseGlobalFlags ( )

◆ HubReadLtmPolicy()

HubReadLtmPolicy ( )

◆ HubReadUsb20LpmPolicy()

HubReadUsb20LpmPolicy ( )

◆ if()

if ( !  NT_SUCCESSStatus)

Definition at line 394 of file entry.cpp.

395 {
396 DPRINT1("WdfDriverCreate failed 0x%lx\n", Status);
397 return Status;
398 }

◆ WdfRegistryOpenKey()

◆ WdfRegistryQueryValue()

return WdfRegistryQueryValue ( Key  ,
&  ValueName,
sizeof *  Value,
Value  ,
NULL  ,
NULL   
)

Variable Documentation

◆ Access

◆ Attributes

Definition at line 380 of file entry.cpp.

◆ Config

Definition at line 387 of file entry.cpp.

◆ DriverEntry

DRIVER_INITIALIZE DriverEntry

Definition at line 18 of file entry.cpp.

◆ DriverObject

Definition at line 383 of file entry.cpp.

◆ DriverPoolTag

Config DriverPoolTag = HUB_TAG_DRIVER

Definition at line 388 of file entry.cpp.

◆ EvtCleanupCallback

Attributes EvtCleanupCallback = HubEvtDriverCleanup

Definition at line 391 of file entry.cpp.

◆ GetInterfaceProperty

HubDriver GetInterfaceProperty
Initial value:
=
(PFN_HUB_GET_INTERFACE_PROPERTY)HubResolveKernelRoutine(L"IoGetDeviceInterfacePropertyData")
_Must_inspect_result_ NTSTATUS(NTAPI * PFN_HUB_GET_INTERFACE_PROPERTY)(_In_ PUNICODE_STRING SymbolicLinkName, _In_ CONST DEVPROPKEY *PropertyKey, _In_ LCID Lcid, _Reserved_ ULONG Flags, _In_ ULONG Size, _Out_writes_bytes_to_(Size, *RequiredSize) PVOID Data, _Out_ PULONG RequiredSize, _Out_ PDEVPROPTYPE Type)
Definition: hubdriver.h:75

Definition at line 427 of file entry.cpp.

◆ HubDriver

◆ HubEvtDriverCleanup

EVT_WDF_OBJECT_CONTEXT_CLEANUP HubEvtDriverCleanup
static

Definition at line 19 of file entry.cpp.

◆ HubGlobalPolicy

const HubPolicyValue HubGlobalPolicy[]
static
Initial value:
=
{
{ L"DisableSelectiveSuspendUI", HubApplyDisableSelectiveSuspendUI },
{ L"MsOsDescriptorMode", HubApplyMsOsDescriptorMode },
{ L"EnableDiagnosticMode", HubApplyEnableDiagnosticMode },
{ L"DisableOnSoftRemove", HubApplyDisableOnSoftRemove },
{ L"DisableUxdSupport", HubApplyDisableUxdSupport },
{ L"EnableExtendedValidation", HubApplyEnableExtendedValidation },
{ L"WakeOnConnectUI", HubApplyWakeOnConnectUI },
{ L"PreventDebounceTimeForSuperSpeedDevices", HubApplyPreventSuperSpeedDebounce }
}
static VOID NTAPI HubApplyWakeOnConnectUI(_In_ ULONG Value)
Definition: entry.cpp:134
static VOID NTAPI HubApplyDisableUxdSupport(_In_ ULONG Value)
Definition: entry.cpp:107
static VOID NTAPI HubApplyEnableExtendedValidation(_In_ ULONG Value)
Definition: entry.cpp:118
static VOID NTAPI HubApplyDisableOnSoftRemove(_In_ ULONG Value)
Definition: entry.cpp:97
static VOID NTAPI HubApplyEnableDiagnosticMode(_In_ ULONG Value)
Definition: entry.cpp:86
static VOID NTAPI HubApplyPreventSuperSpeedDebounce(_In_ ULONG Value)
Definition: entry.cpp:144
static VOID NTAPI HubApplyDisableSelectiveSuspendUI(_In_ ULONG Value)
Definition: entry.cpp:64
static VOID NTAPI HubApplyMsOsDescriptorMode(_In_ ULONG Value)
Definition: entry.cpp:74

Definition at line 151 of file entry.cpp.

Referenced by _IRQL_requires_().

◆ Key

Initial value:
{
_Must_inspect_result_ _In_ WDFDEVICE _In_ PCUNICODE_STRING KeyName
Definition: wdfdevice.h:2705

Definition at line 46 of file entry.cpp.

Referenced by _IRQL_requires_().

◆ KeyName

Definition at line 50 of file entry.cpp.

◆ KseQueryDeviceFlags

HubDriver KseQueryDeviceFlags
Initial value:
=
(PFN_HUB_KSE_QUERY_DEVICE_FLAGS)HubResolveKernelRoutine(L"KseQueryDeviceFlags")
NTSTATUS(NTAPI * PFN_HUB_KSE_QUERY_DEVICE_FLAGS)(_In_ PCWSTR DeviceKey, _In_ PCWSTR DeviceClass, _Out_ PULONG64 DeviceFlags)
Definition: hubdriver.h:42

Definition at line 421 of file entry.cpp.

◆ Microsoft_USBD_Compat_Version

const ULONG Microsoft_USBD_Compat_Version = 0x110

Definition at line 16 of file entry.cpp.

◆ Name

_In_ PCWSTR Name

Definition at line 28 of file entry.cpp.

Referenced by _IRQL_requires_().

◆ ParentObject

Attributes ParentObject = HubDriver.Driver

Definition at line 401 of file entry.cpp.

◆ RegisterPowerSetting

HubDriver RegisterPowerSetting
Initial value:
=
(PFN_HUB_REGISTER_POWER_SETTING)HubResolveKernelRoutine(L"PoRegisterPowerSettingCallback")
NTSTATUS(NTAPI * PFN_HUB_REGISTER_POWER_SETTING)(_In_opt_ PDEVICE_OBJECT DeviceObject, _In_ LPCGUID SettingGuid, _In_ PPOWER_SETTING_CALLBACK Callback, _In_opt_ PVOID Context, _Outptr_opt_ PVOID *Handle)
Definition: hubdriver.h:60

Definition at line 423 of file entry.cpp.

◆ RegistryPath

Initial value:
{
_Must_inspect_result_ _In_ WDFDEVICE _In_ PUCX_CONTROLLER_CONFIG Config

Definition at line 377 of file entry.cpp.

◆ Status

Definition at line 381 of file entry.cpp.

Referenced by _IRQL_requires_(), and if().

◆ STATUS_SUCCESS

return STATUS_SUCCESS

Definition at line 434 of file entry.cpp.

◆ UnregisterPowerSetting

HubDriver UnregisterPowerSetting
Initial value:
=
(PFN_HUB_UNREGISTER_POWER_SETTING)HubResolveKernelRoutine(L"PoUnregisterPowerSettingCallback")
NTSTATUS(NTAPI * PFN_HUB_UNREGISTER_POWER_SETTING)(_Inout_ PVOID Handle)
Definition: hubdriver.h:69

Definition at line 425 of file entry.cpp.

◆ Value

* Value
Initial value:
{
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING ValueName
Definition: wdfregistry.h:243

Definition at line 29 of file entry.cpp.

Referenced by _IRQL_requires_().

◆ ValueName

Definition at line 34 of file entry.cpp.