
Dear Vadim Bendebury,
In message 20111017183614.2EAE8419FF@eskimo.mtv.corp.google.com you wrote:
TPM (Trusted Platform Module) is an integrated circuit and software platform that provides computer manufacturers with the core components of a subsystem used to assure authenticity, integrity and confidentiality.
This driver supports version 1.2 of the TCG (Trusted Computing Group) specifications.
The TCG specification defines several so called localities in a TPM chip, to be controlled by different software layers. When used on a typical x86 platform during the firmware phase, only locality 0 can be accessed by the CPU, so this driver even while supporting the locality concept presumes that only locality zero is used.
This implementation is loosely based on the article "Writing a TPM Device Driver" published on http://ptgmedia.pearsoncmg.com
Compiling this driver with DEBUG defined will generate trace of all accesses to TMP registers.
This driver has been tested and is being used in three different functional ChromeOS machines (Pinetrail and Sandy Bridge Intel chipsets) all using the same Infineon SLB 9635 TT 1.2 device.
A u-boot cli command allowing access to the TPM was also implemented and is being submitted as a second patch.
Change-Id: I22a33c3e5b2e20eec9557a7621bd463b30389d73 Signed-off-by: Vadim Bendebury vbendeb@chromium.org CC: Wolfgang Denk wd@denx.de
v5 with A function comment header correction.
Makefile | 3 + README | 10 + drivers/tpm/Makefile | 43 ++++ drivers/tpm/generic_lpc_tpm.c | 495 +++++++++++++++++++++++++++++++++++++++++ include/tpm.h | 71 ++++++ 5 files changed, 622 insertions(+), 0 deletions(-) create mode 100644 drivers/tpm/Makefile create mode 100644 drivers/tpm/generic_lpc_tpm.c create mode 100644 include/tpm.h
Applied, thanks.
But _please_ get used to providing full change logs to your patches. This is patch v6, so I would like to see a history for v2, v3, v4, v5 and v6 - but all you have is a totally useless (as incomprehensible) comment for v5.
Best regards,
Wolfgang Denk