| # Copyright 2013 The ChromiumOS Authors |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| # TODO(b/290823172) Remove this control file when the test is no longer in any |
| # PVS plan |
| |
| AUTHOR = "ChromeOS Team" |
| NAME = "firmware_LockedME" |
| METADATA = { |
| "contacts": ["chromeos-faft@google.com", "jbettis@chromium.org"], |
| "bug_component": "b:792402", # ChromeOS > Platform > Enablement > Firmware > FAFT |
| "criteria": "Ensure the ME region is locked", |
| } |
| TIME = "SHORT" |
| TEST_TYPE = "client" |
| |
| DOC = """ |
| Intel x86 CPUs (Sandybridge and later) reserve a portion of the BIOS |
| firmware image for use by the Intel Management Engine (ME). Intel |
| requires that section of the BIOS flash to be mutable. The ME firmware |
| itself determines whether or not the CPU can modify the ME region. During |
| development, we often use an ME image that allows CPU updates. For |
| production, we need to ensure that we do NOT allow CPU updates. |
| |
| This test PASSES if the CPU is unable to modify the ME region. |
| |
| This test FAILS if the CPU can modify the ME region, which means it should |
| *always* fail on any pre-production image. |
| |
| Because the only way to be sure that the ME is locked is to try to change |
| it, if the test fails and is interrupted before it can restore the original |
| content, the DUT may stop functioning and will require reimaging via servo |
| or Dediprog to restore it. |
| |
| This test is only meaningful to systems using Intel x86 CPUs, and then only |
| Sandybrige models or later (not Pinetrail, for example) |
| |
| """ |
| |
| job.run_test('firmware_LockedME') |