From cccf89e092dd50e3fe10b70701c9ddfaa84498cb Mon Sep 17 00:00:00 2001 From: Evan Lojewski Date: Sun, 27 Jan 2019 17:53:07 -0600 Subject: Add additional 2133 and 1866 ps values for spd parsing. On some RAM modules, unexpected ps values are reported that are off by 1 from the expected JEDEC value. This patch adds additional values to the lookup table, appearing second to ensure that the inverse lookup always find the correct value first. This change was tested with the M393A1G40DB0-CPB RAM module which was rejected by the previous code due to the time_in_ps being 938 instead of the previously expected value of 937. Memtester was run with the resulting configuration and shows no errors: / # /usr/sbin/memtester 6G 4 memtester version 4.3.0 (64-bit) Copyright (C) 2001-2012 Charles Cazabon. Licensed under the GNU General Public License version 2 (only). pagesize is 65536 pagesizemask is 0xffffffffffff0000 want 6144MB (6442450944 bytes) got 6144MB (6442450944 bytes), trying mlock ...locked. Loop 1/4: Stuck Address : ok Random Value : ok Compare XOR : ok Compare SUB : ok Compare MUL : ok Compare DIV : ok Compare OR : ok Compare AND : ok Sequential Increment: ok Solid Bits : ok Block Sequential : ok Checkerboard : ok Bit Spread : ok Bit Flip : ok Walking Ones : ok Walking Zeroes : ok 8-bit Writes : ok 16-bit Writes : ok Change-Id: Ia9dfe37ef7e62219aaa4a8bb4e8184f5a29d4b06 Signed-off-by: Evan Lojewski Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/70971 Tested-by: FSP CI Jenkins Reviewed-by: ANDRE A. MARIN Reviewed-by: Louis Stermole Tested-by: Jenkins Server Tested-by: HWSV CI Tested-by: Hostboot CI Reviewed-by: Jennifer A. Stofer Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/71047 Reviewed-by: Daniel M. Crowell --- src/import/generic/memory/lib/utils/conversions.H | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/import/generic/memory/lib/utils/conversions.H b/src/import/generic/memory/lib/utils/conversions.H index efbb53a47..5981fe7b5 100644 --- a/src/import/generic/memory/lib/utils/conversions.H +++ b/src/import/generic/memory/lib/utils/conversions.H @@ -5,7 +5,8 @@ /* */ /* OpenPOWER HostBoot Project */ /* */ -/* Contributors Listed Below - COPYRIGHT 2015,2018 */ +/* Contributors Listed Below - COPYRIGHT 2015,2019 */ +/* [+] Evan Lojewski */ /* [+] International Business Machines Corp. */ /* */ /* */ @@ -88,7 +89,9 @@ static const std::vector> FREQ_TO_CLOCK_PERIOD = { {DIMM_SPEED_1600, 1250}, // DDR4 {DIMM_SPEED_1866, 1071}, // DDR4 + {DIMM_SPEED_1866, 1072}, // DDR4 - rounding error. {DIMM_SPEED_2133, 937}, // DDR4 + {DIMM_SPEED_2133, 938}, // DDR4 - rounding error. {DIMM_SPEED_2400, 833}, // DDR4 {DIMM_SPEED_2666, 750}, // DDR4 {DIMM_SPEED_2933, 682}, // DDR4 -- cgit v1.2.3