Fix hanging before shutdown/suspend behaviour on some buggy platform firmwares. Adam Alves (1): Some buggy firmwares might require the TPM device to be in default locality (Locality 0) before suspend or shutdown. Failing to do so would leave the system in a hanged state before sleep or power off (after “reboot: Power down” message). Such is the case for the ASUSTeK COMPUTER INC. TUF GAMING B460M-PLUS board, I believe this might be the case for several other boards based on the bugs I have found on the internet while trying to find out how to fix my specific issue. Most forums suggest the user to disable the TPM device on firmware BIOS in order to work around this specific issue, which disables several nice security features provided by TPM, such as secure boot attestation, automatic decryption and hardware random generator. drivers/char/tpm/tpm-chip.c | 9 ++++++++ drivers/char/tpm/tpm-interface.c | 36 +++++++++++++++++++++++++++++++- drivers/char/tpm/tpm.h | 1 + include/linux/tpm.h | 1 + 4 files changed, 46 insertions(+), 1 deletion(-) -- 2.44.0