Message ID | 20180308154021.25255-7-miquel.raynal@bootlin.com |
---|---|
State | Changes Requested |
Delegated to: | Simon Glass |
Headers | show |
Series | Introduce SPI TPM v2.0 support | expand |
diff --git a/lib/tpm.c b/lib/tpm.c index 38b76b4961..1b3a112311 100644 --- a/lib/tpm.c +++ b/lib/tpm.c @@ -15,6 +15,12 @@ /* Internal error of TPM command library */ #define TPM_LIB_ERROR ((uint32_t)~0u) +/* To make strings of commands more easily */ +#define __MSB(x) ((x) >> 8) +#define __LSB(x) ((x) & 0xFF) +#define STRINGIFY16(x) __MSB(x), __LSB(x) +#define STRINGIFY32(x) STRINGIFY16((x) >> 16), STRINGIFY16((x) & 0xFFFF) + /* Global boolean to discriminate TPMv2.x from TPMv1.x functions */ static bool is_tpmv2;
TPM commands are much easier to handle with these macros that will transform words or integers into byte string. This way, there is no need to call pack_byte_string() while all variable length in a command are known (and at must 4 bytes, which is a lot of them). Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com> --- lib/tpm.c | 6 ++++++ 1 file changed, 6 insertions(+)