Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/sys/dev/ic Update calculations for DDR4 devices. This gets ...



details:   https://anonhg.NetBSD.org/src/rev/a274360570bb
branches:  trunk
changeset: 812274:a274360570bb
user:      pgoyette <pgoyette%NetBSD.org@localhost>
date:      Tue Dec 08 02:09:23 2015 +0000

description:
Update calculations for DDR4 devices.  This gets 1066MHz modules to
report as PC4-17000.

XXX Due to insufficient precision in the SPD ROM data, we still report
XXX these modules with a DDR speed of 2132MHz, not 2133.  :(  (The
XXX cycle time is really 937.5ps, but is stored in the ROM as 938.0ps)

diffstat:

 sys/dev/ic/spdmem.c |  8 ++++----
 1 files changed, 4 insertions(+), 4 deletions(-)

diffs (36 lines):

diff -r b5b30148b335 -r a274360570bb sys/dev/ic/spdmem.c
--- a/sys/dev/ic/spdmem.c       Tue Dec 08 01:57:13 2015 +0000
+++ b/sys/dev/ic/spdmem.c       Tue Dec 08 02:09:23 2015 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: spdmem.c,v 1.18 2015/12/07 14:13:05 msaitoh Exp $ */
+/* $NetBSD: spdmem.c,v 1.19 2015/12/08 02:09:23 pgoyette Exp $ */
 
 /*
  * Copyright (c) 2007 Nicolas Joly
@@ -35,7 +35,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: spdmem.c,v 1.18 2015/12/07 14:13:05 msaitoh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: spdmem.c,v 1.19 2015/12/08 02:09:23 pgoyette Exp $");
 
 #include <sys/param.h>
 #include <sys/device.h>
@@ -875,7 +875,7 @@
                dimm_size = (1 << dimm_size) *
                    (s->sm_ddr4.ddr4_package_ranks + 1); /* log.ranks/DIMM */
                if (s->sm_ddr4.ddr4_signal_loading == 2) {
-                       dimm_size *= s->sm_ddr4.ddr4_diecount;
+                       dimm_size *= (s->sm_ddr4.ddr4_diecount + 1);
                }
        }
 
@@ -892,7 +892,7 @@
            cycle_time % 1000, 1000000 / cycle_time);
 
        decode_size_speed(self, node, dimm_size, cycle_time, 2,
-                         1 << (s->sm_ddr4.ddr4_device_width + 3),
+                         1 << (s->sm_ddr4.ddr4_primary_bus_width + 3),
                          TRUE, "PC4", 0);
 
        aprint_verbose_dev(self,



Home | Main Index | Thread Index | Old Index