// This Source Code Form is subject to the terms of the Mozilla Public // License, v. 2.0. If a copy of the MPL was not distributed with this // file, You can obtain one at http://mozilla.org/MPL/2.0/. //go:build linux // Package tpm provides TPM 2.0 support. package tpm import ( "errors" "os" "github.com/google/go-tpm/tpm2/transport" "github.com/google/go-tpm/tpm2/transport/linuxtpm" ) // Open a TPM device. // // Tries first /dev/tpmrm0 and then /dev/tpm0. func Open() (transport.TPMCloser, error) { tpm, err := linuxtpm.Open("/dev/tpmrm0") if errors.Is(err, os.ErrNotExist) { tpm, err = linuxtpm.Open("/dev/tpm0") } return tpm, err }