* Re: What does error code 38 mean? @ 2017-04-24 1:32 Peter Huewe 2017-04-24 14:50 ` Paul Menzel 2017-04-26 17:57 ` What does error code 38 mean? -> hex vs. decimal Ken Goldman 0 siblings, 2 replies; 6+ messages in thread From: Peter Huewe @ 2017-04-24 1:32 UTC (permalink / raw) To: Paul Menzel, tpmdd-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f [-- Attachment #1: Type: text/html, Size: 221 bytes --] [-- Attachment #2: Type: text/plain, Size: 202 bytes --] ------------------------------------------------------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot [-- Attachment #3: Type: text/plain, Size: 192 bytes --] _______________________________________________ tpmdd-devel mailing list tpmdd-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org https://lists.sourceforge.net/lists/listinfo/tpmdd-devel ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: What does error code 38 mean? 2017-04-24 1:32 What does error code 38 mean? Peter Huewe @ 2017-04-24 14:50 ` Paul Menzel [not found] ` <0603ee8e-ce81-9a46-4bb3-5fe4d7bda463-KUpvgZVWgV9o1qOY/usvUg@public.gmane.org> 2017-04-26 17:57 ` What does error code 38 mean? -> hex vs. decimal Ken Goldman 1 sibling, 1 reply; 6+ messages in thread From: Paul Menzel @ 2017-04-24 14:50 UTC (permalink / raw) To: Peter Huewe, tpmdd-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f Cc: Patrick Rudolph, Arthur Heymans Dear Peter, dear TPM folks, On 04/24/17 03:32, Peter Huewe wrote: >> x60t kernel: tpm tpm0: A TPM error (38) occurred continue selftest > > 38=0x26= invalid post init, which means tpm did not receive tpm_startup command > after reset. Thank you for the quick reply. As this is during resume, could you please point me to documentation, what is expected for resume from the firmware? Kind regards, Paul ------------------------------------------------------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot ^ permalink raw reply [flat|nested] 6+ messages in thread
[parent not found: <0603ee8e-ce81-9a46-4bb3-5fe4d7bda463-KUpvgZVWgV9o1qOY/usvUg@public.gmane.org>]
* Re: What does error code 38 mean? [not found] ` <0603ee8e-ce81-9a46-4bb3-5fe4d7bda463-KUpvgZVWgV9o1qOY/usvUg@public.gmane.org> @ 2017-04-26 17:52 ` Ken Goldman 0 siblings, 0 replies; 6+ messages in thread From: Ken Goldman @ 2017-04-26 17:52 UTC (permalink / raw) To: tpmdd-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f On 4/24/2017 10:50 AM, Paul Menzel wrote: > > Thank you for the quick reply. As this is during resume, could you > please point me to documentation, what is expected for resume from the > firmware? If "resume" means: from the sleep state where the platform suspends to RAM and there is no OS reboot, that's Shutdown(STATE) followed by Startup(STATE). The TPM 2.0 specifications use the key word "TPM Resume". ------------------------------------------------------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: What does error code 38 mean? -> hex vs. decimal 2017-04-24 1:32 What does error code 38 mean? Peter Huewe 2017-04-24 14:50 ` Paul Menzel @ 2017-04-26 17:57 ` Ken Goldman 2017-04-26 19:18 ` Jerry Snitselaar 1 sibling, 1 reply; 6+ messages in thread From: Ken Goldman @ 2017-04-26 17:57 UTC (permalink / raw) To: tpmdd-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f On 4/23/2017 9:32 PM, Peter Huewe wrote: > 38=0x26= invalid post init, which means tpm did not receive tpm_startup > command after reset. A minor observation: While the TPM 1.2 specification listed error codes in decimal, TPM 2.0 uses hex, and further has a lot of bit level encoding. Thus, for TPM 2.0, it would be easier if error messages printed TPM errors in hex. ------------------------------------------------------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: What does error code 38 mean? -> hex vs. decimal 2017-04-26 17:57 ` What does error code 38 mean? -> hex vs. decimal Ken Goldman @ 2017-04-26 19:18 ` Jerry Snitselaar 2017-04-26 20:57 ` Ken Goldman 0 siblings, 1 reply; 6+ messages in thread From: Jerry Snitselaar @ 2017-04-26 19:18 UTC (permalink / raw) To: Ken Goldman; +Cc: tpmdd-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f On Wed Apr 26 17, Ken Goldman wrote: >On 4/23/2017 9:32 PM, Peter Huewe wrote: >> 38=0x26= invalid post init, which means tpm did not receive tpm_startup >> command after reset. > >A minor observation: > >While the TPM 1.2 specification listed error codes in decimal, TPM 2.0 >uses hex, and further has a lot of bit level encoding. > >Thus, for TPM 2.0, it would be easier if error messages printed TPM >errors in hex. > > > >------------------------------------------------------------------------------ >Check out the vibrant tech community on one of the world's most >engaging tech sites, Slashdot.org! http://sdm.link/slashdot >_______________________________________________ >tpmdd-devel mailing list >tpmdd-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org >https://lists.sourceforge.net/lists/listinfo/tpmdd-devel Maybe the following? --8<-- diff --git a/drivers/char/tpm/tpm-interface.c b/drivers/char/tpm/tpm-interface.c index bd2128e0b56c..e6e60f9f428c 100644 --- a/drivers/char/tpm/tpm-interface.c +++ b/drivers/char/tpm/tpm-interface.c @@ -453,9 +453,14 @@ ssize_t tpm_transmit_cmd(struct tpm_chip *chip, const void *buf, return -EFAULT; err = be32_to_cpu(header->return_code); - if (err != 0 && desc) - dev_err(&chip->dev, "A TPM error (%d) occurred %s\n", err, - desc); + if (err != 0 && desc) { + if (chip->flags & TPM_CHIP_FLAG_TPM2) + dev_err(&chip->dev, "A TPM error (0x%x) occurred %s\n", err, + desc); + else + dev_err(&chip->dev, "A TPM error (%d) occurred %s\n", err, + desc); + } if (err) return err; ------------------------------------------------------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot ^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: What does error code 38 mean? -> hex vs. decimal 2017-04-26 19:18 ` Jerry Snitselaar @ 2017-04-26 20:57 ` Ken Goldman 0 siblings, 0 replies; 6+ messages in thread From: Ken Goldman @ 2017-04-26 20:57 UTC (permalink / raw) To: tpmdd-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f On 4/26/2017 3:18 PM, Jerry Snitselaar wrote: > > Maybe the following? > > > diff --git a/drivers/char/tpm/tpm-interface.c b/drivers/char/tpm/tpm-interface.c > index bd2128e0b56c..e6e60f9f428c 100644 > --- a/drivers/char/tpm/tpm-interface.c > +++ b/drivers/char/tpm/tpm-interface.c > @@ -453,9 +453,14 @@ ssize_t tpm_transmit_cmd(struct tpm_chip *chip, const void *buf, > return -EFAULT; > > err = be32_to_cpu(header->return_code); > - if (err != 0 && desc) > - dev_err(&chip->dev, "A TPM error (%d) occurred %s\n", err, > - desc); > + if (err != 0 && desc) { > + if (chip->flags & TPM_CHIP_FLAG_TPM2) > + dev_err(&chip->dev, "A TPM error (0x%x) occurred %s\n", err, > + desc); > + else > + dev_err(&chip->dev, "A TPM error (%d) occurred %s\n", err, > + desc); > + } > if (err) > return err; > I think that's a good idea. I have a utility that parses the fields out of the TPM 2.0 error codes and prints the text. It expects hex values, as does the specification. ------------------------------------------------------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot ^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2017-04-26 20:57 UTC | newest] Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2017-04-24 1:32 What does error code 38 mean? Peter Huewe 2017-04-24 14:50 ` Paul Menzel [not found] ` <0603ee8e-ce81-9a46-4bb3-5fe4d7bda463-KUpvgZVWgV9o1qOY/usvUg@public.gmane.org> 2017-04-26 17:52 ` Ken Goldman 2017-04-26 17:57 ` What does error code 38 mean? -> hex vs. decimal Ken Goldman 2017-04-26 19:18 ` Jerry Snitselaar 2017-04-26 20:57 ` Ken Goldman
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).