TPM 2.0 Hardware Inerface Table (TPM2) November 30, 2011 Absrac The Trused Plaform Module (TPM) 2.0 Hardware Inerface Table defines he informaion necessary for Windows o communicae wih a TPM 2.0 hardware inerface on a sysem. (The erm TPM 2.0 is used in his documen o refer o he nex version of he Trused Compuing Group TPM specificaion, which is also known as TPM.nex.) Original equipmen manufacurers (OEMs) are advised o collaborae wih Microsof and heir hardware suppliers o deermine a TPM 2.0 hardware inerface ha is suppored by Windows and he sysem hardware. Informaion abou he hardware inerface is described in he able. The able will have a reserved signaure ( TPM2 ) in he Advanced Configuraion and Power Inerface (ACPI) specificaion, and mus be included in he Roo Sysem Descripion Table (RSDT) if a TPM 2.0 module is on he plaform. The TPM2 able is lised in he RSDT. This informaion applies o he following operaing sysems: The nex version of Windows, code-named Windows 8 References and resources discussed here are lised a he end of his paper. The curren version of his paper is mainained on he web a: TPM 2.0 Hardware Inerface Table (TPM2) Disclaimer: This documen is provided as-is. Informaion and views expressed in his documen, including URL and oher Inerne websie references, may change wihou noice. You bear he risk of using i. Some examples depiced herein are provided for illusraion only and are ficiious. No real associaion or connecion is inended or should be inferred. This documen does no provide you wih any legal righs o any inellecual propery in any Microsof produc. You may copy and use his documen for your inernal, reference purposes.
TPM 2.0 Hardware Inerface Table (TPM2) - 2 Documen Hisory Dae Change Firs publicaion Conens Inroducion... 3 TPM 2.0 Hardware Inerface Table header...3 TPM 2.0 Hardware Inerface Table body... 4... 5 Furher informaion... 5 Resources... 5
TPM 2.0 Hardware Inerface Table (TPM2) - 3 Inroducion To deermine which TPM 2.0 hardware inerface a sysem suppors, he Windows operaing sysem will use he TPM 2.0 Hardware Inerface Table (TPM2 able). (The erm TPM 2.0 is used in his documen o refer o he nex version of he Trused Compuing Group TPM specificaion, which is also known as TPM.nex.) The TPM2 able consiss of a sandard ACPI header followed by a se of reserved flags, a conrol area address, an enumeraed sar mehod, and a variable-lengh se of plaformspecific parameers. The has saus fields o enable communicaion beween a device driver and he TPM 2.0 device, and conains he locaion of buffers used o wrie and read responses o or from he device. In Figure 1, he TPM2 able is he only ACPI able, bu addiional srucures ha i references are shown oo. Figure 1. TPM 2.0 Hardware Inerface Table srucure TPM2 ACPI Table Header Flags Address Sar Mehod Plaform Specific Parameers Srucure Reserved Error Cancel Sar Inerrup Conrol Command Size Command Address Response Size Response Address Command Area Command Buffer Response Area Response Buffer TPM 2.0 Hardware Inerface Table header ACPI ables always sar wih he ACPI able header srucure. For he TPM 2.0 Hardware Inerface Table, his header will have he values shown in Table 1. Table 1. ACPI able header forma Value Commen leng h offse ACPI Header 36 byes oal. Signaure 4 0 TPM2 Signaure for he able.
TPM 2.0 Hardware Inerface Table (TPM2) - 4 leng h offse Value Lengh 4 4 52 + <size of plaform-specific parameers> Commen Lengh, in byes, of he enire able. Revision 1 8 03 Revision. Checksum 1 9 <checksum> Enire able mus sum o zero. OEMID 6 10 <firmwarespecific> OEM Table ID 8 16 <firmwarespecific> OEM Revision 4 24 <firmwarespecific> Creaor ID 4 28 <firmwarespecific> Creaor 4 32 <firmwarespecific> Revision TPM 2.0 Hardware Inerface Table body OEM ID. The able ID is he manufacurer model ID. OEM revision for he supplied OEM Table ID. Vendor ID of uiliy ha creaed he able. Revision of uiliy ha creaed he able. Afer he sandard ACPI able header srucure fields, he TPM 2.0 Hardware Inerface Table conains he able-specific fields in Table 2. (The offse values in Table 2 do no include he 36 byes of he ACPI header. The acual offse of he enries from he sar of he TPM 2.0 Hardware Inerface Table is he bye offse in able 2 plus he ACPI able header size of 36 byes.) Table 2. TPM 2.0 Hardware Inerface Table body definiion Descripion lengh offse TPM2 Table 16 + <size of plaform-specific parameers> byes oal Flags 4 0 Reserved. Mus always be zero. Address of 8 4 Physical address of he. The conains saus regisers and he locaion of memory buffers for communicaing wih he device. The area may be in eiher TPM 2.0 device memory or in memory reserved by he sysem during boo. Inerfaces ha do no require he Srucure se his value o zero.
TPM 2.0 Hardware Inerface Table (TPM2) - 5 lengh offse Descripion Sar Mehod 4 12 The sar mehod selecor deermines which mechanism he device driver uses o noify he TPM 2.0 device ha a command is available for processing. This field may conain one of he following values: Plaform-Specific Parameers Variabl e Value Descripion 0 Reserved (no used) 1 Reserved (vendor-specific) 2 Uses an ACPI Sar mehod 3 Reserved (vendor-specific) 4 Reserved (vendor-specific) 5 Reserved (vendor-specific) 6 Reserved (vendor-specific) Reserved for fuure use 16 The conen of he plaform-specific parameers is deermined by he sar mehod used by he sysem s TPM device inerface. This field conains values ha may be used o iniiae command processing. This informaion may be vendor-specific. If he Sar Mehod value is 2 hen his field is four byes in size and mus be all zeros. The srucure is no par of he TPM 2.0 Hardware Inerface Table and he srucure does no exis for all inerface ypes. The srucure conains saus fields as well as oher conrol bis/fields and wo addresses. The conains he physical address of he command buffer and he physical address of he response buffer. Generally, sofware will wrie commands o be execued o he command buffer and read responses from he response buffer. The saus regisers help sofware communicae wih he hardware inerface, bu heir usage may be vendor-specific. Table 3. srucure definiion Descripion lengh offse 48 byes oal Saus s Reserved 4 0 Reserved. Mus be zero. Error 4 4 Se by he sysem o indicae an error condiion. Cancel 4 8 Se by sofware o cancel command processing. Sar 4 12 Se by sofware o indicae ha a command is available for processing. Inerrup Conrol 8 16 Reserved. Mus be zero. Command Size 4 24 Size of he command buffer.
TPM 2.0 Hardware Inerface Table (TPM2) - 6 lengh offse Descripion Command Address 8 28 Physical address of he command buffer. Response Size 4 36 Size of he response buffer. Response Address 8 40 Physical address of he response buffer. Furher informaion Resources For more informaion regarding a specific inerface, please conac Microsof. ACPI Specificaion www.acpi.info TPM Specificaions hp://www.rusedcompuinggroup.org/