summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKyösti Mälkki <kyosti.malkki@gmail.com>2016-11-21 02:39:59 +0200
committerKyösti Mälkki <kyosti.malkki@gmail.com>2016-11-21 02:21:17 +0100
commit378d79eb30f1fd990a17b26840741adfce35a8a2 (patch)
treeb871077eecd76297b82952251ccfbff79507c91e
parent4e793ec358d2d2babf61e968e0836296ad2a9d71 (diff)
device/dram/ddr3: Fix calculation CRC16 of SPD
Fix regression with commit: 7dc4b84 device/dram/ddr3: Calculate CRC16 of SPD unique identifier Misplaced parenthesis causes CRC check failure, potentially rendering some platform unbootable. Change-Id: I9699ee2ead5b99c7f46f6f4682235aae3125cca6 Signed-off-by: Kyösti Mälkki <kyosti.malkki@gmail.com> Reviewed-on: https://review.coreboot.org/17550 Tested-by: build bot (Jenkins) Reviewed-by: David Hendricks <dhendrix@chromium.org>
-rw-r--r--src/device/dram/ddr3.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/device/dram/ddr3.c b/src/device/dram/ddr3.c
index b3bcd680fe..6e5c541a85 100644
--- a/src/device/dram/ddr3.c
+++ b/src/device/dram/ddr3.c
@@ -52,7 +52,7 @@ static u16 crc16(const u8 *ptr, int n_crc)
u16 crc = 0;
while (--n_crc >= 0) {
- crc = (crc ^ (int)*ptr++) << 8;
+ crc = crc ^ ((int)*ptr++ << 8);
for (i = 0; i < 8; ++i)
if (crc & 0x8000) {
crc = (crc << 1) ^ 0x1021;