In kernel 4.12, ChromeOS doesn't "gentle" shutdown for TPM 1.2 chips. Waiting for the current command to complete and preventing from executing future tpm commands is done only for 2.0 chips.
So, for 1.2, a command can be still pending on the tpm side at power down. That may cause issues upon reboot (e.g. see issue 234796).
Need to modify the class shutdown logic to something like
down_write(&chip->ops_sem);
if (chip->flags & TPM_CHIP_FLAG_TPM2)
tpm2_shutdown(chip, TPM2_SU_CLEAR);
chip->ops = NULL;
up_write(&chip->ops_sem);
Currently, the only affected device is from b/62064360, so the priority is not high.
Comment 1 by apronin@chromium.org
, Sep 11 2017