diff options
| author | Stefan Roese <[email protected]> | 2016-04-08 15:56:29 +0200 |
|---|---|---|
| committer | Tom Rini <[email protected]> | 2016-04-11 20:48:26 -0400 |
| commit | 456ecd08ec026e67a17a77baa3778c9f1b8e474d (patch) | |
| tree | 300fa2792b8a7e1b958c08e4b1b4d92c48baf50d /drivers | |
| parent | 5b2beab5cdf6209e5b4027312d8f9e2a13f1ce46 (diff) | |
lib/crc8: Add crc start value
To make the usage of this function more flexible, lets add the CRC start
value as parameter to this function. This way it can be used by other
functions requiring different start values than 0 as well.
For non-zero CRC start values to work, I've reworked the function a bit.
The new implementation is copied from the Linux version in
drivers/i2c/i2c-core.c / i2c_smbus_pec(). Which supports non-zero
CRC stating values.
I've double-checked that the results for zero starting values are
identical to the results from the original version of this function.
Signed-off-by: Stefan Roese <[email protected]>
Cc: Simon Glass <[email protected]>
Reviewed-by: Simon Glass <[email protected]>
Diffstat (limited to 'drivers')
| -rw-r--r-- | drivers/tpm/tpm_tis_sandbox.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/tpm/tpm_tis_sandbox.c b/drivers/tpm/tpm_tis_sandbox.c index 9ea98075b30..4aade565e27 100644 --- a/drivers/tpm/tpm_tis_sandbox.c +++ b/drivers/tpm/tpm_tis_sandbox.c @@ -217,7 +217,7 @@ static int sandbox_tpm_xfer(struct udevice *dev, const uint8_t *sendbuf, rsk.struct_version = 2; rsk.uid = ROLLBACK_SPACE_KERNEL_UID; rsk.kernel_versions = 0; - rsk.crc8 = crc8((unsigned char *)&rsk, + rsk.crc8 = crc8(0, (unsigned char *)&rsk, offsetof(struct rollback_space_kernel, crc8)); memcpy(data, &rsk, sizeof(rsk)); |
