i5400_edac.c (dd23cd6eb1f59ba722a6e6aa228adff7c01404de) | i5400_edac.c (7e881856eee8b889b76cd1d8e04ce2fc79b72099) |
---|---|
1/* 2 * Intel 5400 class Memory Controllers kernel module (Seaburg) 3 * 4 * This file may be distributed under the terms of the 5 * GNU General Public License. 6 * 7 * Copyright (c) 2008 by: 8 * Ben Woodard <woodard@redhat.com> --- 286 unchanged lines hidden (view full) --- 295#define MTR_DIMM_COLS_ADDR_BITS(mtr) (MTR_DIMM_COLS(mtr) + 10) 296 297/* This applies to FERR_NF_FB-DIMM as well as FERR_FAT_FB-DIMM */ 298static inline int extract_fbdchan_indx(u32 x) 299{ 300 return (x>>28) & 0x3; 301} 302 | 1/* 2 * Intel 5400 class Memory Controllers kernel module (Seaburg) 3 * 4 * This file may be distributed under the terms of the 5 * GNU General Public License. 6 * 7 * Copyright (c) 2008 by: 8 * Ben Woodard <woodard@redhat.com> --- 286 unchanged lines hidden (view full) --- 295#define MTR_DIMM_COLS_ADDR_BITS(mtr) (MTR_DIMM_COLS(mtr) + 10) 296 297/* This applies to FERR_NF_FB-DIMM as well as FERR_FAT_FB-DIMM */ 298static inline int extract_fbdchan_indx(u32 x) 299{ 300 return (x>>28) & 0x3; 301} 302 |
303#ifdef CONFIG_EDAC_DEBUG 304/* MTR NUMROW */ 305static const char *numrow_toString[] = { 306 "8,192 - 13 rows", 307 "16,384 - 14 rows", 308 "32,768 - 15 rows", 309 "65,536 - 16 rows" 310}; 311 312/* MTR NUMCOL */ 313static const char *numcol_toString[] = { 314 "1,024 - 10 columns", 315 "2,048 - 11 columns", 316 "4,096 - 12 columns", 317 "reserved" 318}; 319#endif 320 | |
321/* Device name and register DID (Device ID) */ 322struct i5400_dev_info { 323 const char *ctl_name; /* name for this device */ 324 u16 fsb_mapping_errors; /* DID for the branchmap,control */ 325}; 326 327/* Table of devices attributes supported by this driver */ 328static const struct i5400_dev_info i5400_devs[] = { --- 581 unchanged lines hidden (view full) --- 910 911 debugf2("\t\tWIDTH: x%d\n", MTR_DRAM_WIDTH(mtr)); 912 913 debugf2("\t\tELECTRICAL THROTTLING is %s\n", 914 MTR_DIMMS_ETHROTTLE(mtr) ? "enabled" : "disabled"); 915 916 debugf2("\t\tNUMBANK: %d bank(s)\n", MTR_DRAM_BANKS(mtr)); 917 debugf2("\t\tNUMRANK: %s\n", MTR_DIMM_RANK(mtr) ? "double" : "single"); | 303/* Device name and register DID (Device ID) */ 304struct i5400_dev_info { 305 const char *ctl_name; /* name for this device */ 306 u16 fsb_mapping_errors; /* DID for the branchmap,control */ 307}; 308 309/* Table of devices attributes supported by this driver */ 310static const struct i5400_dev_info i5400_devs[] = { --- 581 unchanged lines hidden (view full) --- 892 893 debugf2("\t\tWIDTH: x%d\n", MTR_DRAM_WIDTH(mtr)); 894 895 debugf2("\t\tELECTRICAL THROTTLING is %s\n", 896 MTR_DIMMS_ETHROTTLE(mtr) ? "enabled" : "disabled"); 897 898 debugf2("\t\tNUMBANK: %d bank(s)\n", MTR_DRAM_BANKS(mtr)); 899 debugf2("\t\tNUMRANK: %s\n", MTR_DIMM_RANK(mtr) ? "double" : "single"); |
918 debugf2("\t\tNUMROW: %s\n", numrow_toString[MTR_DIMM_ROWS(mtr)]); 919 debugf2("\t\tNUMCOL: %s\n", numcol_toString[MTR_DIMM_COLS(mtr)]); | 900 debugf2("\t\tNUMROW: %s\n", 901 MTR_DIMM_ROWS(mtr) == 0 ? "8,192 - 13 rows" : 902 MTR_DIMM_ROWS(mtr) == 1 ? "16,384 - 14 rows" : 903 MTR_DIMM_ROWS(mtr) == 2 ? "32,768 - 15 rows" : 904 "65,536 - 16 rows"); 905 debugf2("\t\tNUMCOL: %s\n", 906 MTR_DIMM_COLS(mtr) == 0 ? "1,024 - 10 columns" : 907 MTR_DIMM_COLS(mtr) == 1 ? "2,048 - 11 columns" : 908 MTR_DIMM_COLS(mtr) == 2 ? "4,096 - 12 columns" : 909 "reserved"); |
920} 921 922static void handle_channel(struct i5400_pvt *pvt, int dimm, int channel, 923 struct i5400_dimm_info *dinfo) 924{ 925 int mtr; 926 int amb_present_reg; 927 int addrBits; --- 555 unchanged lines hidden --- | 910} 911 912static void handle_channel(struct i5400_pvt *pvt, int dimm, int channel, 913 struct i5400_dimm_info *dinfo) 914{ 915 int mtr; 916 int amb_present_reg; 917 int addrBits; --- 555 unchanged lines hidden --- |