// The end-of-line checks are broken into two categories. One is
// Variable Check, and the other is Configuration Check. If either
// of these check fails, by default MEManuf will report error and
// continue on to the next check. If a user doesn't wish to continue
// when an error is found, ErrAction field can be used. Please see
// the examples here for detailed explaination:
//
//    SubTestName="ME VSCC check", ErrAction="ErrorStop"
//
// If the above test fails, MEManuf will report error and stop. There
// are total of three different error actions user can choose from:
//
// ErrorContinue - report error and continue on to the next check
// ErrorStop - report error and stop any check after the current one
// WarnContinue - report warning and continue on to the next check
//
// To add comment or take out a specific test, leave // at the start
// of a line. This file is processed by MEManuf line by line as text
// file. Duplication of the same sub-tests are allowed, but MEManuf
// will always perform the last test to the first test from the file.

// All string comparisions given in this file are case insensitive
// compare. There might be multiple field name/value pairs in one
// entry, but each field needs to be specified in the following
// format where <field name> can be replaced by SubTestName, ReqVal
// or ErrAction, <field value> can be replaced by any string including
// dash and/or spaces surrounded by double quotation marks, or hex-
// decimal number(s) that not surrounded by double quotation marks.
// In case of numeric value, each value (without 0x prefix) needs to
// be specified in byte and deliminated by spaces if there are multiple
// bytes. No line Wrapping is supported:
//
//    <field name>="<field value>", such as ReqVal=" ", or
//    <field name>=<numeric value>, such as ReqVal=78, or
//    <field name>=<numeric value>, such as ReqVal=01 0A 0F FE 7B CD

/////////////////////////////////////////////////////////////////////////////
// Intel recommends default end-of-line checks includes the following
// list. If a user chooses to use his/her own version of MEManuf.cfg
// to skip or modify the error action of these checks as WarnContinue,
// MEManuf will report failure with warnings when these checks are skipped,
// or have errors. It's suggested that a user should perform these Intel(R)
// recommended check on all type of SKUs.

SubTestName="EOP status check"
SubTestName="ME VSCC check"
SubTestName="BIOS VSCC check"
SubTestName="ME Manufacturing Mode status"
SubTestName="Flash Region Access Permissions"
SubTestName="Security Descriptor Override (SDO) check"
SubTestName="CF9GR lock check"
SubTestName="MAC address"
SubTestName="Wireless MAC address"
SubTestName="System UUID"

/////////////////////////////////////////////////////////////////////////////
// Please note that MAC address check will be skipped if Intel Gbe region
// is not present in SPI image. Wireless MAC address check will be skipped
// if Intel wireless device is not found on the PCI bus. System UUID check
// will be skipped if platform is not vPro platform.
//
// MAC address check, Wireless MAC address check and UUID check
// will be skipped if Intel(R) AMT is permanently disabled or not present.
//
// MAC address and System UUID Checks can work with an optional ReqVal field,
// which allows a user to specify his/her custom values to compare against.
//
// For example, the test shown here checks the current wired LAN MAC address
// against user provided value of 01-02-03-04-05-06:
//
//    SubTestName="MAC address", ReqVal="01-02-03-04-05-06"
//
// Here is the default values MEManuf uses if ReqVal field if obmitted:
//
// System UUID - all zeros and 0xff are considered as errors
// MAC address - all zeros and 0xff are considered as errors
// Wireless MAC address - all zeros and 0xff are considered as errors
//
// MAC address takes the format as XX-XX-XX-XX-XX-XX
// System UUID takes the format as XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
/////////////////////////////////////////////////////////////////////////////

////////////////////////////////////////////////////////////////////////////////
// The following Configuration Check requires a user to enter an expected
// value after ReqVal=, otherwise the lines without ReqVal field values will
// be ignored.
//
// Please note that GBE version check will be skipped if Intel Gbe region
// is not present in SPI image.
//
// ME FW version is a string as <major ver>.<minor ver>.<hotfix ver>.<build num> <naming>
// GBE version is a string as <major ver>.<minor ver>.<revision ver>
// BIOS version is string that vendor specific
////////////////////////////////////////////////////////////////////////////////

// SubTestName="ME FW version", ReqVal=
// SubTestName="BIOS version", ReqVal=
// SubTestName="GBE version", ReqVal=
// SubTestName="Wireless LAN micro-code mismatch", ReqVal=

///////////////////////////////////////////////////////////////////////
// Variable Check - user needs to put an expected value after ReqVal,
// otherwise the lines without ReqVal field values will be ignored
//
// There are variables that stored in encrypted format. When comparing
// with these variables, ReqVal can only specified as numeric values
// (in encrypted form) in byte order as mentioned aboved. ReqVal needs
// to be surrounded by double quotation marks if they are string input.
//
// To get a up-to-dated MEManuf.cfg with a complete variable names list,
// please run MEManuf -cfggen <filename>. Please note that variables
// that have # need to be replace by a number. Here defines the number:
//
// Note: The '#' for hash variables should be replaced with an entry index.
//       The valid range is 0 to 22.
//
// !!! Please be sure to disable sending EOP or leave platform in ME
// !!! manufacturing mode to run this test, otherwise MEManuf will
// !!! report failure because this feature is only available in factory
// !!! mode environment.
///////////////////////////////////////////////////////////////////////

