Module Name: src
Committed By: matt
Date: Tue Nov 5 18:40:22 UTC 2013
Modified Files:
src/sys/dev/i2c [matt-nb5-mips64]: spdmem.c
Log Message:
Deal with larger DIMMs
To generate a diff of this commit:
cvs rdiff -u -r1.11 -r1.11.8.1 src/sys/dev/i2c/spdmem.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/dev/i2c/spdmem.c
diff -u src/sys/dev/i2c/spdmem.c:1.11 src/sys/dev/i2c/spdmem.c:1.11.8.1
--- src/sys/dev/i2c/spdmem.c:1.11 Sun Sep 28 12:59:54 2008
+++ src/sys/dev/i2c/spdmem.c Tue Nov 5 18:40:22 2013
@@ -1,4 +1,4 @@
-/* $NetBSD: spdmem.c,v 1.11 2008/09/28 12:59:54 pgoyette Exp $ */
+/* $NetBSD: spdmem.c,v 1.11.8.1 2013/11/05 18:40:22 matt Exp $ */
/*
* Copyright (c) 2007 Nicolas Joly
@@ -35,7 +35,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: spdmem.c,v 1.11 2008/09/28 12:59:54 pgoyette Exp $");
+__KERNEL_RCSID(0, "$NetBSD: spdmem.c,v 1.11.8.1 2013/11/05 18:40:22 matt Exp $");
#include <sys/param.h>
#include <sys/device.h>
@@ -227,7 +227,7 @@ spdmem_attach(device_t parent, device_t
const char *rambus_rev = "Reserved";
int num_banks = 0;
int per_chip = 0;
- int dimm_size, cycle_time, d_clk, p_clk, bits;
+ unsigned int dimm_size, cycle_time, d_clk, p_clk, bits;
int i;
unsigned int spd_len, spd_size;
unsigned int tAA, tRCD, tRP, tRAS;
@@ -420,9 +420,12 @@ spdmem_attach(device_t parent, device_t
}
if (IS_RAMBUS_TYPE ||
(num_banks <= 8 && per_chip <= 8 && dimm_size > 0 &&
- dimm_size <= 12)) {
+ dimm_size <= 18)) {
dimm_size = (1 << dimm_size) * num_banks * per_chip;
- aprint_normal(", %dMB", dimm_size);
+ if (dimm_size >= 1024)
+ aprint_normal(", %uGB", dimm_size / 1024);
+ else
+ aprint_normal(", %uMB", dimm_size);
if (node != NULL)
sysctl_createv(NULL, 0, NULL, NULL,
CTLFLAG_IMMEDIATE,
@@ -545,7 +548,7 @@ spdmem_attach(device_t parent, device_t
p_clk += 50;
p_clk -= p_clk % 100;
}
- aprint_normal(", %dMHz (%s-%d)\n",
+ aprint_normal(", %uMHz (%s-%u)\n",
d_clk, ddr_type_string, p_clk);
if (node != NULL)
sysctl_createv(NULL, 0, NULL, NULL,