This enables a normal recovery mode image to fix problems with the TPM.

Change-Id: I8260d9596640e79af24c02ca1da5b47eb2caeaa7

BUG=chrome-os-partner:1439
TEST=manual

Review URL: http://codereview.chromium.org/3847005
This commit is contained in:
Randall Spangler
2010-10-18 16:43:19 -07:00
parent 6078ca3398
commit 3e2c742be4
2 changed files with 7 additions and 11 deletions

View File

@@ -380,17 +380,13 @@ uint32_t RollbackFirmwareLock(void) {
uint32_t RollbackKernelRecovery(int developer_mode) { uint32_t RollbackKernelRecovery(int developer_mode) {
RollbackSpaceFirmware rsf; RollbackSpaceFirmware rsf;
uint32_t result = SetupTPM(1, developer_mode, &rsf);
/* In recovery mode we ignore TPM malfunctions or corruptions, and leave the /* In recovery mode we ignore TPM malfunctions or corruptions, and *
* TPM completely unlocked if and only if the dev mode switch is ON. The * leave the TPM complelely unlocked; we call neither
* recovery kernel will fix the TPM (if needed) and lock it ASAP. We leave * TlclSetGlobalLock() nor TlclLockPhysicalPresence(). The recovery
* kernel will fix the TPM (if needed) and lock it ASAP. We leave
* Physical Presence on in either case. */ * Physical Presence on in either case. */
if (!developer_mode) { return SetupTPM(1, developer_mode, &rsf);
RETURN_ON_FAILURE(TlclSetGlobalLock());
}
/* We still return the result of SetupTPM even though we expect the caller to
* ignore it. It's useful in unit testing. */
return result;
} }
uint32_t RollbackKernelRead(uint32_t* version) { uint32_t RollbackKernelRead(uint32_t* version) {

View File

@@ -1 +1 @@
char* VbootVersion = "VBOOv=94a8026e"; char* VbootVersion = "VBOOv=faf463e2";