diff options
Diffstat (limited to 'powerlimit/plclient/powerlimitclient_drvinterface.h')
| -rw-r--r-- | powerlimit/plclient/powerlimitclient_drvinterface.h | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/powerlimit/plclient/powerlimitclient_drvinterface.h b/powerlimit/plclient/powerlimitclient_drvinterface.h new file mode 100644 index 00000000..d4c71bda --- /dev/null +++ b/powerlimit/plclient/powerlimitclient_drvinterface.h @@ -0,0 +1,58 @@ +/*++ + +Copyright (c) Microsoft Corporation. All rights reserved. + +Module Name: + + powerlimitclient_drvinterface.h + +Abstract: + + This module contains the interfaces used to communicate with the simulate + power limit client driver stack. + +--*/ + +//--------------------------------------------------------------------- Pragmas + +#pragma once + +//--------------------------------------------------------------------- Defines + +// +// IOCTLs to control the client driver +// + +#define POWERLIMITCLIENT_IOCTL(_index_) \ + CTL_CODE(FILE_DEVICE_UNKNOWN, _index_, METHOD_BUFFERED, FILE_WRITE_DATA) + +// +// IOCTL_POWERLIMIT_CLIENT_QUERY_LIMIT_COUNT +// - Output: ULONG, number of supported power limit parameters. +// + +#define IOCTL_POWERLIMIT_CLIENT_QUERY_LIMIT_COUNT POWERLIMITCLIENT_IOCTL(0x800) + +// +// IOCTL_POWERLIMIT_CLIENT_QUERY_ATTRIBUTES +// - Output: POWER_LIMIT_ATTRIBUTES[], attributes of supported power limit parameters. +// + +#define IOCTL_POWERLIMIT_CLIENT_QUERY_ATTRIBUTES POWERLIMITCLIENT_IOCTL(0x801) + +// +// IOCTL_POWERLIMIT_CLIENT_QUERY_LIMITS +// - Output: POWER_LIMIT_VALUE[], values of supported power limit parameters. +// + +#define IOCTL_POWERLIMIT_CLIENT_QUERY_LIMITS POWERLIMITCLIENT_IOCTL(0x802) + +// +// Each domain supports PowerLimitContinuous/Burst/BurstTimeParameter. +// + +#define PLCLIENT_DEFAULT_LIMIT_COUNT_PER_DOMAIN 3UL +#define PLCLIENT_DEFAULT_DOMAIN_COUNT 2UL +#define PLCLIENT_DEFAULT_LIMIT_COUNT PLCLIENT_DEFAULT_LIMIT_COUNT_PER_DOMAIN * PLCLIENT_DEFAULT_DOMAIN_COUNT +#define PLCLIENT_DEFAULT_MAX_VALUE 50000UL +#define PLCLIENT_DEFAULT_MIN_VALUE 1000UL |
