Files
OpenCellular/firmware/lib/tpm_lite/mocked_tlcl.c
Randall Spangler 1b1998dff0 Vboot wrapper initial implementation
Patch 1: Initial change
Patch 2: Fix comment in vboot_struct.h
Patch 3: Revert files unintentionally reverted
Patch 4: (rebase)
Patch 5: (rebase)
Patch 6: Revert files unintentionally reverted (again)
Patch 7: Fix mocked tlcl for ARM build

BUG=chromium-os:17010
TEST=make && make runtests; works on H2C; emerge-tegra2_seaboard chromeos-bootimage compiles

Change-Id: I6e5ce72d41b9297c07a3f330a881eba68cfabee2
Reviewed-on: http://gerrit.chromium.org/gerrit/3593
Reviewed-by: Randall Spangler <rspangler@chromium.org>
Tested-by: Randall Spangler <rspangler@chromium.org>
2011-07-08 13:31:36 -07:00

133 lines
2.5 KiB
C

/* Copyright (c) 2011 The Chromium OS Authors. All rights reserved.
* Use of this source code is governed by a BSD-style license that can be
* found in the LICENSE file.
*/
#include "tlcl.h"
#include "tlcl_internal.h"
#include "utility.h"
#include "vboot_api.h"
uint32_t TlclLibInit(void) {
return VbExTpmInit();
}
uint32_t TlclStartup(void) {
return TPM_SUCCESS;
}
uint32_t TlclSaveState(void) {
return TPM_SUCCESS;
}
uint32_t TlclResume(void) {
return TPM_SUCCESS;
}
uint32_t TlclSelfTestFull(void) {
return TPM_SUCCESS;
}
uint32_t TlclContinueSelfTest(void) {
return TPM_SUCCESS;
}
uint32_t TlclDefineSpace(uint32_t index, uint32_t perm, uint32_t size) {
return TPM_SUCCESS;
}
uint32_t TlclWrite(uint32_t index, const void* data, uint32_t length) {
return TPM_SUCCESS;
}
uint32_t TlclRead(uint32_t index, void* data, uint32_t length) {
Memset(data, '\0', length);
return TPM_SUCCESS;
}
uint32_t TlclWriteLock(uint32_t index) {
return TPM_SUCCESS;
}
uint32_t TlclReadLock(uint32_t index) {
return TPM_SUCCESS;
}
uint32_t TlclAssertPhysicalPresence(void) {
return TPM_SUCCESS;
}
uint32_t TlclPhysicalPresenceCMDEnable(void) {
return TPM_SUCCESS;
}
uint32_t TlclFinalizePhysicalPresence(void) {
return TPM_SUCCESS;
}
uint32_t TlclAssertPhysicalPresenceResult(void) {
return TPM_SUCCESS;
}
uint32_t TlclLockPhysicalPresence(void) {
return TPM_SUCCESS;
}
uint32_t TlclSetNvLocked(void) {
return TPM_SUCCESS;
}
int TlclIsOwned(void) {
return 0;
}
uint32_t TlclForceClear(void) {
return TPM_SUCCESS;
}
uint32_t TlclSetEnable(void) {
return TPM_SUCCESS;
}
uint32_t TlclClearEnable(void) {
return TPM_SUCCESS;
}
uint32_t TlclSetDeactivated(uint8_t flag) {
return TPM_SUCCESS;
}
uint32_t TlclGetPermanentFlags(TPM_PERMANENT_FLAGS* pflags) {
Memset(pflags, '\0', sizeof(*pflags));
return TPM_SUCCESS;
}
uint32_t TlclGetSTClearFlags(TPM_STCLEAR_FLAGS* vflags) {
Memset(vflags, '\0', sizeof(*vflags));
return TPM_SUCCESS;
}
uint32_t TlclGetFlags(uint8_t* disable,
uint8_t* deactivated,
uint8_t *nvlocked) {
*disable = 0;
*deactivated = 0;
*nvlocked = 0;
return TPM_SUCCESS;
}
uint32_t TlclSetGlobalLock(void) {
return TPM_SUCCESS;
}
uint32_t TlclExtend(int pcr_num, const uint8_t* in_digest,
uint8_t* out_digest) {
Memcpy(out_digest, in_digest, kPcrDigestLength);
return TPM_SUCCESS;
}
uint32_t TlclGetPermissions(uint32_t index, uint32_t* permissions) {
*permissions = 0;
return TPM_SUCCESS;
}