======
TRUNKS
======

The Trunks TPM Library (TTL) is a set of types and functions used to interface
with a Trusted Platform Module.  It is designed to be light, and does not
comply with the TSS specification.  It is usable in firmware as well as in
user-level code.

-----------------
TPM SPECIFICATION
-----------------

See http://www.trustedcomputinggroup.org.  This version of trunks is based on
TPM 2.0 rev 00.99.

--- Structures ---
generator/raw_structures.txt
generator/raw_structures_fixed.txt

This file is a direct PDF scrape* of 'Part 2 - Structures'.  The '_fixed'
version includes some manual fixes to make processing easier.

--- Commands ---
generator/raw_commands.txt
generator/raw_commands_fixed.txt

This file is a direct PDF scrape* of 'Part 3 - Commands'.  The '_fixed' version
includes some manual fixes to make processing easier.

---
*Scraping for this version of trunks used Poppler's pdftotext utility v0.18.4.

---------------
CODE GENERATION
---------------

generator/extract_structures.sh

Extracts structured information about types, constants, structures, and unions
from spec/raw_structures_fixed.txt.  The output of this script is intended to be
parsed by generator.py.

generator/extract_commands.sh

Extracts structured information about commands from spec/raw_commands_fixed.txt.
The output of this script is intended to be parsed by generator.py.

generator/generator.py

Generates C++ serialization and parsing code for TPM commands.  Inputs must be
formatted as by the extract_* scripts.