// SubTestName="Allow Unsigned Assert Stolen", ReqVal=
// SubTestName="AMT Idle Timeout", ReqVal=
// SubTestName="BIOS Reflash Capable", ReqVal=
// SubTestName="BIOS Secure Boot", ReqVal=
// SubTestName="Boot into BIOS Setup Capable", ReqVal=
// SubTestName="Debug Si Features", ReqVal=
// SubTestName="Enable Intel (R) Standard Manageability; Disable Intel (R) AMT", ReqVal=
// SubTestName="FeatureShipState", ReqVal=
// SubTestName="Flash Protection Override Policy Hard", ReqVal=
// SubTestName="Flash Protection Override Policy Soft", ReqVal=
// SubTestName="FW Update OEM ID", ReqVal=
// SubTestName="HECI ME Region Unlockable", ReqVal=
// SubTestName="Independent Firmware Recovery Enabled", ReqVal=
// SubTestName="Intel (R) Anti-Theft BIOS Recovery Timer", ReqVal=
// SubTestName="Intel (R) Anti-Theft Technology Permanently Disabled?", ReqVal=
// SubTestName="Intel (R) Dynamic Application Loader Permanently Disabled?", ReqVal=
// SubTestName="Intel (R) ME Network Service Permanently Disabled?", ReqVal=
// SubTestName="KVM Permanently Disabled?", ReqVal=
// SubTestName="LAN Well Power Config", ReqVal=
// SubTestName="M3 Autotest Enabled", ReqVal=
// SubTestName="M3 Power Rails Availability", ReqVal=
// SubTestName="Manageability Application Enable/Disable", ReqVal=
// SubTestName="Manageability Application Permanently Disabled?", ReqVal=
// SubTestName="MCTP Info EC", ReqVal=
// SubTestName="MCTP PCIe Enabled", ReqVal=
// SubTestName="MCTP Static EIDs", ReqVal=
// SubTestName="MEBxPassword", ReqVal=
// SubTestName="Near Field Communication Active GPIO", ReqVal=
// SubTestName="Near Field Communication Enabled", ReqVal=
// SubTestName="Near Field Communication Radio Type", ReqVal=
// SubTestName="Near Field Communication SMBus Address", ReqVal=
// SubTestName="ODM ID used by Intel (R) Services", ReqVal=
// SubTestName="OEM Customizable Certificate 1 Active", ReqVal=
// SubTestName="OEM Customizable Certificate 1 Friendly Name", ReqVal=
// SubTestName="OEM Customizable Certificate 1 Stream", ReqVal=
// SubTestName="OEM Customizable Certificate 2 Active", ReqVal=
// SubTestName="OEM Customizable Certificate 2 Friendly Name", ReqVal=
// SubTestName="OEM Customizable Certificate 2 Stream", ReqVal=
// SubTestName="OEM Customizable Certificate 3 Active", ReqVal=
// SubTestName="OEM Customizable Certificate 3 Friendly Name", ReqVal=
// SubTestName="OEM Customizable Certificate 3 Stream", ReqVal=
// SubTestName="OEM Default Certificate 2 Active", ReqVal=
// SubTestName="OEM Default Certificate 2 Friendly Name", ReqVal=
// SubTestName="OEM Default Certificate 2 Stream", ReqVal=
// SubTestName="OEM Default Certificate 3 Active", ReqVal=
// SubTestName="OEM Default Certificate 3 Friendly Name", ReqVal=
// SubTestName="OEM Default Certificate 3 Stream", ReqVal=
// SubTestName="OEM Default Certificate 4 Active", ReqVal=
// SubTestName="OEM Default Certificate 4 Friendly Name", ReqVal=
// SubTestName="OEM Default Certificate 4 Stream", ReqVal=
// SubTestName="OEM Default Certificate 5 Active", ReqVal=
// SubTestName="OEM Default Certificate 5 Friendly Name", ReqVal=
// SubTestName="OEM Default Certificate 5 Stream", ReqVal=
// SubTestName="OEM Default Certificate Active", ReqVal=
// SubTestName="OEM Default Certificate Friendly Name", ReqVal=
// SubTestName="OEM Default Certificate Stream", ReqVal=
// SubTestName="OEM_TAG", ReqVal=
// SubTestName="OEMSkuRule", ReqVal=
// SubTestName="Pause during BIOS Boot Capable", ReqVal=
// SubTestName="PAVP Permanently Disabled?", ReqVal=
// SubTestName="Permit Period Timer Resolution", ReqVal=
// SubTestName="PID", ReqVal=
// SubTestName="PKI DNS Suffix", ReqVal=
// SubTestName="PPS", ReqVal=
// SubTestName="PROC_MISSING", ReqVal=
// SubTestName="Prod Si Features", ReqVal=
// SubTestName="Reserved ID used by Intel (R) Services", ReqVal=
// SubTestName="Service Advertisement and Discovery Permanently Disabled?", ReqVal=
// SubTestName="System Integrator ID used by Intel (R) Services", ReqVal=
// SubTestName="TLS Permanently Disabled?", ReqVal=
// SubTestName="USBr EHCI 1 Enabled", ReqVal=
// SubTestName="USBr EHCI 2 Enabled", ReqVal=
// SubTestName="WLAN Well Power Config", ReqVal=
