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,