X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=cmdamt%2FRemoteControlTypes.h;fp=cmdamt%2FRemoteControlTypes.h;h=241fc3b0188340ed26fe4a0f90494b400251d7e2;hb=44c2b1f9a9f8a2e032432ff958bc62a550c265cb;hp=0000000000000000000000000000000000000000;hpb=d49c3efc5307d1b5f16300fdf965b17cca3bca35;p=monitor.git diff --git a/cmdamt/RemoteControlTypes.h b/cmdamt/RemoteControlTypes.h new file mode 100644 index 0000000..241fc3b --- /dev/null +++ b/cmdamt/RemoteControlTypes.h @@ -0,0 +1,222 @@ +//---------------------------------------------------------------------------- +// +// Copyright (C) Intel Corporation, 2004 - 2006. +// +// File: RemoteControlTypes.h +// +// Contents: Sample code for an IntelĀ® AMT Network client. +// +// Notes: This file contains type definitions used throughout the code +// and constants as described in the "IntelĀ® AMT Network Design +// Guide". +// +//---------------------------------------------------------------------------- + +#ifndef _REMOTE_CONTROL_TYPES__H_ +#define _REMOTE_CONTROL_TYPES__H_ + +/* + * limits.h for UINT_MAX + */ +#include + +/* + * Type definitions + */ +typedef unsigned char uint8; +typedef unsigned short uint16; +typedef unsigned int uint32; +typedef unsigned long long uint64; +typedef unsigned char BYTE; + +/* + * Remote Control sample + * command line parameters + */ +static const char *POWER = "-p"; +static const char *CAPABILITIES = "-c"; +static const char *REMOTE = "-r"; +static const char *API_TEST = "-A"; +static const char *REDUCED_API_TEST = "-B"; +static const int MIN_NUM_OF_CL_PARAMETERS = 3; + +/* + * Command line options + */ +enum Options +{ + // Remote Control sample options + OPT_POWER, + OPT_CAPABILITIES, + OPT_REMOTE, + OPT_API_TEST, + OPT_REDUCED_API_TEST, +}; + +/* + * Constants + */ +static const uint32 NO_VALUE = UINT_MAX; + +/* + * Remote control commands + */ +enum RemoteControlCommand +{ + Reset = 16, //0x10 + PowerUp = 17, //0x11 + PowerDown = 18, //0x12 + PowerCycleReset = 19, //0x13 + SetBootOptions = 33, //0x21 +}; + +/* + * Special commands + */ +enum SpecialCommand +{ + + NOP = 0, // 0x00 + ForcePxeBoot = 1, // 0x01 + ForceHardDriveBoot = 2, // 0x02 + ForceHardDriveSafeModeBoot = 3, // 0x03 + ForceDiagnosticsBoot = 4, // 0x04 + ForceCdOrDvdBoot = 5, // 0x05 + // 06h-0BFh Reserved for future ASF definition + IntelOemCommand = 193, // 0x0C1 + // 0C1h-0FFh Reserved FOR OEM +}; + +/* + * Standard boot options + * + * Following boot options can be defined by using the bitwise OR operator. + * For example: + * unsigned short bootOptions = LockPowerButton | LockKeyboard | FirmwareVerbosityVerbose + */ +enum BootOptions +{ + + LockPowerButton = 2, // 1 << 1 + LockResetButton = 4, // 1 << 2 + LockKeyboard = 32, // 1 << 5 + LockSleepButton = 64, // 1 << 6 + UserPasswordBypass = 2048, // 1 << 11 + ForceProgressEvents = 4096, // 1 << 12 + + // only one from the Firmware verbosity options can be used + FirmwareVerbositySystemDefault = 0, // system default + FirmwareVerbosityQuiet = 8192, // 1 << 13 minimal screen activity + FirmwareVerbosityVerbose = 16384, // 1 << 14 all messages appear on the screen + FirmwareVerbosityScreen = 24576, // 3 << 13 blank, no messages appear on the screen. + + ConfigurationDataReset = 32768, // 1 << 14 +}; + +/* + * Reserved bits for checking + * correctness of the Boot Options settings + */ +const uint32 BootOptionsReservedBits = 1817; + + +/* + * Special Command Parameters + * + * Following boot options can be defined by using the bitwise OR operator. + * For example: + * unsigned short specialCommParam = UseIderCD | ReflashBios + */ +enum SpecialCommandParameters +{ + UndefinedSpecialCommandParameter = 0, + UseIderFloppy = 1, // use floppy as IDER boot device + ReflashBios = 4, // 1 << 2 + BiosSetup = 8, // 1 << 3 + BiosPause = 16, // 1 << 4 + UseIderCD = 257, // 1 | (1 << 8) use CD/DVD as IDER boot device +}; + +/* + * Reserved bits for checking + * correctness of the Special Parameters settings + */ +const uint32 SpecialCommandParametersReservedBits = 65248; + +/* + * OEM Parameters - Intel(R) AMT proprietary boot options + */ +enum OEMParameters +{ + UndefinedOEMParameter = 0, + UseSol = 1, // 1 << 1 +}; + +/* + * IANA numbers + */ +enum IanaNumbers +{ + IntelIanaNumber = 343, + ASFIanaNumber = 4542, +}; + + +/* + * The remote control capabilities supported by the Intel(R) AMT: + * + * OEM defined capabilities + */ +enum OemDefinedCapabilitiesSupported +{ + SuppIDER = 1, + SuppSOL = 2, + SuppBiosReflash = 4, + SuppBiosSetup = 8, + SuppBiosPause = 16, + +}; + +/* + * System capabilities + */ +enum SystemCapabilitiesSupported +{ + SuppPowerCycleReset = 1, + SuppPowerDown = 2, + SuppPowerUp = 4, + SuppReset = 8, +}; + +/* + * Special commands + */ +enum SpecialCommandSupported +{ + SuppForcePXEBoot = 256, + SuppForceHardDriveBoot = 512, + SuppForceHardDriveSafeModeBoot = 1024, + SuppForceDiagnosticBoot = 2048, + SuppForceCDorDVDBoot = 4096, +}; + + +/* + * System Firmware capabilities + */ +enum SystemFirmwareCapabilitiesSupported +{ + SuppVerbosityScreenBlank = 1, + SuppPowerButtonLock = 2, + SuppResetButtonLock = 4, + SuppKeyboardLock = 32, + SuppSleepButtonLock = 64, + SuppUserPasswordBypass = 2048, + SuppForcedProgressEvents = 4096, + SuppVerbosityVerbose = 8192, + SuppVerbosityQuiet = 16384, + SuppConfigurationDataReset = 32768, +}; + +#endif // _REMOTE_CONTROL_TYPES__H_ +