Hi Ilias, On Tue, 30 May 2023 at 00:18, Ilias Apalodimas <[email protected]> wrote: > > For a TPM device to be operational we need to initialize it and > perform its startup sequence. The 'tpm init' command currently calls > tpm_init() which ends up calling the ->open() per-device callback and > performs the initial hardware configuration as well as requesting > locality 0 for the caller. There no code that currently calls > tpm_init() without following up with a tpm_startup() and tpm_self_test_full() > or tpm_continue_self_test(). > > So let's wire up the 'tpm init' command and call tpm_auto_start() which > leaves the device in an operational state and adjust any defconfigs > using 'tpm init'. > > It's worth noting that calling tpm_init() only, doesn't allow a someone > to use the TPM since the startup sequence is mandatory. We always > repeat the pattern of calling > - tpm_init() > - tpm_startup() > - tpm_self_test_full() or tpm_continue_self_test() > as a result we don't expect any regression or boot delays with the current > change. > > While at it fix the identation of test_tpm_autostart() comments as well. > > Signed-off-by: Ilias Apalodimas <[email protected]> > --- > > This is a split and resend of > https://lore.kernel.org/u-boot/[email protected]/ > Since Simon some had concerns I decided to split this off the series and send > it > as a single patch for further discussion. > > cmd/tpm-common.c | 3 ++- > configs/chromebook_coral_defconfig | 2 +- > test/dm/tpm.c | 9 +++++---- > test/py/tests/test_tpm2.py | 9 --------- > 4 files changed, 8 insertions(+), 15 deletions(-)
We've already discussed this before. Please can you: - Call tpm_autostart() instead - Add a new 'tpm autostart' command That way we can keep tpm_init() as it is. Regards, Simon

