aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/edac/e752x_edac.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/edac/e752x_edac.c')
-rw-r--r--drivers/edac/e752x_edac.c26
1 files changed, 22 insertions, 4 deletions
diff --git a/drivers/edac/e752x_edac.c b/drivers/edac/e752x_edac.c
index d28a6851bb18..3186512c9739 100644
--- a/drivers/edac/e752x_edac.c
+++ b/drivers/edac/e752x_edac.c
@@ -4,10 +4,11 @@
4 * This file may be distributed under the terms of the 4 * This file may be distributed under the terms of the
5 * GNU General Public License. 5 * GNU General Public License.
6 * 6 *
7 * See "enum e752x_chips" below for supported chipsets 7 * Implement support for the e7520, E7525, e7320 and i3100 memory controllers.
8 * 8 *
9 * Datasheet: 9 * Datasheets:
10 * http://www.intel.in/content/www/in/en/chipsets/e7525-memory-controller-hub-datasheet.html 10 * http://www.intel.in/content/www/in/en/chipsets/e7525-memory-controller-hub-datasheet.html
11 * ftp://download.intel.com/design/intarch/datashts/31345803.pdf
11 * 12 *
12 * Written by Tom Zimmerman 13 * Written by Tom Zimmerman
13 * 14 *
@@ -16,8 +17,6 @@
16 * Wang Zhenyu at intel.com 17 * Wang Zhenyu at intel.com
17 * Dave Jiang at mvista.com 18 * Dave Jiang at mvista.com
18 * 19 *
19 * $Id: edac_e752x.c,v 1.5.2.11 2005/10/05 00:43:44 dsp_llnl Exp $
20 *
21 */ 20 */
22 21
23#include <linux/module.h> 22#include <linux/module.h>
@@ -190,6 +189,25 @@ enum e752x_chips {
190 I3100 = 3 189 I3100 = 3
191}; 190};
192 191
192/*
193 * Those chips Support single-rank and dual-rank memories only.
194 *
195 * On e752x chips, the odd rows are present only on dual-rank memories.
196 * Dividing the rank by two will provide the dimm#
197 *
198 * i3100 MC has a different mapping: it supports only 4 ranks.
199 *
200 * The mapping is (from 1 to n):
201 * slot single-ranked double-ranked
202 * dimm #1 -> rank #4 NA
203 * dimm #2 -> rank #3 NA
204 * dimm #3 -> rank #2 Ranks 2 and 3
205 * dimm #4 -> rank $1 Ranks 1 and 4
206 *
207 * FIXME: The current mapping for i3100 considers that it supports up to 8
208 * ranks/chanel, but datasheet says that the MC supports only 4 ranks.
209 */
210
193struct e752x_pvt { 211struct e752x_pvt {
194 struct pci_dev *bridge_ck; 212 struct pci_dev *bridge_ck;
195 struct pci_dev *dev_d0f0; 213 struct pci_dev *dev_d0f0;