On Wed, Nov 29, 2017 at 06:13:51PM -0800, Philip Tricca wrote: > On 11/29/2017 10:24 AM, Javier Martinez Canillas wrote: > > Hello Jarkko, > > > > On 11/29/2017 06:57 PM, Jarkko Sakkinen wrote: > >> On Wed, Nov 29, 2017 at 12:08:46PM +0100, Javier Martinez Canillas > >> wrote: > >>> +#define TPM2_RC_LAYER_SHIFT 16 +#define TPM2_RESMGRTPM_RC_LAYER > >>> (11 << TPM2_RC_LAYER_SHIFT) > >> > >> I got this spec from Philip [1]. > >> > >> Couple of remarks: > >> > >> * What is the difference between TSS2_RESMGR_RC_LAYER and > >> TSS2_RESMGR_TPM_RC_LAYER? > > > > The difference is the type of error returned in each case. TSS2_RESMGR_RC_LAYER > > means that's an error internal to the TAB/RM and so the response code is one of > > the TSS2_BASE_RC_* error values. > > > > But TSS2_RESMGR_TPM_RC_LAYER means that the resource manager is taking over some > > TPM functionality (i.e: validation) and so the response code is a TSS2_RC_* error > > value, liket is the case for this patch (TPM_RC_COMMAND_CODE). > > This distinction predates my participation in the spec. Personally I > don't think users will really care so long as it's evident which 'layer' > produced the error. Using the TSS2_RESMGR_TPM_RC_LAYER is the right > thing to do though according to the spec. > > >> * Should the driver code use TSS2 or TPM2 prefix? > >> > > > > That's a very good question. I used TPM2 as prefix instead of TSS2 to keep it > > consistent with the rest of the driver, but probably TSS2 should be used instead > > so people can search more easy the constant in the specification doc. > > +1 Please response with Reviewed/Tested-by if these changes work for you. /Jarkko