On Wed, Sep 11, 2013 at 02:58:07PM -0600, Jason Gunthorpe wrote: > I'm not yet 100% certain this driver works perfectly, for some reason > my TPM will not create an EK, which is either due to a larger sent TPM > messages becoming corrupt (combined with a TPM bug to not report an > error code) or something wrong with the TPM itself. > + > + status = i2c_smbus_write_i2c_block_data(client, buf[0], len - 1, > + buf + 1); Thankfully Peter pointed out that these calls only transfer 32 bytes, which causes the problem I observed. The TPM returns success with a corrupted response when you truncate the request, apparently. Fixing it with: + status = i2c_master_send(client, buf, len); Has the driver pass all my tests. I will post a v1 after a few days and collect any other comments. Jason -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html