dig space, re: TSS / TPM compatibility
The TPM vendor is responsible for creating the Device Driver (TDD) and Device Driver Library (TDDL) that will work with its TPM.
The first layer of software up from the TPM is the Device Driver (TDD). The design and implementation details of the TDD are at the discretion of the TPM vendor. The TDD is hardware- and OS-specific.
The next higher software layer is the Device Driver Library (TDDL). The TDDL is a layer of abstraction that presents a standardized interface (TDDLi) to the next higher software layer (the TCG Core Services layer, or TCS).
The interface between the TDD and the TDDL is defined by the TPM vendor. The TDDLi interface is defined by the TCG. This published interface (TDDLi) is what allows TSS's from different vendors to work with any TPM, provided that all parties are complying with the TCG standards.
I hope this helps clarify the issue.
Regards
SL